fix: enforce Telegram 100-command limit with warning (#5787) (#15844)

* fix: enforce Telegram 100-command limit with warning (#5787)

Telegram's setMyCommands API rejects requests with more than 100 commands.
When skills + custom + plugin commands exceed the limit, truncate to 100
and warn the user instead of silently failing on every startup.

* fix: enforce Telegram menu cap + keep hidden commands callable (#15844) (thanks @battman21)

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
This commit is contained in:
Owen
2026-02-14 11:51:00 +11:00
committed by GitHub
parent aa6d8b27ac
commit 11ab1c6937
4 changed files with 71 additions and 8 deletions

View File

@@ -112,7 +112,7 @@ describe("registerTelegramNativeCommands", () => {
expect(registeredCommands).toHaveLength(100);
expect(registeredCommands).toEqual(customCommands.slice(0, 100));
expect(runtimeLog).toHaveBeenCalledWith(
"telegram: truncating 120 commands to 100 (Telegram Bot API limit)",
"Telegram limits bots to 100 commands. 120 configured; registering first 100. Use channels.telegram.commands.native: false to disable, or reduce skill/custom commands.",
);
});
});