Sumo qa executing qa rollout
Use after sumo-qa-planning-qa-rollout to dispatch a written QA plan task-by-task. Each task runs in a fresh subagent (parallel where independent); each subagent's output goes through a two-stage review (test-correctness → test-quality) before the task is marked done. Continuous execution — no per-task check-ins. Finishes by routing to sumo-qa-finishing-qa-work.From its SKILL.md
npx -y skills add sumithr/sumo-qa --skill sumo-qa-executing-qa-rolloutAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 6 stars6 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
7.9 KB, as published. Nobody here has run it
Executing a QA rollout with subagents
Take a written plan from sumo-qa-planning-qa-rollout (or a hand-written equivalent at docs/qa/plans/...) and execute it by dispatching one fresh subagent per task, then walking each subagent's output through a two-stage review.
Announce at start: "Dispatching the plan with subagents."
Output discipline (mandatory)
Inherits the global discipline from using-sumo-qa: output discipline (never surface internal taxonomy labels — say "behaviour change in pricing", not "Classification: business_logic_change"), output economy (spend output on findings not framing; no preamble or self-narration; one question per turn; no closing pleasantries), knowledge authority hierarchy, internal scaffolding stays internal, and specialty-tool fit.
The Iron Law
ONE FRESH SUBAGENT PER TASK. TWO-STAGE REVIEW. CONTINUOUS EXECUTION.
Fresh subagent prevents context pollution; two-stage review separates "catches the right risk" from "well-shaped test"; continuous because mid-plan check-ins waste the user's attention.
Evidence-backed gate reporting
Marking a task complete, or reporting a spec/quality review passed, is a gate claim: it carries a status (passed / failed / skipped / blocked / unverified) and, unless skipped or unverified, cites the ONE observed evidence item behind it by source (command, tool_call, file_read, user_fact, external_ci, manual_observation) — the worker's returned result or the fresh run. A task marked done with no cited evidence overstates; a worker you could not delegate or verify is blocked / unverified, never a silent passed. Keep it to a status word + short source cite per task.
When to Use
Routes here from:
sumo-qa-planning-qa-rolloutwhen a plan is signed off- Direct user invocation: "execute the QA plan at
docs/qa/plans/...", "run through the test rollout", "dispatch the QA work"
For a single-task piece of work, skip this skill — go straight to sumo-qa-implementing-with-tdd or the matching individual skill.
Checklist
You MUST work through these in order. Steps 1–2 are AI-only homework. The dispatch loop in step 3 is continuous: do NOT pause for user check-ins between tasks. Step 4 only fires when all tasks are done or one is genuinely blocked.
-
Read the plan (no user question) — load
docs/qa/plans/<plan>.md. Extract every task verbatim, its approach tag, files,[parallel]/[sequential]marker, and "done when" criteria. Add an entry to the ordered work tracker per task. -
Group by parallelism (no user question) — bucket tasks into parallel waves. All
[parallel]tasks with no upstream dependency form wave 1. Sequential or dependency-blocked tasks form wave 2, 3, etc. Most QA plans collapse to 1–2 waves. -
Dispatch loop (per wave, continuous):
- 3a. Dispatch implementer subagents — for each task in the wave, dispatch a fresh subagent using
prompts/implementer-prompt.md, filling in the task spec. Wave dispatches go in parallel (one delegation call per worker, all issued together so the host can run them concurrently). - 3b. Spec-correctness review — after each subagent returns, dispatch a spec-reviewer subagent using
prompts/spec-reviewer-prompt.md. Checks: does the test cover the named risk? Does it run? Did the red phase happen (if TDD)? Did production code stay unchanged (if strengthen / verify-existing)? - 3c. If spec review fails: re-dispatch the implementer with findings. Loop until pass or 3 rounds elapsed (then escalate).
- 3d. Test-quality review — once spec review passes, dispatch a quality-reviewer subagent using
prompts/quality-reviewer-prompt.md. Checks: observable assertion (not implementation-coupled)? Deterministic? Tautology check? - 3e. If quality review fails: re-dispatch the implementer with quality findings. Loop until pass or 3 rounds (escalate).
- 3f. Mark the task complete in the ordered work tracker. Move to next task / wave. Do NOT ask the user "continue?".
- 3a. Dispatch implementer subagents — for each task in the wave, dispatch a fresh subagent using
-
Final cross-task review — when all tasks are done, dispatch a final reviewer with the entire plan + all task outputs. Do the tests collectively cover all named risks? Are there seams between tasks neither covers? Run the full suite; surface counts.
-
Hand off to
sumo-qa-finishing-qa-work— pass the plan, the task outputs, and the cross-task review. That skill captures evidence, produces the PR-ready summary, and closes the loop.
Process Flow
See the Checklist above — that's the flow.
Model Selection
Match the subagent model to the task shape via the host's worker-delegation primitive (where it exposes a model override):
- Test-writing subagents (clear spec, 1–2 files): fast/cheap (haiku).
- Spec-correctness reviewer: standard (sonnet). Reads code + assesses risk coverage.
- Quality reviewer: capable (sonnet/opus). Tautology + observability judgments.
- Final cross-task reviewer: capable (opus). Guards whole-plan integrity.
Red Flags — STOP and rework
| Thought | Reality |
|---|---|
| "I'll just do task 1 inline — subagents are overkill for 3 tasks" | Iron Law violated. Even small plans get fresh subagents per task. |
| "I'll combine spec + quality into one review subagent to save time" | Two reviews because they ask different questions. One agent doing both skimps on one. |
| "Task 3 mentioned task 2's fixture; I'll inherit context to skip re-explanation" | No. Fresh subagent. Re-explain via the prompt template. |
| "Let me pause after task 2 and ask the user if the direction's right" | Continuous execution. The user signed off the plan; mid-plan check-ins waste attention. |
| "Spec review came back with 2 issues; I'll fix one, push the other to task 5" | Fix both before moving on. |
| "Production code changed in a strengthen-test-coverage task — it was a tiny refactor" | Reject the output. Production stays clean. |
| "All tasks done; I'll just summarise and finish" | Cross-task review first, then route to sumo-qa-finishing-qa-work. |
Examples
Good (parallel wave 1, then sequential wave 2)
User: "Execute the plan." AI (announce): "Dispatching the plan with subagents." AI: 6 tasks; 1–5 parallel, 6 sequential on task 1's fixture. Wave 1: 5 implementers dispatched in one message → spec → quality → done. Task 4 spec-review fails round 1; passes round 2. Wave 2: task 6 dispatches after task 1 commits; two-stage review as before. Final: cross-task reviewer confirms 5 risks covered, suite green. Routes to
sumo-qa-finishing-qa-work.
Bad (inline execution + skipped reviews)
User: "Execute the plan." AI: edits
tests/billing/test_refund.pydirectly with 3 tasks' tests; runs pytest; reports green. Iron Law violated: no fresh subagents, no spec/quality reviews, no audit trail that tests catch the named risks.
Next skill in the chain
After cross-task review passes → sumo-qa-finishing-qa-work to capture evidence, write the PR-ready summary, and close the loop.