Engineering Bug Report Reproduction

Reproduce Software Bugs — Bug Report to Reliable Repro

Support says it happens; nobody can make it happen. Turn a vague bug report — symptoms, environment, expected vs actual — into a reproduction strategy.

Overview

A bug you can't reproduce is a bug you can't honestly fix. This setup starts from exactly what support tickets provide — the structured bug report fields: symptoms, environment, expected behavior, actual behavior — and no reproduction steps. The contract's honesty mechanism takes over: instead of pretending a repro exists, stage three becomes INFORMATION NEEDED TO REPRODUCE, demanding the missing specifics — which users, what state, what sequence — and the investigation works the occurrence pattern until the bug can be summoned on demand. Only then does diagnosis begin.

How to use this resource

  1. Feed the report as-is

    Symptoms, environment, expected vs actual — the bug report structure IS the investigation input.

  2. Let the contract demand specifics

    INFORMATION NEEDED TO REPRODUCE lists the questions for support: which users, what state, what sequence.

  3. Reduce before diagnosing

    Once it reproduces, shrink to the minimal failing case — diagnosis on a minimal repro is half done.

Why This Works

  • The no-fabrication rule stops the model from inventing steps that mislead the whole investigation
  • Bug-report fields map one-to-one onto investigation inputs — nothing support knows gets lost
  • Pattern-first reproduction works even when steps are unknowable from the report

Best for

  • Bugs reported by users that no developer has seen
  • Support-to-engineering handoffs that lose detail
  • Teams whose bug reports say "sometimes it breaks"

Not for

  • Bugs that already reproduce — load the standard debugging setup and diagnose
  • Writing the regression test after reproduction — that's the Test Case Prompt Generator

Use cases

  • Converting support tickets into reproducible bugs
  • Listing exactly what is needed before diagnosis can start
  • Reducing a flaky repro to its minimal failing case

FAQ

How do I build a repro when the bug report has no reproduction steps

Stage 3, INFORMATION NEEDED TO REPRODUCE, exists for exactly that: with no steps provided it lists what is needed to reproduce before diagnosing, and the contract says do not pretend a reproduction exists. Debugging Prompt Generator produces this prompt; you run it in your own assistant, which asks for the missing specifics instead of inventing them.

How does this prompt stop the AI from guessing the cause

The EVIDENCE RULES force every statement to be labeled FACT, ASSUMPTION, or HYPOTHESIS, with assumptions verified or discarded and every hypothesis carrying its test. It also requires carrying at least two hypotheses until evidence separates them, so the investigation across the ten stages stays grounded rather than jumping to one story.

Should I use this if the bug already reproduces reliably

Not needed. This setup is built around the missing-steps case and stage 3's demand for reproduction information; the notFor says a bug that already reproduces should load the standard debugging setup and diagnose. Here the framework works the occurrence pattern until the failure can be summoned on demand, and only then does POSSIBLE CAUSES and root-cause work begin.

More resources from Debugging Prompt Generator

Resources that pair well

Related tools

Workflows that use this resource

Guides for this resource

Tip: Save time by exploring related resources and tools that integrate with this resource.