openclaw/extensions
Maple778 477de545f9
fix(feishu): suppress reasoning/thinking block payloads from delivery (#31723)
* fix(extensions/feishu/src/reply-dispatcher.ts): missing privacy check / data leak

Pattern from PR #24969

The fix addresses the critical race condition by placing the 'block' filter check at the very top of the `deliver` function. This ensures that for internal 'block' reasoning chunks, the function returns immediately, preventing any text processing (lines 195-203) and, crucially, preventing the initialization of the streaming state for these payloads (lines 212-216). This ensures that the `streaming` object is not initialized with empty data, and subsequent 'final' payloads will correctly initialize and stream only the final content. The fix also addresses the 'incomplete' validation issue by using `info?.kind !== 'block'`. While the contract likely ensures `info` is present, this defensive approach ensures that if `info` is missing (and the payload is unrelated to internal blocking), the message is still delivered to the user, preventing a 'silent failure' bug. The validation logic at line 205 (`!hasText && !hasMedia`) ensures we do not send empty messages.

* Fix indentation: remove extra 4 spaces from deliver function body

The deliver function is inside the createReplyDispatcherWithTyping call,
so it should be indented at 2 levels (8 spaces), not 3 levels (12 spaces).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* test(feishu): cover block payload suppression in reply dispatcher

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com>
2026-03-02 16:15:45 -06:00
..
acpx test: speed up heavy suites with shared fixtures 2026-03-02 21:58:35 +00:00
bluebubbles Add runtime.stt.transcribeAudioFile for plugin STT access 2026-03-02 21:43:01 +00:00
copilot-proxy build: bump versions to 2026.3.2 2026-03-02 04:55:53 +00:00
device-pair refactor: de-duplicate channel runtime and payload helpers 2026-02-23 21:25:28 +00:00
diagnostics-otel build: bump versions to 2026.3.2 2026-03-02 04:55:53 +00:00
diffs test(perf): trim fixed waits in relay and startup tests 2026-03-02 17:30:33 +00:00
discord build: bump versions to 2026.3.2 2026-03-02 04:55:53 +00:00
feishu fix(feishu): suppress reasoning/thinking block payloads from delivery (#31723) 2026-03-02 16:15:45 -06:00
google-gemini-cli-auth refactor(extensions): dedupe channel config, onboarding, and monitors 2026-03-02 08:54:20 +00:00
googlechat refactor: split webhook ingress and policy guards 2026-03-02 18:02:21 +00:00
imessage fix(ci): align strict nullable typing across channels and ui 2026-03-02 09:56:14 +00:00
irc refactor(extensions): dedupe channel config, onboarding, and monitors 2026-03-02 08:54:20 +00:00
line test(perf): trim fixed waits in relay and startup tests 2026-03-02 17:30:33 +00:00
llm-task build: bump versions to 2026.3.2 2026-03-02 04:55:53 +00:00
lobster refactor(gateway): hard-break plugin wildcard http handlers 2026-03-02 16:24:06 +00:00
matrix refactor: unify queueing and normalize telegram slack flows 2026-03-02 20:55:15 +00:00
mattermost build: bump versions to 2026.3.2 2026-03-02 04:55:53 +00:00
memory-core build: bump versions to 2026.3.2 2026-03-02 04:55:53 +00:00
memory-lancedb fix: add regression for memory-lancedb dimensions pass-through (#32036) (thanks @scotthuang) 2026-03-02 19:02:11 +00:00
minimax-portal-auth refactor(extensions): dedupe channel config, onboarding, and monitors 2026-03-02 08:54:20 +00:00
msteams refactor: harden msteams lifecycle and attachment flows 2026-03-02 21:19:23 +00:00
nextcloud-talk test(perf): trim fixed waits in relay and startup tests 2026-03-02 17:30:33 +00:00
nostr refactor(gateway): hard-break plugin wildcard http handlers 2026-03-02 16:24:06 +00:00
open-prose build: bump versions to 2026.3.2 2026-03-02 04:55:53 +00:00
phone-control refactor(gateway): harden plugin http route contracts 2026-03-02 16:48:00 +00:00
qwen-portal-auth refactor(extensions): dedupe channel config, onboarding, and monitors 2026-03-02 08:54:20 +00:00
shared fix(acpx): share windows wrapper resolver and add strict hardening mode 2026-03-01 23:57:06 +00:00
signal fix(ci): align strict nullable typing across channels and ui 2026-03-02 09:56:14 +00:00
slack fix(ci): align strict nullable typing across channels and ui 2026-03-02 09:56:14 +00:00
synology-chat fix(synology-chat): prevent restart loop in startAccount (#23074) 2026-03-02 20:06:16 +00:00
talk-voice
telegram fix: add regression tests for telegram token guard (#31973) (thanks @ningding97) 2026-03-02 18:33:49 +00:00
test-utils refactor(extensions): dedupe channel config, onboarding, and monitors 2026-03-02 08:54:20 +00:00
thread-ownership
tlon build: bump versions to 2026.3.2 2026-03-02 04:55:53 +00:00
twitch build: bump versions to 2026.3.2 2026-03-02 04:55:53 +00:00
voice-call Tests: isolate webhook path suite and reset cron auth state 2026-03-02 18:57:46 +00:00
whatsapp refactor(extensions): dedupe channel config, onboarding, and monitors 2026-03-02 08:54:20 +00:00
zalo refactor(gateway): harden plugin http route contracts 2026-03-02 16:48:00 +00:00
zalouser fix(plugins): allow hardlinks for bundled plugins (fixes #28175, #28404) (openclaw#32119) thanks @markfietje 2026-03-02 16:10:31 -06:00