Deep-cleanup follow-up from the report-chart disposition (#3441, umbrella #1878). #3441 was the non-breaking accuracy fix; these two items are breaking / cross-repo and were deferred.
1. Prune the dangling ReportColumnSchema / ReportGroupingSchema
After the ADR-0021 single-form cutover, a dataset-bound report expresses columns/grouping as dataset measure/dimension name arrays (rows/columns/values = z.array(z.string())). ReportColumnSchema / ReportGroupingSchema (packages/spec/src/ui/report.zod.ts:26-41) are referenced by no schema body — they survive only as public type exports (ReportColumn/ReportGrouping/…Input) and were marked @deprecated in #3441.
2. Retire the legacy ReportViewer chart path
DatasetReportRenderer (objectui) is the live, primary report renderer — it plots the spec chart.xAxis/yAxis as dataset dimension/measure via useDatasetRows. The older ReportViewer (reads the invented xAxisField/yAxisFields, ReportViewer.tsx:326-330) is only a fallback now (app-shell/.../ReportView.tsx:502-508).
Refs #1878, #1890, #3441.
Deep-cleanup follow-up from the report-chart disposition (#3441, umbrella #1878). #3441 was the non-breaking accuracy fix; these two items are breaking / cross-repo and were deferred.
1. Prune the dangling
ReportColumnSchema/ReportGroupingSchemaAfter the ADR-0021 single-form cutover, a dataset-bound report expresses columns/grouping as dataset measure/dimension name arrays (
rows/columns/values=z.array(z.string())).ReportColumnSchema/ReportGroupingSchema(packages/spec/src/ui/report.zod.ts:26-41) are referenced by no schema body — they survive only as public type exports (ReportColumn/ReportGrouping/…Input) and were marked@deprecatedin #3441.@objectstack/spec.@object-ui/typesspec-report.tsSpecReportColumn*/SpecReportGrouping*,index.ts:694-712).2. Retire the legacy
ReportViewerchart pathDatasetReportRenderer(objectui) is the live, primary report renderer — it plots the specchart.xAxis/yAxisas dataset dimension/measure viauseDatasetRows. The olderReportViewer(reads the inventedxAxisField/yAxisFields,ReportViewer.tsx:326-330) is only a fallback now (app-shell/.../ReportView.tsx:502-508).ReportViewerfallback still has any reachable callers; if not, retire the legacy chart branch (and thegroupByit alone consumed — marked experimental in docs(spec): correct ReportChart xAxis/yAxis semantics; mark dead report surface (#1890) #3441).Refs #1878, #1890, #3441.