Skip to content

Commit ee26ec6

Browse files
os-steveclaude
andcommitted
docs(skills): the retirement playbook prescribes a minor changeset, not the major a live gate refuses
The `spec-property-retirement` Changeset checklist item told the agent to grade `@objectstack/spec` a `major` bump. The per-PR `Check Changeset` job runs `scripts/check-changeset-no-major.mjs`, which refuses exactly that while the launch window stands — so an agent executing the checklist verbatim reddened its own PR and then had to decide, mid-retirement, whether the playbook or the gate was authoritative. Measured in this worktree, both legs on a throwaway changeset: "@objectstack/spec": major -> exit 1, "This PR introduces changeset(s) that declare a `major` bump." "@objectstack/spec": minor -> exit 0, "This diff introduces no `major` bump." The item now says `minor`, names the gate and the job so the next reader sees why, and states that the breaking semantics ride the BREAKING banner instead of the bump level — the same split `.github/workflows/pr-automation.yml` already states under "WHICH LEVEL". The `AGENTS.md:breaking` pointer, the FROM -> TO mapping requirement, the `CHANGELOG.md` rationale, the template pointer and the ADR-0087 disposition marker all survive; the item is repacked in place at 6 lines so the file stays at its ratchet ceiling of 337, every line under 120 bytes. Claude-Session: https://claude.ai/code/session_017ETYWqMQD4qMtZzAGovWNi Co-authored-by: Claude <noreply@anthropic.com>
1 parent 23f1de0 commit ee26ec6

1 file changed

Lines changed: 6 additions & 6 deletions

File tree

  • .claude/skills/spec-property-retirement

‎.claude/skills/spec-property-retirement/SKILL.md‎

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -288,12 +288,12 @@ conversion 是消费者跟的。两个都要写。
288288
Guardrails)。release notes 在发布时从 changesets + D2/D3 registry 集中编写,你的
289289
changeset(下一项)才是通往它们的输入。`content/docs/**` 的其余部分:先 grep 键
290290
名,再读周边文件 —— 被删的键会藏在离参考表三节远的一个 `defineFlow` 示例里。
291-
- [ ] **Changeset** —— `@objectstack/spec` 用 `major`。AGENTS.md:breaking
292-
changeset 必须带 FROM → TO 映射与一行修复;它作为 npm 包里的 `CHANGELOG.md`
293-
发出,是升级中的 agent 撞上墓碑报错后 grep 的东西。
294-
样板是任一条活着的 `.changeset/*-retired.md` —— 抄它的 "The retirement
295-
kit:" 段。⚠ 并带上 ADR-0087 处置标记(AGENTS.md 的 changeset 一节;
296-
`pnpm check:adr-0087-registration` 把门)—— 退役正是它点名的那一类。
291+
- [ ] **Changeset** —— `@objectstack/spec` 用 `minor`,⛔ 不用 `major`:逐 PR 的 `Check Changeset` 跑
292+
`scripts/check-changeset-no-major.mjs`,发射窗口期内拒收 `major`,照抄即红。破坏性语义由 BREAKING
293+
banner 承载 —— AGENTS.md:breaking changeset 必须带 FROM → TO 映射与一行修复;它作为 npm 包里
294+
的 `CHANGELOG.md` 发出,是升级中的 agent 撞上墓碑报错后 grep 的东西。样板抄任一条活着的
295+
`.changeset/*-retired.md` 的 "The retirement kit:" 段。⚠ 并带上 ADR-0087 处置标记(AGENTS.md 的
296+
changeset 一节;`pnpm check:adr-0087-registration` 把门)—— 退役正是它点名的那一类。
297297
- [ ] **`check:generated` 明确不跑的源码审计 —— 整组跑,永不单点。** 它的输出会点名
298298
它们;陷阱是跑了五个漏了第六个。咬退役的是 `check:variant-docs`:删掉一个
299299
discriminated union 会孤儿化它的 variant/doc-ledger 条目(实测:条目比它的 union

0 commit comments

Comments
 (0)