mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-04-29 15:31:38 +08:00
WecomCallbackAdapter declared a _seen_messages dict and MESSAGE_DEDUP_TTL_SECONDS constant but never actually checked them in _handle_callback(). WeCom retries callback deliveries on timeout, and each retry with the same MsgId was treated as a fresh message and queued for processing. Fix: check _seen_messages before enqueuing. Uses the same TTL- based pattern as MessageDeduplicator (fixed in #10306) — check age before returning duplicate, prune on overflow. Closes #10305
16 KiB
16 KiB