skills/mine/qa-execution/SKILL.md
Runs real-user dogfooding sessions through the product's public interfaces: a persona walks a journey in the browser, takes a thematic tour, probes edges, hunts paper cuts, and reports what a real user would experience. Reads its plan from the living QA docs tree (<qa-docs-path>, default docs/qa/). Use when validating a release candidate, branch diff, migration, or user-facing change against production-like behavior. For planning that tree — personas, journeys, charters, the bug registry — use qa-report; for CI gate runs, AI implementation audits, or integration/security/performance suites, use agent-output-audit.
npx skillsauth add pedronauck/skills qa-executionInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
QA the product the way a real person meets it: a persona walks a journey through the product's public interfaces, feels the friction, hits the edges, and reports what happened. This is dogfooding, not a scripted test pass — the session is the work, and the living QA docs tree remembers it.
Three non-negotiables hold every session:
Pass is the expected observable seen, confirmed through an independent read path, surviving a refresh, with evidence captured. Optimistic UI is not confirmation.docs/qa/. The tree is this skill's memory and its only output location — never a temp dir. If it doesn't exist, run qa-report first; it owns the tree and its bootstrap.Each step names the reference that owns its detail — read it in full when you reach the step; the inline text is the trigger, not the contract.
Step 1 — Resolve the tree, scope, and preconditions
<qa-docs-path>/README.md (entry points, dev-server command, area codes), the in-scope scenarios/ files, open bugs/, and this cycle's charters. The tree is the memory; running without reading it recreates the duplication this design kills.agent-output-audit) and the product is reachable in a production-parity build (real dev server, real auth, no mocks). Not reachable → name the exact gap and stop.Step 2 — Build the matrix and create the report now
references/status-and-reporting.md — it owns the six-value status enum and the report lifecycle.../qa-report/references/session-charters.md before running — never walk unplanned.<qa-docs-path>/reports/<YYYY-MM-DD>-<scope>.md from the report template (project copy at <qa-docs-path>/templates/report.md, else assets/report-template.md) before the first session, with every matrix row Pending. This on-disk report is the source of truth for resume — update it after every session and every fix, never only at the end.Pending.Step 3 — Walk each journey in persona
references/session-protocol.md (the enter→act→verify→capture loop and the evidence standard) and references/persona-fidelity.md (the public-interface guardrails and stall-is-a-finding).Blocked (needs human verify) with exact instructions — never faked.Step 4 — Run each tour and edge probe
references/tours.md (the 10-tour catalog and surface-to-tour matrix) and references/edge-cases.md (the non-technical user edge cases).Step 5 — Experiential lens pass
references/lenses.md — the six lenses and their severity defaults.pass / friction / fail per lens.Step 6 — File findings into the registry
../qa-report/references/bug-registry.md — it owns ids, dedup, and the impact rubric.bugs/ and the affected scenarios' bug_ids. Re-found → append ## Re-found; regressed → reopen with ## Regressed; only a genuinely new symptom mints a new BUG-<YYYYMMDD>-<slug> id.Step 7 — Fix loop (governed)
references/fix-loop.md — the governor, the regression-test-per-fix rule, and Decisions for a Human.Step 8 — Close the round
references/status-and-reporting.md; map matrix verdicts to tracker enums per ../qa-report/references/state-schema.md.Pending, scenario-file verdicts and bug statuses are current, every session's debrief is in the report, and the report's Final Status states release readiness with totals by impact tier — backed by fresh evidence from the current build.references/session-protocol.md.Blocked (needs human verify) with the exact missing prerequisite, and continue with CLI/HTTP journeys still walkable in persona.references/persona-fidelity.md).Skipped with reasoning, and disclose it in Final Status — coverage shrinks visibly or not at all.development
Deep review of branch diffs, working trees, or GitHub PRs at any size. Use when the user asks for CodeRabbit-grade review, an incremental re-review after new pushes, publication of findings to a PR, a cross-LLM peer-review verdict round, or conformance review against spec artifacts. Don't use for applying fixes, reviewing specs or PRDs as documents, or quick single-file feedback.
tools
Orchestrate Claude and Codex worker TUIs from a controller agent through herdr panes and the herdr socket CLI. Use when delegating bounded tasks to herdr worker panes, running user-activated plan-first delegations (Claude Code plan mode, Codex Plan mode), waiting on native agent status (idle, working, blocked, done), or verifying worker reports. Workers launch as interactive TUIs via herdr agent start — never through headless runners (compozy exec, claude -p, codex exec). Not for cmux workspaces (see cmux-orchestration) and not for end-user herdr control.
tools
TanStack Query, Router, and Form patterns for React. Use when writing useQuery/queryOptions, mutations, caching, file-based routes, search params, loaders, or TanStack Form validation. Don't use for TanStack Start, TanStack DB/collections, Zustand client state, or non-TanStack routing.
development
Use when the user wants to design, redesign, shape, critique, audit, polish, clarify, distill, harden, optimize, adapt, animate, colorize, extract, or otherwise improve a frontend interface. Covers websites, landing pages, dashboards, product UI, app shells, components, forms, settings, onboarding, and empty states. Handles UX review, visual hierarchy, information architecture, cognitive load, accessibility, performance, responsive behavior, theming, anti-patterns, typography, fonts, spacing, layout, alignment, color, motion, micro-interactions, UX copy, error states, edge cases, i18n, and reusable design systems or tokens. Also use for bland designs that need to become bolder or more delightful, loud designs that should become quieter, live browser iteration on UI elements, or ambitious visual effects that should feel technically extraordinary. Not for backend-only or non-UI tasks.