diff --git a/scripts/repair-legacy-spliced-ids.mjs b/scripts/repair-legacy-spliced-ids.mjs index 5533222..b0fd453 100644 --- a/scripts/repair-legacy-spliced-ids.mjs +++ b/scripts/repair-legacy-spliced-ids.mjs @@ -15,9 +15,12 @@ * 本脚本做的事(**只改一处**): * 给 `agent/inbox/spliced` 事件里缺 `id`/`role` 的 `inserted[]` 消息补上 * `id`(确定性、可复现)与 `role: "user"`,其余字节原样保留。 - * - * 明确**不要**顺手给 `user/message` 也补 id(很多会话里它同样缺 id): - * 实测那样做会把本来能读的会话变成 `seq gap` 而读不了。 + * 本脚本只补 `agent/inbox/spliced` 的 `inserted[]`。 + * 关于 `user/message`(很多会话里它同样缺 id): + * 迁移器**本来就会**给它合成 id(对原始 v0 实测:迁出 386 条带 id / 0 条缺 id), + * 所以这里**不需要**补。早先注释说"补了会把能读的会话变成 seq gap"—— + * **那是错的**(2026-09-19 更正):那是「校验器原地改写入参、又被拿去再校验」造成的假象; + * 深拷贝重测后补与不补都 strict-ok(40/40)。详见 docs §17。 * * 用法: * node scripts/repair-legacy-spliced-ids.mjs # 预演(默认,不写盘)