verify-after-each-step
Per-file verification checklist — lint-staged and package.json scripts after each milestone.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Per-file verification checklist — lint-staged and package.json scripts after each milestone.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Voice, tone, and format for the public Codemap docs (`apps/docs`, built with Blume). Use when authoring or editing apps/docs prose — landing, guides, concepts, recipes, reference, generated API — or deciding headline grammar, benefit framing, peer framing, or anti-pitch wording.
Repo-wide docs framework — what `docs/`, `docs/plans/`, `docs/research/`, `.agents/`, or any other doc-bearing surface in this repo looks like, what lifecycle each doc follows, and how to keep cross-references intact when slimming or moving content. Use when authoring or editing any `docs/**`, `docs/plans/**`, `docs/research/**`, `.agents/rules/**`, `.agents/skills/**`, or any new doc-bearing folder. Defines the lifecycle types (Reference / Roadmap / Plan / Audit / Research), the existence test every doc must pass, the closing-state lifecycles (delete + lift; never "Slim & keep in plans/"), the substrate variants (single `audit.md` vs `audits/<topic>.md`; conditional `glossary.md`), the surface tiers (repo-wide / per-tooling-area), and the cross-reference preservation discipline (grep before slim; preserve rule numbers cited from source). The Tier-2 priming layer at `.agents/rules/docs-governance.md` cites this skill and extends with codemap-specific bits only.
Bring a branch to pristine, maximum production readiness without changing PR intent — spawn parallel Task subagents (never inline review), fix in-bounds findings, loop autonomously until clean or pass cap, then report once. Use after a tracer-bullet commit (lite), before PR is done (full), on "harden", "harden-pr", "pristine", "review until clean", "production-ready pass", or "harden-pr reconcile". Invoking this skill authorizes one harden commit at cycle end. NEVER stop mid-loop to ask about commits, babysit, or the next pass. NEVER redesign the feature or change observable runtime behavior.
The product north-star — four Codemap tenets (structural over semantic, predicate-as-API, local-first / agent-native surfaces, honest scope). Use when making a design, API, or architecture decision, evaluating a trade-off, justifying a feature, or writing/reviewing a docs/plans entry.
Keep apps/docs in sync with merged product changes. On each run, audit recently merged PRs against docs content, update only drifted pages, regenerate API MDX when public exports/JSDoc drifted, verify with blume validate/check/build/audit, and open or update a docs/* PR — or report a clean no-op.
Delta-driven dependency upgrades — a script gathers the evidence, you read the artifact and judge. Use when the user asks to upgrade, bump, or CVE-audit dependencies.
| name | verify-after-each-step |
| description | Per-file verification checklist — lint-staged and package.json scripts after each milestone. |
| disable-model-invocation | true |
Always-on priming: .agents/rules/verify-after-each-step.md.
Run matching checks on every file touched before moving to the next milestone. Pre-commit is the safety net, not the first line of defense.
package.json scripts at the start of a task.lint-staged.config.js — which checks apply to which patterns (staged-only tsgo, paired co-located tests).package.json before running.From lint-staged.config.js — mirror these between milestones, not only at commit:
| File pattern | Checks |
|---|---|
*.{js,jsx,ts,tsx,mjs,mts,cjs,cts} | bun run format:check, bun run lint |
*.{css,json,md,mdc,html,yaml,yml} | bun run format:check |
*.{ts,tsx} | bun run typecheck with a temporary tsconfig.lint-staged.json that includes only staged files under src/ (project-wide types still interconnect — use bun run typecheck if you need full-project certainty); bun test on co-located *.test.{ts,tsx} pairs when a staged src/ source file is present but its test file is not |
*.test.ts | bun test (on changed test files) |
*.test.tsx | bun test (on changed test files) |
scripts/**/*.test.mjs | bun test (on changed test files) |
Co-located pair: foo.ts → foo.test.ts (lint-staged runs the pair when only the source is staged — mirror that here).
Build config / entry points: if tsdown.config.ts, package.json exports, or an entry module changed, add bun run build.
Golden / agent eval: if recipe SQL, schema, or golden fixtures changed, add bun run test:golden (and bun run test:agent-eval when probe scenarios depend on the index).
Full gate before commit/push: bun run check (build + format + lint:ci + test + test:scripts + typecheck + test:golden + test:agent-eval). .agents/ / docs/ / .github/ only need bun run format:check unless content affects runtime.
If you changed indexed source and plan to run SQL against the structural index next, run:
bun src/index.ts --files <paths>
Paths must be relative to the indexed project root. Set CODEMAP_TEST_BENCH / CODEMAP_ROOT or --root so that root is correct — see docs/benchmark.md § Indexing another project.
Tier-1 priming: .agents/rules/verify-after-each-step.md · tracer-bullets · no-bypass-hooks · harden-pr