# {{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}} - `{{artifact/source}}`: {{path:start-end, URL, dataset, design file}} ## Deliverables - `{{new or changed path/artifact}}` — {{what}} - `{{test/evidence artifact}}` — {{what it proves}} ## 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 (re-runnable) 1. `{{command or artifact path}}` → {{expected result/state}} 2. `{{citation check / metric / render at sizes}}` → {{expected result}} 3. Every criterion must have evidence a fresh verifier can reproduce. ## 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.