zai-org / zai-org/feedback

后台长时间运行 agent 任务约 1~2 小时后渲染进程崩溃(白屏),渲染进程内存持续增长

Open
#332 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

priority: P2 status: 待评估 type: Bug
Dominant language
No language data
Stars
22
Forks
1
PR merge metrics
No merged PRs in 30d

Description

提交前确认 · Pre-submission checklist
  • 我已搜索过现有 issue,确认这不是重复 / I searched existing issues and confirmed this isn't a duplicate.
  • 我已阅读 CONTRIBUTING.md / I've read CONTRIBUTING.md.
问题类别 · Category

稳定性 / 崩溃 · Stability / Crash

涉及的 Agent 框架 · Agent framework

ZCode Agent(自研)

严重程度 · Severity

阻塞使用 · Blocking (无法使用核心功能 / core function unusable)

复现频率 · Reproducibility

必现 · Always

问题描述 · Description

桌面端后台运行长时间高输出的 agent 任务(如数学计算类连续任务,或两个模型并行后台跑),约 1~2 小时后界面白屏。日志确认渲染进程崩溃([crash-capture] render-process crashed),主进程存活,重启后恢复正常,再次长跑复现。崩溃前渲染进程工作集以约 12MB/分钟持续增长(455→492MB/3min 实测采样),疑似渲染进程内存泄漏;Windows 事件日志 8/14 曾对 ZCode.exe 记录 RADAR_PRE_LEAK_64(内存异常增长预警),崩溃间隔与内存累积速率定量吻合。

复现步骤 · Steps to reproduce
  1. 桌面端开一个会话让模型后台跑长时间高输出任务(连续数学计算,持续输出 1~2 小时)
  2. 期间可同时让第二个模型后台跑任务(双开时更明显)
  3. 约 1~2 小时后界面白屏
  4. ~/.zcode/v2/logs 中出现 [crash-capture] render-process crashed
  5. 重启后可再次复现(GPU 模式与 --disable-gpu 软渲模式均复现)
期望表现 · Expected behavior

长时间后台任务运行期间渲染进程内存保持稳定,不崩溃不白屏。

实际表现 · Actual behavior

渲染进程内存持续增长(约 12MB/min),1~2 小时后崩溃白屏。详见描述与下方崩溃数据分析。

ZCode 版本 · ZCode version

3.8.1.5310(Electron 41.0.3)

设备 / 系统 / 浏览器 · Device / OS / Browser

Windows 11 桌面端 (10.0.26200),64GB 内存

截图 / 录屏 / 日志 · Screenshots / Recordings / Logs

崩溃转储数据分析(本地 crashpad 转储,~/.zcode/v2/crash/archive):

  • 3 次访问违例(0xC0000005)的崩溃线程栈回溯共享同一条调用链(ZCode.exe 偏移 +0x5231716 / +0x525F531 / +0x52E1340 / +0x52B79BC / +0x52CB947 / +0x52601C1 / +0x52A7CBA / +0x522E6D0 / +0x52BC725,集中在 0x52xxxxx 渲染代码区);
  • 2 次断言自杀(0x80000003)崩溃点完全同址:ZCode.exe+0x653B745;
  • 1 次非法指令(0xC000001D),另一路径单次。

已排除:清空渲染缓存后 69 分钟复发;--disable-gpu 软渲模式下 1h51m 后同样崩(排除 GPU 合成路径);崩溃栈中无显卡驱动模块;系统内存充足。

可提供:7 份完整 dmp + 每半小时内存监控曲线。remoteCrashReporterEnabled=true,贵方服务器应已收到对应崩溃记录。另见 #331(同内容早期提交)。

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the logs in ~/.zcode/v2/logs and the crash dumps in ~/.zcode/v2/crash/archive, then reproduce the long-running high-output task on Electron 41.0.3 in both GPU and --disable-gpu modes. Compare memory growth and crash reports against the supplied monitoring data; done means the renderer remains stable without white-screen crashes during the reported workload.

Written by the indexing model from the issue text.

Assessment

Tech stack
electron
Domain
desktop, performance
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.