1.6 KiB
1.6 KiB
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(网页端刷新即新版)
- 部署后各端打开一次,核对数据(工作记录/记账等);若仍有缺,检查设置页「立即同步」的结果行并反馈