term: rendered reads keep blank lines between content (#140)

* 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>
f28a6d9ebbSimone committed on 10/17/2026, 7:22:53 PM· committed by GitHubparentf78247d
1 file changedLine totals unavailable