014-establishes-wrapper-na-alias

Frontmatter sugar: `unit:`-wrapped establishes items and the `n/a` implementation alias

Lifecycle approvedImplementation completeVerification unknownQualification unknown

Two pieces of authoring sugar for the predecessor dialect, both normalized away at parse so nothing new reaches registry.json. (1) An authority unit may be written as a single-key `{ unit: <unit> }` wrapper -- a third 1:1 representation alongside the existing bare-string and tagged-map forms -- which the Unit deserializer unwraps to its inner unit. The corpus uses this on `establishes` items (one wrapper per item, `unit` the only field). (2) `implementation: n/a` is accepted as a deserialize-only alias for the canonical `n-a`, which stays the only spelling ever emitted. Neither changes the registry schema or any consumer; both unblock adopting a corpus authored in the OAP dialect (389 wrapped establishes items across ~97 specs; 5 specs using `n/a`) without a mass frontmatter migration.

Read the full pinned specification ↗

Relationships

Claimed units

  • extends
    {
      "nature": "additive",
      "spec": "000-spec-spine-bootstrap",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-types/src/unit.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "000-spec-spine-bootstrap",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-types/src/frontmatter.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "000-spec-spine-bootstrap",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-types/tests/grammar.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "001-compile-registry",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-core/tests/compile.rs"
      }
    }

Source headings

  1. 014: `unit:`-wrapped establishes items and the `n/a` implementation alias
  2. 1. Purpose
  3. 2. Territory
  4. 3. Behavior
  5. 3.1 The `unit:` wrapper (a third 1:1 unit representation)
  6. 3.2 The `n/a` implementation alias
  7. 3.3 Normalization and equivalence (the sugar never escapes)
  8. 3.4 Tests (minimum)
  9. 4. Out of scope

Frozen anchors

No frozen anchors declared.