fix(types): drop stale source-line citations from 11 published describe() strings (form/layout) - #8822
Merged
Merged
Conversation
…be() strings form.zod.ts (9) / layout.zod.ts (2): remove the `NAME.ext:NNN` address from each published .describe() string (#8478). Each was either trimmed to its author-useful sentence (the line address removed, with no loss), or rewritten to cite the same fact by identifier/behavior instead of file:line (e.g. "sets `required` on the Radix Checkbox and gates the label's `*` marker" instead of "read at renderers/form/checkbox.tsx:45 ... and :49"). Two of the eleven addresses removed had already drifted by exactly +3 lines: checkbox.tsx:45/:49 (actual sites now :48/:52) and text.tsx:162,167 (actual sites now :165/:170). This drift evidence is reported back on the card, not acted on here. Text only: no accept-set, key, or shape change. The remaining 6 addresses (zod/complex.zod.ts) are out of scope for this commit — held by another in-flight PR at claim time — so the tracking card does not close here; card relationship is declared once, in the PR body. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Jmxdo7bmeqCQHLSfmLVX9w
Contributor
✅ Console Performance Budget
The eager closure is every chunk the entry reaches through static imports — what the browser fetches and parses before the app renders. The entry chunk on its own is a small fraction of it. 📦 Bundle Size Report
Size Limits
|
os-warren
marked this pull request as ready for review
September 9, 2026 12:34
This was referenced Sep 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #8478
What
Removes the stale
NAME.ext:NNNsource-line address from 11 published.describe()strings inpackages/types/src/zod/form.zod.ts(9) andzod/layout.zod.ts(2), per the triage ruling on #8478 (removal itself is certain; the remaining prose is decided per-address, not forced to one disposition).Disposition split for this slice (all 11 kept as prose, address removed — 0 needed relocating to a code comment):
form.zod.tsTextareaSchema.wrapperClassform.zod.tsSelectSchema.wrapperClassform.zod.tsCheckboxSchema.required— rewritten to state the behaviour ("setsrequiredon the Radix Checkbox and gates the label's*marker") instead of citing two line numbersform.zod.tsCheckboxSchema.wrapperClassform.zod.tsSwitchSchema.wrapperClassform.zod.tsFileUploadSchema.buttonText— rewritten to state the fallback text instead of the code excerptform.zod.tsFileUploadSchema.wrapperClassform.zod.tsDatePickerSchema.wrapperClassform.zod.tsInputShorthandSchema.wrapperClass— address already duplicated in the adjacent maintainer-facing//comment two lines above (which citesrenderers/form/input.tsx:42and is unaffected by this PR, being a code comment rather than a published description), so nothing is lost by removing it from the published surfacelayout.zod.tsTextSchema.contentlayout.zod.tsHtmlElementSchema.hrefText only: no accept-set, key, or shape change. Clause-②: no.
Re-derived counts (call-scoped matcher, on my own head)
Matcher: for every
.describe(call inpackages/types/src, extract its argument text up to the matching close-paren (so a continuation-line address is not missed), and count it if that argument contains aNAME.ext:NNNtoken.On
origin/mainat the branch's rebase point (dcbf0b2bc, after PR #8799 merged):zod/form.zod.tszod/layout.zod.tszod/complex.zod.tszod/overlay.zod.ts/zod/data-display.zod.ts/zod/objectql.zod.tsFiring control, same run: the same matcher over every string literal in all of
packages/types/src(not just.describe()calls) returns 199 — non-zero, confirming the matcher isn't broken.After this PR:
form.zod.tsandlayout.zod.tsboth read 0 by the call-scoped matcher;complex.zod.ts— the file this PR does not touch — still reads 6, unchanged. That non-zero, untouched control is what makes the two zeros a removal rather than a broken matcher.Scope —
complex.zod.tsdeliberately excludedThe dispatch held
zod/complex.zod.tsout of scope: PR #8799 was in the merge queue modifying it at claim time. That PR (dcbf0b2bc, "execute the batch #70 ruling on thekanbanarm") merged mid-round, but per the dispatch's explicit instruction the exclusion stands regardless — this PR does not touchcomplex.zod.ts, its 6 addresses stay on the card, and the card does not close on this PR (Refs, notFixes).Spot-check — two more drifted addresses found
Checked all 11 addresses in scope against the files they cite (not just the requested 3–5 sample):
renderers/form/checkbox.tsx:45and:49(cited byCheckboxSchema.required) have drifted: the actualrequired={schema.required}site is now:48, and the actualafter:content-['*']label-marker site is now:52— both off by exactly +3 lines.renderers/basic/text.tsx:162,167(cited byTextSchema.content) has drifted: the actual{schema.content}sites are now:165and:170— again off by exactly +3.textarea.tsx:37,select.tsx:45,checkbox.tsx:36,switch.tsx:26,file-upload.tsx:123,file-upload.tsx:78,date-picker.tsx:35,input.tsx:42) —html-elements.tsx:74(cited byHtmlElementSchema.href) lands inside the right function (sanitizeHref, lines 73–79) but 3 lines short of the actual regex check at:77, the same +3 offset, though arguably close enough to not count as "wrong" the way the other two are.This is further evidence for the card's own pre-committed p3-to-p2 re-grade trigger (one instance already found and recorded on the card by the previous slice:
ObjectKanban.tsx:264→ actual:365). Grading is the triage seat's act, not this dev seat's — reported on the card, not acted on here.Changeset
.changeset/8478-zod-pins-form-layout.md—@object-ui/typespatch, matching the previous slice's precedent for this same card.Gates (all green on rebased head
4cc013f35, merge-basedcbf0b2bc)pnpm exec vitest run packages/types/— 160 files / 3145 tests passedpnpm --filter @object-ui/types build— dist completeness OKpnpm --filter @object-ui/types type-check—tsc --noEmit+ examples + test configs, 0 errorspnpm --filter @object-ui/types lint— 0 errors (271 pre-existingno-explicit-anywarnings, unrelated to this diff)node scripts/check-changeset-presence.mjs— declares the changesetnode scripts/check-changeset-no-major.mjsnode scripts/check-control-bytes.mjspnpm run check:spec-symbolspnpm run check:designer-field-key-paritypnpm run check:handler-key-readsnode scripts/check-governed-queue-guard.mjs --test THE-3-CHANGED-PATHS— NOT GOVERNEDapps/consoleswept: no reference to the edited.describe()text found (content/docs/**doesn't embed it either — it's manually-curated prose, not generated from.describe()output).🤖 Generated with Claude Code
https://claude.ai/code/session_01Jmxdo7bmeqCQHLSfmLVX9w
Generated by Claude Code