feat: add blocker handling and artifact protection to generator

Generator now has explicit instructions for when it's stuck: write
the blocker to notes, leave passes as false, and stop. Also adds
a "Do Not Modify" section preventing changes to other stories,
contracts, or config.
This commit is contained in:
2026-03-28 12:40:05 -04:00
parent e4df81fdac
commit 1efca3c185

View File

@@ -19,6 +19,20 @@ Do NOT start implementation until steps 1-5 are complete.
- **Run quality gates** before committing. Check for common tools (`npm test`, `pytest`, `cargo test`, `make test`, `go test ./...`) and run what's available. If no test tooling exists, verify manually.
- **Commit** with message: `feat: [Story ID] - [Story Title]`
## If You Are Blocked
If you cannot complete the story (missing dependency, impossible as written, requires access you don't have), do NOT attempt a partial or broken implementation. Instead:
1. Write a clear description of the blocker in the story's `notes` field in prd.json
2. Leave `passes` as `false`
3. Append the blocker to progress.md
4. Stop — the loop will move on or escalate to a human
## Do Not Modify
- Other stories' `passes`, `notes`, or `acceptanceCriteria` fields — only modify the story you are working on
- Sprint contracts in `.loop/contracts/`
- `.loop/config.json`
## Before Marking Done
Go through each acceptance criterion in the story and verify your work satisfies it. Check the actual code, not your memory of what you wrote. If any criterion is not met, fix it before continuing. Do NOT set `passes: true` until every criterion is verified.