From 967941f50bf097e81e3f013217e8b4f8404d611e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 18 Jun 2026 16:14:07 +0000 Subject: [PATCH] Version Packages --- .changeset/add-desktop-skill-directories.md | 8 ------- .changeset/anthropic-adaptive-thinking.md | 11 --------- .changeset/batch-child-completion-wakes.md | 5 ---- .../capture-codex-reasoning-summaries.md | 6 ----- .changeset/compact-uuid-filter-indexes.md | 5 ---- .changeset/delegate-reasoning-pi-ai.md | 6 ----- .changeset/enable-agent-model-retries.md | 5 ---- .../fix-agent-wake-claim-token-races.md | 6 ----- .changeset/meaningful-worker-slugs.md | 5 ---- .changeset/mobile-chat-timeline-flash-fix.md | 6 ----- ...eplication-introspection-error-handling.md | 12 ---------- .changeset/tracestate-sample-rate.md | 9 -------- examples/agents-chat-starter/CHANGELOG.md | 12 ++++++++++ examples/agents-chat-starter/package.json | 2 +- examples/agents-walkthrough/CHANGELOG.md | 12 ++++++++++ examples/agents-walkthrough/package.json | 2 +- examples/deep-survey/CHANGELOG.md | 12 ++++++++++ examples/deep-survey/package.json | 2 +- packages/agents-desktop/CHANGELOG.md | 6 +++++ packages/agents-desktop/package.json | 2 +- packages/agents-mobile/CHANGELOG.md | 15 ++++++++++++ packages/agents-mobile/package.json | 2 +- packages/agents-runtime/CHANGELOG.md | 11 +++++++++ packages/agents-runtime/package.json | 2 +- packages/agents-server-ui/CHANGELOG.md | 14 +++++++++++ packages/agents-server-ui/package.json | 2 +- packages/agents-server/CHANGELOG.md | 13 +++++++++++ packages/agents-server/package.json | 2 +- packages/agents/CHANGELOG.md | 23 +++++++++++++++++++ packages/agents/package.json | 2 +- packages/electric-ax/CHANGELOG.md | 15 ++++++++++++ packages/electric-ax/package.json | 2 +- packages/sync-service/CHANGELOG.md | 19 +++++++++++++++ packages/sync-service/package.json | 2 +- 34 files changed, 163 insertions(+), 95 deletions(-) delete mode 100644 .changeset/add-desktop-skill-directories.md delete mode 100644 .changeset/anthropic-adaptive-thinking.md delete mode 100644 .changeset/batch-child-completion-wakes.md delete mode 100644 .changeset/capture-codex-reasoning-summaries.md delete mode 100644 .changeset/compact-uuid-filter-indexes.md delete mode 100644 .changeset/delegate-reasoning-pi-ai.md delete mode 100644 .changeset/enable-agent-model-retries.md delete mode 100644 .changeset/fix-agent-wake-claim-token-races.md delete mode 100644 .changeset/meaningful-worker-slugs.md delete mode 100644 .changeset/mobile-chat-timeline-flash-fix.md delete mode 100644 .changeset/replication-introspection-error-handling.md delete mode 100644 .changeset/tracestate-sample-rate.md diff --git a/.changeset/add-desktop-skill-directories.md b/.changeset/add-desktop-skill-directories.md deleted file mode 100644 index 8511940bab..0000000000 --- a/.changeset/add-desktop-skill-directories.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@electric-ax/agents-desktop': patch -'@electric-ax/agents-server-ui': patch -'@electric-ax/agents-runtime': patch -'@electric-ax/agents': patch ---- - -Add desktop-configurable skill directories and common Claude/Codex skill locations so Markdown command files load recursively as slash-command skills without LLM metadata extraction. diff --git a/.changeset/anthropic-adaptive-thinking.md b/.changeset/anthropic-adaptive-thinking.md deleted file mode 100644 index 7a8d93cd21..0000000000 --- a/.changeset/anthropic-adaptive-thinking.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -'@electric-ax/agents': patch ---- - -Use Anthropic's adaptive thinking API for models that require it (Opus 4.6/4.7, -Sonnet 4.6). The builtin model catalog previously injected budget-based -`thinking: { type: "enabled", budget_tokens }` for every reasoning-capable -Anthropic model, which Opus 4.7 rejects with a 400 — it needs -`thinking: { type: "adaptive" }` + `output_config.effort`. Those models now emit -the adaptive shape (reasoningEffort mapped to the effort level); older models -keep budget-based thinking. diff --git a/.changeset/batch-child-completion-wakes.md b/.changeset/batch-child-completion-wakes.md deleted file mode 100644 index b51db60554..0000000000 --- a/.changeset/batch-child-completion-wakes.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@electric-ax/agents-runtime': patch ---- - -Batch queued child completion wakes into a single wake payload so parent agents receive every child result without extra handler runs. diff --git a/.changeset/capture-codex-reasoning-summaries.md b/.changeset/capture-codex-reasoning-summaries.md deleted file mode 100644 index 37bff3b6ae..0000000000 --- a/.changeset/capture-codex-reasoning-summaries.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@electric-ax/agents': patch -'@electric-ax/agents-runtime': patch ---- - -Capture OpenAI Codex reasoning summaries by default when built-in reasoning is enabled while preserving explicit reasoning summary settings from caller payloads. diff --git a/.changeset/compact-uuid-filter-indexes.md b/.changeset/compact-uuid-filter-indexes.md deleted file mode 100644 index 75aff82c19..0000000000 --- a/.changeset/compact-uuid-filter-indexes.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@core/sync-service': patch ---- - -Store parsed UUID values as 16-byte binaries instead of canonical text inside the sync-service filter evaluator. This reduces memory use in where-clause filter indexes, especially equality and subquery index keys, while converting UUIDs back to canonical strings at API and SQL output boundaries. The shape metadata version is bumped so persisted shape comparable terms created with the old UUID string representation are ignored and rebuilt. diff --git a/.changeset/delegate-reasoning-pi-ai.md b/.changeset/delegate-reasoning-pi-ai.md deleted file mode 100644 index 1929c4f3dd..0000000000 --- a/.changeset/delegate-reasoning-pi-ai.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@electric-ax/agents': patch -'@electric-ax/agents-runtime': patch ---- - -Delegate built-in reasoning configuration to pi-ai instead of rewriting provider request payloads in the model catalog. Built-in OpenAI, OpenAI Codex, and Anthropic reasoning models now pass `reasoning` through the runtime adapter, preserving existing `auto` defaults and Anthropic thinking budgets while letting pi-ai own provider-specific payload shapes. diff --git a/.changeset/enable-agent-model-retries.md b/.changeset/enable-agent-model-retries.md deleted file mode 100644 index 3e2dceada1..0000000000 --- a/.changeset/enable-agent-model-retries.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@electric-ax/agents-runtime': patch ---- - -Enable provider retries for agent model calls by default so transient LLM errors are retried. Set `modelMaxRetries: 0` to preserve the previous no-retry behavior. diff --git a/.changeset/fix-agent-wake-claim-token-races.md b/.changeset/fix-agent-wake-claim-token-races.md deleted file mode 100644 index 59827569e5..0000000000 --- a/.changeset/fix-agent-wake-claim-token-races.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@electric-ax/agents-runtime': patch -'@electric-ax/agents-server': patch ---- - -Fix agent wake handling so concurrent sessions do not invalidate each other's claim write tokens, and retry same-stream wakes after the active wake drains instead of dropping pending work. diff --git a/.changeset/meaningful-worker-slugs.md b/.changeset/meaningful-worker-slugs.md deleted file mode 100644 index 492d22fda5..0000000000 --- a/.changeset/meaningful-worker-slugs.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@electric-ax/agents': patch ---- - -Require meaningful slugs when spawning workers and append a random suffix so worker URLs are easier to identify while remaining generally unique. diff --git a/.changeset/mobile-chat-timeline-flash-fix.md b/.changeset/mobile-chat-timeline-flash-fix.md deleted file mode 100644 index e98851a102..0000000000 --- a/.changeset/mobile-chat-timeline-flash-fix.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@electric-ax/agents-mobile': patch -'@electric-ax/agents-server-ui': patch ---- - -Fix mobile chat timeline flashing when sending messages, resizing the composer (multiline/attachments) and queuing messages, and fix inconsistent auto-scroll as the composer grows. The timeline WebView embed now receives dynamic updates (bottom inset, inline queued messages, scroll) imperatively instead of via props that re-render and flash it. Also fix the composer occasionally not clearing after send when typing quickly. diff --git a/.changeset/replication-introspection-error-handling.md b/.changeset/replication-introspection-error-handling.md deleted file mode 100644 index 6f14abe326..0000000000 --- a/.changeset/replication-introspection-error-handling.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -"@core/sync-service": patch ---- - -Stop the ShapeLogCollector from crashing when table introspection fails on the hot replication path. - -Previously the replication pipeline only handled `{:error, :connection_not_available}` from the inspector; every other legal inspector return crashed the ShapeLogCollector and took the whole shapes supervision tree down with it, putting the replication client into a 10-minute noproc retry loop: - -- `:table_not_found` (table dropped or renamed between the WAL record and introspection) crashed `Partitions.handle_relation/2` and the pk-column lookup with a `CaseClauseError`. Relation messages for dropped tables are now ignored and changes for dropped tables are keyed on the full record, the same fallback used for tables without a primary key. -- In-band database errors (e.g. out-of-memory, `statement_timeout` cancelling the catalog query) crashed `Partitions.handle_relation/2` with a `CaseClauseError` and made `Partitions.add_shape/3` raise. They are now propagated as `{:error, reason}`; the collector logs a warning and pauses replication via the existing retry path until introspection succeeds. -- Connection-class errors returned in-band by Postgrex (e.g. `"ssl recv: closed"`) are now classified as `:connection_not_available` instead of leaking through as strings. -- Shape restore no longer crashes with a `MatchError` when the connection pool isn't ready yet; it retries the introspection in place and only gives up (with a descriptive error) after ~10 seconds. diff --git a/.changeset/tracestate-sample-rate.md b/.changeset/tracestate-sample-rate.md deleted file mode 100644 index e59f878e13..0000000000 --- a/.changeset/tracestate-sample-rate.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -"@core/sync-service": patch ---- - -Honor an upstream head-sampling rate hint received via the W3C `tracestate` header (`electric=rate:`) on shape GET requests: - -When the remote parent trace is sampled, the `Plug_shape_get` root span (and the `shape_get.plug.stream_chunk` child spans) are stamped with the `SampleRate` attribute — `N` for responses with status < 500 and `1` for 5xx responses — so tracing backends that understand sampling weights scale aggregates over Electric's spans by the upstream sampling rate instead of under-reporting traffic ~N-fold. - -Requests without a remote trace context, with a not-sampled remote parent, or with a missing/invalid rate hint, behave exactly as before. diff --git a/examples/agents-chat-starter/CHANGELOG.md b/examples/agents-chat-starter/CHANGELOG.md index fe70e797b6..9af5af209f 100644 --- a/examples/agents-chat-starter/CHANGELOG.md +++ b/examples/agents-chat-starter/CHANGELOG.md @@ -1,5 +1,17 @@ # @electric-ax/example-agents-chat-starter +## 0.1.13 + +### Patch Changes + +- Updated dependencies [9d063e4] +- Updated dependencies [0418d90] +- Updated dependencies [ac2391d] +- Updated dependencies [8f4368d] +- Updated dependencies [354b01b] +- Updated dependencies [37b9922] + - @electric-ax/agents-runtime@0.6.2 + ## 0.1.12 ### Patch Changes diff --git a/examples/agents-chat-starter/package.json b/examples/agents-chat-starter/package.json index feff1b9239..cb8e258ec9 100644 --- a/examples/agents-chat-starter/package.json +++ b/examples/agents-chat-starter/package.json @@ -1,7 +1,7 @@ { "name": "@electric-ax/example-agents-chat-starter", "private": true, - "version": "0.1.12", + "version": "0.1.13", "type": "module", "scripts": { "dev": "pnpm run dev:server & pnpm run dev:ui", diff --git a/examples/agents-walkthrough/CHANGELOG.md b/examples/agents-walkthrough/CHANGELOG.md index 9db79bb5b9..bdd6cbed25 100644 --- a/examples/agents-walkthrough/CHANGELOG.md +++ b/examples/agents-walkthrough/CHANGELOG.md @@ -1,5 +1,17 @@ # @electric-ax/example-agents-walkthrough +## 0.1.10 + +### Patch Changes + +- Updated dependencies [9d063e4] +- Updated dependencies [0418d90] +- Updated dependencies [ac2391d] +- Updated dependencies [8f4368d] +- Updated dependencies [354b01b] +- Updated dependencies [37b9922] + - @electric-ax/agents-runtime@0.6.2 + ## 0.1.9 ### Patch Changes diff --git a/examples/agents-walkthrough/package.json b/examples/agents-walkthrough/package.json index d31ee40eed..53d0f1d5c4 100644 --- a/examples/agents-walkthrough/package.json +++ b/examples/agents-walkthrough/package.json @@ -1,7 +1,7 @@ { "name": "@electric-ax/example-agents-walkthrough", "private": true, - "version": "0.1.9", + "version": "0.1.10", "type": "module", "scripts": { "dev": "tsx watch --env-file=.env src/index.ts", diff --git a/examples/deep-survey/CHANGELOG.md b/examples/deep-survey/CHANGELOG.md index fd3bed1071..00ba8a2c24 100644 --- a/examples/deep-survey/CHANGELOG.md +++ b/examples/deep-survey/CHANGELOG.md @@ -1,5 +1,17 @@ # @electric-ax/example-deep-survey +## 0.1.29 + +### Patch Changes + +- Updated dependencies [9d063e4] +- Updated dependencies [0418d90] +- Updated dependencies [ac2391d] +- Updated dependencies [8f4368d] +- Updated dependencies [354b01b] +- Updated dependencies [37b9922] + - @electric-ax/agents-runtime@0.6.2 + ## 0.1.28 ### Patch Changes diff --git a/examples/deep-survey/package.json b/examples/deep-survey/package.json index 73a42ce470..d07cdf10dd 100644 --- a/examples/deep-survey/package.json +++ b/examples/deep-survey/package.json @@ -1,7 +1,7 @@ { "name": "@electric-ax/example-deep-survey", "private": true, - "version": "0.1.28", + "version": "0.1.29", "type": "module", "scripts": { "dev": "pnpm run --parallel \"/^dev:/\"", diff --git a/packages/agents-desktop/CHANGELOG.md b/packages/agents-desktop/CHANGELOG.md index 9a813fdc63..408a4c9193 100644 --- a/packages/agents-desktop/CHANGELOG.md +++ b/packages/agents-desktop/CHANGELOG.md @@ -1,5 +1,11 @@ # @electric-ax/agents-desktop +## 0.6.1 + +### Patch Changes + +- 9d063e4: Add desktop-configurable skill directories and common Claude/Codex skill locations so Markdown command files load recursively as slash-command skills without LLM metadata extraction. + ## 0.6.0 ### Minor Changes diff --git a/packages/agents-desktop/package.json b/packages/agents-desktop/package.json index ac64b0fa52..1246c3941e 100644 --- a/packages/agents-desktop/package.json +++ b/packages/agents-desktop/package.json @@ -2,7 +2,7 @@ "name": "@electric-ax/agents-desktop", "productName": "Electric Agents", "private": true, - "version": "0.6.0", + "version": "0.6.1", "description": "Desktop app for Electric Agents", "author": "ElectricSQL ", "homepage": "https://electric-sql.com", diff --git a/packages/agents-mobile/CHANGELOG.md b/packages/agents-mobile/CHANGELOG.md index 3aff4cbb7f..759bb28fb3 100644 --- a/packages/agents-mobile/CHANGELOG.md +++ b/packages/agents-mobile/CHANGELOG.md @@ -1,5 +1,20 @@ # @electric-ax/agents-mobile +## 0.6.2 + +### Patch Changes + +- aa6ca85: Fix mobile chat timeline flashing when sending messages, resizing the composer (multiline/attachments) and queuing messages, and fix inconsistent auto-scroll as the composer grows. The timeline WebView embed now receives dynamic updates (bottom inset, inline queued messages, scroll) imperatively instead of via props that re-render and flash it. Also fix the composer occasionally not clearing after send when typing quickly. +- Updated dependencies [9d063e4] +- Updated dependencies [0418d90] +- Updated dependencies [ac2391d] +- Updated dependencies [8f4368d] +- Updated dependencies [354b01b] +- Updated dependencies [37b9922] +- Updated dependencies [aa6ca85] + - @electric-ax/agents-server-ui@0.6.2 + - @electric-ax/agents-runtime@0.6.2 + ## 0.6.1 ### Patch Changes diff --git a/packages/agents-mobile/package.json b/packages/agents-mobile/package.json index 0c9bdb6218..066931dc76 100644 --- a/packages/agents-mobile/package.json +++ b/packages/agents-mobile/package.json @@ -1,7 +1,7 @@ { "name": "@electric-ax/agents-mobile", "private": true, - "version": "0.6.1", + "version": "0.6.2", "main": "index.ts", "scripts": { "start": "expo start", diff --git a/packages/agents-runtime/CHANGELOG.md b/packages/agents-runtime/CHANGELOG.md index a78b675ffe..b0434a7825 100644 --- a/packages/agents-runtime/CHANGELOG.md +++ b/packages/agents-runtime/CHANGELOG.md @@ -1,5 +1,16 @@ # @electric-ax/agents-runtime +## 0.6.2 + +### Patch Changes + +- 9d063e4: Add desktop-configurable skill directories and common Claude/Codex skill locations so Markdown command files load recursively as slash-command skills without LLM metadata extraction. +- 0418d90: Batch queued child completion wakes into a single wake payload so parent agents receive every child result without extra handler runs. +- ac2391d: Capture OpenAI Codex reasoning summaries by default when built-in reasoning is enabled while preserving explicit reasoning summary settings from caller payloads. +- 8f4368d: Delegate built-in reasoning configuration to pi-ai instead of rewriting provider request payloads in the model catalog. Built-in OpenAI, OpenAI Codex, and Anthropic reasoning models now pass `reasoning` through the runtime adapter, preserving existing `auto` defaults and Anthropic thinking budgets while letting pi-ai own provider-specific payload shapes. +- 354b01b: Enable provider retries for agent model calls by default so transient LLM errors are retried. Set `modelMaxRetries: 0` to preserve the previous no-retry behavior. +- 37b9922: Fix agent wake handling so concurrent sessions do not invalidate each other's claim write tokens, and retry same-stream wakes after the active wake drains instead of dropping pending work. + ## 0.6.1 ### Patch Changes diff --git a/packages/agents-runtime/package.json b/packages/agents-runtime/package.json index a12caa5275..ee10cf8fe3 100644 --- a/packages/agents-runtime/package.json +++ b/packages/agents-runtime/package.json @@ -1,6 +1,6 @@ { "name": "@electric-ax/agents-runtime", - "version": "0.6.1", + "version": "0.6.2", "description": "Electric agent runtime — behavioral stack for agent entities over durable streams", "keywords": [ "tanstack-intent" diff --git a/packages/agents-server-ui/CHANGELOG.md b/packages/agents-server-ui/CHANGELOG.md index b771b5d128..a092eacac6 100644 --- a/packages/agents-server-ui/CHANGELOG.md +++ b/packages/agents-server-ui/CHANGELOG.md @@ -1,5 +1,19 @@ # @electric-ax/agents-server-ui +## 0.6.2 + +### Patch Changes + +- 9d063e4: Add desktop-configurable skill directories and common Claude/Codex skill locations so Markdown command files load recursively as slash-command skills without LLM metadata extraction. +- aa6ca85: Fix mobile chat timeline flashing when sending messages, resizing the composer (multiline/attachments) and queuing messages, and fix inconsistent auto-scroll as the composer grows. The timeline WebView embed now receives dynamic updates (bottom inset, inline queued messages, scroll) imperatively instead of via props that re-render and flash it. Also fix the composer occasionally not clearing after send when typing quickly. +- Updated dependencies [9d063e4] +- Updated dependencies [0418d90] +- Updated dependencies [ac2391d] +- Updated dependencies [8f4368d] +- Updated dependencies [354b01b] +- Updated dependencies [37b9922] + - @electric-ax/agents-runtime@0.6.2 + ## 0.6.1 ### Patch Changes diff --git a/packages/agents-server-ui/package.json b/packages/agents-server-ui/package.json index 170fbb2854..37cf18df46 100644 --- a/packages/agents-server-ui/package.json +++ b/packages/agents-server-ui/package.json @@ -1,7 +1,7 @@ { "name": "@electric-ax/agents-server-ui", "private": true, - "version": "0.6.1", + "version": "0.6.2", "type": "module", "scripts": { "build": "vite build", diff --git a/packages/agents-server/CHANGELOG.md b/packages/agents-server/CHANGELOG.md index 6d712ca087..64fcfe21c5 100644 --- a/packages/agents-server/CHANGELOG.md +++ b/packages/agents-server/CHANGELOG.md @@ -1,5 +1,18 @@ # @electric-ax/agents-server +## 0.6.2 + +### Patch Changes + +- 37b9922: Fix agent wake handling so concurrent sessions do not invalidate each other's claim write tokens, and retry same-stream wakes after the active wake drains instead of dropping pending work. +- Updated dependencies [9d063e4] +- Updated dependencies [0418d90] +- Updated dependencies [ac2391d] +- Updated dependencies [8f4368d] +- Updated dependencies [354b01b] +- Updated dependencies [37b9922] + - @electric-ax/agents-runtime@0.6.2 + ## 0.6.1 ### Patch Changes diff --git a/packages/agents-server/package.json b/packages/agents-server/package.json index 9fcdbae14a..d04f6f145a 100644 --- a/packages/agents-server/package.json +++ b/packages/agents-server/package.json @@ -1,6 +1,6 @@ { "name": "@electric-ax/agents-server", - "version": "0.6.1", + "version": "0.6.2", "description": "Electric Agents entity runtime server", "author": "Durable Stream contributors", "bin": { diff --git a/packages/agents/CHANGELOG.md b/packages/agents/CHANGELOG.md index aecc79554c..79a23f949e 100644 --- a/packages/agents/CHANGELOG.md +++ b/packages/agents/CHANGELOG.md @@ -1,5 +1,28 @@ # @electric-ax/agents +## 0.6.2 + +### Patch Changes + +- 9d063e4: Add desktop-configurable skill directories and common Claude/Codex skill locations so Markdown command files load recursively as slash-command skills without LLM metadata extraction. +- 16c8339: Use Anthropic's adaptive thinking API for models that require it (Opus 4.6/4.7, + Sonnet 4.6). The builtin model catalog previously injected budget-based + `thinking: { type: "enabled", budget_tokens }` for every reasoning-capable + Anthropic model, which Opus 4.7 rejects with a 400 — it needs + `thinking: { type: "adaptive" }` + `output_config.effort`. Those models now emit + the adaptive shape (reasoningEffort mapped to the effort level); older models + keep budget-based thinking. +- ac2391d: Capture OpenAI Codex reasoning summaries by default when built-in reasoning is enabled while preserving explicit reasoning summary settings from caller payloads. +- 8f4368d: Delegate built-in reasoning configuration to pi-ai instead of rewriting provider request payloads in the model catalog. Built-in OpenAI, OpenAI Codex, and Anthropic reasoning models now pass `reasoning` through the runtime adapter, preserving existing `auto` defaults and Anthropic thinking budgets while letting pi-ai own provider-specific payload shapes. +- 6dbb0bb: Require meaningful slugs when spawning workers and append a random suffix so worker URLs are easier to identify while remaining generally unique. +- Updated dependencies [9d063e4] +- Updated dependencies [0418d90] +- Updated dependencies [ac2391d] +- Updated dependencies [8f4368d] +- Updated dependencies [354b01b] +- Updated dependencies [37b9922] + - @electric-ax/agents-runtime@0.6.2 + ## 0.6.1 ### Patch Changes diff --git a/packages/agents/package.json b/packages/agents/package.json index 08f9bad02e..b916e2d165 100644 --- a/packages/agents/package.json +++ b/packages/agents/package.json @@ -1,6 +1,6 @@ { "name": "@electric-ax/agents", - "version": "0.6.1", + "version": "0.6.2", "description": "Built-in Electric Agents runtimes such as Horton and worker", "repository": { "type": "git", diff --git a/packages/electric-ax/CHANGELOG.md b/packages/electric-ax/CHANGELOG.md index bb11fc3209..411ba5ebbd 100644 --- a/packages/electric-ax/CHANGELOG.md +++ b/packages/electric-ax/CHANGELOG.md @@ -1,5 +1,20 @@ # electric-ax +## 0.2.22 + +### Patch Changes + +- Updated dependencies [9d063e4] +- Updated dependencies [16c8339] +- Updated dependencies [0418d90] +- Updated dependencies [ac2391d] +- Updated dependencies [8f4368d] +- Updated dependencies [354b01b] +- Updated dependencies [37b9922] +- Updated dependencies [6dbb0bb] + - @electric-ax/agents-runtime@0.6.2 + - @electric-ax/agents@0.6.2 + ## 0.2.21 ### Patch Changes diff --git a/packages/electric-ax/package.json b/packages/electric-ax/package.json index f87dd3736e..e88627b706 100644 --- a/packages/electric-ax/package.json +++ b/packages/electric-ax/package.json @@ -1,6 +1,6 @@ { "name": "electric-ax", - "version": "0.2.21", + "version": "0.2.22", "description": "CLI for Electric Agents", "author": "ElectricSQL team and contributors", "license": "Apache-2.0", diff --git a/packages/sync-service/CHANGELOG.md b/packages/sync-service/CHANGELOG.md index a564c08d3a..e4b80ac33e 100644 --- a/packages/sync-service/CHANGELOG.md +++ b/packages/sync-service/CHANGELOG.md @@ -1,5 +1,24 @@ # @core/sync-service +## 1.7.3 + +### Patch Changes + +- 214e644: Store parsed UUID values as 16-byte binaries instead of canonical text inside the sync-service filter evaluator. This reduces memory use in where-clause filter indexes, especially equality and subquery index keys, while converting UUIDs back to canonical strings at API and SQL output boundaries. The shape metadata version is bumped so persisted shape comparable terms created with the old UUID string representation are ignored and rebuilt. +- 0632b1c: Stop the ShapeLogCollector from crashing when table introspection fails on the hot replication path. + + Previously the replication pipeline only handled `{:error, :connection_not_available}` from the inspector; every other legal inspector return crashed the ShapeLogCollector and took the whole shapes supervision tree down with it, putting the replication client into a 10-minute noproc retry loop: + - `:table_not_found` (table dropped or renamed between the WAL record and introspection) crashed `Partitions.handle_relation/2` and the pk-column lookup with a `CaseClauseError`. Relation messages for dropped tables are now ignored and changes for dropped tables are keyed on the full record, the same fallback used for tables without a primary key. + - In-band database errors (e.g. out-of-memory, `statement_timeout` cancelling the catalog query) crashed `Partitions.handle_relation/2` with a `CaseClauseError` and made `Partitions.add_shape/3` raise. They are now propagated as `{:error, reason}`; the collector logs a warning and pauses replication via the existing retry path until introspection succeeds. + - Connection-class errors returned in-band by Postgrex (e.g. `"ssl recv: closed"`) are now classified as `:connection_not_available` instead of leaking through as strings. + - Shape restore no longer crashes with a `MatchError` when the connection pool isn't ready yet; it retries the introspection in place and only gives up (with a descriptive error) after ~10 seconds. + +- 0cf38e8: Honor an upstream head-sampling rate hint received via the W3C `tracestate` header (`electric=rate:`) on shape GET requests: + + When the remote parent trace is sampled, the `Plug_shape_get` root span (and the `shape_get.plug.stream_chunk` child spans) are stamped with the `SampleRate` attribute — `N` for responses with status < 500 and `1` for 5xx responses — so tracing backends that understand sampling weights scale aggregates over Electric's spans by the upstream sampling rate instead of under-reporting traffic ~N-fold. + + Requests without a remote trace context, with a not-sampled remote parent, or with a missing/invalid rate hint, behave exactly as before. + ## 1.7.2 ### Patch Changes diff --git a/packages/sync-service/package.json b/packages/sync-service/package.json index 8368330b0f..2d735290ae 100644 --- a/packages/sync-service/package.json +++ b/packages/sync-service/package.json @@ -1,7 +1,7 @@ { "name": "@core/sync-service", "private": true, - "version": "1.7.2", + "version": "1.7.3", "scripts": { "publish:hex": "../../scripts/publish_hex.sh electric", "changeset": "pushd ../..; pnpm changeset; popd"