From b0b641b4c82b95de73508c5001ded59e99853a06 Mon Sep 17 00:00:00 2001 From: daniel Date: Thu, 7 May 2026 18:38:55 -0500 Subject: [PATCH] Add in-process dedup to prevent AgentCore retry duplicates --- src/lambdas/agent-runner/handler.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/lambdas/agent-runner/handler.py b/src/lambdas/agent-runner/handler.py index cd35982..a58c69e 100644 --- a/src/lambdas/agent-runner/handler.py +++ b/src/lambdas/agent-runner/handler.py @@ -67,7 +67,17 @@ def update_user_status(actor_id: str, name: str, status: str) -> None: ) +# Per-invocation dedup: track sent message hashes to prevent AgentCore retry duplicates +_sent_hashes: set = set() + + def send_telegram_direct(chat_id: str, token: str, text: str) -> None: + import hashlib + h = hashlib.md5(f'{chat_id}:{text}'.encode()).hexdigest()[:12] + if h in _sent_hashes: + print(f'[agent-runner] dedup: skipping duplicate message (hash={h})') + return + _sent_hashes.add(h) url = f'https://api.telegram.org/bot{token}/sendMessage' data = json.dumps({'chat_id': chat_id, 'text': text}).encode() req = urllib.request.Request(url, data=data, headers={'Content-Type': 'application/json'})