Josh Lehman
2364e45fe4
test: align extension runtime mocks with plugin-sdk ( #51289 )
...
* test: align extension runtime mocks with plugin-sdk
Update stale extension tests to mock the plugin-sdk runtime barrels that production code now imports, and harden the Signal tool-result harness around system-event assertions so the channels lane matches current extension boundaries.
Regeneration-Prompt: |
Verify the failing channels-lane tests against current origin/main in an isolated worktree before changing anything. If the failures reproduce on main, keep the fix test-only unless production behavior is clearly wrong. Recent extension refactors moved Telegram, WhatsApp, and Signal code onto plugin-sdk runtime barrels, so update stale tests that still mock old core module paths to intercept the seams production code now uses. For Signal reaction notifications, avoid brittle assertions that depend on shared queued system-event state when a direct harness spy on enqueue behavior is sufficient. Preserve scope: only touch the failing tests and their local harness, then rerun the reproduced targeted tests plus the full channels lane and repo check gate.
* test: fix extension test drift on main
* fix: lazy-load bundled web search plugin registry
* test: make matrix sweeper failure injection portable
* fix: split heavy matrix runtime-api seams
* fix: simplify bundled web search id lookup
* test: tolerate windows env key casing
2026-03-20 15:59:53 -07:00
Peter Steinberger
f6b3245a7b
fix: pass full sdk gate
2026-03-20 19:24:10 +00:00
Peter Steinberger
62ddc9d9e0
refactor: consolidate plugin sdk surface
2026-03-20 19:24:10 +00:00
Vincent Koc
7fb142d115
test(whatsapp): override config-runtime mock exports safely
2026-03-19 09:42:13 -07:00
Harold Hunt
5508374669
fix(plugins): share split-load singleton state (openclaw#50418) thanks @huntharo
...
Co-authored-by: huntharo <5617868+huntharo@users.noreply.github.com>
2026-03-19 09:10:24 -04:00
Josh Avant
b965ef3802
Channels: stabilize lane harness and monitor tests ( #50167 )
...
* Channels: stabilize lane harness regressions
* Signal tests: stabilize tool-result harness dispatch
* Telegram tests: harden polling restart assertions
* Discord tests: stabilize channel lane harness coverage
* Slack tests: align slash harness runtime mocks
* Telegram tests: harden dispatch and pairing scenarios
* Telegram tests: fix SessionEntry typing in bot callback override case
* Slack tests: avoid slash runtime mock deadlock
* Tests: address bot review follow-ups
* Discord: restore accounts runtime-api seam
* Tests: stabilize Discord and Telegram channel harness assertions
* Tests: clarify Discord mock seam and remove unused Telegram import
* changelog
Signed-off-by: joshavant <830519+joshavant@users.noreply.github.com>
---------
Signed-off-by: joshavant <830519+joshavant@users.noreply.github.com>
2026-03-19 01:47:48 -05:00
Tak Hoffman
a98ffa41d0
build: make whatsapp plugin publishable
2026-03-18 23:22:44 -05:00
Tak Hoffman
16567ba4e7
test: align whatsapp expectations with current contracts
2026-03-18 23:17:48 -05:00
Tak Hoffman
5b7b5529f1
Plugins: remove shared extension boundary debt
2026-03-18 22:58:40 -05:00
Peter Steinberger
b7ca56f662
refactor: install heavy plugins on demand
2026-03-19 03:37:30 +00:00
Peter Steinberger
83c5bc946d
fix: restore full gate stability
2026-03-19 03:36:03 +00:00
Peter Steinberger
58cf9b865f
refactor: route extension seams through public apis
2026-03-19 03:20:10 +00:00
Peter Steinberger
30a94dfd3b
refactor: untangle whatsapp runtime boundary
2026-03-19 03:13:48 +00:00
Peter Steinberger
510f4276b5
refactor: tighten sdk reply pipeline contract
2026-03-19 03:13:15 +00:00
clawdia
6ae68faf5f
fix(whatsapp): use globalThis singleton for active-listener Map ( #47433 )
...
Merged via squash.
Prepared head SHA: 1c43dbff399853fd0bd4132886c3394d6659e85b
Co-authored-by: clawdia67 <261743618+clawdia67@users.noreply.github.com>
Co-authored-by: mcaxtr <7562095+mcaxtr@users.noreply.github.com>
Reviewed-by: @mcaxtr
2026-03-18 22:16:31 -03:00
Peter Steinberger
002cc07322
refactor: tighten plugin sdk channel surfaces
2026-03-19 00:46:36 +00:00
Vincent Koc
757c2cc2de
fix(release): isolate bundled config docs loading
2026-03-18 16:01:43 -07:00
Josh Avant
859889aae9
WhatsApp: stabilize inbound monitor and setup tests ( #50007 )
2026-03-18 17:08:57 -05:00
Peter Steinberger
a0d3dc94d0
perf: reduce unit test hot path overhead
2026-03-18 18:19:40 +00:00
Peter Steinberger
62edfdffbd
refactor: deduplicate reply payload handling
2026-03-18 18:14:57 +00:00
Peter Steinberger
8d73bc77fa
refactor: deduplicate reply payload helpers
2026-03-18 17:30:25 +00:00
Vincent Koc
467ec4d5f3
Types: fix optional cluster check follow-ups
2026-03-18 10:02:40 -07:00
Peter Steinberger
27f655ed11
refactor: deduplicate channel runtime helpers
2026-03-18 16:37:27 +00:00
Peter Steinberger
f6928617b7
test: stabilize gate regressions
2026-03-18 15:36:32 +00:00
Peter Steinberger
7943e83c6c
fix: restore rebased full gate
2026-03-18 15:36:18 +00:00
Peter Steinberger
0cddb5fb7c
fix: restore full gate
2026-03-18 15:34:27 +00:00
Vincent Koc
fbd88e2c8f
Main recovery: restore formatter and contract checks ( #49570 )
...
* Extensions: fix oxfmt drift on main
* Plugins: restore runtime barrel exports on main
* Config: restore web search compatibility types
* Telegram: align test harness with reply runtime
* Plugin SDK: fix channel config accessor generics
* CLI: remove redundant search provider casts
* Tests: restore main typecheck coverage
* Lobster: fix test import formatting
* Extensions: route bundled seams through plugin-sdk
* Tests: use extension env helper for xai
* Image generation: fix main oxfmt drift
* Config: restore latest main compatibility checks
* Plugin SDK: align guardrail tests with lint
* Telegram: type native command skill mock
2026-03-18 00:30:01 -07:00
Vincent Koc
3d31ba7830
Plugin SDK: guard package subpaths and fix Twitch setup export
...
* fix(plugins): add missing secret-input-schema build entry and Matrix runtime export
buildSecretInputSchema was not included in plugin-sdk-entrypoints.json,
so it was never emitted to dist/plugin-sdk/secret-input-schema.js. This
caused a ReferenceError during onboard when configuring channels that use
secret input schemas (matrix, feishu, mattermost, bluebubbles, nextcloud-talk, zalo).
Additionally, the Matrix extension's hand-written runtime-api barrel was
missing the re-export, unlike other extensions that use `export *` from
their plugin-sdk subpath.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Plugin SDK: guard package subpaths and fix Twitch setup export
* Plugin SDK: fix import guardrail drift
---------
Co-authored-by: hxy91819 <masonxhuang@icloud.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 23:56:49 -07:00
Vincent Koc
77dfa73736
Plugins: internalize whatsapp SDK imports
2026-03-17 23:10:51 -07:00
Peter Steinberger
05603e4e6c
refactor: deduplicate channel config adapters
2026-03-18 04:51:29 +00:00
Gustavo Madeira Santana
2b5fa0931d
Plugins: move config-backed directories behind channel plugins
2026-03-18 04:29:50 +00:00
Gustavo Madeira Santana
fa896704d2
WhatsApp: move outbound session routing behind plugin boundary
2026-03-18 04:09:47 +00:00
Peter Steinberger
1a9114a169
refactor: deduplicate setup wizard helpers
2026-03-18 03:58:22 +00:00
Gustavo Madeira Santana
c29458d407
WhatsApp: move group policy behind plugin boundary
2026-03-18 03:38:01 +00:00
Peter Steinberger
cd5c2f4cb2
refactor: dedupe channel plugin shared assembly
2026-03-17 20:13:52 -07:00
Gustavo Madeira Santana
682f4d1ca3
Plugin SDK: require unified message discovery
2026-03-18 03:02:16 +00:00
Peter Steinberger
1313767825
refactor: enforce plugin boundary seams
2026-03-17 19:45:36 -07:00
Gustavo Madeira Santana
9e8b9aba1f
WhatsApp: isolate lazy action runtime boundary
2026-03-18 02:20:57 +00:00
Gustavo Madeira Santana
8165db758b
WhatsApp: move action runtime into extension
2026-03-18 02:08:08 +00:00
Gustavo Madeira Santana
ffe24955c8
Plugins: fix pnpm check regressions
2026-03-17 23:25:40 +00:00
Peter Steinberger
6d9bf6de93
refactor: narrow extension public seams
2026-03-17 09:58:33 -07:00
Peter Steinberger
4b125762f6
refactor: clean extension api boundaries
2026-03-17 09:38:21 -07:00
Peter Steinberger
9f8cf7f71a
test: stabilize full gate
2026-03-17 16:21:59 +00:00
Peter Steinberger
f9588da3e0
refactor: split plugin testing seam from bundled extension helpers
2026-03-17 01:05:09 -07:00
Peter Steinberger
ec1b80809d
refactor: remove remaining extension core imports
2026-03-17 00:59:46 -07:00
Peter Steinberger
3dec814fda
refactor: bundle lazy runtime surfaces
2026-03-17 00:00:45 -07:00
Peter Steinberger
f6868b7e42
refactor: dedupe channel entrypoints and test bridges
2026-03-16 23:52:23 -07:00
Peter Steinberger
c1ef5748eb
refactor: enforce scoped plugin sdk imports
2026-03-16 23:15:24 -07:00
Peter Steinberger
14d6b762fb
build: remove ineffective dynamic import shims
2026-03-16 23:11:59 -07:00
Vincent Koc
efaa4dc5b3
Tests: stabilize bundled native command regressions
2026-03-16 23:01:57 -07:00