A step-by-step way to work
Give it the story and context
Provide the user story plus any rules, states, or constraints AI couldn't know from the story alone.
Ask for the happy path first
Get Given/When/Then criteria for the main success scenario, then expand outward.
Then ask for edge cases explicitly
'What edge cases, error states, and boundaries am I missing?' — this is where AI shines, surfacing the conditions humans skip.
Demand testability
Have it flag any criterion that isn't objectively verifiable ('works well', 'is fast') and rewrite it as something measurable.
Verify against reality
Check each criterion against how your system actually behaves — AI invents plausible behaviour it can't confirm.
Real prompts, and what good output looks like
Story: As a user, I want to reset my password by email, so I can regain access. Write Given/When/Then acceptance criteria, then list edge cases I might miss.
Happy path — Given a registered email, When I request a reset and click the emailed link, Then I can set a new password and log in.
Edge cases to consider: unregistered email (don't reveal whether it exists); expired link; reused/old link; link clicked twice; password fails complexity rules; user requests multiple resets in a row (rate-limit?); link valid but account since disabled.
Several of these are security-sensitive — confirm the intended behaviour with engineering.
A prompt you can reuse
Fill in the highlighted parts and paste it into your AI tool of choice. Edit the output — it's a starting point, not a finished answer.
Help me write thorough acceptance criteria for a user story. Use Given/When/Then. Story: [paste the user story] What you should know about my system: [any rules, states, constraints, or behaviours specific to the product] Please: 1. Write criteria for the main happy path. 2. Then list edge cases, error states, and boundary conditions I'm likely missing. 3. Flag any criterion that isn't objectively testable and rewrite it to be measurable. 4. Mark anything where the correct behaviour is a product/security decision I need to confirm.
What AI gets wrong here
Confidently wrong criteria
AI invents behaviour your system may not have, written as if it's fact.
Untestable language
Criteria like 'the page loads quickly' can't be checked.
Missing the policy calls
AI guesses at security/policy behaviour (like whether to reveal an email exists) instead of flagging it.
AI drafts criteria and — genuinely usefully — surfaces edge cases you'd have missed, but it cannot know how your system truly behaves or what your product and security policies should be. It enumerates; you verify and decide. A list of fluent criteria that don't match reality is worse than a short list that does.