Peter Steinberger
dcd5473283
refactor: adopt shared chat plugin builder
2026-03-22 21:37:32 +00:00
Peter Steinberger
99462776d1
refactor: compose shared channel security adapters
2026-03-22 21:37:31 +00:00
Peter Steinberger
87b2672126
refactor: centralize computed channel status adapters
2026-03-22 21:37:31 +00:00
Vincent Koc
8745132f9c
fix(plugin-sdk): restore extension guardrails
2026-03-22 14:24:56 -07:00
Peter Steinberger
ff6e0bed5f
refactor: finish remaining status helper dedupe
2026-03-22 21:07:19 +00:00
Peter Steinberger
2a1acec6a7
refactor: reuse account status helpers in bundled channels
2026-03-22 20:55:16 +00:00
Peter Steinberger
87722d6327
refactor: extend shared account status snapshot helpers
2026-03-22 20:55:16 +00:00
Peter Steinberger
00b2f10dec
refactor: share account snapshot descriptions
2026-03-22 20:55:16 +00:00
Peter Steinberger
822c68a2d0
test: remove remaining account helper boilerplate
2026-03-22 20:34:09 +00:00
Peter Steinberger
fa13c2960e
refactor: share scoped account accessor adapters
2026-03-22 20:30:21 +00:00
Peter Steinberger
3c071a397f
refactor: share account id selection helpers
2026-03-22 19:45:59 +00:00
Peter Steinberger
c26655d397
fix: stabilize plugin sdk api baselines
2026-03-22 19:32:29 +00:00
Peter Steinberger
e64dbb00b3
fix: prefer source plugin-sdk root alias in tests
2026-03-22 12:25:51 -07:00
Peter Steinberger
c74a50e4f1
refactor: share merged account config helper
2026-03-22 19:01:52 +00:00
Peter Steinberger
d06413e335
refactor: share normalized account lookups
2026-03-22 19:01:52 +00:00
Peter Steinberger
ff759f991e
refactor: share account config merge helper
2026-03-22 19:01:52 +00:00
Peter Steinberger
89d65521fe
refactor: dedupe extension runtime caches
2026-03-22 18:09:45 +00:00
Peter Steinberger
1ceaad18a6
test: harden vitest no-isolate coverage
2026-03-22 10:48:21 -07:00
Peter Steinberger
c96c319db3
refactor(plugin-sdk): share direct dm ingress helpers
2026-03-22 09:57:51 -07:00
Peter Steinberger
1ee9611079
fix(nostr): enforce inbound dm policy before decrypt
2026-03-22 09:37:40 -07:00
Peter Steinberger
1d2dff0c4e
test: trim import-heavy startup paths
2026-03-22 16:34:09 +00:00
Peter Steinberger
3fa2300ba1
perf: reduce plugin runtime startup overhead
2026-03-22 16:34:09 +00:00
Bob
4f1e12a2b1
Docs: prototype generated plugin SDK reference ( #51877 )
...
* Chore: unblock synced main checks
* Docs: add plugin SDK docs implementation plan
* Docs: scaffold plugin SDK reference phase 1
* Docs: mark plugin SDK reference surfaces unstable
* Docs: prototype generated plugin SDK reference
* docs(plugin-sdk): replace generated reference with api baseline
* docs(plugin-sdk): drop generated reference plan
* docs(plugin-sdk): align api baseline flow with config docs
---------
Co-authored-by: Onur <2453968+osolmaz@users.noreply.github.com>
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-03-22 09:19:00 -07:00
Peter Steinberger
05279539a8
docs(plugin-sdk): document public SDK surface
2026-03-22 08:50:48 -07:00
Peter Steinberger
b70b7b0d94
test: trim more local test startup overhead
2026-03-22 09:35:36 +00:00
Peter Steinberger
3382ef2724
perf: reduce plugin runtime startup overhead
2026-03-22 09:35:36 +00:00
Peter Steinberger
574cc9de64
test: trim more unit test startup overhead
2026-03-22 07:52:58 +00:00
Peter Steinberger
94ec0d6aeb
test: trim plugin-sdk import-heavy startup
2026-03-22 07:22:42 +00:00
Peter Steinberger
b2f9ab9a1f
test: trim import-heavy startup paths
2026-03-22 05:59:46 +00:00
Peter Steinberger
e1854dfbf6
test: trim import-heavy startup paths
2026-03-22 05:03:10 +00:00
Peter Steinberger
8e6a4c2d82
perf: narrow discord timeout import seam
2026-03-22 02:42:57 +00:00
Peter Steinberger
d81772dbc7
test: trim import-heavy startup paths
2026-03-22 02:11:43 +00:00
Vincent Koc
2b4c3c2057
fix(plugin-sdk): remove relative extension boundary escapes ( #51939 )
...
* fix(plugin-sdk): remove relative extension boundary escapes
* Gate new plugin-sdk subpaths on host version
* Add changelog entry for #51939
* Fix local staging for plugin-sdk host version gate
* Raise host floor for line and googlechat plugins
---------
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com>
2026-03-21 20:03:18 -05:00
Peter Steinberger
8b7f40580d
perf: split telegram audit runtime seams
2026-03-22 00:53:12 +00:00
Peter Steinberger
30ad059da8
refactor(test): dedupe setup wizard helpers
2026-03-22 00:16:31 +00:00
Peter Steinberger
37d5cbe43a
test: trim test startup overhead
2026-03-21 23:30:51 +00:00
Vincent Koc
80441baa15
perf(core): trim provider and inbound startup imports ( #51927 )
...
* fix(telegram): fail fast on stuck getUpdates
* perf(core): trim provider and inbound startup imports
2026-03-21 16:20:42 -07:00
Peter Steinberger
4229ffe2b9
perf: reduce runtime and test startup overhead
2026-03-21 20:18:16 +00:00
Peter Steinberger
bfcfc17a8b
refactor: tighten plugin sdk entry surface
2026-03-21 20:08:01 +00:00
Jari Mustonen
fd2b3ed6af
feat(memory): pluggable system prompt section for memory plugins ( #40126 )
...
Merged via squash.
Prepared head SHA: 5228d1937f
Co-authored-by: jarimustonen <1272053+jarimustonen@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-21 11:20:45 -07:00
Harold Hunt
e24bf22f98
Fix Discord `/codex_resume` picker expiration ( #51260 )
...
Merged via squash.
Prepared head SHA: 76eb184dbe
Co-authored-by: huntharo <5617868+huntharo@users.noreply.github.com>
Co-authored-by: huntharo <5617868+huntharo@users.noreply.github.com>
Reviewed-by: @huntharo
2026-03-21 12:59:21 -04:00
Pandadadadazxf
2fe0efc9e1
fix: compaction safeguard summary budget ( #27727 )
...
Merged via squash.
Prepared head SHA: a7ab64e394
Co-authored-by: Pandadadadazxf <200469161+Pandadadadazxf@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-21 09:27:51 -07:00
Taras Lukavyi
466debb75c
feat(telegram): auto-rename DM topics on first message ( #51502 )
...
* feat(telegram): auto-rename DM topics on first message
fix(telegram): use bot.api for topic rename to avoid SecretRef resolution
* fix(telegram): address security + test review feedback
- Fix test assertion: DEFAULT_PROMPT_SUBSTRING matches 'very short'
- Use RawBody instead of Body (no envelope metadata to LLM)
- Truncate user message to 500 chars for LLM prompt
- Remove user-derived content from verbose logs
- Remove redundant threadSpec.id null check
- Fix AutoTopicLabelParams type to match generateTopicLabel
* fix(telegram): use effective dm auto-topic config
* fix(telegram): detect direct auto-topic overrides
* fix: auto-rename Telegram DM topics on first message (#51502 ) (thanks @Lukavyi)
---------
Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-03-21 16:53:30 +05:30
Val Alexander
2fd372836e
iOS: improve QR pairing flow ( #51359 )
...
- improve QR pairing UX and bootstrap token handling
- preserve repeated optimistic user messages during refresh
- add regression coverage for refresh reconciliation
Thanks @ImLukeF
2026-03-21 01:10:29 -05:00
Josh Lehman
751d5b7849
feat: add context engine transcript maintenance ( #51191 )
...
Merged via squash.
Prepared head SHA: b42a3c28b4
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-20 16:28:27 -07:00
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
Sally O'Malley
6e20c4baa0
feat: add anthropic-vertex provider for Claude via GCP Vertex AI ( #43356 )
...
Reuse pi-ai's Anthropic client injection seam for streaming, and add
the OpenClaw-side provider discovery, auth, model catalog, and tests
needed to expose anthropic-vertex cleanly.
Signed-off-by: sallyom <somalley@redhat.com>
2026-03-20 18:48:42 -04:00
Jaaneek
916f496b51
Add Grok 4.20 reasoning and non-reasoning to xAI model catalog ( #50772 )
...
Merged via squash.
Prepared head SHA: 095e645ea5
Co-authored-by: Jaaneek <25470423+Jaaneek@users.noreply.github.com>
Co-authored-by: huntharo <5617868+huntharo@users.noreply.github.com>
Reviewed-by: @huntharo
2026-03-20 15:28:30 -04: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
a2e1991ed3
refactor(plugin-sdk): route bundled runtime barrels through public subpaths
2026-03-20 10:38:55 -07:00
Vincent Koc
87eeab7034
docs: add plugin SDK migration guide, link deprecation warning to docs
2026-03-20 10:05:06 -07:00
Peter Steinberger
fcabecc9a4
fix: remove duplicate plugin sdk exports
2026-03-20 16:52:10 +00:00
Peter Steinberger
18fa2992f9
fix: restore plugin sdk runtime barrels
2026-03-20 16:46:34 +00:00
Peter Steinberger
cb89325cd8
fix: restore latest main gate
2026-03-20 16:46:34 +00:00
Vincent Koc
aa78a0c00e
refactor(plugin-sdk): formalize runtime contract barrels
2026-03-20 09:30:34 -07:00
Vincent Koc
9b6f286ac2
refactor(channels): share route format and binding helpers
2026-03-20 09:30:34 -07:00
Vincent Koc
faa9faa767
refactor(web-search): share provider clients and config helpers
2026-03-20 09:30:34 -07:00
Vincent Koc
dbc9d3dd70
fix(plugin-sdk): restore root diagnostic compat
2026-03-20 09:27:37 -07:00
Peter Steinberger
50ce9ac1c6
refactor: privatize bundled sdk facades
2026-03-20 15:56:14 +00:00
Peter Steinberger
f6948ce405
refactor: shrink sdk helper surfaces
2026-03-20 15:43:14 +00:00
Vincent Koc
a562fb5550
refactor(web-search): share scoped provider config plumbing
2026-03-19 23:52:53 -07:00
Vincent Koc
6c7526f8a0
fix(web-search): share unsupported filter handling
2026-03-19 23:41:02 -07:00
Gustavo Madeira Santana
f62be0ddcf
Matrix: guard private-network homeserver access
2026-03-19 23:24:50 -04:00
Vincent Koc
009f494cd9
fix(plugin-sdk): stop library import warmup side effects
2026-03-19 16:07:53 -07:00
Vincent Koc
38807fff20
fix(ci): split plugin sdk bundle coverage
2026-03-19 14:49:01 -07:00
Vincent Koc
3b79494cbf
fix(runtime): lazy-load setup shims and align contracts
2026-03-19 13:33:32 -07:00
Vincent Koc
0aa4950d21
fix(core): restore session reset defaults and type seams
2026-03-19 13:33:32 -07:00
Vincent Koc
0a8885d6c1
fix(ci): restore hook and guardrail tests
2026-03-19 11:08:32 -07:00
Gustavo Madeira Santana
ff6541f69d
Matrix: fix Jiti runtime API boundary
2026-03-19 11:40:44 -04:00
Gustavo Madeira Santana
12ad809e79
Matrix: fix runtime encryption loading
2026-03-19 11:08:17 -04:00
Vincent Koc
44cd4fb55f
fix(ci): repair main type and boundary regressions
2026-03-19 08:00:33 -07:00
Vincent Koc
1c1a3b6a75
fix(discord): break plugin-sdk account helper cycle
2026-03-19 06:30:59 -07:00
Gustavo Madeira Santana
dd10f290e8
Matrix: wire thread binding command support
2026-03-19 09:24:31 -04:00
Gustavo Madeira Santana
f8eb23de1c
CLI: fix check failures
2026-03-19 08:29:57 -04:00
Gustavo Madeira Santana
4443cc771a
Matrix: wire startup migration into doctor and gateway
2026-03-19 08:03:57 -04:00
Gustavo Madeira Santana
94693f7ff0
Matrix: rebuild plugin migration branch
2026-03-19 01:58:29 -04:00
Gustavo Madeira Santana
513b4869d8
Discord: stabilize provider registry coverage
2026-03-19 01:53:55 -04:00
Gustavo Madeira Santana
eaee01042b
Plugin SDK: move generic message tool schemas out of core
2026-03-19 01:08:23 -04:00
Josh Avant
a2a9a553e1
Stabilize plugin loader and Docker extension smoke ( #50058 )
...
* Plugins: stabilize Area 6 loader and Docker smoke
* Docker: fail fast on extension npm install errors
* Tests: stabilize loader non-native Jiti boundary CI timeout
* Tests: stabilize plugin loader Jiti source-runtime coverage
* Docker: keep extension deps on lockfile graph
* Tests: cover tsx-cache renamed package cwd fallback
* Tests: stabilize plugin-sdk export subpath assertions
* Plugins: align tsx-cache alias fallback with subpath fallback
* Tests: normalize guardrail path checks for Windows
* Plugins: restrict plugin-sdk cwd fallback to trusted roots
* Tests: exempt outbound-session from extension import guard
* Tests: tighten guardrails and cli-entry trust coverage
* Tests: guard optional loader fixture exports
* Tests: make loader fixture package exports null-safe
* Tests: make loader fixture package exports null-safe
* Tests: make loader fixture package exports null-safe
* changelog
Signed-off-by: joshavant <830519+joshavant@users.noreply.github.com>
---------
Signed-off-by: joshavant <830519+joshavant@users.noreply.github.com>
2026-03-18 23:35:32 -05:00
Tak Hoffman
3abffe0967
fix: stabilize windows temp and path handling
2026-03-18 23:29:14 -05:00
Gustavo Madeira Santana
83d284610c
Diffs: route plugin context through artifacts
2026-03-19 00:24:00 -04:00
Tak Hoffman
f6c57edd5c
Tests: tighten channel import guardrails
2026-03-18 23:08:02 -05:00
Tak Hoffman
5b7b5529f1
Plugins: remove shared extension boundary debt
2026-03-18 22:58:40 -05: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
Peter Steinberger
7b151afeeb
test: align plugin-sdk subpath guardrail with current exports ( #49249 )
2026-03-18 18:02:44 -07:00
Peter Steinberger
371b3d22f5
fix: export imessage-core plugin-sdk subpath ( #49249 )
2026-03-18 18:02:44 -07:00
Peter Steinberger
002cc07322
refactor: tighten plugin sdk channel surfaces
2026-03-19 00:46:36 +00:00
Peter Steinberger
4cc0bb07c1
refactor: unify plugin sdk pairing flows
2026-03-19 00:31:03 +00:00
Peter Steinberger
c70837f07d
refactor: converge plugin sdk channel helpers
2026-03-19 00:25:19 +00:00
Peter Steinberger
d7018aaf19
refactor: move bundled extension deps to plugin packages
2026-03-19 00:04:50 +00:00
Peter Steinberger
07d9f725b6
refactor: unify plugin sdk primitives
2026-03-18 23:58:56 +00:00
Peter Steinberger
46f49eb6eb
refactor: shrink plugin sdk public surface
2026-03-18 23:31:08 +00:00
Vincent Koc
757c2cc2de
fix(release): isolate bundled config docs loading
2026-03-18 16:01:43 -07:00
Vincent Koc
91d37ccfc3
fix(auth): lazy-load provider oauth helpers
2026-03-18 13:40:28 -07:00
Vincent Koc
6ebcd853be
fix(plugin-sdk): isolate provider entry surfaces
2026-03-18 13:20:46 -07:00
Peter Steinberger
a0d3dc94d0
perf: reduce unit test hot path overhead
2026-03-18 18:19:40 +00:00