ADR-0196 (依存関係の週次自動更新有効化 · Accepted 2026-07-03) の運用ルール正典。.github/dependabot.yml (main #4055 で新設) に基づく Version Update 経路と、GitHub Dependabot Alerts の Security Update 経路の使い分けを定める。

本 doc は ADR-0196 §11 実装配線「docs SSoT 同期」の一環で新設。ADR-0196 本文と本 doc は 1:1 対応 (ADR = 決定と根拠 · 本 doc = 現場で参照する運用手順)。

目的

  • 依存関係の脆弱性を早期検知し、リスクレベル別に対応する
  • 手動 pnpm update が「過去 4 回中 3 回で一括更新に流れて破綻」した経験を、Dependabot 自動化で解消する
  • SOC 2 CC7.1 / CC8.1 の脆弱性対応証跡を機械可読な形式で保存する

2 経路の使い分け

Version Update (weekly cycle · 通常 patch/minor 更新)

  • 経路: .github/dependabot.yml の 4 update source (root / drp / tools/rq-eval / github-actions) が weekly 発火
  • 対象: 全 dependency の latest version tracking
  • label: dependencies + source 別 (dep-root / dep-drp / dep-tools / dep-actions)
  • auto-merge 対象 (ADR-0196 §3): patch/minor のみ · major bump は手動判定

Security Update (自動 PR 化 · 脆弱性優先対応)

  • 経路: GitHub Dependabot Alerts で脆弱性検出 → fix version が upstream にあれば自動 Security Update PR 化
  • 対象: CVE 検出済の dependency のみ (44 alerts / 2026-07-03 時点)
  • 注意: upstream に fix version がない場合は PR 化されない = 手動対応要 (方針 A · 個別処理)
  • severity 別対応 (2026-07-03 doc session §Dependabot alerts 44 の分布参照):
    • critical → 即対応 (main/drp 発注 handover 経由)
    • high → 週次一括処理 (発注 handover 経由)
    • medium → 月次一括処理 or ADR-0196 実装完遂後の auto-merge 化
    • low → 四半期処理 or dismiss (影響評価後)

4 update source (weekly cycle)

.github/dependabot.yml の登録 (2026-07-03 時点):

sourcedirectoryopen-pull-requests-limitlabel
root workspace/5dependencies + dep-root
drp workspace/drp5dependencies + dep-drp
tools/rq-eval/tools/rq-eval3dependencies + dep-tools
github-actions/ (.github/workflows/**)3dependencies + dep-actions

open-pull-requests-limit の意図: Enterprise 化直後の一気消化を防ぎ、review 負荷を上限化する。上限超過分は Dependabot が翌週に持ち越す。

SLA

ADR-0196 §4.1 で確立:

  • 目標 (成立条件): 7 日以内 PR 化率 > 80% (Version Update / Security Update 共通)
  • 撤退閾値: 30 日以内 PR 化率 = 100% を維持できなければ ADR-0196 撤退条件 §4 発火
  • 月間 open PR 数: ≤ 16 件 で運用維持 (超過は open-pull-requests-limit で自動抑制)
  • CI 実行時間: 平均 2 分 (dependency PR 1 本) · 月次合計 ≤ 40 分 で維持

7 日と 30 日の使い分け: 7 日 = 目標値 (KPI 追跡) · 30 日 = 監査下限 (SOC 2 CC8.1 準拠 · 30 日超は監査で指摘)。両者の関係は Confirmation §9 で四半期毎に verify する。

四半期サニティチェック

ADR-0196 §9-5 で確立:

  • 頻度: 四半期 (2026-10 / 2027-01 / 2027-04 / 2027-07)
  • 手順:
    1. 直近 13 週の Dependabot PR 一覧を gh pr list --label dependencies --state closed --limit 100 で取得
    2. major bump は全件 review · minor 以下から層化サンプリング N=5 (Claude 指摘の検出力補強 · Layered sampling)
    3. 各 PR の transitive dependency breaking change 有無を確認 (release notes + pnpm why <package> で影響評価)
    4. CI 通過だけで安全と判断されている「認知バイアス」を検出する目的
  • 結果保存: docs/_internal/06_ops/audit_evidence.md §四半期サニティチェック履歴 に追記

撤退条件 (ADR-0196 §8 準拠)

  1. workspace protocol 誤解釈のサイレント失敗 — 10 日連続 Dependabot PR ゼロ → Slack アラート (.github/workflows/dependabot-zero-pr-alert.yml · ADR-0196 §11 実装配線)
  2. 月間 open dependency PR > 16 件 sustained 2 ヶ月 → open-pull-requests-limit 調整 or Version Update 一時停止
  3. CI 実行時間 > 月 40 分 sustained → dependency 対象縮小 or CI 並列化検討
  4. 30 日以内 PR 化率 < 100% → 監査失格 · dependabot.yml 削除 & Version Update 停止 & Renovate 移行 ADR 起票
  5. major bump auto-merge の breaking change 事故 → auto-merge 範囲を patch のみに縮退

監査証跡連携

SOC 2 CC7.1 / CC8.1 準拠の証跡は docs/_internal/06_ops/audit_evidence.md §Dependabot 対応履歴 で管理する。月次 JSON エクスポート (scripts/dependabot_sla_export.mjs · ADR-0196 §11 実装配線) の保存先 · 保存期間 · 改ざん不可要件は同 doc §保存要件 を参照。

関連

  • ADR-0196 (依存関係の週次自動更新有効化) — 本 doc の正典 · Accepted 2026-07-03
  • ADR-0142 (Pregate 簡易判定) — 月額 $80 上限で cost gate · Dependabot 増分は $0.26/月で範囲内
  • ADR-0159 (main = orchestrator · GAS 実装は mas 専属) — main 領分の CI 配線ルール
  • docs/_internal/05_how-to/git_workflow.md §Dependabot PR の review 判断 — major bump 除外・CODEOWNERS 承認手順
  • docs/_internal/06_ops/audit_evidence.md — SOC 2 監査証跡の保存要件
  • .github/dependabot.yml — 現行の update 定義 (main PR #4055)