30f7630ac4
Previously the Feishu adapter sent replies with the "send message" API (POST /im/v1/messages) without a root_id. In topic-enabled groups this spawned a new topic for every reply instead of attaching to the thread the user @-mentioned the bot from, fragmenting the conversation. Switch SendReply (text) and sendCardByCardID (streaming card) to the "reply message" API (POST /im/v1/messages/:message_id/reply), using incoming.MessageID as the path parameter. Feishu automatically replies in thread form when the replied-to message is itself a thread message, so no reply_in_thread flag or session-mode plumbing is needed. Add sendWithFallback to retry via the plain send-message API on fallback-eligible error codes (230019 topic gone, 230054 unsupported message type, 230071 group does not support reply-in-thread), and to skip straight to the fallback when incoming.MessageID is empty. This keeps replies deliverable even when the reply API cannot be used. Also add a debug log in convertEvent (longconn.go) that prints every raw received event (msg_type/chat_id/msg_id/root_id/parent_id/thread_id/ content) to aid diagnosing intermittent event-delivery issues. No interface signature changes; other platform adapters untouched. Co-Authored-By: Claude <noreply@anthropic.com>