Files
MailUI4Agents/deploy
JianFeeeee 8922ddc468 ★★ 修掉 pi 95e50126 所指**同一形状的第三处**(:407/:408 的 grep | head -1)—— 但实测它**不是同一个缺陷**(失效方向相反),并纠正我自己两次误判
★★ 形状: `_ph="$(grep -F "${_am_nonce}HEAD" <<< "$_probe_out" | head -1 | cut -d: -f1)"`
   与 pi 批的 `:102`(`strip | grep -n`)**逐字同构**: 都是"管道 + 会早退的读者"
   ⇒ 我若只报不改,就是**第三次**"知道规则、写在注释里、自己没照做"

★★★ 但它与 `:102` **不同族** —— 我实测把"形状相同"与"缺陷相同"分开了:
   · `:102` 静音 ⇒ `hits` 空 ⇒ 报"裸赋值 **0** 处" ⇒ 落**绿**侧(fail-open)✗
   · 本处静音 ⇒ `_ph` 空 ⇒ `:410 [ -z "$_ph" ]` ⇒ 落**红**侧(fail-closed)✓
     逐场景验证: `_ph` 空 / 取到错行 / 顺序反 ⇒ **三种都判红**
   · ★ 且生产者**输出上界=1 行是构造性的**(`_am_nonce` 运行期随机 ⇒ 静态 `$f` 不可能预先含它),
     不是"尺寸恰好装得下" ⇒ 我把巨量输出强喂给它(40 次): 141 出现 **40/40**,
     而**取值仍恒正确**(`head` 已拿到它要的那一行)—— 与 `:102` 的"值被丢掉"也不同
   ⇒ 记法: 修一条规则时,**"这处违不违规"与"这处会不会因此出错"是两个问题** ——
     前者看形状,后者看**失效方向**;**只有后者决定它是不是同一个 bug**
   ⇒ 仍改成无管道写法(`grep -m1` + `${x%%:*}`,成本为零),并让规则在全文件一致,
     免得下一次有人动掉 nonce 那个界时这处才第一次暴露

★★ 同时纠正我自己的**两次误判**(都在本轮现场抓到,记下来):
   ① 我报"放宽探针谓词 ⇒ 探针静默失效(rc=0)" —— **错的**: 我那次变异的
      `grep -E "." | head -1` 取到的**第 1 行正是探针行** ⇒ 它是**等价变异**,不是失效
   ② 我报"141 时取值损坏 40/40" —— **是我把期望值写错了**(写成 `1`,实际该是 `AMHEAD`);
      实测取值正确 **40/40**,取值错 **0/40**
   ⇒ 两次都是**判据写错**而非对象出错 —— 与我 `15c8f50` 那次"0 命中还写行号"同族

★ 验证: `bash -n` ✓;基线 rc=0(连测 5 次);注入裸赋值 ⇒ rc=1(非空转);
  探针目标变异仍被抓(删中间行 ⇒ rc=1);`criteria-hygiene` **10/10** 绿;生产未动
2026-09-26 01:39:56 +08:00
..