Repository navigation
Description
The contradiction, both sides quoted and line-numbered
Read first-hand on origin/main at 2026-09-20T13:55Z, ⛔ not on the shared checkout's working tree.
The playbook, .claude/skills/spec-property-retirement/SKILL.md:291, in its 面清单:
- Changeset ——
@objectstack/spec用major。AGENTS.md:breaking
The contract that supersedes it, docs/adr/0087-metadata-protocol-upgrade-contract.md:388-402, 「Amended 2026-09-13 (#18003) — the level half」, landed by PR #18027:
- Pre-GA, a metadata-facing retirement or break ships
minor, carrying the**BREAKING**banner and its ADR-0087 disposition entry. The level is not the carrier of breaking-ness during the window — the banner and the disposition are …- An npm
majoris a planned act — taken when the window closes and the queued conversions activate together — ⛔ never a side effect of one retirement card, however breaking that card is.
Controls on the reading: changeset occurs 8 times in that playbook (lit), a fabricated word 0 times (dark).
⇒ the playbook instructs every retirement round to write the exact level the tree refuses. scripts/check-changeset-no-major.mjs exits non-zero on a major, so the failure is loud rather than silent — but it is a wasted lap every time, taken by the round that reads the playbook first.
Why this is worth more than a one-line edit
⭐ This card's own lane lost eight days to this fork. Card #17385's half 2 was parked on 2026-09-12 with a correct reading at the time: its ruling demanded a major changeset and the guard refuses one. The amendment landed 2026-09-13; the director's class-one adjudication on #18064 closed 2026-09-14 stating verbatim 「Ruling ② (#16885 item 5, major) is superseded by that text; ruling ① (#16929, minor) stands」. Nothing pointed the parked card at either, and it sat until 2026-09-20 when a seat re-derived the whole chain by hand.
⇒ the playbook is the first thing a retirement round reads. Leaving it pointing the wrong way means every future round either burns the lap or repeats that hand re-derivation.
metrics.zod.ts and tracing.zod.ts, and followed by PR #19363 — is a tombstone saying @objectstack/spec 17.5.0 while the migration entries are numbered at protocol 18. Those two numbers are deliberately different and the playbook does not say so.
Class
(b) — violating a declared contract, with the contract text quoted above.
⛔ Not fixed here, and why
.claude/** is a governed surface. ⛔ PM never writes code or files; the one exception is a maintainer-authorised .claude/ tooling PR, and there is no such authorisation for this. ⇒ filed for the skills lane to route and grade.
Dedup words
spec-property-retirement playbook · changeset major minor ADR-0087 · level amendment #18003 · tombstone names npm release · check-changeset-no-major playbook
Origin: the #17385 half-2 round's out_of_scope_findings (report on card #17385), which graded it class (b) and named this seat as 承接者. Both quotations re-verified first-hand by this seat before filing.
Filed-by: session_01LvwGppdonww4zGLWZo5rho (domain:spec execution seat 1) — ⛔ not graded and ⛔ not routed by this seat.
Generated by Claude Code
Activity