# {{ID}} — verify {{task IDs}} You did not write this work. Do not fix it. Do not trust worker summaries. ## Inputs - Task cards: {{paths}} - Changed files or diff: {{paths or command}} - Acceptance checks: {{commands}} ## For each criterion | Criterion | Command | Observed | Pass/Fail | |---|---|---|---| | {{criterion}} | `{{command}}` | {{observed}} | {{pass/fail}} | ## Also check - Scope: every changed file is owned by the task. - Contracts: signatures and data shapes match `.swarm/contracts.md`. - Tests: assert real behavior; no silent skips; no snapshot updates. - Edge cases named in the task card. ## Freeze The tree is frozen during verification. Do not edit product source, tests, docs or manifests. If you need a gate script that rewrites generated files, copy it/hash-check it instead of changing the tree. ## Verdict `pass` / `pass_with_risks` / `fail` — with the top risks and exact repro commands. ## Report FIRST write the full review to `.swarm/reviews/{{ID}}.md`. Then return only the minimal structured verdict: `{task_id, verdict, summary, review_file}` per `.swarm/verdict.schema.json`. The review file is the source of truth; it must exist even if the structured reply is lost. Do not return a long findings array in the workflow schema.