版本控制
kikuflow 的流程採用不可變版本機制,每個發布的版本都是永久紀錄,無法事後修改。
為什麼要這樣設計?
保護進行中的流程實例。如果流程可以隨時修改,正在跑的申請可能會遇到:
- 審核人突然換了,已審過的步驟要重算?
- 步驟數量變了,已完成的節點狀態怎麼算?
- 稽核紀錄無法對應到任何一個版本
版本鎖定讓每個實例始終依照「它被建立時的那個版本」跑完,確保一致性。
版本的生命週期
草稿(Draft)→ 發布(Published)→ 封存(Archived)- 草稿:Agent 產出後尚未發布的狀態,可以繼續調整
- 發布:正式啟用,成員可以提交這個流程的申請
- 封存:當新版本發布後,舊版本自動封存,不再接受新申請,但進行中的實例繼續完成
如何發布新版本
對 SuperAdmin Agent 說明需要調整的內容,例如:
「修改『請購審核流程』,第二步的審核人改為稽核組,超過 10 萬才需要財務主管確認(原本是 5 萬)。」
Agent 會:
- 基於現有版本產出新版本草稿
- 讓你確認後發布
- 新版本發布後,舊版本自動封存
版本切換的影響
| 新申請 | 進行中的申請 | |
|---|---|---|
| 新版本發布後 | 走新版本 | 繼續走舊版本直到完成 |
注意版本切換後的過渡期
新舊版本同時有進行中的申請是正常現象。在舊申請都完成之前,系統會同時維護兩個版本的執行狀態。