AI 讓修改變快,也讓人類更容易被大量 diff 淹沒。CI 的作用是每次變更都自動執行共同底線,及早阻止格式、型別、測試或建置失敗進入下一步。今天為任務追蹤 App 設計一條最小、可理解的 Pipeline。
第一層執行格式或 lint、型別檢查和快速單元測試;第二層跑需要資料庫的整合測試;建置檢查確認正式產物可產生。耗時或需要真實外部服務的測試可以分開觸發,不讓每個 commit 都依賴網路或產生成本。
Pipeline 要固定套件與執行環境版本,從 Secret 儲存取得測試用變數,不在設定檔或 Log 顯示真值。測試資料庫和正式資料庫完全分離。快取能加速,但若造成舊產物誤判,就應先求正確再調整速度。
任務描述是:「讀取本次 CI 失敗的 job、命令與完整錯誤,先判斷是程式、測試、設定或暫時性環境問題。只修正有證據的原因,於本機或等價環境重現後提交最小修改;不要停用測試、放寬規則或加入無條件重試來隱藏失敗。」
CI 綠燈不等於產品正確,只代表已定義的檢查通過。如果到期時間在特定時區顯示錯誤,而 Pipeline 沒有這個案例,綠燈也抓不到。因此每次線上 Bug 都要評估是否能轉成有價值的自動檢查,逐步提高品質門檻。
通過 CI 後可自動建立預覽部署,供人工操作;是否自動進正式環境取決於風險和團隊流程。涉及 Migration 時,部署順序和回復方案必須明確。第一版先採可審查的預覽環境,保留人工確認正式發布的步驟。

目前完成 CI/CD 階段和失敗處理原則,尚未建立實際 Workflow,因此沒有執行時間或穩定度數據。實作後會記錄哪些檢查最常抓到問題,以及是否產生不必要等待。
CI 是團隊對「可以繼續」的共同最低標準,不是替 AI 背書的章。明天加入 Logs 和 Monitoring,讓部署後的問題也能靠證據調查。