diff --git a/src/telegram/sent-message-cache.ts b/src/telegram/sent-message-cache.ts index 0380f245454..005441461ea 100644 --- a/src/telegram/sent-message-cache.ts +++ b/src/telegram/sent-message-cache.ts @@ -9,7 +9,14 @@ type CacheEntry = { timestamps: Map; }; -const sentMessages = new Map(); +/** + * Keep sent-message tracking shared across bundled chunks so Telegram reaction + * filters see the same sent-message history regardless of which chunk recorded it. + */ +const _g = globalThis as typeof globalThis & { + __openclaw_telegram_sent_messages__?: Map; +}; +const sentMessages = (_g.__openclaw_telegram_sent_messages__ ??= new Map()); function getChatKey(chatId: number | string): string { return String(chatId);