復旧はプラットフォーム全体で同時に進んだわけではない。主要サービスが稼働状態に戻った後も、一部アプリケーションではCopilotの認証問題が続いた。 外部のインシデント記録では、全体の障害が収束したのは21時15分(UTC)ごろとされており、深刻な性能低下が始まってから完全な復旧まで、約7時間半に及んだことになる。
GitHubが示した主なエラー率は次の通りだ。
ここでいう20%や50%は、影響を受けたリクエストのエラー率であり、GitHub利用者全体の何%がオフラインになったかを示す数字ではない。APIのエラー率が20%だったからといって、利用者の20%が一律にアクセス不能だったわけではない。また、50%という数字は、すべてのリポジトリ通信ではなく、対象となったダウンロードリクエストに適用される。
障害は米国の月曜朝、つまり多くの開発チームが週の作業を始める時間帯に発生した。開発現場では、始業後にリポジトリへアクセスし、コードレビューを確認し、CI/CDのジョブを実行し、リリースやデプロイを進めるケースが多い。
今回影響を受けたのは、これらの工程に直接関わるActions、Pull Requests、API、Webhooksなどだった。そのため、単一機能の停止ではなく、コードの取得からレビュー、ビルド、デプロイまで複数の連携箇所で失敗が起きる状況になった。
障害報告サイトの数字には、時間帯や集計方法による差もある。Downdetectorでは、米太平洋時間8時12分までに1万件を超える報告が記録されたという報道がある一方、別の復旧報道ではピークが約3,000件だったとされている。
これらは影響を受けた利用者数の正確な集計ではない。障害追跡サイトの数字はユーザーから寄せられた報告件数であり、地域、時刻、報告する人の割合、集計方法によって変動するためだ。
公開された更新から確認できるGitHubの対応は、主に次の3点だ。
一方で、問題のコンポーネントの名称、具体的な修正内容、そして今回の障害が容量不足によって直接引き起こされたことは、現時点の公開情報からは確認できない。
GitHubは、AI支援やAIエージェントによる開発ワークフローでトラフィックが急増していること、Azureへの容量移行やサービス分離などを進めていることを、より広い信頼性向上の文脈で説明している。 しかし、AI関連の負荷増大やインフラ上の制約を、8月17日の障害の確定した根本原因として扱うのは時期尚早だ。最終的な判断には、GitHubが予告しているポストモーテムを待つ必要がある。
今回の障害は、GitHubにとって単発のトラブルとして片付けにくいタイミングで起きた。GitHubの2026年7月の可用性レポートでは、同月に8件のインシデントが記録されている。中でも7月8日の障害は7時間超にわたり、Web UI、REST API、GraphQL API、Actions、Packages、Copilot、Git操作などに影響した。
GitHubは、AI支援・AIエージェント型の開発ワークフローを主因の一つとして、トラフィックが急速に増えていると説明している。対応策として、伸縮性のある容量を確保するためのAzure移行、モノリスの分割、サービス間の共有障害点の削減などを挙げている。
インフラ計画の規模も大きい。当初は従来の10倍の容量を目標としていたが、2026年2月までに、当時の規模の30倍を前提に設計する必要があると判断されたと報じられている。 Azureの活用拡大に加えて、AWSを含むマルチクラウドの容量確保に関する取り組みも報じられているが、これらの計画が8月17日の具体的な原因を説明するものではない。
GitHubはもはやGitリポジトリを保管する場所だけではない。コードの共同作業、CI/CD自動化、ID管理、AIによるコーディング支援を一つの基盤で提供している。その分、共有される依存関係に問題が起きると、リポジトリへのアクセス、レビュー、ビルド、デプロイ、Webhooks、AI支援が一度に止まる可能性がある。
今回の障害は、開発者が近く一斉にGitHubを離れることを証明したわけではない。短期的に大規模な移行が起きると予測できる根拠も、現時点では示されていない。
ただし、GitHubを本番ソフトウェアの提供基盤として使う組織にとって、障害時の前提を見直すきっかけにはなる。たとえば、次のような備えが考えられる。
こうした対策でプラットフォーム障害そのものをなくすことはできない。しかし、次のサービス停止が開発全体へ波及する範囲、いわゆる「爆発半径」を小さくすることはできる。
8月17日の障害について最終的な評価を下すには、GitHubのポストモーテムが必要だ。現時点で確実に言えるのは、リポジトリのダウンロードと複数の開発ワークフローに深刻な影響を与える、広範かつ連鎖的な障害が発生し、復旧は段階的に進んだということ。そして、その根本的な失敗原因は、まだGitHubから公表されていないという点である。