Files
PolyLoop/tools/soak/tests
iomgaa 5a4d13b0f2 fix(soak): 按 Codex 对抗审查加固故障注入的判据
九类实跑全过之后让 Codex 专门找「判据其实验不到它声称要验的东西」,它报的每条都带具体
失败场景。这次的绿不是假的——实跑数据里这些判据都有料可判——但它们在别的输入下会假绿。

真空成立三处改成无法判定:空日志的「全都解得开」、零步的「没有 env_error」、前后都空的
「审计账没变」。上一版实跑里最后那条正是 0 vs 0 通过的。

「环境是在完整一步之后坏的」原本只有通过和无法判定两档,没有击穿分支——那条判的是注入器
自己,它对外宣称在第 N 次执行之后动手,整类故障的结论都建立在这句话上。

提示词那两条原本只读库写进日志的数,而这套东西反复强调不能拿库的自述验库的行为——它在
自己的核心主张上破了例。现在包一层模型客户端记下每次真正发出去的消息字符数,跑完逐步
对账。字符数口径与库的算法对拍过,不然会全程假击穿。

绝不重放那条补了两个角度:崩溃时账上那几条续跑之后要逐行原样还在(旧条目被改写、被抹掉
原来一路绿灯),以及续跑段里不许出现与崩溃前完全相同的条目。Codex 提的「同一文件不同
内容」在 b 档已被条数判据挡住,a 档不能加同样的规则——那一档续跑本来就该接着跑,模型
再写一次是正常行为,加了会变成随机红。

取消补了环境侧的静默判据与事件文件完整性。容器里已经发出去的执行在客户端计数上不留痕,
这个盲区如实写进已知缺口,没假装验到;崩溃形态只能落在写入调用返回之后,同样记下来。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-11 11:53:00 -04:00
..