# {{ID}} — {{title}} Role: worker | Wave: {{n}} | Depends on: {{ids or —}} | Effort: {{S/M/L}} ## Objective {{1–3 sentences. What must exist when done.}} ## Why {{Which success criterion this serves.}} ## Inputs (read first) - `.swarm/brief.md` - `.swarm/contracts.md` §{{section}} - `{{path}}:{{start}}-{{end}}` ## Deliverables - `{{new or changed path}}` — {{what}} - `{{test path}}` — {{what it covers}} ## Write scope (only these) - `{{glob or exact path}}` ## Read-only - `{{path}}` ## Contract {{Exact signature, data shape, CLI behavior, or output format.}} ## Constraints - {{No new dependencies, style, performance, compatibility.}} ## Acceptance (run these) 1. `{{command}}` → {{expected result}} 2. `{{command}}` → {{expected result}} ## Report `.swarm/reports/{{ID}}.json` per `.swarm/report.schema.json`; status `done|partial|blocked|failed`. ## Stop conditions - Time box: 25 minutes for S/M, 45–60 minutes for L, or 3 failed attempts at the same step. - A load-bearing unknown, a needed file outside scope, or a broken contract → `blocked` with the exact question. Do not guess. - If a sibling task's in-flight file causes a compile/test failure outside your scope, wait briefly and report `partial` with the exact external error; never edit that file.