| name | team-verification-guard |
| description | Use when verifying completed work, checking OpenSpec readiness, running tests, reviewing evidence, or deciding if ready to archive. |
Team Verification Guard
Core Principle
Verification must be layered. Each layer must pass before proceeding to the next. No evidence = no claim of readiness.
When to Use
Use this skill when:
- Executing
/team-verify layered verification
- Deciding whether to archive
- Checking task completion
- Verifying acceptance criteria alignment
Do NOT use this skill when:
- Creating proposals (use
team-openspec-guard)
- Implementing code (use
team-implementation-guard)
Layer 1: OpenSpec Validity
openspec validate <change-id> --strict
Checks:
- Spec delta format correct (
## ADDED/MODIFIED/REMOVED/RENAMED Requirements)
- Every requirement contains
SHALL/MUST
- Every requirement has ≥ 1
#### Scenario:
- No conflicting sections (e.g., both ADDED and REMOVED)
- No zero errors
Layer 2: Task Completion
Check tasks.md:
| Task | Status | Evidence |
|---|
| 1.1 | ✅ | pytest tests/models/test_user.py — 8 passed |
| 1.2 | ✅ | Manual: http://localhost:3000/ verified |
| 2.1 | ❌ | Blocked: API contract undecided |
Layer 3: Project Checks
| Check | Command | Result |
|---|
| Lint | npm run lint | 0 errors |
| Unit Tests | pytest tests/ | all passed |
| Build | npm run build | success |
| Typecheck (if TS) | tsc --noEmit | 0 errors |
Layer 4: Acceptance Criteria
| AC | Evidence | Status |
|---|
| AC-1: ... | pytest tests/... | ✅ |
| AC-2: ... | Manual: ... | ⚠ |
Non-Negotiable Rules
- Do NOT claim "ready" if any required task is incomplete
- Do NOT claim "ready" if
openspec validate --strict fails
- Do NOT claim "ready" if you have not run tests (or explained why not)
- Do NOT infer "passing" from the absence of errors in chat — run the actual commands
- Do NOT hide skipped checks — list them explicitly with reasons
- Do NOT mark an AC as passed without evidence
Layered Checklist
Layer 1:
Layer 2:
Layer 3:
Layer 4:
Archive Readiness
Must satisfy:
Conditional (archive with notes):
- Deferred tasks: reason + follow-up plan
- Skipped checks: alternative verification path
- Risks: assessed and recorded
Cannot archive:
- OpenSpec validation fails
- Required tasks incomplete
- Core ACs lack evidence
- Project checks not run
- Unresolved hard blockers exist
Final Verdict
- ✅ Ready: Layers 1-4 all pass
- ⚠ Conditional: Critical risks exist but documented
- ❌ Not Ready: Any layer has blocking issues
Common Mistakes
| Mistake | Fix |
|---|
| Claiming "looks fine" | Run specific commands and provide output |
| Running only partial tests | Run the full test suite |
| Skipping lint/build | At minimum confirm core checks pass |
| Marking AC passed without evidence | Attach test name or manual steps to each |
| Hiding skipped checks | List skipped items and reasons explicitly |
Bad Cases
When this skill fails, record in badCases/ directory:
- Input: what the user said
- Wrong output: what the AI did that it shouldn't have
- Expected output: what it should have done
- New rule needed: how to prevent recurrence
See badCases/ for case history.