Review a code change for untested branches and error paths, tests that do not assert behavior, mirror tests that miss the source of truth, test-only production seams, duplicate coverage, brittle or nondeterministic tests, and behavior changes with no test changes. Use when reviewing tests, test coverage, test quality, or whether the tests prove the code works.
74
93%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
Review whether the tests in a change prove the code works, separating tests that catch real regressions from tests that give false confidence.
if/else, switch, try/catch, or conditional logic that changes behavior with no test exercising it.null, undefined, empty array or object, fallback enum) reused for a new meaning, without tests that consumers render, log, measure, or act on it truthfully rather than merely not crashing.Date.now without a fake clock, real network, shared mutable fixtures or module state, or reliance on test run order.Trace each new branch and error path in the change to at least one test that exercises it. For each test, ask whether it would fail if the code under test were broken; where Kent Beck's test desiderata fit, name the one violated (behavior-sensitive, structure-insensitive, deterministic, isolated).
If you mutate production code to check whether tests catch it, do so only in an isolated worktree or scratch copy whose HEAD equals the reviewed commit and that includes any staged or unstaged changes under review. Never mutate a shared checkout.
Required coverage and test conventions are often written project rules. Read the AGENTS.md or CLAUDE.md chain governing the changed files, from the repository root down.
Report gaps a normal future code path will hit. When you infer a gap from file structure or naming alone, such as a new module with no matching test file, say that coverage may exist elsewhere, for example in an integration test.
Do not report missing tests for trivial getters and setters, test style preferences (describe/it vs test(), AAA, co-location), coverage percentage targets, missing tests for code the change did not touch unless the change makes it riskier, or gaps that depend on test infrastructure you cannot see.
caafac3
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.