{{ theme.skipToContentLabel || 'Skip to content' }}

0.3.0-alpha.2 Session 与恢复迁移

影响范围

本源码候选新增 RunResult.operation,并把 operation 快照写入 pause/finish RunState。CLI 的 --json-events 最终 run_result 同步增加 operation 字段。现有字段和退出码不删除。

Session 迁移

旧版直接存放在 session.dir/<id>.jsonl 的 schema v3 文件会在首次打开时迁移:

  1. 校验文件和会话 id;
  2. 创建 <id>.jsonl.v3.backup 原文备份;
  3. 原子写入版本化目标并重新打开校验;
  4. 最后把原公开路径切换为目标文件的稳定链接。

迁移支持消息、模型/思考/工具集变更、压缩、分支摘要、自定义数据、标签、名称和主 lane 移动。无法无损表达的条目会返回 session_migration_unsupported,原公开文件保持不变。

回滚

  1. 停止所有使用该 Session 的进程。
  2. 保留版本化目标和 RunState 作为审计证据。
  3. 验证 .v3.backup 与预期摘要一致。
  4. 使用备份恢复旧文件名,再切回 0.2.0-rc.1

不要在 writer 存活时删除 .open.lock 或 RunState .lock。无法确认外部副作用是否完成时,保持暂停并由业务负责人核验。

{{ theme.lastUpdated?.text || theme.lastUpdatedText || 'Last updated' }}:

Released under the MIT License.