diff --git a/extensions/telegram/src/send.ts b/extensions/telegram/src/send.ts index 0682fda6786..d2a95941b9e 100644 --- a/extensions/telegram/src/send.ts +++ b/extensions/telegram/src/send.ts @@ -491,7 +491,20 @@ function createTelegramRequestWithDiag(params: { } function wrapTelegramChatNotFoundError(err: unknown, params: { chatId: string; input: string }) { - if (!CHAT_NOT_FOUND_RE.test(formatErrorMessage(err))) { + const errorMsg = formatErrorMessage(err); + + // Check for 403 "bot is not a member" error + if (/403.*bot.*not.*member|bot.*blocked/i.test(errorMsg)) { + return new Error( + [ + `Telegram send failed: bot is not a member of the chat (chat_id=${params.chatId}).`, + "Fix: Add the bot to the channel/group, or ensure it has not been removed/blocked.", + `Input was: ${JSON.stringify(params.input)}.`, + ].join(" "), + ); + } + + if (!CHAT_NOT_FOUND_RE.test(errorMsg)) { return err; } return new Error(