Files
MailUI4Agents/docs
JianFeeeee f236ef44ca 更正: 我自己的两条风险是**测量方法**造成的假象 —— 校验会原地改写入参,换个对象就消失(§17)
pi 指出 §10 那个坑还有下半段。我据此重测了自己的两条结论,**两条都推翻**:

1. §5「伪造 id 会污染严格校验」—— 假象。§5 引用的 seq gap 来自
   「先 transformed(在**原对象**上,验证器已把 dt 写回)→ 再拿同一批对象跑 current」。
   深拷贝重测:strict-first OK、transformed(clone)+strict(clone) OK;
   同进程 3 次 × 3 个 OS 进程全 OK ⇒ 不是不确定性,是入参被上一次校验改了。
   **从没修过的 37 个对照组会话 strict 也全 OK** ⇒ 与伪造 id 无关。

2. §4/§8「补 user/message 会引入 seq gap」—— 同样假象。深拷贝重测:40/40
   补与不补都 strict-ok。且迁移器**本来就会**给 user/message 合成 id
   (原始 v0 迁出 386 条带 id / 0 条缺 id)⇒ pi 上封担心的
   两个口径各要一份不同东西并不成立。

结论比原先更好:修后会话 **transformed 与 current 两档都可读**,
伪造 id 换成真 randomUUID() 结论不变(id 取值形式不影响)。

真正该记的是:**校验会改写入参 ⇒ 校验与落盘必须分对象**。它已制造
§10(dry-run 40 vs apply 3)与本节(假 seq gap)两次假结论。

另独立复核了数据完整性(40/40):.bak 齐全、事件数一致(80001=80001)、
剥掉注入的 id/role 后逐行语义差 0、87 个注入 id 全唯一。
2026-09-19 12:15:45 +08:00
..