Overview
Issues are the core work items in Tracer. Each issue represents a trackable piece of work with structured fields, type classification, and validation rules.Issue Structure
Every issue in Tracer contains the following fields:The
assignee field is automatically set when an issue transitions to in_progress status.Required Fields
Title
The title is the only truly required field for creating an issue. It must:- Not be empty
- Be 500 characters or less
Auto-populated Fields
These fields are automatically set if not provided:status: Defaults toopenpriority: Defaults to2(medium)issue_type: Defaults totaskcreated_at: Set to current timeupdated_at: Set to current timedescription,design,acceptance_criteria,notes: Default to empty strings
Issue Types
Tracer supports five issue types, each serving a different purpose:Bug
Bug
Used for defects, errors, or unexpected behavior that needs fixing.Bugs typically have higher priority and should be fixed before new features.
Feature
Feature
New functionality or enhancements to existing features.Features represent user-facing improvements or new capabilities.
Task (default)
Task (default)
General work items that don’t fit other categories.Tasks are the default type and work for most routine work.
Epic
Epic
Large initiatives that contain multiple subtasks.Epics use
parent-child dependencies to organize related work. See Dependencies for details.Chore
Chore
Maintenance tasks, refactoring, or technical debt.Chores improve code quality without changing functionality.
Optional Fields
- Description
- Design
- Acceptance Criteria
- Notes
Detailed explanation of the issue, context, and background.Use descriptions to capture requirements and context that help others understand the work.
Time Estimation
Theestimated_minutes field helps with planning and tracking:
External References
Link issues to external systems like GitHub, JIRA, or Linear:tracer show output and help maintain traceability.
Validation Rules
All issues are validated before creation or update (seetypes.rs:37):
- Title: Required, 1-500 characters
- Priority: Must be 0-4 (see Priorities)
- Estimated Minutes: Cannot be negative if provided
Validation errors prevent invalid data from entering the database. Fix the error and try again.
Working with Issues
View Issue Details
Update Multiple Fields
Search and Filter
Best Practices
Write clear, actionable titles
Write clear, actionable titles
Titles should describe what needs to be done, not the problem.Good: “Add pagination to /users endpoint”
Bad: “Users endpoint slow”
Bad: “Users endpoint slow”
Use appropriate types
Use appropriate types
Choose the type that best matches the work:
- Fixing broken behavior →
bug - Adding new capability →
feature - Large multi-part work →
epic - Code cleanup →
chore - Everything else →
task
Set priorities wisely
Set priorities wisely
Not everything is P0. See Priorities for guidance.
Add context in description
Add context in description
Future you (or other agents) will appreciate the background information.
Use external refs for traceability
Use external refs for traceability
Link to GitHub issues, design docs, or related tickets to maintain audit trail.
Next Steps
- Learn about Status Workflow to understand issue lifecycle
- Explore Dependencies to link related issues
- Read about Priorities for effective prioritization