feat: Install quality-rails for mechanical code quality enforcement

Quality Rails provides mechanical enforcement of code quality through
pre-commit hooks and CI/CD pipelines, preventing ~70% of common issues.

What's added:
- Pre-commit hooks via husky (formatting enforcement enabled)
- Enhanced ESLint rules (no-explicit-any, security plugin, etc.)
- lint-staged configuration (currently formatting-only mode)
- Woodpecker CI pipeline template (.woodpecker.yml)
- eslint-plugin-security for vulnerability detection
- Documentation (docs/quality-rails-status.md)

Current status:
- Strict enforcement DISABLED until existing violations are fixed
- Found 1,226 violations (1,121 errors, 105 warnings)
- Priority: Fix explicit 'any' types first
- Pre-commit currently only enforces Prettier formatting

Next steps:
1. Fix existing lint violations
2. Enable strict pre-commit enforcement
3. Configure CI/CD pipeline

Based on quality-rails from ~/src/quality-rails (monorepo template)
See docs/quality-rails-status.md for detailed roadmap.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Jason Woltje
2026-01-30 13:14:03 -06:00
parent cbe865730f
commit 0ffad02e0a
17 changed files with 1526 additions and 372 deletions

16
.lintstagedrc.mjs Normal file
View File

@@ -0,0 +1,16 @@
// Monorepo-aware lint-staged configuration
// NOTE: Strict enforcement is disabled until existing violations are fixed.
// See docs/quality-rails-status.md for current status.
export default {
// TypeScript files - format only for now
'**/*.{ts,tsx}': (filenames) => {
return [
`prettier --write ${filenames.join(' ')}`,
];
},
// Format all other files
'**/*.{js,jsx,json,md,yml,yaml}': [
'prettier --write',
],
};