Peter Steinberger
a23ab9b906
refactor: move voice-call realtime providers into extensions
2026-04-04 12:07:23 +09:00
Vincent Koc
61f93540b2
refactor(discord): narrow channel runtime imports
2026-04-04 12:06:00 +09:00
Vincent Koc
9bfaf7b681
refactor(slack): narrow channel runtime imports
2026-04-04 12:06:00 +09:00
Peter Steinberger
7e69c2f6a7
test: trim remaining mock drift
2026-04-04 04:04:12 +01:00
Vincent Koc
2f5509e36d
refactor(slack): lazy-load directory config seam
2026-04-04 12:03:14 +09:00
Vincent Koc
f9cf868553
refactor(slack): lazy-load target resolution seams
2026-04-04 12:02:58 +09:00
Vincent Koc
bc6b20e542
refactor(discord): lazy-load directory and resolver seams
2026-04-04 12:02:58 +09:00
Peter Steinberger
af94a3a89b
test: use native vitest root projects
2026-04-04 04:01:32 +01:00
Vincent Koc
2050ef2740
refactor(whatsapp): lazy-load channel directory and action seams
2026-04-04 12:01:30 +09:00
Peter Steinberger
df86f4dc00
docs(changelog): reorder unreleased highlights
2026-04-04 12:00:10 +09:00
Vincent Koc
6c31b2fbc5
refactor(imessage): narrow channel runtime imports
2026-04-04 11:59:38 +09:00
Vincent Koc
0737816010
refactor(line): narrow channel runtime imports
2026-04-04 11:59:38 +09:00
Vincent Koc
e9d802c32b
fix(openai): align gpt-5.4 codex context test
2026-04-04 11:59:05 +09:00
Peter Steinberger
94b0062e90
fix: keep local marketplace paths stable ( #60556 ) (thanks @eleqtrizit)
2026-04-04 11:58:52 +09:00
Agustin Rivera
e8ebd6ab8c
fix(marketplace): narrow canonical path checks
2026-04-04 11:58:52 +09:00
Agustin Rivera
750d963cb9
fix(marketplace): preserve local symlink installs
2026-04-04 11:58:52 +09:00
Agustin Rivera
b1dd3ded35
fix(marketplace): canonicalize remote plugin paths
2026-04-04 11:58:52 +09:00
Peter Steinberger
f25f147fc3
refactor(whatsapp): move legacy group session detection into contract surface
2026-04-04 03:57:56 +01:00
Vincent Koc
098abd484d
fix(channels): keep feishu override parent fallbacks
2026-04-04 11:57:27 +09:00
Vincent Koc
5eb32f24ea
refactor(discord): normalize lazy loader formatting
2026-04-04 11:53:21 +09:00
Vincent Koc
bf1b1d63bd
refactor(discord): lazy-load channel send seams
2026-04-04 11:53:21 +09:00
Vincent Koc
e249a852ae
refactor(slack): lazy-load async channel seams
2026-04-04 11:53:21 +09:00
Peter Steinberger
a3a06524f2
fix(ci): restore session and setup fallbacks
2026-04-04 03:52:37 +01:00
Peter Steinberger
3c23126980
fix(ci): tolerate missing contract surface roots
2026-04-04 03:52:37 +01:00
Peter Steinberger
6b3ff0dd4f
feat(openai): add codex gpt-5.4-mini support
2026-04-04 11:51:57 +09:00
Vincent Koc
7df763b04d
refactor(providers): share xai compat helper
2026-04-04 11:45:13 +09:00
Karl Yang
6d33c67c01
fix: enable groq and deepgram bundled media providers by default ( #59982 ) (thanks @yxjsxy)
...
* fix: add enabledByDefault to groq and deepgram media plugin manifests
The groq and deepgram plugin manifests were missing the
enabledByDefault: true flag. Without this flag, both plugins are
treated as bundled-but-disabled-by-default, so resolveRuntimePluginRegistry
loads without them. When buildProviderRegistry later needs to resolve
audio providers, the active registry is used first (short-circuits
the compat path in resolvePluginCapabilityProviders), leaving groq
and deepgram absent from the registry.
This caused 'Media provider not available: groq' errors when users
configured tools.media.audio.models with groq or deepgram, even
with GROQ_API_KEY / DEEPGRAM_API_KEY set correctly.
The fix mirrors the pattern used by other audio/media-only providers
such as mistral, which already has enabledByDefault: true.
Fixes #59875
* fix: enable groq and deepgram bundled media providers by default (#59982 ) (thanks @yxjsxy)
---------
Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-04-04 08:11:34 +05:30
Monty Taylor
d605cb08c5
matrix: force SSSS recreation on backup reset when SSSS key is broken (bad MAC) ( #60599 )
...
Merged via squash.
Prepared head SHA: 3b0a623407
Co-authored-by: emonty <95156+emonty@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-04-03 22:34:23 -04:00
Vincent Koc
fb1cb99c88
fix(xai): narrow stream wrapper params
2026-04-04 11:31:27 +09:00
Vincent Koc
b5a849801c
chore(plugin-sdk): refresh api baseline
2026-04-04 11:30:30 +09:00
Vincent Koc
e273753d45
refactor(providers): share anthropic tool payload helper
2026-04-04 11:30:30 +09:00
George Zhang
87885b948a
fix: handle sensitive, number-clear, and array-clear edge cases in plugin config TUI ( #60640 ) ( #60640 )
...
- Skip sensitive fields with a note directing users to openclaw config set
or the Web UI (WizardPrompter has no masked input)
- Clear number fields to undefined when input is empty instead of storing 0
- Allow clearing array fields to undefined via empty input
2026-04-03 19:27:26 -07:00
Vincent Koc
761bd3bbd0
refactor(providers): share passthrough replay helpers
2026-04-04 11:22:41 +09:00
Ayaan Zaidi
6a3a0c405f
fix: replay interrupted recurring jobs on first restart ( #60583 ) (thanks @joelnishanth)
2026-04-04 07:51:04 +05:30
joelnishanth
7a16e14301
fix(cron): resume interrupted recurring jobs on first restart ( #60495 )
2026-04-04 07:51:04 +05:30
Vincent Koc
9e389cff3d
fix(config): migrate legacy group allow aliases ( #60597 )
...
* fix(config): migrate legacy group allow aliases
* fix(config): inline legacy streaming migration helpers
* refactor(config): rename legacy account matcher helper
* chore(agents): codify config contract boundaries
* fix(config): keep legacy allow aliases writable
* Update AGENTS.md
2026-04-04 11:15:32 +09:00
Ayaan Zaidi
945b198c76
fix(android): allow cleartext LAN gateways
2026-04-04 07:36:18 +05:30
Vincent Koc
94adc24393
chore(plugin-sdk): refresh api baseline
2026-04-04 11:03:28 +09:00
Vincent Koc
30479b4ee0
refactor(providers): compose provider stream wrappers
2026-04-04 11:03:28 +09:00
Michael Faath
85c76e83b7
fix: restore android talk mode reply tts ( #60306 ) (thanks @MKV21)
...
* Android: keep talk-mode session key synced for TTS replies
* Android: harden talk-mode reply playback state
* Android: harden talk-mode playback cancellation
* Android: avoid stale talk-mode playback preemption
* Android: tighten talk-mode playback claiming
* fix: distill android talk-mode playback ownership
* fix: restore android talk mode reply tts (#60306 ) (thanks @MKV21)
---------
Co-authored-by: Michael Faath <michaelfaath@macbookpro.speedport.ip>
Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-04-04 07:28:56 +05:30
Vincent Koc
858bf405f4
refactor(providers): share replay and tool compat helpers ( #60637 )
...
* refactor(providers): share replay and tool compat helpers
* chore(plugin-sdk): refresh api baseline
2026-04-04 10:55:36 +09:00
Vincent Koc
dd31ee1139
fix(cli): log pending control ui build
2026-04-04 10:47:38 +09:00
Peter Steinberger
b76ed0fadf
fix: harden OpenAI websocket transport
2026-04-04 02:38:36 +01:00
Peter Steinberger
1e6e685347
fix: unblock cli startup metadata
2026-04-04 02:35:36 +01:00
Peter Steinberger
143d377c5a
fix(cli): keep status json startup lean
2026-04-04 02:16:56 +01:00
Gustavo Madeira Santana
3713b0e506
vertex: read ADC files without exists preflight ( #60592 )
...
Merged via squash.
Prepared head SHA: 72f7372e97
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-04-03 21:13:34 -04:00
Peter Steinberger
34cd49faa6
perf: route browser and line extension tests
2026-04-04 02:08:45 +01:00
Peter Steinberger
1e90b3afcd
perf: split extension channel vitest lane
2026-04-04 02:08:45 +01:00
Peter Steinberger
e941d425ac
perf: split acp and ui vitest lanes
2026-04-04 02:08:45 +01:00
Peter Steinberger
fb0ff6896a
perf: route contract test targets
2026-04-04 02:08:45 +01:00