import Spec.Prelude /-! # Run —— AgentRun 的终止判定 一次 `@Claude` 创建一个 AgentRun(ADR-0001),它在终止时释放项目锁(ADR-0002)。 run 的具体状态集合没定(OPEN):ADR-0001..0003 列了一些状态名,但从未声明"状态恰好 这些",实现若需新状态(如 pending)要提出来,不要默认已穷尽。所以这里不钉状态枚举, 只钉一条契约需要的事实:一个 run 是否处于终止态。终止态由实现判定(状态集合本身未定, 没法在契约里算)。 -/ namespace Spec.System variable (I : Identifiers) /-- run 是否处于终止态(ADR-0002)。真值由实现给——状态集合未定(OPEN),故此处不钉 具体状态名,只钉"存在终止与否的判定"。锁在 run 终止时释放(见 `Lock`)。 -/ opaque Terminal : I.RunId → Prop end Spec.System