gate-attribution · git:20260723.0f21419 · 2026-07-23 · sha256 f676725756721661
gate-attribution git:20260723.0f21419A
Immutable. This exact content is served forever at /api/v1/blob/f676725756721661.
--- name: gate-attribution description: Per-task gate dispatch protocol. Documents the single-taskId attribution rule and parallel-lane optimization for reviewer/test_engineer gates. --- # Gate Attribution ## The rule The gate tracker attributes reviewer/test_engineer dispatches PER TASK (single taskId in the prompt). Set-dispatches covering multiple tasks do NOT count per-task, even with per-task verdicts. ## Protocol 1. **For each task requiring a gate:** Dispatch a separate reviewer and/or test_engineer with exactly ONE taskId 2. **Minimize overhead via parallel dispatch:** ``` dispatch_lanes_async with: - common_prompt: shared verification context - lanes: one lane per task, each with a single taskId - max_concurrent: up to 3 ``` 3. **Collect + attribute:** Each lane result auto-attributes to its taskId 4. **Do NOT batch:** Even for identical reviews, dispatch separately ## Optimization for trivial tasks For pure ceremony gates (1-line doc fix): ``` TASK: Verify task X.Y. Run skill-mirrors.test.ts. PASS/FAIL. taskId: X.Y ``` ## Why this exists The gate tracker (`src/hooks/delegation-gate.ts`) keys delegation chains by taskId. Multi-taskId prompts don't create separate chains. Tracked in issue #1746 item 6.