Run 中断与恢复

wesgine 中 Run 的中断机制、孤儿 Run 处理和可恢复状态。


中断触发方式

方式触发者端点
用户主动中断用户POST /sessions/{sid}/interrupt
CycleDetector HITL 超时引擎自愈失败后自动触发
ErrorStreak HITL 超时引擎伪进展检测后触发
BudgetCheckFn 返回 Exhausted外部商业限制
Cell Stop生命周期管理操作

引擎不因计数器终止

引擎不因轮次/token/时间等 counter 阈值主动终止 Run(INV-TERM-01)。

终止权属于上述五种显式触发方式。


孤儿 Run

Cell Boot 自动执行清理:

  1. MarkInterruptedSessions() — 标记未完成会话
  2. ListOrphanedRuns() → MarkRunTerminated() — 终止孤儿 Run

消费方不必在 PostBoot 手动调用(INV-CKPT-04)。


可恢复 Run

孤儿 Run 可标记 status=resumable。

查询:GET /observe/runs?status=resumable


批量操作

端点作用
POST /sessions/{sid}/interrupt中断指定会话的 Run
POST /sessions/interrupt-all中断 Cell 内所有 Run
POST /sessions/mark-interrupted崩溃后批量标记

mark-interrupted 和 interrupt-all 需 admin token。