~/VibeHandbook
免費 PDF

15 · 01

為什麼指揮 AI 時你需要防護欄

AI 並不知道你的應用本該做什麼。它只是在向看起來合理的模式靠攏。這意味著它會樂此不疲地:

  • 為了"修復報錯"而刪掉一個它不理解的檢查
  • 在你只要求它改一個檔案時,卻重構了三個檔案
  • 引入一個 happy path 不會暴露出來的隱蔽 bug
  • 在它根本沒執行過程式碼的情況下,自信地告訴你已經做完了

防護欄把"相信我"變成"拿出證據"。目標是構建一個讓東西很難被意外搞壞的系統,這樣你就能一直說"先試試看",而不必屏著呼吸。

把這些防護欄想像成一條流水線,每一處改動在抵達真實使用者之前都必須穿過它。每道關卡都廉價而自動,其中任何一道都能把一個壞改動當場攔下:

   程式碼變更
       │
       ▼
  ┌────────┐   ┌────────┐   ┌────────┐   ┌──────────┐   ┌────────┐
  │  LINT  │ ▶ │ TYPES  │ ▶ │ TESTS  │ ▶ │ CI  GATE │ ▶ │ DEPLOY │
  │  樣式  │   │  形狀  │   │  行為  │   │ 全部通過 │   │  上線  │
  └────────┘   └────────┘   └────────┘   └──────────┘   └────────┘
       │            │            │             │
       ▼            ▼            ▼             ▼
     ✗ FAIL ────────────────────────────▶ 阻止合併
                 (在到達使用者之前修復)

這件事在 AI 身上比在人類隊友身上更重要,有一個更深層的原因。一個刪掉校驗檢查的人類,通常知道自己在冒險,並且能感到那份分量。AI 什麼也感覺不到。它會移除一個守衛、重寫一個檔案、然後報告成功——無論這個改動是絕妙還是災難性的,都用同樣歡快的語氣。你讀不出它的肢體語言,因為它根本沒有肢體語言。防護欄就是它的肢體語言——它是關於這份工作是否真正穩妥,你能得到的唯一誠實訊號。

想離線閱讀?

免費下載整本書的 PDF 或 EPUB。