|
6 | 6 | 2. Generalize. Never hardcode or manually copy. Every solution must be programmatically coherent, even "quick tests". |
7 | 7 | 3. Fix root causes only. Never modify tests to pass, twist configs to fake success, or dismiss failures as pre-existing. Own every error. |
8 | 8 | 4. Keep it plain. No overcomplicating, decorative comments, emojis, bold, editorializing, or Co-Authored-By watermarks. |
9 | | -5. No manual migrations. Use `docker compose up -d` exclusively. |
10 | | -6. Max 400 SLOC per file. Conventional Commits: feat, fix, docs, refactor, test, chore. |
| 9 | +5. Never use manual bash commands for editing files to avoid corruption and side effects. |
| 10 | +6. No manual migrations. Use `docker compose up -d` exclusively. |
| 11 | +7. Max 400 SLOC per file. Conventional Commits: feat, fix, docs, refactor, test, chore. |
11 | 12 |
|
12 | 13 | ## Tool Hierarchy |
13 | 14 |
|
|
20 | 21 | ## Testing |
21 | 22 |
|
22 | 23 | - TDD: Write failing test first, minimal code to pass, refactor. |
23 | | -- Baseline first: Run all unit tests before implementing. Fix any existing failures. |
| 24 | +- Baseline first: Before implementing with TDD, run all the tests and coverage and benchmark first to establish the baseline, so that regression become apparent. Fix any existing failures. |
24 | 25 | - Unit tests for: input/output pairs, edge cases, error paths. |
25 | 26 | - Property-based tests for: invariants, commutativity, idempotency, round-trip serialization. |
26 | 27 | - No skipped tests. Detect and re-enable. Investigate root causes. |
|
0 commit comments