Add epic closure management commands (fixes #62)
- Add 'bd epic status' to show epic completion with child progress - Add 'bd epic close-eligible' to bulk-close completed epics - Add GetEpicsEligibleForClosure() storage method - Update 'bd stats' to show count of epics ready to close - Add EpicStatus type for tracking epic/child relationships - Support --eligible-only, --dry-run, and --json flags - Fix golangci-lint config version requirement Addresses GitHub issue #62 - epics now have visibility and management tools for closure when all children are complete. Amp-Thread-ID: https://ampcode.com/threads/T-e8ac3f48-f0cf-4858-8e8f-aace2481c30d Co-authored-by: Amp <amp@ampcode.com>
This commit is contained in:
@@ -183,13 +183,14 @@ type TreeNode struct {
|
||||
|
||||
// Statistics provides aggregate metrics
|
||||
type Statistics struct {
|
||||
TotalIssues int `json:"total_issues"`
|
||||
OpenIssues int `json:"open_issues"`
|
||||
InProgressIssues int `json:"in_progress_issues"`
|
||||
ClosedIssues int `json:"closed_issues"`
|
||||
BlockedIssues int `json:"blocked_issues"`
|
||||
ReadyIssues int `json:"ready_issues"`
|
||||
AverageLeadTime float64 `json:"average_lead_time_hours"`
|
||||
TotalIssues int `json:"total_issues"`
|
||||
OpenIssues int `json:"open_issues"`
|
||||
InProgressIssues int `json:"in_progress_issues"`
|
||||
ClosedIssues int `json:"closed_issues"`
|
||||
BlockedIssues int `json:"blocked_issues"`
|
||||
ReadyIssues int `json:"ready_issues"`
|
||||
EpicsEligibleForClosure int `json:"epics_eligible_for_closure"`
|
||||
AverageLeadTime float64 `json:"average_lead_time_hours"`
|
||||
}
|
||||
|
||||
// IssueFilter is used to filter issue queries
|
||||
@@ -210,3 +211,11 @@ type WorkFilter struct {
|
||||
Assignee *string
|
||||
Limit int
|
||||
}
|
||||
|
||||
// EpicStatus represents an epic with its completion status
|
||||
type EpicStatus struct {
|
||||
Epic *Issue `json:"epic"`
|
||||
TotalChildren int `json:"total_children"`
|
||||
ClosedChildren int `json:"closed_children"`
|
||||
EligibleForClose bool `json:"eligible_for_close"`
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user