Bug reproduction template
Turn a vague bug report into minimal reproduction steps, ranked hypotheses and a failing test you can hand to a developer or coding agent.
Fill in your details
Values are inserted into every prompt below. Nothing you type leaves your browser.
4 field(s) left — unfilled variables stay as {{placeholders}}.
1Structure the report
Use this prompt in a chat model, or in a coding agent that can read the repository (much better hypotheses).
Help me turn this bug report into a reproducible case. Report: {{bug_report}} Environment (version, OS/browser, configuration, data): {{environment}} Expected behaviour: {{expected}} Actual behaviour (including error messages and logs): {{actual}} Output: 1. Bug summary in one line: "[Component] [does X] when [condition], expected [Y]." 2. Minimal reproduction steps: numbered, starting from a clean state, with exact inputs. Mark any step that's a guess with (?). 3. Information missing from the report, as questions for the reporter. 4. Hypotheses: 3-5 likely causes, ranked, each with the evidence for it and the quickest check to confirm or rule it out. 5. A failing automated test that reproduces the bug (in the project's test framework if you can see it), written so it passes once the bug is fixed. 6. Severity suggestion (impact x frequency) with one-line justification.2Confirm before fixing
Run the reproduction yourself. Commit the failing test first, then fix, so the test proves the fix. If you can't reproduce it, send the missing-information questions back to the reporter rather than guessing.
Example input
Empty CSV exports for some customers; server log: 'stream closed before end'.
Example output
1. Summary: CSV export returns a 0-byte file when the account has more than ~10k rows, expected a full export. 2. Reproduction 1. Seed an account with 12,000 orders. 2. Go to Orders > Export > CSV. 3. Observe a 0-byte download (?) within about 30s. 4. Hypotheses H1 (most likely): request timeout at the proxy closes the stream before generation finishes. Check: compare time-to-failure with the proxy timeout setting. H2: an unhandled error mid-stream on a row with unexpected characters. Check: export rows 9,000-12,000 only.
Troubleshooting
- Hypotheses are generic: give the agent access to the code or paste the relevant handler.
Known limitations
- Without code access, hypotheses are educated guesses; confirm each one.