GitHub Issues Standards
This document defines the standardized structure for GitHub Issues in the Remind Tools project, ensuring consistent project management and clear hierarchical relationships.Issue Hierarchy
Issue Types
1. PRD (Product Requirements Document)
Purpose: High-level strategic document defining product requirements and technical specifications. Title Format:PRD #X: [Product/Feature Name] - [Brief Description]
Example: PRD #1: Trips by Remind Tools - Technical Foundation & Multi-Platform Deployment Pipeline
Required Labels:
PRD
(primary identifier)trips-app
ormoney-app
(application scope)- Area labels:
foundation
,material-design-3
,ci-cd
, etc. - Priority:
high-priority
orpriority: high
- Milestone: Phase-based (e.g., “Phase 1: Foundation”, “Phase 2: Core Features”)
- Assignee: Product Owner or Tech Lead
- Body Structure:
- Executive Summary & Business Case
- Problem Statement & Technical Requirements
- Technical Solution Design
- Success Metrics & KPIs
- Implementation Strategy
- Acceptance Criteria
2. EPIC (Feature Epic)
Purpose: Groups related implementation tasks for a major feature or system component. Title Format:[EPIC] [Feature/Component Name]
Example: [EPIC] Project Foundation & Infrastructure
Required Labels:
epic
(primary identifier)- Area labels:
foundation
,material-design-3
,authentication
, etc. trips-app
ormoney-app
(application scope)- Priority:
high-priority
,medium-priority
, orpriority: high/medium
- Milestone: Same as parent PRD
- Assignee: Tech Lead or Senior Developer
- Body Structure:
- Overview & Epic Scope
- Architecture Context
- Implementation Tasks (checkbox list)
- Technical Requirements
- Acceptance Criteria
- Dependencies & Blockers
- Success Metrics
- Definition of Done
- Blocked by: Previous epics that must complete first
- Blocking: Subsequent epics that depend on this one
3. TASK (Implementation Task)
Purpose: Specific, actionable implementation work that can be completed by a developer. Title Format:[TASK] [Specific Implementation Description]
Example: [TASK] Implement ColorScheme.fromSeed() for Travel-Inspired Themes
Required Labels:
task
(primary identifier)- Technical labels:
database
,supabase
,material-design-3
,ui-ux
, etc. - Area labels matching parent Epic
- Milestone: Same as parent Epic
- Assignee: Specific developer responsible for implementation
- Body Structure:
- Task Description
- Parent Epic reference: “Issue #X - [Epic Name]”
- Technical Requirements (with code examples)
- Implementation Steps
- Acceptance Criteria
- Dependencies
- Story Points (1, 2, 3, 5, 8, 13)
- Labels list
- Blocked by: Parent Epic and any prerequisite tasks
- Blocking: Tasks that depend on this implementation
Labeling System
Primary Type Labels (Required)
PRD
- Product Requirements Documentepic
- Feature Epictask
- Implementation Task
Area/Domain Labels
foundation
- Project foundation and infrastructurematerial-design-3
- Material Design 3 implementationauthentication
- User authentication and authorizationci-cd
- Continuous integration and deploymentdatabase
- Database related worksupabase
- Supabase backend integrationui-ux
- User interface and experiencetesting
- Testing and quality assurance
Application Scope Labels
trips-app
- Trips by Remind Tools applicationmoney-app
- Money by Remind Tools application
Priority Labels
priority: critical
- Critical priority, immediate response neededpriority: high
- High priority, needs immediate responsepriority: medium
- Medium prioritypriority: low
- Low priorityhigh-priority
- Alternative high priority label
Status Labels (Optional)
status: blocked
- Cannot proceed due to dependenciesstatus: in progress
- Currently being developedstatus: review needed
- Ready for code reviewstatus: completed
- Implementation finished
Technical Labels
supabase
- Supabase related workdatabase
- Database implementationcross-platform
- Multi-platform considerationsperformance
- Performance optimizationaccessibility
- Accessibility compliancesecurity
- Security implementation
Milestone System
Phase-based Milestones
- Phase 1: Foundation - Project setup, architecture, core infrastructure
- Due: 2025-10-15
- Focus: Technical foundation, Material Design 3, Authentication basics
- Phase 2: Core Features - Authentication, trip management, core functionality
- Due: 2025-12-15
- Focus: User features, trip planning, core business logic
Milestone Assignment Rules
- PRD: Assigned to the phase it primarily targets
- EPIC: Same milestone as parent PRD
- TASK: Same milestone as parent Epic
Dependency Management
GitHub Dependencies Usage
Use GitHub’s built-in dependency tracking:-
Epic → Epic Dependencies:
- Epic A “blocks” Epic B if Epic B depends on Epic A
- Epic B is “blocked by” Epic A
-
Epic → Task Dependencies:
- Epic “blocks” all its child tasks
- Tasks are “blocked by” their parent Epic
-
Task → Task Dependencies:
- Task A “blocks” Task B if Task B needs Task A completed
- Task B is “blocked by” Task A
Dependency Examples
Assignment Guidelines
PRD Assignment
- Product Owner: Strategic PRDs, business requirements
- Tech Lead: Technical architecture PRDs
Epic Assignment
- Tech Lead: Architecture epics, complex system design
- Senior Developer: Feature implementation epics
- Specialist: Domain-specific epics (CI/CD, Security, etc.)
Task Assignment
- Senior Developer: Complex implementation, architecture setup
- Developer: Standard feature implementation
- Junior Developer: Well-defined, smaller scope tasks
Body Templates
PRD Template
Epic Template
Task Template
Quality Guidelines
Title Guidelines
- Be Specific: Titles should clearly indicate the work scope
- Use Prefixes: Always include
PRD #X:
,[EPIC]
, or[TASK]
- Avoid Abbreviations: Use full words for clarity
- Action-Oriented: Tasks should start with action verbs
Body Guidelines
- Code Examples: Include relevant code samples for technical tasks
- Clear Steps: Break down complex work into clear steps
- Acceptance Criteria: Always include testable criteria
- Dependencies: Explicitly state all dependencies
Label Guidelines
- Minimum Labels: Each issue needs at least 3 labels (type, area, priority)
- Consistent Naming: Use existing labels, don’t create duplicates
- Descriptive: Labels should clearly indicate the work type and scope
Review Process
PRD Review
- Business Review: Product Owner validates business requirements
- Technical Review: Tech Lead validates technical approach
- Stakeholder Review: Key stakeholders approve scope and timeline
Epic Review
- Architecture Review: Tech Lead validates technical design
- Task Breakdown: Ensure all necessary tasks are included
- Dependency Review: Validate all dependencies are correct
Task Review
- Technical Review: Senior Developer validates implementation approach
- Acceptance Criteria Review: Ensure criteria are testable and complete
- Assignment Review: Confirm appropriate developer assignment
Automation Rules
Auto-Labeling
- Issues with
[EPIC]
prefix automatically getepic
label - Issues with
[TASK]
prefix automatically gettask
label - Issues with
PRD #X:
prefix automatically getPRD
label
Auto-Assignment
- PRDs auto-assign to Product Owner role
- Epics auto-assign to Tech Lead role
- Tasks require manual assignment to specific developers
Auto-Milestones
- Child issues inherit parent milestone automatically
- Milestone changes propagate to child issues