* term: rendered reads keep blank lines between content The fast-path pre-sizing gave every fresh screen row seq 0. A row that stays blank keeps that seq, and rendered reads filter on seq > after_seq, so a full read (after_seq 0) silently dropped blank lines that tail returns: "a\r\n\r\nb" read back as "a\nb". Mint a sequence per row, as fit_len does on the legacy path. * term: keep seq 0 for fresh rows, full rendered reads include them Minting seqs in the pre-size loop pushed head past dropped_floor on a restored surface, so pre-restart cursors stopped reading as dropped. Rows stay seq 0 again; rendered() treats after_seq 0 as 'oldest retained' and includes seq-0 rows. Reply seq is the first non-zero seq, else head. --------- Co-authored-by: Grok Bot <grok-bot@users.noreply.github.com>
1 file changedLine totals unavailable