Skip to main content

Ticket System

The ticket system tracks work across Jetta infrastructure. It supports hierarchical work breakdown with epics containing issues, and links work to services for unified tracking.

Ticket Types

TypePurposeExample
epicLarge initiative with multiple issues"User Authentication System"
issueDiscrete deliverable under an epic"Implement login endpoint"
bugDefect requiring fix"Login fails on mobile browsers"
spikeResearch/investigation task"Evaluate OAuth providers"
taskSmall standalone work item"Update README"

Hierarchy

Epic (optional)
├── Issue
├── Issue
├── Bug
└── Spike

Epics are optional. Issues can exist standalone, but linking to an epic provides better organization for larger efforts.

Ticket Status

Tickets progress through these statuses:

backlog → ready → in_progress → review → done
↘ cancelled
StatusMeaning
backlogCaptured but not prioritized
readyPrioritized and ready to start
in_progressActively being worked on
reviewWork complete, needs verification
doneCompleted
cancelledWon't be done

Priority Levels

PriorityWhen to Use
lowNice to have, no urgency
normalStandard work (default)
highImportant, should be done soon
criticalUrgent, blocking other work

Creating Tickets

{
"ticket_type": "epic",
"title": "User Authentication System",
"description": "Implement full auth flow including login, logout, and session management",
"priority": "high",
"service_id": "jetta-sso",
"tags": ["authentication", "security"]
}

Create an issue under an epic:

{
"ticket_type": "issue",
"title": "Implement login endpoint",
"description": "POST /api/auth/login accepting email/password",
"parent_id": "486d1c2f-3400-4821-a4c4-85dd795d1106",
"priority": "high"
}

Common Workflows

Starting Work on a Feature

  1. Check for existing epic or create one
  2. Break down into issues with parent_id
  3. Claim an issue with ticket_claim
  4. Document progress with devlogs as you work
  5. Complete when done with ticket_complete

Bug Triage

  1. Create bug ticket with steps to reproduce
  2. Investigate and update with findings
  3. Claim, fix, complete

Research Spike

  1. Create spike with question and success criteria
  2. Document findings in description or linked devlog
  3. Complete with conclusions

Best Practices

Good Titles

  • "Implement OAuth2 login flow"
  • "Fix memory leak in connection pool"

Effective Descriptions

Include:

  • Context: Why this work matters
  • Scope: What's included and excluded
  • Acceptance criteria: How to know it's done
  • Technical notes: Implementation hints

Linking to Services

Always set service_id when the work relates to a specific service. This enables filtering and service-centric views of all work.