Jira Workflow
Best practices for AI agents to create and manage Jira tickets when performing automated work like fixing vulnerabilities, resolving SonarQube issues, or improving test coverage.
Core Principles
-
Create Ticket Before Work - Always create/find a Jira ticket before starting
-
Discover Project Key - Never hardcode project keys
-
Search Before Creating - Check for existing tickets first
-
Severity-Based Processing - Process issues one severity level at a time
-
Link Everything - Connect Jira → Branch → Commits → PR
Skill Contents
Sections
-
Core Principles (L24-L31)
-
Workflow Overview (L56-L65)
-
Quick Reference (L66-L100)
-
References (L101-L110)
-
Severity-Based Processing (L111-L127)
-
Best Practices (L128-L135)
-
Skill Dependencies (L136-L141)
-
Related (L142-L145)
Available Resources
📚 references/ - Detailed documentation
-
branch naming
-
project discovery
-
severity processing
-
ticket creation
-
ticket search
Workflow Overview
Step Description Reference
-
Discover Find user's Jira project key references/project-discovery.md
-
Search Check for existing open tickets references/ticket-search.md
-
Create Create ticket if none exists references/ticket-creation.md
-
Branch Create branch with Jira key references/branch-naming.md
-
Process Fix by severity level references/severity-processing.md
Quick Reference
Emoji Conventions
Work Type Emoji Example
AI-assisted (all) 🤖 Required in ALL AI commits/PRs
Security/Vulnerability 🛡️ 🤖 🛡️ fix(security): resolve critical CVE
Code Quality/SonarQube ✅ 🤖 ✅ fix(quality): resolve BLOCKER issues
Test Coverage 🧪 🤖 🧪 test: improve coverage
Dependency Updates 📦 🤖 📦 chore(deps): update Spring Boot
Documentation 📝 🤖 📝 docs: update API documentation
Performance ⚡ 🤖 ⚡ perf: optimize queries
Refactoring ♻️ 🤖 ♻️ refactor: simplify error handling
Ticket Summary Format
🤖🛡️ Fix [SEVERITY] Dependabot vulnerabilities in [repo-name] 🤖✅ Resolve [SEVERITY] SonarQube issues in [repo-name] 🤖🧪 Improve test coverage for [module/class] 🤖📦 Update [dependency] to [version]
Branch Naming
{type}/{JIRA-KEY}-{short-description}
Examples:
-
fix/PROJ-123-critical-vulnerabilities
-
fix/PROJ-456-blocker-sonar-issues
-
test/PROJ-789-coverage-payment-service
References
Reference Content
references/project-discovery.md
How to discover user's Jira project key
references/ticket-search.md
JQL queries to find existing tickets
references/ticket-creation.md
Create tickets with proper format
references/branch-naming.md
Branch naming with Jira keys
references/severity-processing.md
Process by severity level
Severity-Based Processing
Vulnerability Severity Order
-
CRITICAL - Fix first
-
HIGH - Only after no CRITICAL remain
-
MEDIUM/MODERATE - Only after no HIGH remain
-
LOW - Only after no MEDIUM remain
SonarQube Severity Order
-
BLOCKER - Fix first
-
CRITICAL - Only after no BLOCKER remain
-
MAJOR - Only after no CRITICAL remain
-
MINOR - Only after no MAJOR remain
-
INFO - Only after no MINOR remain
Best Practices
-
One severity per PR - Keep PRs focused and reviewable
-
Batch related fixes - Group similar issues in one commit
-
Clear descriptions - Document what was fixed and why
-
Link everything - Jira ticket ↔ Branch ↔ Commits ↔ PR
-
Update ticket status - Move ticket through workflow as work progresses
Skill Dependencies
Skill Purpose
pr-lifecycle
PR creation, commit formats, GitHub CLI
Related
-
.claude/skills/pr-lifecycle
-
PR creation and management
-
.claude/skills/stacked-prs
-
Stacked PR workflows