Skip to content

Commit 9ebdabb

Browse files
objectstack-fleet[bot]os-steveclaude
authored
docs(skills): name pnpm console:build where two internal skills still prescribed the retired objectui:build (#26536)
<!-- claude-projects-attribution: {"github_login":"os-steve"} --> _Requested by **Steve** · [project thread](https://claude.ai/code/project/chan_01FdL1XeUyvVNxLreh3F4Qi9?thread=cmsg_01FdL1XeUyvVNxLreh3F4Qi9LdoRL9uaH5B2AKthTwuUWi)_ Fixes #26035 Ruling-ref: 6435329940 Clause-②: no Metadata-protocol: none ## 维护者速读 - 改了什么:两个仓内技能(checklist-test、dogfood-verification)里仅剩的两处还在教人跑已退役脚本 `pnpm objectui:build` 的句子,改成仓内流程:在仓库根目录跑 `pnpm console:build`,改 Console 就改 `ui/` 下的源码。两文件行数不变。 - 为什么改:objectui pin(`.objectui-sha`、`scripts/build-console.sh`、`objectui:*` 脚本)已从 main 退役,这两行让每次 checklist 运行和 dogfood 会话去跑一个不存在的脚本。裁决 6435329940 字母 A。 - 风险与回滚:纯措辞,不动任何代码或门禁;回滚即 revert 本 PR。 - 先看:`.claude/skills/dogfood-verification/SKILL.md` L90–91(一句话跨两行),再看 `.claude/skills/checklist-test/SKILL.md` L69。 - 两分钟验证:`git grep -nE "objectui:(build|refresh|bump|clean)" -- .claude/skills` 预期零命中;`pnpm console:build` 预期以 `@objectstack/console dist ready` 结束。 - 需要你做的:这是受管面(`.claude/**`,Tier H):由 GOVERNED_APPROVERS 批准后落地;本 PR 保持 draft,不开 auto-merge。 ## What changes Slice 1 of the card, exactly the two lines the ruling names (both re-read on `origin/main` at `d2ca7079` first; the card's `AGENTS.md` block and the `lint.yml` comment are already gone there): - `.claude/skills/checklist-test/SKILL.md` L69: the `browser` / `mixed` planning bullet now says the Console dist is built with `pnpm console:build` at the repo root, with the source under `ui/`, instead of `pnpm objectui:build` from the pinned `.objectui-sha`. - `.claude/skills/dogfood-verification/SKILL.md` L90–91: the drift-remedy sentence now names `pnpm console:build` (rebuild from this workspace's `ui/` Console source; edit the Console under `ui/`). The `objectui:refresh` clause is gone. The sentence spans two physical lines, so L91 carries the second half of the same rewritten parenthetical; nothing else on it changed. Line counts are unchanged (238 and 148): `check:pm-skill-ratchet` holds `checklist-test/SKILL.md` at ceiling 238 with headroom 0, so the rewrite had to fit the same line. ## Why The objectui pin was retired when the Console moved into this workspace: `origin/main` has no `.objectui-sha`, no `scripts/build-console.sh`, and the root manifest's only console script is `console:build` (`turbo run build:dist --filter=@objectstack/console`). Every checklist run and dogfood session reads these two lines and was told to run a script that no longer exists, loud only as a pnpm "command not found" after the agent had already planned around it. Slices 2 and 3 of the card (PR #26052, PR #26063) rewrote the ungoverned docs and the CLI remedy strings; this is the governed remainder. ## Tests No code changed; no test file is touched. The two skills' examples still run: <details><summary>pnpm console:build, this worktree at 153be45, under scripts/pm/os-verify-lock.sh</summary> ``` NODE_OPTIONS=--max-old-space-size=4096 pnpm console:build --concurrency=2 @objectstack/console:build:dist: ✓ @objectstack/console dist ready (80844 KB) from ui/apps/console, with the tracked sdui.manifest.json Tasks: 71 successful, 71 total Time: 14m7.542s os-verify-lock: VERDICT command-exit 0 · held the lock 849s (14m09s) · waited 0s ``` Cold worktree (fresh `pnpm install --frozen-lockfile`, 58.7 s), shared 4-core box; the wall figure is a shared-box reading, not an idle-box one. `packages/console/dist/index.html` present afterwards. </details> ## Acceptance notes - Acceptance as the card's: `git grep -nE "objectui:(build|refresh|bump|clean)" -- .claude/skills` on the branch prints nothing (exit 1); on `origin/main` `d2ca7079` it printed exactly the two lines above. - Left in place, outside the two named lines (noted, not filed; the seat decides whether a sibling slice carries them): the surrounding dogfood-verification bullets (L76–L93) still describe the pin route as live — the `/_console` UI "is a vendored objectui build pinned by `.objectui-sha`", `build-console.sh` stamping `packages/console/dist/.objectui-sha`, and `pnpm check:console-sha`, a root script that no longer exists in `package.json`. The stamp-drift refusal and `OS_ALLOW_CONSOLE_DRIFT=1` themselves still exist in `packages/cli/src/utils/console.ts` (slice 3 kept that path and re-pointed its remedy), so those two sentences are not wrong, only the pin-as-live framing around them. The grep acceptance does not reach any of this because none of it names an `objectui:*` script. - `checklist-test/SKILL.md` L68 still says "vendored console dist"; `pnpm console:build` does copy the built Console into `packages/console/dist/`, so the phrase stays accurate. ## Verification Derived gate families: `node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstack` printed 16 families; each ran from the printed command with its exit captured before any pipe, all exit 0; `--ran` reconciliation: 16 derived, 16 run, 0 NOT-MEASURED. <details><summary>the 16 families and their exits</summary> ``` node scripts/check-closing-keyword-parity.mjs :: exit 0 node scripts/check-closing-keyword-parity.mjs --self-test :: exit 0 node scripts/check-comment-mask-corpus.mjs :: exit 0 node scripts/pm/check-harness-current.mjs --self-test :: exit 0 pnpm --filter @objectstack/lint run check:doc-formula-expressions :: exit 0 pnpm check:agent-test-spelling :: exit 0 pnpm check:cross-package-test-inputs :: exit 0 pnpm check:doc-authoring :: exit 0 pnpm check:driver-memory-census :: exit 0 pnpm check:gitlink-declared :: exit 0 pnpm check:nul-bytes :: exit 0 pnpm check:pm-governed-merges :: exit 0 pnpm check:pm-skill-ratchet :: exit 0 pnpm check:refd-timer-probe :: exit 0 pnpm check:skill-frame-sync :: exit 0 pnpm check:watch-hint-literal :: exit 0 ✓ dispatch-gates --ran: 16 derived famil(ies) accounted for — 16 run, 0 NOT-MEASURED ✓ check-skill-line-ratchet: .claude/skills/checklist-test/SKILL.md is 238 lines (ceiling 238; headroom 0). ✓ check-skill-line-ratchet: .claude/skills/dogfood-verification/SKILL.md is 148 lines (ceiling 157; headroom 9). ``` </details> Also run: `node scripts/check-commit-card-trailers.mjs --range origin/main..HEAD` (1 commit, no card relation, no model identifier in the trailer pair). Repo-wide `pnpm lint` and the rest of the farm are CI's run on this PR. Governance: this diff touches `.claude/**` (Tier H). The ruling's yes spends the `CONTRACT_REVIEW_TIER` contract review the card asked for; the PR stays draft with no auto-merge and lands by a GOVERNED_APPROVERS approval. `skip-changeset`: `.claude/**` publishes nothing. ## Human Minimum Each item is one rule from [CONTRIBUTING.md › Human Minimum](https://github.com/objectstack-ai/objectstack/blob/main/CONTRIBUTING.md#human-minimum), which links the AGENTS.md text that states it. - [x] 1. Schemas start as Zod; `packages/spec` holds no runtime logic. (not touched) - [x] 2. Every name I added uses the casing for its kind. (no names added) - [x] 3. No formatter ran; `pnpm lint` passes. (no formatter ran; lint is CI's run here) - [x] 4. One issue, one branch off an up-to-date `main`, one pull request. - [x] 5. A change that publishes carries a changeset, and both declaration lines are filled in here and in the changeset. (publishes nothing; `skip-changeset`) - [x] 6. `packages/spec` touched: its generated artifacts are regenerated and committed. (not touched) - [x] 7. No hand edits to `content/docs/references/`, `packages/*/CHANGELOG.md` or `content/docs/releases/`. - [x] 8. Title, body and comments are in English. (the 维护者速读 block is the maintainer's Chinese digest the dev contract requires) - [x] The *Before Submitting* list in CONTRIBUTING.md is done. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01ADHkmTQqaSwGFt1FkfF8pF --- _Generated by [Claude Code](https://claude.ai/code/session_01ADHkmTQqaSwGFt1FkfF8pF)_ Co-authored-by: os-steve <steve@objectstack.ai> Co-authored-by: Claude <noreply@anthropic.com>
1 parent 9bfd6a6 commit 9ebdabb

2 files changed

Lines changed: 3 additions & 3 deletions

File tree

‎.claude/skills/checklist-test/SKILL.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ blocked / not-run,⛔ 不进标题计数;与 blocked 的分界是 fixture 债 vs
6666
- **全是 `api` / `build` / `cli`** → 不需要 console 构建。把框架拉起来
6767
(`objectstack dev`),驱动 REST/CLI。快(分钟级)。
6868
- **有任何 `browser` / `mixed`** → 需要 vendored console dist。它与 showcase 工作区
69-
闭包**分开**构建(`pnpm objectui:build`,从钉住的 `.objectui-sha` 构建);它存在
69+
闭包**分开**构建(在仓库根目录跑 `pnpm console:build`,源码在 `ui/`,改 Console 就改那里);它存在
7070
之前,第一次启动对 `/_console/` 是 404(dogfood §2 —— 真实前置条件,记录它,不要
7171
伪造 block)。给构建留预算(冷 monorepo 上 ~10–30 分钟);它占掉大头,浏览器驱动
7272
只是分钟级。

‎.claude/skills/dogfood-verification/SKILL.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,8 +87,8 @@ dev 工作树、dev-server 端口、preview 浏览器全是**共享的**:并行
8787
进 `packages/console/dist/.objectui-sha`;当这个章与仓库的 `.objectui-sha` pin
8888
不一致时,`os dev` **拒绝挂载 `/_console`** 并打印补救 —— `/_console/` 404,横
8989
幅不再宣传 console URL。那是要修的前置条件,不是产品缺陷:跑
90-
**`pnpm objectui:build`**(在*钉住的* SHA 上重建 —— `objectui:refresh` 会把
91-
pin 重新 bump 到你本地 `../objectui` 的 HEAD)再重启。`pnpm check:console-sha`
90+
**`pnpm console:build`**(在仓库根目录跑,从本仓 `ui/` 下的 Console 源码重建;
91+
改 Console 就改 `ui/` 下的源码)再重启。`pnpm check:console-sha`
9292
不启动也能报同一比较。`OS_ALLOW_CONSOLE_DRIFT=1` 是故意启动陈旧 bundle —— 那之
9393
后你做的每个 console 观察,描述的都是一个仓库没有钉住的 commit。
9494

0 commit comments

Comments
 (0)