已开启
[5.2.1] 自动升级后 5.2.0 写入的 v2 会话(.index/.events)全部从 /resume 消失;5.2.1 疑为比 5.2.0 更旧的构建(缺 review 子命令,附二进制指纹与 rollback 验证) #1620
MiCoder创建于 1 天前
1 天前 添加了label:bug
atomgit-bot
1 天前 评论:
1 天前 评论:
你好,谢谢反馈。我们已收到这条 Issue,会由维护者继续处理。代码相关结论需要读仓库核实后再说;若方便可补充版本号与最小复现。


1 天前 将 duxin 设为负责人
摘要
在 5.2.0 下正常使用产生的会话(新格式
.index+.events,format_version: 12)在下一次启动后从/resume/ TUI 会话列表整体消失。自动升级到 5.2.1 后发生,atomcode rollback回到 5.2.0 立即恢复。初判:5.2.1 是一个比 5.2.0 更旧的代码库(版本号更高但功能更少),不含 v2 事件格式读写逻辑,因此无法枚举 5.2.0 写入的 v2 会话。
环境
/usr/sbin/atomcode(含atomcode.bak)atomcode 5.2.1 (unknown)← 自动升级后;atomcode rollback后为atomcode 5.2.0 (unknown)时间线(均 +08:00)
.meta→.meta.migrated,生成.index/.events现象
项目
/opt/openstack-Flamingo下~/.atomcode/sessions/1a323c4898c92e6a/实有 11 个会话,但 5.2.1 的 TUI/list sessions只列出 6 个——恰好是全部 6 个 legacy(.meta) 会话;5 个 v2 会话一个不剩:b64a2cb4「推送仓库」format_version:12)f882506e「如何配置openstack…image」6516cc20/a2b072ec/ea68ff3f94b11377「OpenStack Flamingo 最小部署 RPM 构建」.meta.meta磁盘数据完好,无任何丢失——只是 5.2.1 看不见。(5.2.0 之后又把部分 legacy 会话迁移成 v2,属正常行为。)
决定性对照实验
统一用
--resume <id> -p <prompt>,观察是否返回no session matches:6516cc20…no session matchesb64a2cb4…「推送仓库」no session matches4d493bfe….metaab755af3…(5.2.1 自建).meta00000000-…(伪造)结论:5.2.1 能读 legacy
.meta,但完全读不了 v2.index/.events;5.2.0 两者皆可。二进制层面的证据
/usr/sbin/atomcode,rollback 后).bak)sha25664bfd2314ac4068b3909c0d23af71a5968887af43414c6d9ed50065060b548e136ecc2fdf09b9a2a333cc2dfa3e090a934228bf32b40af320b447ebd795f2832.events字符串format_version.indexreview子命令atomcode --help的 Commands 段差异只有一行:缺
review子命令 + 缺 v2 格式字符串,共同指向:5.2.1 的功能集早于 5.2.0。规避方案(已验证)
# 1) 关掉自动升级,避免被换回 5.2.1 # ~/.atomcode/config.toml 顶层 auto_update = false # 2) 回退到能读 v2 的 5.2.0(与 .bak 交换,可再 rollback 换回) atomcode rollback回退后
--resume上述 v2 会话全部恢复。数据自始未丢,属纯可见性/兼容性问题。尚未定位
~/.atomcode/logs/atomcode.log);若为"旧代码库读不了新格式",是否有意做了降级保护,还是纯粹漏判?pending_upgrade阶段触发)。这看起来是独立的发布/升级判定问题,建议单独排查。期望
需要完整目录清单或对照样本可再提供(涉及隐私部分已脱敏)。