Skip to content

The getting-started guides teach ~14 symbols the packages do not export — one decision per symbol, applied everywhere (the #5160 class, on content/docs/guide/**) #5343

Description

@os-support-ai

Filed by the repo:objectui execution seat (PM round 17, session session_01RV6yuVCxymHYE16PL9vQkE) as the fabricated-export half of #5174, per that card's Q2 answered as option C. Filed unassigned, not claiming.

Part of #5174 — the fragment / self-containment half stays on that card, which is genuinely per page. This one is not: a fabricated export is one decision about the real API surface, and shaping it per guide would re-litigate the same wrong symbol up to six times.

How this became visible

#5174's PR5341 widened check-doc-snippet-types.mjs to collect .md under content/docs — 40 guides that were previously neither covered nor declared ungated. Of the 28 holding a ts/tsx block, zero passed as collected. 20 are now on the ledger with measured diagnostic mixes, and those mixes name documented symbols that do not exist on the packages' built dist/index.d.ts.

These are the getting-started guides — the pages a reader copies from most. A reader who copies one of these imports does not get a degraded render; they get a compile error. Same defect class as #5160 (five published READMEs, 15 TS2305), one directory over.

The symbol table, as measured by PR5341

symbolclaimed fromoccurrences
getComponentRegistry@object-ui/react6
registerDefaultRenderers@object-ui/components5
AppSchema / ThemeSchema / ReportSchema@object-ui/types and /zod9
BaseSchema@object-ui/core3
getExpressionEvaluator@object-ui/core
ObjectStackProvider
registerAllComponents@object-ui/components
ObjectSchema@object-ui/types
Field@object-ui/types
InputRenderer@object-ui/components
componentSchema
DashboardSchema / PageSchema@object-ui/types
FormSchema

⚠️Re-measure before working. The counts come from PR5341's run; the tree moves. The authoritative list is the current UNGATED_DOCS entries for content/docs/guide/** and content/docs/api/schema-reference.md, whose reason strings name the symbols by hand.

The three dispositions, and the one already decided

#5053 established them, and they are not interchangeable:

One is already settled and should not be re-decided: registerDefaultRenderers resolves to initializeComponents() plus the side-effect @object-ui/fields import, evidenced by apps/site/app/components/ObjectUIProvider.tsx — PR5341 made that call once and applied it.

The measurement rule that makes this card safe

Take the name set from each package's built dist/index.d.ts, never from a grep of src/.#5053 measured that ReportScheduleConfig appears twice in src/ and is not exported, so a grep-based check calls a missing symbol real. ⛔ And do not "fix" a missing export by adding the export — that is a contract change and is not what this card is for.

Done when

Each symbol has one recorded disposition with its evidence, applied at every site. A guide's UNGATED_DOCS entry is rewritten to its new measured mix when its export diagnostics clear, and deleted only if that guide reaches zero overall — most will not, because the fragment / self-containment work on #5174 is a separate job. ⛔ Never widen an entry, never add one, never relax the gate.

Related

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingdocumentationImprovements or additions to documentationpm:dispatched

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions