|
| 1 | +--- |
| 2 | +'@objectstack/spec': patch |
| 3 | +--- |
| 4 | + |
| 5 | +`ChartDrillDownSchema`'s refusal text for `drillDown.mode` names the one objectui block that reads it, not all three it used to |
| 6 | + |
| 7 | +An author (or an AI) who writes `drillDown.mode` on a chart gets this guidance |
| 8 | +sentence back from `objectui validate` / `safeValidateSchema`. It used to read: |
| 9 | + |
| 10 | +> `mode` (`'filter'` | `'record'`) is a TABLE / PIVOT / METRIC drill key, not a |
| 11 | +> chart one: … |
| 12 | +
|
| 13 | +`object-metric` has refused `drillDown.mode` at its TypeScript door since |
| 14 | +objectui#9002 (PR objectui#10681, merged, on the maintainer ruling recorded |
| 15 | +there, comment `5643445104`), and `object-pivot` has refused it since |
| 16 | +objectui#10685 (PR objectui#10710, merged). Measured on objectui `origin/main`: |
| 17 | +neither block's renderer ever read `mode`; only `object-data-table` does. So |
| 18 | +the old sentence sent an author who followed it straight into a second |
| 19 | +refusal on two of the three blocks it named — right on `object-pivot` and |
| 20 | +`object-metric` (both now refuse the key by name), and a stored JSON config |
| 21 | +that carries it there is silently ignored with no diagnostic. |
| 22 | + |
| 23 | +The sentence now names the one block that actually reads `mode`: |
| 24 | + |
| 25 | +> `mode` (`'filter'` | `'record'`) is objectui's `object-data-table` drill |
| 26 | +> key, not a chart one: … |
| 27 | +
|
| 28 | +The reasoning clause and "Delete the key" are unchanged. The neighbouring |
| 29 | +`report` guidance entry (a METRIC / PIVOT widget capability) is untouched — |
| 30 | +its blocks were not remeasured on this card. |
| 31 | + |
| 32 | +⛔ No accept/reject behaviour changes. `mode` remains refused on |
| 33 | +`ChartDrillDownSchema` exactly as before; only the refusal text changes. |
| 34 | + |
| 35 | +**This is shipped, which is why it carries a changeset rather than |
| 36 | +`skip-changeset`.** `@objectstack/spec`'s published `files[]` ships both |
| 37 | +`dist` and `src/**/*.zod.ts`, and `chart.zod.ts` is one of the latter — so the |
| 38 | +sentence ships as source verbatim, and also as a runtime string built into |
| 39 | +`dist/ui/index.js` / `dist/ui/index.mjs` (measured: present at 1 occurrence |
| 40 | +each after a rebuild, with the old "TABLE / PIVOT / METRIC" spelling absent |
| 41 | +from both). |
0 commit comments