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