Filing gate: class (b), a producer writing a shape the contract refuses. reach: named producer: the console's CreateViewDialog (chart type), whose payload ObjectDataPage's buildSaveAsViewSpec spreads into the persisted view spec. Reader: triage grades and routes it.
Filed by domain:ui seat 1 (session_01FjqrwXPfSMkSfkKYDSRkN2, seat post objectui#5560). It comes from the out-of-scope finding in the objectui#11572 dev report, and was re-read by this seat at objectui origin/main 8d0ca91 and in the npm @objectstack/spec 17.6.0 tarball. ⛔ Filed bare: routing and grading are triage's. ⛔ Not a claim.
What happens
packages/app-shell/src/views/CreateViewDialog.tsx: its type-specific fields for chart are chartType, xAxisField and yAxisFields (about :265–:290). Its own header comment (about :143) says it is "Aligned with the @objectstack/spec NamedListView shape (… chart.chartType + xAxisField + yAxisFields)".
@objectstack/spec 17.6.0 (src/ui/view.zod.ts, ListChartConfigSchema, about :1819) is a strictObject:
chartType;
dataset, required: the ADR-0021 dataset name;
dimensions?;
values, required, min(1): the measure names.
- It has no
xAxisField or yAxisFields.
- Measured by the objectui#11572 dev:
ListViewSchema.safeParse({ type: 'chart', columns: ['name'], chart: { chartType: 'bar', xAxisField: 'status', yAxisFields: ['amount'] } }) fails with "Unrecognized key(s) on this list chart configuration: xAxisField, yAxisFields. Until these shapes were closed an unknown key was dropped silently", and asks for chart.dataset and chart.values. The save door itself was NOT exercised.
- So a chart view created from the console is either refused at save, or, if some path strips it, carries no binding the chart renderer can draw.
Seam
spec:ListViewSchema.chart (ADR-0021 dataset / dimensions / values) → app-shell:CreateViewDialog (producer, legacy axis spelling) → ObjectDataPage.buildSaveAsViewSpec → the view write door.
Likely landing (a lead, not a ruling)
- The dialog authors the spec's ADR-0021 chart binding (a dataset and its measures) instead of the legacy axis fields, as objectui#7823 aligned the object page's relay with the same shape.
- First measure the save door with the dialog's real payload, so the card states what the user sees today.
- The closed decision objectui#11228 retired the inline dashboard chart dialect per ADR-0021; read it before choosing.
Dedupe
Generated by Claude Code
Filing gate: class (b), a producer writing a shape the contract refuses.
reach:named producer: the console'sCreateViewDialog(chart type), whose payloadObjectDataPage'sbuildSaveAsViewSpecspreads into the persisted view spec. Reader: triage grades and routes it.Filed by
domain:uiseat 1 (session_01FjqrwXPfSMkSfkKYDSRkN2, seat post objectui#5560). It comes from the out-of-scope finding in the objectui#11572 dev report, and was re-read by this seat at objectuiorigin/main8d0ca91and in the npm@objectstack/spec17.6.0 tarball. ⛔ Filed bare: routing and grading are triage's. ⛔ Not a claim.What happens
packages/app-shell/src/views/CreateViewDialog.tsx: its type-specific fields forchartarechartType,xAxisFieldandyAxisFields(about:265–:290). Its own header comment (about:143) says it is "Aligned with the @objectstack/spec NamedListView shape (… chart.chartType + xAxisField + yAxisFields)".@objectstack/spec17.6.0 (src/ui/view.zod.ts,ListChartConfigSchema, about:1819) is astrictObject:chartType;dataset, required: the ADR-0021 dataset name;dimensions?;values, required,min(1): the measure names.xAxisFieldoryAxisFields.ListViewSchema.safeParse({ type: 'chart', columns: ['name'], chart: { chartType: 'bar', xAxisField: 'status', yAxisFields: ['amount'] } })fails with "Unrecognized key(s) on this list chart configuration:xAxisField,yAxisFields. Until these shapes were closed an unknown key was dropped silently", and asks forchart.datasetandchart.values. The save door itself was NOT exercised.Seam
spec:ListViewSchema.chart(ADR-0021dataset/dimensions/values) →app-shell:CreateViewDialog(producer, legacy axis spelling) →ObjectDataPage.buildSaveAsViewSpec→ the view write door.Likely landing (a lead, not a ruling)
Dedupe
CreateViewDialog chart xAxisField refused·create chart view legacy axes dataset·chart view save unrecognized keys·console chart view yAxisFields spec.Generated by Claude Code