name: qa description: Run the full end-of-contribution QA review over the current change (the qa-checklist gate plus a coverage fan-out and the domain reviewers it names). user-invocable: true
You are running the project's end-of-contribution QA gate. Do this now, before the change is called done.
-
Scope the review from the diff:
git diff --name-onlyfor uncommitted work. For committed work, merge-base against the branch's own base, nevermain(work is based off the latest release branch andmaintrails it, so a merge-base againstmainsweeps the whole release into scope). Fallback chain: the upstream, else the newestorigin/release/*branch, elseorigin/main:base=$(git rev-parse --abbrev-ref '@{upstream}' 2>/dev/null) || base=$(git for-each-ref --sort=-creatordate --format='%(refname:short)' \ 'refs/remotes/origin/release/*' | head -1) git diff --name-only "$(git merge-base HEAD "${base:-origin/main}")"..HEADIf the user passed an argument (a feature name, phase, or file list), use it to focus the scope.
-
Dispatch the
qa-checklistagent over that scope. It is the read-only gate: it scales its own depth to the size of the change, checks every repo invariant in play, and ends with an adversarial "what is missing" pass. Let it run; do not duplicate its work inline. -
If the change is more than a trivial single-surface edit, also fan out a small coverage pass in parallel: one agent for correctness, one for test coverage, one for dead code, each prompted for COVERAGE (report every gap with confidence and severity), not filtering.
-
Dispatch the domain reviewer agents that
qa-checklistnames for the surfaces this diff touches (for exampleprivacy-security-review,migration-safety,database-performance-reviewerfor SQL, indexes, query call sites, pool or lock behavior, timeout policy, or stored-data growth,cross-platform-sync,architecture-reviewer, and on a release branchrelease-malware-audit). Spawn them fresh; never have the implementer review its own work. -
Run the deterministic floor yourself so the verdict rests on green checks, not only agent reasoning:
npm run ci:changed(Biome on the changed files),npx tsc --noEmit, andnpx vitest run tests/architecture.test.ts tests/localization_fixes.test.ts. Report any red. -
Adversarially confirm each consequential finding before acting on it (about half of raw findings do not survive a second look). Then fix every BLOCKING and SHOULD-FIX finding, in focused commits. Report what you fixed and what remains as VERIFY (needs a run or E2E) or NICE-TO-HAVE.
End with a one-line verdict: READY or NOT READY, and the list of any VERIFY items the maintainer
still has to run by hand (for example npm run perf:tour, npm run test:browser, or the mobile
E2E scripts). READY is advisory judgment; node scripts/gate_select.mjs is the deterministic
pre-merge contract (same step list as npm run gate with a selective test substitution; release
tier on release/**; see docs/qa-gate.md), so if it has not run green this session, list it as
the first VERIFY item. npm run gate remains the deeper full-suite check when you want it.
TDD Red-Green-Refactor
Testing
Skill qui guide Claude a travers le cycle TDD complet.
Audit d'Accessibilité Web
Testing
Réalise un audit d'accessibilité web complet selon les normes WCAG.
Générateur de Tests UAT
Testing
Génère des cas de test d'acceptation utilisateur structurés et complets.