diff --git a/cmd/bd/markdown.go b/cmd/bd/markdown.go index 6fb407ee..2acb6363 100644 --- a/cmd/bd/markdown.go +++ b/cmd/bd/markdown.go @@ -306,6 +306,15 @@ func parseMarkdownFile(path string) ([]*IssueTemplate, error) { // createIssuesFromMarkdown parses a markdown file and creates multiple issues from it func createIssuesFromMarkdown(_ *cobra.Command, filepath string) { + // Ensure globals are initialized (bd-m0tl: fix nil pointer when store not ready) + if store == nil { + fmt.Fprintf(os.Stderr, "Error: database not initialized\n") + os.Exit(1) + } + if actor == "" { + actor = "bd" // Default actor if not set + } + // Parse markdown file templates, err := parseMarkdownFile(filepath) if err != nil { diff --git a/internal/merge/merge.go b/internal/merge/merge.go index 5d3f04e0..06605594 100644 --- a/internal/merge/merge.go +++ b/internal/merge/merge.go @@ -44,7 +44,7 @@ type Issue struct { Description string `json:"description,omitempty"` Notes string `json:"notes,omitempty"` Status string `json:"status,omitempty"` - Priority int `json:"priority,omitempty"` + Priority int `json:"priority"` // No omitempty: 0 is valid (P0/critical) IssueType string `json:"issue_type,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` diff --git a/internal/types/types.go b/internal/types/types.go index 735a2125..d005e73c 100644 --- a/internal/types/types.go +++ b/internal/types/types.go @@ -17,7 +17,7 @@ type Issue struct { AcceptanceCriteria string `json:"acceptance_criteria,omitempty"` Notes string `json:"notes,omitempty"` Status Status `json:"status,omitempty"` - Priority int `json:"priority,omitempty"` + Priority int `json:"priority"` // No omitempty: 0 is valid (P0/critical) IssueType IssueType `json:"issue_type,omitempty"` Assignee string `json:"assignee,omitempty"` EstimatedMinutes *int `json:"estimated_minutes,omitempty"`