| name | verify |
| description | Full pre-PR verification pipeline — build, typecheck, lint, test, secrets, git status |
| layer | utility |
| category | quality |
| triggers | ["verify","verification","ready for pr","pre-pr check","is it ready","check everything","run all checks"] |
| inputs | [{"mode":"quick | full (default) | pre-commit | pre-pr"},{"path":"Project root or specific directory"}] |
| outputs | [{"report":"Structured pass/fail per check"},{"verdict":"Ready for PR: YES | NO"}] |
| linksTo | ["quality-gate","test","code-review","security-scanner","build-resolver"] |
| linkedFrom | ["cook","ship","plan-validate"] |
| preferredNextSkills | ["pr-writer","code-review"] |
| fallbackSkills | ["quality-gate","fix"] |
| riskLevel | low |
| memoryReadPolicy | none |
| memoryWritePolicy | selective |
| sideEffects | ["Runs test suite (may create test artifacts)"] |
Verify
Purpose
Run a comprehensive verification pipeline to determine if code is ready for PR or
deployment. Unlike quality-gate (which checks changed files), verify checks the
entire project state.
Use this when:
- About to open a PR
- Before merging to main
- After a large refactor
- CI is too slow and you want local verification first
Key Concepts
Verification Pipeline
Checks run in order. Each produces a PASS/FAIL/SKIP status:
| # | Check | Command | Blocks PR |
|---|
| 1 | Build | npm run build / next build | YES |
| 2 | Typecheck | tsc --noEmit | YES |
| 3 | Lint | biome lint / eslint . | On errors |
| 4 | Tests | vitest run / jest / pytest | YES |
| 5 | Console.log | grep -rn in src/ | WARNING |
| 6 | Secrets | Pattern grep | YES |
| 7 | Git Status | git status / git diff --stat | INFO |
Modes
| Mode | Checks | Use When |
|---|
| quick | Typecheck + Lint | Mid-development sanity check |
| full | All 7 checks | Default, before PR |
| pre-commit | Format + Type + Lint + Secrets | Git pre-commit hook |
| pre-pr | All 7 + coverage threshold + branch check | Final PR readiness |
Pre-PR Additional Checks
In pre-pr mode, also verify:
- Test coverage meets threshold (configurable, default 80%)