Claude
|
281c8ee037
|
feat: Implement comprehensive code review infrastructure
Add complete code review and quality assurance system:
## GitHub Actions CI/CD Pipeline
- `.github/workflows/code-review.yml`: Automated checks on all PRs
- Lint and format verification (ESLint + Prettier)
- TypeScript type checking
- Test execution with 70% coverage threshold
- Security audit (npm audit + console.log detection)
- Accessibility checks (WCAG 2.1 compliance)
- Backend linting (flake8, black, mypy)
- Bundle size verification (< 5MB limit)
## Pull Request Template
- `.github/pull_request_template.md`: Comprehensive PR checklist
- Blocking rules (must pass before merge)
- Component, Audio/MIDI, State, Tests, API requirements
- Recommended practices for quality and performance
- Area-specific checks (keyboard, evaluation, pedagogy)
## Code Quality Tools
- `.eslintrc.json`: ESLint configuration
- TypeScript strict mode
- React + React Hooks rules
- Accessibility plugin (jsx-a11y)
- Performance rules (max lines: 300, complexity: 15)
- Console.log warnings
- `.prettierrc`: Code formatting standards
- 100 char line width
- 2 space tabs
- Single quotes
- Trailing commas
- `.prettierignore`: Exclude build artifacts and dependencies
## Pre-commit Hooks
- `.husky/pre-commit`: Run lint-staged on commit
- Auto-fix ESLint issues
- Auto-format with Prettier
- Only check staged files
- `.husky/pre-push`: Run full validation before push
- Lint, format check, type check, tests
- Prevents broken code from being pushed
## Contribution Guide
- `CONTRIBUTING.md`: 2500+ lines comprehensive guide
- Environment setup instructions
- Coding standards and naming conventions
- Commit message format (Conventional Commits)
- PR process and workflow
- Testing guidelines (frontend + backend)
- JSDoc documentation requirements
- Area-specific best practices
## Package Updates
- Updated `package.json`:
- Added quality scripts: lint:fix, format:check, type-check, validate
- Added lint-staged script
- Added testing dependencies (@testing-library/*)
- Added husky + lint-staged
- Configured lint-staged rules
This infrastructure ensures:
✅ Consistent code style across the project
✅ No lint/type errors in main branch
✅ 70%+ test coverage on new code
✅ Security best practices enforced
✅ Accessibility compliance (WCAG 2.1)
✅ Performance monitoring (bundle size)
✅ Clear contribution guidelines for all developers
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-10-25 08:29:55 +00:00 |