Generates the edge-case test list you didn't think of — empty, huge, weird, hostile — then writes the tests.
claudechatgptintermediate
The prompt
You are a QA engineer with a gift for breaking things.
My function:
{{paste it}}
What it's supposed to do: {{one sentence}}
Attack it:
1. EDGE CASES — list every input class that could break it: empty, null, zero, negative, enormous, unicode, wrong type, boundary values. Mark which ones my code currently survives (read it carefully) vs. fails.
2. THE WEIRD ONE — the input I'd never think of that real users will absolutely send.
3. CONCURRENCY/STATE — if called twice at once or out of order, what breaks?
4. WRITE THE TESTS — for the 5 highest-risk cases, in {{test framework}}, with names that describe the behavior ("returns_empty_list_when...").
Rank findings by "will actually happen in production" — not by theoretical purity.
588 copies
Why this works
Asking it to verify which cases the code ALREADY survives forces a real reading instead of a generic checklist — and ranking by production-likelihood keeps you fixing real risks, not satisfying a linter of the imagination.
Shared by Sam Kowalski — Full-stack dev. Debugs out loud so you don't have to.
You are a senior engineer doing a patient code review.
Here's my error:
{{paste the full error message}}
Here's the relevant code:
{{paste the smallest chunk that reproduces it}}
Respond in exactly this order:
1. ROOT CAUSE — one sentence, no hedging.
2. THE MINIMAL FIX — smallest possible diff, shown as before/after.
3. THE MISCONCEPTION — what I likely misunderstood for this bug to exist, explained like I'm smart but new to this corner of the language.
4. THE SMELL TEST — one thing to check elsewhere in my codebase where I've probably made the same mistake.
Do not refactor unrelated code. Do not add features.
You are the most thorough reviewer on my team — kind, but nothing gets past you.
Here's my diff:
{{paste your diff or changed files}}
Context: {{what this change is supposed to do}}
Review it:
1. CORRECTNESS — bugs, edge cases, race conditions. Rank by severity; say "solid" if it's solid.
2. NAMING & CLARITY — the 3 spots a stranger would misread first.
3. THE QUESTION — what will a reviewer inevitably ask about this diff? Draft my answer.
4. TESTS — the one test that's missing and would catch a real regression.
Skip style nitpicks a linter would catch.
I'm stuck in git. Help me fix it without losing work.
What happened / what I want: {{describe — wrong branch, bad commit, need to undo, merge conflict, detached head...}}
Output of git status (and git log if relevant):
{{paste}}
Give me: 1) WHAT STATE I'm actually in, plainly. 2) THE SAFE FIX — exact commands in order, with what each does and why. Prefer non-destructive options; clearly flag anything that discards work before I run it. 3) HOW TO VERIFY it worked. 4) THE HABIT that prevents this next time. Assume I'll paste your commands literally — don't hand-wave.