Preserve plugin capture conditions, observed missing inputs, and lazy dependency acquisition under Bun. Target portable worker and recovery bundles at Node independently of the build runtime, and migrate runtime fixtures to owned cleanup channels.
Validation: paired Node24/Bun17c9 covering suites; 54 Node plugin cases and 46 Bun cases with eight exact-pin skips; full build, changed-file checks, and import-cycle checks; green exact-head CI. The published 2026.9.7 updater installed the verified candidate, replaced the managed service, completed its durable update run, and passed readiness and build-identity checks.
Plugin generation capture placed installed sibling dependencies under the
captured package, breaking sqlite-vec's relative lookup of its optional
platform binary and affecting vector-memory plugins.
Preserve sibling placement at the existing capture producer while retaining
nested dependency versions and ancestor lookup. Links still target captured
copies. Include regression fixtures and plugin architecture documentation.
Validation: independent review found no accepted P0/P1 findings. Maintainer
Linux Testbox verification failed on main and passed with this change for
hoisted, nested, and pnpm-linked layouts, with links inside staging. Native
preparation verifies hosted CI. Actual sqlite-vec binary loading and the
published-updater transition remain unverified.
Thanks to @RichSomeday222 for the fix. Refs #153516.
Co-authored-by: RichSomeday222 <x1980078293x@163.com>
* fix(plugins): keep artifact removal from blocking the Gateway
Join asynchronous captured-source removal through the instance cleanup owner
while preserving plugin callback deadlines and synchronous inspection and
failure cleanup.
* test(tts): await speech registration settlement
* fix(plugins): preserve native addon roots during hot reload
Retain source dependency lookup directories in captured generations so native addon loaders do not mistake per-file node_modules shims for their package root. Preserve real nested dependency versions and captured asset lifetime.
Fixes#148148. Refs #145484 and #145816. Reported by @NovaUnboundAi (#148148).
* chore(ci): refresh native addon repair checks
* fix(plugins): recover reloads and release retired resources
Restore native Bun dependency resolution, runtime-only refresh, channel
status and cold-account handling. Return contention before Gateway plugin
or Claw-package mutations start, retaining receipts for later failures.
Keep slow service startup cleanup with its lifecycle owner, restore
LanceDB service state on rollback, and retain CLI cleanup warnings.
Remove obsolete generation retirement and duplicate package resolution.
Related: #145484, #145649
* test(gateway): verify startup capability reconnects with real sockets
* fix(agents): release queued preparation before gateway retirement
* fix(plugins): preserve cleanup ownership and machine-readable reloads
* refactor(gateway): group reload recovery proof by lifecycle owner
* fix(plugins): preserve require context on older Bun runtimes
* fix(agents): return explicit queued cleanup completion
* refactor(plugins): retain code and cleanup through retirement
* fix(plugins): release cached publications when their owners retire
Release idle prepared publications at registry and metadata-cache retirement while retaining admitted borrowers and surviving Gateways. Resolve late local imports from captured packages and align lifecycle fixtures with their owning contracts.
* fix: preserve plugin loader startup ownership
* fix: retain explicit SDK preference for Bun plugins
* fix(plugins): preserve rebased startup and build contracts
Prepare runtime SDK output for both startup corpora, preserve exact released update-bridge provenance, and share hosted runtime prerequisites within the existing serial budget. Remove the redundant packing pass and isolate the timing fixture from unrelated suite growth.
* style: simplify foundation CI fixtures
* fix(plugins): preserve SDK readiness and startup cleanup
Recognize authorized built relative SDK imports before asynchronous linking so published CJS plugins can synchronously load the same host SDK graph. Bind dashboard preparation to Gateway drain and declare the package-runtime test build prerequisite.
Validation: scoped P2 review clean; 51 loader tests and 602 package/planner tests; published 2026.9.3 upgrade-survivor replay passed; configured TypeScript upgrade, fresh TypeScript startup, and CLI-managed JS/CJS upgrade each passed two RPCs, health, exactly-once service cleanup, and natural exit with unchanged shutdown grace. Runtime/UI/metadata rebuilt; full hosted CI still required.
* test(pr): model GitHub commit authors in merge fixtures
Current main verifies human contributor credit through per-commit GitHub metadata. Return the synthetic repository commit author and unlinked account status, and include the requested PR author type, so the real merge workflow can exercise that contract.
Validation: both original merge-ref failures reproduced before the fixture repair and passed afterward; all 16 selected tooling checks passed; focused P2 review is clean. No production code changes.