保存独立KV用户服务、固定会话存档与原业务接线,以及C3d资料缓存和C3e本人统计写。 保留原PF/AGG路线、业务公式和时序;榜单读取、好友资料、公告、匹配及首场景闸仍待完成。 验证:ServiceHost两条件各33组646断言;Unity CLI Loop编译0错误269警告。 包含相关方案、评审裁决、测试及状态文档。未操作服务器、正式账号或打包。
2.8 KiB
2.8 KiB
M2 KV 命名一致性只读盘点
日期:2026-09-29。仅扫描客户端源码与本工作区合成测试;不访问本机服务器代码。本文件是命名问题盘点,不是重命名方案或编码批准。CP3A 独立补审与既有交付 hash 保持原样。
源码事实
- C# 源码及测试工程中精确
PlayKV为 0;大量名称实际是PlayerKV*,其中Player原指玩家数据,并非 PlayFab。名称容易视觉上混淆,且新 KV 栈位于game.PlayerDataStorage。 - 客户端约有 127 个
PlayerKV*类型声明(31 public、96 internal)、24 个PlayerKV*.cs文件、75 个含引用的脚本文件及 4 个 Editor 脚本文件;合成测试侧约 88 个源码/工程文件及 16 个.csproj含引用。数字按当前工作树只读扫描,实施前必须重扫。 - 多个测试工程直接列出
PlayerKV*.cs路径或用该前缀通配;Editor 验证和测试存在反射字符串,如game.PlayerDataStorage.PlayerKVRuntimeSelection、PlayerKVGameplayLoop。文件重命名要随.meta保持 Unity GUID,不能只替换 C# token。 - 当前
KVMgr名称已是提供方无关的 KV 入口,但它引用部分PlayerKV*类型;PlayFabUserServicepartial 内承载正式 KV 登录,PlayFabMgr仍有 Editor KV loop 分支。这是服务职责/提供方边界问题,不能靠PlayerKV批量换名消除。现有Core/KVMgr.cs → Services/PlayerData物理反向依赖也仍在另一个已记录的架构纠偏范围。 - 当前阶段多个独立审查文件与交付 hash 指向旧路径和旧名称,应作为历史证据保留;新命名须单独立基线与交付记录,不回写旧审查证据。
已确认的处理时点
用户明确裁决:移植期间保留现有 PlayerKV* 名称,不在 CP2A/CP3A/CP2B 或后续业务迁移中穿插改名;完整移植完成后再处理命名。 因此当前无需决定 KVPlayer*、KV* 或仅对外入口哪种映射,也不生成兼容别名。届时先重扫实际保留类型,清理闲置实现,再形成独立无行为变化的完整方案、精确白名单与受审基线;同步源码/测试/反射字符串/.csproj/Unity .meta,用 Unity CLI Loop 与合成测试验证。历史审查/交付 hash 不回写。
最新用户纠正:保留原 PlayFabUserService、PlayFabMgr 和 PlayFab SDK 路线,新增独立 KV 实现,由启动开关选择;先前“最终删除旧类”的表述已撤销。应在继续大批业务调用迁移前完整评审双提供方切换与独立 KV 实现约束。这与 PlayerKV* 完整移植后另批改名是两项不同工作。正式地址、账号准入、阶段闸与服务器边界均不变。