Forráskód Böngészése

docs(ac15): 把"全表作用域在真实数据上的症状"写进不变量测试注释

合成 fixture 只能证明"能红";**真实 26 棵树 / 86 行上的量级**才能一眼定位。
spdump 实测(写入测试注释):

```
全表作用域(错):
  I4 left  侧:10 个重复组、超额 65 行,left_val=1 出现 26 次
  I4 right 侧:11 个重复组、超额 57 行
  I5         :整表树宽 42 ≠ 2×86=172(差 −130)
按 root 分组(对):
  26 棵里 width<>2n 的棵数 = 0
```

⇒ 丢了 root 会一次报 100+ 条 I4、I5 差 −130;这个量级**不可能是实现错**,直接指向"作用域"。

验证:`go test -run TestNestingInvariants` ok | `go build ./...` OK | 55/55 未受影响
未 push。
Q 6 órája
szülő
commit
df72fc70a1
1 módosított fájl, 13 hozzáadás és 1 törlés
  1. 13 1
      internal/academic/dualrun/stage2/divide_nesting_test.go

+ 13 - 1
internal/academic/dualrun/stage2/divide_nesting_test.go

@@ -33,7 +33,19 @@ func TestNestingInvariants_ValidFixtureIsClean(t *testing.T) {
 //
 // 这条测试存在的唯一理由:**它能红**。如果实现改成全表作用域,它必须失败。
 //
-// 变异探针的实测结果(本轮真跑过,改 `nestKey` 去掉 root 后):
+// **真实数据上的症状(26 棵树 / 86 行,spdump 实测)—— 这才是这条不变量真正的检出力证明**:
+//
+//	全表作用域(错):
+//	  I4 left  侧:10 个重复组、超额 65 行,其中 left_val=1 出现 **26 次**(26 棵树各一个根)
+//	  I4 right 侧:11 个重复组、超额 57 行
+//	  I5         :整表树宽 42 ≠ 2×86=172(差 **−130**)
+//	按 root 分组(对):
+//	  26 棵树里 `width <> 2n` 的棵数 = **0**
+//
+// ⇒ 只要作用域丢了 root,I4 会一次报 100+ 条、I5 差 −130。**这个量级不可能是实现错**,
+// 一眼就能定位到"作用域"。这组数字比合成 fixture 更能说明问题,所以写在这里。
+//
+// 合成 fixture(两棵树同形)上的变异探针(本轮真跑过,改 `nestKey` 去掉 root 后):
 //
 //	I4 报 1 条:left_val=1 重复(a1 与 b1)
 //	I5 报 1 条:root=A|B 合并后 Σ(right−left+1)/2 = 5 ≠ 节点数 4(差 1)