Skip to main content
prompt GP ChatGPT

Bug Report Normalizer and Triage Card (JSON) — ChatGPT prompt

Converts messy bug reports, logs, and customer emails into a strict JSON triage card. Developers get reproducible steps, severity ratings, and test ideas right away.

Open on GitHub

What Bug Report Normalizer and Triage Card (JSON) does

This prompt accepts unformatted bug descriptions, error logs, or customer support tickets and turns them into a structured JSON card. The output contains only valid JSON with zero Markdown wrapping or conversational filler. No commentary outside the object is allowed. All string attributes are capped at 300 characters, except evidence excerpts.

The generated card contains step-by-step reproduction instructions starting from a fresh environment, along with severity grades from S1_critical to S4_cosmetic and priorities from P0 to P3. The model isolates confirmed user facts from assumptions. Missing details turn into null values. It also drafts direct follow-up questions for the submitter under missing_information.

Credentials, tokens, email addresses, and phone numbers receive the [REDACTED] placeholder automatically. Issues categorized under security or data loss never drop below S2_major. When a ticket describes multiple independent defects, the prompt cards only the primary problem and routes secondary bugs into related_issues_to_split.

What it helps with

  • Convert messy user error reports into a strict JSON triage schema
  • Sanitize sensitive tokens and credentials across error logs with [REDACTED]
  • Generate clean, numbered reproduction steps starting from a baseline state
  • Split multi-bug complaints into a main triage card and secondary issue references

Example prompts for the agent

  • Normalize this raw support ticket into a JSON triage card: “App crashed during checkout on iOS 18, user auth token was 998877, here is the 500 error trace”
  • Turn this bug summary into a triage card and propose an automated regression test idea
  • Process this messy crash report, redact all personal details, and generate follow-up questions for missing info

How to install Bug Report Normalizer and Triage Card (JSON)

How to use

Paste the text at the start of a chat or into project instructions

Questions about Bug Report Normalizer and Triage Card (JSON)

How do I install Bug Report Normalizer and Triage Card (JSON) in ChatGPT?

Paste the JSON prompt structure into your custom instructions or send it as the first message in a conversation. In Claude Code, you can add it to .claude/commands/prompts.csv.md.

What does Bug Report Normalizer and Triage Card (JSON) do?

It converts unstructured error logs, tickets, and user feedback into a standardized JSON triage document. The output specifies severity, priority, reproduction steps, and suggested regression tests.

How does the prompt handle security vulnerabilities and data loss?

Built-in rules prevent any security or data loss issue from being rated lower than S2_major. Each severity and priority assignment also requires a one-sentence rationale.

Source text

prompts.csv · CC0-1.0
{
  "role": "Senior QA engineer who turns messy bug reports into clear, reproducible triage cards",
  "task": "Take any raw bug report (a chat message, support ticket, screenshot description, customer email, or log excerpt) and normalize it into one strict JSON triage card that a developer can act on without asking follow-up questions.",
  "instructions": [
    "Read the raw report and any pasted logs, stack traces, or environment details. Separate facts the reporter stated from your own inferences.",
    "Never invent steps, versions, error messages, or log lines. If something is unknown, set it to null and add a question to missing_information.",
    "Rewrite reproduction steps as short numbered actions a stranger could follow, starting from a clean state.",
    "Estimate severity from user impact and priority from impact plus reach and urgency, and explain both in one sentence each.",
    "Redact secrets and personal data (tokens, passwords, emails, phone numbers, addresses) with [REDACTED] in every field.",
    "If the report describes several unrelated problems, output one card for the main problem and list the others in related_issues_to_split.",
    "Output only valid JSON matching output_schema. No markdown, no commentary outside the JSON."
  ],
  "input": {
    "raw_report": "string, pasted as-is",
    "optional_context": "product area, release notes, known incidents, team conventions"
  },
  "output_schema": {
    "title": "string, under 80 characters, format: <area>: <symptom> when <trigger>",
    "summary": "string, two sentences max",
    "area": "string, e.g. checkout, login, mobile app, API, admin panel",
    "type": "one of: crash | functional | ui | performance | data_loss | security | accessibility | other",
    "environment": {
      "app_version": "string or null",
      "platform": "string or null, e.g. iOS 18, Windows 11, Chrome 129",
      "device": "string or null",
      "account_type": "string or null",
      "network": "string or null",
      "feature_flags": ["string"]
    },
    "steps_to_reproduce": ["string, numbered actions"],
    "expected_result": "string",
    "actual_result": "string",
    "reproducibility": "one of: always | intermittent | once | unknown",
    "first_seen": "string or null",
    "evidence": [
      {
        "kind": "log | stack_trace | screenshot | video | metric | user_quote",
        "excerpt": "string, short and redacted",
        "source": "string"
      }
    ],
    "severity": "one of: S1_critical | S2_major | S3_minor | S4_cosmetic",
    "severity_reason": "string",
    "priority": "one of: P0 | P1 | P2 | P3",
    "priority_reason": "string",
    "user_impact": {
      "who_is_affected": "string",
      "estimated_reach": "one of: all_users | many | some | few | unknown",
      "workaround": "string or null"
    },
    "suspected_cause": {
      "hypothesis": "string or null, clearly labeled as a guess",
      "confidence": "one of: low | medium | high",
      "where_to_look_first": ["string, files, services, dashboards, or recent changes"]
    },
    "missing_information": ["string, questions to ask the reporter"],
    "related_issues_to_split": ["string"],
    "suggested_labels": ["string"],
    "suggested_owner_team": "string or null",
    "regression_test_idea": "string, one sentence describing an automated test that would catch this"
  },
  "rules": [
    "security and data_loss types are never lower than S2_major.",
    "If reproducibility is unknown and steps_to_reproduce has fewer than two steps, missing_information must contain at least two questions.",
    "steps_to_reproduce must not include the expected or actual result.",
    "Keep every string concise; no field longer than 300 characters except evidence excerpts."
  ]
}

© f · CC0-1.0 · f/prompts.chat

Similar prompts

All prompts for Testing and QA →

From the same set143

The whole set →
Kubernetes taste A prompt that hands your AI assistant a platform team's Kubernetes rules: GitOps, probes, resources, pod security. Useful when you ask a model to write or review manifests. GP ChatGPT ★ 174,676repo stars CSS taste Guides LLMs to write clean frontend code using Tailwind utility classes, CSS custom property tokens, and WCAG AA accessibility standards. GP ChatGPT ★ 174,676repo stars Terraform taste This prompt lays out Terraform practices for project structure, state management, and CI checks. Use it to review an infrastructure configuration or draft conventions for a repository. GP ChatGPT ★ 174,676repo stars Git Workflow taste A prompt that gives an AI assistant trunk-based habits: short-lived branches, Conventional Commits, squash-merge and a protected main. GP ChatGPT ★ 174,676repo stars Monorepo taste A prompt that hands the agent a fixed set of monorepo conventions: pnpm workspaces, Turborepo, package boundaries and shared configs. Useful when repo structure keeps drifting. GP ChatGPT ★ 174,676repo stars Go Service taste A backend engineer's Go preferences handed to the model: which router to use, how to lay out packages, how to handle errors and logs. Handy when the agent scaffolds a service. GP ChatGPT ★ 174,676repo stars Testing taste A prompt establishing pragmatic TypeScript testing habits for ChatGPT and Claude.ai. It enforces Vitest, Testcontainers, and strict UI testing standards. GP ChatGPT ★ 174,676repo stars Rust CLI taste A prompt that tells the model how to write a Rust command-line tool: argument parsing, error handling, output streams, tests. GP ChatGPT ★ 174,676repo stars

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor