021-ledger-seal

Ledger Seal (signed, reproducible attestation over the spec corpus)

Lifecycle approvedImplementation completeVerification unknownQualification unknown

spec-spine self-describes as a typed, hash-verifiable authority ledger over a markdown spec corpus. A hash-verifiable ledger is an attestation missing only two things: a signature and a verify. This spec completes that sentence. It adds a CorpusAttestation, a deterministic, pure-function payload over the inputs manifest, the registry hash, and the compile/lint (and optionally coupling) verdicts, plus a detached Ed25519 seal over its hash, and a two-mode verify-attestation (recompute, which any third party can run with no key, and signature, which is opt-in). The reproducible recompute mode is the property a run certificate can never have, because runs are side-effecting; this object is the signed, archival, independently-verifiable form of a verdict spec-spine already computes and then throws away into a CI log. It is deliberately NOT called a certificate: that word stays with run-provenance (signed testimony of a non-reproducible event). This is an attestation (recomputable truth).

Read the full pinned specification ↗

Relationships

Claimed units

  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-types/src/attest.rs"
    }
  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-core/src/attest.rs"
    }
  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-core/tests/attest.rs"
    }
  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-cli/src/seal.rs"
    }
  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-cli/src/cmd_attest.rs"
    }
  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-cli/src/verify_attestation.rs"
    }
  • extends
    {
      "nature": "additive",
      "spec": "000-spec-spine-bootstrap",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-types/src/lib.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "001-compile-registry",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-core/src/lib.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "001-compile-registry",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-cli/src/main.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "001-compile-registry",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-cli/Cargo.toml"
      }
    }

Source headings

  1. 021: Ledger Seal
  2. 1. Purpose
  3. 2. Territory
  4. 3. Object shape
  5. 4. Functional requirements
  6. 5. Acceptance criteria
  7. 6. Out of scope
  8. 7. Naming (deliberate)
  9. 8. Sequencing

Frozen anchors

No frozen anchors declared.