Skip to content

Commit 689bd13

Browse files
committed
chore(objectui): state the ADR-0087 disposition of the pin range's declared-breaking entries
Claude-Session: https://claude.ai/code/session_016tKoy8NJa35Yih1FdzrVmn Co-authored-by: Claude <noreply@anthropic.com>
1 parent 66ef101 commit 689bd13

1 file changed

Lines changed: 43 additions & 1 deletion

File tree

‎.changeset/console-9dfaca654311.md‎

Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,48 @@ Derived from the changesets objectui declared over the range — 24 releasing of
3333

3434
⚠️ 4 of these carry a breaking change: 4 by the author's own breaking annotation in the changeset body — objectui declares no `major` inside a launch window (`scripts/check-changeset-no-major.mjs`). Each is marked **BREAKING** in the list above — read them before compiling the release record.
3535

36-
<!-- adr-0087: TODO — the pin bump cannot answer this; a human must (objectstack#6494) -->
36+
<!-- adr-0087: not-required (no-migration-prescription)
37+
This diff moves `.objectui-sha` and the artefacts that travel with it: this console
38+
changeset, the regenerated `sdui.manifest.json` and its record
39+
`scripts/sdui-manifest.record.json`, the re-recorded
40+
`packages/sdui-parser/objectui-lockstep.json` (objectui's `packages/sdui-parser/src` is
41+
byte-identical across the range) and the re-measured pin citations in `packages/spec/src`,
42+
which carry their own `@objectstack/spec` patch changeset. It adds, removes or renames no
43+
ObjectStack-authorable key: no Zod schema, no spec declaration and no stored
44+
`sys_metadata` shape moves in it, so `objectstack migrate meta` has nothing here to
45+
rewrite, and this body carries no FROM/TO prescription of its own.
46+
The range carries five declared-breaking objectui changes: four changesets carry the
47+
author's breaking annotation, and a fifth commit's subject carries `!` (objectui#8347,
48+
`b403bb36f`, whose changeset states `Clause-②: yes (narrowing)` without the word). Each
49+
is objectui's own package surface, with its upstream record, and each is answered here:
50+
(1) objectui#11615 (`9dfaca654`): `ObjectFormSection.fields` gains the spec's
51+
`FormFieldInput` arm, which breaks TypeScript readers of that objectui type; no code in
52+
this repository imports `@object-ui/types`. The default `simple` form now draws a
53+
self-describing inline section entry, as the other five form types already did; no
54+
example in this repository authors a `simple` `object-form` with an inline section
55+
entry, and no authored document has to change.
56+
(2) objectui#11266 (`9db9ff3f9`): objectui's zod and TypeScript faces judge a form
57+
view's `subforms[].columns` entry by `@objectstack/spec`'s own `InlineGridColumnSchema`,
58+
the closed shape this repository has enforced since objectstack#20927, so objectui's
59+
validator now gives the verdict `os validate` already gave; the ObjectStack accept set
60+
does not move.
61+
(3) objectui#11608 (`8b14aecbd`): `PartialSchema` leaves `@object-ui/types`; nothing in
62+
this repository names it.
63+
(4) objectui#11610 (`2abec3a96`, objectui#11614): the `grid` widget's eight field-level
64+
keys are camelCase, and the snake_case spellings are refused by name. The ObjectStack
65+
runtime form field (`buildObjectFormRuntimeField`, `ui/component.zod.ts`) already refuses
66+
the snake_case spellings by name, with guidance naming objectui#11610, so no document
67+
this contract admits carries them. The camelCase spellings are not declared there yet:
68+
until objectstack#21768 declares them, an ObjectStack-authored `grid` field takes its
69+
`columns` and the widget's own defaults. That declaration widens a closed field and
70+
carries its own record.
71+
(5) objectui#8347 (`b403bb36f`): `BaseSchema` loses its index signature, a TypeScript
72+
narrowing of objectui's node types; no code in this repository compiles against them,
73+
and objectui's tolerant zod mirror keeps its accept set.
74+
Where an entry mirrors an ObjectStack key, the ledger entry belongs to the
75+
`packages/spec` PR that lands it, never to the pin bump.
76+
Scope of the claim, stated rather than implied: it is a claim about THIS diff, not a
77+
per-entry re-measurement of the upstream declared-breaking entries.
78+
-->
3779

3880
objectui range: `2e818d0b51ec...9dfaca654311`

0 commit comments

Comments
 (0)