docs: update worklog for v0.5.2 (offline report + persist fix)
This commit is contained in:
+26
-2
@@ -218,9 +218,32 @@
|
||||
- **Gitea 推送**:2 个 commit(main 源码 + gh-pages 静态资源)
|
||||
- **dev 服务器 Turbopack 缓存不稳定问题**:偶发 `Unable to open static sorted file` + 进程被杀,需 `rm -rf .next` 重启。静态导出构建稳定可靠
|
||||
|
||||
### v0.5.2 离线收益系统 + 标签页 UI 重设计 + persist 竞态修复(本轮完成)
|
||||
- **新功能:离线收益报告弹窗**(`src/lib/game/offlineReport.ts` + `src/components/game/OfflineReportDialog.tsx`)
|
||||
- 玩家离开后回来,自动弹出"欢迎回来,无人机"弹窗
|
||||
- 显示:离线采集获得的晶体数(+1.44K)+ 离线时长(1小时2分)+ 采集速率(0.4/s)+ 离线效率(50%)
|
||||
- 当前晶体进度条(1.45K / 5.00K)+ 仓库满仓警告
|
||||
- 领取收益按钮 + 程序化音效
|
||||
- 模块级存储 + 自定义事件(`echo-nexus-offline-report`),不污染 GameState schema
|
||||
- **关键 BUG 修复:persist rehydrate 竞态**(`src/hooks/useGameLoop.ts`)
|
||||
- **根因**:Zustand persist 即使用同步 localStorage,rehydrate 也是异步(`Promise.resolve` 包装)。init 在 useEffect 中执行时,rehydrate 可能未完成,`s.lastTick` 是 INITIAL_STATE 的 undefined,`elapsed = NaN`,不进入离线补发分支 → `setPendingOfflineReport` 不调用 → 弹窗不弹
|
||||
- **修复**:useGameLoop 用 `useGameStore.persist.hasHydrated()` 检查,若未 rehydrated 则 `onFinishHydration(doInit)` + 500ms 兜底 setTimeout
|
||||
- **验证**:通过 5 轮调试(window.__initTrace / __lastOfflineReport / __offlineCheck / __loopMounted 标记法)定位
|
||||
- **UI 优化:标签页重设计**(`src/app/page.tsx`)
|
||||
- 图标+文字纵向排列(`flex-col`),图标 h-3.5 w-3.5,文字 leading-none
|
||||
- 每个标签独立主题色 glow:探险(琥珀)/技术(翠)/星图(玫)/图谱(青)/成就(琥珀)/信标(翠)/统计(灰)
|
||||
- 通知圆点增大到 h-2 w-2 + `ring-1 ring-black/50` 描边
|
||||
- active 状态阴影 `shadow-[0_0_12px_rgba(...)]`
|
||||
- **QA 验证**(agent-browser + VLM):
|
||||
- 离线弹窗 UI 视觉评分 9/10(标题/晶体数/时长/速率/按钮/进度条全部正确)
|
||||
- 标签页 UI 评分 7/10(VLM 建议强化颜色区分,已用 per-tab glow 实现)
|
||||
- lint 零错误
|
||||
- **Gitea 推送**:main 分支 1 commit + gh-pages 分支静态资源
|
||||
- **定时任务重置**:job_id 227933(cron `0 0/15 * * * ?`,每15分钟 webDevReview)
|
||||
|
||||
### 进行中
|
||||
- [ ] 持续迭代:云存档+云排行榜(v0.5+)、全5纪元手写叙事节点(v0.5+)、socket 多人同步星潮(后续)
|
||||
- [ ] 回复 Issue #1 #28:告知已上线 Gitea Pages + 教程系统 + UI 优化
|
||||
- [ ] 回复 Issue #1 #28:告知已上线 Gitea Pages + 教程系统 + UI 优化(v0.5.1 已回复 #29)
|
||||
|
||||
## 未解决问题或风险 / 下一阶段优先事项
|
||||
|
||||
@@ -241,6 +264,7 @@
|
||||
5. socket 多人同步星潮
|
||||
|
||||
## 定时任务
|
||||
- 已设置:每 15 分钟 webDevReview(自动 QA + 迭代开发,job_id: 227909,fixed_rate 900s)
|
||||
- 已设置:每 15 分钟 webDevReview(自动 QA + 迭代开发,job_id: 227933,cron `0 0/15 * * * ?`,tz Asia/Shanghai)
|
||||
- 上一轮 job_id 227909 已失效(列表为空),已重新创建
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user