4.2 KiB
4.2 KiB
4B3A实施复核裁决与关闭
结论:接受独立实施复核,4B3A正式关闭。没有待修复P1/P2,不需为本次三条P3再做一轮A复审。4B3整体及G4未完成;本裁决不批准B/C或真实游戏KV启用。
基线与复核证据
- 报告:《阶段4B3A独立实施复核-2026-09-24.md》,SHA256
EE99EC3FA63C5E49BF3FFE70D80F9A8AB4FA3BF1AE8D0C5FE6D21CEF7325D55B。 - 交付清单SHA256
2F52213215E638C0FA51F02443B4C2BC3CC04894BDDF6C4C46667D70FD9DAF00;主会话本轮重算320/320一致,见KVSaveRouteTests/checkpoint5-review-ruling-hashes.json。 - 主会话用明确BEGIN/END标记剥离新增块,不归一换行,与开工副本逐字节完全相同;两者SHA256均为
A9B4A0FEB96B59A0A71C829D978B8616165AB289C014E97C3E2F8AE432CFFAB7,见checkpoint5-exact-byte-proof.json。评审的启发式剥离残留空行不属于源码差异。 - 独立日志核对:新三条件13组544断言;Unity fixed-route 34、B2-20 83断言,内层success/restored均true。独立报告另外记载4B2离线75组1715断言、4B1 23组279断言、42/86/29与3C 8/8等通过;本轮主会话不把报告转述写成自身重跑。4B2作者1713与独立1715保留各自运行结果,沿用既有并发条件分支计数解释。
B3A逐条裁决
| 项 | 主会话裁决 |
|---|---|
| 01 | 接受三态、精确键规则及无额外Get证据 |
| 02 | 接受非法输入、guard优先及失败null证据 |
| 03 | 接受两个Snapshot错误映射;底层其他状态按原批准分层验证 |
| 04 | 接受remote写入本地接受与真实票据,不视为远端确认 |
| 05 | 接受localOnly双向覆盖及旧pending保留语义 |
| 06 | 接受null/非法输入拒绝,空串不删除 |
| 07 | 接受真实IO失败与字段透传;AfterReplace仍为旧回归+源码审计 |
| 08 | 接受水位与Superseded/Confirmed区别 |
| 09 | 接受响应丢失/401为Unknown及无自动重发 |
| 10 | 接受票据Owner/epoch归属与Wait不发Flush |
| 11 | 接受观察取消与Owner继续排水 |
| 12 | 接受跨账号/同账号新epoch拒绝;示例内存断言不代表全业务迁移 |
| 13 | 接受Read/Write/Close样本竞争及Flush排水;不宣称穷尽交错 |
| 14 | 接受四入口guard拒绝及计数 |
| 15 | 接受无实例副作用;本轮精确字节复核补足独立报告的归一比较限制 |
| 16 | 接受条件编译与调用扫描,不替代Player链接/裁剪验证 |
| 17 | 接受真实HotUpdate固定case、恢复成功及编译证据 |
| 18 | 接受回归证据;KVSync/3C历史首败根因仍开放 |
| 19 | 独立复核、主会话hash核对及本裁决均完成,关闭A |
三条新P3与已知事项
- P3-1采纳其目的,精确规则是:不得将临时分析.cs置于测试工程默认Compile扫描树内。日志可以继续留review目录;分析副本用项目外目录或非.cs扩展名。评审自述CS0101为自己添加分析源码导致,移除后通过;原失败日志保留,不归为交付编译缺陷。
- P3-2不采纳“将before快照统一换行”。原始快照必须逐字节复制,统一换行反而破坏审计基线。需要阅读或文本比较时另建有明确标识的规范化副本;权威校验使用本次精确剥离方法。无需改生产或历史快照。
- P3-3采纳,Player链接/裁剪证据留最终包;不因此现在打包,也不把非Editor表面探针冒充链接验证。
设计期四条P3落实均接受。KVSync StorageError与3C L7间歇根因未定,独立复跑通过不关闭问题。NetworkTransport复用旧Dependencies.targets接受,无旧工程改动。无生产调用者是A范围事实,不等于游戏KV已接通。
下一步与最新用户优先级
用户已明确“真实游戏内的一条普通玩法闭环”,优先跑通、最小改动、少改业务逻辑。下一步改为先收敛这条链路的完整接入方案,评估能否以明确限制缩小原B/C首次实施范围;不机械展开全部业务重构。既有B/C方案未批准,收敛方案也必须完成独立评审和裁决后才能编码。必要的账号隔离、失败不写空档及消费边界保留。
本轮无生产/测试实现修改、无正式服请求、无PlayMode、无打包或Git提交。固定地址及Unity CLI Loop约束保持。