Skip to content

Commit 9a48ae8

Browse files
chore(console): move the objectui pin 0d12e95361b2 → 5fef032b1ada, so the 18.1.0 console makes one request per open for a nav entry and a page element bound to the same read (#25358)
<!-- claude-projects-attribution: {"github_login":"os-elon-musk"} --> _Requested by **Elon** · [project thread](https://claude.ai/code/project/chan_01WedDzV26nniwxv7jC88B9D?thread=cmsg_01WedDzV26nniwxv7jC88B9DEbu6pfMmLe6FjmMsBRoDAg)_ Fixes #25353 Clause-②: no Metadata-protocol: none This PR moves the console pin from `0d12e95361b2` to `5fef032b1ada`: objectui `main` at `5fef032b1ada5b86bad640637e7331e26ee5da6e`, its tip when this PR was opened. It is the pin move the maintainer's 18.1.0 ruling puts before the release cut ("卡 5 同意", 5a-B): move the pin first, then cut 18.1.0. With it, the 18.1.0 console carries objectui#13323: a navigation entry's API `dataSource` and a page element bound to the same read make one request per console open instead of two. Branch name: the harness assigned `claude/project-thread-wyb8o7`, not the repo's `claude/issue-25353-…` convention; the card's `Claim:` names this branch. No other open PR moves `.objectui-sha`. ## The diff The same four files as the precedent pin moves #25262 and #25193. The repo's own tooling wrote each one; none was edited by hand. - `.objectui-sha` and `.changeset/console-5fef032b1ada.md`: `OBJECTUI_ROOT=/home/claude/objectui OBJECTUI_NO_DEEPEN=1 bash scripts/bump-objectui.sh 5fef032b1ada5b86bad640637e7331e26ee5da6e --no-commit`, exit 0. It printed "0d12e95361b2..5fef032b1ada walks completely", "1 releasing changeset(s), 0 breaking", "objectui declared `minor`, recorded as `patch`" and "(on origin/main)". - `scripts/sdui-manifest.record.json`: `pnpm objectui:build`, then `node scripts/gen-sdui-manifest-node.mjs`, exit 0. It reported 107 components and sha256 `d1fde278ffd6…`, the same as at the old pin, so the tracked `sdui.manifest.json` is byte-identical and only its provenance record moves. `node scripts/check-sdui-manifest.mjs` passes at the new pin. - `packages/sdui-parser/objectui-lockstep.json`: `OBJECTUI_ROOT=.cache/objectui-5fef032b1ada pnpm gen:sdui-lockstep`. It reported "214 region line(s), blob 0131f27cf86d, 25 diagnostic code(s)". Only `rev`, `revDate` and `recordedAgainstPin` changed, and `pnpm check:sdui-lockstep` passes. One build note: the first `pnpm objectui:build` in this container died with `JavaScript heap out of memory` in `@object-ui/app-shell`'s `tsc` (node's default heap, 2 GB). It was re-run with `NODE_OPTIONS=--max-old-space-size=6144` and finished with "dist ready … from objectui@5fef032b1ada"; the manifest was regenerated from that complete build. ## The changeset `scripts/objectui-changeset-digest.mjs` derived it from the changesets objectui added over the range. Under ruling A (#25105) a console refresh is `patch` with `Metadata-protocol: none`, whatever objectui declared. objectui declared `minor` here (the new `ElementApiOpenScope` / `useElementApiOpen` exports of `@object-ui/react`), and the digest recorded `patch`. The range holds two non-merge objectui commits: objectui#13328 (`b911ebb4e`, the objectui#13323 fix) and objectui#13329 (`5fef032b1`, a CI gate fix that carries a release-nothing changeset). ## Choosing the pin `5fef032b1ada` is objectui `origin/main`'s tip, and `0d12e95361b2` is its ancestor. objectui CI on `5fef032b1ada`, read when this PR was opened: - Push runs Lint 39840220823, Repo Gates 39840220731, Changeset Guard 39840220743 and Changeset Release 39840220678: `success`. - Push `CI` 39840220761: `failure`, on its `Test` aggregation job alone. All 16 test shards concluded `success`; the gate read shard 15/16 (job 120038970141, completed `success` at 19:35:14Z) as still `in_progress` from the jobs API for its whole re-read window (19:39–19:45Z) and refused. That stale-read class is exactly what objectui#13329, the commit pinned here, fixes. - Scheduled `CI` on the same sha, after that run: 39872395655, 39881943452 and 39885608893, all `success`. ## Spot-check of objectui#13323 on the built console **Verdict: PASS.** One `GET` per console open for a nav entry and a page element bound to the same read, and the element draws that answer. Setup: this branch at `67d8b675`, framework built (`pnpm build --concurrency=2`, 76/76 tasks), console built at the pin (`packages/console/dist/.objectui-sha` = `5fef032b1ada5b86bad640637e7331e26ee5da6e`). Stock `examples/app-showcase` booted with `pnpm dev -- --fresh -p 38517` and signed in as the seeded admin; headless Chromium (Playwright 1.63) drove it and counted every request to the probe URL. The showcase declares no API-bound nav entry, so a throwaway fixture added two lines to the working tree for the run and was restored afterwards (`git status` clean, nothing committed): - nav entry `nav_probe_13323`, first in `showcase_app`'s navigation: `type: 'page'`, `pageName: 'showcase_contact_form'`, `visible: 'data.total >= 0'`, `dataSource: { provider: 'api', read: { url: '/api/v1/data/showcase_inquiry' } }`; - on `showcase_contact_form`, an `element:text` with the same `dataSource` and content `PROBE total=${data.total}`. | step | URL after | `GET /api/v1/data/showcase_inquiry` | element shows | nav entry | |---|---|---|---|---| | A. open `/_console/apps/showcase_app` (the landing `replace`s onto the probe page) | `…/page/showcase_contact_form` | **1** | `PROBE total=3` | drawn | | B. fresh load straight onto the probe page | `…/page/showcase_contact_form` | **1** | `PROBE total=3` | drawn | | C. `PUSH` to Capability Map through the nav | `…/page/showcase_capability_map` | 0 | n/a | drawn | | D. Back to the probe page (`POP`, a new open) | `…/page/showcase_contact_form` | **1** | `PROBE total=3` | drawn | The nav gate needs the read to draw the entry and the element needs it to draw `3`; both drew on one request in A, B and D, so the element took the answer the nav read already held. D reads again, as objectui#13323 specifies for a `POP`. Not run here: a control at the old pin (the two-request baseline), which objectui#13328's own ablations cover. ## Out of scope - No objectui source changed here, and nothing was written to objectui. - No product code, `.github/workflows/**`, `scripts/build-console.sh` or `content/docs/releases/` is in the diff. This PR is not a release act and does not touch the Version Packages PR #24876, which the release seat refreshes after this lands. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01RVrmCeThcAT38hSxtChLz4 --- _Generated by [Claude Code](https://claude.ai/code/session_01RVrmCeThcAT38hSxtChLz4)_ --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent 8a49e37 commit 9a48ae8

4 files changed

Lines changed: 20 additions & 7 deletions

File tree

‎.changeset/console-5fef032b1ada.md‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
"@objectstack/console": patch
3+
---
4+
5+
Console (objectui) refreshed to `5fef032b1ada`. Frontend changes in this range:
6+
7+
Derived from the changesets objectui declared over the range — 1 releasing of 2 changesets added across 2 non-merge commits; omitted: 1 release-nothing changeset (they ship no package code).
8+
9+
- **minor** — A navigation entry's API `dataSource` and a page element bound to the same read now make one request per console open (objectui#13323). Before, `readElementApi` shared a request o… (objectui `b911ebb4e`)
10+
11+
Metadata-protocol: none (the console refresh changes no key, value or type a metadata author writes)
12+
13+
objectui range: `0d12e95361b2...5fef032b1ada`

‎.objectui-sha‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0d12e95361b20b1eb9012f97d2d36e5fa7f14374
1+
5fef032b1ada5b86bad640637e7331e26ee5da6e

‎packages/sdui-parser/objectui-lockstep.json‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
],
77
"objectui": {
88
"repo": "https://github.com/objectstack-ai/objectui.git",
9-
"rev": "0d12e95361b20b1eb9012f97d2d36e5fa7f14374",
10-
"revDate": "2026-10-22T16:47:14+00:00",
9+
"rev": "5fef032b1ada5b86bad640637e7331e26ee5da6e",
10+
"revDate": "2026-10-22T18:39:55+00:00",
1111
"source": "packages/sdui-parser/src",
1212
"files": [
1313
"packages/sdui-parser/src/body-dialect.ts",
@@ -21,7 +21,7 @@
2121
"packages/sdui-parser/src/validate.ts"
2222
]
2323
},
24-
"recordedAgainstPin": "0d12e95361b20b1eb9012f97d2d36e5fa7f14374",
24+
"recordedAgainstPin": "5fef032b1ada5b86bad640637e7331e26ee5da6e",
2525
"grammarRegion": {
2626
"file": "packages/sdui-parser/src/parse.ts",
2727
"delimiter": "/* ---------------------- the JS literal subset (#6614) ---------------------- */",

‎scripts/sdui-manifest.record.json‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@
1111
"a pin bump without regeneration goes RED there — that is the anti-rot half of the freshness gate.",
1212
"Regenerate + re-record: pnpm objectui:build && node scripts/gen-sdui-manifest-node.mjs"
1313
],
14-
"objectuiSha": "0d12e95361b20b1eb9012f97d2d36e5fa7f14374",
14+
"objectuiSha": "5fef032b1ada5b86bad640637e7331e26ee5da6e",
1515
"source": "built-tree",
16-
"modulesRoot": ".cache/objectui-0d12e95361b2/apps/console",
16+
"modulesRoot": ".cache/objectui-5fef032b1ada/apps/console",
1717
"objectuiWorkspaceVersion": "18.0.0",
1818
"generator": "scripts/gen-sdui-manifest-node.mjs",
19-
"generatedAt": "2026-10-22",
19+
"generatedAt": "2026-10-23",
2020
"sha256": "d1fde278ffd643900aba9e8fcf834d35a9c345246709f1667ae71618eaad109c",
2121
"components": 107
2222
}

0 commit comments

Comments
 (0)