| name | execute-qa |
| description | Execute QA validation for a completed feature against its PRD, Tech Spec, and tasks using Playwright MCP, accessibility checks, visual review, bug documentation, and a final QA report. Use when Codex is asked to test, QA, validate, approve, reject, or verify a feature implementation in tasks/prd-[feature-name]/. |
Execute QA
Use this skill to validate that an implementation satisfies all PRD, Tech Spec, and task requirements before approval.
Required Workflow
-
Analyze documentation.
- Identify the feature folder under
tasks/prd-[feature-name]/.
- Read
prd.md, techspec.md, and tasks.md.
- Extract all numbered PRD functional requirements.
- Verify technical decisions from the Tech Spec.
- Check task completion status.
- Build a requirement verification checklist before testing.
-
Prepare the localhost environment.
- Confirm the application is running on localhost.
- If it is not running and project scripts are available, start the required frontend/backend servers.
- Use Playwright MCP
browser_navigate to access the app.
- Use
browser_snapshot to confirm the page loaded and understand current state before interacting.
-
Run E2E tests with Playwright MCP.
- Use Playwright MCP for all browser interactions.
- For each PRD functional requirement, navigate to the relevant functionality, execute the expected flow, verify the result, capture evidence, and mark PASSED or FAILED.
- Use
browser_snapshot before interactions.
- Use
browser_click, browser_type, browser_fill_form, browser_select_option, and browser_press_key as needed.
- Use
browser_console_messages to check JavaScript errors.
- Use
browser_network_requests to inspect API calls when relevant.
-
Check accessibility against WCAG 2.2.
- Verify keyboard navigation with Tab, Enter, and Escape.
- Confirm interactive elements have descriptive labels.
- Confirm images have appropriate alt text.
- Check color contrast.
- Confirm forms have associated labels.
- Confirm error messages are clear and accessible.
- Use
browser_snapshot for labels and semantic structure.
-
Perform visual checks.
- Capture screenshots of main screens with
browser_take_screenshot.
- Check empty, populated, loading, and error states where applicable.
- Check responsiveness when relevant to the feature.
- Document visual inconsistencies with screenshots.
-
Document bugs.
- Write bugs to
tasks/prd-[feature-name]/bugs.md when any issue is found.
- Include description, severity, reproduction steps, expected result, actual result, and screenshot evidence.
- Report blocking bugs immediately.
-
Generate the final QA report.
- Use
references/qa-report-template.md.
- Save the report as
tasks/prd-[feature-name]/qa.md.
- Set status to APPROVED only when all PRD requirements pass.
- Set status to REJECTED when any required check fails.
Hard Rules
- Use Playwright MCP for all E2E browser interactions.
- Do not approve QA until all PRD requirements, Tech Spec expectations, and task outcomes are verified and passing.
- Do not skip documentation analysis.
- Do not skip accessibility checks.
- Do not skip visual checks.
- Document all bugs with screenshot evidence.
- Follow WCAG 2.2 for accessibility evaluation.
Quality Checklist
- PRD analyzed and requirements extracted.
- Tech Spec analyzed.
- Tasks verified and completion status checked.
- Localhost environment accessible.
- E2E tests run via Playwright MCP.
- All main flows tested.
- Accessibility verified against WCAG 2.2.
- Evidence screenshots captured.
- Browser console checked.
- Network requests checked when relevant.
- Bugs documented in
bugs.md if found.
- Final report saved to
qa.md.