[meta] Forbid per-batch full-suite test runs under implement skill

Root cause: I ran the full unit suite at the end of every autodev
batch despite implement/SKILL.md already saying that is forbidden
(lines 33, 136, 145, 372). The skill's existing rules were buried
mid-document; coderule.mdc's general "run full suite when done"
overrode them in practice because each batch felt like a "done"
point.

Two targeted clarifications:

- .cursor/rules/coderule.mdc: add an Iterative-Skill Exception
  bullet stating that when an iterative loop skill (autodev /
  implement batch loop, refactor batch loop) is active, the
  skill governs full-suite cadence and "done with changes"
  means done with the implementation phase, not done with one
  batch.

- .cursor/skills/implement/SKILL.md: hoist the per-batch / per-
  task / Step-16 cadence rule into a top-of-file "READ FIRST,
  EVERY BATCH" banner with an explicit anti-pattern check ("if
  you catch yourself about to run pytest tests/ at end of batch,
  STOP").

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Oleksandr Bezdieniezhnykh
2026-05-13 22:51:48 +03:00
parent b64f3a1b93
commit cfe3d357f4
2 changed files with 23 additions and 4 deletions
+1
View File
@@ -39,6 +39,7 @@ alwaysApply: true
- When you think you are done with changes, run the full test suite. Every failure in tests that cover code you modified or that depend on code you modified is a **blocking gate**. For pre-existing failures in unrelated areas, report them to the user but do not block on them. Never silently ignore or skip a failure without reporting it. On any blocking failure, stop and ask the user to choose one of:
- **Investigate and fix** the failing test or source code
- **Remove the test** if it is obsolete or no longer relevant
- **Iterative-skill exception**: when an iterative loop skill is active (e.g. autodev / `implement/SKILL.md` batch loop, `refactor/SKILL.md` batch loop), the skill governs full-suite cadence — typically focused tests per task/batch and a single full-suite gate at the very end of the implementation phase, NOT after each batch. "Done with changes" means done with the entire implementation phase the skill is running, not done with one batch. Do not run the full suite per batch unless the skill explicitly says to.
- Do not rename any databases or tables or table columns without confirmation. Avoid such renaming if possible.
- Make sure we don't commit binaries, create and keep .gitignore up to date and delete binaries after you are done with the task