Recorded from the #13483 delivery (PR #14056). Unassigned — recording only, for triage.
What
.claude/skills/spec-property-retirement/SKILL.md is the internal playbook for ADR-0049 enforce-or-remove and consumes liveness-ledger verdicts ("the ledger says dead", tombstone rows with status: "dead"). #13483 added a fifth verdict, live-elsewhere — dead here by measurement, genuinely enforced in a sibling repo — precisely so that a dead-here-enforced-elsewhere key can never again be read as a removal input (the manifest.runtime near-miss: the cloud marketplace publish gate consumes it, and the maintainer ruling of 2026-08-30 on the #11330 thread ruled retirement out).
The drift
The skill's discipline ("a dead verdict is input, not proof — build your own evidence before deleting") still holds and nothing in it breaks mechanically. What is missing is the vocabulary: a reader following the skill has no line telling them that the cross-repo-consumer case now has its own status, that such a row is NEVER a removal candidate, and that its attestation discipline (foreign pointer + cross-repo scope + dated verifiedAt + 180d expiry, scripts/liveness/elsewhere.mts) is what to check instead. The ledger README (packages/spec/liveness/README.md, "live-elsewhere" section) is the source to cite.
One or two sentences in the skill's verification-side section suffice. Out of scope for #13483 (the card's surface is the ledger + gate tooling; the skill is a downstream consumer), filed instead per the dispatch order.
Generated by Claude Code
Generated by Claude Code
Recorded from the #13483 delivery (PR #14056). Unassigned — recording only, for triage.
What
.claude/skills/spec-property-retirement/SKILL.mdis the internal playbook for ADR-0049 enforce-or-remove and consumes liveness-ledger verdicts ("the ledger says dead", tombstone rows withstatus: "dead"). #13483 added a fifth verdict,live-elsewhere— dead here by measurement, genuinely enforced in a sibling repo — precisely so that a dead-here-enforced-elsewhere key can never again be read as a removal input (themanifest.runtimenear-miss: the cloud marketplace publish gate consumes it, and the maintainer ruling of 2026-08-30 on the #11330 thread ruled retirement out).The drift
The skill's discipline ("a
deadverdict is input, not proof — build your own evidence before deleting") still holds and nothing in it breaks mechanically. What is missing is the vocabulary: a reader following the skill has no line telling them that the cross-repo-consumer case now has its own status, that such a row is NEVER a removal candidate, and that its attestation discipline (foreign pointer + cross-repo scope + datedverifiedAt+ 180d expiry,scripts/liveness/elsewhere.mts) is what to check instead. The ledger README (packages/spec/liveness/README.md, "live-elsewhere" section) is the source to cite.One or two sentences in the skill's verification-side section suffice. Out of scope for #13483 (the card's surface is the ledger + gate tooling; the skill is a downstream consumer), filed instead per the dispatch order.
Generated by Claude Code
Generated by Claude Code