Files
ft/CodexOutput/upserver/B3BatchMigration/M2/M2-CP2A独立实施预复核主会话裁决-2026-09-29.md
Liubing\LB 6813da149a feat(upserver): 保存M2客户端KV迁移至本人统计写检查点
保存独立KV用户服务、固定会话存档与原业务接线,以及C3d资料缓存和C3e本人统计写。
保留原PF/AGG路线、业务公式和时序;榜单读取、好友资料、公告、匹配及首场景闸仍待完成。

验证:ServiceHost两条件各33组646断言;Unity CLI Loop编译0错误269警告。
包含相关方案、评审裁决、测试及状态文档。未操作服务器、正式账号或打包。
2026-09-30 19:19:05 +08:00

2.5 KiB
Raw Blame History

M2 CP2A 独立实施预复核主会话裁决

日期:2026-09-29。受审报告:M2-CP2A独立实施预复核,SHA256 EEE90F2CB09C00616074C3483DA0C015827869F029329E60452E6C85008B3E23。主会话以当前工作树重算实施自验清单 19/19、Player 阻断补审基线 4/4,长度及 SHA256 全一致;本裁决不修改两份受审清单、受审源码或测试。

逐项裁决

  1. 启动分流、101/102 现存档门、三传输、原 handle 交接、双阶段闸、撤销/关闭:接受预复核结论。 报告独立复跑 KVGameLoadTests 89组1962断言、KVContractTests 42/42,均 0 失败。该证据覆盖合成路径,不证明真实账号、首场景或 Player 目标。
  2. 竞态与内部 ready:限定接受。 当前 epoch 查询、Logout/销毁/退出撤销和 Close 故障阻断符合 CP2A 边界。账号进程内切换、暂停恢复不在本批验收;后续若放开需重新审查生命周期,不把本报告的 P3 当作已实现功能。
  3. 闲置实现:更正一处事实。 CP1 三个交接接口在 CP2A 有消费,接受;报告称新增 PlayerKVRuntimeLifetime 为启动必需不成立。该文件不存在,原 CP2A 主会话裁决已明确排除新增生命周期文件。终点仍须清理其余闲置实现。
  4. Player 编译阻断单文件补审:接受独立审查建议,并限界批准。 4项受审基线一致,FishingChallengeManager.cs 的非 Editor 引用 _cheatingScore 与 Editor 条件声明不匹配。只批准在该文件 ResetForKVLoad 中拆开连锁赋值,将 _cheatingScore=0 包在 #if UNITY_EDITOR;其余数值清零、评分逻辑、字段和存档格式均不变。此为 CP2A 白名单外的单文件补充批准,不扩展到 CP2B/CP3 或其他编译错误。修改后核差异、回归及真实 Player 脚本编译;若 Unity CLI Loop 不提供无打包 Player 编译能力,保持 Player 未验,不以 Editor/合成探针替代,也不自行打包。
  5. P3-1 Pause:记录为后续运行生命周期设计输入,不在 CP2A 临时加代码。P3-2 269警告:保留未归因状态;终审按新增/既有核查,不宣称 0 警告。

状态

CP2A 预复核有条件通过,但未关闭:真实 Player 编译证据及实施终审仍缺;没有真实 101/102 请求、Play 或打包。正式地址仍固定 http://s101.local:18080/,Unity 仅 CLI Loop。修补文件若与其他批次并行修改,须先冻结该文件归属并重建交付 hash。