Dependabot 預設等待三天:把依賴更新速度變成供應鏈策略
GitHub 現在預設等待至少三天,才為一般版本更新建立 Dependabot PR;安全更新仍會立即建立。
發生了什麼
此預設值適用於 github.com 支援的生態,並將在 GHES 3.23 提供。cooldown 可設定 1–90 天、SemVer 分級與 include/exclude 清單。
觀察不等於驗證
等待能讓撤回、issue 與警告浮現,但沒有訊號不代表安全。bot schedule、review、CI 與部署各自影響真正的 lead time。
區分 PR 與安裝策略
Dependabot 只控制何時建立 PR,無法阻止手動安裝或其他 resolver。npm 的 min-release-age 可管解析層,lockfile 與 npm ci 可重現已核准的依賴樹。
落地方式
應用 Dependency Review 檢查直接與傳遞依賴變更,並依影響範圍為 runtime、開發工具、GitHub Actions、container 與 IaC 設不同 gate。
風險
cooldown 不一定減少 PR 數量,也可能延遲緊急但未列為安全更新的修正。還需要 grouping、有期限的例外、canary 與 rollback。
實務清單
✓盤點 dependabot.yml
✓區分版本與安全更新 SLA
✓強制 Dependency Review
✓使用 lockfile 與 frozen install
✓為例外指定負責人與到期日
GitHub: GitHub Changelog: Dependabot version updates introduce default package cooldown
來源
- GitHub Changelog: Dependabot version updates introduce default package cooldown
- GitHub Docs: Dependabot cooldown option
- GitHub Docs: Optimizing version-update pull requests
- GitHub Docs: Dependency review
- GitHub Docs: Dependabot security updates
- npm Docs: min-release-age
- npm Docs: npm ci
- Reddit r/reactjs: package-manager minimum release age discussion