fix(feishu): align synthesized fallback typing and changelog attribution

This commit is contained in:
Tak Hoffman
2026-03-04 19:31:01 -06:00
parent b718bcdd2d
commit 79488f3610
2 changed files with 8 additions and 3 deletions

View File

@@ -1 +1 @@
- Feishu/reply mechanism: forward `replyToId` through outbound adapter `sendText`/`sendMedia` to enable reply-to-message via the `message` tool; fix group reply targeting to use the triggering message in normal groups while preserving topic-root replies for topic-mode groups (#32980, #32958). Thanks @guoqunabc.
- Feishu reply routing now uses one canonical reply-target path across inbound and outbound flows: normal groups reply to the triggering message while topic-mode groups stay on topic roots, outbound sends preserve `replyToId`/`threadId`, withdrawn reply targets fall back to direct sends, and cron duplicate suppression normalizes Feishu/Lark target IDs consistently (#32980, #32958, #33572, #33526; #33789, #33575, #33515, #33161). Thanks @guoqunabc, @bmendonca3, @MunemHashmi, and @Jimmy-xuzimo.

View File

@@ -44,7 +44,7 @@ type FeishuCreateMessageClient = {
im: {
message: {
create: (opts: {
params: { receive_id_type: string };
params: { receive_id_type: "chat_id" | "email" | "open_id" | "union_id" | "user_id" };
data: { receive_id: string; content: string; msg_type: string };
}) => Promise<{ code?: number; msg?: string; data?: { message_id?: string } }>;
};
@@ -54,7 +54,12 @@ type FeishuCreateMessageClient = {
/** Send a direct message as a fallback when a reply target is unavailable. */
async function sendFallbackDirect(
client: FeishuCreateMessageClient,
params: { receiveId: string; receiveIdType: string; content: string; msgType: string },
params: {
receiveId: string;
receiveIdType: "chat_id" | "email" | "open_id" | "union_id" | "user_id";
content: string;
msgType: string;
},
errorPrefix: string,
): Promise<FeishuSendResult> {
const response = await client.im.message.create({