39 lines
2.4 KiB
Markdown
39 lines
2.4 KiB
Markdown
# 阶段3C限定范围代码审查
|
||
|
||
> 2026-09-23补修复更新:R1–R5已修复并完成本轮技术验证;外部实施复核待完成。最新证据见[补修复交付与逐项证据](阶段3C补修复交付与逐项证据-2026-09-23.md),源码hash见KVStage3CTests/repair-final-source-hashes.json。下方为修复前历史记录(含旧final-source-hashes.json),不能替代新证据,也不代表3C/G3已经重新最终通过。
|
||
|
||
> 更正(同日后续核对):本会话下方“无遗留P1/P2/P3、可结束3C”结论撤回。相同版本新增发现见《阶段3C复核更正与补验收-2026-09-23.md》R1–R5;历史执行结果与原分析保留供追溯,当前需要补修复/验收并外部复裁。
|
||
|
||
日期:2026-09-23。审查范围:`KVStage3CTests.csproj`、`Program.cs`、阶段3C运行证据及生产hash;不审查历史外围改动。
|
||
|
||
## 结论
|
||
|
||
**PASS。** 未发现遗留P1/P2/P3代码问题。阶段3C限定技术验收通过,可以结束3C;不得据此进入游戏接线或PlayFab/SDK删除。
|
||
|
||
## 审查发现与处置
|
||
|
||
1. 已修复:首轮run根目录定位错误以及普通manifest读取误用cleanup门;修复后离线7/7。
|
||
2. 已修复:正式账号用例失败后通用包装器可能继续下一账号;现遇Unknown或101失败立即停止新增写入。
|
||
3. 已修复:正式Owner异常路径可能晚释放;现使用`finally`等待`CloseAsync()`。
|
||
4. 已补齐:O6分别模拟服务端观察基线/目标,重开后都保持Unknown且变更请求计数不增加。
|
||
5. 已补齐:O8验证有效主档优先于损坏bak;票据计数在Owner关闭前收集并写入脱敏诊断。
|
||
|
||
## 安全核对
|
||
|
||
- 正式目标逐项固定为scheme=`http`、host=`s101.local`、port=`18080`和三个playerdata路径。
|
||
- manifest先行、key集合不可扩大;越界Set/Delete在内部转发计数增加前拒绝。
|
||
- 正式run无Unknown,精确清理完成并由两次新会话确认;无遗留fixture。
|
||
- diagnostic/result/log完整key命中0,禁止字段扫描0。
|
||
- 生产源码未修改;7个KV生产文件hash与既有基线一致。
|
||
|
||
## 验证
|
||
|
||
- Stage3C:offline 7/7,live 3/3。
|
||
- 回归:42/42、86/86、29/29。
|
||
- Unity CLI Loop:0错误、0警告。
|
||
- 最终正式run:`20260923064047_9bdd12b8c3c64a6b855887bd91e2d33d`,`Completed=true`、`HadUnknownWrite=false`。
|
||
|
||
## 后续边界
|
||
|
||
阶段4开始前必须另行完成游戏接线方案评审。PlayFab读写替换、SDK删除、真机与最终包仍未授权实施。
|