Repository navigation
chore(objectui): bump the console pin to a58626c88dc8 (carries objectui#11670 and #11669) - #22015
Conversation
…onsole changeset) Written by scripts/bump-objectui.sh a58626c88dc85954bd0af24f16ebb69454c03eee --no-commit. Claude-Session: https://claude.ai/code/session_01VF48aw8RPG6wzDnMgp6rtw Co-authored-by: Claude <noreply@anthropic.com>
…parser lockstep at a58626c88dc8 node scripts/gen-sdui-manifest-node.mjs over .cache/objectui-a58626c88dc8 (pnpm objectui:build), and pnpm gen:sdui-lockstep against the same tree. Claude-Session: https://claude.ai/code/session_01VF48aw8RPG6wzDnMgp6rtw Co-authored-by: Claude <noreply@anthropic.com>
…for a58626c88dc8 Claude-Session: https://claude.ai/code/session_01VF48aw8RPG6wzDnMgp6rtw Co-authored-by: Claude <noreply@anthropic.com>
…ns at a58626c88dc8 54 asserting citations re-read against objectui 0abd4f9f8769..a58626c88dc8: moved anchors re-pointed with their text byte-identical, counts re-taken by each record's own method, the six migration entries' corpus counts re-taken with git grep -o -F, and registry.ts regenerated with gen:migration-registry. Claude-Session: https://claude.ai/code/session_01VF48aw8RPG6wzDnMgp6rtw Co-authored-by: Claude <noreply@anthropic.com>
…m to asserting records Claude-Session: https://claude.ai/code/session_01VF48aw8RPG6wzDnMgp6rtw Co-authored-by: Claude <noreply@anthropic.com>
….span describe's pin pnpm --filter @objectstack/spec check:generated --fix (check:docs was the one stale artifact). Claude-Session: https://claude.ai/code/session_01VF48aw8RPG6wzDnMgp6rtw Co-authored-by: Claude <noreply@anthropic.com>
📓 Docs Drift CheckThis PR changes 2 package(s): 2 hand-written doc(s) NAME something this change touched and may need an implementation-accuracy re-verification:
⛔ 6 release-owned page(s) also name something this change touched. These are read-only:
What this run could not see
Coarse fallback — 140 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): Which tree this was computed onThis run read A worktree cut from an older # while this PR is open — GitHub drops the merge commit once it closes
git fetch origin 9ed99b3475b1885f5a4a2592dab6e2773a892825 && git checkout 9ed99b3475b1885f5a4a2592dab6e2773a892825
# afterwards, rebuild it from the two parents, which stay fetchable
git fetch origin 1fb274e61cfff12ede54963d779acdfd079be318 b86e6f2646d430231aa00cb6b400d836be17bded && git checkout -B drift-repro 1fb274e61cfff12ede54963d779acdfd079be318 && git merge --no-ff b86e6f2646d430231aa00cb6b400d836be17bded
node scripts/docs-audit/affected-docs.mjs --json 1fb274e61cfff12ede54963d779acdfd079be318
|
Fixes #21996
Clause-②: no
This moves the bundled Console's objectui pin from
0abd4f9f8769(#21807, PR #21827) toa58626c88dc85954bd0af24f16ebb69454c03eee, which was objectuimainwhen this run started. The new pin carries5ba255538a(objectui#11670): the Studio flow designer saves a screen field'sMin/Maxas numbers. That is the commit the timing clause of #21898 (PR #21974) waits on. The range also carriesc3623eb1(objectui PR 11669, Studio's shared picklists).The bump follows the repo's own procedure (
scripts/bump-objectui.sh, thenpnpm objectui:buildandnode scripts/gen-sdui-manifest-node.mjs) and the gates it derives. It adds no step to that procedure. Every file below is one the procedure or a gate wrote, and nothing else rides here.⛔ This is not a release act. Version Packages PR #21988 is untouched. It edits
packages/console/CHANGELOG.mdandpackages/console/package.json, and this diff edits neither. The console's release input is the new.changeset/console-a58626c88dc8.md.Range
git ls-remote origin refs/heads/mainreada58626c88dc85954bd0af24f16ebb69454c03eeeat 2026-10-06T15:32:48Z, the same sha the dispatch read at 15:08Z.compareon objectstack-ai/objectui proves containment (base...head, head = the new pin):5ba255538a...a58626c88d:status: ahead,ahead_by: 18,behind_by: 0, merge base5ba255538a1115e2dc2d52fa094ecf491621a5fe. The pin contains objectui#11670.c3623eb1...a58626c88d:ahead, 15 ahead, 0 behind.0abd4f9f87...a58626c88d:ahead, 36 ahead, 0 behind.0abd4f9f8769..a58626c88dc8has 36 commits, 0 merges and 252 changed paths.major. Three carry the author's breaking annotation. The highest declared level isminor, so the console changeset isminor. The script takes the highest level objectui itself declared over OLD..NEW. These counts are the bump's own digest output.!.git log --format='%h %s' 0abd4f9f8..a58626c88 | grep -E '^[0-9a-f]+ [a-z]+(\([^)]*\))?!:'matches nothing (exit 1).mainreads834c5594b, four commits past the pin (objectui#11685, objectui PR 11724, objectui#11682 and objectui#11687). This PR does not carry them.Declared-breaking entries and the ADR-0087 disposition
The script wrote its
adr-0087: TODOplaceholder into the console changeset. It is answerednot-required (no-migration-prescription), in the wording the previous bumps used.check-adr-0087-registration --base origin/mainreports "1 declared-breaking changeset(s), each carrying an ADR-0087 disposition".check-changeset-no-major --base origin/mainexits 0.Each entry is objectui's own package surface:
eb4552e71): objectui's@object-ui/typesfaces refuselabelon ametric-cardin an objectuidashboardnode'swidgets[]slot.89cc738da): inside a widget's legacycomponentenvelope, ametric-cardis judged by the slot's component arm alone.metric-cardis not a member of@objectstack/spec'sPageComponentTypeand has noComponentPropsMaprow.typevocabulary is the chart types (metric,kpiand the rest).metric-cardnode, and the regeneratedsdui.manifest.jsonhas nometric-cardentry.48c82c9d5):@object-ui/app-shell'sRecentItembecomes a union, andaddRecentItemstops taking a label for an object, dashboard, page or report entry. No code here imports@object-ui/app-shell. The only code here that names theui.recentpreference is the SQL driver's tests, which store the row as an opaque value.What changed here (22 files, +491 / -161)
.objectui-shascripts/bump-objectui.sh a58626c88dc85954bd0af24f16ebb69454c03eee --no-commit.changeset/console-a58626c88dc8.mdcheck-adr-0087-registration,check:objectui-changesetsdui.manifest.json,scripts/sdui-manifest.record.jsonnode scripts/gen-sdui-manifest-node.mjsover.cache/objectui-a58626c88dc8check-sdui-manifest.mjspackages/sdui-parser/objectui-lockstep.jsonpnpm gen:sdui-lockstepagainst the same treecheck:sdui-locksteppackages/spec/src;migrations/registry.tsviagen:migration-registrycheck:objectui-pin-citations.changeset/objectui-pin-citations-a58626c88dc8.md@objectstack/specpatchcheck:published-files/ Check Changeset (the shipped describes name the pin)content/docs/references/ui/view.mdxcheck:generated --fixcheck:docsgit fetch origin mainthere, with the target sha passed explicitly. The range walked completely without a deepen. The checkout was read and fetched only.f95d406a584e…toe0654735a318….record:detailssectionsgained a sentence in its description. A section that names a field group now takes the group'svisibleWhenas well (objectui#11630).modulesRoot. objectui's workspace version stays 17.7.0.0131f27cf86d), 25 diagnostic codes and containment predicate76c18fb95d1f. All are unchanged, so no port is owed.0abd4f9f8and intersected with the range's 252 changed paths. Every anchor in a changed file was mapped throughgit diff -U0 0abd4f9f8 a58626c88and its text compared at both pins.ObjectKanban.tsx,KanbanImpl.tsx,ObjectTree.tsx,ObjectTimeline.tsx,record-details.tsx,action-group.tsx,action-menu.tsx,static-params.ts,MetricWidget.tsx,MetricCard.tsx,form.tsx,plugin-kanban.mdxand theen/zh/depacks.git diff --quiet).FormField.spandescribe changes its sha only:WIDE_FIELD_TYPES, the field-type alias table andspanLadderForare byte-identical.keyboardNavigationhit lines (15, against 3 forschema.editable),ObjectKanban.tsx'squickAdd/onQuickAdd(2 each, against 11 foronCardClick), and theElementDataSourceGateoccurrences in the fivesrc/index.tsxshells (0, 3, 3, 3 and 4).git grep -o -F. That method first reproduced every0abd4f9f8number: 7650 files,objectstack17390,@objectstack/spec7209,timeout1360,RuntimeConfig293,resourceLimits2,useState2478,window4194,period238,interval195,metrics401,Span508,SpanSchema57,TTL182 andtenant1318.objectstack17468,@objectstack/spec7246,timeout1431,RuntimeConfig299,resourceLimits2 (the same twopackages/app-shellhits),useState2491,window4255,period247,interval200,metrics401,TTL184 andtenant1319.plugin-lifecycle-advanced.zod.ts,tracing.zod.tsandmetrics.zod.ts, plus every named key. The exceptions areSpan/SpanSchema, which read 509 / 57. The one newSpanhit is acolSpan.No example, test or gate needed adapting, and no code changed outside generated records, citations and changesets.
Console build (the local Console Pin Gate equivalent)
Both steps ran under the verify lock.
turbo run build --filter=@objectstack/client --filter=@objectstack/spec --filter=@objectstack/sdui-parserran 33 tasks and exited 0 in 2m05s.pnpm objectui:buildexited 0 in 7m03s on the shared box.OBJECTUI_ROOTpointed at a scratch repository holding only the pin commit, so the build'sgit worktree addregistered nothing in the sibling objectui checkout.check:console-shaandcheck:console-injectionexit 0 against that dist.Gates and tests (head
b86e6f264)node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstackderived 127 commands from the 22-path diff. A throwaway merge onto currentmain(1bc6ca1d3) derives the same 127.b86e6f264after a full workspace build (turbo run build --filter=!@objectstack/docs), each exit code written to disk. All 127 exit 0.--ranreports "127 derived, 127 run, 0 NOT-MEASURED, 0 UNRUN", with every exit code recorded.check:skill-examplesandcheck:dual-build-cjs-loadsanswered PREREQUISITE NOT MET (exit 3).check:dts-closureandcheck:docs-transcript-driftread apackages/spec/distthat a concurrent build of mine was rewriting. All four are green on the rerun above.check:objectui-pin-citations --verify-anchorsreads the sibling checkout at the pin. It reports "54 asserting objectui pin citation(s) match .objectui-sha (a58626c88)" and "7 anchor content assertion(s) verified against objectui at a58626c88".check:sdui-lockstepreports "this copy is byte-identical to objectui@a58626c88dc8".check-sdui-manifestreports "recorded at the live objectui pin a58626c88dc8… @object-ui 17.7.0 is the version objectui a58626c88dc8… declares".@objectstack/spec.vitest run --project localpassed 619 files: 18485 tests, 1 todo.typecheckexits 0.@objectstack/sdui-parser. 14 files and 225 tests pass, andtypecheckexits 0.@objectstack/lintsrc/validate-jsx-pages.production-witness.test.ts: 5 passed.@objectstack/metadata-protocolsrc/protocol.runtime-authoring-gate.test.ts: 70 passed.@objectstack/cliunit tiersrc/utils/sdui-manifest.test.ts,src/utils/console.sha-drift.test.tsandtest/validate-build-gate-parity.test.ts: 3 files, 87 passed.test/jsx-gate-manifest-notice.e2e.test.tsspawns the CLI) is declared to CI.eslint --no-inline-config --format jsonover the 15 changed TS files reports 15 files, 0 errors and 0 warnings.**/*.{ts,tsx,mts,cts,js,jsx,mjs,cjs}(eslint.config.mjs:971).:328), so this diff cannot move a verdict on an untouched file.pnpm lintis left to CI.Acceptance notes
properties.params.ui/component.zod.ts's action-container member docblock still lists that read under "Read, and refused anyway". The docblock is in the historical spelling, measured at.objectui-shapin2e818d0b51ec.KanbanConfig.summarizeField(objectui#11629): each kanban column header totals it. The key is declared inui/view.zod.ts, and the liveness ledger carries no row for it, so nothing here is owed.features.audiencePosturefrom/api/v1/auth/config(objectui#11691, objectui#11705). This repo's auth plugin serves that key (auth-manager.ts,getPublicConfig) and servesGET /auth/bootstrap-status, so that seam holds.mainmoved four commits past this branch's base (f0022c46c..1bc6ca1d3). None of them touches a file this diff touches, andgit merge-tree --write-tree HEAD origin/mainis clean. No merge was made; the merge queue rebuilds on the currentmain.os-justin), and the report comment on chore(objectui): bump the console pin past objectui5ba255538a— it carries objectstack-ai/objectui#11670, which unlocks #21898 (PR #21974, ACCEPTed) #21996.Generated by Claude Code