階段
每種 loop 有固定的階段順序,證據說明哪些階段已完成。沒有任何東西會擋下:太早開始的階段只會得到一行警告,證據改變時階段會自己退回。
flowchart TD
subgraph durable
direction TB
d1[decide] --> d2[grill] --> d3[spec] --> d4[read] --> d5[approve] --> d6[design] --> d7[anchor] --> d8[act] --> d9[verify] --> d10[review] --> d11[reflect] --> d12[close]
end
subgraph reviewed
direction TB
r1[anchor] --> r2[act] --> r3[verify] --> r4[review] --> r5[reflect] --> r6[close]
end
subgraph inline
direction TB
i1[anchor] --> i2[act] --> i3[verify] --> i4[reflect] --> i5[close]
end
subgraph quick
direction TB
q1[act] --> q2[check] --> q3[reflect] --> q4[close]
end
quick 為 act → check;inline 為 anchor → act → verify;reviewed 加 review;durable 在 anchor 之前再加 decide → grill → spec → read → approve → design。每一種都以 reflect → close 結尾。
read 的輸出、widget,以及階段何時移動
read 顯示 <kind> · phase <current> ✓ → <next> (missing: …) · skipped: …。最後一次修改之後有 check 或 review 失敗時,下一個階段是 fix,否則是 close。
編輯器下方的 widget 會顯示 ⚓ <kind> · <current> ✓ → <next>,還有 friction 等著 reflect 時附 · N friction。它在每次工具呼叫後、session_start 時,以及 agent 寫出 Reality anchor: 這一行時更新,loop 結案後清掉。工具呼叫之後它不建工作樹:只讀該事件已建好的 tree,settle 對每個 repo 只建一次。
前一個階段還沒完成就開始下一個階段,會用一行警告一次。證據改變(verify 之後又有 diff、spec 被改回 proposed)或用 back 時,階段會退回。