A 方案落地:观察式复现单 + 采样器(第一组对照已拿到,且修正上一轮假设——事件速率不是充分因,嫌疑收窄到大文件写入)

This commit is contained in:
WorkBuddy committed 2026-10-09 06:39:21 +08:00
1 parent 0a5af434eb
commit add273fc22
4 files changed
+167

No files matched your search

+8
View File
@@ -241,6 +241,14 @@
**内存暴涨的模式是:会话活跃期(尤其大文件读写)触发事件洪峰,daemon 内存随事件速率同步倍增;而 V8 能否回收是随机的 —— 16:25 收回了、16:53 没来得及就被杀。** 所以问题不在「内存高」,在 **「一个会话周期就能把 daemon 推高 6 倍(160→957MB),且回收时机不可控」**。
## 06:42 · A 方案落地:观察式复现 + 意外拿到第一组对照(**修正了上一轮的假设**)
- **观察窗口正好开着**:我派的那棒(会话 `cc07347c`=`[执行]-[产品规划]-重做界面补闸门与上报(第二棒)`)**06:32:15 起跑、已抢到域锁** ⇒ 侧面证明 06:2x 的释放动作生效(释放后在册只剩 1 条他人锁,它成功 claim)。
- 🔴 **意外收获(第一组对照)**:这棒的**事件速率与暴涨组同量级**(`received` 每分钟 `+20758`/`+11422`),而内存只在 **116–202MB 之间锯齿**(GC 持续回收,rss 356–460MB)⇒ **事件速率不是内存暴涨的充分因** —— 上一轮那个「27–31KB/事件」的读数被这组对照**降级为伴随现象**。
- 两组唯一明显差别:暴涨组当时**一次写入 133KB 大文件**(`ui/mcn-workbench.html`)并连着出 5 条 `[ResourceReport] artifact observed`。⇒ **嫌疑收窄到「大文件写入/artifact 处理」这一侧**。
- 产出:`daemon-内存观察-复现单.md`(三样必采项 + 现成命令 + 判据 + 第一组记录);采样器 `mem_watch.py` 落**工作区根**(⛔ 不放 `tmp/`,那里会被清理),已起后台采样(5 分钟/20 秒一条 → `tmp/mem-watch-20261009.csv`)。
- ⛔ 未调 daemon 启动参数、未重启 daemon、未打断任何会话(候选 B 的代价已否掉)。
## 06:30 · 结果检查第 32 棒 —— 锁已释放,本轮零派活
- 本棒(自动化 `c9779455`,第 32 棒)现取五样:`state.py` 仍不存在、`taskgraph.json` 仍不存在、台账 16 条(15 done + 1 blocked)、`lifecycle`=进行中、`acceptance` 3 过 + 1 不过。