diff --git a/docs/reference/plugin-sdk-bundled-parity.md b/docs/reference/plugin-sdk-bundled-parity.md deleted file mode 100644 index 638424bd6bc..00000000000 --- a/docs/reference/plugin-sdk-bundled-parity.md +++ /dev/null @@ -1,55 +0,0 @@ -# Plugin SDK bundled parity tracker - -## Phase 0 baseline - -Collected on 2026-03-03 (local dev machine) before this migration wave. - -| scenario | load time ms | rss delta MiB | loaded plugins | -| -------------------------- | -----------: | ------------: | -------------: | -| default-bundled-enable-set | 90004.13 | 1065.53 | 4 | -| telegram-only | 158.80 | 0.00 | 5 | -| discord-only | 56.40 | 0.22 | 5 | -| slack-only | 46.68 | 0.00 | 5 | - -## Phase 3 rerun after migration - -Collected on 2026-03-03 after subpath wiring + bundled entrypoint migration. - -| scenario | load time ms | rss delta MiB | loaded plugins | -| -------------------------- | -----------: | ------------: | -------------: | -| default-bundled-enable-set | 1564.07 | 95.09 | 4 | -| telegram-only | 1539.78 | 33.33 | 5 | -| discord-only | 5341.77 | 17.11 | 5 | -| slack-only | 370.49 | 4.78 | 5 | - -Notes: - -- These local numbers are noisy and order-dependent. -- Keep CI or repeated local medians as the source of truth for hard budgets. - -## Bundled plugin inventory and migration status - -Status legend: - -- `channel-subpath`: imports `openclaw/plugin-sdk/` -- `core-entrypoint`: entrypoint imports `openclaw/plugin-sdk/core` -- `no-sdk-import`: entrypoint does not import plugin-sdk - -`channel-subpath` (7): -`discord`, `imessage`, `line`, `signal`, `slack`, `telegram`, `whatsapp` - -`core-entrypoint` (28): -`acpx`, `bluebubbles`, `copilot-proxy`, `device-pair`, `diagnostics-otel`, `diffs`, `feishu`, -`google-gemini-cli-auth`, `googlechat`, `irc`, `matrix`, `mattermost`, `memory-core`, -`memory-lancedb`, `minimax-portal-auth`, `msteams`, `nextcloud-talk`, `nostr`, `phone-control`, -`qwen-portal-auth`, `synology-chat`, `talk-voice`, `thread-ownership`, `tlon`, `twitch`, -`voice-call`, `zalo`, `zalouser` - -`no-sdk-import` (3): -`llm-task`, `lobster`, `open-prose` - -Deferred (future wave): - -- Non-entrypoint bundled plugin internals that still import monolithic - `openclaw/plugin-sdk` (for example Matrix, Feishu, MSTeams, Zalo, Zalouser, - Twitch, Tlon, and related tests/runtime files). diff --git a/extensions/googlechat/package.json b/extensions/googlechat/package.json index 7506b44171d..ed7ba487ce0 100644 --- a/extensions/googlechat/package.json +++ b/extensions/googlechat/package.json @@ -8,7 +8,7 @@ "google-auth-library": "^10.6.1" }, "peerDependencies": { - "openclaw": ">=2026.3.1" + "openclaw": ">=2026.3.2" }, "openclaw": { "extensions": [ diff --git a/extensions/memory-core/package.json b/extensions/memory-core/package.json index 480e3b23f02..3669df92fb1 100644 --- a/extensions/memory-core/package.json +++ b/extensions/memory-core/package.json @@ -5,7 +5,7 @@ "description": "OpenClaw core memory search plugin", "type": "module", "peerDependencies": { - "openclaw": ">=2026.3.1" + "openclaw": ">=2026.3.2" }, "openclaw": { "extensions": [ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2e991dded9f..a8e923acc38 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -29,13 +29,13 @@ importers: version: 3.1000.0 '@buape/carbon': specifier: 0.0.0-beta-20260216184201 - version: 0.0.0-beta-20260216184201(hono@4.11.10)(opusscript@0.1.1) + version: 0.0.0-beta-20260216184201(@discordjs/opus@0.10.0)(hono@4.11.10)(opusscript@0.1.1) '@clack/prompts': specifier: ^1.0.1 version: 1.0.1 '@discordjs/voice': specifier: ^0.19.0 - version: 0.19.0(opusscript@0.1.1) + version: 0.19.0(@discordjs/opus@0.10.0)(opusscript@0.1.1) '@grammyjs/runner': specifier: ^2.0.3 version: 2.0.3(grammy@1.41.0) @@ -341,8 +341,8 @@ importers: specifier: ^10.6.1 version: 10.6.1 openclaw: - specifier: '>=2026.3.1' - version: 2026.3.1(@napi-rs/canvas@0.1.95)(@types/express@5.0.6)(audio-decode@2.2.3)(hono@4.11.10)(node-llama-cpp@3.16.2(typescript@5.9.3)) + specifier: '>=2026.3.2' + version: 2026.3.2(@napi-rs/canvas@0.1.95)(@types/express@5.0.6)(audio-decode@2.2.3)(hono@4.11.10)(node-llama-cpp@3.16.2(typescript@5.9.3)) extensions/imessage: {} @@ -402,8 +402,8 @@ importers: extensions/memory-core: dependencies: openclaw: - specifier: '>=2026.3.1' - version: 2026.3.1(@napi-rs/canvas@0.1.95)(@types/express@5.0.6)(audio-decode@2.2.3)(hono@4.11.10)(node-llama-cpp@3.16.2(typescript@5.9.3)) + specifier: '>=2026.3.2' + version: 2026.3.2(@napi-rs/canvas@0.1.95)(@types/express@5.0.6)(audio-decode@2.2.3)(hono@4.11.10)(node-llama-cpp@3.16.2(typescript@5.9.3)) extensions/memory-lancedb: dependencies: @@ -461,7 +461,7 @@ importers: dependencies: '@tloncorp/api': specifier: github:tloncorp/api-beta#7eede1c1a756977b09f96aa14a92e2b06318ae87 - version: https://codeload.github.com/tloncorp/api-beta/tar.gz/7eede1c1a756977b09f96aa14a92e2b06318ae87 + version: git+https://git@github.com:tloncorp/api-beta.git#7eede1c1a756977b09f96aa14a92e2b06318ae87 '@tloncorp/tlon-skill': specifier: 0.1.9 version: 0.1.9 @@ -925,6 +925,10 @@ packages: resolution: {integrity: sha512-YJOVVZ545x24mHzANfYoy0BJX5PDyeZlpiJjDkUBM/V/Ao7TFX9lcUvCN4nr0tbr5ubeaXxtEBILUrHtTphVeQ==} hasBin: true + '@discordjs/opus@0.10.0': + resolution: {integrity: sha512-HHEnSNrSPmFEyndRdQBJN2YE6egyXS9JUnJWyP6jficK0Y+qKMEZXyYTgmzpjrxXP1exM/hKaNP7BRBUEWkU5w==} + engines: {node: '>=12.0.0'} + '@discordjs/voice@0.19.0': resolution: {integrity: sha512-UyX6rGEXzVyPzb1yvjHtPfTlnLvB5jX/stAMdiytHhfoydX+98hfympdOwsnTktzr+IRvphxTbdErgYDJkEsvw==} engines: {node: '>=22.12.0'} @@ -2933,8 +2937,8 @@ packages: resolution: {integrity: sha512-5Kc5CM2Ysn3vTTArBs2vESUt0AQiWZA86yc1TI3B+lxXmtEq133C1nxXNOgnzhrivdPZIh3zLj5gDnZjoLL5GA==} engines: {node: '>=12.17.0'} - '@tloncorp/api@https://codeload.github.com/tloncorp/api-beta/tar.gz/7eede1c1a756977b09f96aa14a92e2b06318ae87': - resolution: {tarball: https://codeload.github.com/tloncorp/api-beta/tar.gz/7eede1c1a756977b09f96aa14a92e2b06318ae87} + '@tloncorp/api@git+https://git@github.com:tloncorp/api-beta.git#7eede1c1a756977b09f96aa14a92e2b06318ae87': + resolution: {commit: 7eede1c1a756977b09f96aa14a92e2b06318ae87, repo: git@github.com:tloncorp/api-beta.git, type: git} version: 0.0.2 '@tloncorp/tlon-skill-darwin-arm64@0.1.9': @@ -3266,8 +3270,8 @@ packages: link-preview-js: optional: true - '@whiskeysockets/libsignal-node@https://codeload.github.com/whiskeysockets/libsignal-node/tar.gz/1c30d7d7e76a3b0aa120b04dc6a26f5a12dccf67': - resolution: {tarball: https://codeload.github.com/whiskeysockets/libsignal-node/tar.gz/1c30d7d7e76a3b0aa120b04dc6a26f5a12dccf67} + '@whiskeysockets/libsignal-node@git+https://git@github.com:whiskeysockets/libsignal-node.git#1c30d7d7e76a3b0aa120b04dc6a26f5a12dccf67': + resolution: {commit: 1c30d7d7e76a3b0aa120b04dc6a26f5a12dccf67, repo: git@github.com:whiskeysockets/libsignal-node.git, type: git} version: 2.0.1 abbrev@1.1.1: @@ -4973,8 +4977,8 @@ packages: zod: optional: true - openclaw@2026.3.1: - resolution: {integrity: sha512-7Pt5ykhaYa8TYpLWnBhaMg6Lp6kfk3rMKgqJ3WWESKM9BizYu1fkH/rF9BLeXlsNASgZdLp4oR8H0XfvIIoXIg==} + openclaw@2026.3.2: + resolution: {integrity: sha512-Gkqx24m7PF1DUXPI968DuC9n52lTZ5hI3X5PIi0HosC7J7d6RLkgVppj1mxvgiQAWMp41E41elvoi/h4KBjFcQ==} engines: {node: '>=22.12.0'} hasBin: true peerDependencies: @@ -5185,10 +5189,13 @@ packages: prism-media@1.3.5: resolution: {integrity: sha512-IQdl0Q01m4LrkN1EGIE9lphov5Hy7WWlH6ulf5QdGePLlPas9p2mhgddTEHrlaXYjjFToM1/rWuwF37VF4taaA==} peerDependencies: + '@discordjs/opus': '>=0.8.0 <1.0.0' ffmpeg-static: ^5.0.2 || ^4.2.7 || ^3.0.0 || ^2.4.0 node-opus: ^0.3.3 opusscript: ^0.0.8 peerDependenciesMeta: + '@discordjs/opus': + optional: true ffmpeg-static: optional: true node-opus: @@ -6813,18 +6820,19 @@ snapshots: '@borewit/text-codec@0.2.1': {} - '@buape/carbon@0.0.0-beta-20260216184201(hono@4.11.10)(opusscript@0.1.1)': + '@buape/carbon@0.0.0-beta-20260216184201(@discordjs/opus@0.10.0)(hono@4.11.10)(opusscript@0.1.1)': dependencies: '@types/node': 25.3.3 discord-api-types: 0.38.37 optionalDependencies: '@cloudflare/workers-types': 4.20260120.0 - '@discordjs/voice': 0.19.0(opusscript@0.1.1) + '@discordjs/voice': 0.19.0(@discordjs/opus@0.10.0)(opusscript@0.1.1) '@hono/node-server': 1.19.9(hono@4.11.10) '@types/bun': 1.3.9 '@types/ws': 8.18.1 ws: 8.19.0 transitivePeerDependencies: + - '@discordjs/opus' - bufferutil - ffmpeg-static - hono @@ -6959,14 +6967,24 @@ snapshots: - supports-color optional: true - '@discordjs/voice@0.19.0(opusscript@0.1.1)': + '@discordjs/opus@0.10.0': + dependencies: + '@discordjs/node-pre-gyp': 0.4.5 + node-addon-api: 8.5.0 + transitivePeerDependencies: + - encoding + - supports-color + optional: true + + '@discordjs/voice@0.19.0(@discordjs/opus@0.10.0)(opusscript@0.1.1)': dependencies: '@types/ws': 8.18.1 discord-api-types: 0.38.40 - prism-media: 1.3.5(opusscript@0.1.1) + prism-media: 1.3.5(@discordjs/opus@0.10.0)(opusscript@0.1.1) tslib: 2.8.1 ws: 8.19.0 transitivePeerDependencies: + - '@discordjs/opus' - bufferutil - ffmpeg-static - node-opus @@ -8889,7 +8907,7 @@ snapshots: '@tinyhttp/content-disposition@2.2.4': {} - '@tloncorp/api@https://codeload.github.com/tloncorp/api-beta/tar.gz/7eede1c1a756977b09f96aa14a92e2b06318ae87': + '@tloncorp/api@git+https://git@github.com:tloncorp/api-beta.git#7eede1c1a756977b09f96aa14a92e2b06318ae87': dependencies: '@aws-sdk/client-s3': 3.1000.0 '@aws-sdk/s3-request-presigner': 3.1000.0 @@ -9340,7 +9358,7 @@ snapshots: '@cacheable/node-cache': 1.7.6 '@hapi/boom': 9.1.4 async-mutex: 0.5.0 - libsignal: '@whiskeysockets/libsignal-node@https://codeload.github.com/whiskeysockets/libsignal-node/tar.gz/1c30d7d7e76a3b0aa120b04dc6a26f5a12dccf67' + libsignal: '@whiskeysockets/libsignal-node@git+https://git@github.com:whiskeysockets/libsignal-node.git#1c30d7d7e76a3b0aa120b04dc6a26f5a12dccf67' lru-cache: 11.2.6 music-metadata: 11.12.1 p-queue: 9.1.0 @@ -9355,7 +9373,7 @@ snapshots: - supports-color - utf-8-validate - '@whiskeysockets/libsignal-node@https://codeload.github.com/whiskeysockets/libsignal-node/tar.gz/1c30d7d7e76a3b0aa120b04dc6a26f5a12dccf67': + '@whiskeysockets/libsignal-node@git+https://git@github.com:whiskeysockets/libsignal-node.git#1c30d7d7e76a3b0aa120b04dc6a26f5a12dccf67': dependencies: curve25519-js: 0.0.4 protobufjs: 6.8.8 @@ -11171,13 +11189,13 @@ snapshots: ws: 8.19.0 zod: 4.3.6 - openclaw@2026.3.1(@napi-rs/canvas@0.1.95)(@types/express@5.0.6)(audio-decode@2.2.3)(hono@4.11.10)(node-llama-cpp@3.16.2(typescript@5.9.3)): + openclaw@2026.3.2(@napi-rs/canvas@0.1.95)(@types/express@5.0.6)(audio-decode@2.2.3)(hono@4.11.10)(node-llama-cpp@3.16.2(typescript@5.9.3)): dependencies: '@agentclientprotocol/sdk': 0.14.1(zod@4.3.6) '@aws-sdk/client-bedrock': 3.1000.0 - '@buape/carbon': 0.0.0-beta-20260216184201(hono@4.11.10)(opusscript@0.1.1) + '@buape/carbon': 0.0.0-beta-20260216184201(@discordjs/opus@0.10.0)(hono@4.11.10)(opusscript@0.1.1) '@clack/prompts': 1.0.1 - '@discordjs/voice': 0.19.0(opusscript@0.1.1) + '@discordjs/voice': 0.19.0(@discordjs/opus@0.10.0)(opusscript@0.1.1) '@grammyjs/runner': 2.0.3(grammy@1.41.0) '@grammyjs/transformer-throttler': 1.2.1(grammy@1.41.0) '@homebridge/ciao': 1.3.5 @@ -11226,12 +11244,15 @@ snapshots: qrcode-terminal: 0.12.0 sharp: 0.34.5 sqlite-vec: 0.1.7-alpha.2 + strip-ansi: 7.2.0 tar: 7.5.9 tslog: 4.10.2 undici: 7.22.0 ws: 8.19.0 yaml: 2.8.2 zod: 4.3.6 + optionalDependencies: + '@discordjs/opus': 0.10.0 transitivePeerDependencies: - '@modelcontextprotocol/sdk' - '@types/express' @@ -11485,8 +11506,9 @@ snapshots: dependencies: parse-ms: 4.0.0 - prism-media@1.3.5(opusscript@0.1.1): + prism-media@1.3.5(@discordjs/opus@0.10.0)(opusscript@0.1.1): optionalDependencies: + '@discordjs/opus': 0.10.0 opusscript: 0.1.1 process-nextick-args@2.0.1: {}