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

16 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# M2 CP2A 独立实施预复核主会话裁决
日期:2026-09-29。受审报告:[M2-CP2A独立实施预复核](M2-CP2A独立实施预复核.md),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。