| name | pre-commit |
| description | Use before every git push — mandatory quality gate, no exceptions |
Before push. No exceptions.
- Run
change-review on the outgoing change — correctness, unhappy paths, tests. Any bug/issue → blocked. Fix it.
- Run
clean-code-review on the same change — SRP/DRY/naming/coupling/dead-code/KISS. It tags violations as // TODO: clean-code - <score> - <CAT>: … markers.
- Scan for
// TODO: clean-code - markers. Score > 0.5 → blocked. Fix it (or run refactor to clear the highest-scored one at a time).
- Lint, typecheck, tests after every fix.
- Re-run from step 1. Repeat until
change-review is clean and no > 0.5 marker remains.
Only then push.