Files
ft/CodexOutput/upserver/B3BatchMigration/M2/M2-C2c补单保留原异步存档流程修订-2026-09-30.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

23 lines
2.9 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.
# C2c 补单保留原异步存档流程修订
依据用户要求,迁移必须保留原主要业务逻辑与流程;用户进一步询问能否沿用原 PlayFab 补单处理。源码核对结论:可以保留原处理时序,KV 使用既有本地接收与后台同步能力,无需在 HomePanel 增加云端等待。
本修订覆盖旧三文件差异方案中 HomePanel await 和补单强制等待云端确认的提议;旧文档/hash保留历史,不再按旧提议执行。本修订与两个离线宿主修复合并一次差异审查,未实施新生产改动。
## 修订后的明确范围
1. **撤回 HomePanel.cs 文件扩展,不改该文件,不把 ReleaseReplenishmentData 改成主页必须 await 的方法。** 保留原补单→礼包拍脸→暂存奖励→ShowData→进度/队列→遮罩收尾顺序。
2. 补单保留原资格、订单ID、奖励内容/次数、平台确认及本轮列表处理语义;不借迁移另做补偿协议或变更业务规则。当前 ReleaseReplenishmentData 内仍为原逐单同步处理/捕获异常,普通存档已委托固定 store,不再为补单包入等待云端的 PlayerSaveAction。
3. KV 本地写必须被原 store 接受,由现有 KVUserService 保存调度及原 coordinator 后台同步;不新增第二调度器、Owner或绕过 Guard。PF 仍走原 PlayFab 缓存与上传。
4. UI 展示沿用原业务语义,**本地接收不代表云端确认**,不能宣称奖励已获得额外的云端持久性保证。云端失败/Unknown 不直接向 HomePanel 新增 await 异常,不自动重复发奖或回退 PF;继续使用原 pending/unknown 机制。
5. 这不等于忽略本地拒写、过期会话或损坏数据。原 KV 拒写仍有效;若测试发现错误逸出原边界影响主流程,应先定位和登记,不以空成功、跳过活动或解除 Guard 修复。原来逐单错误后清列表和跨系统窗口也没有在此修订中获得可靠恢复保证。
6. **仅补单链适用此项修订。** 不自动推广到此前已审的钓鱼即时消费、转盘、邮件等路径;那些路径若需改业务语义,须单独核对用户意图及原流程。
## 同一次差异审查的剩余内容
- 白名单增量只剩 UserService.KVFishingValidation.cs 与 UserService.KVFishingRewardValidation.cs,限离线 fixture 的固定 store 注册/注入、生命周期和清理;不得改真实业务实现或弱化断言。
- 同时明确本修订对原方案第6节“其它商店动作确认”的补单特例;原 HomePanel/补单 await 提议作废,不重复开启新一轮整体架构审查。
- 回归检查正常补单、无补单、多笔、原同步异常处理、后台同步失败不新增主页等待、退出/旧回包,以及旧耗能/奖励 fixture。未完成实际验证前不称流程等价或 M2 通关。
服务器代码不读改,正式地址不变,仅 Unity CLI Loop,不打包;保留现有工作树。