背景
VS Code のリリースノートには Update 1.105.1: The update addresses these issues のように取り組んだ issue へのリンクがある。このリンクを辿るとマイルストーンごとに取り組んだ issue の一覧が見れる。
マイルストーンを見ると November 2025 のように月単位のものや September 2025 Recovery 2 のように Recovery と記載されているマイルストーンがあることがわかった。月単位のマイルストーンには issue と関連する PR が紐づけられている。全体で1000件を超える月も多い。Recovery と付くものは多くとも10数件程度のようだ。
また、issue を眺めているとどのマイルストーンにも endgame-plan というラベルがひとつ存在することに気づいた。issue を開いてみると、そのマイルストーンの進め方のようなタスクが並んでいた。「マイルストーンを作成する」「バージョン表記を更新する」「candidate issue をアサインする」などにはじまり、「リリースノートを更新する」「マイルストーンをクローズする」で終わっている。
endgame-plan の issue の中に Development Process という wiki へのリンクがあった。これが VS Code の開発プロセスらしい。少し中身を見てみることにした。
VS Code の開発プロセス
ロードマップ
- 半年から一年単位での大きなロードマップがある
イテレーション
- 概ね一ヶ月単位でイテレーションを回す(月曜はじまり金曜終わりにする、イテレーションごとに長さが変わることもある)
- イテレーション期間中に取り組むタスクは “Iteration Plans” のページに集約する
プランニング
- マイルストーンの初めに実装する昨日と修正対象のバグの優先順位付けを行う
- Bug にはマイルストーンを割り当てる
- 新機能は Plan Item として issue を作成して “Definition of Done” のチェックリストを含む(リンク先には Definition of Done も記載)
イテレーション期間中
概ね週単位で区切って作業が進められているようだ。イテレーションで作業した内容は次のイテレーションの中旬にリリースされている。
- Week 1: 前回のイテレーションで発生した負債の返済、対応しきれなかったクリティカルな課題への対応、次のイテレーションの計画
- Week 2: プランにしたがって作業を進める
- Week 3+: プランにしたがって作業を進める
- Final Week: Endgame
- 新機能のテストとドキュメントの更新
- プレリリース(内部での検証
- Week 1 (next iteration):
- プレリリースの動作確認、致命的なバグの修正
- 本リリース
対応しきれなかったバグや機能は次のマイルストーンに延期されるかバックログに戻されることで、マイルストーンは 0 bugs and 0 issues の状態が保たれる。
エンドゲームについて
マイルストーンの最終週のことを「エンドゲーム」と呼んでいる。最終週は機能追加を行わない、テストを実施する、重大なバグの修正を行うなどの対応が行われる。
次のマイルストーン前半でバグを修正して、中旬には stable 版をリリースするようにする
実践的な流れ
マイルストーンを October 2025 として考えてみる
Iteration Plan を作る
まずはじめに Itereation Plan for October 2025 という issue を作成する。ラベルは iteration-plan になっている。
この issue にはマイルストーンの概要と、トリアージされて2025年10月に取り組むべきタスクのチェックリストが並ぶ。タスクは誰がやるかと、優先度が記載された状態にする
作業
基本的には月の中頃は Iteration plan にしたがっての作業。
Endgame をはじめる
最終週になったら October 2025 Endgame という issue を作成する。ラベルは endgame-plan に。
エンドゲームが開始したらコードは変更しない。ビルドやテストなど動作確認を完了させていく。必要であれば発見されたバグに対応する。準備が整ったら、スケジュールの調整を行い、中旬頃に本リリースを行う。
具体的なエンドゲームの issue にはもっと詳細な手順が書かれている。

