QA validation and fix loop workflow — validates implementation completeness then iterates fix cycles until all acceptance criteria pass and quality gates clear
Installer avec Codex ou Claude Copiez ce prompt, collez-le dans Codex, Claude ou un autre assistant, puis laissez-le vérifier la page du skill et l'installer pour vous.
Une commande directe contourne le prompt de vérification. Examinez la source avant de l'exécuter.
QA validation and fix loop workflow — validates implementation completeness then iterates fix cycles until all acceptance criteria pass and quality gates clear
["Be thorough - you are the last line of defense","Be specific with file paths and line numbers","Fix what QA found, don't add features"]
error_handling
graceful
streaming
supported
source
builtin
trust_score
100
provenance_sha
20cc308c655217c9
QA Workflow Skill
Overview
Comprehensive quality assurance workflow that validates implementation completeness and correctness, then iterates through fix cycles until approval. You are the last line of defense before shipping.
Core principle: You are the last line of defense. If you approve, the feature ships. Be thorough.
When to Use
Always:
After implementation is marked complete
Before merging or deploying changes
When validating acceptance criteria
Exceptions:
Documentation-only changes (may use minimal validation)
Trivial fixes with skip_validation flag
Iron Laws
NEVER approve without verifying every acceptance criterion — you are the last line of defense; partial verification equals no verification.
ALWAYS document issues with exact file paths and line numbers — vague reports like "the tests fail" are unfixable and waste the fix loop cycle.
NEVER sign off on implementation with failing tests — all test categories (unit, integration, E2E) must pass before approval, no exceptions.
ALWAYS run the full test suite for regression check — a feature that breaks existing functionality is not production-ready regardless of new test results.
NEVER exceed 5 fix loop iterations without escalating to human review — repeated loops signal a root cause that automated fixes cannot resolve.
Anti-Patterns
Anti-Pattern
Why It Fails
Correct Approach
Approving before checking all acceptance criteria
Ships bugs disguised as features; breaks the quality contract
Verify every criterion in the spec before writing the verdict
Developer cannot reproduce or fix what is not precisely described
Include file path, line number, exact error message, and reproduction steps
Signing off with known failing tests
Failing tests are documented bugs being shipped to production
All tests must pass; if tests are wrong, fix them first and document the change
Only running new tests, not the full regression suite
New code breaking old functionality is invisible without full suite
Always run full suite with ; regressions block approval
--coverage
Fixing more than QA found to "clean things up"
Over-fixing introduces new bugs and scope creep into the fix loop
Apply minimal changes; fix only what QA identified, nothing more
Every acceptance criterion must be verified before approval.
Part 1: QA Review
Phase 0: Load Context
# Read the spec (your source of truth for requirements)cat .claude/context/specs/[task-name]-spec.md
# Read any previous QA reportscat .claude/context/reports/qa/qa-report.md 2>/dev/null || echo"No previous report"# See what files were changed
git diff main...HEAD --name-status
# Read QA acceptance criteria from spec
grep -A 100 "## QA Acceptance" spec.md
STOP if implementation is not complete. QA runs after implementation.
Phase 2: Start Test Environment
# Start services as needed
npm run dev # or appropriate command# Verify services are running
curl http://localhost:3000/health 2>/dev/null || echo"Service not responding"
Wait for all services to be healthy before proceeding.
Phase 3: Run Automated Tests
Unit Tests
Run all unit tests for affected areas:
# Run test suite
npm test# or
pytest
# or
go test ./...
Document results:
UNIT TESTS:
- [area-name]: PASS/FAIL (X/Y tests)
Integration Tests
Run integration tests if applicable:
# Run integration test suite
npm run test:integration
Document results:
INTEGRATION TESTS:
- [test-name]: PASS/FAIL
End-to-End Tests
If E2E tests exist:
# Run E2E test suite
npm run test:e2e
Document results:
E2E TESTS:
- [flow-name]: PASS/FAIL
Phase 4: Manual Verification
For each acceptance criterion in the spec:
Navigate to the relevant area
Verify the criterion is met
Check for console errors
Test edge cases
Document findings
MANUAL VERIFICATION:
- [Criterion 1]: PASS/FAIL
- Evidence: [what you observed]
- [Criterion 2]: PASS/FAIL
- Evidence: [what you observed]
Save report to .claude/context/reports/qa/qa-report.md
Phase 8: Decision
If APPROVED
=== QA VALIDATION COMPLETE ===
Status: APPROVED
All acceptance criteria verified:
- Unit tests: PASS
- Integration tests: PASS
- Manual verification: PASS
- Security review: PASS
- Regression check: PASS
The implementation is production-ready.
Ready for merge.
If REJECTED
Create fix request and proceed to Part 2.
Part 2: QA Fix Loop
Phase 0: Load Fix Request
# Read the QA report with issuescat .claude/context/reports/qa/qa-report.md
# Identify issues to fix
grep -A 50 "## Issues Found" .claude/context/reports/qa/qa-report.md