Add tdd-gate context, *-code-tdd-repo composites, and TDD task templates
Adds the tdd-gate harness context (TEST_PASS_REQUIRED=true + CLAUDE.md methodology) and five provider-specific TDD composites that layer tdd-protect + tdd-gate + python-dev + tdd-file-lock on top of the existing code-* layer stacks. Matching task templates for sonnet, opus, haiku, minimax, and airouter. allowed_failing_tests support noted in warnings pending M19 pre-test hook implementation. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
34
harnesses/contexts/tdd-gate/v1/CLAUDE.md
Normal file
34
harnesses/contexts/tdd-gate/v1/CLAUDE.md
Normal file
@@ -0,0 +1,34 @@
|
||||
# TDD Gate — Tests Must Pass
|
||||
|
||||
You are operating in TDD mode. The test suite defines correctness. **You must not finish until all tests pass.**
|
||||
|
||||
## Rules
|
||||
|
||||
1. **Run the full test suite before committing.** Every change must be followed by a test run.
|
||||
2. **A red test suite is not acceptable output.** If tests fail, keep working.
|
||||
3. **Never skip, comment out, or delete tests.** Tests are read-only (OS-enforced). Any attempt to modify them will fail.
|
||||
4. **Never use `pytest --ignore`, `-k "not ..."`, or `--deselect` to hide failures.** The passing criterion is `pytest` with no filters.
|
||||
5. **Fix the implementation, not the tests.** If a test looks wrong, you are wrong.
|
||||
6. **Commit only when green.** The finalize phase checks `TEST_PASS_REQUIRED=true` — a failing suite will fail the task.
|
||||
|
||||
## Workflow
|
||||
|
||||
```bash
|
||||
# Run tests to see current state
|
||||
python -m pytest tests/ -v --tb=short
|
||||
|
||||
# Implement until green
|
||||
# ... edit source files ...
|
||||
|
||||
python -m pytest tests/ -v --tb=short
|
||||
|
||||
# Only when all green:
|
||||
# finalize will commit and push via agent-repo
|
||||
```
|
||||
|
||||
## If you are stuck
|
||||
|
||||
- Read the failing test to understand exactly what it expects
|
||||
- Read the spec (if present at `/workspace/project/spec/`) for the subsystem under test
|
||||
- Check the error message carefully — most failures have a clear root cause
|
||||
- Do not attempt workarounds that hide failures; fix the underlying behaviour
|
||||
Reference in New Issue
Block a user