You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Flight ⑤ of the published-skills factual sweep. Every correction is settled
against the implementation (spec Zod schemas in this repo; @object-ui renderer
sources probed read-only in objectui), never against another document.
Three of the seven are one class: "silently dropped" claims that outlived the
protocol-17 strict-unknown-keys cutover, where the schema now REJECTS by name.
Net -12 tokens / -2 lines; no ratchet ceiling touched.
Part of #13658
Claude-Session: https://claude.ai/code/session_01EnE7G31tqbxN1rqpQmzurT
Co-authored-by: Claude <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: skills/objectstack-ui/SKILL.md
+22-24Lines changed: 22 additions & 24 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -60,6 +60,7 @@ App navigation, Dashboards, Reports, and Actions.
60
60
|`map`| Geospatial records with `location` fields |
61
61
|`chart`| Aggregate visualisation over the object (mini chart view) |
62
62
|`tree`| Self-referencing hierarchy (tree-grid) |
63
+
|`page`| Mounts a published Page (`pageName`); no rows of its own |
63
64
64
65
### Form Views
65
66
@@ -322,11 +323,11 @@ Rules:
322
323
Want both demos? Put them on different views.
323
324
-**On an object list view (`*.view.ts``list` / `listViews`), only
324
325
`element: 'dropdown'` (value chips) is allowed — `tabs` is page-only**
325
-
(ADR-0047 amendment). An object view's
326
-
saved-view `ViewTabBar` already owns the tab-bar role, so a `tabs`
327
-
user-filter would render a second, colliding tab bar. The spec narrows it
328
-
(`ObjectUserFiltersSchema` — a `tabs` element is untypable at author time
329
-
and dropped at parse) and the `validate` list-view-mode lint reports it.
326
+
(ADR-0047 amendment). An object view's saved-view `ViewTabBar` already owns
327
+
the tab-bar role, so a `tabs` user-filter would render a second, colliding
328
+
tab bar. The spec narrows it (`ObjectUserFiltersSchema` — a `tabs` element is
329
+
untypable at author time and **rejected**at parse, not dropped) and the
330
+
`validate` list-view-mode lint reports it.
330
331
Need named presets on an object? Add a `listViews` entry instead. The full
331
332
`dropdown | tabs | toggle` range applies only to **page lists** /
332
333
`interfaceConfig.userFilters` (the block above).
@@ -558,7 +559,7 @@ Field shapes:
558
559
|`bands[].label`| yes | Header text for the band (白班 / 夜班). |
559
560
|`bands[].start` / `bands[].end`| yes |`'HH:mm'`. When `end <= start` the band crosses midnight. Bands must tile the 24h day from `dayStart`. |
560
561
|`bands[].color`| no | Any CSS color. Tints that band's column; **omit for no tint**. |
561
-
|`showMidnight`| no | Draw the dashed calendar-midnight cue inside cross-midnight bands. Default `true`; set `false` to hide it. |
562
+
|`showMidnight`| no | Draw the dashed local-0:00 cue inside cross-midnight bands (the 排班日 cell itself stays unbroken). Default `true`; set `false` to hide it. |
562
563
563
564
Behavior:
564
565
@@ -570,11 +571,7 @@ Behavior:
570
571
in, so a 夜班 spanning 20:00→次日08:00 stays in a single column.
571
572
-**Drag-snaps to band boundaries** (the band duration, e.g. 12h) instead of
572
573
whole days.
573
-
-**Calendar-midnight cue.** A subtle dashed vertical line marks local 0:00
574
-
*inside* a cross-midnight band — the 排班日 cell itself stays unbroken. Set
575
-
`showMidnight: false` to turn it off.
576
-
-**Default off = zero regression.** Omit `timeSegments` and the gantt behaves
577
-
exactly as before. Tints render only for bands that declare `color`.
574
+
-**Default off.** Omit `timeSegments` and the gantt renders unsegmented.
578
575
579
576
---
580
577
@@ -669,6 +666,7 @@ A widget's `type` is its **chart type** (`ChartTypeSchema`; defaults to
669
666
| Single value |`metric`, `kpi`, `gauge`, `solid-gauge`, `bullet` (all render the number today; gauge variants gain a dial when a gauge renderer lands) |
670
667
| Comparison |`bar`, `horizontal-bar`, `column`|
671
668
| Trend |`line`, `area`|
669
+
| Mixed |`combo` (bar/line/area on shared dual axes) |
672
670
| Distribution |`pie`, `donut`, `funnel`|
673
671
| Relationship |`scatter`|
674
672
| Composition |`treemap`, `sankey`|
@@ -688,9 +686,9 @@ dashboard widget, a report, and a list `type:'chart'` view all **bind a `dataset
688
686
and select named `dimensions` + `values`**; the dataset owns the base object,
689
687
allowed joins, intrinsic filter, dimensions, and certified measures. The legacy
0 commit comments