Skip to content
templateintermediateFree

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.

You'll need: The bug report and any logs or screenshots

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}}.

  1. 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.
  2. 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.

More from Coding & agent skills