Filed unassigned by the os-dev seat while implementing objectui#7102 (session session_012wwHa4aaFybxXrfmfHioDM). Grading and domain:* are the triage seat's. Deliberately NOT folded into objectui#7102's PR — that card's surface is packages/components/src/__tests__/, this is a different package and a different repair shape.
Surfaced by the census objectui#7102's dispatch asked for: which other tests under packages/ transcribe catalog fixtures inline? This is the one other file whose transcription carries a claim that does not hold.
The defect
packages/plugin-dashboard/src/__tests__/DashboardGridLayout.legacyRetired.test.tsx:52-56 introduces one of its it.each rows like this:
// Byte-for-byte `examples/schema-catalog/src/schemas/plugin-dashboard/
// filtered-dashboard.json` -> `widgets[0]`: the real stored shape, not a
// fixture invented to match the detector.
['catalog bar', { id: 'invoices_by_status', title: 'Invoices by Status', type: 'bar', object: 'invoices', categoryField: 'status', aggregate: 'count' }],
and a second row four lines below:
// `widgets[2]` of the same catalog entry.
['metric', { id: 'w1', type: 'metric', object: 'invoices', aggregate: 'count' }],
Neither claim holds. Measured on origin/maine8e4c4df5f51fc3a1d5ffc678881d3480f97a70e, that fixture's widgets[0] is:
{
"id": "invoices_by_status",
"title": "Invoices by Status",
"type": "bar",
"options": { "xField": "status", "yField": "count", "data": [ ... ] }
}No object, no categoryField, no aggregate — it is the ADR-0021 options shape. widgets[2] is { id: "total_invoices", title, type: "metric", options: { value: "1,284" }, filterBindings: { region: false } }, which shares only type with the row that names it.
It was never true
git log on both paths returns exactly one commit: ad0f5f11f (docs(plugin-grid): make the two catalog entries real object-grid nodes, objectui#6028) added both files in the same commit — the fixture already in the options shape, the test already claiming byte-identity with a legacy shape. So this is not drift that a later migration introduced; the provenance claim was wrong when it was written.
⚠️ Bounded: this repo checkout is shallow (531 commits), so "exactly one commit" is a statement about the visible history. The present-tense measurement above does not depend on that.
Why it matters, and why it is not just a comment nit
The comment is not decoration — it is the stated justification for why this particular literal is trustworthy: "the real stored shape, not a fixture invented to match the detector." That sentence is the test's whole epistemic claim. If the shape was in fact invented, the row proves only that the detector fires on a shape the author wrote for it, which is precisely the failure mode the comment exists to rule out.
Same class as objectui#7127 (a comment asserting something the code does not do) and objectui#7102 (a transcription that no longer matches what it names).
Not user-visible, and nothing is red
DashboardGridLayout.legacyRetired.test.tsx passes today and will keep passing — the literal is cast through as unknown as DashboardComponentSchema, so no type or parse checks it, and the retired-format placeholder genuinely renders for that shape. The test's behaviour is fine. Only its provenance claim is false. Grade accordingly.
Suggested repair — needs a choice, which is why this is filed rather than fixed
Three routes, and picking between them is a judgement the triage seat should make:
- Correct the comment — drop the byte-for-byte claim, say plainly that the literal is a hand-written specimen of the pre-ADR-0021 shape. Cheapest, keeps the coverage, and is honest. But then the row loses the independent-corpus property the comment was claiming for it.
- Find a real corpus specimen and transcribe that — if any catalog fixture still authors the legacy shape. ⚠️ objectui#4600 suggests these were all migrated, so this may have no candidate; that needs measuring before it is chosen.
- Derive instead of transcribe — read the fixture at test time, the way
packages/types/src/__tests__/timeline-catalog-fixture-migrated.test.ts already does for gantt-style-timeline.json. Kills the drift class rather than repairing one instance, but that file reads a fixture from packages/types specifically because "this package's test tsconfig carries no node types", so the same move in plugin-dashboard needs that checked first.
Refs: objectui#7102 (sibling, the packages/components half) · objectui#7127 (same class) · objectui#4612 (the card this test was written for) · objectui#4600 (the catalog's dashboard examples and the pre-ADR-0021 shape) · objectui#6028 (ad0f5f11f, added both files).
Filed unassigned by the
os-devseat while implementing objectui#7102 (sessionsession_012wwHa4aaFybxXrfmfHioDM). Grading anddomain:*are the triage seat's. Deliberately NOT folded into objectui#7102's PR — that card's surface ispackages/components/src/__tests__/, this is a different package and a different repair shape.Surfaced by the census objectui#7102's dispatch asked for: which other tests under
packages/transcribe catalog fixtures inline? This is the one other file whose transcription carries a claim that does not hold.The defect
packages/plugin-dashboard/src/__tests__/DashboardGridLayout.legacyRetired.test.tsx:52-56introduces one of itsit.eachrows like this:and a second row four lines below:
Neither claim holds. Measured on
origin/maine8e4c4df5f51fc3a1d5ffc678881d3480f97a70e, that fixture'swidgets[0]is:{ "id": "invoices_by_status", "title": "Invoices by Status", "type": "bar", "options": { "xField": "status", "yField": "count", "data": [ ... ] } }No
object, nocategoryField, noaggregate— it is the ADR-0021optionsshape.widgets[2]is{ id: "total_invoices", title, type: "metric", options: { value: "1,284" }, filterBindings: { region: false } }, which shares onlytypewith the row that names it.It was never true
git logon both paths returns exactly one commit:ad0f5f11f(docs(plugin-grid): make the two catalog entries real object-grid nodes, objectui#6028) added both files in the same commit — the fixture already in theoptionsshape, the test already claiming byte-identity with a legacy shape. So this is not drift that a later migration introduced; the provenance claim was wrong when it was written.Why it matters, and why it is not just a comment nit
The comment is not decoration — it is the stated justification for why this particular literal is trustworthy: "the real stored shape, not a fixture invented to match the detector." That sentence is the test's whole epistemic claim. If the shape was in fact invented, the row proves only that the detector fires on a shape the author wrote for it, which is precisely the failure mode the comment exists to rule out.
Same class as objectui#7127 (a comment asserting something the code does not do) and objectui#7102 (a transcription that no longer matches what it names).
Not user-visible, and nothing is red
DashboardGridLayout.legacyRetired.test.tsxpasses today and will keep passing — the literal is cast throughas unknown as DashboardComponentSchema, so no type or parse checks it, and the retired-format placeholder genuinely renders for that shape. The test's behaviour is fine. Only its provenance claim is false. Grade accordingly.Suggested repair — needs a choice, which is why this is filed rather than fixed
Three routes, and picking between them is a judgement the triage seat should make:
packages/types/src/__tests__/timeline-catalog-fixture-migrated.test.tsalready does forgantt-style-timeline.json. Kills the drift class rather than repairing one instance, but that file reads a fixture frompackages/typesspecifically because "this package's test tsconfig carries no node types", so the same move inplugin-dashboardneeds that checked first.Refs: objectui#7102 (sibling, the
packages/componentshalf) · objectui#7127 (same class) · objectui#4612 (the card this test was written for) · objectui#4600 (the catalog's dashboard examples and the pre-ADR-0021 shape) · objectui#6028 (ad0f5f11f, added both files).