fix(terminal): bound live xterm backpressure - #339
Conversation
Ark0N
commented
Aug 25, 2026
Reviewed against master and checked the surrounding code paths on the live instance. The core idea is right: capping only the app-side queues while xterm's own 1. Shell recovery loses the downgrade guard
constuseFullHistory=this.sessions.get(sessionId)?.mode!=='shell';
...
if(useFullHistory&&data.terminalBuffer&&this._replayWouldShrinkBuffer(data.terminalBuffer)){ ... }so a shell fetches a 1 MiB tail and goes straight into I agree with the goal: a multi-megabyte automatic replay on the main thread is not acceptable. Could you keep the guard on both branches, and in the shell case skip the replay when it would shrink rather than falling back to 2. The effective burst budget is now roughly half
3. Smaller things
What I checked and am happy withWidening the SSE guards from Test-merged this against #340 with |
Uh oh!
There was an error while loading. Please reload this page.
install.sh installs a build toolchain on Linux (node-pty has no Linux prebuild, so a stock Ubuntu 24 server died inside node-gyp with "not found: make"), plus review hardening for #339: the write-queue reset paths now release the one-chunk-in-flight gate. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Follow-up to #331.
Summary
Testing