Skip to content

Desktop: renderer unresponsive on startup — marked.js walkTokens synchronous Markdown AST traversal blocks UI thread #32452

Closed as not planned

Description

@ACbye

Description

OpenCode Desktop v1.17.7 on Windows 10 x64 crashes immediately after startup. The renderer process becomes unresponsive within ~60 seconds of launch, even without any user interaction — just opening the app and entering an existing project triggers the freeze.
This is the same root cause as issue #30906 (renderer unresponsive due to synchronous CPU-intensive operations on the UI thread), but triggered through a different code path: Markdown AST traversal (marked.js walkTokens) rather than diff computation (Myers execEditLength).
The app was auto-updated from v1.15.13 → v1.17.3 → v1.17.7. v1.15.13 worked fine; the regression started with the v1.16.0 Electron update.
Key log evidence:
window.log (16:33:49):
renderer unresponsive { window: 'main', currentURL: 'oc://renderer/index.html' }
Unresponsive samples (9 total) — all stuck in synchronous Markdown rendering:
at B.walkTokens (main-BR8G9WSs.js:11645:5) ← marked.js sync AST walk
at session-composer-state-C0aC1gfR.js:3396:20 ← Promise.all waiting
→ Markdown → PacedMarkdown → Show component chain ← SolidJS reactive cascade
window.log (16:36:03) — second session, same pattern:
renderer unresponsive after only 57 seconds of uptime
at h → q → J → vn → heal → stream (session-composer-state)
→ Markdown component render via SolidJS createResource/createComputed
manifest.json: uptime=69.88s — app killed within ~70 seconds
server.log at crash time:
global event disconnected
Secondary (non-fatal) issues observed across all sessions:

  • @opencode-ai/plugin@local install failure (every 30-120s retry loop)
  • duplicate skill name: find-skills (3 locations)
  • ghostty-vt warning: unimplemented mode: 25
  • Occasional fetch terminated errors to siliconflow API

Plugins

None (default installation, no custom plugins)

OpenCode version

v1.17.7 (auto-updated from v1.17.3, originally v1.15.13) Electron 42.3.3 / Chrome 148.0.7778.218 / Node 24.15.0 Windows x64, NSIS installer at %LOCALAPPDATA%\Programs@opencode-aidesktop

Steps to reproduce

  1. Install OpenCode Desktop v1.17.7 on Windows 10/11 x64
  2. Open an existing project with chat history (any project with prior sessions)
  3. Wait 30-60 seconds — no interaction needed
  4. Renderer becomes unresponsive, window freezes, process killed after ~10s watchdog timeout
    This happens on EVERY launch, not intermittently. The app is unusable.

Screenshot and/or share link

window.log

window.log

Operating System

Windows 10 x64 (build 19045)

Terminal

N/A — using Desktop app, not TUI

Activity

  1. github-actions commented on Jun 15, 2026

    @github-actions
    Contributor

    This issue might be a duplicate of existing issues. Please check:

    If your issue is distinct from these (e.g., triggered specifically by Markdown AST traversal via marked.js walkTokens rather than diff computation), please clarify the difference so maintainers can track it separately.

  2. ACbye commented on Jun 16, 2026

    @ACbye
    Author

    This issue differs from the referenced ones in trigger path:

    This issue is specifically triggered by Markdown AST traversal: marked.js walkTokens → PacedMarkdown → Show → stream → heal chain in session-composer-state. The call stack is 100% reproducible at every launch within 30-60 seconds, even with zero user interaction. Stack trace available in attached debug bundle.

    Please keep this open as a distinct Markdown-rendering-specific renderer freeze.

  3. changed the title [-]OpenCode Desktop v1.17.7 on Windows 10 x64 crashes immediately after startup.[/-] [+]Desktop: renderer unresponsive on startup — marked.js walkTokens synchronous Markdown AST traversal blocks UI thread[/+] on Jun 16, 2026
  4. github-actions commented on Aug 15, 2026

    @github-actions
    Contributor

    To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.

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

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions