035-registry-plan-ready-set

`registry plan`: the ready set in dependency order

Lifecycle approvedImplementation completeVerification unknownQualification unknown

`depends_on` records the order specs must be built in, spec 030 guarantees that graph is acyclic, and `implementation` records how far each one has got, but nothing joins the three: there is no query that answers "which specs can be worked on now, and in what order". Every consumer that needs it (a contributor picking up the corpus, a release note, an autonomous driver taking one spec per session) recomputes it by reading frontmatter by hand, which is both tedious and exactly the ad-hoc traversal the typed read verbs exist to replace. This spec adds `registry plan`: a read-only projection that partitions the corpus into a `ready` set (nothing unfinished blocks it) emitted in deterministic topological order, and a `blocked` set, each entry naming the unfinished dependencies that block it, so the output explains itself rather than merely listing. It is a scheduling projection and nothing more: `implementation` is a self-declared field that no gate currently verifies, so `plan` treats it as a hint about intent and never as evidence about code, and this spec deliberately does not let a scheduling answer imply that anything is done.

Read the full pinned specification ↗

Relationships

Claimed units

  • extends
    {
      "nature": "additive",
      "spec": "002-registry-query",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-core/src/query.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "002-registry-query",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-cli/src/cmd_registry.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "002-registry-query",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-core/tests/query.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/tests/cli.rs"
      }
    }

Source headings

  1. 035: `registry plan`
  2. 1. Purpose
  3. 2. Territory
  4. 3. Behavior
  5. 3.1 The partition
  6. 3.2 Ordering is total and deterministic
  7. 3.3 Output
  8. 3.4 `implementation` is a hint, never evidence
  9. 3.5 Tests (minimum)
  10. 4. Out of scope
  11. 5. Resolved decisions

Frozen anchors

No frozen anchors declared.