ロードマップ

// ROADMAP · v1

締め切りではなく、フェーズで。

フェーズごとの計画——何がいつ、どのような順序でリリースされるか。再現プリミティブという観点で語る。

// 00 · 日付についての注記

期限の列はない。

このプロジェクトのフェーズ期間は方向性を示すもの——数ヶ月〜数年——であり、 コミットメントではない。終わりのないプロジェクトにカレンダー上の目標を設定することは、 正直さを犠牲にして進捗の外観を作るだけであり、以降のあらゆる決断を 「正しくバグを再現する」ではなく「数字を達成する」方向に歪める。

フェーズに本当の締め切りが生まれたとき、日付はフェーズとともに説明付きで掲載される。 それまでは、順序と「出荷した内容」のシグナルがロードマップだ。

フェーズタイトルは GitHub Milestones に対応する。Milestones が正式な計画サーフェスであり、 このページはユーザー向けの翻訳だ。

// フェーズ

出荷済み、出荷中、キューにあるもの。

01
Phase 0 — Bootstrap。2026-04-26 CLOSED。

Infrastructure-as-Code の基盤(GitHub 設定、ラベル、マイルストーン、ブランチ保護)。AI 委譲開発ワークフロー。ビジョン、アーキテクチャスタブ、ロードマップ。三層アーキテクチャを表す初期 src/ ツリー——製品コードなし、スキャフォールドのみ。

02
Phase 1 — Layer 1: データ処理。

初の本格的な再現実装: Pyodide による Python + SQLite over WebAssembly。手選びのアップストリームバグ数件(pandas / numpy / sqlite の動作リグレッション)が、ブラウザのタブ 1 枚から再現可能になる。バグの説明 → リンク先の再現ページ → クリック → pass/fail verdict。

03
Phase 2 — Layer 1: 多言語。

Layer 1 の拡張: Rust (wasm32-wasi)、JavaScript/TypeScript、Ruby (Ruby.wasm)、PHP (php-wasm)。言語を追加する作業がゼロからの書き直しではなく小さなランタイムアダプタになるよう、共通のブラウザサイドスキャフォールドを抽出。

04
Phase 3 — Layer 2: Docker。

本物の fork、本物のソケット、本物のファイルシステムが必要なバグのための完全忠実度コンテナ再現。カタログモデル(ホスト実行ではない): ピン留めされた Dockerfile + repro.sh + GHCR 公開イメージ。訪問者は 1 回の `docker run` でローカル再現。必要に応じて「Open in Codespaces」でワンクリック。CI スナップショット verdict が各ギャラリーページに掲載。

05
Phase 4 — Layer 3: record-replay & deterministic。2026-04-28 CLOSED。

Layer 1 と Layer 2 では届かないバグのための第三のレイヤー: record-replay (rr) と決定論的シミュレーション (Antithesis スタイル)。トレース同梱カタログ: トレースを GHCR イメージに焼き込み、訪問者のマシン上で replay。1 つのレシピ出荷(lost-update データレース)。以降のエントリは具体的なバグが生まれるまで保留。

06
Phase 5 — Ecosystem。2026-04-29 CLOSED。

Contract v1 を JSON Schema と CI 強制付きの外部標準として公開。Manifest v1 と 3 つのリファレンス TOML マニフェストにより、外部リポジトリが `.vivarium/manifest.toml` 1 ファイルで Vivarium 実行可能な再現を宣言できるようになった。再利用可能な verdict キャプチャ用 GitHub Actions ワークフロー。週次 cron による verdict ドリフト検出。Issue トリアージツールは採用がないため保留。

07
Phase 6 — ユーザビリティとビジュアルレイヤー。2026-05-02 CLOSED。

ビジュアルリデザイン + 再利用可能コンポーネントライブラリ出荷(Claude Design の利用枠制限を回避するため Stitch 駆動のモックで代替)。対称 URL ツリーと翻訳済み仕様ページを伴う完全な日本語 ⇄ 英語 i18n。再現比較: Contract v1 evidence サーフェス、branch-fix verdict キャプチャパイプライン、横並び比較ページ。ファセット付きレシピギャラリー + エラーを貼り付けると候補レシピがランク順に出るマッチャー。対話的なマニフェストスキャフォルダー。Vivarium MCP サーバには 4 つのツール(list_recipes、get_recipe、lookup_verdict、match_error)。6 つすべてのサブストリーム(V, R, S, M, X, L)が v1 スコープで出荷され、クローズルール(V + R + S/M/X/L のうち少なくとも 1 つ)は 4 重に充足された。

08
Phase 7 — はじめの 30 分のオンボーディング。ACTIVE。

Phase 6 の「プリミティブは使える」状態を「初見の人が冷めた状態から拾える」状態へ引き上げる。UI ブラッシュアップ(V′ — 情報設計、レイアウト動線、ビジュアルトークン磨き込み、コンポーネント graduation)とオンボーディングドキュメント(D — getting started、統合ガイド、AI エージェント設定、用語集)は表裏一体: ドキュメントが壁に当たるところは UI が間違っている証拠。AI-slop 検証(B3)は既存の R.2 Path A + R.3 比較ページ + MCP match_error を一本のエンドツーエンドウォークスルーに繋ぎ、AI エージェントが「自分の候補修正は本当に機能しているのか?」を冷めた状態から駆動できるようにする。A-tail は Phase 6 の残作業を片付ける: verdict + manifest validator の ajv-standalone マイグレ、および match_error v2(同義語テーブル、ファジーマッチ、言語別 stopword)。V′ + D + B3 が出荷したらクローズ。A-tail は optional。

// 計測

クローズルール: 部分的な完成でよい。

このプロジェクトのフェーズクローズは、Phase 4 クローズ ADR (ADR-0012) で定めた 意図的なパターンに従う。フェーズの輪郭が 部分的な完成によって証明されたとき——1 つの Layer 3 レシピ、 1 つの MCP ツール、1 人の外部採用者——フェーズはクローズし、 残作業は再キューイングされる。これにより、いつまでも閉じない「未完フェーズ」が じわじわと累積していく事態からプロジェクトを守っている。

出荷しなかった決断も、出荷した決断と同じ丁寧さで記録される。 公開のフェーズクローズ要約は、トレードオフを捉えたプライベート ADR を参照しているため、 将来のコントリビューターは「なぜそのパスが却下されたのか」まで理解できるようになっている。

// 次のページ

実際に動かしてみる

フェーズの全体像を把握したら、ブラウザのタブ 1 枚で 1 つのレシピを動かして verdict を読むのが一番速い。

VIVARIUM は ALETHEIA-WORKS の一部 · GitHub でソースを見る →