superspec-tdd
4
总安装量
3
周安装量
#52141
全站排名
安装命令
npx skills add https://github.com/bryanhoo/superspec-skills --skill superspec-tdd
Agent 安装分布
mcpjam
1
openhands
1
replit
1
junie
1
windsurf
1
zencoder
1
Skill 文档
Superspec TDD (Mechanical Enforcement)
Iron Law
NO PRODUCTION CODE BEFORE A VERIFIED FAILING TEST.
Task Tags
- [TDD][RED]
- [TDD][VERIFY_RED]
- [TDD][GREEN]
- [TDD][VERIFY_GREEN]
- [TDD][REFACTOR]
- [NON-TDD][DO]
- [NON-TDD][VERIFY]
Allowed [NON-TDD] Scope (ONLY)
- docs-only
- config-only (no behavior change)
- generated outputs
- formatting/renaming only
Core Principle
If you didn’t watch the test fail, you don’t know if it tests the right thing.
Gates (non-negotiable)
- A task line with
[TDD][GREEN]MUST NOT be executed unless its corresponding[TDD][VERIFY_RED]task for the same Scenario is completed. - A
[NON-TDD][DO]task MUST NOT be executed unless there is a corresponding[NON-TDD][VERIFY]task line.
VERIFY_RED Decision Table (zero-decision)
A [TDD][VERIFY_RED] task MUST result in exactly one of these outcomes:
- PASS: STOP. The test is not proving missing behavior. Fix the test/spec/Test Obligation. Do not write production code.
- ERROR (test runner/config/typo): STOP. Fix the error and re-run until it FAILs for the expected reason.
- FAIL: Continue only if output contains the required
Expected (RED)substring.
VERIFY_GREEN Decision Table (zero-decision)
A [TDD][VERIFY_GREEN] task MUST result in exactly one of these outcomes:
- PASS: Continue.
- FAIL: Fix production code (not the test).
- Other tests failing: STOP and fix until all relevant tests are green.
REFACTOR Rule
[TDD][REFACTOR]is allowed only after[TDD][VERIFY_GREEN].- After refactor, re-run the same Verify Command and confirm it still passes.
[NON-TDD] Verification Rule
- A
[NON-TDD][VERIFY]step MUST be mechanical (command output / file existence /openspec validate --all --json), not a manual check. - If you cannot express verification as a command or deterministic check, this is not [NON-TDD].
When Stuck (zero-decision)
- Don’t know how to test: the contract is unclear. Update
specs/**/spec.mdTest Obligation and/ordesign.mdTest Commands. - Test setup is huge: simplify the contract or split the Scenario.
- Must mock everything: code is too coupled. Stop and revise design boundaries.
Strict Prohibitions
- NEVER test mock behavior.
- NEVER add test-only methods to production code.
- NEVER mock without understanding dependency side effects.
Reference: references/testing-anti-patterns.md