From c91c5681711b7c657e0b56d0bfe9eda57fe45076 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 5 Jul 2026 09:22:51 +0000 Subject: [PATCH] chore: version packages --- .changeset/named-import-mappings.md | 6 -- ...filters-exclusivity-and-predicate-guard.md | 10 --- .changeset/object-nav-filters.md | 7 -- .changeset/readonly-package-error-copy.md | 5 -- .changeset/record-flow-surface.md | 9 --- .../retire-placeholder-metadata-kinds.md | 9 --- .changeset/studio-metadata-runtime-wiring.md | 48 ------------- examples/app-crm/CHANGELOG.md | 13 ++++ examples/app-crm/package.json | 2 +- examples/app-showcase/CHANGELOG.md | 17 +++++ examples/app-showcase/package.json | 2 +- examples/app-todo/CHANGELOG.md | 20 ++++++ examples/app-todo/package.json | 2 +- examples/embed-objectql/CHANGELOG.md | 14 ++++ examples/embed-objectql/package.json | 2 +- packages/adapters/hono/CHANGELOG.md | 9 +++ packages/adapters/hono/package.json | 2 +- packages/apps/account/CHANGELOG.md | 12 ++++ packages/apps/account/package.json | 2 +- packages/apps/setup/CHANGELOG.md | 12 ++++ packages/apps/setup/package.json | 2 +- packages/apps/studio/CHANGELOG.md | 12 ++++ packages/apps/studio/package.json | 2 +- packages/cli/CHANGELOG.md | 57 +++++++++++++++ packages/cli/package.json | 2 +- packages/client-react/CHANGELOG.md | 14 ++++ packages/client-react/package.json | 2 +- packages/client/CHANGELOG.md | 13 ++++ packages/client/package.json | 2 +- packages/cloud-connection/CHANGELOG.md | 15 ++++ packages/cloud-connection/package.json | 2 +- .../connectors/connector-mcp/CHANGELOG.md | 13 ++++ .../connectors/connector-mcp/package.json | 2 +- .../connectors/connector-openapi/CHANGELOG.md | 13 ++++ .../connectors/connector-openapi/package.json | 2 +- .../connectors/connector-rest/CHANGELOG.md | 13 ++++ .../connectors/connector-rest/package.json | 2 +- .../connectors/connector-slack/CHANGELOG.md | 13 ++++ .../connectors/connector-slack/package.json | 2 +- packages/console/CHANGELOG.md | 2 + packages/console/package.json | 2 +- packages/core/CHANGELOG.md | 52 ++++++++++++++ packages/core/package.json | 2 +- packages/create-objectstack/CHANGELOG.md | 2 + packages/create-objectstack/package.json | 2 +- packages/dogfood/CHANGELOG.md | 17 +++++ packages/dogfood/package.json | 2 +- packages/downstream-contract/CHANGELOG.md | 11 +++ packages/downstream-contract/package.json | 2 +- packages/formula/CHANGELOG.md | 11 +++ packages/formula/package.json | 2 +- packages/lint/CHANGELOG.md | 13 ++++ packages/lint/package.json | 2 +- packages/mcp/CHANGELOG.md | 14 ++++ packages/mcp/package.json | 2 +- packages/metadata-core/CHANGELOG.md | 17 +++++ packages/metadata-core/package.json | 2 +- packages/metadata-fs/CHANGELOG.md | 7 ++ packages/metadata-fs/package.json | 2 +- packages/metadata-protocol/CHANGELOG.md | 17 +++++ packages/metadata-protocol/package.json | 2 +- packages/metadata/CHANGELOG.md | 17 +++++ packages/metadata/package.json | 2 +- packages/objectql/CHANGELOG.md | 65 +++++++++++++++++ packages/objectql/package.json | 2 +- packages/observability/CHANGELOG.md | 11 +++ packages/observability/package.json | 2 +- packages/platform-objects/CHANGELOG.md | 12 ++++ packages/platform-objects/package.json | 2 +- packages/plugins/driver-memory/CHANGELOG.md | 13 ++++ packages/plugins/driver-memory/package.json | 2 +- packages/plugins/driver-mongodb/CHANGELOG.md | 13 ++++ packages/plugins/driver-mongodb/package.json | 2 +- packages/plugins/driver-sql/CHANGELOG.md | 14 ++++ packages/plugins/driver-sql/package.json | 2 +- .../plugins/driver-sqlite-wasm/CHANGELOG.md | 14 ++++ .../plugins/driver-sqlite-wasm/package.json | 2 +- packages/plugins/embedder-openai/CHANGELOG.md | 11 +++ packages/plugins/embedder-openai/package.json | 2 +- .../plugins/knowledge-memory/CHANGELOG.md | 14 ++++ .../plugins/knowledge-memory/package.json | 2 +- .../plugins/knowledge-ragflow/CHANGELOG.md | 14 ++++ .../plugins/knowledge-ragflow/package.json | 2 +- .../plugins/plugin-approvals/CHANGELOG.md | 16 +++++ .../plugins/plugin-approvals/package.json | 2 +- packages/plugins/plugin-audit/CHANGELOG.md | 14 ++++ packages/plugins/plugin-audit/package.json | 2 +- packages/plugins/plugin-auth/CHANGELOG.md | 15 ++++ packages/plugins/plugin-auth/package.json | 2 +- packages/plugins/plugin-dev/CHANGELOG.md | 26 +++++++ packages/plugins/plugin-dev/package.json | 2 +- packages/plugins/plugin-email/CHANGELOG.md | 15 ++++ packages/plugins/plugin-email/package.json | 2 +- .../plugins/plugin-hono-server/CHANGELOG.md | 15 ++++ .../plugins/plugin-hono-server/package.json | 2 +- .../plugins/plugin-org-scoping/CHANGELOG.md | 14 ++++ .../plugins/plugin-org-scoping/package.json | 2 +- packages/plugins/plugin-reports/CHANGELOG.md | 14 ++++ packages/plugins/plugin-reports/package.json | 2 +- packages/plugins/plugin-security/CHANGELOG.md | 23 +++++++ packages/plugins/plugin-security/package.json | 2 +- packages/plugins/plugin-sharing/CHANGELOG.md | 57 +++++++++++++++ packages/plugins/plugin-sharing/package.json | 2 +- packages/plugins/plugin-webhooks/CHANGELOG.md | 14 ++++ packages/plugins/plugin-webhooks/package.json | 2 +- packages/rest/CHANGELOG.md | 19 +++++ packages/rest/package.json | 2 +- packages/runtime/CHANGELOG.md | 69 +++++++++++++++++++ packages/runtime/package.json | 2 +- packages/sdui-parser/CHANGELOG.md | 2 + packages/sdui-parser/package.json | 2 +- .../services/service-analytics/CHANGELOG.md | 13 ++++ .../services/service-analytics/package.json | 2 +- .../services/service-automation/CHANGELOG.md | 14 ++++ .../services/service-automation/package.json | 2 +- packages/services/service-cache/CHANGELOG.md | 14 ++++ packages/services/service-cache/package.json | 2 +- .../service-cluster-redis/CHANGELOG.md | 12 ++++ .../service-cluster-redis/package.json | 2 +- .../services/service-cluster/CHANGELOG.md | 13 ++++ .../services/service-cluster/package.json | 2 +- .../services/service-datasource/CHANGELOG.md | 13 ++++ .../services/service-datasource/package.json | 2 +- packages/services/service-i18n/CHANGELOG.md | 54 +++++++++++++++ packages/services/service-i18n/package.json | 2 +- packages/services/service-job/CHANGELOG.md | 14 ++++ packages/services/service-job/package.json | 2 +- .../services/service-knowledge/CHANGELOG.md | 13 ++++ .../services/service-knowledge/package.json | 2 +- .../services/service-messaging/CHANGELOG.md | 13 ++++ .../services/service-messaging/package.json | 2 +- .../services/service-package/CHANGELOG.md | 13 ++++ .../services/service-package/package.json | 2 +- packages/services/service-queue/CHANGELOG.md | 14 ++++ packages/services/service-queue/package.json | 2 +- .../services/service-realtime/CHANGELOG.md | 14 ++++ .../services/service-realtime/package.json | 2 +- .../services/service-settings/CHANGELOG.md | 15 ++++ .../services/service-settings/package.json | 2 +- .../services/service-storage/CHANGELOG.md | 15 ++++ .../services/service-storage/package.json | 2 +- packages/spec/CHANGELOG.md | 25 +++++++ packages/spec/package.json | 2 +- packages/triggers/trigger-api/CHANGELOG.md | 13 ++++ packages/triggers/trigger-api/package.json | 2 +- .../trigger-record-change/CHANGELOG.md | 13 ++++ .../trigger-record-change/package.json | 2 +- .../triggers/trigger-schedule/CHANGELOG.md | 13 ++++ .../triggers/trigger-schedule/package.json | 2 +- packages/types/CHANGELOG.md | 11 +++ packages/types/package.json | 2 +- packages/verify/CHANGELOG.md | 26 +++++++ packages/verify/package.json | 2 +- packages/vscode-objectstack/CHANGELOG.md | 2 + packages/vscode-objectstack/package.json | 2 +- 155 files changed, 1355 insertions(+), 168 deletions(-) delete mode 100644 .changeset/named-import-mappings.md delete mode 100644 .changeset/nav-filters-exclusivity-and-predicate-guard.md delete mode 100644 .changeset/object-nav-filters.md delete mode 100644 .changeset/readonly-package-error-copy.md delete mode 100644 .changeset/record-flow-surface.md delete mode 100644 .changeset/retire-placeholder-metadata-kinds.md delete mode 100644 .changeset/studio-metadata-runtime-wiring.md diff --git a/.changeset/named-import-mappings.md b/.changeset/named-import-mappings.md deleted file mode 100644 index ec3dd08f27..0000000000 --- a/.changeset/named-import-mappings.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@objectstack/rest': minor -'@objectstack/spec': minor ---- - -feat(rest,spec): named import mappings (#2611) — `POST /data/:object/import` accepts `mappingName`, resolving a registered `defineMapping` artifact (stack `mappings:`) and applying its fieldMapping pipeline (rename + constant/map/split/join; lookup delegates to the built-in reference resolution) as a strict projection before coercion. The artifact's `mode`/`upsertKey` serve as writeMode/matchFields defaults; explicit request values win. Errors are loud and specific: `MAPPING_NOT_FOUND`, `MAPPING_TARGET_MISMATCH`, `MAPPING_FORMAT_MISMATCH`, `CONFLICTING_MAPPING` (mutually exclusive with the inline rename), and `UNSUPPORTED_TRANSFORM` for `javascript` (no server-side sandbox — never silently skipped). `defineStack` cross-reference validation now rejects mappings targeting undefined objects and `javascript` transforms at build time. diff --git a/.changeset/nav-filters-exclusivity-and-predicate-guard.md b/.changeset/nav-filters-exclusivity-and-predicate-guard.md deleted file mode 100644 index 245d5261f1..0000000000 --- a/.changeset/nav-filters-exclusivity-and-predicate-guard.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@objectstack/spec': minor -'@objectstack/plugin-security': minor ---- - -feat(spec,security): make ambiguous nav landings unrepresentable + close the field-permission filter oracle (objectui#2251, objectui ADR-0055). - -**spec — `ObjectNavItem` target exclusivity.** `NavigationItemSchema` now rejects an object nav item that combines `filters` with `recordId` or `viewName` (custom issue on `filters` with the fix in the message). Runtime precedence would silently ignore the extras — a stale `recordId` hijacking a configured `filters` slice — so the ambiguous combination is now unwritable (ADR-0053 correct-by-construction). FROM `{ filters, viewName }` / `{ filters, recordId }` TO exactly one landing field; the legacy `recordId` + `viewName` combination stays tolerated (documented: `viewName` is ignored). `filters` shipped in the same unreleased minor, so no released metadata is affected. - -**plugin-security — field-level predicate guard.** `FieldMasker` strips non-readable fields from RESULTS, but predicates still leaked their values: filtering / sorting / grouping / aggregating by a hidden field changes row presence (a filter oracle — probe `salary >= X` even though the column is masked). The security middleware now rejects (403 `PermissionDeniedError`, `reason: 'field_predicate_denied'`) any caller query whose `where` / `orderBy` / `groupBy` / `having` / `aggregations` / `windowFunctions` reference a field the caller cannot read — evaluated against the caller's AST **before** RLS injection, so RLS policies may keep referencing hidden fields (e.g. `owner_id`). Rejection over silent predicate dropping: removing an `$and` branch widens results and re-opens the oracle. New exports: `assertReadableQueryFields`, `collectQueryFields`, `collectConditionFields`. diff --git a/.changeset/object-nav-filters.md b/.changeset/object-nav-filters.md deleted file mode 100644 index e1541cd791..0000000000 --- a/.changeset/object-nav-filters.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@objectstack/spec': minor ---- - -feat(spec): `ObjectNavItem.filters` — declarative URL filter conditions targeting the parameterized bare data surface (objectui ADR-0055, objectui#2251). - -An object nav item can now carry `filters: Record` (equality semantics). The shell resolves such an entry to `/:objectName/data?filter[]=` — an unanchored data surface with removable filter chips — instead of a saved list view. Use it for one-off / parameterized slices (dashboard drill-throughs, "assigned to me" links); slices worth curating stay on `viewName`. Values support the same `{current_user_id}` / `{current_org_id}` template variables as `recordId`. Target precedence within `type: 'object'`: `recordId` → `filters` → `viewName`. Purely additive — items without `filters` are unaffected. diff --git a/.changeset/readonly-package-error-copy.md b/.changeset/readonly-package-error-copy.md deleted file mode 100644 index f999dd5293..0000000000 --- a/.changeset/readonly-package-error-copy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@objectstack/metadata-protocol": patch ---- - -Rewrite the `writable_package_required` rejection message as user-facing remediation ("switch to a writable package in the package selector, or create a new one") instead of developer-facing copy that cited an internal ADR path — the message is surfaced verbatim as a Studio toast. The ADR pointer moves to a `docs` property on the error; `code`, `status`, and `packageId` are unchanged. diff --git a/.changeset/record-flow-surface.md b/.changeset/record-flow-surface.md deleted file mode 100644 index 31781e8baf..0000000000 --- a/.changeset/record-flow-surface.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@objectstack/spec': minor ---- - -feat(spec): `deriveRecordFlowSurface(def, flow, opts)` — flow-aware record-surface derivation (#2604, extends #2578's `deriveRecordSurface`, ADR-0085 §5 one-shared-derivation). - -Decides the default surface per record FLOW: `view` keeps the shipped behavior verbatim (field-heavy → `route`/page, light → drawer overlay); the task flows (`create` / `edit` / `child-create` / `child-edit`) are ALWAYS overlays — never routes — with the derived `'page'` mapped to a full-screen modal (`size: 'full'`) and light objects staying a drawer. `child-*` flows take the CHILD object's def (the overlay sizes to the record being edited; the return target is always the parent detail). Mobile task flows are full-screen modals. - -Rationale: viewing a record is shareable state (deep-link belongs there); making/changing one is a transient task whose URL is a false promise (refresh loses the draft) and whose invariant is lossless return to the origin. Renderers treat the result as the DEFAULT only — explicit `navigation.mode`/`size`, `FormView.type`/`modalSize`, or an assigned page still win. No new authorable key (ADR-0085 §2). Additive, no breaking changes. diff --git a/.changeset/retire-placeholder-metadata-kinds.md b/.changeset/retire-placeholder-metadata-kinds.md deleted file mode 100644 index 854751f599..0000000000 --- a/.changeset/retire-placeholder-metadata-kinds.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@objectstack/spec': minor -'@objectstack/objectql': minor -'@objectstack/metadata-core': minor ---- - -feat(spec)!: retire the placeholder metadata kinds `trigger`, `router`, `function`, `service` (ADR-0088). - -The registry is the contract authors — human and AI — read to learn what can be authored, and these four kinds had no authoring surface, no loader, no schema, and no (or a dead) consumer. `MetadataTypeSchema` + `DEFAULT_METADATA_TYPE_REGISTRY` shrink 30 → 26; `OPS_FILE_SUFFIX_REGEX` drops the four suffixes; the dormant objectql load path that registered QL functions from `type: 'function'` metadata items is removed (`defineStack({ functions })` / plugin `contributes.functions` remain the delivered forms); the metadata-core lockstep enum follows. `external_catalog` stays and is now annotated RUNTIME-CREATED (ADR-0062): its lack of an authoring surface is correct design. The delivered replacements: `hook` / `record_change` flows (trigger), plugin `contributes.routes` + declarative `apis:` (router), `defineStack({ functions })` (function), the plugin/service registry (service). Persisted `sys_metadata` rows are unaffected — no production read path re-parses stored `type` values through the enum. diff --git a/.changeset/studio-metadata-runtime-wiring.md b/.changeset/studio-metadata-runtime-wiring.md deleted file mode 100644 index f4e6974133..0000000000 --- a/.changeset/studio-metadata-runtime-wiring.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -'@objectstack/objectql': patch -'@objectstack/runtime': patch -'@objectstack/core': patch -'@objectstack/service-i18n': patch -'@objectstack/plugin-sharing': patch ---- - -Wire three more Studio-authored metadata surfaces at runtime (#2605 — the -"declared but never wired" family, following the #2596 hooks template). - -**Authored actions now execute (#2605 item 1).** `engine.executeAction`'s map -was only ever populated from the app bundle at boot, so a published `action` -row (standalone or embedded in an authored object's `actions[]`) was stored -and listed but never executable — before OR after a restart. Now: - -- `AppPlugin` installs a QuickJS-sandboxed default action runner at boot - (`engine.setDefaultActionRunner`), the action-path twin of the #2596 hook - body runner. Opt out with `OS_DISABLE_AUTHORED_ACTIONS=1`. -- `ObjectQLPlugin` re-registers runtime-authored actions from their - `sys_metadata` rows under `packageId: 'metadata-service'` at - `kernel:ready`, on `metadata:reloaded`, and on `action`/`object` protocol - mutations — saves, publishes, edits, and deletes take effect live. - Package-artifact actions are excluded (AppPlugin owns those; re-registering - would clobber their handlers). - -**Authored translations reach the i18n runtime (#2591).** `translation` -metadata items (single-locale `AppTranslationBundle` payloads; locale from -`_meta.locale`, a top-level `locale`, or a BCP-47-shaped item name) now load -into the i18n service as a separate authored layer that overlays static -bundles. Both adapters carry the layer — service-i18n's `FileI18nAdapter` -AND the kernel's in-memory fallback (`createMemoryI18n`), which is what dev -and standalone stacks actually run. The shared sync -(`wireAuthoredTranslationSync`, exported from `@objectstack/core`, wired by -the runtime's AppPlugin and by I18nServicePlugin with single-owner -semantics) runs at `kernel:ready`, on `metadata:reloaded`, and on -`translation` protocol mutations, with clear-then-reload semantics so -deleted items/keys stop resolving instead of lingering in the deep-merged -map. - -**Sharing rules created at runtime bind without a restart (#2592).** -`bindRuleHooks` was boot-only, so the first rule authored at runtime for an -object with no boot-time rule silently never evaluated (rule authoring is a -data insert — `metadata:reloaded` never fires). The sharing plugin now binds -afterInsert/afterUpdate/afterDelete triggers on `sys_sharing_rule` that -unbind + re-bind the rule-hook package from a fresh `listRules()`, serialized -so overlapping writes can't leave a stale snapshot bound, and fail-safe so a -rebind failure never fails the rule write. diff --git a/examples/app-crm/CHANGELOG.md b/examples/app-crm/CHANGELOG.md index 6a6387074c..d97fddc4e0 100644 --- a/examples/app-crm/CHANGELOG.md +++ b/examples/app-crm/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/example-crm +## 4.0.72 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/runtime@12.2.0 + ## 4.0.71 ### Patch Changes diff --git a/examples/app-crm/package.json b/examples/app-crm/package.json index da3606af32..58d04b0b69 100644 --- a/examples/app-crm/package.json +++ b/examples/app-crm/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/example-crm", - "version": "4.0.71", + "version": "4.0.72", "description": "Minimal CRM example — a smoke-test workspace that exercises the metadata loading pipeline (objects → views → app → dashboard → hook → flow → seed). For a full-featured enterprise CRM see https://github.com/objectstack-ai/hotcrm.", "license": "Apache-2.0", "private": true, diff --git a/examples/app-showcase/CHANGELOG.md b/examples/app-showcase/CHANGELOG.md index a8003a1f07..3e3121826c 100644 --- a/examples/app-showcase/CHANGELOG.md +++ b/examples/app-showcase/CHANGELOG.md @@ -1,5 +1,22 @@ # @objectstack/example-showcase +## 0.2.18 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/runtime@12.2.0 + - @objectstack/cloud-connection@12.2.0 + - @objectstack/connector-rest@12.2.0 + - @objectstack/connector-slack@12.2.0 + - @objectstack/driver-sql@12.2.0 + ## 0.2.17 ### Patch Changes diff --git a/examples/app-showcase/package.json b/examples/app-showcase/package.json index 72a675bdc6..25564e771e 100644 --- a/examples/app-showcase/package.json +++ b/examples/app-showcase/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/example-showcase", - "version": "0.2.17", + "version": "0.2.18", "description": "Kitchen-sink showcase workspace — exercises every metadata type, every view type, every chart type, and the major end-to-end capability chains (security, automation, analytics). Built for demonstration, debugging, and coverage-driven verification.", "license": "Apache-2.0", "private": true, diff --git a/examples/app-todo/CHANGELOG.md b/examples/app-todo/CHANGELOG.md index c1460413aa..bf2e36f76b 100644 --- a/examples/app-todo/CHANGELOG.md +++ b/examples/app-todo/CHANGELOG.md @@ -1,5 +1,25 @@ # @objectstack/example-todo +## 4.0.72 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/objectql@12.2.0 + - @objectstack/runtime@12.2.0 + - @objectstack/client@12.2.0 + - @objectstack/mcp@12.2.0 + - @objectstack/metadata@12.2.0 + - @objectstack/driver-sqlite-wasm@12.2.0 + - @objectstack/knowledge-memory@12.2.0 + - @objectstack/service-knowledge@12.2.0 + ## 4.0.71 ### Patch Changes diff --git a/examples/app-todo/package.json b/examples/app-todo/package.json index 7844c9491b..be8afa8bea 100644 --- a/examples/app-todo/package.json +++ b/examples/app-todo/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/example-todo", - "version": "4.0.71", + "version": "4.0.72", "description": "Example Todo App using ObjectStack Protocol", "license": "Apache-2.0", "private": true, diff --git a/examples/embed-objectql/CHANGELOG.md b/examples/embed-objectql/CHANGELOG.md index 60c6d72c19..f32ee3ba44 100644 --- a/examples/embed-objectql/CHANGELOG.md +++ b/examples/embed-objectql/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/example-embed-objectql +## 0.0.12 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/objectql@12.2.0 + - @objectstack/driver-memory@12.2.0 + ## 0.0.11 ### Patch Changes diff --git a/examples/embed-objectql/package.json b/examples/embed-objectql/package.json index 2eb8921102..18f515f225 100644 --- a/examples/embed-objectql/package.json +++ b/examples/embed-objectql/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/example-embed-objectql", - "version": "0.0.11", + "version": "0.0.12", "private": true, "description": "Embed the ObjectQL engine as a plain library via @objectstack/objectql/core — no kernel, no plugins, no metadata protocol (ADR-0076).", "type": "module", diff --git a/packages/adapters/hono/CHANGELOG.md b/packages/adapters/hono/CHANGELOG.md index 58e7c0dc3c..ad2b6c5e39 100644 --- a/packages/adapters/hono/CHANGELOG.md +++ b/packages/adapters/hono/CHANGELOG.md @@ -1,5 +1,14 @@ # @objectstack/hono +## 12.2.0 + +### Patch Changes + +- Updated dependencies [4f5b791] + - @objectstack/runtime@12.2.0 + - @objectstack/plugin-hono-server@12.2.0 + - @objectstack/types@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/adapters/hono/package.json b/packages/adapters/hono/package.json index 6fd5c6e649..b401ec3715 100644 --- a/packages/adapters/hono/package.json +++ b/packages/adapters/hono/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/hono", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/packages/apps/account/CHANGELOG.md b/packages/apps/account/CHANGELOG.md index 454046b01e..40858b6808 100644 --- a/packages/apps/account/CHANGELOG.md +++ b/packages/apps/account/CHANGELOG.md @@ -1,5 +1,17 @@ # @objectstack/account +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/apps/account/package.json b/packages/apps/account/package.json index 65353873d0..b365981ced 100644 --- a/packages/apps/account/package.json +++ b/packages/apps/account/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/account", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "ObjectStack Account — the end-user account/self-service console app, packaged as its own ObjectStack app package (ADR-0048: one app per package).", "main": "dist/index.js", diff --git a/packages/apps/setup/CHANGELOG.md b/packages/apps/setup/CHANGELOG.md index 9d0ec9b128..fd2e610463 100644 --- a/packages/apps/setup/CHANGELOG.md +++ b/packages/apps/setup/CHANGELOG.md @@ -1,5 +1,17 @@ # @objectstack/setup +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/apps/setup/package.json b/packages/apps/setup/package.json index f6fa0ded33..1c3ab1e06c 100644 --- a/packages/apps/setup/package.json +++ b/packages/apps/setup/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/setup", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "ObjectStack Setup — the platform administration app, packaged as its own ObjectStack app package (ADR-0048: one app per package).", "main": "dist/index.js", diff --git a/packages/apps/studio/CHANGELOG.md b/packages/apps/studio/CHANGELOG.md index 2a688987df..2721d152cb 100644 --- a/packages/apps/studio/CHANGELOG.md +++ b/packages/apps/studio/CHANGELOG.md @@ -1,5 +1,17 @@ # @objectstack/studio +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/apps/studio/package.json b/packages/apps/studio/package.json index 75cd48ff60..02b6d5d99a 100644 --- a/packages/apps/studio/package.json +++ b/packages/apps/studio/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/studio", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "ObjectStack Studio — the metadata builder app, packaged as its own ObjectStack app package (ADR-0048: one app per package).", "main": "dist/index.js", diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 00c265e931..6cb890b1a4 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,62 @@ # @objectstack/cli +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/rest@12.2.0 + - @objectstack/spec@12.2.0 + - @objectstack/plugin-security@12.2.0 + - @objectstack/objectql@12.2.0 + - @objectstack/runtime@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/plugin-sharing@12.2.0 + - @objectstack/verify@12.2.0 + - @objectstack/account@12.2.0 + - @objectstack/setup@12.2.0 + - @objectstack/studio@12.2.0 + - @objectstack/client@12.2.0 + - @objectstack/cloud-connection@12.2.0 + - @objectstack/formula@12.2.0 + - @objectstack/lint@12.2.0 + - @objectstack/mcp@12.2.0 + - @objectstack/observability@12.2.0 + - @objectstack/platform-objects@12.2.0 + - @objectstack/driver-memory@12.2.0 + - @objectstack/driver-mongodb@12.2.0 + - @objectstack/driver-sql@12.2.0 + - @objectstack/driver-sqlite-wasm@12.2.0 + - @objectstack/plugin-approvals@12.2.0 + - @objectstack/plugin-audit@12.2.0 + - @objectstack/plugin-auth@12.2.0 + - @objectstack/plugin-email@12.2.0 + - @objectstack/plugin-hono-server@12.2.0 + - @objectstack/plugin-org-scoping@12.2.0 + - @objectstack/plugin-reports@12.2.0 + - @objectstack/plugin-webhooks@12.2.0 + - @objectstack/service-analytics@12.2.0 + - @objectstack/service-automation@12.2.0 + - @objectstack/service-cache@12.2.0 + - @objectstack/service-datasource@12.2.0 + - @objectstack/service-job@12.2.0 + - @objectstack/service-messaging@12.2.0 + - @objectstack/service-package@12.2.0 + - @objectstack/service-queue@12.2.0 + - @objectstack/service-realtime@12.2.0 + - @objectstack/service-settings@12.2.0 + - @objectstack/service-storage@12.2.0 + - @objectstack/trigger-api@12.2.0 + - @objectstack/trigger-record-change@12.2.0 + - @objectstack/trigger-schedule@12.2.0 + - @objectstack/types@12.2.0 + - @objectstack/console@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index 78a2dd9bd0..20949ed3e3 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/cli", - "version": "12.1.0", + "version": "12.2.0", "description": "Command Line Interface for ObjectStack Protocol", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/packages/client-react/CHANGELOG.md b/packages/client-react/CHANGELOG.md index a8453f14ac..f1b2b48434 100644 --- a/packages/client-react/CHANGELOG.md +++ b/packages/client-react/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/client-react +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/client@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/client-react/package.json b/packages/client-react/package.json index 8fae0fd729..c9f9762c64 100644 --- a/packages/client-react/package.json +++ b/packages/client-react/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/client-react", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "React hooks for ObjectStack Client SDK", "main": "dist/index.js", diff --git a/packages/client/CHANGELOG.md b/packages/client/CHANGELOG.md index d5a2b26655..12e8bb555b 100644 --- a/packages/client/CHANGELOG.md +++ b/packages/client/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/client +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/client/package.json b/packages/client/package.json index a6026e5547..0dd92143b2 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/client", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Official Client SDK for ObjectStack Protocol", "main": "dist/index.js", diff --git a/packages/cloud-connection/CHANGELOG.md b/packages/cloud-connection/CHANGELOG.md index 70025d9348..3628abfdfa 100644 --- a/packages/cloud-connection/CHANGELOG.md +++ b/packages/cloud-connection/CHANGELOG.md @@ -1,5 +1,20 @@ # @objectstack/cloud-connection +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/runtime@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/types@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/cloud-connection/package.json b/packages/cloud-connection/package.json index 8cc398bff8..91e0be2bb1 100644 --- a/packages/cloud-connection/package.json +++ b/packages/cloud-connection/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/cloud-connection", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Runtime-side client for an ObjectStack cloud control plane — marketplace browse proxy, install-local, device-code binding, org catalog and installed views, and the /api/v1/runtime/config discovery endpoint. Open mechanism (ADR-0008): the hub service, plan policy, and entitlements stay server-side.", "type": "module", diff --git a/packages/connectors/connector-mcp/CHANGELOG.md b/packages/connectors/connector-mcp/CHANGELOG.md index 4cc23a15f5..310a2c69ac 100644 --- a/packages/connectors/connector-mcp/CHANGELOG.md +++ b/packages/connectors/connector-mcp/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/connector-mcp +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/connectors/connector-mcp/package.json b/packages/connectors/connector-mcp/package.json index 0741c1e6e2..47f8d4f582 100644 --- a/packages/connectors/connector-mcp/package.json +++ b/packages/connectors/connector-mcp/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/connector-mcp", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Model Context Protocol (MCP) connector for ObjectStack — a generic adapter that turns any MCP server's tools into a connector's actions on the automation engine's connector registry (ADR-0024).", "main": "dist/index.js", diff --git a/packages/connectors/connector-openapi/CHANGELOG.md b/packages/connectors/connector-openapi/CHANGELOG.md index 68fd104eb7..8b0fbc0dce 100644 --- a/packages/connectors/connector-openapi/CHANGELOG.md +++ b/packages/connectors/connector-openapi/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/connector-openapi +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/connectors/connector-openapi/package.json b/packages/connectors/connector-openapi/package.json index 1dfb4fcf19..7b715937ff 100644 --- a/packages/connectors/connector-openapi/package.json +++ b/packages/connectors/connector-openapi/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/connector-openapi", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "OpenAPI 3.x connector generator for ObjectStack — turns a declarative OpenAPI document into connector actions on the automation engine's registry, with a self-contained static-auth HTTP transport (ADR-0023).", "main": "dist/index.js", diff --git a/packages/connectors/connector-rest/CHANGELOG.md b/packages/connectors/connector-rest/CHANGELOG.md index 8ef4325653..4301740a47 100644 --- a/packages/connectors/connector-rest/CHANGELOG.md +++ b/packages/connectors/connector-rest/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/connector-rest +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/connectors/connector-rest/package.json b/packages/connectors/connector-rest/package.json index ba1f018edc..d93bc1ae94 100644 --- a/packages/connectors/connector-rest/package.json +++ b/packages/connectors/connector-rest/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/connector-rest", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Generic REST connector for ObjectStack — the reference concrete connector that registers a `request` action on the automation engine's connector registry (ADR-0018 §Addendum).", "main": "dist/index.js", diff --git a/packages/connectors/connector-slack/CHANGELOG.md b/packages/connectors/connector-slack/CHANGELOG.md index 097abb0f43..a587a51503 100644 --- a/packages/connectors/connector-slack/CHANGELOG.md +++ b/packages/connectors/connector-slack/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/connector-slack +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/connectors/connector-slack/package.json b/packages/connectors/connector-slack/package.json index 0eeea33a28..e45b240de7 100644 --- a/packages/connectors/connector-slack/package.json +++ b/packages/connectors/connector-slack/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/connector-slack", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Slack Web API connector for ObjectStack — registers `chat.postMessage` / `chat.update` / `call` actions on the automation engine's connector registry (ADR-0018 §Addendum, ADR-0022).", "main": "dist/index.js", diff --git a/packages/console/CHANGELOG.md b/packages/console/CHANGELOG.md index 0da07dec5b..8dff429cd1 100644 --- a/packages/console/CHANGELOG.md +++ b/packages/console/CHANGELOG.md @@ -1,5 +1,7 @@ # @objectstack/console +## 12.2.0 + ## 12.1.0 ## 12.0.0 diff --git a/packages/console/package.json b/packages/console/package.json index 05d15ef366..b3da0072b2 100644 --- a/packages/console/package.json +++ b/packages/console/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/console", - "version": "12.1.0", + "version": "12.2.0", "description": "Prebuilt Console SPA pinned to this @objectstack/framework release. Source of truth: @object-ui/console (https://github.com/objectstack-ai/objectui).", "license": "Apache-2.0", "homepage": "https://github.com/objectstack-ai/framework/tree/main/packages/console", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index a9898adee4..3918de6482 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,57 @@ # @objectstack/core +## 12.2.0 + +### Patch Changes + +- 4f5b791: Wire three more Studio-authored metadata surfaces at runtime (#2605 — the + "declared but never wired" family, following the #2596 hooks template). + + **Authored actions now execute (#2605 item 1).** `engine.executeAction`'s map + was only ever populated from the app bundle at boot, so a published `action` + row (standalone or embedded in an authored object's `actions[]`) was stored + and listed but never executable — before OR after a restart. Now: + + - `AppPlugin` installs a QuickJS-sandboxed default action runner at boot + (`engine.setDefaultActionRunner`), the action-path twin of the #2596 hook + body runner. Opt out with `OS_DISABLE_AUTHORED_ACTIONS=1`. + - `ObjectQLPlugin` re-registers runtime-authored actions from their + `sys_metadata` rows under `packageId: 'metadata-service'` at + `kernel:ready`, on `metadata:reloaded`, and on `action`/`object` protocol + mutations — saves, publishes, edits, and deletes take effect live. + Package-artifact actions are excluded (AppPlugin owns those; re-registering + would clobber their handlers). + + **Authored translations reach the i18n runtime (#2591).** `translation` + metadata items (single-locale `AppTranslationBundle` payloads; locale from + `_meta.locale`, a top-level `locale`, or a BCP-47-shaped item name) now load + into the i18n service as a separate authored layer that overlays static + bundles. Both adapters carry the layer — service-i18n's `FileI18nAdapter` + AND the kernel's in-memory fallback (`createMemoryI18n`), which is what dev + and standalone stacks actually run. The shared sync + (`wireAuthoredTranslationSync`, exported from `@objectstack/core`, wired by + the runtime's AppPlugin and by I18nServicePlugin with single-owner + semantics) runs at `kernel:ready`, on `metadata:reloaded`, and on + `translation` protocol mutations, with clear-then-reload semantics so + deleted items/keys stop resolving instead of lingering in the deep-merged + map. + + **Sharing rules created at runtime bind without a restart (#2592).** + `bindRuleHooks` was boot-only, so the first rule authored at runtime for an + object with no boot-time rule silently never evaluated (rule authoring is a + data insert — `metadata:reloaded` never fires). The sharing plugin now binds + afterInsert/afterUpdate/afterDelete triggers on `sys_sharing_rule` that + unbind + re-bind the rule-hook package from a fresh `listRules()`, serialized + so overlapping writes can't leave a stale snapshot bound, and fail-safe so a + rebind failure never fails the rule write. + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 18bb7e25fa..d9d44fdb94 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/core", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Microkernel Core for ObjectStack", "type": "module", diff --git a/packages/create-objectstack/CHANGELOG.md b/packages/create-objectstack/CHANGELOG.md index c46a6e427f..1293094ecc 100644 --- a/packages/create-objectstack/CHANGELOG.md +++ b/packages/create-objectstack/CHANGELOG.md @@ -1,5 +1,7 @@ # create-objectstack +## 12.2.0 + ## 12.1.0 ## 12.0.0 diff --git a/packages/create-objectstack/package.json b/packages/create-objectstack/package.json index 100f3e1441..79db9697bb 100644 --- a/packages/create-objectstack/package.json +++ b/packages/create-objectstack/package.json @@ -1,6 +1,6 @@ { "name": "create-objectstack", - "version": "12.1.0", + "version": "12.2.0", "description": "Create a new ObjectStack project — npx create-objectstack", "bin": { "create-objectstack": "./bin/create-objectstack.js" diff --git a/packages/dogfood/CHANGELOG.md b/packages/dogfood/CHANGELOG.md index b56b840b50..df2aea2b6e 100644 --- a/packages/dogfood/CHANGELOG.md +++ b/packages/dogfood/CHANGELOG.md @@ -1,5 +1,22 @@ # @objectstack/dogfood +## 0.0.20 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/plugin-security@12.2.0 + - @objectstack/objectql@12.2.0 + - @objectstack/verify@12.2.0 + - @objectstack/example-crm@4.0.72 + - @objectstack/example-showcase@0.2.18 + ## 0.0.19 ### Patch Changes diff --git a/packages/dogfood/package.json b/packages/dogfood/package.json index 848479b1b4..b584f1a053 100644 --- a/packages/dogfood/package.json +++ b/packages/dogfood/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/dogfood", - "version": "0.0.19", + "version": "0.0.20", "private": true, "license": "Apache-2.0", "description": "Dogfood regression gate — hand-written golden tests that boot real example apps through @objectstack/verify's in-process HTTP stack, pinning historical runtime regressions (#2018 timezone bucketing, #1994 cross-owner RLS, #2004 field fidelity) that static checks miss.", diff --git a/packages/downstream-contract/CHANGELOG.md b/packages/downstream-contract/CHANGELOG.md index c36e2d7f20..315afbac44 100644 --- a/packages/downstream-contract/CHANGELOG.md +++ b/packages/downstream-contract/CHANGELOG.md @@ -1,5 +1,16 @@ # @objectstack/downstream-contract +## 0.0.18 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + ## 0.0.17 ### Patch Changes diff --git a/packages/downstream-contract/package.json b/packages/downstream-contract/package.json index 3aefaca5fc..c2324f76ab 100644 --- a/packages/downstream-contract/package.json +++ b/packages/downstream-contract/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/downstream-contract", - "version": "0.0.17", + "version": "0.0.18", "description": "Frozen third-party consumer fixture — a backward-compatibility gate for @objectstack/spec. Authored the way an external project on a published release authors metadata; if a spec change breaks it, that change is breaking (#2035).", "license": "Apache-2.0", "private": true, diff --git a/packages/formula/CHANGELOG.md b/packages/formula/CHANGELOG.md index 756ba042da..98bbd84d65 100644 --- a/packages/formula/CHANGELOG.md +++ b/packages/formula/CHANGELOG.md @@ -1,5 +1,16 @@ # @objectstack/formula +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/formula/package.json b/packages/formula/package.json index b73a4ad5e3..247e13463c 100644 --- a/packages/formula/package.json +++ b/packages/formula/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/formula", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "ObjectStack canonical expression engine — CEL (cel-js) + ObjectStack stdlib + dialect registry", "main": "dist/index.js", diff --git a/packages/lint/CHANGELOG.md b/packages/lint/CHANGELOG.md index 0a49e61492..e7268f07ad 100644 --- a/packages/lint/CHANGELOG.md +++ b/packages/lint/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/lint +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + - @objectstack/formula@12.2.0 + - @objectstack/sdui-parser@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/lint/package.json b/packages/lint/package.json index 85366dfd94..22b5091f0b 100644 --- a/packages/lint/package.json +++ b/packages/lint/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/lint", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Static, build-time validation for an ObjectStack metadata graph — dashboard widget bindings, CEL/predicate expressions, and more. Pure (stack) => Issue[] functions shared by the CLI's `os validate` and any other consumer (e.g. AI authoring). Depends on @objectstack/spec; never on a runtime.", "type": "module", diff --git a/packages/mcp/CHANGELOG.md b/packages/mcp/CHANGELOG.md index 6f168e0cda..66703346b6 100644 --- a/packages/mcp/CHANGELOG.md +++ b/packages/mcp/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/plugin-mcp-server +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/types@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/mcp/package.json b/packages/mcp/package.json index 23e5983cd1..b7c461daff 100644 --- a/packages/mcp/package.json +++ b/packages/mcp/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/mcp", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "ObjectStack as an MCP server — exposes your app's objects (and AI tools) over the Model Context Protocol (stdio + Streamable HTTP)", "type": "module", diff --git a/packages/metadata-core/CHANGELOG.md b/packages/metadata-core/CHANGELOG.md index 2a0765dbab..4d57cd4de8 100644 --- a/packages/metadata-core/CHANGELOG.md +++ b/packages/metadata-core/CHANGELOG.md @@ -1,5 +1,22 @@ # @objectstack/metadata-core +## 12.2.0 + +### Minor Changes + +- da807f7: feat(spec)!: retire the placeholder metadata kinds `trigger`, `router`, `function`, `service` (ADR-0088). + + The registry is the contract authors — human and AI — read to learn what can be authored, and these four kinds had no authoring surface, no loader, no schema, and no (or a dead) consumer. `MetadataTypeSchema` + `DEFAULT_METADATA_TYPE_REGISTRY` shrink 30 → 26; `OPS_FILE_SUFFIX_REGEX` drops the four suffixes; the dormant objectql load path that registered QL functions from `type: 'function'` metadata items is removed (`defineStack({ functions })` / plugin `contributes.functions` remain the delivered forms); the metadata-core lockstep enum follows. `external_catalog` stays and is now annotated RUNTIME-CREATED (ADR-0062): its lack of an authoring surface is correct design. The delivered replacements: `hook` / `record_change` flows (trigger), plugin `contributes.routes` + declarative `apis:` (router), `defineStack({ functions })` (function), the plugin/service registry (service). Persisted `sys_metadata` rows are unaffected — no production read path re-parses stored `type` values through the enum. + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/metadata-core/package.json b/packages/metadata-core/package.json index c685b4c614..34b3f3c0a9 100644 --- a/packages/metadata-core/package.json +++ b/packages/metadata-core/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/metadata-core", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Metadata Repository contracts: types, canonicalization, errors, interface (ADR-0008).", "type": "module", diff --git a/packages/metadata-fs/CHANGELOG.md b/packages/metadata-fs/CHANGELOG.md index e76aa0ba79..a792393b15 100644 --- a/packages/metadata-fs/CHANGELOG.md +++ b/packages/metadata-fs/CHANGELOG.md @@ -1,5 +1,12 @@ # @objectstack/metadata-fs +## 12.2.0 + +### Patch Changes + +- Updated dependencies [da807f7] + - @objectstack/metadata-core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/metadata-fs/package.json b/packages/metadata-fs/package.json index 786fef2994..a3aa4b8b40 100644 --- a/packages/metadata-fs/package.json +++ b/packages/metadata-fs/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/metadata-fs", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "FileSystemRepository: Node-only Repository implementation backed by JSON files and a JSONL change log (ADR-0008).", "type": "module", diff --git a/packages/metadata-protocol/CHANGELOG.md b/packages/metadata-protocol/CHANGELOG.md index cb93eb9942..c24b8515cd 100644 --- a/packages/metadata-protocol/CHANGELOG.md +++ b/packages/metadata-protocol/CHANGELOG.md @@ -1,5 +1,22 @@ # @objectstack/metadata-protocol +## 12.2.0 + +### Patch Changes + +- 75c310f: Rewrite the `writable_package_required` rejection message as user-facing remediation ("switch to a writable package in the package selector, or create a new one") instead of developer-facing copy that cited an internal ADR path — the message is surfaced verbatim as a Studio toast. The ADR pointer moves to a `docs` property on the error; `code`, `status`, and `packageId` are unchanged. +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/metadata-core@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/formula@12.2.0 + - @objectstack/types@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/metadata-protocol/package.json b/packages/metadata-protocol/package.json index 41aa12e658..8764b6d94f 100644 --- a/packages/metadata-protocol/package.json +++ b/packages/metadata-protocol/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/metadata-protocol", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "ObjectStack metadata management protocol: sys_metadata CRUD, draft/publish, locks, package ownership, diagnostics (ADR-0076).", "type": "module", diff --git a/packages/metadata/CHANGELOG.md b/packages/metadata/CHANGELOG.md index f09af4531c..074839edf0 100644 --- a/packages/metadata/CHANGELOG.md +++ b/packages/metadata/CHANGELOG.md @@ -1,5 +1,22 @@ # @objectstack/metadata +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/metadata-core@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/platform-objects@12.2.0 + - @objectstack/types@12.2.0 + - @objectstack/metadata-fs@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/metadata/package.json b/packages/metadata/package.json index f991f80372..d6011b5559 100644 --- a/packages/metadata/package.json +++ b/packages/metadata/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/metadata", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Metadata loading, saving, and persistence for ObjectStack", "type": "module", diff --git a/packages/objectql/CHANGELOG.md b/packages/objectql/CHANGELOG.md index c5a9906135..8957242d91 100644 --- a/packages/objectql/CHANGELOG.md +++ b/packages/objectql/CHANGELOG.md @@ -1,5 +1,70 @@ # @objectstack/objectql +## 12.2.0 + +### Minor Changes + +- da807f7: feat(spec)!: retire the placeholder metadata kinds `trigger`, `router`, `function`, `service` (ADR-0088). + + The registry is the contract authors — human and AI — read to learn what can be authored, and these four kinds had no authoring surface, no loader, no schema, and no (or a dead) consumer. `MetadataTypeSchema` + `DEFAULT_METADATA_TYPE_REGISTRY` shrink 30 → 26; `OPS_FILE_SUFFIX_REGEX` drops the four suffixes; the dormant objectql load path that registered QL functions from `type: 'function'` metadata items is removed (`defineStack({ functions })` / plugin `contributes.functions` remain the delivered forms); the metadata-core lockstep enum follows. `external_catalog` stays and is now annotated RUNTIME-CREATED (ADR-0062): its lack of an authoring surface is correct design. The delivered replacements: `hook` / `record_change` flows (trigger), plugin `contributes.routes` + declarative `apis:` (router), `defineStack({ functions })` (function), the plugin/service registry (service). Persisted `sys_metadata` rows are unaffected — no production read path re-parses stored `type` values through the enum. + +### Patch Changes + +- 4f5b791: Wire three more Studio-authored metadata surfaces at runtime (#2605 — the + "declared but never wired" family, following the #2596 hooks template). + + **Authored actions now execute (#2605 item 1).** `engine.executeAction`'s map + was only ever populated from the app bundle at boot, so a published `action` + row (standalone or embedded in an authored object's `actions[]`) was stored + and listed but never executable — before OR after a restart. Now: + + - `AppPlugin` installs a QuickJS-sandboxed default action runner at boot + (`engine.setDefaultActionRunner`), the action-path twin of the #2596 hook + body runner. Opt out with `OS_DISABLE_AUTHORED_ACTIONS=1`. + - `ObjectQLPlugin` re-registers runtime-authored actions from their + `sys_metadata` rows under `packageId: 'metadata-service'` at + `kernel:ready`, on `metadata:reloaded`, and on `action`/`object` protocol + mutations — saves, publishes, edits, and deletes take effect live. + Package-artifact actions are excluded (AppPlugin owns those; re-registering + would clobber their handlers). + + **Authored translations reach the i18n runtime (#2591).** `translation` + metadata items (single-locale `AppTranslationBundle` payloads; locale from + `_meta.locale`, a top-level `locale`, or a BCP-47-shaped item name) now load + into the i18n service as a separate authored layer that overlays static + bundles. Both adapters carry the layer — service-i18n's `FileI18nAdapter` + AND the kernel's in-memory fallback (`createMemoryI18n`), which is what dev + and standalone stacks actually run. The shared sync + (`wireAuthoredTranslationSync`, exported from `@objectstack/core`, wired by + the runtime's AppPlugin and by I18nServicePlugin with single-owner + semantics) runs at `kernel:ready`, on `metadata:reloaded`, and on + `translation` protocol mutations, with clear-then-reload semantics so + deleted items/keys stop resolving instead of lingering in the deep-merged + map. + + **Sharing rules created at runtime bind without a restart (#2592).** + `bindRuleHooks` was boot-only, so the first rule authored at runtime for an + object with no boot-time rule silently never evaluated (rule authoring is a + data insert — `metadata:reloaded` never fires). The sharing plugin now binds + afterInsert/afterUpdate/afterDelete triggers on `sys_sharing_rule` that + unbind + re-bind the rule-hook package from a fresh `listRules()`, serialized + so overlapping writes can't leave a stale snapshot bound, and fail-safe so a + rebind failure never fails the rule write. + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [75c310f] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/metadata-protocol@12.2.0 + - @objectstack/metadata-core@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/formula@12.2.0 + - @objectstack/types@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/objectql/package.json b/packages/objectql/package.json index 39d007bcd9..b2414133af 100644 --- a/packages/objectql/package.json +++ b/packages/objectql/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/objectql", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Isomorphic ObjectQL Engine for ObjectStack", "main": "dist/index.js", diff --git a/packages/observability/CHANGELOG.md b/packages/observability/CHANGELOG.md index 3b57d12521..58ae243ab7 100644 --- a/packages/observability/CHANGELOG.md +++ b/packages/observability/CHANGELOG.md @@ -1,5 +1,16 @@ # @objectstack/observability +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/observability/package.json b/packages/observability/package.json index 3b7690f884..acc5d021b0 100644 --- a/packages/observability/package.json +++ b/packages/observability/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/observability", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Observability contracts and exporters for ObjectStack — MetricsRegistry, ErrorReporter, Logger plus noop/console/OTLP-HTTP exporters. Deployment-target neutral; runtime and services depend on this so the same instrumentation works on Cloudflare Workers, Node, and self-hosted Kubernetes.", "type": "module", diff --git a/packages/platform-objects/CHANGELOG.md b/packages/platform-objects/CHANGELOG.md index eb1315f1cf..932062ed28 100644 --- a/packages/platform-objects/CHANGELOG.md +++ b/packages/platform-objects/CHANGELOG.md @@ -1,5 +1,17 @@ # @objectstack/platform-objects +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + - @objectstack/metadata-core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/platform-objects/package.json b/packages/platform-objects/package.json index 3018173ce4..ead927e44b 100644 --- a/packages/platform-objects/package.json +++ b/packages/platform-objects/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/platform-objects", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Core platform object schemas for ObjectStack — identity, security, audit, tenant, and metadata objects", "main": "dist/index.js", diff --git a/packages/plugins/driver-memory/CHANGELOG.md b/packages/plugins/driver-memory/CHANGELOG.md index 808da0e66c..1cc4a02426 100644 --- a/packages/plugins/driver-memory/CHANGELOG.md +++ b/packages/plugins/driver-memory/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/driver-memory +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/driver-memory/package.json b/packages/plugins/driver-memory/package.json index 598ae45d3d..d70070ccf2 100644 --- a/packages/plugins/driver-memory/package.json +++ b/packages/plugins/driver-memory/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/driver-memory", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "In-Memory Driver for ObjectStack (Reference Implementation)", "main": "dist/index.js", diff --git a/packages/plugins/driver-mongodb/CHANGELOG.md b/packages/plugins/driver-mongodb/CHANGELOG.md index 93bb811997..2b7a1a96c0 100644 --- a/packages/plugins/driver-mongodb/CHANGELOG.md +++ b/packages/plugins/driver-mongodb/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/driver-mongodb +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/driver-mongodb/package.json b/packages/plugins/driver-mongodb/package.json index 95249ded09..5ec4273bf0 100644 --- a/packages/plugins/driver-mongodb/package.json +++ b/packages/plugins/driver-mongodb/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/driver-mongodb", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "MongoDB Driver for ObjectStack - Native document database driver via official mongodb client", "main": "dist/index.js", diff --git a/packages/plugins/driver-sql/CHANGELOG.md b/packages/plugins/driver-sql/CHANGELOG.md index aa08889f90..d1acd7fb5f 100644 --- a/packages/plugins/driver-sql/CHANGELOG.md +++ b/packages/plugins/driver-sql/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/driver-sql +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/types@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/driver-sql/package.json b/packages/plugins/driver-sql/package.json index a49e594d9f..b9b79c86f4 100644 --- a/packages/plugins/driver-sql/package.json +++ b/packages/plugins/driver-sql/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/driver-sql", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "SQL Driver for ObjectStack - Supports PostgreSQL, MySQL, SQLite via Knex", "main": "dist/index.js", diff --git a/packages/plugins/driver-sqlite-wasm/CHANGELOG.md b/packages/plugins/driver-sqlite-wasm/CHANGELOG.md index f0ec8a2513..3584b1dff1 100644 --- a/packages/plugins/driver-sqlite-wasm/CHANGELOG.md +++ b/packages/plugins/driver-sqlite-wasm/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/driver-sqlite-wasm +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/driver-sql@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/driver-sqlite-wasm/package.json b/packages/plugins/driver-sqlite-wasm/package.json index c6e4184497..d97cdba510 100644 --- a/packages/plugins/driver-sqlite-wasm/package.json +++ b/packages/plugins/driver-sqlite-wasm/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/driver-sqlite-wasm", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "WASM SQLite Driver for ObjectStack — runs in browser/WebContainer (StackBlitz) without native bindings", "keywords": [ diff --git a/packages/plugins/embedder-openai/CHANGELOG.md b/packages/plugins/embedder-openai/CHANGELOG.md index d0e263c363..1cc93c2c8c 100644 --- a/packages/plugins/embedder-openai/CHANGELOG.md +++ b/packages/plugins/embedder-openai/CHANGELOG.md @@ -1,5 +1,16 @@ # @objectstack/embedder-openai +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/embedder-openai/package.json b/packages/plugins/embedder-openai/package.json index 42631c1b14..34fb2cd465 100644 --- a/packages/plugins/embedder-openai/package.json +++ b/packages/plugins/embedder-openai/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/embedder-openai", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "OpenAI-compatible embedder for ObjectStack — works against OpenAI, 阿里通义 DashScope, 智谱 BigModel, 硅基流动 SiliconFlow, 火山引擎 Doubao, MiniMax, Ollama, and any drop-in OpenAI-shape endpoint.", "main": "dist/index.js", diff --git a/packages/plugins/knowledge-memory/CHANGELOG.md b/packages/plugins/knowledge-memory/CHANGELOG.md index 068fe15813..fda06109fd 100644 --- a/packages/plugins/knowledge-memory/CHANGELOG.md +++ b/packages/plugins/knowledge-memory/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/knowledge-memory +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/service-knowledge@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/knowledge-memory/package.json b/packages/plugins/knowledge-memory/package.json index 4292f4f28c..f8e7197fd7 100644 --- a/packages/plugins/knowledge-memory/package.json +++ b/packages/plugins/knowledge-memory/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/knowledge-memory", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "In-memory knowledge adapter for ObjectStack (dev / test reference implementation).", "main": "dist/index.js", diff --git a/packages/plugins/knowledge-ragflow/CHANGELOG.md b/packages/plugins/knowledge-ragflow/CHANGELOG.md index 97873eec13..686af70a73 100644 --- a/packages/plugins/knowledge-ragflow/CHANGELOG.md +++ b/packages/plugins/knowledge-ragflow/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/knowledge-ragflow +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/service-knowledge@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/knowledge-ragflow/package.json b/packages/plugins/knowledge-ragflow/package.json index 0501506248..ca290fb36a 100644 --- a/packages/plugins/knowledge-ragflow/package.json +++ b/packages/plugins/knowledge-ragflow/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/knowledge-ragflow", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "RAGFlow knowledge adapter for ObjectStack — production-grade RAG via the Apache 2.0 RAGFlow REST API.", "main": "dist/index.js", diff --git a/packages/plugins/plugin-approvals/CHANGELOG.md b/packages/plugins/plugin-approvals/CHANGELOG.md index f3baaeb8d5..db1a361adc 100644 --- a/packages/plugins/plugin-approvals/CHANGELOG.md +++ b/packages/plugins/plugin-approvals/CHANGELOG.md @@ -1,5 +1,21 @@ # @objectstack/plugin-approvals +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/metadata-core@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/formula@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/plugin-approvals/package.json b/packages/plugins/plugin-approvals/package.json index 10a37819d5..7640a0e998 100644 --- a/packages/plugins/plugin-approvals/package.json +++ b/packages/plugins/plugin-approvals/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/plugin-approvals", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Multi-step approval engine for ObjectStack — sys_approval_process + sys_approval_request + sys_approval_action + IApprovalService.", "main": "dist/index.js", diff --git a/packages/plugins/plugin-audit/CHANGELOG.md b/packages/plugins/plugin-audit/CHANGELOG.md index fdfbb5e016..61751ca1c2 100644 --- a/packages/plugins/plugin-audit/CHANGELOG.md +++ b/packages/plugins/plugin-audit/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/plugin-audit +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/plugin-audit/package.json b/packages/plugins/plugin-audit/package.json index f5b7757be2..917ffe216d 100644 --- a/packages/plugins/plugin-audit/package.json +++ b/packages/plugins/plugin-audit/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/plugin-audit", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Audit Plugin for ObjectStack — System audit log object and audit trail", "main": "dist/index.js", diff --git a/packages/plugins/plugin-auth/CHANGELOG.md b/packages/plugins/plugin-auth/CHANGELOG.md index 87ffb4f2eb..c2f834c61e 100644 --- a/packages/plugins/plugin-auth/CHANGELOG.md +++ b/packages/plugins/plugin-auth/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/platform-objects@12.2.0 + - @objectstack/types@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/plugin-auth/package.json b/packages/plugins/plugin-auth/package.json index a1d8d837e0..909ad523f5 100644 --- a/packages/plugins/plugin-auth/package.json +++ b/packages/plugins/plugin-auth/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/plugin-auth", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Authentication & Identity Plugin for ObjectStack", "main": "dist/index.js", diff --git a/packages/plugins/plugin-dev/CHANGELOG.md b/packages/plugins/plugin-dev/CHANGELOG.md index b279ebe7ed..0e9e923483 100644 --- a/packages/plugins/plugin-dev/CHANGELOG.md +++ b/packages/plugins/plugin-dev/CHANGELOG.md @@ -1,5 +1,31 @@ # @objectstack/plugin-dev +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/rest@12.2.0 + - @objectstack/spec@12.2.0 + - @objectstack/plugin-security@12.2.0 + - @objectstack/objectql@12.2.0 + - @objectstack/runtime@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/service-i18n@12.2.0 + - @objectstack/account@12.2.0 + - @objectstack/setup@12.2.0 + - @objectstack/studio@12.2.0 + - @objectstack/driver-memory@12.2.0 + - @objectstack/plugin-auth@12.2.0 + - @objectstack/plugin-hono-server@12.2.0 + - @objectstack/plugin-org-scoping@12.2.0 + - @objectstack/types@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/plugin-dev/package.json b/packages/plugins/plugin-dev/package.json index feb59b24ee..311aaf9330 100644 --- a/packages/plugins/plugin-dev/package.json +++ b/packages/plugins/plugin-dev/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/plugin-dev", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Development Mode Plugin for ObjectStack — auto-enables all services with in-memory implementations", "main": "dist/index.js", diff --git a/packages/plugins/plugin-email/CHANGELOG.md b/packages/plugins/plugin-email/CHANGELOG.md index fe9e74f27c..fdaa294d22 100644 --- a/packages/plugins/plugin-email/CHANGELOG.md +++ b/packages/plugins/plugin-email/CHANGELOG.md @@ -1,5 +1,20 @@ # @objectstack/plugin-email +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/formula@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/plugin-email/package.json b/packages/plugins/plugin-email/package.json index cc3a9fc955..7219b2a87f 100644 --- a/packages/plugins/plugin-email/package.json +++ b/packages/plugins/plugin-email/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/plugin-email", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Email service plugin for ObjectStack — IEmailService + transport-pluggable outbound delivery with sys_email persistence.", "main": "dist/index.js", diff --git a/packages/plugins/plugin-hono-server/CHANGELOG.md b/packages/plugins/plugin-hono-server/CHANGELOG.md index a76ced807b..ff9e7d7c9a 100644 --- a/packages/plugins/plugin-hono-server/CHANGELOG.md +++ b/packages/plugins/plugin-hono-server/CHANGELOG.md @@ -1,5 +1,20 @@ # @objectstack/plugin-hono-server +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/observability@12.2.0 + - @objectstack/types@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/plugin-hono-server/package.json b/packages/plugins/plugin-hono-server/package.json index 618a5afc0d..0db35f076e 100644 --- a/packages/plugins/plugin-hono-server/package.json +++ b/packages/plugins/plugin-hono-server/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/plugin-hono-server", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Standard Hono Server Adapter for ObjectStack Runtime", "main": "dist/index.js", diff --git a/packages/plugins/plugin-org-scoping/CHANGELOG.md b/packages/plugins/plugin-org-scoping/CHANGELOG.md index 4804ef8dc9..a83b38e311 100644 --- a/packages/plugins/plugin-org-scoping/CHANGELOG.md +++ b/packages/plugins/plugin-org-scoping/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/plugin-org-scoping +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/plugin-org-scoping/package.json b/packages/plugins/plugin-org-scoping/package.json index a25dfdecd0..309a026422 100644 --- a/packages/plugins/plugin-org-scoping/package.json +++ b/packages/plugins/plugin-org-scoping/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/plugin-org-scoping", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Organization-Scoping Plugin for ObjectStack — row-level Organization isolation, per-org seed replay, default-org bootstrap", "main": "dist/index.js", diff --git a/packages/plugins/plugin-reports/CHANGELOG.md b/packages/plugins/plugin-reports/CHANGELOG.md index 2710d3698c..c3dc9de16d 100644 --- a/packages/plugins/plugin-reports/CHANGELOG.md +++ b/packages/plugins/plugin-reports/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/plugin-reports +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/plugin-reports/package.json b/packages/plugins/plugin-reports/package.json index 87a3894a3d..6a00f14bcd 100644 --- a/packages/plugins/plugin-reports/package.json +++ b/packages/plugins/plugin-reports/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/plugin-reports", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Saved reports + scheduled email digests for ObjectStack — sys_saved_report + sys_report_schedule + IReportService.", "main": "dist/index.js", diff --git a/packages/plugins/plugin-security/CHANGELOG.md b/packages/plugins/plugin-security/CHANGELOG.md index 49dd1feda5..1668048e59 100644 --- a/packages/plugins/plugin-security/CHANGELOG.md +++ b/packages/plugins/plugin-security/CHANGELOG.md @@ -1,5 +1,28 @@ # @objectstack/plugin-security +## 12.2.0 + +### Minor Changes + +- 3962023: feat(spec,security): make ambiguous nav landings unrepresentable + close the field-permission filter oracle (objectui#2251, objectui ADR-0055). + + **spec — `ObjectNavItem` target exclusivity.** `NavigationItemSchema` now rejects an object nav item that combines `filters` with `recordId` or `viewName` (custom issue on `filters` with the fix in the message). Runtime precedence would silently ignore the extras — a stale `recordId` hijacking a configured `filters` slice — so the ambiguous combination is now unwritable (ADR-0053 correct-by-construction). FROM `{ filters, viewName }` / `{ filters, recordId }` TO exactly one landing field; the legacy `recordId` + `viewName` combination stays tolerated (documented: `viewName` is ignored). `filters` shipped in the same unreleased minor, so no released metadata is affected. + + **plugin-security — field-level predicate guard.** `FieldMasker` strips non-readable fields from RESULTS, but predicates still leaked their values: filtering / sorting / grouping / aggregating by a hidden field changes row presence (a filter oracle — probe `salary >= X` even though the column is masked). The security middleware now rejects (403 `PermissionDeniedError`, `reason: 'field_predicate_denied'`) any caller query whose `where` / `orderBy` / `groupBy` / `having` / `aggregations` / `windowFunctions` reference a field the caller cannot read — evaluated against the caller's AST **before** RLS injection, so RLS policies may keep referencing hidden fields (e.g. `owner_id`). Rejection over silent predicate dropping: removing an `$and` branch widens results and re-opens the oracle. New exports: `assertReadableQueryFields`, `collectQueryFields`, `collectConditionFields`. + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/formula@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/plugin-security/package.json b/packages/plugins/plugin-security/package.json index aa1b60c1ef..d3830ec1d8 100644 --- a/packages/plugins/plugin-security/package.json +++ b/packages/plugins/plugin-security/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/plugin-security", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Security Plugin for ObjectStack — RBAC, RLS, and Field-Level Security Runtime", "main": "dist/index.js", diff --git a/packages/plugins/plugin-sharing/CHANGELOG.md b/packages/plugins/plugin-sharing/CHANGELOG.md index a6ec86b68e..ba651d77ad 100644 --- a/packages/plugins/plugin-sharing/CHANGELOG.md +++ b/packages/plugins/plugin-sharing/CHANGELOG.md @@ -1,5 +1,62 @@ # @objectstack/plugin-sharing +## 12.2.0 + +### Patch Changes + +- 4f5b791: Wire three more Studio-authored metadata surfaces at runtime (#2605 — the + "declared but never wired" family, following the #2596 hooks template). + + **Authored actions now execute (#2605 item 1).** `engine.executeAction`'s map + was only ever populated from the app bundle at boot, so a published `action` + row (standalone or embedded in an authored object's `actions[]`) was stored + and listed but never executable — before OR after a restart. Now: + + - `AppPlugin` installs a QuickJS-sandboxed default action runner at boot + (`engine.setDefaultActionRunner`), the action-path twin of the #2596 hook + body runner. Opt out with `OS_DISABLE_AUTHORED_ACTIONS=1`. + - `ObjectQLPlugin` re-registers runtime-authored actions from their + `sys_metadata` rows under `packageId: 'metadata-service'` at + `kernel:ready`, on `metadata:reloaded`, and on `action`/`object` protocol + mutations — saves, publishes, edits, and deletes take effect live. + Package-artifact actions are excluded (AppPlugin owns those; re-registering + would clobber their handlers). + + **Authored translations reach the i18n runtime (#2591).** `translation` + metadata items (single-locale `AppTranslationBundle` payloads; locale from + `_meta.locale`, a top-level `locale`, or a BCP-47-shaped item name) now load + into the i18n service as a separate authored layer that overlays static + bundles. Both adapters carry the layer — service-i18n's `FileI18nAdapter` + AND the kernel's in-memory fallback (`createMemoryI18n`), which is what dev + and standalone stacks actually run. The shared sync + (`wireAuthoredTranslationSync`, exported from `@objectstack/core`, wired by + the runtime's AppPlugin and by I18nServicePlugin with single-owner + semantics) runs at `kernel:ready`, on `metadata:reloaded`, and on + `translation` protocol mutations, with clear-then-reload semantics so + deleted items/keys stop resolving instead of lingering in the deep-merged + map. + + **Sharing rules created at runtime bind without a restart (#2592).** + `bindRuleHooks` was boot-only, so the first rule authored at runtime for an + object with no boot-time rule silently never evaluated (rule authoring is a + data insert — `metadata:reloaded` never fires). The sharing plugin now binds + afterInsert/afterUpdate/afterDelete triggers on `sys_sharing_rule` that + unbind + re-bind the rule-hook package from a fresh `listRules()`, serialized + so overlapping writes can't leave a stale snapshot bound, and fail-safe so a + rebind failure never fails the rule write. + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/objectql@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/formula@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/plugin-sharing/package.json b/packages/plugins/plugin-sharing/package.json index a49a133112..02c499061b 100644 --- a/packages/plugins/plugin-sharing/package.json +++ b/packages/plugins/plugin-sharing/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/plugin-sharing", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Record-level sharing for ObjectStack — sys_record_share + middleware that enforces sharingModel + ISharingService.", "main": "dist/index.js", diff --git a/packages/plugins/plugin-webhooks/CHANGELOG.md b/packages/plugins/plugin-webhooks/CHANGELOG.md index f96e60358a..a3d69d9295 100644 --- a/packages/plugins/plugin-webhooks/CHANGELOG.md +++ b/packages/plugins/plugin-webhooks/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/plugin-webhooks +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/service-messaging@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/plugins/plugin-webhooks/package.json b/packages/plugins/plugin-webhooks/package.json index 2d5cc83f77..f36648ac8a 100644 --- a/packages/plugins/plugin-webhooks/package.json +++ b/packages/plugins/plugin-webhooks/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/plugin-webhooks", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Persistent, cluster-aware webhook dispatcher. Durable outbox + per-partition cluster.lock for exactly-once-ish delivery across nodes. See content/docs/concepts/webhook-delivery.mdx.", "type": "module", diff --git a/packages/rest/CHANGELOG.md b/packages/rest/CHANGELOG.md index fd8c9a1c0a..e925368035 100644 --- a/packages/rest/CHANGELOG.md +++ b/packages/rest/CHANGELOG.md @@ -1,5 +1,24 @@ # @objectstack/rest +## 12.2.0 + +### Minor Changes + +- fce8ff4: feat(rest,spec): named import mappings (#2611) — `POST /data/:object/import` accepts `mappingName`, resolving a registered `defineMapping` artifact (stack `mappings:`) and applying its fieldMapping pipeline (rename + constant/map/split/join; lookup delegates to the built-in reference resolution) as a strict projection before coercion. The artifact's `mode`/`upsertKey` serve as writeMode/matchFields defaults; explicit request values win. Errors are loud and specific: `MAPPING_NOT_FOUND`, `MAPPING_TARGET_MISMATCH`, `MAPPING_FORMAT_MISMATCH`, `CONFLICTING_MAPPING` (mutually exclusive with the inline rename), and `UNSUPPORTED_TRANSFORM` for `javascript` (no server-side sandbox — never silently skipped). `defineStack` cross-reference validation now rejects mappings targeting undefined objects and `javascript` transforms at build time. + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/platform-objects@12.2.0 + - @objectstack/service-package@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/rest/package.json b/packages/rest/package.json index 73a31efad6..a976007c73 100644 --- a/packages/rest/package.json +++ b/packages/rest/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/rest", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "ObjectStack REST API Server - automatic REST endpoint generation from protocol", "type": "module", diff --git a/packages/runtime/CHANGELOG.md b/packages/runtime/CHANGELOG.md index 41b4871090..cff4f3c2df 100644 --- a/packages/runtime/CHANGELOG.md +++ b/packages/runtime/CHANGELOG.md @@ -1,5 +1,74 @@ # @objectstack/runtime +## 12.2.0 + +### Patch Changes + +- 4f5b791: Wire three more Studio-authored metadata surfaces at runtime (#2605 — the + "declared but never wired" family, following the #2596 hooks template). + + **Authored actions now execute (#2605 item 1).** `engine.executeAction`'s map + was only ever populated from the app bundle at boot, so a published `action` + row (standalone or embedded in an authored object's `actions[]`) was stored + and listed but never executable — before OR after a restart. Now: + + - `AppPlugin` installs a QuickJS-sandboxed default action runner at boot + (`engine.setDefaultActionRunner`), the action-path twin of the #2596 hook + body runner. Opt out with `OS_DISABLE_AUTHORED_ACTIONS=1`. + - `ObjectQLPlugin` re-registers runtime-authored actions from their + `sys_metadata` rows under `packageId: 'metadata-service'` at + `kernel:ready`, on `metadata:reloaded`, and on `action`/`object` protocol + mutations — saves, publishes, edits, and deletes take effect live. + Package-artifact actions are excluded (AppPlugin owns those; re-registering + would clobber their handlers). + + **Authored translations reach the i18n runtime (#2591).** `translation` + metadata items (single-locale `AppTranslationBundle` payloads; locale from + `_meta.locale`, a top-level `locale`, or a BCP-47-shaped item name) now load + into the i18n service as a separate authored layer that overlays static + bundles. Both adapters carry the layer — service-i18n's `FileI18nAdapter` + AND the kernel's in-memory fallback (`createMemoryI18n`), which is what dev + and standalone stacks actually run. The shared sync + (`wireAuthoredTranslationSync`, exported from `@objectstack/core`, wired by + the runtime's AppPlugin and by I18nServicePlugin with single-owner + semantics) runs at `kernel:ready`, on `metadata:reloaded`, and on + `translation` protocol mutations, with clear-then-reload semantics so + deleted items/keys stop resolving instead of lingering in the deep-merged + map. + + **Sharing rules created at runtime bind without a restart (#2592).** + `bindRuleHooks` was boot-only, so the first rule authored at runtime for an + object with no boot-time rule silently never evaluated (rule authoring is a + data insert — `metadata:reloaded` never fires). The sharing plugin now binds + afterInsert/afterUpdate/afterDelete triggers on `sys_sharing_rule` that + unbind + re-bind the rule-hook package from a fresh `listRules()`, serialized + so overlapping writes can't leave a stale snapshot bound, and fail-safe so a + rebind failure never fails the rule write. + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/rest@12.2.0 + - @objectstack/spec@12.2.0 + - @objectstack/plugin-security@12.2.0 + - @objectstack/objectql@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/service-i18n@12.2.0 + - @objectstack/formula@12.2.0 + - @objectstack/metadata@12.2.0 + - @objectstack/observability@12.2.0 + - @objectstack/driver-memory@12.2.0 + - @objectstack/driver-sql@12.2.0 + - @objectstack/driver-sqlite-wasm@12.2.0 + - @objectstack/plugin-auth@12.2.0 + - @objectstack/plugin-org-scoping@12.2.0 + - @objectstack/service-cluster@12.2.0 + - @objectstack/service-datasource@12.2.0 + - @objectstack/types@12.2.0 + ## 12.1.0 ### Minor Changes diff --git a/packages/runtime/package.json b/packages/runtime/package.json index 5cb90566d8..bfb9f04232 100644 --- a/packages/runtime/package.json +++ b/packages/runtime/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/runtime", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "ObjectStack Core Runtime & Query Engine", "type": "module", diff --git a/packages/sdui-parser/CHANGELOG.md b/packages/sdui-parser/CHANGELOG.md index 9f7add2be4..121bb400ed 100644 --- a/packages/sdui-parser/CHANGELOG.md +++ b/packages/sdui-parser/CHANGELOG.md @@ -1,5 +1,7 @@ # @objectstack/sdui-parser +## 12.2.0 + ## 12.1.0 ## 12.0.0 diff --git a/packages/sdui-parser/package.json b/packages/sdui-parser/package.json index 4c159332d2..fa5c56c4d9 100644 --- a/packages/sdui-parser/package.json +++ b/packages/sdui-parser/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/sdui-parser", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "ObjectStack constrained JSX-source → SDUI SchemaNode tree compiler (parse, never execute). Isomorphic, zero React. ADR-0080.", "main": "dist/index.js", diff --git a/packages/services/service-analytics/CHANGELOG.md b/packages/services/service-analytics/CHANGELOG.md index 14637810b4..1f2cab2de7 100644 --- a/packages/services/service-analytics/CHANGELOG.md +++ b/packages/services/service-analytics/CHANGELOG.md @@ -1,5 +1,18 @@ # Changelog — @objectstack/service-analytics +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-analytics/package.json b/packages/services/service-analytics/package.json index 605e56d88e..da13929ed4 100644 --- a/packages/services/service-analytics/package.json +++ b/packages/services/service-analytics/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-analytics", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Analytics Service for ObjectStack — implements IAnalyticsService with multi-driver strategy pattern (NativeSQL, ObjectQL, InMemory)", "type": "module", diff --git a/packages/services/service-automation/CHANGELOG.md b/packages/services/service-automation/CHANGELOG.md index 184d4f2acd..6ed6c4ebdc 100644 --- a/packages/services/service-automation/CHANGELOG.md +++ b/packages/services/service-automation/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/service-automation +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/formula@12.2.0 + ## 12.1.0 ### Minor Changes diff --git a/packages/services/service-automation/package.json b/packages/services/service-automation/package.json index 855fb7f465..877bf04fa0 100644 --- a/packages/services/service-automation/package.json +++ b/packages/services/service-automation/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-automation", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Automation Service for ObjectStack — implements IAutomationService with plugin-based DAG flow execution engine", "type": "module", diff --git a/packages/services/service-cache/CHANGELOG.md b/packages/services/service-cache/CHANGELOG.md index a6db468b8d..66596a77b2 100644 --- a/packages/services/service-cache/CHANGELOG.md +++ b/packages/services/service-cache/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/service-cache +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/observability@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-cache/package.json b/packages/services/service-cache/package.json index 8d2503f3e4..64a8b89844 100644 --- a/packages/services/service-cache/package.json +++ b/packages/services/service-cache/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-cache", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Cache Service for ObjectStack — implements ICacheService with in-memory and Redis adapters", "type": "module", diff --git a/packages/services/service-cluster-redis/CHANGELOG.md b/packages/services/service-cluster-redis/CHANGELOG.md index cb74be811e..ffdfc2ee0b 100644 --- a/packages/services/service-cluster-redis/CHANGELOG.md +++ b/packages/services/service-cluster-redis/CHANGELOG.md @@ -1,5 +1,17 @@ # @objectstack/service-cluster-redis +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + - @objectstack/service-cluster@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-cluster-redis/package.json b/packages/services/service-cluster-redis/package.json index 1bf0a27897..b993893a00 100644 --- a/packages/services/service-cluster-redis/package.json +++ b/packages/services/service-cluster-redis/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-cluster-redis", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Redis cluster driver for ObjectStack — implements IPubSub/ILock/IKV/ICounter against Redis using ioredis.", "type": "module", diff --git a/packages/services/service-cluster/CHANGELOG.md b/packages/services/service-cluster/CHANGELOG.md index f11cc014de..7e076ee38b 100644 --- a/packages/services/service-cluster/CHANGELOG.md +++ b/packages/services/service-cluster/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/service-cluster +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-cluster/package.json b/packages/services/service-cluster/package.json index 8f2be61911..1e64ff57bc 100644 --- a/packages/services/service-cluster/package.json +++ b/packages/services/service-cluster/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-cluster", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Cluster Service for ObjectStack — pluggable PubSub/Lock/KV/Counter primitives. Memory driver included; postgres/redis drivers ship separately.", "type": "module", diff --git a/packages/services/service-datasource/CHANGELOG.md b/packages/services/service-datasource/CHANGELOG.md index 7def493804..b3b3daa7b1 100644 --- a/packages/services/service-datasource/CHANGELOG.md +++ b/packages/services/service-datasource/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/service-external-datasource +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-datasource/package.json b/packages/services/service-datasource/package.json index 646902e79a..59992a4b34 100644 --- a/packages/services/service-datasource/package.json +++ b/packages/services/service-datasource/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-datasource", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "The datasource service (ADR-0015): external-table federation (introspect/draft/import/validate) + runtime UI datasource lifecycle (list/test/create/update/remove + REST routes). Open-source mechanism; the tier line falls on which ICryptoProvider / driver factory a host injects.", "type": "module", diff --git a/packages/services/service-i18n/CHANGELOG.md b/packages/services/service-i18n/CHANGELOG.md index 7592655ec0..d9c72650ea 100644 --- a/packages/services/service-i18n/CHANGELOG.md +++ b/packages/services/service-i18n/CHANGELOG.md @@ -1,5 +1,59 @@ # @objectstack/service-i18n +## 12.2.0 + +### Patch Changes + +- 4f5b791: Wire three more Studio-authored metadata surfaces at runtime (#2605 — the + "declared but never wired" family, following the #2596 hooks template). + + **Authored actions now execute (#2605 item 1).** `engine.executeAction`'s map + was only ever populated from the app bundle at boot, so a published `action` + row (standalone or embedded in an authored object's `actions[]`) was stored + and listed but never executable — before OR after a restart. Now: + + - `AppPlugin` installs a QuickJS-sandboxed default action runner at boot + (`engine.setDefaultActionRunner`), the action-path twin of the #2596 hook + body runner. Opt out with `OS_DISABLE_AUTHORED_ACTIONS=1`. + - `ObjectQLPlugin` re-registers runtime-authored actions from their + `sys_metadata` rows under `packageId: 'metadata-service'` at + `kernel:ready`, on `metadata:reloaded`, and on `action`/`object` protocol + mutations — saves, publishes, edits, and deletes take effect live. + Package-artifact actions are excluded (AppPlugin owns those; re-registering + would clobber their handlers). + + **Authored translations reach the i18n runtime (#2591).** `translation` + metadata items (single-locale `AppTranslationBundle` payloads; locale from + `_meta.locale`, a top-level `locale`, or a BCP-47-shaped item name) now load + into the i18n service as a separate authored layer that overlays static + bundles. Both adapters carry the layer — service-i18n's `FileI18nAdapter` + AND the kernel's in-memory fallback (`createMemoryI18n`), which is what dev + and standalone stacks actually run. The shared sync + (`wireAuthoredTranslationSync`, exported from `@objectstack/core`, wired by + the runtime's AppPlugin and by I18nServicePlugin with single-owner + semantics) runs at `kernel:ready`, on `metadata:reloaded`, and on + `translation` protocol mutations, with clear-then-reload semantics so + deleted items/keys stop resolving instead of lingering in the deep-merged + map. + + **Sharing rules created at runtime bind without a restart (#2592).** + `bindRuleHooks` was boot-only, so the first rule authored at runtime for an + object with no boot-time rule silently never evaluated (rule authoring is a + data insert — `metadata:reloaded` never fires). The sharing plugin now binds + afterInsert/afterUpdate/afterDelete triggers on `sys_sharing_rule` that + unbind + re-bind the rule-hook package from a fresh `listRules()`, serialized + so overlapping writes can't leave a stale snapshot bound, and fail-safe so a + rebind failure never fails the rule write. + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-i18n/package.json b/packages/services/service-i18n/package.json index 20b6a3e83f..f0e9174d5b 100644 --- a/packages/services/service-i18n/package.json +++ b/packages/services/service-i18n/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-i18n", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "I18n Service for ObjectStack — implements II18nService with file-based locale loading", "type": "module", diff --git a/packages/services/service-job/CHANGELOG.md b/packages/services/service-job/CHANGELOG.md index c2333c7af4..ddb3dd574f 100644 --- a/packages/services/service-job/CHANGELOG.md +++ b/packages/services/service-job/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/service-job +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-job/package.json b/packages/services/service-job/package.json index 20ab1fa45c..fec3d03397 100644 --- a/packages/services/service-job/package.json +++ b/packages/services/service-job/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-job", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Job Service for ObjectStack — implements IJobService with setInterval and cron scheduling", "type": "module", diff --git a/packages/services/service-knowledge/CHANGELOG.md b/packages/services/service-knowledge/CHANGELOG.md index c8c6d7321f..9faae4e639 100644 --- a/packages/services/service-knowledge/CHANGELOG.md +++ b/packages/services/service-knowledge/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/service-knowledge +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-knowledge/package.json b/packages/services/service-knowledge/package.json index 7d07a4de42..e6710522cb 100644 --- a/packages/services/service-knowledge/package.json +++ b/packages/services/service-knowledge/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-knowledge", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Knowledge Service for ObjectStack — orchestrator implementing IKnowledgeService over pluggable IKnowledgeAdapter backends (RAGFlow, LlamaIndex, Dify, in-memory).", "type": "module", diff --git a/packages/services/service-messaging/CHANGELOG.md b/packages/services/service-messaging/CHANGELOG.md index 9d900e4885..a9c78e0a0b 100644 --- a/packages/services/service-messaging/CHANGELOG.md +++ b/packages/services/service-messaging/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/service-messaging +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-messaging/package.json b/packages/services/service-messaging/package.json index ae35ee0e4e..5cb32ed50e 100644 --- a/packages/services/service-messaging/package.json +++ b/packages/services/service-messaging/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-messaging", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Messaging Service for ObjectStack — outbound notification dispatch (ADR-0012). Ships the MessagingChannel registry, emit() fan-out, and the always-on inbox channel; other channels (email/webhook/push/IM) plug in.", "type": "module", diff --git a/packages/services/service-package/CHANGELOG.md b/packages/services/service-package/CHANGELOG.md index 3f5b928136..8a1598b53e 100644 --- a/packages/services/service-package/CHANGELOG.md +++ b/packages/services/service-package/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/service-package +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-package/package.json b/packages/services/service-package/package.json index 5f0aee0948..3c136a939b 100644 --- a/packages/services/service-package/package.json +++ b/packages/services/service-package/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-package", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Package management service for ObjectStack — publish, install, and manage packages", "type": "module", diff --git a/packages/services/service-queue/CHANGELOG.md b/packages/services/service-queue/CHANGELOG.md index edd6a2cb43..f5d12f6baf 100644 --- a/packages/services/service-queue/CHANGELOG.md +++ b/packages/services/service-queue/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/service-queue +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-queue/package.json b/packages/services/service-queue/package.json index 40aaa13231..72e539e97f 100644 --- a/packages/services/service-queue/package.json +++ b/packages/services/service-queue/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-queue", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Queue Service for ObjectStack — implements IQueueService with in-memory and durable DB-backed (sys_job_queue) adapters", "type": "module", diff --git a/packages/services/service-realtime/CHANGELOG.md b/packages/services/service-realtime/CHANGELOG.md index aa9047bfeb..5e0c397cf4 100644 --- a/packages/services/service-realtime/CHANGELOG.md +++ b/packages/services/service-realtime/CHANGELOG.md @@ -1,5 +1,19 @@ # @objectstack/service-realtime +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-realtime/package.json b/packages/services/service-realtime/package.json index b3bba29c05..c7adbcb52f 100644 --- a/packages/services/service-realtime/package.json +++ b/packages/services/service-realtime/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-realtime", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Realtime Service for ObjectStack — implements IRealtimeService with WebSocket and in-memory pub/sub", "type": "module", diff --git a/packages/services/service-settings/CHANGELOG.md b/packages/services/service-settings/CHANGELOG.md index 774b1cd4e6..de77e37be8 100644 --- a/packages/services/service-settings/CHANGELOG.md +++ b/packages/services/service-settings/CHANGELOG.md @@ -1,5 +1,20 @@ # @objectstack/service-settings +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/platform-objects@12.2.0 + - @objectstack/types@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-settings/package.json b/packages/services/service-settings/package.json index 38686161e0..b084148f3b 100644 --- a/packages/services/service-settings/package.json +++ b/packages/services/service-settings/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-settings", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Settings service for ObjectStack — manifest registry + K/V resolver (OS_* env > Tenant > User > Default) + REST routes. See ADR-0007.", "type": "module", diff --git a/packages/services/service-storage/CHANGELOG.md b/packages/services/service-storage/CHANGELOG.md index 0a80141ae2..e2ab8140d9 100644 --- a/packages/services/service-storage/CHANGELOG.md +++ b/packages/services/service-storage/CHANGELOG.md @@ -1,5 +1,20 @@ # @objectstack/service-storage +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/observability@12.2.0 + - @objectstack/platform-objects@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/services/service-storage/package.json b/packages/services/service-storage/package.json index 680a528b32..71b22e8a26 100644 --- a/packages/services/service-storage/package.json +++ b/packages/services/service-storage/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/service-storage", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Storage Service for ObjectStack — implements IStorageService with local filesystem and S3 adapter skeleton", "type": "module", diff --git a/packages/spec/CHANGELOG.md b/packages/spec/CHANGELOG.md index 6573c70442..51f7aa4117 100644 --- a/packages/spec/CHANGELOG.md +++ b/packages/spec/CHANGELOG.md @@ -1,5 +1,30 @@ # @objectstack/spec +## 12.2.0 + +### Minor Changes + +- fce8ff4: feat(rest,spec): named import mappings (#2611) — `POST /data/:object/import` accepts `mappingName`, resolving a registered `defineMapping` artifact (stack `mappings:`) and applying its fieldMapping pipeline (rename + constant/map/split/join; lookup delegates to the built-in reference resolution) as a strict projection before coercion. The artifact's `mode`/`upsertKey` serve as writeMode/matchFields defaults; explicit request values win. Errors are loud and specific: `MAPPING_NOT_FOUND`, `MAPPING_TARGET_MISMATCH`, `MAPPING_FORMAT_MISMATCH`, `CONFLICTING_MAPPING` (mutually exclusive with the inline rename), and `UNSUPPORTED_TRANSFORM` for `javascript` (no server-side sandbox — never silently skipped). `defineStack` cross-reference validation now rejects mappings targeting undefined objects and `javascript` transforms at build time. +- 3962023: feat(spec,security): make ambiguous nav landings unrepresentable + close the field-permission filter oracle (objectui#2251, objectui ADR-0055). + + **spec — `ObjectNavItem` target exclusivity.** `NavigationItemSchema` now rejects an object nav item that combines `filters` with `recordId` or `viewName` (custom issue on `filters` with the fix in the message). Runtime precedence would silently ignore the extras — a stale `recordId` hijacking a configured `filters` slice — so the ambiguous combination is now unwritable (ADR-0053 correct-by-construction). FROM `{ filters, viewName }` / `{ filters, recordId }` TO exactly one landing field; the legacy `recordId` + `viewName` combination stays tolerated (documented: `viewName` is ignored). `filters` shipped in the same unreleased minor, so no released metadata is affected. + + **plugin-security — field-level predicate guard.** `FieldMasker` strips non-readable fields from RESULTS, but predicates still leaked their values: filtering / sorting / grouping / aggregating by a hidden field changes row presence (a filter oracle — probe `salary >= X` even though the column is masked). The security middleware now rejects (403 `PermissionDeniedError`, `reason: 'field_predicate_denied'`) any caller query whose `where` / `orderBy` / `groupBy` / `having` / `aggregations` / `windowFunctions` reference a field the caller cannot read — evaluated against the caller's AST **before** RLS injection, so RLS policies may keep referencing hidden fields (e.g. `owner_id`). Rejection over silent predicate dropping: removing an `$and` branch widens results and re-opens the oracle. New exports: `assertReadableQueryFields`, `collectQueryFields`, `collectConditionFields`. + +- 2bb193d: feat(spec): `ObjectNavItem.filters` — declarative URL filter conditions targeting the parameterized bare data surface (objectui ADR-0055, objectui#2251). + + An object nav item can now carry `filters: Record` (equality semantics). The shell resolves such an entry to `/:objectName/data?filter[]=` — an unanchored data surface with removable filter chips — instead of a saved list view. Use it for one-off / parameterized slices (dashboard drill-throughs, "assigned to me" links); slices worth curating stay on `viewName`. Values support the same `{current_user_id}` / `{current_org_id}` template variables as `recordId`. Target precedence within `type: 'object'`: `recordId` → `filters` → `viewName`. Purely additive — items without `filters` are unaffected. + +- 0426d27: feat(spec): `deriveRecordFlowSurface(def, flow, opts)` — flow-aware record-surface derivation (#2604, extends #2578's `deriveRecordSurface`, ADR-0085 §5 one-shared-derivation). + + Decides the default surface per record FLOW: `view` keeps the shipped behavior verbatim (field-heavy → `route`/page, light → drawer overlay); the task flows (`create` / `edit` / `child-create` / `child-edit`) are ALWAYS overlays — never routes — with the derived `'page'` mapped to a full-screen modal (`size: 'full'`) and light objects staying a drawer. `child-*` flows take the CHILD object's def (the overlay sizes to the record being edited; the return target is always the parent detail). Mobile task flows are full-screen modals. + + Rationale: viewing a record is shareable state (deep-link belongs there); making/changing one is a transient task whose URL is a false promise (refresh loses the draft) and whose invariant is lossless return to the origin. Renderers treat the result as the DEFAULT only — explicit `navigation.mode`/`size`, `FormView.type`/`modalSize`, or an assigned page still win. No new authorable key (ADR-0085 §2). Additive, no breaking changes. + +- da807f7: feat(spec)!: retire the placeholder metadata kinds `trigger`, `router`, `function`, `service` (ADR-0088). + + The registry is the contract authors — human and AI — read to learn what can be authored, and these four kinds had no authoring surface, no loader, no schema, and no (or a dead) consumer. `MetadataTypeSchema` + `DEFAULT_METADATA_TYPE_REGISTRY` shrink 30 → 26; `OPS_FILE_SUFFIX_REGEX` drops the four suffixes; the dormant objectql load path that registered QL functions from `type: 'function'` metadata items is removed (`defineStack({ functions })` / plugin `contributes.functions` remain the delivered forms); the metadata-core lockstep enum follows. `external_catalog` stays and is now annotated RUNTIME-CREATED (ADR-0062): its lack of an authoring surface is correct design. The delivered replacements: `hook` / `record_change` flows (trigger), plugin `contributes.routes` + declarative `apis:` (router), `defineStack({ functions })` (function), the plugin/service registry (service). Persisted `sys_metadata` rows are unaffected — no production read path re-parses stored `type` values through the enum. + ## 12.1.0 ### Patch Changes diff --git a/packages/spec/package.json b/packages/spec/package.json index 9d161981b9..b0d719920d 100644 --- a/packages/spec/package.json +++ b/packages/spec/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/spec", - "version": "12.1.0", + "version": "12.2.0", "description": "ObjectStack Protocol & Specification - TypeScript Interfaces, JSON Schemas, and Convention Configurations", "license": "Apache-2.0", "main": "dist/index.js", diff --git a/packages/triggers/trigger-api/CHANGELOG.md b/packages/triggers/trigger-api/CHANGELOG.md index 8f16a93253..e3fc238088 100644 --- a/packages/triggers/trigger-api/CHANGELOG.md +++ b/packages/triggers/trigger-api/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/trigger-api +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/triggers/trigger-api/package.json b/packages/triggers/trigger-api/package.json index b7312891ef..6516232e9d 100644 --- a/packages/triggers/trigger-api/package.json +++ b/packages/triggers/trigger-api/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/trigger-api", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Inbound HTTP/webhook flow trigger for ObjectStack — per-flow HMAC-verified endpoints with queue-backed ingestion (ADR-0041)", "main": "dist/index.js", diff --git a/packages/triggers/trigger-record-change/CHANGELOG.md b/packages/triggers/trigger-record-change/CHANGELOG.md index 1f4d02a315..4939aa9408 100644 --- a/packages/triggers/trigger-record-change/CHANGELOG.md +++ b/packages/triggers/trigger-record-change/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/plugin-trigger-record-change +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/triggers/trigger-record-change/package.json b/packages/triggers/trigger-record-change/package.json index 8696be8448..5900af67a6 100644 --- a/packages/triggers/trigger-record-change/package.json +++ b/packages/triggers/trigger-record-change/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/trigger-record-change", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Record-change flow trigger for ObjectStack — auto-launches flows on object insert/update/delete via ObjectQL lifecycle hooks (ADR-0018)", "main": "dist/index.js", diff --git a/packages/triggers/trigger-schedule/CHANGELOG.md b/packages/triggers/trigger-schedule/CHANGELOG.md index b4cb8c314c..c6057499e0 100644 --- a/packages/triggers/trigger-schedule/CHANGELOG.md +++ b/packages/triggers/trigger-schedule/CHANGELOG.md @@ -1,5 +1,18 @@ # @objectstack/plugin-trigger-schedule +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/spec@12.2.0 + - @objectstack/core@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/triggers/trigger-schedule/package.json b/packages/triggers/trigger-schedule/package.json index 3d138391aa..f636687a70 100644 --- a/packages/triggers/trigger-schedule/package.json +++ b/packages/triggers/trigger-schedule/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/trigger-schedule", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Schedule flow trigger for ObjectStack — auto-launches flows on a cron/interval/once schedule via the IJobService (ADR-0018)", "main": "dist/index.js", diff --git a/packages/types/CHANGELOG.md b/packages/types/CHANGELOG.md index 3d81a0b5b7..e5bcd4d07f 100644 --- a/packages/types/CHANGELOG.md +++ b/packages/types/CHANGELOG.md @@ -1,5 +1,16 @@ # @objectstack/types +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] + - @objectstack/spec@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/types/package.json b/packages/types/package.json index 1b8463e45c..4152fc4771 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/types", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Shared interfaces describing the ObjectStack Runtime environment", "main": "dist/index.js", diff --git a/packages/verify/CHANGELOG.md b/packages/verify/CHANGELOG.md index 3c2f81afd5..d07f1fe113 100644 --- a/packages/verify/CHANGELOG.md +++ b/packages/verify/CHANGELOG.md @@ -1,5 +1,31 @@ # @objectstack/verify +## 12.2.0 + +### Patch Changes + +- Updated dependencies [fce8ff4] +- Updated dependencies [3962023] +- Updated dependencies [2bb193d] +- Updated dependencies [0426d27] +- Updated dependencies [da807f7] +- Updated dependencies [4f5b791] + - @objectstack/rest@12.2.0 + - @objectstack/spec@12.2.0 + - @objectstack/plugin-security@12.2.0 + - @objectstack/objectql@12.2.0 + - @objectstack/runtime@12.2.0 + - @objectstack/core@12.2.0 + - @objectstack/plugin-sharing@12.2.0 + - @objectstack/driver-sqlite-wasm@12.2.0 + - @objectstack/plugin-auth@12.2.0 + - @objectstack/plugin-hono-server@12.2.0 + - @objectstack/plugin-org-scoping@12.2.0 + - @objectstack/service-analytics@12.2.0 + - @objectstack/service-automation@12.2.0 + - @objectstack/service-datasource@12.2.0 + - @objectstack/service-settings@12.2.0 + ## 12.1.0 ### Patch Changes diff --git a/packages/verify/package.json b/packages/verify/package.json index 59f9f2e72a..27821cc8da 100644 --- a/packages/verify/package.json +++ b/packages/verify/package.json @@ -1,6 +1,6 @@ { "name": "@objectstack/verify", - "version": "12.1.0", + "version": "12.2.0", "license": "Apache-2.0", "description": "Boot any ObjectStack app in-process and verify it through the real HTTP stack — auto-derived CRUD round-trip fidelity plus the cross-owner RLS invariant. Catches runtime regressions that static checks miss.", "type": "module", diff --git a/packages/vscode-objectstack/CHANGELOG.md b/packages/vscode-objectstack/CHANGELOG.md index 6a428fc7ef..ec177f824b 100644 --- a/packages/vscode-objectstack/CHANGELOG.md +++ b/packages/vscode-objectstack/CHANGELOG.md @@ -1,5 +1,7 @@ # objectstack-vscode +## 12.2.0 + ## 12.1.0 ## 12.0.0 diff --git a/packages/vscode-objectstack/package.json b/packages/vscode-objectstack/package.json index da2fd403e4..7cc86cecba 100644 --- a/packages/vscode-objectstack/package.json +++ b/packages/vscode-objectstack/package.json @@ -2,7 +2,7 @@ "name": "objectstack-vscode", "displayName": "ObjectStack", "description": "ObjectStack Protocol — Autocomplete, validation, and inline diagnostics for .object.ts, .view.ts, and objectstack.config.ts files", - "version": "12.1.0", + "version": "12.2.0", "publisher": "objectstack", "license": "Apache-2.0", "repository": {