Skip to content

Desktop 1.18.25 (Win11): silent mid-stream process death — app-fatal exception 0xE0000008 after schema-rejection bursts; Crashpad dump available #46121

Closed as not planned

Description

@buicanhthai

Description

opencode-desktop-minidump-e1b39ff3-0314.zip

Plugins

No response

OpenCode version

No response

Steps to reproduce

Upstream issue body — paste-ready (created 2026-08-29)

Title (suggested): Desktop 1.18.25 (Win11): silent mid-stream process death — app-fatal exception 0xE0000008 after schema-rejection bursts; Crashpad dump available
Attach: ~\.tlf\crash-report\opencode-desktop-minidump-e1b39ff3-0314.zip (1.3 MB — contains the 50.8 MB Crashpad minidump e1b39ff3-6331-436c-a558-dce09b249dff.dmp)


Summary

The opencode desktop app (Windows) dies silently mid-stream roughly every 2–3 hours of heavy agent use: no UI error, no exit entry in any log. The local server status goes red; sessions in flight are lost. After the death, the spawned server log's final line is consistently global event disconnected, immediately preceded by a burst of schema rejection kind=Payload reason="Expected object, got undefined" WARNs.

We captured a Crashpad minidump for one occurrence: exception code 0xE0000008 — an application-defined fatal (deliberate app-side abort, exception address 0x0), not memory corruption. Attached (zipped, 1.3 MB).

Environment

  • opencode desktop 1.18.25 (packaged). Also reproduced on 1.18.21/1.18.23 — not specific to one release.
  • Windows 11 Pro, build 26200.9168
  • Multi-provider setup (OpenCode Go plan, OpenRouter, DeepSeek, SiliconFlow), long agent sessions with subagent fan-out, OneDrive-synced workspace

Cadence

4 crashes in one day (2026-08-29) at ~03:23, 06:38, 07:54, 08:42 UTC — every 2–3 hours under heavy streaming (server runs logging 126K–174K lines before death). Same signature on 08-26 and 08-28. Lighter runs do not die.

Evidence

Final log lines before death (08:42:39 UTC example):

08:42:38.130 WARN "schema rejection" kind=Payload reason="Expected object, got undefined"
08:42:38.194 WARN "schema rejection" kind=Payload reason="Expected object, got undefined"
08:42:38.953 WARN "schema rejection" kind=Payload reason="Expected object, got undefined"
08:42:39.032 WARN "schema rejection" kind=Payload reason="Expected object, got undefined"
08:42:39.071 INFO "global event disconnected"
<process dead — no further output>

Minidump header parse (Crashpad dump, 393 modules):

ExceptionStream code=0xE0000008 (application-defined fatal) addr=0x0

Related observations:

  • The schema rejection kind=Payload WARN storm is persistent and provider-agnostic (opencode-go, openrouter, deepseek) — peaked at 24,987 WARNs/day; persists after changing model tiers. It is a client-side payload-validation rejection, logged and continued — but our data shows deaths immediately following rejection bursts.
  • A prior crash logged main-process AbortError: Aborted (DOMException) stacks from app.asar/out/main/chunks/node-CoJ4vSfo.js:489498 across 4 sessions simultaneously.
  • New stream-error class in the same window: "Upstream idle timeout exceeded" (error_type=timeout), 4× on the OpenRouter route during the heaviest run.

Questions

  1. What does exception code 0xE0000008 correspond to in the desktop app?
  2. Is the schema rejection kind=Payload path known to reach a FATAL/abort downstream of the WARN?
  3. Can global event disconnected be made non-fatal / better surfaced instead of a silent process death?

Attachments

  • opencode-desktop-minidump-e1b39ff3-0314.zip (1.3 MB; unzips to the 50.8 MB Crashpad minidump)
  • Full opencode.log excerpts per crash window available on request (timestamps listed above)

Submitted by the TLF portfolio operator (heavy multi-agent daily use; happy to run instrumented builds or provide more dumps — we have a crash-response checklist that captures these in ~5 minutes).

Screenshot and/or share link

No response

Operating System

No response

Terminal

No response

Activity

  1. github-actions commented on Aug 29, 2026

    @github-actions
    Contributor

    This issue doesn't fully meet our contributing guidelines.

    What needs to be fixed:

    • The OpenCode version, Operating System, and Terminal fields are all left as _No response_. Please fill these in — they are required for bug reports.
    • The actual bug description is pasted into the Steps to reproduce field rather than the Description field. Please restructure the report to match the template (description, then clear reproduction steps).
    • Steps to reproduce are missing — the report describes symptoms and evidence but does not include a clear sequence of steps to trigger the crash.

    Please edit this issue to address the above within 2 hours, or it will be automatically closed.


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

    If you believe this was flagged incorrectly, please let a maintainer know.

  2. github-actions commented on Aug 29, 2026

    @github-actions
    Contributor

    This issue has been automatically closed because it was not updated to meet our contributing guidelines within the 2-hour window.

    Feel free to open a new issue that follows our issue templates.

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