Files
HomeAgent/cmd
JianFeeeee a25ba4b794 test(gui): 修 silent-start 判据的字节窗口假红(被注释挤爆)
## 问题

`make test` / CI 的 `npm test` 都红:

    ✗ 非静默时经 ready-to-show 显示 — 没有 ready-to-show → show()…

## 归因(逐提交二分)

    origin/main (7e4f1058)     通过
    2bbbb6b8 / bca791a1       通过
    3988c198 / 85d76ad4       通过
    878fd770                  通过
    7bd569ec                  ★ 失败   ← 引入点
    04c5883f / 5f12ea3d       ★ 失败

不是本次内核改动引入;是 7bd569ec(10-05「修长时间挂后台后打开白屏」)
把 `once` 改成 `on` 时**同时补了一段解释性注释**,把
`ready-to-show` 与 `show()` 的间距从 331 字符推到 558 字符,
而判据的窗口是硬编码 `{0,120}`。

**实现是对的,判据的字节窗口太小。**

## 修法

判据该断的是**结构关系**(ready-to-show 处理器的回调里有 show()),
不是两者相隔多少字符 —— 后者会随注释/排版无意义地红。

- 先去行注释再量(注释不该参与结构判定)
- 窗口放到 400(容纳该回调体,仍远小于「跑到别的函数里」的距离)

## 验证

- 修后 `node silent-start.test.mjs` 全部通过
- ★ 变异自证仍能红:删掉 ready-to-show 处理器 → 判据报红
  (证明不是把判据改松到什么都不抓)
- `make test` 全绿(go test + test-gui + csrc-test + check-csrc + check-codec-cgo-only)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-10-06 22:44:27 +08:00
..