Skip to content

content/docs/core/report-schema.mdx still teaches objectName-based column hydration, which has no read point #5136

Description

@os-zhuang

Found while implementing #5047 (migrating the two plugin-report documents to the dataset-bound form). Filed unassigned and out of that card's scope: #5047 is scoped to packages/plugin-report/README.md and content/docs/plugins/plugin-report.mdx. This is a third document with the same defect.

Measured on origin/main at 958d757.

The claim

content/docs/core/report-schema.mdx:

  • :93 — comment on a code block: "object's ObjectField when the report has an objectName."
  • :130 — "When the report binds an objectName, columns inherit type, ..."

Why it is wrong twice over

1. objectName is not a report key any more.ReportSchema (@objectstack/spec 17.0.0) is z.core.$strict. Parsing a report that carries it:

unrecognized_keys: Unrecognized key(s) on this report: `objectName`

The type side agrees — TS2353: Object literal may only specify known properties, and 'objectName' does not exist in type ....

2. Nothing implements the hydration.objectName has zero read points in packages/plugin-report/src — the only occurrences are two comments describing the retired query form, plus test fixtures asserting that such a document is not a dataset report:

grep -rn "objectName" packages/plugin-report/src
# ReportRenderer.tsx:102 (comment: "Stored pre-9.0 spec JSON (objectName/columns query form)")
# DatasetReportRenderer.tsx:7 (comment)
# __tests__/DatasetReportRenderer.test.tsx:65 expect(isDatasetReport({ ... objectName: 'task' ... })).toBe(false)

So the sentence promises a runtime behaviour that no code performs, keyed off a property the schema rejects.

The equivalent claim in packages/plugin-report/README.md is removed by #5047's PR. This document was left alone deliberately, to keep that PR to its two documents.

Recheck

grep -n "objectName" content/docs/core/report-schema.mdx
grep -rn "objectName" packages/plugin-report/src # comments + a negative test only

Related: #5047 (the same class in the two plugin-report documents), #4600 (same class, dashboard examples).

Metadata

Metadata

Assignees

Labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions