From tommymorgan
This skill should be used when checking plan status, running verification commands, updating task statuses, or determining what work remains. Provides the verification sweep algorithm and status update procedures.
How this skill is triggered — by the user, by Claude, or both
Slash command
/tommymorgan:verification-sweepThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Algorithm for verifying task completion by running verification commands and updating plan status.
Algorithm for verifying task completion by running verification commands and updating plan status.
Verification sweep establishes ground truth about task completion:
Perform verification sweep:
/tommymorgan:work (before doing any work)/tommymorgan:statusRead the plan file and extract all tasks:
For each line matching "### \d+\. ":
- task_number = extracted number
- task_description = text after number
- verify_command = content of next **Verify**: `...`
- current_status = value after **Status**:
For each task, execute its verification command:
<verify_command>
echo "Exit code: $?"
Capture:
Apply status transition rules:
| Current Status | Exit Code | New Status | Action |
|---|---|---|---|
| pending | 0 | complete | Update plan |
| pending | non-zero | pending | No change |
| complete | 0 | complete | No change |
| complete | non-zero | complete | Warn: regression |
| blocked | 0 | complete | Update plan, clear block |
| blocked | non-zero | blocked | No change |
Regression handling: If a previously complete task now fails, warn but do not change status:
WARNING: Regression detected in task N: <description>
Verification command failed but task marked complete.
Investigate before continuing.
For each status change, update the plan file:
Find:
**Status**: pending
Replace with:
**Status**: complete
Use precise edits - only change the status value, preserve everything else.
After verification sweep, report results:
## Verification Sweep: <plan filename>
**Run at**: <timestamp>
**Progress**: X/Y tasks complete
### Results
- Task 1: <description> - PASS (complete)
- Task 2: <description> - PASS (complete)
- Task 3: <description> - FAIL (pending)
- Task 4: <description> - SKIP (blocked)
### Summary
- Complete: X
- Pending: Y
- Blocked: Z
- Regressions: N
**Next task**: <first pending task description>
Good verification commands:
# Run specific test file
pnpm test src/models/user.test.ts
# Run test with specific pattern
pytest -k test_user_registration
# Check file exists with content
grep -q "export class User" src/models/user.ts
# Verify build succeeds
pnpm build && test -f dist/index.js
Bad verification commands:
# Too broad - might pass for wrong reasons
pnpm test
# Non-deterministic
curl http://localhost:3000/health
# Requires manual inspection
cat src/models/user.ts
If a task lacks a verification command:
ERROR: Task N has no verification command.
Cannot determine completion status.
Mark as pending and flag for human attention.
Set reasonable timeout (30 seconds default):
timeout 30 <verify_command>
If timeout:
Before running verification commands:
If environment issue detected, report clearly:
ERROR: Verification environment not ready.
Missing: <dependency>
Run: <setup command>
┌─────────────┐
┌──────────►│ pending │◄──────────┐
│ └──────┬──────┘ │
│ │ │
(verify fails) (verify passes) (unblock)
│ │ │
│ ┌──────▼──────┐ │
└───────────│ complete │───────────┘
└──────┬──────┘ │
│ │
(manual block) │
│ │
┌──────▼──────┐ │
│ blocked ├──────┘
└─────────────┘
Transitions:
pending → complete: Verification passespending → blocked: Manual intervention (with root cause)complete → blocked: Manual intervention (regression)blocked → complete: Verification passes after unblockblocked → pending: Manual unblockRuns verification sweep and reports results. Does not perform any work.
Runs verification sweep first, then works on pending tasks:
All tasks show as pending:
Complete tasks regressing:
Verification commands hang:
npx claudepluginhub tommymorgan/claude-plugins --plugin tommymorganVerifies plan completion by checking task status, running tests, measuring coverage, building, linting, and checking file sizes. Outputs a verification report.
Verifies implementation progress against a plan by checking done-when items, running tests, and identifying blockers. Shows per-phase progress with cursor at first incomplete phase.
Audits post-implementation plans against changes by parsing checkboxes for completeness and accuracy. Supports autonomy modes (Autopilot, Critical, Verbose) and file-review. Invoke via /verify-plan.