Uh oh!
There was an error while loading. Please reload this page.
docs(core): rewrite report-schema.mdx column hydration to the shape the renderer reads - #5275
Merged
os-support-ai merged 1 commit intoAug 18, 2026
Merged
Conversation
`objectName`-based column hydration has zero read points in `packages/plugin-report/src` (only two comments describing the retired pre-9.0 query form, plus a negative test). `ReportComponentSchema` has no `objectName` property at all. `ReportViewer.renderCellValue` reads `field.type`/`field.options`/`field.referenceTo`/`field.label` directly off each author-declared `ReportField` — there is no bound-object lookup to auto-hydrate them. While rewriting the two false sentences, also fixed the page's code samples, which imported/annotated a `ReportSchema` type that does not exist in `@object-ui/types` (or `@object-ui/types/zod`) — the real exported name is `ReportComponentSchema`, same file, same "teaches a shape the code doesn't have" defect class. Fixes#5136 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RV6yuVCxymHYE16PL9vQkE
os-support-ai
marked this pull request as ready for review
August 18, 2026 23:45
Uh oh!
There was an error while loading. Please reload this page.
os-support-ai
deleted the
claude/issue-5136-report-schema-doc-hydration
branch
August 18, 2026 23:45
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 freeto 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.
Fixes#5136
Premise re-check (on current
origin/main, commit41f498bcb)Zero-hit target grep, with its counter-probe in the same files:
The counter-probe (a term known present in the same file) returns real hits, so the tool works — the
objectNamesearch is a genuine zero for read points, not a broken grep. The 4 raw hits above are all comments describing the retired pre-9.0 form, a fixture assertingisDatasetReport(...objectName...) === false, and a "legacy spec report" test fixture (ReportRendererDispatcher.test.tsx:37) that is itself routed throughspecReportToPresentation(see below), which never readsreport.columns/report.objectName— it only mapsreport.values/report.rows(dataset dimension/measure names). No production code branches onobjectName. Premise confirmed still valid; the tree has not moved this claim since the card was filed.Where hydration actually happens
ReportComponentSchema/ReportField(packages/types/src/reports.ts) is the presentation-layer schema this doc page teaches (thetype: 'report'/report-builder/report-viewercomponents). It has noobjectNameproperty at all — grepped the whole file, the onlyobjectNameoccurrence is in a doc-comment describing the aspirational (never-implemented) behaviour that this PR removes.The actual read point is
packages/plugin-report/src/ReportViewer.tsx,renderCellValue()(~line 164-198):field.type,field.options,field.referenceToare read directly off the author-declaredReportFieldobject (spread intofieldMeta) and passed straight into@object-ui/fields'sgetCellRenderer/resolveCellRendererType. Column headers usefield.label || field.name(line 335/434, same file). There is no object-schema lookup anywhere in between — I tracedReportRenderer.tsx→DatasetReportRenderer.tsx(the live ADR-0021 dataset-bound path, unrelated — it hydrates measure format/label from the dataset, never fromobjectName) andspecReportToPresentation(packages/types/src/spec-report.ts, the pre-9.0 bridge) — neither readscolumnsorobjectNameeither.What the page taught vs. what's real (fixed)
:92-93comment ("Auto-hydrated from the bound object's ObjectField when the report has anobjectName") → replaced:typeis author-provided only, citesReportComponentSchemahas noobjectName.:130-132paragraph (same claim fortype/options/referenceTo/label) → replaced with the real mechanism above, namingReportViewer.renderCellValue,getCellRenderer, and thefield.label || field.nameheader fallback.ReportSchematype/schema that does not exist in@object-ui/typesor@object-ui/types/zod— confirmed by grep againstpackages/types/src/reports.ts:359,packages/types/src/zod/reports.zod.ts:141, and both barrel exports (packages/types/src/index.ts,packages/types/src/zod/index.zod.ts). The real exported name isReportComponentSchema. Fixed all three call sites to the real name; left the page's title/prose use of "ReportSchema" as the informal product name untouched (not a compile-checkable claim, and out of this card's mandate to change page structure/voice).Gate measurement for this file
content/docs/core/report-schema.mdx: all 11 fenced blocks areplaintext(verified viagrep -n '^```' content/docs/core/report-schema.mdx) — zerots/tsx/typescriptfences.scripts/check-doc-snippet-types.mjsonly compiles fences whose language is inTS_FENCE_LANGUAGES = new Set(['ts', 'tsx', 'typescript'])(:196) and only collects blocks matching that set (scanFences,:349). This page has none, so this gate does not read this file's code blocks at all — running it (confirmed) requires a full multi-packagedistbuild unrelated to this change and would not exercise the edited content, so I did not build the workspace just to run it.UNGATED_DOCSledger (:212):content/docs/core/report-schema.mdxhas no entry — correct, since that table is only for pages that do havets/tsxfences but are excluded; this page has none of that language, so no entry is owed either way.Commands run (this file's applicable gates)
At commit
c177e16b4(HEAD of this branch):content/docs/**-only change, confirmed no changeset owed by the script above (not assumed).Scope
File surface:
content/docs/core/report-schema.mdxonly. Did not touchpackages/plugin-report(read-only, to trace the render path — sibling card #5225 is in flight there for an unrelated test-network fix; nothing I read suggests it changesReportViewer.renderCellValueor the dispatch path above). Did not touch neighbouring docs (#5047, #4600 cover the same defect class elsewhere, out of this card's scope).Generated by Claude Code