Files
MailUI4Agents/client/electron
JianFeeeee b7db72bd48 fix(套件): 自检 4 的锚点改成**运行时拼**(搜索键不进搜索者源码)—— 治位置依赖,不只治位置
dsh(a673cf13)指出上一版 `lastIndexOf` 只治**位置**("可执行那处在更后面"),
正确性仍依赖"锚点字面量只出现两次且顺序稳定",而位置是会被搬动的 —— 第 7 例就是搬出来的。

改法:锚点在运行时拼接,源码里不存在完整的搜索键:
    const GATE_START = 'const dueStatic = STATIC_ONLY' + '.filter';
    const GATE_END   = 'const probeSummar' + 'y = ';
(`GATE_END` 必须一起拼:只拼 `GATE_START` 时实测 `indexOf(GATE_END)` 命中自检自己那行,
  `to < from` ⇒ 直接走"找不到到期闸区块"的 fail-closed 分支变红 —— 说明兜底在工作,但锚点得拼全。)

实测(pi):
- 正常跑:`ok 4 - 到期闸是记账而不是 exit`、汇总照常;
- 变体(把 `process.exit(1)` 塞回 `dueFailed = true;` 之后):`✗ 套件自检 4` 当场打出来
  (报文:到期闸区块里又出现了 process.exit());撤销后文件字节恢复。
- 自匹配兜底断言(区间里不许出现 `selfSrc.indexOf`)保留。
2026-09-15 12:32:40 +08:00
..