0.11.4 会话恢复修复¶
目标:修复 Windows 启动恢复锁住登录、学习服务失败影响主会话,以及旧探测覆盖新会话的问题。保留统一 CLI 会话、二次验证和账户 epoch 边界。
已观察:桌面恢复十秒后展示登录页,但 resumeRequest 仍等 daemon 的 exportSession;daemon 将它排在完整网络恢复之后。原生日志另有学校登录成功、学习恢复失败、旧 student/index 入口 404 和学习请求 403。
实施顺序:
- 用真实 daemon 子进程与挂起的合成学校请求复现:恢复期间私有快照应即时返回、退出应能打断旧恢复,旧回复不可复活账号。
- 将 daemon 的状态/快照/明确授权的登录移交与退出从启动网络等待中解开。SDK 恢复只证明学校身份,学习会话在具体学习操作前建立;恢复单飞且验证 epoch。
- 用独立学习客户端进行有期限的只读启动探测;原生请求支持取消与实际 timeout_ms,超时结束互斥锁,旧候选不可更新当前 CSRF。相同 epoch 的后台状态改变不覆盖已就绪的桌面 cookie。
- 更正失效的 Learn 首页常量,并复核真实只读课程、详情请求。测试包含网关页、401/403、挂起、退出/换账号、晚到回复及并发恢复。
- 跑认证、CLI/SDK、学习恢复、账户隔离和类型检查。更新原 dev 进行真实只读验收;记录 Windows 真机尚未复测的边界,不将静态通过等同实机修复。
验收记录¶
- 主恢复锁、学习探测期限、同 epoch 会话保护已实现;旧 daemon 三项超时复现、新 daemon 三项通过。
- Windows 实跑暴露的 PowerShell ACL 模块依赖和插件退出文件锁已补修;真实 DACL 与完整 SDK 检查通过。
- 前台不再等待 Info 预热、任务/通知同步;本机保存的同账号凭据先回填,再发布 ready。SDK 199 项、私有移交 13 项、登录状态 67 项通过。
- 原 dev 同版本刷新最终约 99ms 恢复,无需重新登录;学习页 12 门课程,首页今日组件未再出现登录错误。
- 最终 Windows 验证构建:Actions 40368403050,源 db22eb5a;安装包校验结果见修复报告。公开版本与渠道尚未替换。