快照与恢复
捕获和回滚全部上下文状态,用于分支探索或错误恢复 —— 决定下次编译的一切都在快照里。
typescript
const snap = chef.snapshot("before risky tool call");
// ... agent executes tool, something goes wrong ...
chef.restore(snap); // rolls back everything: history, dynamic state, janitor state, memory快照包含什么
- History 以及下次编译要注入的动态状态。
- Janitor 状态 —— 包括压缩失败计数(熔断器),以及
'incremental-anchored'模式下的持久 anchor 文档。后台压缩状态不进快照。 - Memory 条目。
- 护栏 options v4 —— v4 中
withGuardrails是存储态,因此ChefSnapshot增加了guardrailOptions,快照/恢复完整往返。 - handoff 通知标记 4.2 ——
ChefSnapshot.handoffNoticedWindow记录通知已经为哪个窗口发过。窗口谱系本身会随 janitor 状态往返,没有这个字段的话,恢复出来的会话就会停在一个「已经通知过」的窗口上却把标记清空了,于是每一轮都重发一次通知。 - 快照元数据:你传入的
label和createdAt。
完整的回滚演示见可运行示例 snapshot-restore。