循环的 needs 都满足了when 为假 → 整个循环跳过
第 1 轮
第 N 轮(core/run.py _advance_loop)
1
跑循环体
按 needs 执行,实例 ID 是 x.rN,并行副本是 x.rN.xK。
2
都结束了?
有步骤失败、被驳回或被挡住 → 循环失败。
3
until
按这一轮的输出算。为真 → 循环成功,往下走。
4
还有轮数?
N < max_rounds → 下一轮。下一轮看得到上一轮的 manifest(例如 fix 读 verify 的结论)。
跑满了,until 仍然为假:看 on_exhausted
accept接受当前结果,循环成功
fail循环失败,运行失败
ask(默认)先跑 reflect 给建议,再问你:1 再跑一轮 · 2 接受 · 3 终止。24 小时不回复算失败
审批步骤的 changes 能把循环重新打开:你提修改意见后,循环最多再跑 rounds 轮,后面的步骤重置后重跑。