071-a-change-is-classified-under-the-bases-rules

A change is classified under the base's rules

Lifecycle approvedImplementation completeVerification unknownQualification unknown

The coupling gate clears C-001 when any owning spec's `spec.md` is in the diff, and reads the owners from the candidate's own index. Measured on a scratch repository, a candidate that deletes a command from its own `## Verification` block while changing the code that command checked passes `couple` at exit 0, and so does a candidate that files a new draft spec with an `extends` edge on another spec's unit and rewrites that unit. Both are changes a reviewer must weigh under the rules that held before the change, and nothing reports them as such. Design note 02 G7 says no refusal should be asserted before it is designed, because the naive rule refuses legitimate refactors. This spec therefore adds a report, not a gate: `spec-spine delta --base B --head H` classifies every changed path into implementation, requirement, verification, authority, lifecycle, constitutional, policy, derived, bypassed, unowned or unknown, computed under the merge base's own configuration and index so a candidate cannot reclassify its change by editing `spec-spine.toml`. It records the base and head plan digests for every spec whose declared acceptance changed, the owner sets on both sides of every path whose ownership moved, and a `priorPolicy` block naming the classes a consumer must judge under the base's policy. It interprets no prose, infers no moves, and decides nothing.

Read the full pinned specification ↗

Relationships

Claimed units

  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-types/src/delta.rs"
    }
  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-core/src/delta.rs"
    }
  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-core/tests/delta.rs"
    }
  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-cli/src/cmd_delta.rs"
    }
  • extends
    {
      "nature": "additive",
      "spec": "043-verify-declared-acceptance",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-core/src/verify.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "000-spec-spine-bootstrap",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-types/tests/dtos.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "022-index-sharding",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-core/src/shard.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "001-compile-registry",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-cli/src/main.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "034-machine-readable-verdicts",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-types/src/verdict.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "005-coupling-gate",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-cli/src/cmd_couple.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "001-compile-registry",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-core/src/lib.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "000-spec-spine-bootstrap",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-types/src/lib.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "000-spec-spine-bootstrap",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-types/src/version.rs"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "001-compile-registry",
      "unit": {
        "kind": "file",
        "path": "crates/spec-spine-cli/tests/cli.rs"
      }
    }

Source headings

  1. 071: A change is classified under the base's rules
  2. 1. Purpose
  3. 2. Territory
  4. 3. Behavior
  5. 3.1 The verb and the seam
  6. 3.2 The base's rules classify
  7. 3.3 Classes
  8. 3.4 Detail carried per class
  9. 3.5 Prior policy
  10. 3.6 Report and versioning
  11. 3.7 What it does not claim
  12. 3.8 Tests (minimum)
  13. 4. Out of scope
  14. 5. Resolved decisions
  15. Verification

Frozen anchors

No frozen anchors declared.