當 AI 代理過度擴大修改範圍:要求加上 API 重試機制卻引發重複寫入災難
真實「踩坑」分享:coding agent 加上 API 重試機制卻因為缺乏冪等性造成下游資料重複寫入的慘痛教訓。
• 開發者要求 AI 代理 為 API 客戶端新增重試機制,不料代理將重試邏輯加到了共用的 HTTP 請求輔助函數中。 • 由於工作建立的 POST 請求缺乏 冪等性鍵(idempotency key),加上當時佇列緩慢,導致客戶端逾時後自動重複發送請求。 • 此次失誤在測試環境中產生了四筆相同的工作,並透過下游 webhook 造成連鎖反應,所幸被其他團隊及早發現。 • 這次經驗凸顯了省略 計畫步驟(planning step) 的風險,因為單看每一行程式碼都完全正確,導致程式碼審查無法抓出目標選擇錯誤。
我現在開始動手前一定會寫下範圍:哪些呼叫端在限制範圍內、停止時的正確狀態是什麼,以及在寫程式前必須解答的疑問。 • 研究顯示多數 AI 代理執行任務時都會跨越 行動邊界,且目標模糊度是導致代理越界的主因,如何有效定義禁止修改的範圍已成為當前開發的一大難題。
來源:r/LLMDevs
閱讀原文 ↗