Skip to content
Back to skills

Bug Report

ASecurity

Classify a bug's severity × priority and format a developer-ready issue body for it (any tracker) — from a failed test (WAY 1 Phase 4, WAY 2 Phase 3) or from the WAY 3 quick-report shorthand ("report it", "log this", "raise this", "file this issue"). Replaces the former severity-classifier and bug-reporter agents.

  • 2 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 12, 2026
testinggoapidevopssecurity

Works with

  • api

Security analysis

A100/100

Scanned October 12, 2026

npx -y skills add GhassenAZZOUZ/claude-qa-agent --skill bug-report --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Bug Report?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Bug Report
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ghassenazzouz-bug-report/badge)](https://www.skillsdirectory.com/skills/ghassenazzouz-bug-report)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: bug-report
description: Classify a bug's severity × priority and format a developer-ready issue body for it (any tracker) — from a failed test (WAY 1 Phase 4, WAY 2 Phase 3) or from the WAY 3 quick-report shorthand ("report it", "log this", "raise this", "file this issue"). Replaces the former severity-classifier and bug-reporter agents.
---

# bug-report

Turns one bug into: a **Severity × Priority** pair, a **label set**, a
**title**, and an **issue body** in Markdown (the provider skill converts it where needed). Apply it in the main session, once per
bug — the failure data (or the user's shorthand) is already in context, so no
sub-agent is needed. Filing the issue afterwards follows the `tracker`
skill.

## Input

One of:
- **A failed scenario** from `test-execution-agent`'s results YAML: scenario, spec, status, error, failing step, a11y violations, artifact paths (screenshot, console/network log, `api-responses/` capture)
- **WAY 3 shorthand** from the user: `[Area], [Precondition], [Step 1 > Step 2 > Observe: what you saw]`

### Parsing the WAY 3 shorthand

Split on the first two commas:
- `Area` → title prefix `[Area]`
- `Precondition` → step 1 of Steps to Reproduce (e.g. "Log in as a standard user")
- The rest, split on `>` → numbered steps; the segment starting with `Observe:` becomes **Actual Result** and the last numbered step ("Observe: …")

Derive **Expected Result** from the area and steps (what a correct app does). If it can't be derived with confidence, ask the user one question rather than inventing it. If the shorthand is missing the Observe part, ask for it — a bug without an observed result can't be filed.

## Step 1 — Classify

### Severity × Priority matrix

| Severity | Definition | Default Priority |
|---|---|---|
| Sev-1 (Critical) | Data loss, security breach, auth bypass, production down, payment failure | P1 — Immediate |
| Sev-2 (High) | Core feature broken for all users, major data corruption, PII exposed | P1 — Immediate |
| Sev-3 (Medium) | Feature broken for some users, incorrect data displayed, workaround exists | P2 — This sprint |
| Sev-4 (Low) | Cosmetic issue, minor UX friction, edge case rarely hit | P3 — Backlog |

### Auto-escalation (always apply, override the matrix)
- Any XSS, IDOR, auth bypass, or injection vulnerability → Sev-1
- Any PII exposed in a response or log → Sev-2 minimum
- Any data permanently deleted unexpectedly → Sev-1
- Any payment flow failure → Sev-1
- An axe violation with impact `critical` or `serious` → Sev-2

### Rules
- When in doubt between two severities, choose the higher one
- Never Sev-1 for a cosmetic issue; never Sev-4 for a security issue

### Labels
`bug`, `sev-<n>`, `p<n>`, plus the context label: `e2e` (browser), `api` (API), `accessibility` (axe violation). Use only labels from the `tracker` skill's label conventions.

Write down the classification with a one-sentence rationale. It goes in the issue body and in the session summary.

## Step 2 — Title

`[Area] Short description of the problem`, under 80 characters. It describes
the symptom, not the suspected cause.

## Step 3 — Issue body

```markdown
## Bug Report

**Summary:** [One sentence — what is wrong and where]

---

## Steps to Reproduce

1. Navigate to [URL]
2. [Action with specific UI element name — or the exact API call]
3. [Action]
4. Observe: [what you saw]

## Expected Result
[What should have happened]

## Actual Result
[What actually happened — error messages quoted verbatim]

## Environment
- URL: [tested URL]
- Browser: [Chromium / API]
- Date: [ISO timestamp]
- Test Case: [Test#<nn> — path to its .feature, or "manual report" for WAY 3]

## Artifacts
- Screenshot: [snippet returned by `file.attach`, see the `tracker` skill → Attachments] (or "No screenshot captured")
- Console log: `[key error lines]` (if available)
- Network log: `[endpoint + status]` (if available)
- API exchange: `[api-responses/… path]` (API bugs)

## Severity / Priority
Sev-[N] ([label]) / P[N] ([label]) — [one-sentence rationale]

---
🤖 _Generated by DevOps QA Agent — review before acting on this._
```

## When NOT to file

Check `test-execution-agent`'s result fields first. These are not product bugs:
- `reason: "baseline created"`: the first run of a `@visual` step
- `quarantined: true`: known flaky, tracked by `flaky-triage`
- `failure_kind: locator`: run `test-healer` first. File only if it says `not-healable: element missing` (or the user rejects the heal)
- `status: blocked` for network or setup reasons: report it in the session summary, but don't file it

## Rules
- Steps are numbered and reproducible by someone who wasn't present
- Quote error messages verbatim
- Never include real personal data — replace any with placeholders (`user@test.local`)
- The body always ends with the watermark footer (CLAUDE.md's Output Watermark) — it is part of the content passed to `create_issue`, not added afterward

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.