042-absent-implementation-defers-to-status
An absent `implementation` key takes its answer from `status`
`implementation` is optional, and two verbs read its absence in opposite directions. `registry plan` (spec 035) reads an absent key as `pending` and offers the spec as ready; the index's in-flight predicate (specs 038 and 041) reads `approved` + absent as settled and holds the spec to its claims. The one spec that routinely lacks the key is the bootstrap spec `spec-spine init` scaffolds, so every scaffolded corpus reports its bootstrap spec as the single ready item in an otherwise finished corpus, forever; one adopter does today, and this repository did until its own spec 000 was patched by hand. This spec fixes the rule rather than the instance: an absent key takes its answer from `status`. On a `draft` it reads as `pending`, as 038 intended; on anything ratified it reads as settled, as the gate already concludes. The scaffold's bootstrap spec declares `implementation: n-a` and the spec template states the key instead of commenting it out, so the absent case becomes rare as well as consistent.
Read the full pinned specification ↗Relationships
depended on by
Claimed units
- extends
{ "nature": "additive", "spec": "035-registry-plan-ready-set", "unit": { "kind": "file", "path": "crates/spec-spine-core/src/query.rs" } } - extends
{ "nature": "additive", "spec": "035-registry-plan-ready-set", "unit": { "kind": "file", "path": "crates/spec-spine-core/tests/query.rs" } } - extends
{ "nature": "additive", "spec": "092-the-engine-ships-governance-not-an-environment", "unit": { "kind": "file", "path": "crates/spec-spine-core/src/scaffold.rs" } } - extends
{ "nature": "additive", "spec": "092-the-engine-ships-governance-not-an-environment", "unit": { "kind": "file", "path": "crates/spec-spine-core/tests/scaffold.rs" } }
Source headings
- 042: An absent `implementation` key takes its answer from `status`
- 1. Purpose
- 1.1 Two verbs, one key, two answers
- 1.2 The instance that made it visible
- 2. Territory
- 3. Behavior
- 3.1 The rule
- 3.2 Why `status` is the right fallback
- 3.3 The scaffold
- 3.4 What this does not change
- 4. Out of scope
- 5. Verification
Frozen anchors
No frozen anchors declared.