Skip to content

Commit 0ea26d3

Browse files
committed
docs(sdui): three passages now name the PIN as the generator's version default
The record-derived `--objectui-version` default is gone from `scripts/gen-sdui-manifest-node.mjs`: with no flag it reads the version the PINNED commit declares, through check 4's own `readPinnedDeclaredVersion` oracle, and REFUSES when that cannot be read. Three passages still described the retired default as current. - `scripts/check-sdui-manifest.mjs` check 4's problem text: the reason clause for the prescription on its next line asserted "The generator REUSES the version already recorded when --objectui-version is not passed". It now names the pin as the source and lists how a disagreeing record still arises, so the flagged prescription below it keeps a true reason. - The same file's header, check 4's own rationale: "`--objectui-version` unset makes it REUSE the version already in the record" — the same retired default, one grep-phrase away from the one above, which is why the card's census missed it. Repaired in place: same file, same defect class, same gate family. - `packages/spec/scripts/check-react-blocks-declaration-parity.ts`: the node producer "enumerates the PUBLISHED @object-ui/* packages at the version named in scripts/sdui-manifest.record.json". That record is the run's OUTPUT today, never where it reads the version from. Prose only. The gate's verdicts do not move: its three non-self-test arms are byte-identical before and after, on both streams, and `--self-test` is byte-identical and green. Claude-Session: https://claude.ai/code/session_01JbZnqu8bt6YqfJsr9vaFb3 Co-authored-by: Claude <noreply@anthropic.com>
1 parent 625db0e commit 0ea26d3

2 files changed

Lines changed: 14 additions & 9 deletions

File tree

‎packages/spec/scripts/check-react-blocks-declaration-parity.ts‎

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,11 @@
8484
// gate on the result — so what it reads is the pinned SOURCE.
8585
// node `scripts/gen-sdui-manifest-node.mjs` writes the TRACKED repo-root
8686
// artefact under plain Node — no browser, no objectui build. It
87-
// enumerates the PUBLISHED `@object-ui/*` packages at the version named
88-
// in `scripts/sdui-manifest.record.json`.
87+
// enumerates the PUBLISHED `@object-ui/*` packages at the version
88+
// `--objectui-version` names, else the one the PINNED commit's
89+
// `packages/core/package.json` declares — and REFUSES when neither
90+
// answers. `scripts/sdui-manifest.record.json` is what that run
91+
// WRITES, never where it reads the version from.
8992
//
9093
// ⚠️ "The registry is a browser app so nothing enumerates it from Node" was true
9194
// when this header was written and is now FALSE — measured 2026-08-29,

‎scripts/check-sdui-manifest.mjs‎

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,12 @@
4040
* the version `packages/core/package.json` DECLARES at the pinned commit.
4141
* Checks 1-3 reach both fields and relate neither: the version was read
4242
* as a presence check only, so the record could name pin C and version V
43-
* with nothing asking whether V is C's version at all (#18611). The live
44-
* way to write that record is the generator's own default —
45-
* `--objectui-version` unset makes it REUSE the version already in the
46-
* record, so a regeneration after a pin bump keeps the OLD version string
47-
* while re-recording the NEW pin, and checks 1-3 stay green throughout.
43+
* with nothing asking whether V is C's version at all (#18611). The
44+
* generator's own default does not write such a record — `--objectui-version`
45+
* unset reads the version off the PIN and REFUSES when the pin cannot be
46+
* read — but an explicit wrong version, a hand edit, or a record written
47+
* before that default was fixed still produce one, and checks 1-3 stay
48+
* green throughout.
4849
* This is the only check here that needs an input from outside this tree,
4950
* so it is the only one that can report NOT CHECKED — see below.
5051
*
@@ -315,8 +316,9 @@ export function checkTree(root, { objectuiRoot, requireObjectui = false, onVersi
315316
`the record's two objectui fields describe different commits: objectuiPackagesVersion is ${JSON.stringify(record.objectuiPackagesVersion)},\n` +
316317
` but objectui ${pin.slice(0, 12)}… — the pin the record itself names — declares ${JSON.stringify(versionLeg.version)} in ${OBJECTUI_VERSION_FILE}\n` +
317318
` (read from ${versionLeg.where}). The manifest was generated from the published ${record.objectuiPackagesVersion} packages, so it\n` +
318-
' describes a registry this pin does not name. The generator REUSES the version already recorded when\n' +
319-
' --objectui-version is not passed, which is how a regeneration re-records a new pin under an old version.\n' +
319+
' describes a registry this pin does not name. The generator reads this version from the PIN, never\n' +
320+
' from this record, so a disagreement came from outside that default: a version named explicitly on\n' +
321+
' some other run, a hand edit, or a record written before the default was fixed to read the pin.\n' +
320322
` Regenerate against the pin: node scripts/gen-sdui-manifest-node.mjs --objectui-version ${versionLeg.version}`,
321323
);
322324
} else if (versionLeg.status === 'unsupported') {

0 commit comments

Comments
 (0)