1.0.61 regression: repeated 0xC0000005 ACCESS_VIOLATION on Windows (clean on 1.0.60, survives cache re-extract)
- Ngôn ngữ chính
- Shell
- Star
- 11.2k
- Fork
- 1.9k
- Merge trung bình
- 14 giờ 16 phút
- Pull request đã merge (30 ngày)
- 6
Mô tả
### Describe the bug
Copilot CLI **1.0.61** crashes repeatedly on Windows with exit code `-1073741819` (`0xC0000005` — ACCESS_VIOLATION). This is a **version regression**: 1.0.60 ran clean for 3 days, then the update to 1.0.61 produced **19 crashes in a single day**.
Critically, the crash **survives a clean re-extract** of the native package cache — so it is **not** binary corruption. Deleting `%LOCALAPPDATA%\copilot\pkg\win32-x64\1.0.61` forced a fresh re-extract of clean bits, and the process still crashed 5 more times immediately after. A `winget uninstall`/`install` of 1.0.61 also did not help (winget does not touch that cache). This points to a genuine code defect in the 1.0.61 build.
### Affected version
- **Broken:** 1.0.61 (WinGet)
- **Last stable:** 1.0.60 (0 crashes over 3 days of use)
### Crash frequency by version (Windows Application Event Log, Event ID 1000, Exception code `0xc0000005`)
| Version | Crashes | Window |
|---------|---------|--------|
| 1.0.57 | 5 | 06-04 → 06-07 (occasional) |
| 1.0.58 | 0 | clean |
| 1.0.59 | 0 | clean |
| 1.0.60 | 0 | clean (3 days) |
| **1.0.61** | **19** | **06-10 (single day)** |
### Fault signature
The faulting module is `copilot.exe` itself, with fault offsets **clustering in one code region**, plus several crashes where the faulting module is `unknown` and the offset is a near-null / wild address (indicative of a corrupted call/jump target, e.g. a bad callback or JIT path):
```
14:50:38 mod=copilot.exe ec=0xc0000005 off=0x0000000001aa41dc
14:36:27 mod=unknown ec=0xc0000005 off=0x0000019b95607d79
14:36:14 mod=copilot.exe ec=0xc0000005 off=0x0000000001aa41b0
14:35:11 mod=unknown ec=0xc0000005 off=0x0000000000000001
14:23:31 mod=copilot.exe ec=0xc0000005 off=0x0000000001aa41cc
12:03:24 mod=copilot.exe ec=0xc0000005 off=0x0000000001aa423c
11:59:40 mod=copilot.exe ec=0xc0000005 off=0x0000000001aa412f
```
The consistent `copilot.exe + 0x1aa41xx` cluster suggests a single defective code path; the `mod=unknown` jumps to `0x1` / `0x19b95607d79` suggest control-flow corruption (bad function pointer / callback).
### What I ruled out
- **Not binary corruption** — deleted `%LOCALAPPDATA%\copilot\pkg\win32-x64\1.0.61` to force a clean re-extract (re-extracted 14:16:51); **5 more crashes on the fresh bits** (14:23 → 14:50).
- **Not a stale winget install** — `winget uninstall` + reinstall of 1.0.61 had no effect (winget does not refresh the `%LOCALAPPDATA%\copilot\pkg` runtime cache).
- **Not a stale multi-version cache** — pruned to current + 1 rollback; no change.
### Environment
- **OS:** Windows 11 (10.0.26200), x64
- **Node.js:** v24.11.1 (bundled with copilot.exe)
- **Install method:** WinGet (`GitHub.Copilot_Microsoft.Winget.Source_8wekyb3d8bbwe`)
- **Launcher:** Agency wrapper — `agency.exe copilot -- --agent general-frodo --yolo`
- **MCP servers:** ~20 configured (teams, kusto, icm, sharepoint, planner, mail, word, workiq, m365-*, enghub, es-chat, msft-learn, bluebird, etc.)
- **Copilot plan:** Enterprise
- **Native module:** `pkg\win32-x64\1.0.61\prebuilds\win32-x64\cli-native.node` (~0.73 MB)
### Workaround
Roll back to 1.0.60 and pin:
```powershell
winget install GitHub.Copilot --version 1.0.60 --uninstall-previous --silent --accept-package-agreements --accept-source-agreements
winget pin add GitHub.Copilot --version 1.0.60
```
### Possibly related (but distinct)
- #2387 — intermittent 0xC0000005 during AI model requests (v1.0.13); non-deterministic, runs fine for a while. This report differs: it is **version-correlated** (clean 1.0.60 → broken 1.0.61) and far more frequent.
- #2702 — 0xC0000005 on **first launch after auto-update** (race condition; retry succeeds). This report differs: crashes **persist across relaunches and a clean re-extract**, not a one-time launch race.
- #2608 (closed) — 0xC0000005 from `win_error_mode.node` in v1.0.22 (same native component family). Possibly the same area regressed in 1.0.61.
### Ask
Please confirm whether a known change landed in 1.0.61 affecting the native engine / a callback path on Windows x64, and whether a 1.0.62 fix or 1.0.60 re-promotion is planned.
Hướng dẫn đóng góp
Hướng nghiên cứu
Start by reproducing the Windows x64 crash with Copilot CLI 1.0.61 and compare it with 1.0.60, focusing on the bundled native module at pkg/win32-x64/1.0.61/prebuilds/win32-x64/cli-native.node. Use the reported Event ID 1000 signatures and repeated failures after cache re-extraction to narrow the regression. Done means identifying the 1.0.61 change or path responsible and verifying that a subsequent build no longer produces the access violations.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- node.js
- Lĩnh vực
- cli, operating-systems
- Loại issue
- Lỗi
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức độ hoạt động
- Ít trao đổi
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 35/100