[BUG] Markdown table card fallback wraps wider than the transcript when a mod pane is docked
What happens
With a mod pane docked beside the transcript (fullscreen TUI; in my case a 44-column sidebar opened with $.ui.open({ columns: 44 })), a markdown table in an assistant reply comes out broken.
- The renderer falls back to the key-value card layout (
#: 1/Finding: …/Why it matters: …, separated by────). With roughly 190 columns left for the transcript, that is a reasonable choice for a 4-column table with long cells. - But the card text is hard-wrapped at a width a few cells wider than the transcript region. Every long value soft-wraps a second time, so you get stray fragments: a line ending
…renders a bare $ while the, then a line holding onlythe, thenaccounting table further down…. The cards are hard to read and don't look like a table at all.
Closing the pane redraws the same message as a correct bordered table across the full width. So the message does re-lay out on width changes; it looks like the card layout's wrap width doesn't subtract the docked pane (or its separator/gutter).
Expected
When a pane is docked, the table/card layout should use the transcript region's width: the same width that decides whether to fall back to cards, and the width the text actually gets.
Repro
- Fullscreen TUI, terminal about 240 columns wide.
- Open a mod pane that docks as a sidebar (
$.ui.open({ id, columns: 44 })). - Ask for a 4-column markdown table with long prose cells (7 rows or so).
- Look at the card fallback: lines wrap twice and leave orphaned words. Close the pane and the same reply renders as a proper table.
Related
#44696 (wide tables collapse into cards, closed), #55938 (stale bordered paint left by the fallback, closed), #82950 (make the fallback configurable, closed as not planned). None of these covers a docked pane narrowing the transcript.
Environment
Claude Code 2.1.291, macOS (Darwin 25.6), fullscreen layout, a mod (function-hooks plugin) pane docked on the right.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗