Files
hakorune/docs/private/roadmap/phases/phase-15.75/INDEX.md

401 lines
12 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Phase 15.75 — 完全脱Rust大作戦 📚 エントリーポイント
**最終更新**: 2025-10-14
**ステータス**: 計画段階 → 実装開始準備中
**目的**: Rust 99,406行 → 10,400行89.5%削減)への完全ロードマップ
---
## ⚡ **超急ぎの人向け3分で全部わかる**
### 🎯 **Phase 15.75を1行で説明**
```
Rust 99,406行 → 10,400行89.5%削減を1ヶ月で実現
MIR疎結合により失敗時Rollback可能なゼロリスク計画
```
### 🚀 **今すぐやる3ステップ**
#### **ステップ1: スモークテスト確認2分**
```bash
bash tools/smokes/v2/run.sh --profile quick-selfhost
# 期待: 170/185 PASS現状維持
```
#### **ステップ2: TODO読む5分**
```bash
cat "docs/private/roadmap/phases/phase-15.75/TODO.md"
# 確認内容:
# - Phase 1MirCall準備タスク
# - plugin-on スモーク拡充
# - HostHandleRouter 段階移設
```
#### **ステップ3: 1つ選んで実装開始**
```bash
# Option A: 安全メソッドの whitelist を箱化
# - normalize.rs に is_safe_core_method 追加
# Option B: Callable(argv 再構成) のパリティ確認
# - arity>0 の methodRef.call(argv) 正常系スモーク追加
# Option C: HostHandleRouter 境界スモーク
# - 型不一致を明示検出するスモーク追加
```
### 🚨 **失敗したらどうなる?**
```
✅ いつでもRollbackできます
Level 1: バックエンド切替0秒
./hakorune-stage0.exe problem.hako
Level 2: Parser Rollback5-10分
vim selfhost/compiler/parser.hako → 修正
Level 3: Full Rollback10-30分
git checkout stage0-preserved
```
詳細: [STRATEGY.md](./STRATEGY.md)
---
## 🚀 **今すぐ読むべきドキュメント(優先順)**
### 1⃣ **[TODO.md](./TODO.md)** ← 👈 **ここから始める!**
**読むべき人**: 今すぐ作業開始したい人
**内容**: 次の1-2週間でやるべきことP1スコープ
**所要時間**: 5分
```
✅ 完了済み: Map.call P1, Fallback箱化, HostHandleRouter stub
📋 次のアクション:
- Phase 1MirCall小粒・箱化方針で進行
- plugin-on スモーク拡充
- HostHandleRouter 段階移設
```
**結論**: 具体的な作業リストが欲しい → TODO.md
---
### 2⃣ **[ROADMAP.md](./ROADMAP.md)** ← 全体像を知りたい人
**読むべき人**: 「なぜRust削減するのか」「どうやって実現するのか」を知りたい人
**内容**: Phase 15.75の全体戦略と詳細タスクリスト
**所要時間**: 15-20分
```
📊 削減計画:
- Option A: 99,406行 → 10,400行89.5%削減)
- Phase 1-5: 淡々とタスクを消化
🎯 核心戦略:
- Rust VM → Hakorune VM自己実装
- Parser → Selfhost Parser.hako実装
- Boxes → Pluginsプラグインシステム
```
**結論**: 全体像と背景理論を理解したい → ROADMAP.md
---
### 2.5️⃣ **Stage4最短導線**
**ChatGPT最小プラン2日**: [stage-4-chatgpt/INDEX.md](./stage-4-chatgpt/INDEX.md)
- 2関数のC ABIハーネス / feature配下 / スモーク1本bothヘッダ一致
- 先の統合戦略: [INTEGRATION_STRATEGY_CLAUDE.md](./stage-4-chatgpt/INTEGRATION_STRATEGY_CLAUDE.md)
**フル設計Claude版**: [stage-4/INDEX.md](./stage-4/INDEX.md)
---
### 2.6️⃣ **Next Phase15.76**
**extern_c / SelfHost Bootstrap**: ../phase\ 15.76/INDEX.md
- TODO: ../phase\ 15.76/TODO.md
---
### 3⃣ **[STRATEGY.md](./STRATEGY.md)** ← 失敗が怖い人
**読むべき人**: 「本当に安全なのか」「失敗したらどうなるのか」が不安な人
**内容**: MIR疎結合によるゼロリスク戦略 + ツールチェーン要件
**所要時間**: 15分
```
🔄 Rollbackレベル:
- Level 1: バックエンド切替0秒
- Level 2: Parser Rollback5-10分
- Level 3: Full Rollback10-30分
✅ 核心原則:
- Stage 0/1/2並行運用いつでも戻れる
- MIR = 疎結合ポイント(バックエンド交換可能)
🔧 ツールチェーン:
- HakoBuildBox500-800行
- HakoLspBox1,200-2,000行
```
**結論**: リスク管理とツールチェーンを知りたい → STRATEGY.md
---
### 4⃣ **[ANALYSIS.md](./ANALYSIS.md)** ← 「1ヶ月で可能」と思った人
**読むべき人**: 実績ベースの見積もり根拠を知りたい人
**内容**: Git履歴に基づく速度分析 + 3者見積もり比較
**所要時間**: 10分
```
📊 実績データ:
- 21.6コミット/日66日間
- 115行/日削減直近13日間
- M2/M3達成: 63日業界標準の29倍速
🎯 結論:
- ユーザー「1ヶ月」✅ 正しいPhase 1-2コア完了
- Gemini「1年以上」❌ 業界標準ベース
- Claude「6ヶ月」❌ 実績を無視した理論値
```
**結論**: 1ヶ月の根拠を知りたい → ANALYSIS.md
---
## 🎯 **あなたの状況別ガイド**
### 🚀 **「今すぐ作業したい」**
```
1. TODO.md 読む5分
2. 作業開始!
```
### 📚 **「全体を理解してから作業したい」**
```
1. ROADMAP.md 読む15分
→ 全体像理解
2. STRATEGY.md 読む15分
→ 安全性確認
3. TODO.md 読む5分
→ 作業開始
```
### 🔍 **「リスクが心配」**
```
1. STRATEGY.md 読む15分
→ Rollback手順確認
2. TODO.md 読む5分
→ 段階的作業開始
```
### 📊 **「1ヶ月で本当に可能」**
```
1. ANALYSIS.md 読む10分
→ 実績ベースの根拠確認
2. ROADMAP.md 読む15分
→ 詳細計画確認
```
---
## 📊 **4つのドキュメントの関係図**
```
┌─────────────────────────────────────────┐
│ ROADMAP.md │
│ (全体戦略 + Phase別タスクリスト
│ - なぜRust削減するのか │
│ - Phase 1-5 詳細スケジュール │
│ - 週次TODO展開 │
└────────────┬────────────────────────────┘
┌────────┴────────┐
│ │
┌───▼──────────┐ ┌──▼─────────────────────┐
│ STRATEGY.md │ │ ANALYSIS.md │
│ (戦略・安全)│ │ (実績分析) │
│ - Rollback │ │ - Git履歴分析 │
│ - Stage並行 │ │ - 3者見積もり比較 │
│ - ツール要件 │ │ - 1ヶ月根拠 │
└───┬──────────┘ └────────────────────────┘
│ 実践↓
┌───▼──────────────────────────────────────┐
│ TODO.md │
│ (今すぐやること) │
│ - Phase 1MirCall小粒タスク │
│ - plugin-on スモーク拡充 │
│ - HostHandleRouter 段階移設 │
└───────────────────────────────────────────┘
```
---
## 🗺️ **Phase 15.75 完全手順マップ**
### **Phase 0: 準備・計画確認**
```
✅ ドキュメント読了
1. INDEX.mdこのファイル
2. TODO.md
3. ROADMAP.md
✅ 環境確認
- スモークテスト実行: bash tools/smokes/v2/run.sh --profile quick-selfhost
- 現状: 170/185 PASS15 FAIL
```
### **Phase 1: Hakorune VM完成MirCall実装**
```
📋 Phase 1タスク:
- TODO.md の「Phase 1MirCall着手準備」参照
- 小粒・箱化方針で段階実装
- 15/16命令 → 16/16命令100%完成)
```
### **Phase 2: Selfhost Parser実装**
```
📋 Phase 2タスク:
- Parser.hako 実装
- MIR出力確認Rust Parser と一致)
- 詳細は ROADMAP.md 参照
```
### **Phase 3: Boxes Migration進行中**
```
🔄 現状: P3-4レガシー撤退
✅ ChatGPT担当
📋 詳細: PHASE_3_BOXES_MIGRATION.md
```
### **Phase 4: Dual Parser Harness次のフェーズ**
```
🎯 目標: Rust Parser層を100-200行のC ABI層に縮退
📚 完全ドキュメント: stage-4/ フォルダ
- INDEX.md - エントリーポイント
- QUICKSTART.md - 3行要約 + 2日間スケジュール
- C_ABI_DESIGN_SPEC.md - C ABI層設計
- HAKO_ABI_DESIGN_SPEC.md - Hako ABI層設計
- TECHNICAL_REQUIREMENTS.md - 技術要件
- SCHEDULE.md - 詳細スケジュール
- RISK_ANALYSIS.md - リスク分析
👉 次のアクション: cd stage-4/ && cat INDEX.md
```
### **Phase 5以降**
```
🔄 Phase 5: Parser完全移行1週間
🔄 Phase 6-N: 他のコンポーネントも同様にC ABI化
※ ROADMAP.md 参照
```
---
## 📝 **各ドキュメントの詳細情報**
| ドキュメント | サイズ | 読了時間 | 優先度 | 役割 |
|-------------|--------|---------|--------|------|
| **INDEX.md** | 11KB | 3分 | ★★★★★ | エントリーポイント |
| **TODO.md** | 7.4KB | 5分 | ★★★★★ | 今すぐやること |
| **ROADMAP.md** | 41KB | 15-20分 | ★★★★ | 全体戦略+タスクリスト |
| **STRATEGY.md** | 30KB | 15分 | ★★★★ | 安全性保証+ツール |
| **ANALYSIS.md** | 18.2KB | 10分 | ★★★ | 実績分析+見積もり |
| **stage-4/** | 165KB | 2時間 | ★★★★ | Stage 4完全設計 |
| **PHASE_3_BOXES_MIGRATION.md** | 1.9KB | 3分 | ★★★ | Stage 3進行状況 |
---
## 🚨 **よくある質問FAQ**
### Q1: どこから読めばいいの?
**A**: 👉 **[TODO.md](./TODO.md)** から始めてください5分で読める
### Q2: Phase 15.75って何?
**A**: Rust 99,406行 → 10,400行89.5%削減)する計画です。詳細は [ROADMAP.md](./ROADMAP.md) 参照
### Q3: 失敗したらどうなるの?
**A**: MIR疎結合により、いつでもRollback可能です。詳細は [STRATEGY.md](./STRATEGY.md) 参照
### Q4: いつから始めるの?
**A**: **今すぐ**始められます。[TODO.md](./TODO.md) の「次アクション」参照
### Q5: どのくらい時間がかかるの?
**A**: **1ヶ月計画**Phase 1-2コア完了。詳細は [ANALYSIS.md](./ANALYSIS.md) 参照
### Q6: 1ヶ月で本当に可能
**A**: Git履歴の実績ベースで可能です。詳細は [ANALYSIS.md](./ANALYSIS.md) 参照
### Q7: Stage 4Dual Parser Harnessって何
**A**: Rust Parser層を100-200行のC ABI層に縮退するフェーズです。詳細は [stage-4/INDEX.md](./stage-4/INDEX.md) 参照
---
## 🔗 **関連ドキュメント(外部リンク)**
### **上位ドキュメント**
- [00_MASTER_ROADMAP.md](../00_MASTER_ROADMAP.md) - Hakorune全体のマスタープラン
- [CURRENT_TASK.md](../../../../CURRENT_TASK.md) - 現在進行状況
### **参考ドキュメント**
- [INSTRUCTION_SET.md](../../../../reference/mir/INSTRUCTION_SET.md) - MIR命令セット
- [実行モード完全ガイド](../../../../guides/execution-modes-guide.md) - VM/LLVM/WASM実行
---
## 📋 **次のアクション(明確な手順)**
### **ステップ1: 理解する30分**
```bash
# 1. このファイルINDEX.mdを読む3分✅ 完了!
# 2. TODO.md を読む5分
cat TODO.md
# 3. ROADMAP を流し読み15分
less ROADMAP.md
# 4. STRATEGY を流し読み10分
less STRATEGY.md
```
### **ステップ2: 現状確認10分**
```bash
# スモークテスト実行
bash tools/smokes/v2/run.sh --profile quick-selfhost
# 期待: 170/185 PASS現状維持
```
### **ステップ3: 作業開始TODO.mdベース**
```bash
# TODO.md の「次アクション」を1つずつ実行
# Phase 1MirCall小粒タスクから開始
```
---
## 🎯 **まとめ: Phase 15.75 を1行で説明**
```
Rust 99,406行 → 10,400行89.5%削減を1ヶ月で実現する、
MIR疎結合により失敗時Rollback可能なゼロリスク計画
```
---
## 📝 **変更履歴**
- 2025-10-14: ファイル整理9→5ファイルに削減
- QUICKSTART.md を INDEX.md に統合
- ROADMAP.md, STRATEGY.md, ANALYSIS.md 作成
- リンク修正完了
- 2025-10-13: 初版作成Claude Code
- 4つのドキュメントの整理・導線設計
- 読む順番と優先度の明確化
- FAQ・手順マップ追加