Repository navigation
fix(desktop): rebind mounted sessions after ws reconnect - #101531
Open
FalconOrtiz wants to merge 1 commit into
Open
FalconOrtiz wants to merge 1 commit into
FalconOrtiz wants to merge 1 commit into
Conversation
Overall: Warm tile bindings are rebound via Correctness:
Non-blocking nit:
Verdict: LGTM. |
This was referenced Sep 4, 2026
Author
|
Requesting squash-merge per engineer agreement (2026-09-04): AI-review merge-ready pack; nits non-blocking; no rewrites. This PR is in the agreed pack with #101523 #101528 #101529 #101530 #101531 #101537 #101544 #101547 #101548 #101549 #101551. Out of pack (do not block this merge): #101564, #101796/#101091, #101318. |
This was referenced Sep 4, 2026
OutThisLife
force-pushed
the
fix/fe-101408-ws-reconnect-detach
branch
from
September 29, 2026 01:37
f627cac to
b9078fd
Compare
OutThisLife
enabled auto-merge (rebase)
September 29, 2026 02:28
OutThisLife
disabled auto-merge
September 29, 2026 18:45
Warm tile reuse and a timed-out primary activate left panes painted while the gateway still held the session on the drop sentinel. Activate (or fall through to resume) so typed input and pending approvals attach again. Co-authored-by: Cursor <cursoragent@cursor.com>
OutThisLife
force-pushed
the
fix/fe-101408-ws-reconnect-detach
branch
from
September 30, 2026 01:41
b9078fd to
b02fdb1
Compare
OutThisLife
enabled auto-merge (rebase)
September 30, 2026 02:25
This was referenced Oct 13, 2026
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
After a desktop WebSocket drop (1006), reconnect could leave a mounted pane painted from warm cache while the gateway still held that session on the drop sentinel. Typed input never reached
prompt accepted, and a pendingapproval.pendingframe was lost until the user remounted the chat (#101408).Scope
use-session-tile-delegate.ts: warmresumeTilealways runssession.activate(restorespending_approval); falls through to coldsession.resumewhen activate proves the runtime dead.use-session-actions/index.ts: a timed-out / transient warmsession.activatefalls through to coldsession.resumeinstead of returning on degraded cache.Out of scope: gateway orphan-reap / transport ownership changes.
Tradeoffs
Warm tile reuse now pays one
session.activateround-trip. That matches the primary resume path and is the cheapest way to prove transport attachment.Blast Radius
Desktop renderer only (
apps/desktop). Affects tiled sessions and primary warm reconnect. Safe failure mode is cold resume.Verification
Closes #101408