Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func HasManifest ¶
HasManifest reports whether projectDir already contains a dependency/build manifest that should be treated as a brownfield compatibility constraint.
func RenderMarkdown ¶
RenderMarkdown returns a compact research.md section for the stack decision.
func ValidateDecision ¶
ValidateDecision enforces the freshness evidence required for stack decisions.
Types ¶
type Candidate ¶
type Candidate struct {
Name string
Version string
Stability string
SourceRefs []SourceRef
Notes []string
}
Candidate is a selected or rejected technology/library version.
type Decision ¶
type Decision struct {
Mode ProjectMode
Selected []Candidate
Rejected []Candidate
Constraints []string
AllowPrerelease bool
GeneratedAt time.Time
}
Decision is the structured technology stack decision that PRD/SPEC research should preserve before implementation starts.
type ProjectMode ¶
type ProjectMode string
ProjectMode identifies whether stack choices should preserve existing manifests or resolve current stable versions for a new project.
const ( ModeGreenfield ProjectMode = "greenfield" ModeBrownfield ProjectMode = "brownfield" )
func InferMode ¶
func InferMode(projectDir, description string) ProjectMode
InferMode classifies the request as greenfield or brownfield. Explicit request wording wins over local manifests because users often ask for a new project from inside a meta workspace.