test-gap-finder
Installation
SKILL.md
Test gap finder
Line coverage shows which lines ran. It can't show whether any test checked the result. This skill asks, for each behaviour this branch adds or changes, is there a test that would fail if it broke?
Step 1: list the changed behaviour
BASE=$(git merge-base HEAD origin/main) # or the target branch
git diff --name-only "$BASE"...HEAD # changed files
git diff -U0 "$BASE"...HEAD -- . ':!*test*' ':!*spec*' # source hunks only
Adjust the exclude patterns to the project's test layout (__tests__/, tests/, spec/, *_test.go).
For each source hunk, write down:
- the function or method it sits in, with file:line
- each new or changed branch (
if,switchcase, early return,catch, guard clause) - each new input it accepts, and each new error it can raise or return
- each side effect (write, network call, event, job)