Peter Steinberger
7bad42910b
docs: reorder unreleased changelog by user interest
2026-03-03 03:00:37 +00:00
Peter Steinberger
9f691099db
fix(voice-call): harden webhook lifecycle cleanup and retries ( #32395 ) (thanks @scoootscooob)
2026-03-03 02:39:50 +00:00
Gustavo Madeira Santana
91cdb703bd
Agents: add context metadata warmup retry backoff
2026-03-02 21:34:55 -05:00
Peter Steinberger
d3c637d193
fix: recover host edit success after post-write upstream throw ( #32383 ) (thanks @polooooo)
2026-03-03 02:06:59 +00:00
Peter Steinberger
f77f1d3800
fix: preserve inline code copy fidelity in web ui ( #32346 ) (thanks @hclsys)
2026-03-03 02:05:45 +00:00
Peter Steinberger
7dadd5027b
fix: enforce node v22.12+ preflight for installer and runtime ( #32356 ) (thanks @jasonhargrove)
2026-03-03 02:03:45 +00:00
Peter Steinberger
c7ec237089
fix: fail fast on non-recoverable slack auth errors ( #32377 ) (thanks @scoootscooob)
2026-03-03 01:59:47 +00:00
Peter Steinberger
fd782d811e
fix: preserve idle reset timestamp on inbound metadata writes ( #32379 ) (thanks @romeodiaz)
2026-03-03 01:57:53 +00:00
nico-hoff
3eec79bd6c
feat(memory): add Ollama embedding provider ( #26349 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: ac41386543
Co-authored-by: nico-hoff <43175972+nico-hoff@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-03-02 20:56:40 -05:00
Peter Steinberger
c0715db3c8
fix: add session hook context regression tests ( #26394 ) (thanks @tempeste)
2026-03-03 01:48:46 +00:00
Sk Akram
bd8c3230e8
fix: force supportsDeveloperRole=false for non-native OpenAI endpoints ( #29479 )
...
Merged via squash.
Prepared head SHA: 1416c584ac
Co-authored-by: akramcodez <179671552+akramcodez@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-03-02 20:43:49 -05:00
Peter Steinberger
ebbb572639
fix: add requestHeartbeatNow runtime coverage ( #19464 ) (thanks @AustinEral)
2026-03-03 01:40:31 +00:00
David Rudduck
11e1363d2d
feat(hooks): add trigger and channelId to plugin hook agent context ( #28623 )
...
* feat(hooks): add trigger and channelId to plugin hook agent context
Adds `trigger` and `channelId` fields to `PluginHookAgentContext` so
plugins can determine what initiated the agent run and which channel
it originated from, without session-key parsing or Redis bridging.
trigger values: "user", "heartbeat", "cron", "memory"
channelId values: "telegram", "discord", "whatsapp", etc.
Both fields are threaded through run.ts and attempt.ts hookCtx so all
hook phases receive them (before_model_resolve, before_prompt_build,
before_agent_start, llm_input, llm_output, agent_end).
channelId falls back from messageChannel to messageProvider when the
former is not set. followup-runner passes originatingChannel so queued
followup runs also carry channel context.
* docs(changelog): note hook context parity fix for #28623
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-03-02 17:39:20 -08:00
Peter Steinberger
ee646dae82
fix: add runtime.events regression tests ( #16044 ) (thanks @scifantastic)
2026-03-03 01:37:56 +00:00
Brian Mendonca
cdc1ef85e8
Feishu: cache failing probes ( #29970 )
...
* Feishu: cache failing probes
* Changelog: add Feishu probe failure backoff note
---------
Co-authored-by: bmendonca3 <208517100+bmendonca3@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-02 19:37:07 -06:00
Peter Steinberger
1ca69c8fd7
fix: add channelRuntime regression coverage ( #25462 ) (thanks @guxiaobo)
2026-03-03 01:34:50 +00:00
Vincent Koc
747902a26a
fix(hooks): propagate run/tool IDs for tool hook correlation ( #32360 )
...
* Plugin SDK: add run and tool call fields to tool hooks
* Agents: propagate runId and toolCallId in before_tool_call
* Agents: thread runId through tool wrapper context
* Runner: pass runId into tool hook context
* Compaction: pass runId into tool hook context
* Agents: scope after_tool_call start data by run
* Tests: cover run and tool IDs in before_tool_call hooks
* Tests: add run-scoped after_tool_call collision coverage
* Hooks: scope adjusted tool params by run
* Tests: cover run-scoped adjusted param collisions
* Hooks: preserve active tool start metadata until end
* Changelog: add tool-hook correlation note
2026-03-02 17:23:08 -08:00
Peter Steinberger
5ee6ca13b7
docs(changelog): add landed notes for #32336 and #32364
2026-03-03 01:18:05 +00:00
Peter Steinberger
71cd337137
fix(gateway): harden message action channel fallback and startup grace
...
Take the safe, tested subset from #32367:\n- per-channel startup connect grace in health monitor\n- tool-context channel-provider fallback for message actions\n\nCo-authored-by: Munem Hashmi <munem.hashmi@gmail.com >
2026-03-03 01:17:27 +00:00
Peter Steinberger
3e4dd84511
fix: webchat gfm table rendering and overflow ( #32365 ) (thanks @BlueBirdBack)
2026-03-03 01:14:30 +00:00
Peter Steinberger
1187464041
fix: feishu default account outbound resolution ( #32253 ) (thanks @bmendonca3)
2026-03-03 01:13:18 +00:00
Peter Steinberger
ddd71bc9f6
fix: guard gemini schema null properties ( #32332 ) (thanks @webdevtodayjason)
2026-03-03 01:12:06 +00:00
dongdong
46df7e2421
fix(feishu): skip typing indicator keepalive re-adds to prevent notification spam ( #31580 )
...
* fix(feishu): skip typing indicator keepalive re-adds to prevent notification spam
The typing keepalive loop calls addTypingIndicator() every 3 seconds,
which creates a new messageReaction.create API call each time. Feishu
treats each re-add as a new reaction event and fires a push notification,
causing users to receive repeated notifications while waiting for a
response.
Unlike Telegram/Discord where typing status expires after a few seconds,
Feishu reactions persist until explicitly removed. Skip the keepalive
re-add when a reaction already exists (reactionId is set) since there
is no need to refresh it.
Closes #28660
* Changelog: note Feishu typing keepalive suppression
---------
Co-authored-by: yuxh1996 <yuxh1996@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-02 19:11:47 -06:00
Gustavo Madeira Santana
f26853f14c
CLI: dedupe config validate errors and expose allowed values
2026-03-02 20:05:12 -05:00
Peter Steinberger
36dfd462a8
feat(acp): enable dispatch by default
2026-03-03 00:47:35 +00:00
Peter Steinberger
6649c22471
fix(agents): harden openai ws tool call id handling
2026-03-03 00:43:48 +00:00
Peter Steinberger
77ecef1fde
feat(models): support minimax highspeed across onboarding
2026-03-03 00:40:15 +00:00
Peter Steinberger
1b5ac8b0b1
feat(cli): add configurable banner tagline mode
2026-03-03 00:31:51 +00:00
Peter Steinberger
f6233cfa5c
fix: dedupe restart sentinel reason output ( #32083 ) (thanks @velamints2)
2026-03-03 00:30:34 +00:00
Peter Steinberger
68e982ec80
fix: stabilize internal hooks singleton registry ( #32292 ) (thanks @Drickon)
2026-03-03 00:27:10 +00:00
Peter Steinberger
1e8afa16f0
fix: apply config env vars before model discovery ( #32295 ) (thanks @hsiaoa)
2026-03-03 00:25:24 +00:00
Glucksberg
051b380d38
fix(hooks): return 200 instead of 202 for webhook responses ( #28204 )
...
* fix(hooks): return 200 instead of 202 for webhook responses (#22036 )
* docs(webhook): document 200 status for hooks agent
* chore(changelog): add webhook ack note openclaw#28204 thanks @Glucksberg
---------
Co-authored-by: Shakker <shakkerdroid@gmail.com >
2026-03-03 00:19:31 +00:00
Peter Steinberger
fe14be2352
Merge pull request #4325 : fix(voice-call) verify stale calls with provider
2026-03-03 00:14:37 +00:00
Peter Steinberger
e870cee542
fix: restore control-ui basePath webhook passthrough ( #32311 ) (thanks @ademczuk)
2026-03-03 00:11:13 +00:00
Peter Steinberger
3e1ec5ad8b
fix: land Twilio signature port-variant verification ( #25140 ) (thanks @drvoss)
2026-03-03 00:02:03 +00:00
Peter Steinberger
381bb867ac
fix: land external Twilio outbound-api webhook calls ( #31181 ) (thanks @scoootscooob)
2026-03-02 23:56:41 +00:00
Peter Steinberger
dba47f349f
fix: land Twilio inbound greeting for answered calls ( #29121 ) (thanks @xinhuagu)
2026-03-02 23:54:54 +00:00
Peter Steinberger
ea3b7dfde5
fix(channels): normalize MIME kind parsing and reaction fallbacks
2026-03-02 23:48:11 +00:00
Peter Steinberger
500d7cb107
fix: revalidate approval cwd before system.run execution
2026-03-02 23:42:10 +00:00
Brian Mendonca
1234cc4c31
Feishu: reply to topic roots ( #29968 )
...
* Feishu: reply to topic roots
* Changelog: note Feishu topic-root reply targeting
---------
Co-authored-by: bmendonca3 <208517100+bmendonca3@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-02 17:41:36 -06:00
Peter Steinberger
abec8a4f0a
test: preserve windows backup-rotation compose coverage ( #32286 ) (thanks @jalehman)
2026-03-02 23:38:17 +00:00
Peter Steinberger
c20ee11348
fix: harden fs-safe write boundary checks
2026-03-02 23:36:23 +00:00
Peter Steinberger
73e08ed7b0
test: expand reminder guard fail-closed coverage ( #32255 ) (thanks @scoootscooob)
2026-03-02 23:35:14 +00:00
Mark L
55f04636f3
fix(feishu): suppress stale missing-scope grant notices (openclaw#31870) thanks @liuxiaopai-ai
...
Verified:
- pnpm install --frozen-lockfile
- pnpm build
- pnpm check (fails on unrelated baseline lint in src/browser/chrome.ts)
Co-authored-by: liuxiaopai-ai <73659136+liuxiaopai-ai@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-02 17:34:11 -06:00
YolenSong
f22fc17c78
feat(feishu): prefer thread_id for topic session routing (openclaw#29788) thanks @songyaolun
...
Verified:
- pnpm test -- extensions/feishu/src/bot.test.ts extensions/feishu/src/reply-dispatcher.test.ts
- pnpm build
Co-authored-by: songyaolun <26423459+songyaolun@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-02 17:33:08 -06:00
Peter Steinberger
28c88e9fa1
fix: harden telegram forum-service mention guard typing ( #32262 ) (thanks @scoootscooob)
2026-03-02 23:32:53 +00:00
Peter Steinberger
de77a36579
test: harden MIME normalization regression coverage ( #32280 ) (thanks @Lucenx9)
2026-03-02 23:31:19 +00:00
Sid
481da215b9
fix(feishu): persist dedup cache across gateway restarts via warmup (openclaw#31605) thanks @Sid-Qin
...
Verified:
- pnpm install --frozen-lockfile
- pnpm build
- pnpm check
- pnpm test:macmini (fails on unrelated baseline test: src/config/config.legacy-config-detection.rejects-routing-allowfrom.test.ts)
Co-authored-by: Sid-Qin <201593046+Sid-Qin@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-02 17:30:40 -06:00
Peter Steinberger
132794fe74
feat(security): audit workspace skill symlink escapes
2026-03-02 23:28:54 +00:00
不做了睡大觉
66397c2855
fix(feishu): restore private chat pairing replies in Lark/Feishu (openclaw#31403) thanks @stakeswky
...
Verified:
- pnpm test -- extensions/feishu/src/bot.test.ts
- pnpm build
Co-authored-by: stakeswky <64798754+stakeswky@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-02 17:27:39 -06:00