What
Add an explicit TDD section to CONTRIBUTING.md's 'Code expectations' that spells out the RED → verify-RED → GREEN → verify-GREEN → REFACTOR loop. The current document mentions 'regression test is part of the same PR' but doesn't say write the test first or watch it fail for the right reason.
Why
- The current 'tests are the design contract' line is too soft — it admits 'I wrote the code then added the test' as compliant, which loses the design-discovery benefit of TDD
- Test-passes-immediately doesn't prove the test catches anything. The 'watch it fail' step is the actual guard
- All existing implementation plans (
docs/superpowers/plans/) already specify 'Write the failing test → Run and verify failure → Implement → Run and verify passing' — codifying that as policy formalizes existing practice
Scope
- Expand the 'Tests are the design contract' bullet in
CONTRIBUTING.md with the 6-step loop
- Call out the exception for pure renames / type-design refactors where existing tests already exercise the surface
What
Add an explicit TDD section to
CONTRIBUTING.md's 'Code expectations' that spells out the RED → verify-RED → GREEN → verify-GREEN → REFACTOR loop. The current document mentions 'regression test is part of the same PR' but doesn't say write the test first or watch it fail for the right reason.Why
docs/superpowers/plans/) already specify 'Write the failing test → Run and verify failure → Implement → Run and verify passing' — codifying that as policy formalizes existing practiceScope
CONTRIBUTING.mdwith the 6-step loop