Documentation
¶
Overview ¶
Package selection defines the transient effective-selection document that the installer TUI and Home Manager both hand to the apply engine.
The document is never the preference YAML: it carries only already-normalized effective cell state (harness enabled AND that global extension axis enabled). Neither apply-selection nor apply-cell reads or writes preference YAML; they consume this effective state and mutate only factual operational inventory.
The schema requires all and only the three harnesses, each with all and only the three extension axes. Missing or extra harnesses/axes are rejected so an under-specified document can never silently disable a cell.
Index ¶
Constants ¶
const SchemaID = "pasture.install.effective-selection/v1"
SchemaID is the frozen schema identifier for the effective-selection document.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Selection ¶
type Selection struct {
// contains filtered or unexported fields
}
Selection is a validated effective-selection over exactly the nine cells.
func New ¶
New constructs a Selection from an exhaustive cell->enabled mapping. The map must contain exactly the nine canonical cells; missing or extra keys are rejected.
func Parse ¶
Parse decodes and validates an effective-selection document. Unknown keys, missing harnesses, and missing axes are all rejected.