Documentation
¶
Overview ¶
Package roadmap provides ROADMAP.md generation from project specifications.
This package analyzes project specs, dependencies, and priorities to generate a cohesive roadmap document that tracks milestones, phases, and deliverables.
Index ¶
- type Generator
- type Milestone
- type MilestoneStatus
- type Phase
- type PhaseStatus
- type Priority
- type ProjectInfo
- type Roadmap
- func (r *Roadmap) AddMilestone(phaseID string, milestone Milestone) error
- func (r *Roadmap) GetProgress() float64
- func (r *Roadmap) RenderMarkdown(w io.Writer) error
- func (r *Roadmap) Save(specsRoot string) error
- func (r *Roadmap) UpdateMilestoneStatus(milestoneID string, status MilestoneStatus) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Generator ¶
type Generator struct {
// contains filtered or unexported fields
}
Generator creates roadmaps from project data.
func NewGenerator ¶
NewGenerator creates a new roadmap generator.
type Milestone ¶
type Milestone struct {
ID string `json:"id" yaml:"id"`
Name string `json:"name" yaml:"name"`
Description string `json:"description,omitempty" yaml:"description,omitempty"`
DueDate *time.Time `json:"due_date,omitempty" yaml:"due_date,omitempty"`
Status MilestoneStatus `json:"status" yaml:"status"`
Priority Priority `json:"priority" yaml:"priority"`
Deliverables []string `json:"deliverables,omitempty" yaml:"deliverables,omitempty"`
Dependencies []string `json:"dependencies,omitempty" yaml:"dependencies,omitempty"` // Other milestone IDs
Projects []string `json:"projects,omitempty" yaml:"projects,omitempty"`
RMI string `json:"rmi,omitempty" yaml:"rmi,omitempty"` // Roadmap Item ID
Tags []string `json:"tags,omitempty" yaml:"tags,omitempty"`
}
Milestone represents a specific deliverable within a phase.
type MilestoneStatus ¶
type MilestoneStatus string
MilestoneStatus indicates milestone completion state.
const ( MilestoneStatusPending MilestoneStatus = "pending" MilestoneStatusInProgress MilestoneStatus = "in_progress" MilestoneStatusCompleted MilestoneStatus = "completed" MilestoneStatusBlocked MilestoneStatus = "blocked" MilestoneStatusDeferred MilestoneStatus = "deferred" )
type Phase ¶
type Phase struct {
ID string `json:"id" yaml:"id"`
Name string `json:"name" yaml:"name"`
Description string `json:"description,omitempty" yaml:"description,omitempty"`
StartDate *time.Time `json:"start_date,omitempty" yaml:"start_date,omitempty"`
EndDate *time.Time `json:"end_date,omitempty" yaml:"end_date,omitempty"`
Status PhaseStatus `json:"status" yaml:"status"`
Milestones []Milestone `json:"milestones,omitempty" yaml:"milestones,omitempty"`
Projects []string `json:"projects,omitempty" yaml:"projects,omitempty"`
Order int `json:"order" yaml:"order"`
}
Phase represents a roadmap phase with milestones.
type PhaseStatus ¶
type PhaseStatus string
PhaseStatus indicates the current state of a phase.
const ( PhaseStatusPlanned PhaseStatus = "planned" PhaseStatusInProgress PhaseStatus = "in_progress" PhaseStatusCompleted PhaseStatus = "completed" PhaseStatusBlocked PhaseStatus = "blocked" )
type ProjectInfo ¶
type ProjectInfo struct {
Name string `yaml:"name"`
Description string `yaml:"description"`
Status string `yaml:"status"`
Priority string `yaml:"priority"`
Phase string `yaml:"phase"`
Tags []string `yaml:"tags"`
DueDate string `yaml:"due_date"`
}
ProjectInfo contains project metadata for roadmap generation.
type Roadmap ¶
type Roadmap struct {
Title string `json:"title" yaml:"title"`
Description string `json:"description,omitempty" yaml:"description,omitempty"`
Version string `json:"version,omitempty" yaml:"version,omitempty"`
UpdatedAt time.Time `json:"updated_at" yaml:"updated_at"`
Phases []Phase `json:"phases" yaml:"phases"`
Metadata map[string]string `json:"metadata,omitempty" yaml:"metadata,omitempty"`
}
Roadmap represents the complete project roadmap.
func (*Roadmap) AddMilestone ¶
AddMilestone adds a milestone to a phase.
func (*Roadmap) GetProgress ¶
GetProgress returns overall roadmap progress (0-100).
func (*Roadmap) RenderMarkdown ¶
RenderMarkdown renders the roadmap as Markdown.
func (*Roadmap) UpdateMilestoneStatus ¶
func (r *Roadmap) UpdateMilestoneStatus(milestoneID string, status MilestoneStatus) error
UpdateMilestoneStatus updates the status of a milestone.