From d1386ada5a2f84b9d76a91da4b4031d3816c411a Mon Sep 17 00:00:00 2001 From: Atlas Bot Date: Fri, 24 Apr 2026 17:05:41 +0900 Subject: [PATCH] fix(telegram): pass modelNames to buildModelsKeyboard in button-click callback When navigating the /models picker via provider button click, the model list showed raw model IDs (e.g. gemini-3.1-pro-preview) instead of configured display names (e.g. Gemini 3.1 Pro (Bridge)). Root cause: the button-click callback handler destructured modelData as { byProvider, providers } omitting modelNames, then called buildModelsKeyboard() without it. buildModelsKeyboard falls back to the raw model ID via modelNames?.get(...) ?? model when modelNames is absent. The text-command path (/models ) already passes modelNames correctly through buildTelegramModelsListChannelData, confirming the fix. Fix: destructure modelNames from modelData and forward it to buildModelsKeyboard in the button-click callback handler. Closes #70560 --- extensions/telegram/src/bot-handlers.runtime.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/extensions/telegram/src/bot-handlers.runtime.ts b/extensions/telegram/src/bot-handlers.runtime.ts index 79b0a9c8b94..ffec33603e3 100644 --- a/extensions/telegram/src/bot-handlers.runtime.ts +++ b/extensions/telegram/src/bot-handlers.runtime.ts @@ -1562,7 +1562,7 @@ export const registerTelegramHandlers = ({ } catch (err) { throw new TelegramRetryableCallbackError(err); } - const { byProvider, providers } = modelData; + const { byProvider, providers, modelNames } = modelData; const editMessageWithButtons = async ( text: string, @@ -1646,6 +1646,7 @@ export const registerTelegramHandlers = ({ currentPage: safePage, totalPages, pageSize, + modelNames, }); const text = formatModelsAvailableHeader({ provider,