Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
88 changes: 50 additions & 38 deletions .changeset/console-82a94170c405.md
Original file line numberDiff line numberDiff line change
Expand Up@@ -4,7 +4,7 @@

Console (objectui) refreshed to `82a94170c405`. Frontend changes in this range:

Derived from the changesets objectui declared over the range — 121 releasing of 166 changesets added across 110 non-merge commits; omitted: 45 release-nothing changesets, 18 commits carrying no changeset (they ship no package code).
Derived from the changesets objectui declared over the range — 121 releasing of 166 changesets added across 191 non-merge commits; omitted: 45 release-nothing changesets, 30 commits carrying no changeset (they ship no package code).

- **minor** — `ComponentMeta.labelling` grows a third value: `'control' | 'group' | 'display'` (objectui#4857, ruled jointly with objectui#4871 as the single repo-wide vocabulary for "how does… (objectui `167ec42e7`)
- **minor** — Publish the five `@objectstack/spec` 17.0.0 keys the renderers already honoured, so authors can discover them (objectui `98eab3681`)
Expand All@@ -15,21 +15,21 @@ Derived from the changesets objectui declared over the range — 121 releasing o
- **minor** — layout: `flex` and `container` now honour a declared scale value of `0` (objectui `93fe362fc`)
- **minor** — **BREAKING** — The fullscreen long-text dialog announces the field's validation state and carries the field's name (objectui `911ceaa05`)
- **minor** — **Breaking (shipped as `minor`, following the `page-header` `description` retirement):** `app-shell` is no longer a component key. `registerLayout()` registered `AppShell` under t… (objectui `29167d540`)
- **minor** — Action param `visible`: one dialect answer, and a fault that is fail-open and LOUD (objectui `183d09b78`)
- **minor** — Remove the retired `striped` / `bordered` / `virtualScroll` list-view surface (objectui `183d09b78`)
- **minor** — Project every declared `recordIdField`, and refuse an action that names no record (objectui `183d09b78`)
- **minor** — Draw a null second-dimension group instead of carrying its measure invisibly (objectui `183d09b78`)
- **minor** — **Breaking (shipped as `minor`, see below):** `@object-ui/layout`'s `<PageHeader>` retires the legacy `description` prop. `subtitle` is now the only spelling for the secondary lin… (objectui `183d09b78`)
- **minor** — Give a chart bucket an identity distinct from its display label (objectui `183d09b78`)
- **minor** — A clicked cartesian mark names its own series, and the drill title reads its label (objectui `183d09b78`)
- **minor** — Remove `BaseFieldMetadata.indexed` — the ObjectStack spec has no field-level index flag (objectui `183d09b78`)
- **minor** — **BREAKING** — A dashboard header `modal` action's `target` names a PAGE, only — DashboardView's second copy of the prefix convention retires (objectui `183d09b78`)
- **minor** — Retire the field designer's `Indexed` toggle — the ObjectStack spec has no field-level index flag (objectui `183d09b78`)
- **minor** — **BREAKING** — A `type: 'modal'` action's string `target` names a PAGE, only — the object fallback retires (objectui `183d09b78`)
- **minor** — **BREAKING** — data-objectstack: retire the four remaining `v3.0.0 Deep Integration` modules — `IntegrationManager`, `SecurityManager`, the studio canvas helpers (`createDefaultCanvasConfig` / `… (objectui `183d09b78`)
- **minor** — Remove `VectorFieldMetadata.indexed` and `VectorFieldMetadata.distance_metric` — both declared keys the ObjectStack spec rejects (objectui `183d09b78`)
- **minor** — **BREAKING** — Settle the two declared-but-unread keys on `AccordionItem`: retire `icon`, wire `disabled` (objectui#4652). (objectui `183d09b78`)
- **minor** — **BREAKING** — Settle the two declared-but-unread keys on `ToggleGroupItem`: retire `icon`, wire `disabled` (objectui#4632). (objectui `183d09b78`)
- **minor** — **BREAKING** — A dashboard header `modal` action's `target` names a PAGE, only — DashboardView's second copy of the prefix convention retires (objectui `c25222758`)
- **minor** — **BREAKING** — A `type: 'modal'` action's string `target` names a PAGE, only — the object fallback retires (objectui `171601c02`)
- **minor** — **Breaking (shipped as `minor`, see below):** `@object-ui/layout`'s `<PageHeader>` retires the legacy `description` prop. `subtitle` is now the only spelling for the secondary lin… (objectui `f923b7cfa`)
- **minor** — **BREAKING** — Settle the two declared-but-unread keys on `AccordionItem`: retire `icon`, wire `disabled` (objectui#4652). (objectui `58b8346be`)
- **minor** — **BREAKING** — data-objectstack: retire the four remaining `v3.0.0 Deep Integration` modules — `IntegrationManager`, `SecurityManager`, the studio canvas helpers (`createDefaultCanvasConfig` / `… (objectui `a8411adf1`)
- **minor** — A clicked cartesian mark names its own series, and the drill title reads its label (objectui `e05db8826`)
- **minor** — Remove `VectorFieldMetadata.indexed` and `VectorFieldMetadata.distance_metric` — both declared keys the ObjectStack spec rejects (objectui `9695da72b`)
- **minor** — Remove `BaseFieldMetadata.indexed` — the ObjectStack spec has no field-level index flag (objectui `97abb24a9`)
- **minor** — Draw a null second-dimension group instead of carrying its measure invisibly (objectui `af025ee70`)
- **minor** — Give a chart bucket an identity distinct from its display label (objectui `9ce096fb0`)
- **minor** — Retire the field designer's `Indexed` toggle — the ObjectStack spec has no field-level index flag (objectui `deb157ad0`)
- **minor** — Action param `visible`: one dialect answer, and a fault that is fail-open and LOUD (objectui `e1d42519b`)
- **minor** — Project every declared `recordIdField`, and refuse an action that names no record (objectui `b1119ece4`)
- **minor** — Remove the retired `striped` / `bordered` / `virtualScroll` list-view surface (objectui `f1d4748c6`)
- **minor** — **BREAKING** — Settle the two declared-but-unread keys on `ToggleGroupItem`: retire `icon`, wire `disabled` (objectui#4632). (objectui `99bd01542`)
- **patch** — docs(plugin-report): rewrite the README export snippets against the real export signatures (objectui `82a94170c`)
- **patch** — Docs only: `packages/plugin-gantt/README.md` no longer teaches two identifiers the package does not export, nor a task shape it does not produce (objectui#5012). Each README impor… (objectui `bb3fab62c`)
- **patch** — The `span` renderer renders its content again — it reads `children`, the key its own type declares and its producers emit. (objectui `839665643`)
Expand DownExpand Up@@ -85,32 +85,32 @@ Derived from the changesets objectui declared over the range — 121 releasing o
- **patch** — A `user` field in a form now receives `dataSource` / `dependentValues` / `dependsOnLabels`, like every other reference field. (objectui `ac600e5d2`)
- **patch** — SpecBridge's form-view bridge stops reading `defaultSort` and `aria`, two keys spec 17 retired on the FormView carrier (`retiredKey()` tombstones — authoring either is a parse err… (objectui `d374cafa2`)
- **patch** — AppShell: drop the unused `Sidebar` import. `AppShell` renders the node the caller passes in the `sidebar` prop and never constructs a `Sidebar` itself, so the import was dead (tr… (objectui `d44279598`)
- **patch** — An action dialog's per-option `visibleWhen` predicates now read the dialog's own in-progress param values. (objectui `183d09b78`)
- **patch** — `AddressField` is translatable, shows no US example placeholders, and formats its readonly line in the reader's address order. (objectui `183d09b78`)
- **patch** — RecordAttachmentsPanel no longer offers a Retry for an api-disabled `sys_attachment` read. (objectui `183d09b78`)
- **patch** — RecordAttachmentsPanel distinguishes a DENIED attachment list from an empty one. (objectui `183d09b78`)
- **patch** — RecordAttachmentsPanel distinguishes an UNLOADED attachment list from an empty one. (objectui `183d09b78`)
- **patch** — Retire `permission_change`, `export`, and `restore` from the audit-log action filter (`AuditLogPage`'s `ACTION_OPTIONS`) and badge maps (`AuditLogPage` and `HistoryTimeline`'s `AC… (objectui `183d09b78`)
- **patch** — A bulk action dialog's per-option `visibleWhen` predicates now read the dialog's own in-progress param values. (objectui `183d09b78`)
- **patch** — The form's cascade clear now recognises object-form fields, so a narrowed option list no longer submits a stale value. (objectui `183d09b78`)
- **patch** — The allow-list of option widgets that are fed the live record is now one exported constant, `CASCADE_OPTION_WIDGET_TYPES`, instead of three private copies. (objectui `183d09b78`)
- **patch** — A grouped chart whose SECOND dimension was never projected says so instead of drawing an empty frame. (objectui `183d09b78`)
- **patch** — The config panel footer translates: `ConfigPanelRenderer`'s Save / Discard labels come from the locale pack. (objectui `183d09b78`)
- **patch** — The console's embedded index editor no longer offers controls for keys the spec removed. (objectui `183d09b78`)
- **patch** — The dashboard config sidebar translates: `WidgetConfigPanel` and `DashboardConfigPanel` are wired through `t()`. (objectui `183d09b78`)
- **patch** — Delete two dead i18n namespaces — `configPanel.*` (16 keys) and `renderer.*` (13 keys) — from all ten locale packs. (objectui `183d09b78`)
- **patch** — Delete two dead i18n namespaces — `workflow.*` (58 keys) and `publicForm.demo.*` (36 keys) — from all ten locale packs. (objectui `183d09b78`)
- **patch** — Fix: a `drawer` form with no `sections` now renders the object's declared `fieldGroups` as sections, matching `ObjectForm` and `ModalForm`. (objectui `183d09b78`)
- **patch** — Fix: a `drawer` form with no `sections` now honours the object's field-level conditional rules (`visibleWhen` / `readonlyWhen` / `requiredWhen`) and field `group`. (objectui `183d09b78`)
- **patch** — `FilterBuilder` settles a row's operator when its **field** changes, instead of leaving an operator the new field's dropdown does not list. (objectui `183d09b78`)
- **patch** — FilterConditionField can author the spec's `$icontains` — case-insensitive contains is reachable from the filter UI. (objectui `183d09b78`)
- **patch** — `FilterBuilder` gives the set and range operators an input that matches the value shape the spec accepts, and stops minting the shape it refuses. (objectui `183d09b78`)
- **patch** — `RecordDetailView`'s `type: 'api'` action handler now refuses to dispatch a record-scoped mutation when the record cannot supply the declared `recordIdParam` key, instead of sendi… (objectui `183d09b78`)
- **patch** — Studio 页面设计器不再为 canonical `page:header` 提供 `icon` 编辑框(objectui#3829) (objectui `183d09b78`)
- **patch** — The allow-list of option widgets that are fed the live record is now one exported constant, `CASCADE_OPTION_WIDGET_TYPES`, instead of three private copies. (objectui `bbe8b86e8`)
- **patch** — `SidebarNav`'s README example teaches the shape the component actually reads. (objectui `8a9deceea`)
- **patch** — A readonly group-labelled field is now DESCRIBED by its own help text, not just named by its label. (objectui `0bffb1848`)
- **patch** — The "modal target names no page" diagnostic is one message again, on all three surfaces (objectui `5574ed67d`)
- **patch** — `FilterBuilder` settles a row's operator when its **field** changes, instead of leaving an operator the new field's dropdown does not list. (objectui `c4533dc8f`)
- **patch** — Fix: a `drawer` form with no `sections` now renders the object's declared `fieldGroups` as sections, matching `ObjectForm` and `ModalForm`. (objectui `9b20dea36`)
- **patch** — The form's cascade clear now recognises object-form fields, so a narrowed option list no longer submits a stale value. (objectui `78c0f9ae8`)
- **patch** — `DashboardWidgetSchema`: stop re-typing the retired `responsive` key as `any` (objectui `7f96b10e8`)
- **patch** — Fix: a `drawer` form with no `sections` now honours the object's field-level conditional rules (`visibleWhen` / `readonlyWhen` / `requiredWhen`) and field `group`. (objectui `469b60493`)
- **patch** — The console's embedded index editor no longer offers controls for keys the spec removed. (objectui `9a3d04e4e`)
- **patch** — A bulk action dialog's per-option `visibleWhen` predicates now read the dialog's own in-progress param values. (objectui `9aecabe18`)
- **patch** — `FilterBuilder` gives the set and range operators an input that matches the value shape the spec accepts, and stops minting the shape it refuses. (objectui `2b5026136`)
- **patch** — A create form no longer deadlocks on a `requiredWhen` field that also declares a runtime `defaultValue`. (objectui `d971e51c0`)
- **patch** — An action dialog's per-option `visibleWhen` predicates now read the dialog's own in-progress param values. (objectui `2646ccb72`)
- **patch** — The config panel footer translates: `ConfigPanelRenderer`'s Save / Discard labels come from the locale pack. (objectui `2e82ab2ae`)
- **patch** — The dashboard config sidebar translates: `WidgetConfigPanel` and `DashboardConfigPanel` are wired through `t()`. (objectui `ef0d1502f`)
- **patch** — Fix a list filter that silently applied nothing when the first thing you picked was **Is null** or **Is not null**. (objectui `138ab04d5`)
- **patch** — Delete two dead i18n namespaces — `configPanel.*` (16 keys) and `renderer.*` (13 keys) — from all ten locale packs. (objectui `f34226ea9`)
- **patch** — The list filter builder no longer offers `Is set` / `Is not set`, which its query dialects cannot express. (objectui `616a2a547`)
- **patch** — Delete two dead i18n namespaces — `workflow.*` (58 keys) and `publicForm.demo.*` (36 keys) — from all ten locale packs. (objectui `564b60523`)
- …and 21 more releasing changesets in this range (list capped at 100; see the objectui range below).

⚠️ 10 of these carry a breaking change: 10 by the author's own breaking annotation in the changeset body — objectui declares no `major` inside a launch window (`scripts/check-changeset-no-major.mjs`). Each is marked **BREAKING** in the list above — read them before compiling the release record.

**In this console build, declared nowhere** — objectui merged 18 commits in this range with no `.changeset/*.md`. The code is inside the pin above and ships here, but nothing upstream declared them, so they appear in no objectui CHANGELOG and in no entry above. Listed by subject rather than counted, because a count cannot tell a dependency bump from a form-behaviour change (objectstack#6174); the upstream gate that would prevent this is objectui#3387.
**In this console build, declared nowhere** — objectui merged 30 commits in this range with no `.changeset/*.md`. The code is inside the pin above and ships here, but nothing upstream declared them, so they appear in no objectui CHANGELOG and in no entry above. Listed by subject rather than counted, because a count cannot tell a dependency bump from a form-behaviour change (objectstack#6174); the upstream gate that would prevent this is objectui#3387.

- _(no changeset)_ chore(deps-dev): bump the dev-dependencies group across 1 directory with 11 updates (#4948) (objectui `590dd6356`)
- _(no changeset)_ chore(deps): bump @objectstack/lint from 17.0.0-rc.6 to 17.0.0 (#4954) (objectui `e609aacc5`)
Expand All@@ -130,6 +130,18 @@ Derived from the changesets objectui declared over the range — 121 releasing o
- _(no changeset)_ docs(skills): auth-permissions 的 hidden 示例改用 data. 根,并写清表达式作用域 (#4813) (objectui `64553a851`)
- _(no changeset)_ test(config): drop four dead vitest alias entries and pin that every target exists (#4802) (objectui `f2dc8fa96`)
- _(no changeset)_ docs(skills,docs,site): 教学面停止教 `props` 信封,键提回节点 (#4786) (#4800) (objectui `5a3c06afb`)
- _(no changeset)_ docs(skills,site,agents): 教学面改用声明键 columns,停止教未声明的 cols (#4011) (#4785) (objectui `db8184cd9`)
- _(no changeset)_ feat(lint): ban OData query params nested under a dead `options` key (objectui#4734) (#4741) (objectui `af460fb6d`)
- _(no changeset)_ chore(components): remove unread, unpublished component.yml metadata files (#4732) (objectui `baa89a1ea`)
- _(no changeset)_ fix(examples): add required value keys to basic-accordion.json items (#4729) (objectui `099656deb`)
- _(no changeset)_ docs(accordion): rewrite Schema block to match the real AccordionSchema/AccordionItem interface (#4727) (objectui `466ce43b5`)
- _(no changeset)_ fix(i18n): apply the count reservation per direction, not to shared holes (#4719) (objectui `966235ebe`)
- _(no changeset)_ fix(scripts): bound shadcn-sync registry requests with a 10s timeout (#4715) (objectui `21c4e5236`)
- _(no changeset)_ fix(examples): pin the two plugin-calendar catalog entries onto their own events (#4627) (#4667) (objectui `aab597df9`)
- _(no changeset)_ fix(docs): toggle-group schema teaches selectionType, not type, for selection mode (#4665) (objectui `6d4f5bd59`)
- _(no changeset)_ fix(examples,scripts): regenerating the schema catalog stops discarding curated metadata (#4637) (objectui `1111fa1c0`)
- _(no changeset)_ docs: bump QUICK_REFERENCE.md Current Release to 17.5.0 (#4643) (objectui `902227752`)
- _(no changeset)_ chore: release packages (#4126) (objectui `5bf5d2cb6`)

<!-- adr-0087: not-required (no-migration-prescription) All ten declared-breaking entries in this range are TypeScript-declaration or renderer-behaviour changes inside objectui's OWN npm packages, judged one by one against their upstream changesets rather than as a batch: `@object-ui/layout` (`mobileNavMode`'s retired third union member; the `app-shell` component-key deregistration), `@object-ui/app-shell` (a modal action's string `target` losing its object-name fallback), `@object-ui/data-objectstack` (the four remaining `v3.0.0 Deep Integration` modules), `@object-ui/types` + `@object-ui/components` (`AccordionItem.icon` / `ToggleGroupItem.icon` retiring, `disabled` wired on both), and `@object-ui/fields` + `@object-ui/plugin-form` (grid/line-item/master-detail columns keyed by the already-published `name` spelling instead of the never-published `field` read, objectui#3951/PR #4909 — the fix this pin bump exists to pick up). None of them is reachable through `@objectstack/console`, which publishes a frozen prebuilt SPA: its `files` list is `["dist", "README.md", "CHANGELOG.md"]` and its sole `exports` entry is `./package.json`, so it forwards no `@object-ui/*` module entry point and re-exports none of these types or components. The `name`-vs-`field` grid-column spelling is the one entry that touches an AUTHORABLE metadata key, and its spec-side half — `inlineColumns` / `relatedListColumns` now REJECTING the `field` spelling under a strict Zod schema — is objectstack#9227 / PR #9355, a separate, already-accepted PR carrying its own ADR-0087 disposition; that PR is not part of this diff (`packages/spec/src/**` is untouched here) and this bump does not re-answer it. No `packages/spec` schema, authorable metadata key or protocol surface changes in this range, so there is no stored-metadata rewrite for `objectstack migrate meta` to prescribe and therefore no ADR-0087 ledger entry to write or to name from THIS bump. -->

Expand Down
Loading