Skip to content

Fix VS Code freezes on long Reasonix chats - #13

Merged
SivanCola merged 1 commit into
mainfrom
codex/fix-webview-freeze
Aug 3, 2026
Merged

Fix VS Code freezes on long Reasonix chats#13
SivanCola merged 1 commit into
mainfrom
codex/fix-webview-freeze

Conversation

@SivanCola

Copy link
Copy Markdown
Owner

Summary

  • replace per-update full chat snapshots with revisioned, coalesced transcript patches
  • stop hidden Webviews and editor selection changes from triggering unnecessary rendering
  • bound transcript DOM rendering and persist only lightweight Webview UI state
  • add long-history regression coverage

Root cause

Every editor selection change and every ACP streaming chunk sent the complete conversation to the Webview. The Webview then persisted the full snapshot, cleared the transcript, reparsed Markdown, and rebuilt every message node. Session cost therefore grew with both history size and chunk count until the renderer became unresponsive.

Impact

Long or restored Reasonix sessions now update incrementally. The Webview recovers from missed revisions with a full snapshot, pauses work while hidden, renders the latest 200 items by default, and lets users load older messages in bounded batches.

Fixes #7

Validation

  • npm run lint
  • npm test — 56 tests passed
  • VS Code 1.131 Extension Host integration suite
  • npm run package:vsix
  • npm run verify:vsix-contents
  • npm audit --omit=dev --audit-level=high

@SivanCola
SivanCola marked this pull request as ready for review August 3, 2026 15:51
@SivanCola
SivanCola merged commit 16fcfe2 into main Aug 3, 2026
1 check passed
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.

打开聊天视图后 VS Code 窗口无响应

1 participant