Review whole-repo test quality, rerun coverage, score remaining worth-testing files, inspect slow-drift and stale test debt, and publish the next testing batch. Use every few weeks or before large breaking changes and rearchitecture.
Review the repo test suite from current reality, not stale vibes.
Use this when you want a periodic testing audit, a fresh coverage map, or a new next-batch recommendation before a breaking-change wave.
This workflow is audit-first. Do not implement the recommended tests unless the user explicitly asks for execution.
@.agents/rules/task.mdc@.agents/rules/testing.mdclcov as source of truth./react. Only exclude it when the current review explicitly says so.Run fresh repo coverage with a date-stamped output directory:
bun test --coverage --coverage-reporter=lcov --coverage-dir=/Users/zbeyens/git/plate/.coverage-repo-YYYY-MM-DDx --reporter=dots
Capture:
lcov.info pathRun the fast-lane timing checks:
pnpm test:profile -- --top 25
pnpm test:slowest -- --top 25
Then scan for stale suite debt:
rg -n "describe\\.skip|it\\.skip|test\\.skip|xit\\(|xdescribe\\(" packages apps
rg -n "^\\s*//\\s*(describe|it|test)\\(" packages apps -g "*.spec.ts" -g "*.spec.tsx"
rg -n "from '.*\\.spec'" packages apps -g "*.spec.ts" -g "*.spec.tsx"
Only report debt that is actually worth fixing.
Score every remaining packages/**/src/** file for worth-testing value.
Exclude by default:
Scoring should reflect:
When recommending the next batch:
Write:
docs/plans/The markdown map should include:
The roadmap should include:
Answer with:
Use blunt rankings, not mush.
Say things like:
core first, then markdown, then diffdo not do another package sweepthe best next files are split across packages, so do not sweep package Xthis roadmap is locked for the current phase; future passes update status, not the whole rankingthis file is uncovered but not worth touchingstop after the >= 5 batchRecommend stopping when the remaining misses are mostly:
At that point, tell the user to switch from coverage work to architecture-safety work.