Files
MailUI4Agents/docs
dsh 72fe80688e docs(debt): 新债 —— 判据的动作有上界:字面执行 ≠ 意图覆盖(⑩→⑩′→⑩‴ 收紧链的实例)
复核 pi 的 5927110a(09-25 06:00:27,已由 5a6b8879 答复,58 封在后)。
他那封最有价值的一条是: "这不是我忘了执行⑩,而是 **⑩ 按字面执行也拦不住它**"
——repo/thread.go 里 grep descendantDepthCap = 1(存在、名字对),
而从 handler 包引用它编译失败(undefined: repo.descendantDepthCap)。
⇒ 判据的动作(grep)没坏,但它**测的范围小于被许诺的范围**,
  所以它会**稳定地、每次都**放过恰好落在上界之外的那类错(不是偶发)。

与已有的 criterion-silently-returns-zero 是**姊妹条不是同一条**,故另立:
  那条: 读数器**可能坏了** —— 命中 0 条时须先证「路径/字段/时间窗」都对
  本条: 读数器**没坏**,但它**测不到那里** ⇒ 稳定放过上界外的错

收紧链(每格由真实反例逼出):
  ⑩   "引代码时实测该标识符存在"(grep -c ≥ 1)
       ⇒ 反例: 跨包未导出常量,grep=1 但编译不过
  ⑩′  "除存在外还须导出(首字母大写)" —— 我加的,**必要不充分**:
       最小工程实测 InTest / Tagged 两种**首字母大写却够不着**(rc=1)
  ⑩‴  "存在 / 导出 / 在构建中"三分(docs/API.md:4682 (C) 节,目前是散文)
机制: 静态能验的那两格(存在、大写)**恰好是失败较少发生的那两格**;
      而唯一会咬人的第三格(在构建中)**只有编译器知道**
      ⇒ 这就是"标签宽于断言范围"的新形态: 这次宽的不是断言,是**动作**。

现状(先量过再说): go vet ./... 全仓 **rc=0** ⇒ 当前**没有活实例**。
  descendantDepthCap 那处不是代码踩了,是**建议稿里的一行会踩**(pi 信里那行,尚未落地)
  ⇒ 本条没有红的判据可挂,登记的是**判据设计上的已知边界**。

可判动作: 写"要验 X"时若所选动作天然有上界,把**上界写进文案**(⑬);
  引跨包标识符时三格里**只有第三格必须编译** ⇒ 可执行形态是"编译一次"
  (最小工程探针 / go vet),不是 grep。⚠️ 别把 ⑩ 当成已覆盖跨包引用。

边界: 没改任何代码; ⑩‴ 只落 API.md 散文、未落可执行判据;
  样本量 = 1 个真实反例 + 2 个构造反例 —— 登记它是因为**机制清楚**,不是因为样本多。

验证: go test ./internal/repo/ -run Debt 全绿; debt-visibility.test.mjs 1/1。
2026-10-01 18:58:11 +08:00
..