SkillValidated
Edge-case hunter — find the test you didn't write
A skill that inspects a change and its tests, enumerates the boundary conditions the tests do not cover — empty inputs, nulls, ordering, concurrency, unicode, limits — and drafts the two highest-value missing tests.
$cosq add edge-case-hunterFree, works signed out. No CLI? Copy the file below into your repo — same result.
Why this one
AI-assisted edits make it easy to over-trust unverified speed (METR); boundary conditions are where accepted changes actually break.
How to use it
- 1Invoke once the happy-path tests pass
- 2Add the drafted tests in the same change, not later
What gets installed
Pick your tool to preview the exact file cosq add writes — byte-for-byte. Prefer copy-paste? Use the copy button on the file.
.claude/skills/edge-case-hunter/SKILL.md(created)--- name: edge-case-hunter description: Use after writing code and its tests: enumerate uncovered boundary conditions and draft the highest-value missing tests. --- Given a change and its tests, hunt what the tests miss: 1. List the inputs and states the change handles, then the boundaries of each: empty, null/undefined, zero, negative, maximum, duplicate, unsorted, concurrent, unicode, and permission-denied cases as applicable. 2. Cross out the ones an existing test already covers — cite the test. 3. Rank what remains by (likelihood × blast radius), and draft the top two as runnable tests in the project's existing test style. 4. Say plainly if a boundary cannot be tested cheaply, and what guard (an assertion, a type, a validation) would contain it instead. The deliverable is the two drafted tests — not a lecture on testing.