Skip to content

飞书群聊线程消息回复被静默丢弃 #79349

Description

@arlen8411

问题描述

在飞书群聊中,当用户回复引用(thread)bot 的消息时,bot 的回复会被静默丢弃,既不会出现在群里,也不会出现在私聊。

复现步骤

  1. 在飞书群聊中 @bot 并正常交流
  2. bot 回复了一条消息
  3. 用户回复引用 bot 的上一条消息(飞书"回复"功能,非话题模式)
  4. bot 收到 dispatch 并生成了回复
  5. 但回复消失了 — dispatch complete 显示 replies=0

根因

extensions/feishu/src/send.tssendReplyOrFallbackDirect() 函数对线程回复做了特殊处理:

当线程回复 API 调用失败时(例如飞书侧限流 230011 "message withdrawn"),代码故意不 fallback 为普通群消息发送,而是直接抛错:

影响范围

  • 飞书群聊中所有使用"回复"功能 @bot 的消息
  • 不是偶发,是每次线程回复触发 dispatch 后,reply_in_thread API 调用失败都会导致消息丢失
  • 用户侧表现:完全静默,无任何错误提示

修复建议

修改 sendReplyOrFallbackDirect() 的逻辑,在线程回复失败时降级为普通群消息发送(即忽略 replyToMessageId,直接发到群),而不是直接丢消息。

相关文件:

  • extensions/feishu/src/send.tssendReplyOrFallbackDirect() 函数(第140-195行)
  • extensions/feishu/src/send.reply-fallback.test.ts — 测试用例 "fails thread replies instead of falling back to a top-level send"(第214行)

环境

  • OpenClaw 版本: v2026.5.7
  • 飞书 channel 配置: blockStreaming: true, streaming: true

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions