A 5e storytelling engine with an LLM DM

Wrap a narration row the screen is too narrow to hold master

A round renders at the width it started on, so a terminal that narrowed under it hands rows wider than the screen, and a table too wide for any screen renders that way at every width. Buffer::set_line dropped everything past the last column, and a row in the scrollback never repaints, so a round pinned at eighty columns flushing onto twenty wrote "india juliett kilo l" and lost the rest for good. A narration row wider than the screen now wraps again at the width the terminal has, and every row of that goes out. Only the write changes. The stream still renders and counts rows at the round's own width, so block layout and the spill accounting above this are untouched. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CUXjWo1zGFhdJUig1hcQGf


+65 -5
3 changed files