Ephemeral Reasoning Window
Done2026-10-08Jean Mertz
Tracking ticket for RFD 120.
Implementation plan
- Rename StderrRows to WindowRows: Renames
StderrRowsinjp_config::style::stderr_rowstoWindowRows, since its name and docs describe child processes. No behavior or config change; the existingstderr_rowskeys and serialized values stay the same. Mergeable on its own. - Add reasoning window config: Adds
ReasoningWindowConfigunderstyle.reasoning.windowwithrows(default off) andtimer(default true), including the usual config trait implementations and user-facing doc comments. Thedisplaydoc comment points at it. No renderer effect yet. Mergeable on its own; depends on phase 1'sWindowRows. - Render reasoning into the status-region window: Adds
Printer::window_rows, the single emission seam, per-block placement, window lifetime and release, region background, chrome-width wrapping,timerbookkeeping parity, and the live-flow gate. Covered by renderer tests inrender/chat_tests.rs, a screen-level test viajp_pty, and a manual terminal check for flicker, default size, resize, and the post-interrupt window. Depends on phase 2.