2e2212be1b
a0a3c716ffixed the exact same failure mode for Telegram (#58563): post-#48648, oversized mid-stream edits truncate to a one-message preview instead of splitting. Once a long streamed reply grows past that cap, every subsequent progressive edit truncates to the SAME preview text — re-sending an identical edit every tick still counts against the platform's edit rate limit for the rest of the stream. Discord's edit_message() has the identical architecture (mid-stream truncate-in-place, both pre-flight and reactive-after-50035 truncation paths) and this file's own docstring already calls out "the Telegram #48648 lesson" it's built on — but the saturated-preview dedup fix itself was never ported over. Fix: track the last truncated preview per (chat_id, message_id), mirroringa0a3c716fexactly. Skip the edit call when the new truncation is identical; still deliver when the visible content actually changes (e.g. the chunk-count marker crosses (1/2) -> (1/3) as the stream grows). State clears on finalize and when content shrinks back under the cap, so dedup can never mask a real edit.