Skip to content

Write a Detailed Bug Report with AI

Updated 2026-06-08·basic·Bug Triage & Reporting

Takes a free-form issue description (Slack message, email, support ticket) and returns a structured bug report following the AQA Pro Bug Report Template — clear `[Component] Verb-noun` title, environment, separate severity and priority, numbered atomic repro steps, expected vs actual, and suggested investigation areas.

When to use it

  • A customer or teammate reports an issue in conversational language and you need a triage-ready ticket.
  • You're standardizing bug reports across a team where quality varies.
  • You want to teach junior testers what a good bug report looks like.
  • You're filing your own discovery from exploratory testing and want structure imposed on the dump.

The prompt

XML-tagged — best for Claude 4.x

<role>
You are a QA engineer who has filed 10,000+ bug reports. You know the title is 80% of the value — bad title means a wasted ticket. You separate severity (impact on the system) from priority (urgency to fix) because they are not the same thing.
</role>

<context>
Reports go into Linear (or JIRA, or GitHub Issues). The triage process expects: a one-line title in `[Component] Verb-noun` format, environment block (browser/OS/build/account), severity and priority as separate fields, numbered atomic repro steps, expected vs actual, attachments placeholders for screenshots/HAR/console, and a "Suggested investigation" section that points the assignee at likely root causes.
</context>

<task>
From the issue description below, produce a bug report with:
1. Title — `[Component] Verb-noun pattern`, < 80 characters
2. Environment block (use placeholders if missing: e.g., `Browser: [TODO]`)
3. Severity (1-4 with one-line rationale)
4. Priority (1-4 with one-line rationale)
5. Repro steps — numbered, atomic, one action per step
6. Expected result
7. Actual result
8. Attachments placeholder block
9. Suggested investigation — 2-4 bullets pointing at likely areas
</task>

<input>
Issue description: {description}
Environment hints (if any): {env}
Reporter context (customer, internal, automation alert): {reporter}
</input>

<constraints>
- Title uses `[Component] Verb-noun` format. Bad: "Bug in checkout". Good: "[Checkout] Discount code rejected on totals over $1000".
- Severity is impact-on-system (Critical/Major/Minor/Trivial). Priority is urgency-to-fix (P1/P2/P3/P4). They are SEPARATE.
- Repro steps: each step is ONE atomic action ("Click X", "Enter Y", not "Click X then enter Y").
- Don't invent details not in the description; mark as `[TODO: confirm]` instead.
- "Suggested investigation" must reference likely TECHNICAL areas (event handler, validation, race condition, etc.), not generic ("look at the code").
</constraints>

<output_format>
The full bug report as a Markdown document with the 9 sections above. Followed by 1-2 sentences naming the single most important piece of missing information that would speed up triage if available.
</output_format>

Before writing, identify what's verifiable in the description vs what's inferred — be honest about gaps.

Example

Common pitfalls

  • Title comes out as 'Bug: cart issue' — vague. Force the `[Component] Verb-noun` format in constraints.
  • Severity and priority collapsed into one (Severity-Priority: High). Separate them or the triage loses meaning.
  • Repro steps glob multiple actions per line. Force atomic, one-action-per-line.
  • 'Suggested investigation' suggests generic things like 'check the code'. Re-prompt for technical specifics.

Tips

  • Feed the AI any HAR snippet or console error you have — it sharpens 'Suggested investigation' significantly.
  • Use this prompt's output as a TEMPLATE; let the human fill missing details after. AI fills the structure, human fills the truth.
  • Pair with `bug-severity-priority` for borderline cases where severity/priority choices are non-obvious.
  • Pair with `bug-repro-from-logs` when you have logs but no easy repro from the reporter.

FAQ

Severity is impact on the SYSTEM if the bug occurs (Critical = production down, Trivial = cosmetic typo). Priority is urgency to FIX (P1 = next release, P4 = whenever). A critical-severity bug in a feature nobody uses can be P3. A minor-severity bug on the homepage can be P1.

Related prompts

Use with these tools