這次要收尾的事: 一張安全 backfill 變更單已在 dbcli 外執行。現在團隊要用同一個條件回讀,保存驗證文物與不含敏感內容的 provenance,而不是把執行紀錄散在聊天訊息裡。
寫入之後,怎麼留下能查的答案 寫入前先把驗收條件跑過一次 驗證指令不會執行 UPDATE 或 DDL。先讓防護檢查目標與回讀條件,並取得精確的 after-write 指令;這樣寫入後不會臨時改驗收標準。
dbcli verify safe-backfill --table users --query "UPDATE users SET status = 'active' WHERE status IS NULL" --verify-query "SELECT count(*)::int AS n FROM users WHERE status IS NULL" --expect "value == 0"外部寫入完成後,用同一份條件回讀 套用已核准的寫入後,使用同一情境加上 --after-write 執行回讀斷言,再把 verification artifact 和 receipt 留在工作區。
dbcli verify safe-backfill ... --after-write --evidence-receipt .dbcli/evidence/verify-receipt.json別把 receipt 成功當成資料驗證成功 驗證情境會給 verified、not_verified、indeterminate 或 blocked;receipt 只另記錄 succeeded 或 failed provenance。兩者要一起看,但意思不同。
dbcli 不會替你做什麼 verify safe-backfill 永不執行 backfill 寫入。receipt 不含 SQL、rows、credentials 或使用者路徑,也不是執行核准;預檢不能建立 receipt。