Files
MailUI4Agents/client/electron/test
JianFeeeee 21332de5e7 test(判据): criteria-hygiene 的 AGC 探针自检改用临时仓合成对照
## 为什么要改

那条判据("AGC 真身从未进过远端历史")的自检原本要求
**本地可达历史里确实有该路径**,用它证明 `git log -- <路径>` 这套查法可用。

★ 那个前提**已经不成立**了:真身**从未被提交过**
  (`client/harmony/.gitignore:26` 一直在挡它),所以本地历史里
  本来就查不到 ⇒ 这条判据**永久红、且无法自查**。
  (注释里引用的 `7647c24` / `320c93f` 在本树也**不存在**。)

而判据的分诊早已确认:真身确实从未进过历史(被 ignore 正确挡住),
红的是**探针的假设**失效,不是缺陷存在。

## 改法:合成阳性 + 阴性对照

在**临时仓**(`mkdtemp`)里造两个提交 —— 一个含待查路径、一个不含 ——
对两者跑同一套查法,断言**双向有分辨力**。临时仓不碰本仓任何状态
(`GIT_CONFIG_GLOBAL=/dev/null` 避免读用户配置),造完即删。

为什么**必须**有阳性对照:一条用来抓泄露的判据,
**正确工作**时恰好永远看到"空"(没泄露 ⇒ 查不到)。
**"真值恰好是空"与"查法坏了"在输出上同形**(都是空串 + exit 0)
⇒ 真实历史里没有阳性样本可用,只能现造。

## ★ 阴性对照第一版写错了(变异测试打出来才发现)

我先写成查一个**真实存在**的无关文件 `unrelated.txt`。
变异把它改成查阳性那个 `leaf.json`,判据**照样绿** ——
因为查 unrelated 本来就该命中,那不叫"查法在乱报"。

⇒ 阴性对照要证明的是「**不存在的**目标查不到」,也就是**查法有边界**。
改成查 `no-such-file-ever.json`,并**额外**验一次 sanity
(真实但无关的文件**应当**查得到)—— 两个方向都对才算有分辨力。

改后双向变异都能打红(阳性查不到 ⇒ 红;阴性恒命中 ⇒ 红)。
2026-09-28 08:46:02 +08:00
..