試想一間單車維修店。客戶只係想將取車備註改成星期五下晝,冇提過聯絡電話。人工智能產生嘅更新,一定要分清楚冇提到,同明確刪除。呢個係虛構例子。 喺採用 JSON 合併修補格式嘅介面入面,只包括取車備註,唔包括電話欄位,原本電話就會保持不變。先講清楚業務意圖,再產生更新。唔好為咗湊齊欄位,就加空值。 同一個協定入面,電話空值代表移除電話成員,唔係我唔知道電話。擷取資料嗰陣嘅未知狀態,唔可以直接變成寫入嗰陣嘅刪除。刪除要有明確意圖同權限。 清單亦有界線。合併修補格式入面嘅陣列會成組取代,唔係自動追加。淨係提交一個新標籤,可能會令原本嘅標籤消失。審核要顯示完整嘅前後差異。 先確認介面格式。JSON Patch 用有先後次序嘅操作清單,係另一種協定。唔可以因為請求方法一樣,就混用刪除語意。業務需要保存空值嗰陣,都要核對介面規格約定。 用合成資料測試冇提及、明確刪除、空字串同清單。先寫低預期差異,再檢查實際請求,同讀返個結果。目標係冇意外刪除或者遺漏項目。呢個係建議測試方案,冇喺客戶系統執行。 畀團隊留低一條規則:讀取可以係未知,寫入就一定要講清楚係保留、設定,定移除。負責人審核嘅係資料差異,唔只係人工智能寫出嚟嗰句說話。