062-one-name-one-freshness-verb

One name for the protocol, one verb for freshness

Lifecycle approvedImplementation completeVerification unknownQualification unknown

The session protocol is ambiguous in two places and both are collisions with its own neighbours. Its entry point is named `/init`, which is also a Claude Code built-in meaning the opposite thing (one-time, repository-level, and it writes) and also `spec-spine init`, which means a third thing again. And it asks one question, whether the committed state is current, in two spellings: `compile --check` is a flag and `index check` is a subcommand, so the protocol, the hook, the skills and CI each have to spell both. This spec renames the skill to `/prime` with no alias, and adds `spec-spine check`, an additive top-level verb that runs both freshness reads, reports each tree separately, and composes one exit code. Nothing is removed: both primitives keep their flags, their tests and their contracts, and CI may still call one when it regenerated only one tree.

Read the full pinned specification ↗

Relationships

Claimed units

  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-cli/src/cmd_check.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-core/src/lib.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "001-compile-registry",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-cli/tests/cli.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "034-machine-readable-verdicts",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-types/src/verdict.rs"
      }
    }
  • extends
    {
      "nature": "superseding",
      "spec": "093-the-harness-this-repository-runs",
      "unit": {
        "kind": "file",
        "path": ".claude/skills/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "093-the-harness-this-repository-runs",
      "unit": {
        "kind": "file",
        "path": "AGENTS.md"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "093-the-harness-this-repository-runs",
      "unit": {
        "kind": "file",
        "path": ".claude/settings.json"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "044-index-diagnostics-reach-a-gate",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-core/src/diagnostics.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "094-one-gate-and-the-boundaries-it-holds",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-core/tests/gate.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "093-the-harness-this-repository-runs",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-core/tests/harness_skills.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "093-the-harness-this-repository-runs",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-core/tests/harness_hooks.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "094-one-gate-and-the-boundaries-it-holds",
      "unit": {
        "kind": "file",
        "path": ".github/workflows/ci.yml"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "093-the-harness-this-repository-runs",
      "unit": {
        "kind": "file",
        "path": ".claude/agents/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "057-the-docs-name-what-adopters-derived",
      "unit": {
        "kind": "file",
        "path": "docs/adoption-guide.md"
      }
    }

Source headings

  1. 062: One name for the protocol, one verb for freshness
  2. 1. Purpose
  3. 2. Territory
  4. 3. Behavior
  5. 3.1 The session skill is `/prime`, with no alias
  6. 3.2 `spec-spine check` answers the freshness question once
  7. 3.3 One exit code, composed in a pinned order
  8. 3.4 Each tree's report passes through unchanged
  9. 3.5 Every consumer calls the composed verb
  10. 4. Out of scope
  11. 5. Resolved decisions
  12. Verification

Frozen anchors

No frozen anchors declared.