150-a-change-runs-the-acceptance-it-can-break

A change runs the acceptance it can break

Lifecycle approvedImplementation completeVerification unknownQualification unknown

Specs 144 and 137 each broke an approved spec's acceptance (046 and 089), and nothing noticed until the pre-release sweep of `e440b714`, after both had merged; spec 146 repaired them. The sweep runs only on a merged revision (specs 089, 099), and no pre-merge step runs any acceptance other than the changed spec's own. This spec adds a pre-merge acceptance run: a selector that names every spec whose acceptance a change can break, and a step that runs those blocks on the pull request's head before it merges, with the counts recorded in the pull request. Measured on 136 to 146, a selector keyed on references alone would not have been narrower than the corpus, and would have caught 046 only through its generic `lint` line, so the selector falls back to the whole corpus when engine source changes.

Read the full pinned specification ↗

Relationships

Claimed units

  • extends
    {
      "nature": "additive",
      "spec": "089-nothing-reruns-a-merged-acceptance",
      "unit": {
        "kind": "file",
        "path": "scripts/verify-sweep.sh"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "089-nothing-reruns-a-merged-acceptance",
      "unit": {
        "kind": "file",
        "path": "scripts/test-verify-sweep.py"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "064-compile-warnings-reach-the-gate",
      "unit": {
        "kind": "file",
        "path": "AGENTS.md"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "064-compile-warnings-reach-the-gate",
      "unit": {
        "kind": "file",
        "path": ".claude/skills/"
      }
    }

Source headings

  1. 150: A change runs the acceptance it can break
  2. 1. Purpose
  3. 1.1 The miss
  4. 1.2 What a reference selector would have caught
  5. 2. Territory
  6. 3. Behavior
  7. 3.1 The selector
  8. 3.2 It runs before merge, on the pull request's head
  9. 3.3 The post-merge sweep stays
  10. 4. Out of scope
  11. 5. Resolved decisions
  12. Verification

Frozen anchors

No frozen anchors declared.