test - Verification Stage
Invariants
- Verify against the task document acceptance criteria.
- Use the best available project verification path.
- Do not require one specific browser automation tool in core workflow.
- Always write one final report to
docs/testing/.
Runtime adapters may expose this stage as a slash command, menu action, or natural-language skill invocation. The portable stage name is test.
Workflow
- Read
AGENTS.md. - Resolve the task ID and read
docs/task/{ID}-{task-name}.md. - Confirm the task reached the quality gate.
- Build a verification plan from
Acceptance CriteriaandVerification Approach. - Prefer existing project commands and CI-compatible checks.
- Run safe verification commands.
- Use browser automation or manual checks only when required by the task.
- Write
docs/testing/{ID}-{task-name}.mdusingdocs/templates/test-report.md. - Move the task to
Approvedonly after tests pass and the user approves, or leave it inTestingif fixes are needed.
Verification Priority
Use the narrowest reliable check first:
- Unit tests for pure logic.
- Integration tests for API, database, service, or cross-module behavior.
- Browser or end-to-end checks for user-visible workflows.
- Static checks such as typecheck, lint, or build where they are part of project quality.
- Manual inspection only when automation is unavailable or not cost-effective.
If no viable verification path exists, write a BLOCKED report explaining what is missing.
Report Rules
- Write the final report only under
docs/testing/. - Do not scatter temporary reports in the repo root.
- Record commands exactly as run.
- Record skipped checks with reasons.
- Include enough evidence for the implementation stage to fix failures without session history.
Handoff
PASS:
Verification passed for task {ID}
Report: docs/testing/{ID}-{task-name}.md
Next stage after user approval: document {ID}
FAIL or BLOCKED:
Verification failed or blocked for task {ID}
Report: docs/testing/{ID}-{task-name}.md
Return to implementation with the report context.