Documentation
¶
Overview ¶
Package configspec is the compile-time, adopter-facing description authority for the .awf configuration surface: every config.yaml key, sidecar field, var, and per-artifact data key an adopter can set. Descriptions are publication prose: they state effect and availability in the adopter's terms - never internal rationale, concrete ADR citations, or repo-identity literals (the residue rules, test-enforced).
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func LiveStateClassifications ¶ added in v0.31.0
func LiveStateClassifications() map[string]LiveStateClass
LiveStateClassifications is an explicit exhaustive classification beside the config-spec authority. No generated static default is allowed: adding a key requires choosing its live or not-applicable representation here.
Types ¶
type DataKey ¶
type DataKey struct {
Kind string // "skills", "agents", "docs"
Artifact string // artifact name; "agents-doc" uses kind "docs"; "_base" covers local artifacts
Key string
Fields []string // declared record fields when the value is a list of mappings
Description string
}
DataKey describes one adopter-settable sidecar data: key of one artifact.
type Entry ¶
type Entry struct {
Path string // dotted YAML path: "audit.diffThreshold", "sidecar.sections.<name>.drop"
Type string // value shape as prose: "string", "bool", "string list", "key → value map"
Default string // effective default as prose: "docs", "accept any scope", "none"
Description string // full adopter-voiced description
Availability string // when the key has effect: "always", "domain sidecars only", ...
}
Entry describes one adopter-writable configuration key.
type LiveStateClass ¶ added in v0.31.0
type LiveStateClass uint8
LiveStateClass declares whether a configuration-reference key has a project-specific current-value projection. Static keys deliberately carry no current value: sidecar fields and structural list leaves have no one project value to display.
const ( StaticNotApplicable LiveStateClass = iota LiveStateProjection )
type VarEntry ¶
VarEntry describes one config var. Description text is carried verbatim from the catalog descriptor - the catalog stays the sole var authority; configspec attaches only the availability clause.
func VarEntries ¶
func VarEntries() []VarEntry
VarEntries derives the var descriptions from the catalog's config-var descriptors (empty or "var" Target - the init-routing descriptors are not vars: keys), description text verbatim, availability clause attached here. touches-state: config/configspec-and-reference:configspec-var-derivation - var entries derived from catalog descriptors; proof in spec_test.go