400595756b
批次预检对每个成员要求 provider_batch_plan_update 等于 batch.plan.plan_update, 而同一函数的另一条规则又要求非 planning 批次成员不得携带该字段;创建侧只为 plan.submit_gdd 填值,其余动作保持 None。于是「同一轮既调 update_agent_plan 又调工具」的普通批次同时踩中两条互斥规则,报「批次成员身份或顺序不匹配」。 该字段随 M1B-2 引入,master 无此标识符,做游戏路径同样中招。 预检期望值改为按批次类型分叉:planning v4 保持相等(:241 已对 actions[0] 校验过一次),非 planning 期望 None。创建侧与非 planning 分支语义本自洽,不动。 补一条走完 prepare 到读回的回归用例;去掉修复后可复现线上同一条错误串。 顺带 cargo fmt 掉上次 master 合并带进来的一处未格式化代码,并补一份第三方 Provider 兼容性缺陷说明。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>