humansys/raise/rai-bug-file
Claude Code and agent skill by humansys/raise
- community
Checking that the SKILL.md file is still in the repository.
File a bug with diagnostic precision — repro, classification, root cause hypothesis, and Jira issue creation. Intake quality gate for the bugfix pipeline.
Install
npx vskill@latest install humansys/raise/rai-bug-fileSKILL.md
Bug File
Purpose
Capture a bug with diagnostic precision and create a well-structured Jira issue so the bugfix pipeline starts with high-quality information. This is the intake quality gate: the difference between a vague "X is broken" and an actionable report with repro, classification, root cause hypothesis, and affected component.
Mastery Levels (ShuHaRi)
- Shu: Follow all steps; ask for clarification on each dimension
- Ha: Infer classification from observation; confirm before filing
- Ri: File from observation in a single pass; classify and create atomically
Context
When to use: A bug is detected (dogfooding, code review, production, spike, testing) and needs to be captured as a Jira issue before starting the bugfix pipeline.
When to skip: Bug already exists in Jira with sufficient detail. Trivial typo fix that needs no tracking.
Inputs: The observation (what went wrong), optionally a related epic key (ADR-150).
Steps
Step 1: Investigate and Reproduce
From the observation, locate the defect in the codebase:
- Find the code — grep/read the relevant files to confirm the defect exists.
- Reproduce or confirm — if the bug is behavioral, reproduce it. If it is structural (wrong code path, missing guard, wrong contract), confirm by reading the code and tracing the failure path.
- Identify the component — which package/module/file is affected.
<verification> Defect confirmed in code. Component identified. Reproduction path documented (or structural confirmation with file:line references). </verification>
Step 2: Classify (4 Dimensions)
Classify the bug using the ODC-inspired taxonomy (same as rai-bugfix-triage):
| Dimension | Values | |
|---|---|---|
| Bug Type | Functional, Interface, Data, Logic, Configuration, Regression | |
| Severity | S0-Critical, S1-High, S2-Medium, S3-Low | |
| Origin | Requirements, Design, Code, Integration, Environment | |
| Qualifier | Missing, Incorrect, Extraneous |
Step 3: Formulate Root Cause Hypothesis
Write a 2-3 sentence hypothesis of WHY the bug exists. This is not the full root cause analysis (that is rai-bugfix-analyse), but a directional hypothesis to guide the fixer:
- What mechanism failed or is missing?
- Why did the current code not prevent this?
- What is the likely fix direction?
Step 4: Compose Description
Build the Jira issue description with this structure:
Step 4.5: Choose the Parent Epic
Every bug has an epic parent: the integration epic whose branch will absorb the fix (D-45, ADR-150 amendment). Walk this tree in order; the first match wins:
- Security → lane 3 (hotfix express). Requires the project owner's approval (deputy: owner of the affected release line, per ADR-127 amendment). Parent = today's daily-build epic of that line.
- Regression from an in-progress epic → that epic (lane 1).
- Component with an open thematic epic → that epic (lane 1).
- Otherwise → today's daily-build epic of the release line (lane 2; one epic per day per line), found live with
rai backlog search "daily build {release} {YYYY-MM-DD}". More than one match → STOP (ambiguous daily build; ask).
If no candidate exists, STOP and ask for the parent — never create a bug without a parent. Record Carril: 1|2|3 in the description.
Step 5: Create Jira Issue
If a discovery epic differs from the parent (ADR-150 — the discovery epic stays a relates link):
Set custom fields if configured (same mapping as rai-bugfix-triage):
<verification> Issue created in Jira with all fields populated. rai backlog get {new_key} confirms. </verification>
<if-blocked> Custom field update fails → log warning and continue. The issue exists; fields can be set later by rai-bugfix-triage. </if-blocked>
Output
| Item | Destination | |
|---|---|---|
| Jira issue | RAISE project, type Bug | |
| Classification | Jira custom fields (best-effort) | |
| Report | Returned to caller: key, summary, severity, component |
STOP HERE. Return the created issue key, summary, severity, and component. Do NOT start the bugfix pipeline — that is a separate decision.
Quality Checklist
- [ ] Defect confirmed in code (not just reported — verified)
- [ ] All 4 classification dimensions assigned
- [ ] Root cause hypothesis present (not "unknown")
- [ ] Done-when criterion is specific and observable
- [ ] Jira issue created with description following the template
- [ ] Parent = integration epic (Step 4.5); discovery epic, if different, linked via
relates(ADR-150 amendment, D-45) - [ ] No pipeline started — filing only
References
- Downstream:
/rai-bugfix-start(consumes the filed issue) - Classification model:
/rai-bugfix-triage(same 4 dimensions) - Backlog CLI:
rai backlog create --help
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingpackages/raise-cli/src/raise_cli/skills_base/rai-bug-file/SKILL.md
Popularity
- Repository stars
- 72
- Repository forks
- 10
- 7-day trend score
- 21
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/humansys/raise/rai-bug-file)