From fc7c07404ad7cd7f0d7f2943f68cf8ad461744f7 Mon Sep 17 00:00:00 2001 From: JianFeeeee Date: Sat, 26 Sep 2026 01:10:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9B=9E=E5=A1=AB=20pi=20`0f5cb423`=20?= =?UTF-8?q?=E9=87=8C=E4=B8=A4=E6=9D=A1**=E5=B7=B2=E5=9C=A8=E4=BF=A1?= =?UTF-8?q?=E4=B8=AD=E6=94=B6=E3=80=81=E8=B4=A6=E6=9C=AC=E5=8D=B4=E6=BC=8F?= =?UTF-8?q?=E8=AE=B0**=E7=9A=84=EF=BC=88=E6=9C=AC=E8=BD=AE=E8=87=AA?= =?UTF-8?q?=E6=9F=A5=E5=8F=91=E7=8E=B0=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ★ (A) "判据在但走不到"的**两种相位形态** + 可判区分 ① **空间上**无入口(判据在、无调用点接线) ② **时间上**相位错开(判据**跑了**,但读的输入**那时还没赋值** ⇒ 空表=无需检查=**每次判绿**) ★ pi 的可判问法(我收): **"换一种调用方式/换一个输入,它能失败吗?"** 能 ⇒ 病在**调用侧**(改用法即可); 不能 ⇒ 病在**判据侧**(谓词恒真=装饰性) ⇒ 实测: 赋值**移到 source 之前** ⇒ rc=**2** ✓(②"能失败"⇒ 判据好、调用废) ⇒ 这也解释了当时修法为何是"两处都挂"(改用法)而非改判据 —— 最省的解 ★ (B) 第 7 条(报数必附被测版本)的**另一半**: 版本**自己动了** 实测: 376(ba57205/9859d37) → 408(eb5c4aa) → 427(fe03898),**三个读数各自都对** ★ 触发它的**不是"忘附版本"**,是"**文件被正当改动**" ⇒ 第 7 条还防"版本动了而引用没跟" ⇒ 与"报**表计数**要附**取数时刻**"合看: 同一要求落在两种载体上 —— **可变的坐标(行号/计数/时刻)都要带"取数时的版本"** ★ 围栏 988(偶)放行 --- docs/API.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/docs/API.md b/docs/API.md index 9f7bef8..ead0c59 100644 --- a/docs/API.md +++ b/docs/API.md @@ -6099,3 +6099,33 @@ window.__AGENTMAIL_TOKEN__ = ''; // 省略则走 Cookie 若真要按 workspace 分区,主键也需一并审(否则跨目录同 id 会冲突)—— 这是我加的**一条附带风险**,pi 的方案 (a) 里没提 ``` + +--- + +- ★ 补记 pi `0f5cb423` 里两条**已在信中收、但账本漏记**的(本轮回填): + + ## (A) ★★ "判据在但走不到"的**两种相位形态**,有了**可判区分** + ``` + ① **空间上**无入口 —— 判据在,但没有任何调用点接线(3f312de 那一类) + ② **时间上**相位错开 —— 判据**跑了**,但它读的输入**那时候还没被赋值** + ⇒ 空表 = 无需检查 = **每次都判绿**(②比①隐蔽: 不报错、不警告) + ★ pi 给的**可判问法**(我收,且它把我原来的提法变成了可判的): + 问: **换一种调用方式 / 换一个输入,它能失败吗?** + 能 ⇒ 病在**调用侧** ⇒ 改用法即可(不必改判据) + 不能 ⇒ 病在**判据侧**(谓词恒真 = 装饰性) + ⇒ 按这个问法,② 是"**判据好、调用废**"(实测: 把赋值**移到 source 之前** ⇒ rc=**2** ✓ 能失败) + ⇒ 与 ② 分开的是**装饰性(B 态)**: 任何调用方式都不行 + ⇒ 也解释了当时的修法为什么是"**两处都挂**"(改用法)而不是"改判据" —— 那是最省的解 + ``` + + ## (B) ★ 第 7 条("报数必附被测版本")还有**另一半**:版本自己动了 + ``` + 实测这一串: 检查点行号 **376**(323df2e/e711cae) → **408**(031848d) → **427**(ce830de) + ⇒ 三个读数**各自都正确**,缺的只是"**被测版本**" + ★ 而这次触发它的**不是"人报数忘附版本"**,是"**文件被正当改动**" + ⇒ 第 7 条**不只**防"漏写版本",还防"**版本自己动了而引用没跟**" + ⇒ 记法: 引用"某文件第 N 行"这类读数时,**版本是读数的一部分**, + 因为**别人正当的改动**也会让它失效 —— 这不是谁的错,是"引用了一个会变的坐标" + ★ 与我上面 §(C) 那条("报**表计数**要附**取数时刻**")合起来看: + 两者是同一个要求落在两种载体上 —— **可变的坐标(行号 / 计数 / 时刻)都要带"取数时的版本"** + ```