Files
daywork/docs/release-notes-v0.6.6.md

1.6 KiB
Raw Permalink Blame History

v0.6.6 发布说明(2026-10-26)

修复「同步服务返回 500」与二次数据丢失(根因修复)

根因:此前数据恢复用的合并脚本把用户数据文件中的表写成了数组形态,而服务端按「uuid 键对象」读写。后果:数组上的附加属性在序列化时被丢弃(每次容器重启丢失合并后新写的数据)、删除/半途状态产生 null 行(自然键扫描读到 null.date → 每次同步 500)。该脚本缺陷由开发者引入,本版彻底治愈。

修复内容

  • 服务端加载即自愈:读取用户数据时自动把数组形态转回 uuid 键对象、剔除 null/非法行(一次性治愈线上文件,无需任何手动操作),自愈结果立即持久化
  • 自然键扫描 / 墓碑生效循环:对非对象行防御性跳过
  • 客户端快照重建:跳过 null / 无 uuid 行,垃圾行不再进入本地缓存
  • 合并后丢失的增量数据:各端升级后首次同步会触发行数比对防线,自动把设备缓存中的数据重推回服务器

验证

  • 表结构自愈冒烟 8/8(数组+null 混合文件 → 同步一次 → 治愈且数据完整、快照无 null)
  • 存储冒烟 9/9 · 协议审计 36/36 · 用户管理审计 16/16 · 灾难恢复自救 7/7

部署

  • 服务器:cd /opt/daywork && git pull && cd server && docker compose up -d --build
  • 桌面 / 安卓:安装 0.6.6(网页端刷新即新版)
  • 部署后各端打开一次,核对数据(工作记录/记账等);若仍有缺,检查设置页「立即同步」的结果行并反馈