Skip to content

Diagnose native Windows process exits (0xC0000142 / 0xC0000005 / 0xC0000409) seen in extension telemetry #464

@eleanorjboyd

Description

@eleanorjboyd

Summary

Python Environments extension telemetry (May 25, 2026 report) shows small but real counts of native Windows process-exit codes on PET v1.33 over 7 days:

Exit code Meaning Events Machines
0xC0000142 DLL initialization failure 90 11
0xC0000005 Access violation 49 12
0xC0000409 Stack buffer overrun 30 3

PET has no panic::set_hook, no catch_unwind at the JSON-RPC dispatcher, and no shutdown event. We currently cannot attribute these on our side.

Tasks

  • Pull SQM IDs from the extension team for the affected cohort.
  • Cross-reference with the JSON-RPC payload right before exit (the extension may have it in the last pet.process_restart event).
  • Once a crash hook is in place (tracked separately), wait for repro on a real machine.

Notes

This issue is mostly blocked on data from the extension team. The fix — adding a panic hook and a crash sentinel JSON-RPC notification — will be a separate issue; this one tracks the diagnosis.

Context

Filed in response to the Python Environments extension team's May 25, 2026 regression report. Volume is small (~150 events / 7d across the three codes) but the machine counts suggest a persistent crash for a subset of users rather than a one-off. Worth diagnosing now rather than after volume grows.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugIssue identified by VS Code Team member as probable buginfo-neededIssue requires more information from poster

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions