module projects import base // SprintStatus represents the status of a sprint pub enum SprintStatus { planning active review completed cancelled } // Sprint represents a time-boxed period in which specific work has to be completed pub struct Sprint { base.Base pub mut: name string description string project_id u32 // ID of the project this sprint belongs to status SprintStatus start_date string // Start date in ISO format end_date string // End date in ISO format goal string // The goal of this sprint story_ids []u32 // IDs of the stories in this sprint issue_ids []u32 // IDs of the issues in this sprint epic_ids []u32 // IDs of the epics this sprint contributes to velocity f32 // Planned velocity for this sprint actual_points f32 // Actual story points completed retrospective string // Notes from the sprint retrospective } // SprintReport represents a report generated at the end of a sprint pub struct SprintReport { base.Base pub mut: sprint_id u32 completed_items u32 // Number of items completed total_items u32 // Total number of items completed_points f32 // Number of story points completed total_points f32 // Total number of story points blockers []string // List of blockers encountered achievements []string // List of achievements lessons []string // Lessons learned }