Skip to content

Commit a3d7588

Browse files
chore(objectui): bump the console pin to db11afd (carries objectui#11119, the objectui#11105 fix) (#20706)
Fixes #20638 Clause-②: no Bumps the console pin: `.objectui-sha` `dd3f7e1be356` -> `db11afd4967c` (objectui `origin/main` HEAD at bump time, on main). The pin ships `@object-ui/console` 17.6.0 (`apps/console/package.json` at the pin and `@object-ui/core` workspace version both 17.6.0; `npm view @object-ui/console@17.6.0 version` answers 17.6.0). ## Containment (objectui `merge-base --is-ancestor C db11afd`, full clone, not shallow) | commit | subject | result | |---|---|---| | `a5841be351` | flow designer shows a connector action's description (objectui#11028) | exit 0, contained | | `99878d8e3a` | validateTree no longer calls a declared bind unknown (objectui#11008) | exit 0, contained | | `49f76725aa` | matrix report with columns draws its declared chart (objectui#10964) | exit 0, contained | | `ae582b70a` | number field useGrouping (objectui#11026) | exit 0, contained | | `5b2ea17570` | Studio previews show authored descriptions and labels (objectui#11027) | exit 0, contained | | `3100bef65c` | server-grouped grid selects field names (objectui#11105, PR #11119) | exit 0, contained | | control `dd3f7e1be3` (old pin) | | exit 0 | The target is objectui `origin/main` HEAD (`git branch -r --contains` lists `origin/main`). ## What changed - `.objectui-sha`, `sdui.manifest.json`, `scripts/sdui-manifest.record.json` (via `scripts/gen-sdui-manifest-node.mjs`, no arguments: the `--objectui-version` route is retired per that script), and `.changeset/console-db11afd4967c.md` (written by `scripts/bump-objectui.sh`, minor). - `pnpm objectui:build` at the new pin built the console dist (64404 KB) with no API break against framework code. ## Follow-up (pushed on this branch, two commits, written 2026-09-29T20:01Z) Requested by the PM seat after the first report: the two gates that sat outside the first file surface. - `packages/sdui-parser/objectui-lockstep.json` re-recorded with `pnpm gen:sdui-lockstep` against `db11afd4967c`; `pnpm check:sdui-lockstep` now exits 0. - The 49 spec sources that asserted the old pin were re-measured, not re-labelled: each anchor mapped through the `dd3f7e1be356..db11afd` diff and re-read, hashes and counts re-taken with the method each record names, and only then the pin and the moved numbers updated. Files: `component.zod.ts`, `component.test.ts`, `view.zod.ts`, `dataset.zod.ts`, `functional-completeness.ts`, `api-methods-batch-conformance.test.ts`, six `migrations/entries/semantic/18.*` files and the regenerated `migrations/registry.ts`. `pnpm --filter @objectstack/spec run check:objectui-pin-citations` exits 0 (49 asserting citations match, 7 anchor content assertions verified). - `content/docs/references/ui/view.mdx` regenerated with `gen:docs`: the `FormField.span` describe names the pin, so its sha moved. This is the only non-comment text change; no schema or behaviour moved. - One claim was falsified, not just moved: objectui#5157 closed `ObjectMapConfigSchema` with `.strict()`, so the `ListMapConfigSchema` record in `view.zod.ts` no longer holds when it says the renderer's schema is a plain `z.object` that parses an undeclared key clean. The three anchors were re-pointed and the two false sentences were qualified in the comment. That prose wants a human read. - These edits ship inside published text, so `.changeset/objectui-pin-citations-db11afd4967c.md` carries an `@objectstack/spec` patch (commit `d8bac3877d`). ## Resolved since the first report - **ADR-0087 disposition, the maintainer's ruling** (takeover claim `5903537467` on #20638): `.changeset/console-db11afd4967c.md` now carries `adr-0087: not-required (no-migration-prescription)`, worded as in #20436. - The diff moves the pin and what travels with it, and adds, removes or renames no ObjectStack-authorable key. - The pin-citation re-measure changes describe and migration-entry text only. - The 6 declared-breaking entries are objectui's own surfaces (`@object-ui/types`, `@object-ui/core`, `@object-ui/plugin-dashboard`). - `check-adr-0087-registration --base origin/main` exits 0. - **Base:** `origin/main` `7053333e1e` merged at `ef6276c0e9` through `scripts/pm/os-regen-merge.sh`. Only `packages/spec/src/migrations/registry.ts` overlapped; it text-merged, and `check:migration-registry` reads it current. - **The two local NOT MEASURED gates now run green:** `check:dual-build-cjs-loads` and `check:type-check-debt` both exit 0 after a whole-workspace build. ## Boot at the new pin - `scripts/build-console.sh` at `db11afd4967c`, with this tree's client and spec injected and the canary present. `assert-console-spec-injection` passes: 105 of 145 injected-only descriptions present, all 160 published-only absent. `chunk-membership` reads `client` in `vendor-objectstack`. - `examples/app-showcase` booted with `objectstack dev --ui --fresh --no-seed-admin`; `bootstrap-status` read `hasOwner: false`. - Headless Chromium opened `/_console/setup` and submitted the owner form. `bootstrap-status` flipped to `hasOwner: true`, and the session is the new owner (`platform_admin`, `org_owner`). The wizard landed on `/_console/home`, with Showcase and Setup listed. - Signed in again through `/_console/login`: Showcase opens its Capability Map html page, and Setup opens System Overview. 0 page errors, 0 `TypeError`, 0 5xx. The only 404 is `GET /api/v1/usage/storage`, as at the old pin. ## Governed surface None of the 20 changed paths is a row of `GOVERNED_SURFACES` in `scripts/pm/check-governed-merges.mjs` (rows: `docs/adr/`, `.claude/`, `skills/`, `AGENTS.md`, `CLAUDE.md`, `docs/NORTH-STAR.md`). No release act performed. Gates at head `ef6276c0e9`: 125 derived, 125 run, 0 NOT-MEASURED, 0 unrun; all 125 exit 0. `packages/spec` tests: 16991 passed (576 files). `sdui-parser`: 199 passed. Spec and sdui-parser typecheck clean. --- 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01VDtqoecgES7ScQYGbFVDRv --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent 1bcba27 commit a3d7588

20 files changed

Lines changed: 565 additions & 166 deletions

‎.changeset/console-db11afd4967c.md‎

Lines changed: 145 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
'@objectstack/spec': patch
3+
---
4+
5+
The spec's objectui citations, and the shipped description text that names the `.objectui-sha` pin (the `FormField.span` describe and six migration-entry descriptions), are re-measured against the new console pin, objectui `db11afd4967c`.
6+
7+
Clause-②: no
8+
9+
One claim was falsified rather than moved: `ObjectMapConfigSchema` is `.strict()` at the new pin (objectui#5157), so the `ListMapConfigSchema` record now says the renderer's schema warns on an undeclared key instead of parsing it clean. No key, default, enum member or export moves.

‎.objectui-sha‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
dd3f7e1be3561d63267d7162f3fc0ac52e72834d
1+
db11afd4967cd9d39381c5e21dc2deec9d706204

‎content/docs/references/ui/view.mdx‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ Column footer summary configuration
200200
| **required** | `boolean` | optional | Required override |
201201
| **hidden** | `boolean` | optional | Hidden override |
202202
| **colSpan** | `integer` | optional | Absolute column span (1-4). The renderer clamps it to the form grid's current column count, so the cell starts at a real column boundary at every surface width and never overflows (`colSpan: 4` in a 3-column grid renders as 3); a `colSpan` within the column count renders as authored, and `colSpan: 1` emits no span class at all. |
203-
| **span** | `Enum<'auto' \| 'full'>` | optional (default: `"auto"`) | Relative field width. 'auto' (default — omit it): the renderer sizes the field from its widget type × the current column count — at the pin this repo builds against (`.objectui-sha` = `dd3f7e1be356`), only textarea, markdown, html, richtext and repeater resolve to the full column count (repeater reaches it through the wide `field:grid` widget it maps to). 'full': resolves to the form grid's full column count. How far down the container-query tiers that span is emitted is the renderer's, not this key's: at that same pin the renderer emits one clamped col-span class per multi-column tier (`@md:col-span-2 @2xl:col-span-3` for a 3-column grid), so the field takes the whole row at every multi-column tier, not just the widest. |
203+
| **span** | `Enum<'auto' \| 'full'>` | optional (default: `"auto"`) | Relative field width. 'auto' (default — omit it): the renderer sizes the field from its widget type × the current column count — at the pin this repo builds against (`.objectui-sha` = `db11afd4967c`), only textarea, markdown, html, richtext and repeater resolve to the full column count (repeater reaches it through the wide `field:grid` widget it maps to). 'full': resolves to the form grid's full column count. How far down the container-query tiers that span is emitted is the renderer's, not this key's: at that same pin the renderer emits one clamped col-span class per multi-column tier (`@md:col-span-2 @2xl:col-span-3` for a 3-column grid), so the field takes the whole row at every multi-column tier, not just the widest. |
204204
| **widget** | `string` | optional | Custom widget/component name (overrides type-based inference) |
205205
| **language** | `string` | optional | Code editor language (for type=code) |
206206
| **keyField** | `{ field?: string; label?: string \| Record<string, string>; placeholder?: string \| Record<string, string>; helpText?: string \| Record<string, string>; … }` | optional | Key column config for record-typed fields |
@@ -365,7 +365,7 @@ View filter rule
365365
| **required** | `boolean` | optional | Required override |
366366
| **hidden** | `boolean` | optional | Hidden override |
367367
| **colSpan** | `integer` | optional | Absolute column span (1-4). The renderer clamps it to the form grid's current column count, so the cell starts at a real column boundary at every surface width and never overflows (`colSpan: 4` in a 3-column grid renders as 3); a `colSpan` within the column count renders as authored, and `colSpan: 1` emits no span class at all. |
368-
| **span** | `Enum<'auto' \| 'full'>` | optional (default: `"auto"`) | Relative field width. 'auto' (default — omit it): the renderer sizes the field from its widget type × the current column count — at the pin this repo builds against (`.objectui-sha` = `dd3f7e1be356`), only textarea, markdown, html, richtext and repeater resolve to the full column count (repeater reaches it through the wide `field:grid` widget it maps to). 'full': resolves to the form grid's full column count. How far down the container-query tiers that span is emitted is the renderer's, not this key's: at that same pin the renderer emits one clamped col-span class per multi-column tier (`@md:col-span-2 @2xl:col-span-3` for a 3-column grid), so the field takes the whole row at every multi-column tier, not just the widest. |
368+
| **span** | `Enum<'auto' \| 'full'>` | optional (default: `"auto"`) | Relative field width. 'auto' (default — omit it): the renderer sizes the field from its widget type × the current column count — at the pin this repo builds against (`.objectui-sha` = `db11afd4967c`), only textarea, markdown, html, richtext and repeater resolve to the full column count (repeater reaches it through the wide `field:grid` widget it maps to). 'full': resolves to the form grid's full column count. How far down the container-query tiers that span is emitted is the renderer's, not this key's: at that same pin the renderer emits one clamped col-span class per multi-column tier (`@md:col-span-2 @2xl:col-span-3` for a 3-column grid), so the field takes the whole row at every multi-column tier, not just the widest. |
369369
| **widget** | `string` | optional | Custom widget/component name (overrides type-based inference) |
370370
| **language** | `string` | optional | Code editor language (for type=code) |
371371
| **keyField** | `{ field?: string; label?: string \| Record<string, string>; placeholder?: string \| Record<string, string>; helpText?: string \| Record<string, string>; … }` | optional | Key column config for record-typed fields |

‎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": "dd3f7e1be3561d63267d7162f3fc0ac52e72834d",
10-
"revDate": "2026-09-28T09:02:32Z",
9+
"rev": "db11afd4967cd9d39381c5e21dc2deec9d706204",
10+
"revDate": "2026-09-29T18:01:28+00:00",
1111
"source": "packages/sdui-parser/src",
1212
"files": [
1313
"packages/sdui-parser/src/body-dialect.ts",
@@ -22,7 +22,7 @@
2222
"packages/sdui-parser/src/validate.ts"
2323
]
2424
},
25-
"recordedAgainstPin": "dd3f7e1be3561d63267d7162f3fc0ac52e72834d",
25+
"recordedAgainstPin": "db11afd4967cd9d39381c5e21dc2deec9d706204",
2626
"grammarRegion": {
2727
"file": "packages/sdui-parser/src/parse.ts",
2828
"delimiter": "/* ---------------------- the JS literal subset (#6614) ---------------------- */",

‎packages/spec/src/data/api-methods-batch-conformance.test.ts‎

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,14 +61,24 @@ const SINGLE_RECORD_WRITE_ONLY: Record<string, string> = {
6161
// `revoked` on ONE key. The multi-select surface this rule protects does not
6262
// exist for API keys, and the shape a future one would take does not need
6363
// `bulk` either — both read off the console build this release pins
64-
// (`.objectui-sha` = `dd3f7e1be`, `packages/plugin-grid`; re-measured at
65-
// that pin, 2026-09-28 — previously measured at `f8a9d0fb0`, `62597c588`,
64+
// (`.objectui-sha` = `db11afd49`, `packages/plugin-grid`; re-measured at
65+
// that pin, 2026-09-29. On the hop off `dd3f7e1be`, `ObjectGrid.tsx` changed
66+
// again (105 insertions, 16 deletions: objectui#11068's grid keys,
67+
// objectui#11105's server-grouped column-name fix, objectui#10993's title
68+
// locale map among them), none of it inside the selection block, which only
69+
// MOVED by +32: `ObjectGrid.tsx:4637-4664` here (`4605-4632` at
70+
// `dd3f7e1be`), still hashing to
71+
// `c88443302d40c2db739ddb235470bafa29056e2e` (hash-object of the block),
72+
// re-READ with the same reading below; `hooks/useBulkExecutor.ts` is
73+
// byte-identical to `dd3f7e1be` and its `:298-303` still hashes to
74+
// `01083348330f10a201cdf1078b4c21c236402b6a`. Previously measured at
75+
// `dd3f7e1be`, `f8a9d0fb0`, `62597c588`,
6676
// `87af769e9`, `53ded82bf`, `a472b0716`, `00d3f09c5`, `67dadd602`, before
6777
// that at `d8ec8d6d4`, `9602dc820`, `190fbd01d`, `9a3daf8d3`, originally at
6878
// `6314e87f2`. On the hop off `f8a9d0fb0`, `ObjectGrid.tsx` changed hard
6979
// (745 insertions, 161 deletions: objectui#7189's server-side grid grouping
7080
// and objectui#10881's grouped-grid refusal among them), none of it inside
71-
// the selection block, which only MOVED: `ObjectGrid.tsx:4605-4632` here
81+
// the selection block, which only MOVED: `ObjectGrid.tsx:4605-4632` then
7282
// (`4032-4059` at `f8a9d0fb0`), still hashing to
7383
// `c88443302d40c2db739ddb235470bafa29056e2e`, re-READ with the same reading
7484
// below — the one edit in the surrounding selection-mode region (from its

‎packages/spec/src/kernel/functional-completeness.ts‎

Lines changed: 28 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ export function checkFieldCompleteness(def: unknown): CompletenessFinding[] {
274274
* screen's second clause: `titleField` is NOT required). ⚠️ The screen's
275275
* copy is LOCALISED at the pin: objectui#10101 (objectui `afb228418`), which
276276
* the pin now contains, routes it through `tt('calendar.configRequired', …)`
277-
* (`ObjectCalendar.tsx:1301-1302`), whose default and the `en` pack both
277+
* (`ObjectCalendar.tsx:1308-1309`), whose default and the `en` pack both
278278
* read "Calendar configuration required. Please specify startDateField, …",
279279
* while a non-English locale renders its own pack's words for the same
280280
* screen (e.g. `zh`, `de`). The refusal itself — the `if (!calendarConfig)`
@@ -283,8 +283,17 @@ export function checkFieldCompleteness(def: unknown): CompletenessFinding[] {
283283
* English sentence. So the loss is total rather than partial — every
284284
* record, on every object — and the author is told at render time as well
285285
* as here. Both reads hold at the pin this repo builds against
286-
* (`.objectui-sha` = `dd3f7e1be`, re-read 2026-09-28: `ObjectCalendar.tsx`
287-
* changed on this hop — objectui#10866's date-only day reads and writes,
286+
* (`.objectui-sha` = `db11afd49`, re-read 2026-09-29: `ObjectCalendar.tsx`
287+
* changed again on the hop off `dd3f7e1be` (18 insertions, 11 deletions:
288+
* objectui#11005's and its sibling's DST wall-clock moves, in
289+
* `toStoredDateValue` and the handlers below the config gate, plus comment
290+
* citations), while `getCalendarConfig` is byte-identical and unmoved at
291+
* `:294`, and the `if (!calendarConfig)` arm and its `tt(…)` lines are
292+
* byte-identical, moved `:1294` → `:1301` and `:1301-1302` → `:1308-1309`;
293+
* `ListView.tsx` changed only in comments and its region-aria read, with
294+
* every `case` arm byte-identical, and the `en` / `zh` / `de` pack strings
295+
* did not change. At `dd3f7e1be` (2026-09-28) `ObjectCalendar.tsx`
296+
* changed on that hop — objectui#10866's date-only day reads and writes,
288297
* the display-locale and invalidation re-reads of objectui#10668 /
289298
* objectui#10572, objectui#7508's row ceiling — while `getCalendarConfig`,
290299
* the `if (!calendarConfig)` arm and its `tt(…)` lines are byte-identical
@@ -299,8 +308,13 @@ export function checkFieldCompleteness(def: unknown): CompletenessFinding[] {
299308
* This repo already records the same deletion one door over: the #13817
300309
* check in `../ui/view.zod.ts` names objectui#7029 as its runtime half.
301310
* - `gantt` → NO fallback, and no silence [#19630]. Measured at the pin
302-
* this repo builds against (`.objectui-sha` = `dd3f7e1be`, re-read
303-
* 2026-09-28; first measured at `87af769e9`, both files byte-identical to
311+
* this repo builds against (`.objectui-sha` = `db11afd49`, re-read
312+
* 2026-09-29; on the hop off `dd3f7e1be` `ObjectGantt.tsx` changed again
313+
* (14 insertions, 10 deletions: objectui#10866's zoned-chart DST day read
314+
* and write, and a comment citation), so `getGanttConfig` MOVED `:556` →
315+
* `:560` and the `if (!ganttConfig)` arm `:2198` → `:2202`, both
316+
* byte-identical, and `ListView.tsx`'s `case 'gantt'` is byte-identical;
317+
* first measured at `87af769e9`, both files byte-identical to
304318
* it at `62597c588`, and at `f8a9d0fb0` `case 'gantt'` gained the
305319
* EFFECTIVE `filter` and the toolbar `search` / `searchableFields`
306320
* (objectui#10037, objectui#10250), which `ObjectGantt.tsx` still sends as
@@ -310,7 +324,7 @@ export function checkFieldCompleteness(def: unknown): CompletenessFinding[] {
310324
* it reads and writes a date-only day (objectui#10866), `case 'gantt'` only
311325
* in a comment; `getGanttConfig` and the `if (!ganttConfig)` arm are
312326
* byte-identical to `f8a9d0fb0`, moved `:498` → `:556` and `:1973` →
313-
* `:2198`, and none of it touches which date fields are bound or the
327+
* `:2198` (`:560` and `:2202` at `db11afd49`), and none of it touches which date fields are bound or the
314328
* config gate read below. ① `ListView.tsx`'s
315329
* `case 'gantt'` spreads `startDateField` / `endDateField` / `titleField`
316330
* only when the view DECLARED them — the `'start_date'` / `'end_date'`
@@ -327,7 +341,9 @@ export function checkFieldCompleteness(def: unknown): CompletenessFinding[] {
327341
* requires. So the view does not draw a blank chart: it refuses, by name.
328342
* - `timeline` → date axis: NO fallback [#19630]; title: `titleField || 'name'`,
329343
* which still stands. Measured at the same pin (`.objectui-sha` =
330-
* `dd3f7e1be`; `ObjectTimeline.tsx`, byte-identical from `87af769e9` through
344+
* `db11afd49`; `ObjectTimeline.tsx` and `ListView.tsx`'s `case 'timeline'`
345+
* are byte-identical to `dd3f7e1be` on the hop onto this pin, so
346+
* `:533-535` and `:862` did not move. At `dd3f7e1be`, `ObjectTimeline.tsx`, byte-identical from `87af769e9` through
331347
* `62597c588` to `f8a9d0fb0`, changed on this hop — objectui#6356's
332348
* declared timeline item, objectui#10222's retired `metaFields` read,
333349
* objectui#10866's date-only day in its sort and date buckets,
@@ -353,7 +369,11 @@ export function checkFieldCompleteness(def: unknown): CompletenessFinding[] {
353369
* block does render; the warning still fires there, because the block the
354370
* view TYPE names is the one that is missing. Unchanged by this row.
355371
* - `map` → NO fallback, and no silence [#19630]. Measured at the same
356-
* pin (`.objectui-sha` = `dd3f7e1be`; `ObjectMap.tsx` changed on this hop —
372+
* pin (`.objectui-sha` = `db11afd49`; `ObjectMap.tsx` is byte-identical to
373+
* `dd3f7e1be` on the hop onto this pin, `getMapConfig` `:388`,
374+
* `hasCoordinateBinding` `:487` and the refusal arm `:1285` did not move,
375+
* and `ListView.tsx`'s `case 'map'` is byte-identical. At `dd3f7e1be`
376+
* `ObjectMap.tsx` changed on that hop —
357377
* objectui#10664's single expanded read keyed on the query it issues,
358378
* objectui#10623's invalidation re-read, objectui#7508's row ceiling among
359379
* others — but `getMapConfig` and `hasCoordinateBinding` are

‎packages/spec/src/migrations/entries/semantic/18.kernel-health-check-and-hot-reload-durations-unit-in-key.ts‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,13 +52,13 @@ export const entry: SemanticMigration = {
5252
+ 'the audience that does not parse. Measured on 884e8347d: the only in-repo readers are '
5353
+ 'packages/core/src/health-monitor.ts and packages/core/src/hot-reload.ts, both moved in '
5454
+ 'this same change; and the pinned objectui checkout — the pin this repo builds '
55-
+ 'against, `.objectui-sha` = `dd3f7e1be3561d63267d7162f3fc0ac52e72834d` — names '
55+
+ 'against, `.objectui-sha` = `db11afd4967cd9d39381c5e21dc2deec9d706204` — names '
5656
+ 'neither def and neither key: all thirteen exports of plugin-lifecycle-advanced.zod.ts and '
57-
+ 'the string debounceDelay each occur 0 times across its 9283 tracked files (0 across the '
57+
+ 'the string debounceDelay each occur 0 times across its 9546 tracked files (0 across the 9283 at dd3f7e1be, the '
5858
+ '8512 at f8a9d0fb0 and the 8303 at 62597c588 too), against lit '
5959
+ 'controls objectstack 12966 and @objectstack/spec 4997 on the same corpus at 87af769e9, '
6060
+ 'which re-count to 13125 and 5043 respectively at 62597c588, to 13347 and 5123 at '
61-
+ 'f8a9d0fb0 and to 13745 and 5466 at this pin (git grep -o -F, the method that reproduces '
61+
+ 'f8a9d0fb0, to 13745 and 5466 at dd3f7e1be and to 14704 and 5545 at this pin (git grep -o -F, the method that reproduces '
6262
+ 'every earlier count).',
6363
acceptanceCriteria:
6464
'Every producer and reader of a PluginHealthCheck spells intervalMs and timeoutMs, and every '

‎packages/spec/src/migrations/entries/semantic/18.kernel-runtime-config-timeout-unit-in-key.ts‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,10 @@ export const entry: SemanticMigration = {
4646
+ 'spells timeout 0 times; outside the zod file and its test the only live occurrences are the '
4747
+ 'generated rows in content/docs/references/kernel/plugin-security-advanced.mdx, which this '
4848
+ 'rename regenerates. The pinned objectui checkout — this is the pin we build against, '
49-
+ '`.objectui-sha` = `dd3f7e1be3561d63267d7162f3fc0ac52e72834d`, re-read from this tree — '
49+
+ '`.objectui-sha` = `db11afd4967cd9d39381c5e21dc2deec9d706204`, re-read from this tree — '
5050
+ 'spells resourceLimits.timeout 0 times across '
51-
+ '9283 tracked files, against lit controls timeout 1172, RuntimeConfig 263 and resourceLimits '
52-
+ '2 on the same corpus (0 across 8512, and 1096 / 245 / 2, at f8a9d0fb0; 0 across 8303, and '
51+
+ '9546 tracked files, against lit controls timeout 1197, RuntimeConfig 273 and resourceLimits '
52+
+ '2 on the same corpus (0 across 9283, and 1172 / 263 / 2, at dd3f7e1be; 0 across 8512, and 1096 / 245 / 2, at f8a9d0fb0; 0 across 8303, and '
5353
+ '1086 / 240 / 2, at 62597c588); both resourceLimits hits are prose in packages/app-shell recording '
5454
+ 'that objectui\'s own AppShellRuntimeConfig shares not one key with the spec\'s '
5555
+ 'RuntimeConfig, so nothing there authors this key and no pin bump is owed. ADR-0087.',

‎packages/spec/src/migrations/entries/semantic/18.logging-durations-unit-in-key.ts‎

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,11 @@ export const entry: SemanticMigration = {
4747
+ 'no in-repo runtime reads any of the four — outside `packages/spec/src/system/logging.zod.ts` '
4848
+ 'and its test the only occurrences are the generated rows in '
4949
+ '`content/docs/references/system/logging.mdx`, which this rename regenerates; and the pinned '
50-
+ 'objectui checkout — `.objectui-sha` = `dd3f7e1be3561d63267d7162f3fc0ac52e72834d` — spells '
50+
+ 'objectui checkout — `.objectui-sha` = `db11afd4967cd9d39381c5e21dc2deec9d706204` — spells '
5151
+ '`flushInterval` 0 times, `initialDelay` 0, `HttpDestinationConfig` 0 and `LoggingConfig` 0 '
52-
+ 'across its 9283 tracked files, against lit controls `useState` 2435 and `timeout` 1172 on '
53-
+ 'the same corpus (all four 0 across 8512, against 2391 and 1096, at f8a9d0fb0, and 0 across '
52+
+ 'across its 9546 tracked files, against lit controls `useState` 2449 and `timeout` 1197 on '
53+
+ 'the same corpus (all four 0 across 9283, against 2435 and 1172, at dd3f7e1be, 0 across 8512, '
54+
+ 'against 2391 and 1096, at f8a9d0fb0, and 0 across '
5455
+ '8303, against 2389 and 1086, at 62597c588).',
5556
acceptanceCriteria:
5657
'Every HTTP log destination spells `batch.flushIntervalMs`, `retry.initialDelayMs` and '

0 commit comments

Comments
 (0)