Documentation
¶
Overview ¶
Package stackspeccompletion binds a losslessly read v1 StackSpec to one complete, explicit v2 candidate and resolves it through the governed Architecture v2 service. It deliberately sits above stackspecmigration: the migration projection remains architecture-only and cannot compile.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Error ¶
type Error struct {
Blocker stackspecmigration.Blocker
Cause error
}
Error carries the same structured blocker that was appended to Result.Report.
type Input ¶
type Input struct {
Legacy stackspecmigration.Document
LegacySourceRef string
Candidate []byte
TargetKitProfile stackspecmigration.KitProfile
}
Input contains the losslessly classified legacy document and a complete v2 candidate supplied by the operator. TargetKitProfile is always explicit; context remains locality/hardware migration input only.
type Resolver ¶
type Resolver interface {
Resolve(architecturev2.ResolveInput) (architecturev2.Result, error)
}
Resolver is the exact architecture resolution boundary used by the CLI. Production callers pass *architecturev2.Service; the interface only keeps reconciliation tests independent from the embedded bundle generator.
type Result ¶
type Result struct {
Status stackspecmigration.MigrationStatus
LegacySourceSHA256 string
CandidateSourceSHA256 string
CandidateIntentSHA256 string
MigrationReportSHA256 string
MigrationDecisionRecord []byte
CanonicalStackSpec map[string]any
CanonicalStackSpecBytes []byte
CanonicalStackSpecSHA256 string
PlanHash string
GeneratorEligible bool
Report stackspecmigration.Report
ArchitectureProjection *stackspecmigration.NormalizedArchitecture
}
Result is produced only after reconciliation and governed CUE resolution. CanonicalStackSpec is deterministic JSON for the explicit candidate. It is CUE-valid but is intentionally not described as CUE-default-expanded.