qa-next
QA Next — UAT Loop Orchestrator
/develop-next takes a roadmap item to "merged + status: accepted". That acceptance is the pipeline's Definition of Done — an agent signed it. Nobody has yet signed that the feature is the one the owner wanted. This skill closes that gap one user function at a time: pick the next function nobody has looked at, exercise it end-to-end in a real environment, write down exactly what was observed, and hand the owner a one-line decision.
The queue is the UAT registry (docs/qa/uat-registry.md): one row per thing a person does with the application — "register an account", "submit a score" — stated in one sentence, grouped by surface, in the order the owner wants them exercised. Stories are the development unit and are referenced from each function's Stories cell; they are never the queue, because many stories build one function and some stories build nothing a user can see.
One invocation = one function taken from ⬜ untested to 🟡 pass, ❌ fail (with a bug filed) or ⏸ blocked (with a reason). The owner turns 🟡 into ✅ with --accept; this skill never does.
When to Use This Skill
- User says
/qa-next(one function) or/loop /qa-next(continuous). - User says "QA the next function", "keep the UAT going", "what hasn't been tested yet — test it".
--dry-run: report which function would be selected, its items, whether a lane spec exists and whether the environment is reachable, then stop. Read-only.
Not for: story-level QA inside the development pipeline (that is /qa-story), code review, or re-running the automated suites. This skill verifies behaviour in an environment, from the owner's seat.
Arguments
Invoke as /qa-next [id] [--dry-run].