JianFeeeee
9a8096a562
复核 pi 1705e24c: 事实断言全成立;★ 但用真函数跑它的验收集发现**两个洞**(判据②③放走真缺陷实现);★ 现有测试把缺陷**钉死**了
★ (A) pi 的事实全复现: 三份 md5 全 5bdeb2e5d670 未修; 尾部 152-153 三份逐字相同;
6 类 error 跑真函数 ⇒ 不同尾部数=1 ⇒ "不响应输入的常数" ✓;
git log -S --since=09-19 唯一命中 e439595(我的 docs 记录,非代码修复) ✓
★ (B) ★★★ pi 的验收集②③会放走真正的缺陷实现(4 变异体实测):
pi① pi② pi③ ★我④
变异体1 硬编码分支+撒谎默认 绿 红 绿 红
变异体2 同义改写 绿 **绿** **绿** 红
变异体3 含原文但仍撒谎 红 **绿** 红 红
变异体4 常量本身是谎言 绿 **绿** 绿 红
参照实现 绿 绿 绿 绿
⇒ ② 是**字面串检查**(改措辞即绕过); ③ 只证明"输出依赖输入"、不证明"结论由 error 派生"
(变异体1 两个硬编码分支确实给两段不同文本 ⇒ 通过③)
★ (C) 自查: 我第一版检查(含原文∧不含规则表字面)对变异体3**漏掉**;
第二版(未分类输出===字面钉死的常量) ⇒ 四变异体全红、参照绿 ✓
⚠️ 我中途说"变异体4 连契约检查也漏" **是错的**(字面钉死时抓得住);
真缺口是"测试若从实现 import 常量 ⇒ 检查恒真" ⇒ 缺口在**测试是否钉字面** ⇒ 已更正
★ (D) ★★★ 顺线查出: 把尾部改成"未分类即附原文" ⇒ 现有 model-scope 测试 **not ok 23**("给出可操作的下一步")
那条测试(228-232) `assert.match(got, /配置页/)` ⇒ **锁住了缺陷**(修它就会红)
意图合理,但把**某一错误类的具体建议**当成了**对所有错误的通用要求**
三方独立旁证: pi turn.test.mjs:318 与 zcode prompt.test.mjs:92 都 doesNotMatch(/调整可用模型范围/)
★ (E) 变更面: 实现 3 份 + 测试 3 份 = **6 个文件**(zcode 不引,MCP_LIBS 无 model-scope)
实测只改 dsh 一份 ⇒ check-shared-libs.sh 判红("共用模块已分叉") ⇒ 契约有效
★ (F) 边界: 未改这三份实现/测试(探针已逐字节还原,md5 验回);生产一个字节没动;本次只读
跨三方共用库 ⇒ 与 pi 一样,动它前要先确认无并发会话在改
2026-09-25 05:13:14 +08:00
..
2026-09-19 14:01:21 +08:00
2026-09-25 05:13:14 +08:00
2026-09-24 10:10:32 +08:00
2026-09-15 06:33:54 +08:00
2026-09-19 12:47:32 +08:00
2026-09-14 16:11:00 +08:00
2026-09-15 11:17:23 +08:00
2026-09-24 10:10:32 +08:00
2026-09-15 11:21:00 +08:00
2026-09-13 06:16:59 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-14 23:50:35 +08:00
2026-09-21 07:04:04 +08:00