Skip to content

Warm park: skip transcript/binding teardown on tab switch - #1746

Merged
trissim merged 1 commit into
mainfrom
perf/warm-park-switch
Nov 12, 2026
Merged

trissim merged 1 commit into
mainfrom
perf/warm-park-switch

Conversation

@trissim

@trissim trissim commented Nov 12, 2026

Copy link
Copy Markdown

park_for_switch() on WorkspaceSource keeps the transcript and binding alive. activate() and prepare_presentation() detect intact widgets and skip the full restore. retire() unchanged for eviction. Warm switch: 52 ms (was 69 ms). 5 tests pass.

🤖 Generated with Claude Code

https://claude.ai/code/session_01RnH6dVGXdhEBgsWULMz1tY

ShownWorkspaceSource.park_for_switch() parks the native surface without
tearing down the transcript or binding.  NativeSessionSurface.activate()
detects the intact widget tree and skips the full acquire/restore cycle.
MainScreen.prepare_presentation() skips sidebar/content preparation for
warm tabs.

retire() is unchanged — eviction and lifecycle tests see the full contract.
park_for_switch() is the switch-specific fast path on WorkspaceSource,
defaulting to retire() for cold states.

Warm switch: 52 ms (was 69 ms).  5 retirement+editor tests pass.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RnH6dVGXdhEBgsWULMz1tY
Copilot AI balanced review requested due to automatic review settings November 12, 2026 04:37
@trissim
trissim merged commit d9751e5 into main Nov 12, 2026
2 checks passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota. Try requesting a review at a lower effort level.

An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants