Peter Steinberger
04f6ffd8be
fix(ollama): resolve cloud models omitted from tags
2026-04-29 04:37:52 +01:00
Peter Steinberger
5a9c0efa54
fix(tasks): clean orphaned parent-owned acp sessions
2026-04-29 04:35:06 +01:00
SATISH K C
ab5c8025c9
docs: add AllowTcpForwarding prerequisite to Hetzner SSH tunnel step
...
Fixes #54557 ; carries forward #54564 ; refs #54954 . Thanks @satishkc7, @blackstrype, and @Aftabbs.
2026-04-28 20:16:30 -07:00
Peter Steinberger
5435591f6a
fix(streaming): preserve split final tags
2026-04-29 04:07:39 +01:00
Ayaan Zaidi
e12eb9acdd
docs(changelog): note Ollama configure picker fix
2026-04-29 08:23:57 +05:30
Peter Steinberger
7a5b419843
refactor(plugins): simplify plugin cache boundaries
2026-04-29 03:52:22 +01:00
Sliverp
e0008268ad
fix(onboarding): Improve the dynamic import UX. ( #73419 )
...
* fix(onboarding): skip redundant install prompt when only one source exists
When the channel-setup flow asks 'Install <plugin>?' after the user has
already picked the channel in the previous menu, and the only real
install source available is npm (or local), the prompt degenerates into
'<that source> vs Skip'. The user already expressed intent by picking
the channel, so re-confirming adds friction without offering a
meaningful choice.
Resolve directly to the available source in that case. Keep the prompt
when both npm and local sources exist so the user can still pick which
to use, and keep it when no real source exists (the prompt then only
offers Skip, which is informative).
* fix ci
* fix ci
* fix(channel-setup): skip redundant install prompt when only one source exists
Add autoConfirmSingleSource opt-in parameter to promptInstallChoice /
ensureOnboardingPluginInstalled / ensureChannelSetupPluginInstalled.
When set and only one real install source (npm or local, not both)
exists, the 'Install <plugin>? / Skip' prompt is skipped and the
single source is used directly.
Only channel-setup.ts passes autoConfirmSingleSource: true — the user
already expressed intent by picking the channel in the previous menu,
so re-confirming adds friction without a meaningful choice. The
onboarding and quickstart entry points keep the existing prompt
behavior unchanged.
Also fix findBundledPluginSourceInMap mock type in
onboarding-plugin-install.test.ts to avoid TS2345.
* fix(tests): revert auto-confirm test expectations and fix mock leak
- Revert 'offers registry npm specs' test to expect the prompt
(autoConfirmSingleSource not passed)
- Revert channel-setup 'does not default to bundled local path' test
to expect the prompt
- Reset findBundledPluginSourceInMap and
resolveBundledInstallPlanForCatalogEntry mocks after the bundled
prompt test to prevent cross-test leakage
* fix ci
* docs(changelog): add #73419
2026-04-29 10:41:42 +08:00
Vincent Koc
43da089790
fix(update): skip disabled plugins during post-update sync ( #73970 )
...
Co-authored-by: openclaw-clownfish[bot] <280122609+openclaw-clownfish[bot]@users.noreply.github.com>
2026-04-28 19:36:11 -07:00
Peter Steinberger
c2e3b6e6f8
fix(openai): skip malformed empty SSE frames
2026-04-29 03:28:46 +01:00
Peter Steinberger
f4c9e71e4e
fix(models): guard provider policy model shape
2026-04-29 03:16:35 +01:00
ethanclaw
492e2a3060
fix(logs): find active log file across date boundaries ( #42904 )
...
* fix(logs): find active log file across date boundaries
Fixes #42875
When gateway runs across midnight, openclaw channels logs was looking
for today's log file instead of the active one. This change makes
the CLI find the most recently modified log file as a fallback.
(cherry picked from commit fba6b88e86 )
* fix(channels): resolve active log file for channel logs
(cherry picked from commit ee87397a43 )
---------
Co-authored-by: vincentkoc <25068+vincentkoc@users.noreply.github.com >
2026-04-28 19:11:14 -07:00
Vincent Koc
1e1fe80ae0
docs(changelog): note plugin lifecycle fixes
2026-04-28 19:02:45 -07:00
Eden
bb6a15da04
fix(gateway): improve shutdown error visibility and add close timeout
...
Adds structured warning collection to gateway shutdown, preserves lifecycle timeout handling, and covers HTTP/WebSocket/subsystem warning paths.
Co-authored-by: Eden <146086744+edenfunf@users.noreply.github.com >
Co-authored-by: vincentkoc <25068+vincentkoc@users.noreply.github.com >
2026-04-28 19:01:11 -07:00
openclaw-clownfish[bot]
7e5c3753f6
fix(security): include dangerous commands in audit known commands ( #73915 )
...
Co-authored-by: openclaw-clownfish[bot] <280122609+openclaw-clownfish[bot]@users.noreply.github.com>
2026-04-28 18:34:55 -07:00
Jari Mustonen
d8a600f2ad
context-engine: pass runtime context to ContextEngineFactory ( #67243 )
...
Merged via squash.
Prepared head SHA: 9aca6a5af1
Co-authored-by: jarimustonen <1272053+jarimustonen@users.noreply.github.com >
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com >
Reviewed-by: @jalehman
2026-04-28 18:21:14 -07:00
Josh Lehman
12c52963ea
fix: allow cron self-removal in isolated runs ( #73028 )
2026-04-28 18:16:31 -07:00
hcl
46783d41e9
fix(whatsapp): gate pairing access-control on extractable inbound user content ( #73797 ) ( #73823 )
...
Merged via squash.
Prepared head SHA: 61506e1439
Co-authored-by: hclsys <7755017+hclsys@users.noreply.github.com >
Co-authored-by: mcaxtr <7562095+mcaxtr@users.noreply.github.com >
Reviewed-by: @mcaxtr
2026-04-28 22:09:23 -03:00
Peter Steinberger
381c2e1d1a
fix(security): tighten telegram dm audit coverage
2026-04-29 02:04:20 +01:00
pashpashpash
4aa8da3756
Route sensitive group commands to the owner privately ( #73872 )
...
* fix(commands): route sensitive group approvals privately
* fix(commands): require owner private routes
* test(commands): cover owner-derived Telegram diagnostics routing
2026-04-29 09:27:18 +09:00
Joe LaPenna
054b2e1b7e
fix(docker): add config dir defaults to compose mounts ( #64485 )
...
Merged via squash.
Prepared head SHA: 2c5b954a2c
Reviewed-by: @sallyom
2026-04-28 20:12:24 -04:00
Peter Steinberger
8f4cbbbe66
perf(prompt): stabilize channel prompt suffix
2026-04-29 00:49:57 +01:00
pashpashpash
43fa40a35d
fix(telegram): use owners for exec approvals ( #73852 )
2026-04-29 08:34:46 +09:00
jinjim
490e6d6dc5
feat(docker): add OPENCLAW_SKIP_ONBOARDING env to skip onboarding during Docker setup ( #55518 )
...
Merged via squash.
Prepared head SHA: 2744ed8b53
Co-authored-by: jinjimz <201528812+jinjimz@users.noreply.github.com >
Co-authored-by: sallyom <11166065+sallyom@users.noreply.github.com >
Reviewed-by: @sallyom
2026-04-28 18:50:51 -04:00
Peter Steinberger
bcc6a2400d
fix(gateway): make handshake timeout configurable
2026-04-28 23:50:24 +01:00
Peter Steinberger
75df09b9ec
perf(plugins): cache runtime mirror file decisions
2026-04-28 23:40:43 +01:00
pashpashpash
6ce1058296
Wire diagnostics through the core chat command ( #72936 )
...
* feat: wire codex diagnostics feedback
* fix: harden codex diagnostics hints
* fix: neutralize codex diagnostics output
* fix: tighten codex diagnostics safeguards
* fix: bound codex diagnostics feedback output
* fix: tighten codex diagnostics throttling
* fix: confirm codex diagnostics uploads
* docs: clarify codex diagnostics add-on
* fix: route diagnostics through core command
* fix: tighten diagnostics authorization
* fix: pin diagnostics to bundled codex command
* fix: limit owner status in plugin commands
* fix: scope diagnostics confirmations
* fix: scope codex diagnostics cooldowns
* fix: harden codex diagnostics ownership scopes
* fix: harden diagnostics command trust and display
* fix: keep diagnostics command trust internal
* fix: clarify diagnostics exec boundary
* fix: consume codex diagnostics confirmations atomically
* test: include codex diagnostics binding metadata
* test: use string codex binding timestamps
* fix: keep reserved command trust host-only
* fix: harden diagnostics trust and resume hints
* wire diagnostics through exec approval
* fix: keep diagnostics tests aligned with bundled root trust
* fix telegram diagnostics owner auth
* route trajectory exports through exec approval
* fix trajectory exec command encoding
* fix telegram group owner auth
* fix export trajectory approval hardening
* fix pairing command owner bootstrap
* fix telegram owner exec approvals
* fix: make diagnostics approval flow pasteable
* fix: route native sensitive command followups
* fix: invoke diagnostics exports with current cli
* fix: refresh exec approval protocol models
* fix: list codex diagnostics from thread bindings
* fix: fold codex diagnostics into exec approval
* fix: preserve diagnostics approval line breaks
* docs: clarify diagnostics codex workflow
2026-04-29 07:40:37 +09:00
Peter Steinberger
7e41913a20
fix(gateway): reduce TUI history startup latency
2026-04-28 23:34:59 +01:00
Peter Steinberger
f4a9d34f98
fix(model): explain rejected session overrides
2026-04-28 23:33:24 +01:00
Peter Steinberger
eb970bdb42
fix(tasks): repair terminal mirrored flow timestamps
2026-04-28 23:09:37 +01:00
Peter Steinberger
193c7432e3
fix(gateway): reuse paired auth for probes
2026-04-28 21:52:50 +01:00
Chris Zhang
8fe7d495bc
docs(changelog): note BlueBubbles routing-guard hardening
2026-04-28 21:06:49 +01:00
Peter Steinberger
5dfc14d49b
fix(tasks): close stale terminal acp sessions
2026-04-28 21:03:55 +01:00
Peter Steinberger
3cad579c4e
fix(plugin-sdk): restore discord compatibility facade
2026-04-28 20:59:26 +01:00
Peter Steinberger
d1a7612bd6
docs(changelog): narrow gateway status fix reference
2026-04-28 20:58:09 +01:00
Peter Steinberger
c399fb750b
fix(ui): handle Google Live binary talk frames
2026-04-28 20:57:46 +01:00
Peter Steinberger
0a2d635e68
fix(gateway): harden local reachability checks
...
Co-authored-by: arthurianresolve <arthurianresolve@users.noreply.github.com >
Co-authored-by: codexGW <9350182+codexGW@users.noreply.github.com >
2026-04-28 20:57:14 +01:00
Peter Steinberger
3b593bc561
fix(cli): authorize gateway model probe overrides
2026-04-28 20:55:44 +01:00
Peter Steinberger
0dcab4e347
fix(agents): harden bootstrap and ACP session routing
2026-04-28 20:47:34 +01:00
HeYan
170a961744
fix(config): guard non-string values in env.vars to prevent TypeError ( #42402 )
...
* fix(config): guard non-string values in env.vars to prevent TypeError (#42363 )
* docs(changelog): note malformed env vars crash fix
---------
Co-authored-by: Altay <altay@uinaf.dev >
2026-04-28 22:43:22 +03:00
Peter Steinberger
0f3a9d812b
docs(changelog): note model auth fixes
2026-04-28 20:40:11 +01:00
Peter Steinberger
0608c1015b
perf(plugins): cache manifest metadata loads
2026-04-28 20:39:28 +01:00
Peter Steinberger
c500e8704f
fix(gateway): recover stale session lanes
2026-04-28 20:37:29 +01:00
Peter Steinberger
1e9faa2a59
docs: document inter-session prompt guards
2026-04-28 20:34:55 +01:00
Peter Steinberger
cb8c513ce3
fix(telegram): honor final-only streaming mode
2026-04-28 20:28:06 +01:00
Peter Steinberger
f641691910
fix(discord): harden account and binding routing
2026-04-28 20:08:27 +01:00
Peter Steinberger
4b69dc6228
docs(changelog): note discord gateway fixes
2026-04-28 19:40:06 +01:00
Peter Steinberger
065284deab
fix(auto-reply): pass model catalog to think menus
2026-04-28 19:37:10 +01:00
Vincent Koc
dcd665cd05
fix(nvidia): align NIM provider metadata
...
Persist the NVIDIA_API_KEY marker in generated catalog output and mark bundled NVIDIA Chat Completions models as string-content compatible.\n\nFixes #73013.\nFixes #50107.\nRefs #73014 .
2026-04-28 11:30:57 -07:00
Peter Steinberger
53d34e7cde
fix(cli): support image files in model probes
2026-04-28 18:52:15 +01:00
Shakker
a48ffda7f7
chore: trace plugin lifecycle phases
2026-04-28 18:03:01 +01:00