mirror of https://github.com/openclaw/openclaw.git
* 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> |
||
|---|---|---|
| .. | ||
| acpx | ||
| bluebubbles | ||
| copilot-proxy | ||
| device-pair | ||
| diagnostics-otel | ||
| diffs | ||
| discord | ||
| feishu | ||
| google-gemini-cli-auth | ||
| googlechat | ||
| imessage | ||
| irc | ||
| line | ||
| llm-task | ||
| lobster | ||
| matrix | ||
| mattermost | ||
| memory-core | ||
| memory-lancedb | ||
| minimax-portal-auth | ||
| msteams | ||
| nextcloud-talk | ||
| nostr | ||
| open-prose | ||
| phone-control | ||
| qwen-portal-auth | ||
| shared | ||
| signal | ||
| slack | ||
| synology-chat | ||
| talk-voice | ||
| telegram | ||
| test-utils | ||
| thread-ownership | ||
| tlon | ||
| twitch | ||
| voice-call | ||
| zalo | ||
| zalouser | ||