Skip to content

Commit 162e1aa

Browse files
claude[bot]claudeos-zhuang
authored
docs(adr): record ADR-0125 as accepted, and name the version-PR trigger in PD #15 (#11829)
Two sentences, two governed files, nothing else. 1. `docs/adr/0125-...md` line 3 declared itself "Proposed (2026-08-20) — awaiting the maintainer's hand-merge" while being the authority the publish lane cites eleven times. The merge it says it awaits is, by its own text, the acceptance act; that merge landed as 81d1fa1 (#10150) on 2026-08-20. The date is read from that merge, not from today. 2. `AGENTS.md` Prime Directive #15 said the Version Packages PR "is regenerated on every push to `main`". The `version-pr` job left the push trigger; it now runs on a six-hourly `schedule` or an on-demand `refresh_version_pr` dispatch. `release.yml`'s `push: branches: [main]` trigger drives the publish lane instead, so the sentence now says which trigger it means. Claude-Session: https://claude.ai/code/session_015ahemw8RcTgqtxrj15PEZx Co-authored-by: claude <noreply@anthropic.com> Co-authored-by: os-zhuang <jack@objectstack.ai>
1 parent 7c5b275 commit 162e1aa

3 files changed

Lines changed: 16 additions & 7 deletions

File tree

AGENTS.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -323,15 +323,16 @@ localStorage / auth gotchas.
323323
readable by every seat — which is why it lives here, not only in a lane-specific skill file. **Release-adjacent
324324
work stays open to every seat.** The release board, `.objectui-sha` pin bumps, version reconciliation, writing
325325
changesets, compiling release notes when asked, and *verifying* release state (`npm view`, `git ls-remote --tags`)
326-
are ordinary tasks. What is reserved is the **release act itself**: ⛔ running `changeset publish` /
327-
`pnpm run release`, ⛔ pushing a version tag, ⛔ cutting a GitHub Release, ⛔ pushing a runtime image, ⛔
326+
are ordinary tasks. What is reserved is the **release act itself**: ⛔ running `changeset publish` / `pnpm run
327+
release`, ⛔ pushing a version tag, ⛔ cutting a GitHub Release, ⛔ pushing a runtime image, ⛔
328328
`workflow_dispatch`-ing `release.yml` or any other publish-capable workflow, ⛔ **approving a pending `release`
329329
environment deployment** (ADR-0125 — since 2026-08-20 that click IS the publish authorisation, and a deployment
330330
waiting for hours is the system working, not a state you clear), and ⛔ merging — or queueing, or arming
331331
auto-merge on — the **Version Packages** PR (`chore: version packages`). That PR is bot-authored and standing-open
332-
by design: it is regenerated on every push to `main`, so "green, current, and nobody has objected" is its permanent
333-
resting state, not a signal that it is due. When you find a publish nobody ordered — a tag or an npm version that
334-
simply appeared — ⛔ do not "repair" it with a counter-publish: file it as an incident for the maintainer.
332+
by design: it is regenerated six-hourly by `release.yml`'s `version-pr` job — never on a push to `main`; push
333+
drives the publish lane — so "green, current, and nobody has objected" is its permanent resting state, not a
334+
signal that it is due. When you find a publish nobody ordered — a tag or an npm version that simply appeared —
335+
⛔ do not "repair" it with a counter-publish: file it as an incident for the maintainer.
335336

336337
**The precedent is that the mechanical channel fires with nobody deciding to use it.** The release workflow's
337338
`on: push` lane once shipped a full release candidate end to end — 69 packages to npm, tags, GitHub Releases,

docs/adr/0125-release-approval-gate-replaces-the-typed-version.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# ADR-0125: The human act that authorises a release is the environment approval, not a typed version string
22

3-
**Status**: Proposed (2026-08-20) — awaiting the maintainer's hand-merge, which is itself the acceptance act for a governed surface (Prime Directive #14). Implementation ships in the same PR: `.github/workflows/release.yml`.
3+
**Status**: Accepted (2026-08-20) — accepted by the merge that landed it on `main` ([#10150](https://github.com/objectstack-ai/objectstack/pull/10150), commit `81d1fa11d`), which is itself the acceptance act for a governed surface (Prime Directive #14). Implementation shipped in the same PR: `.github/workflows/release.yml`.
44
**Deciders**: ObjectStack Protocol Architects (maintainer ruling, 2026-08-20, on the back of the [#10146](https://github.com/objectstack-ai/objectstack/issues/10146) release failure)
55
**Builds on**: the 2026-08-07 maintainer ruling recorded in **AGENTS.md Prime Directive #15** (「版本发布必须是人工的」) and its implementation in [#6170](https://github.com/objectstack-ai/objectstack/issues/6170) (the two-lane split of `release.yml`)
66
**Supersedes**: nothing. It **re-implements** Prime Directive #15's requirement; the requirement itself is untouched and is quoted again below so no later reader has to reconstruct it.

scripts/pm/check-skill-line-ratchet.mjs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,15 @@ export const CEILINGS = new Map([
281281
// 2026-08-20, verbatim and untranslated: 「A — 抬上限到 961 (Recommended)」
282282
// (issue #10126, comment 5353111732). Headroom is 0 again by construction, and
283283
// the next author needing a line is back to compressing.
284-
['AGENTS.md', 1149],
284+
//
285+
// 1149 → 1150 (#11819): Prime Directive #15's warrant sentence described the
286+
// Version Packages PR as regenerated "on every push to main" — false since the
287+
// #11233 trigger split. The correct sentence (six-hourly schedule; push drives
288+
// the publish lane) is longer, and the whole paragraph measures zero lossless
289+
// rewrap headroom, so the correction costs one line. Maintainer ruling
290+
// 2026-08-25, verbatim and untranslated, accepting the measured +1/D1 option:
291+
// 「我看到了,你分析过了,接受你的建议」. Headroom is 0 again by construction.
292+
['AGENTS.md', 1150],
285293
// #9965: root CLAUDE.md is the other repo-root instruction file — same read
286294
// path (every seat session), same governance (Prime Directive #14). It is
287295
// structurally growth-prone in the way the ratchet is built for: it exists to

0 commit comments

Comments
 (0)