stainlu
86b0a7ddda
fix(clawhub): cancel stalled archive body reads
2026-05-14 20:56:13 +01:00
Conan Scott
817dca5ae9
fix(webchat): render tts audio command replies
2026-05-14 20:41:21 +01:00
Peter Steinberger
686b93e5c7
fix: keep command cron turns lightweight
2026-05-14 20:15:44 +01:00
simplyclever914
c404711703
fix: enforce Codex forced OAuth refresh ( #80738 )
...
Treat forced OAuth refresh as a hard refresh contract: fallback credentials may be reused only when they changed after the attempted refresh began.
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: Clever <clever@users.noreply.github.com >
2026-05-14 20:08:14 +01:00
Josh Lehman
f64feab47a
fix: prevent codex app-server surrogate stalls
2026-05-14 19:59:23 +01:00
Pavan Kumar Gondhi
386d321634
Bind gateway approval access to requester metadata [AI] ( #81380 )
...
* fix: bind approval access to requester metadata
* addressing review-skill
* addressing review-skill
* addressing review-skill
* addressing codex review
* addressing codex review
* addressing codex review
* addressing codex review
* addressing codex review
* addressing review-skill
* addressing review-skill
* addressing review-skill
* addressing review-skill
* addressing review-skill
* addressing codex review
* addressing codex review
* addressing codex review
* addressing claude review
* addressing ci
* fix: complete root-cause handling
* addressing review-skill
* addressing codex review
* addressing ci
* docs: add changelog entry for PR merge
2026-05-14 23:21:34 +05:30
Peter Steinberger
59be6d6390
build(deps): route node proxy helpers through proxyline
2026-05-14 18:27:23 +01:00
pashpashpash
28550a798c
fix(doctor): respect runtime message tool grants
2026-05-14 17:46:28 +01:00
Josh Avant
d0f22ccf97
Fix gateway handling for undici HTTP2 session teardown ( #81838 )
...
* fix: handle undici HTTP2 session teardown
* docs: add gateway HTTP2 changelog entry
2026-05-14 11:36:59 -05:00
Gado
83b8289ee2
feat: WhatsApp status reactions, new emoji categories, self-explanatory defaults ( #59077 ) ( #80612 )
...
Merged via squash.
Prepared head SHA: 25e0a7a9fd
Co-authored-by: gado-ships-it <276509604+gado-ships-it@users.noreply.github.com >
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com >
Reviewed-by: @velvet-shark
2026-05-14 14:37:23 +02:00
Andrii Furmanets
42b95a9eb1
fix(plugins): harden git ref checkout
2026-05-14 19:56:36 +08:00
Vincent Koc
2d6fd54ebd
fix(cli): keep plugin json output parseable
...
Co-authored-by: Eric Milgram, PhD <4348294+ScientificProgrammer@users.noreply.github.com >
2026-05-14 19:44:38 +08:00
Vincent Koc
1bdb151d0d
fix(node-host): wrap malformed invoke params json
2026-05-14 19:35:45 +08:00
Vincent Koc
8f7a3cbff3
fix(plugins): repair legacy npm declaration stubs
2026-05-14 19:17:05 +08:00
Vincent Koc
8754094292
fix(gateway): wrap malformed pricing catalog json
2026-05-14 19:15:20 +08:00
Vincent Koc
278e3eabf2
fix(realtime): wrap malformed transcription frames
2026-05-14 19:05:46 +08:00
Ayaan Zaidi
02f2e08493
fix(auto-reply): gate claude cli reasoning bridge
2026-05-14 16:29:46 +05:30
Cameron Beeley
f3875ac937
fix(auto-reply): bridge cli assistant text-delta into reasoning preview
...
Add a CLI-runtime-gated bridge in runAgentTurnWithFallback that subscribes
to `stream: "assistant"` agent-events for the current runId and re-emits
them as reasoning content through `params.opts.onReasoningStream`. Mirrors
the assistant-text bridge from #76914 and the tool-event bridge from #80046 :
same Promise-chain serialization + drain, same silentExpected gate, same
unsubscribe pattern at success/catch/finally.
The reply lane is untouched -- `onPartialReply` continues to settle the
final assistant text via #76914 . The reasoning lane now reflects the
model's live text output during streaming, which is the only "what is the
model producing right now" signal available for claude-opus-4-7 over
claude-cli (Anthropic suppresses readable thinking_delta events on the
wire for opus-4-7; only thinking content_block + signature_delta arrive).
The bridge is gated on isCliProvider so API/native runtimes that already
get reasoning content from real thinking_delta events do NOT double-receive
text_delta as reasoning.
Tests cover:
- Forwards assistant agent-events to onReasoningStream with correct text
- Respects silentExpected (heartbeat / NO_REPLY runs don't emit)
- Does not fire on the API/native runtime path (gate works)
2026-05-14 16:29:46 +05:30
Vincent Koc
49e288823c
fix(cli): wrap malformed trajectory export requests
2026-05-14 18:52:05 +08:00
Vincent Koc
a1de61bf65
fix(channels): list manifest-only plugins
2026-05-14 18:47:52 +08:00
Val Alexander
348ffe6061
fix(gateway): stop stale control ui auth retry loops
...
Fixes #72139 .
Summary:
- Stop Control UI and Gateway clients from retrying AUTH_TOKEN_MISMATCH forever when no trusted cached device-token retry is queued.
- Keep the bounded trusted device-token retry path intact.
- Cap Control UI chat history rendering by raw tool-output size, including tool_result.content, with bounded estimation to avoid pre-render stalls.
Verification:
- node scripts/run-vitest.mjs ui/src/ui/gateway.node.test.ts src/gateway/client.test.ts ui/src/ui/chat/build-chat-items.test.ts
- node scripts/run-vitest.mjs src/gateway/reconnect-gating.test.ts ui/src/ui/controllers/chat.test.ts ui/src/ui/views/chat.test.ts
- pnpm exec oxfmt --check --threads=1 CHANGELOG.md ui/src/ui/gateway.ts ui/src/ui/gateway.node.test.ts ui/src/ui/chat/history-limits.ts ui/src/ui/chat/build-chat-items.ts ui/src/ui/chat/build-chat-items.test.ts src/gateway/client.ts src/gateway/client.test.ts
- git diff --check
- PR CI/check graph passed on d9692555ee .
2026-05-14 05:36:09 -05:00
Josh Avant
2b04cedfb1
Fix subagent default model precedence ( #81783 )
...
* fix subagent default model precedence
* docs changelog for subagent default fix
2026-05-14 05:19:41 -05:00
Gio Della-Libera
b9dc6d86b8
test(config): refresh plugin schema fixtures
2026-05-14 17:58:27 +08:00
Gio Della-Libera
13c2e245aa
fix(config): use plugin channel schemas in dry-run
2026-05-14 17:58:26 +08:00
joshavant
8ba7927f6e
fix telegram ingress worker dist entry
2026-05-14 04:55:39 -05:00
Vincent Koc
92524fcf98
fix(proxy): reject malformed debug proxy targets
2026-05-14 17:46:10 +08:00
Vincent Koc
a47132734b
fix(agents): skip continuation bootstrap preload
2026-05-14 17:42:36 +08:00
Val Alexander
b405c6e640
fix(mac): verify launchd stop releases gateway port
...
Fixes #73132 .
Summary:
- Verify macOS LaunchAgent stop/restart port postconditions before reporting success.
- Resolve the effective gateway port from launchd args, persisted service environment, then caller env.
- Delay degraded fallback success output until the listener port is confirmed released.
Verification:
- node scripts/run-vitest.mjs src/daemon/launchd.test.ts src/cli/daemon-cli/lifecycle.test.ts src/cli/daemon-cli/lifecycle-core.test.ts src/cli/daemon-cli/restart-health.test.ts
- pnpm exec oxfmt --check --threads=1 src/daemon/launchd.ts src/daemon/launchd.test.ts CHANGELOG.md
- git diff --check
- Testbox tbx_01krjxf8vrbjwxv3xfdx4770xr: pnpm check:changed
2026-05-14 04:41:45 -05:00
Vincent Koc
6b3998aa40
fix(gateway): ignore malformed host on session routes
2026-05-14 17:35:57 +08:00
Peter Steinberger
365c986a5b
docs(models): clarify cli runtime alias comment
2026-05-14 10:35:35 +01:00
Peter Steinberger
ac5674b32c
fix(web): keep legacy Brave search fallback provider-owned
...
- Keep doctor migration as canonical for legacy Brave web-search config.
- Move legacy runtime support into Brave-owned provider config handling.
- Preserve legacy config precedence over ambient BRAVE_API_KEY.
Verification:
- node scripts/run-vitest.mjs run src/secrets/runtime-web-tools.test.ts --maxWorkers=1
- pnpm test extensions/brave -- --maxWorkers=1
- pnpm check:changed via Blacksmith Testbox tbx_01krjwy2gc4d2sxb3hqxcbhhtk / https://github.com/openclaw/openclaw/actions/runs/25852532246
2026-05-14 10:32:55 +01:00
Peter Steinberger
266722500c
fix(ui): avoid noisy i18n report locale warnings
2026-05-14 10:27:12 +01:00
samzong
4e76d6e427
fix(ui): harden i18n report filters
...
Signed-off-by: samzong <samzong.lu@gmail.com >
2026-05-14 10:27:12 +01:00
samzong
ee9d471865
feat(ui): add i18n baseline report
...
Signed-off-by: samzong <samzong.lu@gmail.com >
2026-05-14 10:27:12 +01:00
Ayaan Zaidi
e28d66d531
fix(cli): preserve lazy sender formatting
2026-05-14 14:39:23 +05:30
Ayaan Zaidi
41aee75cd1
test(cli): prove lazy sender preserves html formatting
2026-05-14 14:39:23 +05:30
Peter Steinberger
a0f35574d0
Remove codex-cli backend and migrate to Codex runtime
...
Remove the bundled codex-cli backend, migrate legacy codex-cli refs and runtime pins to the Codex app-server runtime, and update live/backend workflow coverage for the supported CLI lanes.
2026-05-14 10:07:18 +01:00
samzong
1d121c1f08
chore(gateway): add startup trace attribution ( #81738 )
...
Adds owner-level startup trace attribution for gateway auth, plugin loading, lookup counts, and plugin sidecar services.
Verification:
- node scripts/run-vitest.mjs src/plugins/startup-trace-segment.test.ts src/plugins/services.test.ts src/plugins/loader.test.ts src/gateway/server-startup-config.secrets.test.ts
- pnpm build
- pnpm check
CI override:
- Red checks are unrelated baseline noise. The failed CI shard is src/cli/plugins-install-persist.test.ts, which fails on origin/main 336ba2a2b3 with the same missing resolveIsNixMode mock export. PR #81738 touches gateway/plugin startup trace files and CHANGELOG.md, not the failing CLI plugin install test.
Thanks @samzong.
Co-authored-by: samzong <13782141+samzong@users.noreply.github.com >
2026-05-14 16:50:08 +08:00
Josh Avant
fd244fd76d
Fix Telegram polling ingress under event-loop stalls ( #81746 )
...
* fix telegram polling ingress under event-loop stalls
* add changelog for telegram ingress fix
2026-05-14 03:35:06 -05:00
Vincent Koc
0668f1e003
fix(web): resolve explicit global search providers
2026-05-14 16:29:55 +08:00
Vincent Koc
94f3ecae9a
perf(cli): route plugin list json directly
2026-05-14 16:29:21 +08:00
Eduardo Buitrago
336ba2a2b3
fix(agents): forward explicit per-run timeout to LLM idle watchdog ( #79426 )
...
Merged via squash.
Prepared head SHA: 0e6cf9b4d5
Co-authored-by: legolaz8451 <18042830+legolaz8451@users.noreply.github.com >
Co-authored-by: joshavant <830519+joshavant@users.noreply.github.com >
Reviewed-by: @joshavant
2026-05-14 03:24:01 -05:00
Sarah Fortune
2f2563314a
fix(codex): handle delayed plugin marketplace ( #81625 )
2026-05-14 01:17:58 -07:00
Jack Storment
b79c41d252
fix(memory): discover slugged daily memory files alongside date-only files
...
Widen daily memory filename discovery so slugged session-memory files flow through Dreaming, rem-backfill, rem-harness, doctor, and short-term promotion.
Preserve exact slugged source paths during historical seeding and rem-backfill attribution, including multiple files for the same day.
Add regression coverage for slugged ingestion, rem-backfill, rem-harness preview paths, and doctor backfill day extraction.
Fixes #69536 .
Co-authored-by: Jack Storment <crazycoder131@gmail.com >
2026-05-14 09:17:44 +01:00
Vincent Koc
31a28eb5ba
fix(media): reject malformed redirect locations
2026-05-14 16:16:56 +08:00
Kaspre
f71df80522
perf(plugins): memoize metadata snapshots narrowly
2026-05-14 16:15:50 +08:00
Vincent Koc
f6d0cc6cc3
perf(cli): keep channel option help lightweight
2026-05-14 16:13:28 +08:00
Vincent Koc
462a056210
fix(gateway): ignore malformed host on json routes
2026-05-14 16:06:23 +08:00
Vincent Koc
fe25ed214e
refactor(cli): lazy-load devices runtime
2026-05-14 16:02:42 +08:00
Peter Steinberger
3fa9658b39
fix: carry transcript update sequence
2026-05-14 08:59:31 +01:00