093-the-harness-this-repository-runs

The harness this repository runs

Lifecycle approvedImplementation completeVerification unknownQualification unknown

Sixteen specs governed one tree. `.claude/` is four hooks, ten skills, four agents and four rules, and the requirements on them were spread over specs 093, 047, 048, 051, 063, 068, 071, 072, 078, 080, 081, 082, 099, 104, 110 and 116, each written when that tree was a product this repository distributed. Spec 092 removed the distribution; what is left is one tree that one repository reads, described in sixteen places, most of them half about copies that no longer exist. This spec is that description, in one place: what the hooks may do, what the push gate refuses, how every hook reads a verdict, what the ten skills are and what each must contain, what the four rules say, and who owns the protocol. Every surviving requirement of the seventeen is carried here; what is dropped is named in §6 with the reason, and in every case the reason is that its subject was a copy spec 092 deleted.

Read the full pinned specification ↗

Relationships

Claimed units

  • establishes
    {
      "kind": "file",
      "path": "AGENTS.md"
    }
  • establishes
    {
      "kind": "directory",
      "path": ".claude/skills/"
    }
  • establishes
    {
      "kind": "directory",
      "path": ".claude/agents/"
    }
  • establishes
    {
      "kind": "file",
      "path": ".claude/settings.json"
    }
  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-core/tests/harness_hooks.rs"
    }
  • establishes
    {
      "kind": "file",
      "path": "crates/spec-spine-core/tests/harness_skills.rs"
    }

Source headings

  1. 093: The harness this repository runs
  2. 1. Purpose
  3. 1.1 One tree, sixteen owners
  4. 1.2 What this spec is
  5. 1.3 The sixteen this replaces
  6. 2. Territory
  7. 3. Behavior: the hooks
  8. 3.1 Hooks read; they do not repair
  9. 3.2 The one sanctioned write
  10. 3.3 A hook acts on the repository the action targets
  11. 3.4 A hook that skips says so
  12. 3.5 The push gate: the match is anchored on the invocation
  13. 3.6 The push gate: the protected branch is resolved, never assumed
  14. 3.7 The push gate: only what would update that branch
  15. 3.8 The PR gate reads `check`'s exit code
  16. 3.9 Exit 2 is the one ambiguous code, so it is probed
  17. 3.10 The session hooks report the verdict, not a guess
  18. 3.11 The destructive-command refusals
  19. 3.12 The hooks resolve the binary the project declares
  20. 3.13 The derived-tree question is asked in every state git distinguishes
  21. 4. Behavior: the skills, agents and rules
  22. 4.1 Ten skills
  23. 4.2 The frontmatter contract
  24. 4.3 Repository-invariant, with a project layer
  25. 4.4 A read skill reads
  26. 4.5 One gate list, and a test that pins it
  27. 4.6 `verify` wraps the verb
  28. 4.7 `next` and `build` apply the lifecycle rules
  29. 4.8 `shepherd` classifies before it edits
  30. 4.9 `shepherd` reads every reviewer, on every path
  31. 4.10 The four rules
  32. 4.11 The four agents
  33. 4.12 The protocol has an owner
  34. 5. The tests
  35. 6. What the sixteen said that is not carried here
  36. 7. Out of scope
  37. 8. Resolved decisions
  38. Verification

Frozen anchors

No frozen anchors declared.