Before submitting
Area
apps/web
Steps to reproduce
- Open a thread and open the terminal drawer.
- Run something that fills the width, e.g.
ls -la or any command with wide output.
- Resize the drawer (drag its divider), or resize the surrounding panel/window so the drawer's container changes size.
Expected behavior
The terminal re-fits to its new container size: columns and rows recompute, output reflows to the new width, and the PTY is told about the new dimensions.
Actual behavior
The terminal keeps the dimensions it was given at mount. Output stays wrapped to the old column count, so it looks truncated or wrapped at the wrong width, and the PTY continues to believe the terminal is the original size.
In apps/web/src/components/ThreadTerminalDrawer.tsx, TerminalViewport fits the terminal exactly once, from a setTimeout(..., 30) after mount:
const fitTimer = window.setTimeout(() => {
// ...
fitTerminalSafely(activeFitAddon);
void resizeTerminal(activeTerminal.cols, activeTerminal.rows);
}, 30);
There is a MutationObserver watching class/style, but nothing observes the container's size, so a resize that does not change those attributes (dragging the divider, window resize, layout reflow) never triggers a re-fit.
Impact
Minor bug or occasional failure
Version or commit
main @ 49c0d96
Environment
macOS 26.5.2 (Darwin 25.5.0), Node v24.18.0, desktop app
Workaround
Close and reopen the terminal drawer after resizing — the remount re-runs the one-shot fit at the new size.
Before submitting
Area
apps/web
Steps to reproduce
ls -laor any command with wide output.Expected behavior
The terminal re-fits to its new container size: columns and rows recompute, output reflows to the new width, and the PTY is told about the new dimensions.
Actual behavior
The terminal keeps the dimensions it was given at mount. Output stays wrapped to the old column count, so it looks truncated or wrapped at the wrong width, and the PTY continues to believe the terminal is the original size.
In
apps/web/src/components/ThreadTerminalDrawer.tsx,TerminalViewportfits the terminal exactly once, from asetTimeout(..., 30)after mount:There is a
MutationObserverwatchingclass/style, but nothing observes the container's size, so a resize that does not change those attributes (dragging the divider, window resize, layout reflow) never triggers a re-fit.Impact
Minor bug or occasional failure
Version or commit
main @ 49c0d96
Environment
macOS 26.5.2 (Darwin 25.5.0), Node v24.18.0, desktop app
Workaround
Close and reopen the terminal drawer after resizing — the remount re-runs the one-shot fit at the new size.