★★★★ 修 · 反向对照的"见证力"缺陷: 每条件各配一条"**只踩它**"的样本(_pc_bad 原样本被两条件同时拒 ⇒ 对两条都无见证)
★★ 缺陷(承上一条机制): 反向对照**只有一条**样本 `. /tmp/not-our-lib/env-defaults.sh.other`,
而它**同时**被两条独立条件拒 —— ① 前边界 `[^[:alnum:]_.-]lib/env-defaults`(`-lib` 的 `-`)
② 尾锚 `["']?[[:space:]]*$`(`.other` 结尾)⇒ **对两条都没有见证力**
⇒ 删掉任一条条件,对照**照样绿**(实测: 两个锚各自都能被单独删掉而不被发现)
★ 修(+2 条样本): ① `. /tmp/not-our-lib/env-defaults.sh`(**只踩前边界**,结尾合法 `.sh`)
② `. /tmp/zzz/lib/env-defaults.sh.other`(**只踩尾锚**,前面合法 `/`)
★ 变异测试(这才是判据):
删【前边界】: 旧样本 ⇒ rc=0 **无人报** / 新样本 ⇒ rc=1 报"只在前边界违规的异库文件" ✓
删【尾锚】 : 旧样本 ⇒ rc=0 **无人报** / 新样本 ⇒ rc=1 报"只在尾锚违规的异库文件" ✓
⇒ **load-bearing 确认**(退回旧样本则两锚都删得不知不觉)
★ 且**报的是哪一句**能**指认是哪个锚**被删,不是笼统"域偏宽" ⇒ 诊断可用
★ 对照/回归(源 = 提交对象 + 工作区判据):
全绿对照(不注入、不删锚) ⇒ rc=0、FAIL=0 ✓
全红对照(注入 1 真违规) ⇒ rc=1、报 `deploy/install.sh:135 用了裸赋值` ✓
真树基线 rc=0、`(3 个调用者,裸赋值 0 处)`、FAIL=0 ✓(新样本**不误伤**真仓)
`bash -n` rc=0 ✓ / criteria-hygiene **10/10** ✓
★ 一般化: **每个"拒绝某类输入"的条件,都要有一条只被它拒的样本** —— 否则那个条件是**没人看着的**;
"多条条件一起拒"会让**全部相关条件**同时失去见证(= **判定侧的共模**,与输入侧共模对偶)
★ 围栏 1140(偶/配对无缺)
This commit is contained in:
25
docs/API.md
25
docs/API.md
@ -7275,3 +7275,28 @@ window.__AGENTMAIL_TOKEN__ = '<user_key>'; // 省略则走 Cookie
|
||||
⇒ ⇒ 我上封的自我修正(把射程写窄)**方向是对的,但写歪了**:
|
||||
"域偏宽没有守卫"应写成 **"域偏宽的【前边界那一半】没有守卫;【谓词退化】那一半有"**。
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
- ★★★★ **修**: 反向对照的"见证力"缺陷(承上一条机制)—— 每条件各配一条"**只踩它**"的样本
|
||||
```
|
||||
缺陷: 反向对照**只有一条**样本 `. /tmp/not-our-lib/env-defaults.sh.other`,
|
||||
而它**同时**被两条独立条件拒(前边界 + 尾锚)⇒ **对两条都没有见证力**
|
||||
⇒ 删掉任一条条件,对照**照样绿**(实测,见上一条)
|
||||
修(`deploy/check-require-declaration.sh` 反向对照块,+2 条样本 +解释):
|
||||
① `. /tmp/not-our-lib/env-defaults.sh` ← **只踩前边界**(结尾合法 `.sh`)
|
||||
② `. /tmp/zzz/lib/env-defaults.sh.other` ← **只踩尾锚**(前面合法 `/`)
|
||||
★ 变异测试(**这才是判据**):
|
||||
删【前边界】: 旧样本 ⇒ rc=0 **无人报 ★** / 新样本 ⇒ rc=1 报 **"只在前边界违规的异库文件"** ✓
|
||||
删【尾锚】 : 旧样本 ⇒ rc=0 **无人报 ★** / 新样本 ⇒ rc=1 报 **"只在尾锚违规的异库文件"** ✓
|
||||
⇒ **load-bearing 确认**: 退回旧样本则两个锚都删得不知不觉;加上新样本则各自被打红。
|
||||
⇒ ★ 且**报的是哪一句**能指认是**哪个锚**被删(不是笼统"域偏宽")⇒ 诊断可用。
|
||||
★ 对照/回归(源 = 提交对象 + 工作区判据):
|
||||
全绿对照(不注入、不删锚) ⇒ rc=0、FAIL=0 ✓
|
||||
全红对照(注入 1 处真违规)⇒ rc=1、报 `deploy/install.sh:135 用了裸赋值` ✓
|
||||
真树基线 rc=0、`(3 个调用者,裸赋值 0 处)`、FAIL=0 ✓(新样本**不误伤**真仓)
|
||||
`bash -n` rc=0 ✓ / criteria-hygiene **10/10** ✓
|
||||
★ 一般化(已并进上一条记法): **每个"拒绝某类输入"的条件,都要有一条只被它拒的样本** ——
|
||||
否则那个条件是**没人看着的**;而"多条条件一起拒"会让**全部相关条件**同时失去见证
|
||||
(= 判定侧的共模)。
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user