並行代理委派
在單次 delegate_task 呼叫中將工作分發給多個子代理時使用,特別是在他們建立或編輯檔案的情況下。此處大部分的成本超支與樹狀結構損毀,源於兩個代理認為自己擁有同一個檔案。
使用時機
任何多代理分發作業,只要任務涉及同一個儲存庫、目錄或專案——例如檔案建立、按區域劃分的重構,或是先建置再測試的分工。
程序
-
在分派前,按路徑切割。 給予每個任務對指定檔案或目錄的獨佔所有權。兩個代理不得寫入同一個檔案,且不能有任何檔案未被分配。選擇數量較少但範圍明確較大的切割,優於許多重疊的切割。
-
在每個任務簡報中明確寫出絕對路徑。 相對路徑在某些代理中會解析到不同的工作目錄,這正是工作內容被放入
~/fixture而非~/Projects/app/fixture的原因。應包含一條明確的「不得在此樹狀結構外建立任何內容」的限制。 -
每個共享檔案指定一個所有者。 設定檔、清單與清單註冊表由單一任務具名認領;告知其他任務不得編輯該檔案,只能報告其應包含的內容。
-
禁止你不希望發生的副作用。 明確說明是否允許安裝、建置、測試執行與 git 提交。未經監督的安裝會將
node_modules散佈到不相關的目錄中。 -
要求一份可機器驗證的報告: 建立的絕對路徑、驗證了什麼,以及如何驗證(解析、渲染、建置、單元測試)。未附帶驗證方法的自我回報成功結果,只是雜訊。
-
在提交或回報前,自行驗證合併結果: 進行建置、執行測試套件,並回頭讀取關鍵檔案。不要相信 N 份獨立報告組合起來就能形成一個可正常運作的樹狀結構。
-
清理雜散物件。 在目標樹狀結構之外,搜尋代理可能建立的目錄(家目錄根目錄、同級專案目錄、暫存區)。在會話結束前,協調處理任何發現的內容。
常駐規則
- 檔案被刪除是一個警訊:當兩個代理清理「未使用的」路徑時,每個代理都會刪除另一個代理剛剛寫入的內容。必須明確分配刪除權限。
- 不要因為等待同級代理而阻塞自己的輪次;應繼續獨立工作,並在他們的結果到達時採取行動。
- 當結果在你已經完成並提交之後才到達時,請檢查工作目錄狀態與雜散檔案,然後決定哪些仍然需要處理——不要假設目錄是乾淨的,也不要假設他們的工作沒有衝突。
- 盡量減少同時寫入同一項成果的代理數量;可以自由地進行唯讀分析的分發,但寫入分發應謹慎。
陷阱
- 同名衝突。 兩個任務簡報中提到「CSS 檔案」或「設定檔」,但每個代理會將其解析到不同的路徑;請使用明確的絕對路徑。
- 慣例漂移。 代理在看到部分已建置的樹狀結構後,中途採用了另一個代理的佈局,導致一個專案中出現兩種慣例;請在任務簡報中鎖定佈局。
- 信任未經實際執行的驗證。 聲稱建置或渲染通過但沒有證據的報告,通常表示僅是形式上的判斷;請重現該驗證。
- 清理衝突。 一個代理刪除自己「已廢棄」的檔案時,可能會刪除另一個代理的交付成果——請參閱上方常駐規則。
支援檔案
templates/delegation-brief.md— 可複製填寫的任務簡報,強制規定路徑所有權、禁止的副作用,以及可驗證的報告格式。