From 91256517754d0bb3c3a5366b6bed9c9c0d2e6e5e Mon Sep 17 00:00:00 2001 From: cyberpapi Date: Tue, 24 Feb 2026 16:14:15 -0500 Subject: [PATCH] fix(telegram): log specific deleteMessage failure reason in finalize_draft Split the catch-all `_` match arm on the deleteMessage result into separate `Ok(r)` and `Err(e)` arms so that HTTP status codes and network errors are logged individually. The response body is not logged (security policy). Co-Authored-By: Claude Opus 4.6 --- src/channels/telegram.rs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/channels/telegram.rs b/src/channels/telegram.rs index 44b101d42..118a9bca0 100644 --- a/src/channels/telegram.rs +++ b/src/channels/telegram.rs @@ -2956,11 +2956,16 @@ impl Channel for TelegramChannel { self.send_text_chunks(text, &chat_id, thread_id.as_deref()) .await } - _ => { - // Delete failed — draft still visible with content from update_draft. - // Sending a new message now would create a duplicate, so skip it. + Ok(r) => { + let status = r.status(); tracing::warn!( - "Telegram deleteMessage failed; draft still shows response, skipping sendMessage to avoid duplicate" + "Telegram deleteMessage failed ({status}); draft still shows response, skipping sendMessage to avoid duplicate" + ); + Ok(()) + } + Err(e) => { + tracing::warn!( + "Telegram deleteMessage network error: {e}; draft still shows response, skipping sendMessage to avoid duplicate" ); Ok(()) }