Commit Graph

2782 Commits

Author SHA1 Message Date
Tak Hoffman
a65d603b31 fix(regression): align irc send helper runtime usage 2026-03-27 21:40:58 -05:00
Peter Steinberger
6a2c5b2b54 refactor: move telegram error formatting onto ssrf runtime 2026-03-28 02:38:02 +00:00
Tak Hoffman
33e64cfb64 fix(regression): align nextcloud-talk send helper runtime usage 2026-03-27 21:37:50 -05:00
Sid Uppal
295d1de8d9 fix(msteams): reset stream state after tool calls to prevent message loss (#56071)
* fix(msteams): reset stream state after preparePayload suppresses delivery

When an agent uses tools mid-response (text → tool calls → more text),
the stream controller's preparePayload would suppress fallback delivery
for ALL text segments because streamReceivedTokens stayed true. This
caused the second text segment to be silently lost or duplicated.

Fix: after preparePayload suppresses delivery for a streamed segment,
finalize the stream and reset streamReceivedTokens so subsequent
segments use fallback delivery.

Fixes openclaw/openclaw#56040

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(msteams): guard preparePayload against finalized stream re-suppression

When onPartialReply fires after the stream is finalized (post-tool
partial tokens), streamReceivedTokens gets set back to true but the
stream can't deliver. Add stream.isFinalized check so a finalized
stream never suppresses fallback delivery.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(msteams): await pending finalize in controller to prevent race

Store the fire-and-forget finalize promise from preparePayload and
await it in the controller's finalize() method. This ensures
markDispatchIdle waits for the in-flight stream finalization to
complete before context cleanup.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* test(msteams): add edge case tests for multi-round and media payloads

Add tests for 3+ tool call rounds (text → tool → text → tool → text)
and media+text payloads after stream finalization, covering the full
contract of preparePayload across all input types and cycle counts.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 21:36:37 -05:00
Peter Steinberger
6b4d097b25 refactor: route telegram env helpers through runtime-env 2026-03-28 02:34:11 +00:00
Tak Hoffman
d027b442af fix(regression): restore zalouser cold-runtime chunking 2026-03-27 21:33:14 -05:00
Peter Steinberger
05719648a1 test(line): isolate status probe fallback import state 2026-03-28 02:31:39 +00:00
Tak Hoffman
a3961d098a fix(regression): preserve mattermost reaction channel routing 2026-03-27 21:30:24 -05:00
Tak Hoffman
42ecfffbff fix(regression): restore signal cold-runtime chunking 2026-03-27 21:28:18 -05:00
Peter Steinberger
1bf8d69d95 refactor(msteams): share conversation store helpers 2026-03-28 02:26:48 +00:00
Peter Steinberger
4031bb1914 refactor: trim secret and ssrf helper runtime seams 2026-03-28 02:25:28 +00:00
Tak Hoffman
18fe752c48 fix(regression): restore googlechat cold-runtime chunking 2026-03-27 21:25:21 -05:00
Tak Hoffman
3143cf86e8 fix(regression): restore whatsapp cold-runtime chunking 2026-03-27 21:23:18 -05:00
Tak Hoffman
e57342c7f2 fix(regression): restore msteams cold-runtime chunking 2026-03-27 21:21:40 -05:00
Peter Steinberger
3b9eb2cd1b refactor: trim bluebubbles runtime seams 2026-03-28 02:21:34 +00:00
Tak Hoffman
c0c32445ab fix(regression): restore feishu cold-runtime chunking 2026-03-27 21:17:17 -05:00
Peter Steinberger
46a44c5044 refactor: trim tlon runtime helper seams 2026-03-28 02:15:31 +00:00
Tak Hoffman
23d5bad3ae fix(regression): restore matrix cold-runtime chunking 2026-03-27 21:14:38 -05:00
Tak Hoffman
196d347153 fix(regression): restore mattermost cold-runtime chunking 2026-03-27 21:12:13 -05:00
Peter Steinberger
185668f5c5 refactor: trim extension helper runtime seams 2026-03-28 02:12:05 +00:00
Peter Steinberger
ce2444403e refactor: trim provider oauth runtime seams 2026-03-28 02:08:29 +00:00
Peter Steinberger
2926c25e10 fix: prefer freshest Teams DM reference (#54702) (thanks @gumclaw) 2026-03-28 02:04:51 +00:00
gumclaw
a717819f78 msteams: align memory store user resolution 2026-03-28 02:04:51 +00:00
gumclaw
28eb5ece14 msteams: prefer freshest personal conversation reference 2026-03-28 02:04:51 +00:00
Peter Steinberger
e8866fc738 refactor: narrow provider runtime auth seams 2026-03-28 02:04:31 +00:00
Peter Steinberger
72ba2b3653 chore: bump version metadata to 2026.3.27 2026-03-28 02:00:22 +00:00
Tak Hoffman
ee72081373 fix(regression): restore googlechat cold-runtime media send 2026-03-27 20:58:47 -05:00
Peter Steinberger
c42ec81e37 feat(acp): add conversation binds for message channels 2026-03-28 01:54:25 +00:00
Tak Hoffman
a724246547 fix(regression): restore imessage cold-runtime chunking 2026-03-27 20:50:03 -05:00
Gustavo Madeira Santana
86d8b06da9 Matrix: preserve strict DM SAS fallback 2026-03-27 21:42:12 -04:00
Tak Hoffman
9e16374898 fix(regression): restore signal cold-runtime status probing 2026-03-27 20:34:58 -05:00
Tak Hoffman
b9b84f2572 fix(regression): restore line cold-runtime status probing 2026-03-27 20:33:09 -05:00
Tak Hoffman
3ec1df86fa fix(regression): restore slack probe fallback without runtime 2026-03-27 20:24:14 -05:00
Tak Hoffman
b598cdf968 fix(regression): preserve discord thread bindings for plugin commands 2026-03-27 20:24:14 -05:00
Tak Hoffman
b1eeca3b00 fix(regression): stop cross-channel plugin thread defaults 2026-03-27 20:24:14 -05:00
Peter Steinberger
8f06ed8ef5 fix: short-circuit disabled media runtime 2026-03-28 00:45:57 +00:00
Tak Hoffman
262e5c57c8 fix(ci): stabilize module-bound exact regressions (#56085)
* Adjust compaction identifier test for summary args

* Harden exec completion after child exit

* Handle SDK compaction and skill shape drift

* Stabilize Synology Chat module-bound tests

* Restore skill source compatibility shims

* Restore self-hosted provider discovery mocks
2026-03-27 19:44:15 -05:00
Gustavo Madeira Santana
b6ead2dd3b fix(matrix): align outbound direct-room selection (#56076)
Merged via squash.

Prepared head SHA: bbd9afdd5c
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-03-27 20:35:55 -04:00
Peter Steinberger
78160b5f88 fix: align discord registry and runtime test helpers 2026-03-28 00:13:44 +00:00
ZIHANXU
29674d75fb fix: load pierre themes without json module imports (#45869)
Merged via squash.

Prepared head SHA: dd456aa32b
Co-authored-by: NickHood1984 <124482724+NickHood1984@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-03-27 20:12:11 -04:00
Peter Steinberger
8e687613b6 refactor: move stream payload compat into provider seams 2026-03-28 00:10:39 +00:00
Peter Steinberger
2d8351b3b4 fix: align anthropic and skills helpers with shared sdk 2026-03-28 00:08:52 +00:00
Gustavo Madeira Santana
378803987c fix(diffs): stage bundled runtime deps after updates (#56077)
Merged via squash.

Prepared head SHA: 2a153451de
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-03-27 20:01:14 -04:00
Peter Steinberger
d343b11bf1 refactor: reuse shared openai model prefix helper 2026-03-27 23:58:42 +00:00
Peter Steinberger
6ba0c434ba refactor: move plugin tool routing defaults into tool context 2026-03-27 23:58:04 +00:00
Peter Steinberger
0b26e4d72a refactor: split shared provider catalog sdk helpers 2026-03-27 23:55:10 +00:00
Bruce MacDonald
773c57b418 fix(ollama): send think=false for thinking models when thinking is off
Ollama thinking-capable models default to think=true when the parameter
is absent. When OpenClaw has thinking set to off, the request never
included think=false, so models continued generating thinking tokens
that were then discarded by the response parser, producing empty
responses.

Wire onPayload into the Ollama stream path so payload wrappers can
mutate the request body, and add an Ollama-specific wrapper that sets
top-level think=false when thinkingLevel is off.

Fixes #46680, #50702, #50712

Co-Authored-By: SnowSky1 <126348592+snowsky1@users.noreply.github.com>
2026-03-27 23:49:33 +00:00
Peter Steinberger
3b51e6471a test: switch provider model barrel straggler imports 2026-03-27 23:48:56 +00:00
Peter Steinberger
b39a7e8073 fix: break plugin-sdk provider barrel recursion 2026-03-27 23:47:04 +00:00
Peter Steinberger
ac68494dae fix(ci): harden discord rate-limit helpers 2026-03-27 23:43:43 +00:00