Files
ft/CodexOutput/upserver/最小登录收尾执行结果-2026-09-22.md

5.4 KiB
Raw Blame History

最小登录收尾执行结果

2026-09-22。用户要求执行独立审查和自动化验收,当前不打包。正式 API http://s101.local:18080/;目标仅 C:/projects/ft/Client,工具 Unity CLI Loop 2.2.0。

本轮结论

独立审查、已发现缺口的最小修复及可执行自动化验证已完成。 实际 Unity 最终快速101→102→101三轮运行时Error均为0,核心进度前后相同,实际Hub Test=OK;网络故障在外部真实传输宿主通过。尚未覆盖的Unity完整UI网络故障、主动业务推送、人工玩法/完整存档及最终包验收仍单列,不等于整个项目迁移完成。

独立发现、修复与复审

独立任务逐项审查前两轮九文件,未确认新增P0/P1,发现两项现存P2:GetUI独立异步续体在退出后仍操作旧对象/新容器;SoundMgr/SoundService初始化晚完成可在Release后重建订阅/资源。实际方法提取宿主先保存正常4项通过、退出安全4项失败(退出1)。

方案:《独立复审P2修复方案-2026-09-22.md》;实施前完整裁决:《P2实施裁决-2026-09-22.md》。四个生产文件的本轮边界:

文件 修复
FishingAct.cs GetUI/NewEnterMap及直接子方法OnCameraSpeedEvent捕获原容器/登录令牌,等待后检查对象、取消和容器替换
SoundService.cs 初始化版本失效、局部句柄所有权、成功移交、失败回滚及重复Init/Release
SoundMgr.cs 初始化版本/原容器检查,局部音频/订阅清理,成功移交;重复地址只加载一次,避免覆盖句柄
FishingStage.cs 真实快速回归新增复现Stop已清订阅但对象仍活/令牌未取消;Stop首行置stopping,启动/进度/既有旧异常过滤同步检查

Stage失败证据保存在 p2-before-stage-stop/。没有通过重建已销毁订阅容器继续旧阶段,也没有无条件吞掉当前阶段异常。未改变玩法规则、正式地址、身份映射、存档机制或框架DLL。

四文件修复后独立复审通过,58项实际方法提取定向测试全部通过:正常4、原失败回归4、扩展41、Stage边界9。覆盖每个资源引用只释放一次、旧任务不释放新一代资源、失败回滚、重复初始化/退出及原正常行为。证据《最小登录独立复审-2026-09-22.md》、ReviewLifecycleTests/fixed-*.log/json。SoundExitTests/P2-Latest.log与MapExitTests/P2-Latest.log也通过。

这些是生产方法+依赖替身测试;不是每个Addressables细粒度时序的真实Unity复现,也不证明全项目所有UI异步路径安全。

Unity实际最终回归

项目 结果/证据
快速101→102→101 p2-final-reentry-run.log退出0,三轮错误0,原始错误日志p2-progress-*-errors.json
退出会话隔离 p2-progress-102-exit.json / p2-progress-101-exit.json,旧身份清空、Cookie替换且新Count0、SessionVersion推进、旧Hub断开
核心进度抽查 p2-progress-101-before.json / p2-progress-101-after.json完全相同;不替代完整游戏存档核对
实际Hub p2-final-hub.json:101、Connected=true、Test=OK
正式地址和最终状态 p2-final-state.json:FishingStage、101/InternalId2、Authorized=true,http://s101.local:18080/
确认载入新代码 p2-compiled-assembly.json / p2-final-loaded-version.json,HotUpdate MVID一致,编译产物含stopping字段
最终日志 p2-final-errors.json:Error=0;p2-final-warnings.json:Warning=161,未宣称零警告

本轮完整编译 p2-unity-compile.json 为0错误/274警告。Stage补丁首次等待域重载超时90秒;工具可响应后重试编译 p2-stage-stop-compile-retry.json 成功,0错误/0本次警告(增量/无新警告,不表示全项目警告清零)。未运行uloop fix、删除锁或清Library。

真实网络故障:通过,但证据层级独立

《网络故障验收结果-2026-09-22.md》:实际生产认证/manager/RTService源码+项目SignalR DLL8.0.8.0在net9.0宿主运行,loopback代理固定转发s101。401、真实连接中断、生产15秒超时均分类正确、不保留授权;恢复后102真实登录与Cookie授权Get成功。已有WebSocket底层断开并拒绝重连3秒后自动恢复,前后Test=OK,2次upgrade/0次negotiate;释放后连接0、无晚重连。

Unity Restricted阻止测试构造器中的网络类型,未提权或绕过,因此外部宿主通过不能标作Unity完整登录UI或Mono/最终平台通过。代理已停止,未改整机网络/DNS、防火墙或D盘Unity。Test RPC不是主动业务推送。

剩余项及交接

  1. Unity完整UI的HTTP失败/超时恢复、Unity/最终平台自动重连:现有生产传输证据已补,平台/UI部分仍需受支持的受控环境或最终包验证。
  2. 安全可触发的服务端主动业务推送及重连后订阅验证;不制造会员/奖励/资产事件。
  3. 用户人工完成一次必要钓鱼体验并核对账号原进度;完整道具/任务存档不能只由核心字段抽查替代。
  4. 真实渠道SDK退出/换号/迟到回调及真机,按用户安排最后统一打包确认,当前不索要APK。

独立审查待办已关闭,本轮发现的P2和Stage停止窗口已修复且复审/回归通过。后续以剩余验收为主,发现具体问题才追加方案和编码。KV、俱乐部扩展与SDK删除继续暂停;没有提交、推送或发布,现有外围差异保留。Editor最后保持PlayMode、101/FishingStage,供人工复测。