JianFeeeee
a432ae6637
★ 我自己实测出判据的**第五个洞**: 防空转只判"集合空",**收窄发现域**(find)时集合非空 ⇒ 假绿且自检看不见;补**下界守卫**(调用者 ≥ 3)
★ 洞(pi 没报,是我顺着 pi 那句"_scan_text 内部再调 strip_comments 会共模"往下试出来的):
② 防空转判的是 `n_callers -lt 1`(**集合空**)
⇒ 把发现域**收窄**时集合**非空**(2 个)⇒ ② **不响**
⇒ 而收窄让**域外的违规整批消失** ⇒ 报"裸赋值 0 处"
实测(树上 install.sh:135 恰是裸赋值 `AGENTMAIL_REQUIRE="x"`):
把 `find deploy -name '*.sh'` 收窄成 `find deploy -name 'redeploy*.sh'`
⇒ rc=**0**、打"(2 个调用者,裸赋值 **0** 处)"
⇒ 且**"判据自检失败"出现 0 次** ⇒ 自检**看不见**域的问题
★ 自检看不见是**必然**的: 它用**自带样本**跑管线,走的是"匹配"那一层,
而**域**在它**上游**(哪些文件进入循环)⇒ 上游被削,下游自检无从察觉。
★ 补法: **下界守卫**(`AM_CALLER_MIN=3`,与 criteria-hygiene 的 `gates.length >= 3` 同一做法)
⇒ 修后同一变异 rc=**1** 并报"只找到 2 个调用者(下界 3)—— 发现域被**收窄**了" ✓
★ ⚠️ 残留(已写进判据注释,不声称完备): 下界只挡"收到 3 个以下";
若有人收到**恰好 3 个但换掉其中一个**,本守卫仍看不出 ——
补它需要"已知调用者名单"这种**会漂**的硬编码,我选择不写、只申报。
★ 变异矩阵(六向,全部真跑 + 还原复测):
[0] 三处违规(现状) ⇒ rc=1 ✓
[1] ★收窄 find(域变小) ⇒ rc=1 ✓(**新增守卫抓到**)
[2] ★域收到全空 ⇒ rc=1 ✓
[3] 共模(正则单点改错) ⇒ rc=1 ✓
[4] pi 的漂移(尾接吃违规行) ⇒ rc=1 ✓
[5] 匹配实现单点静音 ⇒ rc=1 ✓
非恒红: 在临时纯净副本上(三个调用者都合规)⇒ rc=**0**、报"3 个调用者,裸赋值 0 处" ✓
★ 记法: 我前四轮都在修"**判据读输入之后**"的洞(管道/通道/实现路径);
这一轮是"**哪些对象进入判据**"(域)—— 与 pi 的 ⑯′ 同族,但对象是**发现动作**而非谓词域:
⇒ **域不写死时,域的错误不会被任何下游守卫发现**(因为下游只看域内的东西)。
★ 另: 我没有动 `deploy/install.sh`(它现在是**并发会话**的变异现场 `AGENTMAIL_REQUIRE="x"`),
只在临时副本上做非恒红验证 ⇒ 全程未碰别人的在飞改动。
2026-09-25 07:31:32 +08:00
..
2026-09-25 06:51:25 +08:00
2026-09-14 08:38:33 +08:00
2026-09-13 11:06:01 +08:00
2026-09-15 07:00:35 +08:00
2026-09-25 07:01:36 +08:00
2026-09-24 04:15:30 +08:00
2026-09-18 04:07:26 +08:00
2026-09-12 11:36:25 +08:00
2026-09-25 07:31:32 +08:00
2026-09-14 23:33:11 +08:00
2026-09-14 20:35:01 +08:00
2026-09-25 06:51:25 +08:00
2026-09-21 07:14:41 +08:00
2026-09-14 15:51:40 +08:00
2026-09-15 11:21:00 +08:00
2026-09-25 06:27:09 +08:00
2026-09-25 06:51:25 +08:00
2026-09-25 06:51:25 +08:00
2026-09-06 15:18:06 +08:00
2026-09-02 20:05:51 +08:00
2026-09-13 11:06:01 +08:00
2026-09-13 11:06:01 +08:00
2026-09-14 08:38:33 +08:00