refactor(telegram): precompute dm preview transport flag

This commit is contained in:
Peter Steinberger
2026-03-08 01:10:53 +00:00
parent 3987ca4099
commit 1135b7f12f

View File

@@ -190,15 +190,15 @@ export const dispatchTelegramMessage = async ({
const draftReplyToMessageId =
replyToMode !== "off" && typeof msg.message_id === "number" ? msg.message_id : undefined;
const draftMinInitialChars = DRAFT_MIN_INITIAL_CHARS;
// Use message transport (sendMessage + editMessageText) for all lanes in
// DMs so that streamMessageId is tracked. Draft transport doesn't track a
// messageId, causing resolvePreviewTarget() to miss the preview on final
// delivery — which sends a duplicate message. (Fixes #33453)
const useMessagePreviewTransportForDm = threadSpec?.scope === "dm" && canStreamAnswerDraft;
const mediaLocalRoots = getAgentScopedMediaLocalRoots(cfg, route.agentId);
const archivedAnswerPreviews: ArchivedPreview[] = [];
const archivedReasoningPreviewIds: number[] = [];
const createDraftLane = (laneName: LaneName, enabled: boolean): DraftLaneState => {
// Use message transport (sendMessage + editMessageText) for all lanes in
// DMs so that streamMessageId is tracked. Draft transport doesn't track a
// messageId, causing resolvePreviewTarget() to miss the preview on final
// delivery — which sends a duplicate message. (Fixes #33453)
const useMessagePreviewTransportForDm = threadSpec?.scope === "dm" && canStreamAnswerDraft;
const stream = enabled
? createTelegramDraftStream({
api: bot.api,