Skip to content

Package cmd/canary

Import path: go.devnw.com/canary/cmd/canary

CANARY: REQ=CBIN-140; FEATURE="GapCLI"; ASPECT=CLI; STATUS=IMPL;

API (raw go doc)


CANARY: REQ=CBIN-140; FEATURE="GapCLI"; ASPECT=CLI; STATUS=IMPL;
UPDATED=2025-10-17

CANARY: REQ=CBIN-133; FEATURE="RequirementLookup"; ASPECT=API; STATUS=TESTED;
UPDATED=2025-10-16

CANARY: REQ=CBIN-CLI-104; FEATURE="CanaryCLI"; ASPECT=CLI; STATUS=IMPL;
OWNER=canary; UPDATED=2025-10-16

CANARY: REQ=CBIN-132; FEATURE="NextPriorityCommand"; ASPECT=CLI;
STATUS=BENCHED; TEST=TestCANARY_CBIN_132_CLI_NextPrioritySelection;
BENCH=BenchmarkCANARY_CBIN_132_CLI_PriorityQuery; OWNER=canary;
UPDATED=2025-10-16

CANARY: REQ=CBIN-146; FEATURE="ProjectCLI"; ASPECT=CLI; STATUS=IMPL;
UPDATED=2025-10-18

CANARY: REQ=CBIN-134; FEATURE="SpecModification"; ASPECT=CLI; STATUS=IMPL;
DOC=user:docs/user/spec-modification-guide.md; DOC_HASH=676eb2a18c9d002a;
UPDATED=2025-10-17

TYPES

type AgentConfig struct {
    Dir    string // Directory for agent files
    Prefix string // Prefix for command files (e.g., "canary.")
}
    CANARY: REQ=CBIN-105; FEATURE="InitWorkflow"; ASPECT=CLI; STATUS=IMPL;
    OWNER=canary; UPDATED=2025-10-16 AgentConfig defines configuration for each
    supported AI agent

type ImplementFlags struct {
    Prompt       bool
    ShowProgress bool
    ContextLines int
}
    ImplementFlags holds command flags

type ProgressStats struct {
    Total     int
    Stub      int
    Impl      int
    Tested    int
    Benched   int
    Completed int
}
    ProgressStats tracks implementation progress

type PromptData struct {
    ReqID             string
    Feature           string
    Aspect            string
    Status            string
    Priority          int
    SpecFile          string
    SpecContent       string
    Constitution      string
    RelatedSpecs      []RelatedSpec
    Dependencies      []*storage.Token
    SuggestedFiles    []string
    TestGuidance      string
    TokenExample      string
    SuccessCriteria   []string
    Today             string
    SuggestedTestFile string
    PackageName       string
}
    PromptData holds template variables for prompt generation

type RelatedSpec struct {
    ReqID    string
    Feature  string
    SpecFile string
}
    RelatedSpec represents a related specification reference

type RequirementSpec struct {
    ReqID       string
    FeatureName string
    SpecPath    string
    SpecContent string
    PlanPath    string
    PlanContent string
    HasPlan     bool
}
    RequirementSpec holds loaded specification data

type StatusStats struct {
    Total     int
    Stub      int
    Impl      int
    Tested    int
    Benched   int
    Completed int
}
    StatusStats holds progress statistics