Checkpoint 与 Replay:捕获→持久化→重启→重建

Checkpoint 与 Replay:捕获→持久化→重启→重建 由 Archify 生成的时序图。 run(request) 首跑 ① 节点事件:MODEL 请求/响应 · TOOL 调用/结果 ② NodeIoRecord + SessionSnapshot 落盘 ③ 进程重启 → run(同 input · 挂 ResumeCache) ④ lookupModel / lookupTool(promptKey) 命中 → 捕获结果短路(不再真实调用) ⑤ 未命中 → replayToolLive / replayModelLive ⑥ recordTool / recordModel 回填缓存 ⑦ 尾部新节点继续写捕获 AgentResult(前缀重放 + 尾部真实执行) 宿主调用方 · run / 重启重跑 · 时序参与者 宿主调用方 run / 重启重跑 ReActRuntime · 步循环 · 时序参与者 ReActRuntime 步循环 IoCapture · AgentListener 实现 · 时序参与者 IoCapture AgentListener 实现 CaptureSink · InMemory / Jsonl · 时序参与者 CaptureSink InMemory / Jsonl ResumeCache · 命中短路 · 时序参与者 ResumeCache 命中短路 NodeReplayer · live / mock 重放 · 时序参与者 NodeReplayer live / mock 重放 图例 默认消息

捕获面

  • • IoCaptureAgentListener 消费事件流写 NodeIoRecord:模型 prompt/response、工具 args/output 逐节点成记录
  • • IoCaptureSink 分 InMemory / Jsonl 两实现;会话快照走 AgentSessionStore(InMemory/File/JDBC,链式校验)

恢复双通道

  • • ResumeCache 前缀命中即短路:lookupModel/lookupTool 按 promptKey/toolKey 查表,命中不计新调用
  • • NodeReplayer 两模式:mock=用捕获输出重建 AgentModelResult(含 rawResponse 回退);live=真重调模型/工具

编码侧检查点

  • • CodingSessionCheckpoint + Formatter 额外记 turn 边界与 splitTurn 标记,供会话级恢复
  • • AgentTeamMemberSnapshot / StoredProcessSnapshot 分别覆盖团队任务态与托管进程态