From 48d369749cb509dc78112d13bc8c0ce89575681f Mon Sep 17 00:00:00 2001 From: Rylen Anil Date: Sun, 1 Mar 2026 15:19:47 +0000 Subject: [PATCH] fix(telegram): skip null/undefined final text payloads --- src/telegram/bot-message-dispatch.test.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/telegram/bot-message-dispatch.test.ts b/src/telegram/bot-message-dispatch.test.ts index 22e87c53a4f..42f2317d277 100644 --- a/src/telegram/bot-message-dispatch.test.ts +++ b/src/telegram/bot-message-dispatch.test.ts @@ -1464,6 +1464,21 @@ describe("dispatchTelegramMessage draft streaming", () => { expect(draftStream.clear).toHaveBeenCalledTimes(1); }); + it("skips final payload when text is undefined", async () => { + const draftStream = createDraftStream(999); + createTelegramDraftStream.mockReturnValue(draftStream); + dispatchReplyWithBufferedBlockDispatcher.mockImplementation(async ({ dispatcherOptions }) => { + await dispatcherOptions.deliver({ text: undefined as unknown as string }, { kind: "final" }); + return { queuedFinal: true }; + }); + deliverReplies.mockResolvedValue({ delivered: true }); + + await dispatchWithContext({ context: createContext() }); + + expect(deliverReplies).not.toHaveBeenCalled(); + expect(draftStream.clear).toHaveBeenCalledTimes(1); + }); + it("falls back when all finals are skipped and clears preview", async () => { const draftStream = createDraftStream(999); createTelegramDraftStream.mockReturnValue(draftStream);