| name | verify |
| description | Three-stage verification: V1 unit → V2 integration → V3 E2E + evidence package |
| argument-hint | <feature-id e.g. F001> |
Verify — Three-Stage Verification
Parameter: $ARGUMENTS — feature ID (e.g. F001)
V1: Unit/Component Tests
- Run all V1 tests for this feature
- Check coverage ≥ 80%
- If any fail → STOP, fix first
- Record results to
.harness/evidence/$ARGUMENTS/v1-result.md
V2: Integration Tests
- Run all V2 tests for this feature
- Verify cross-module data flow correctness
- Verify API contracts match spec
- If any fail → STOP, fix first
- Record results to
.harness/evidence/$ARGUMENTS/v2-result.md
V3: End-to-End Tests
- Run all V3 tests
- Execute complete user paths defined in spec
- Capture screenshots at key steps (if applicable)
- Compare with baseline screenshots (if available)
- Record results to
.harness/evidence/$ARGUMENTS/v3-result.md
Evidence Package
Create .harness/evidence/$ARGUMENTS/verdict.md:
# Verification Verdict — $ARGUMENTS
## Summary
- Feature: [name]
- Date: [timestamp]
- Result: PASS / FAIL
## Acceptance Criteria Status
| AC | Description | V1 | V2 | V3 | Status |
|----|-------------|----|----|-----|--------|
| AC-1 | ... | PASS | PASS | PASS | ✅ |
| AC-2 | ... | PASS | FAIL | - | ❌ |
## Invariant Status
| INV | Description | Status |
|-----|-------------|--------|
| INV-1 | ... | ✅ |
## Coverage
- V1 coverage: XX%
- Lines: X/Y
## Issues Found
- [list any issues discovered during verification]
Pitfalls Collection
After verification, review the entire feature development for lessons learned:
- Read
.harness/pitfalls.md (if exists)
- Review all issues found during V1/V2/V3 — any surprising failures or non-obvious fixes should become pitfalls
- Review
.harness/evidence/$ARGUMENTS/verdict.md — any AC that required multiple attempts
- Append new pitfalls to
.harness/pitfalls.md:
- Format:
- [module/area]: concise pitfall description
- One fact per line, no fluff
- Do NOT duplicate existing entries
- Only record non-obvious pitfalls (things you can't deduce from reading the code)
Completion
- Update
.harness/tasks.md: set feature status to verified
- Update
.harness/progress.md with verification results
- Notify user for final acceptance