|
|
bb3dd6c2a4
|
docs(joinir): Phase 121 hako_check JoinIR integration design
## Phase 121: hako_check JoinIR 統合設計 (完了)
### 概要
hako_check経路のJoinIR統合に向けた設計と現状調査を完了。
実装修正なし、設計と調査のみ(Phase 122+で実装予定)。
### 完了タスク
- ✅ 設計ドキュメント作成: hako_check_design.md
- ✅ 現状調査完了: phase121_hako_check_investigation.md
- ✅ 旧MIR/PHI経路特定: phase121_legacy_path_analysis.md
- ✅ 統合計画策定: phase121_integration_roadmap.md
- ✅ Phase 120との関係整理完了
### 重要な発見
1. **hako_checkは.hakoスクリプト**
- Rustバイナリではなく、.hakoスクリプトとして実装
- tools/hako_check/cli.hako がエントリーポイント
- VM の MirBuilder に JoinIR 統合すれば自動的に対応
2. **If文は旧経路、Loopは部分統合**
- If文 (src/mir/builder/if_form.rs): ❌ 旧PHI生成器使用中
- Loop (src/mir/builder/control_flow.rs): ⚠️ Mainline Targetsのみ統合
3. **環境変数未整備**
- JoinIR経路選択の統一的な環境変数なし
- Phase 122で `NYASH_HAKO_CHECK_JOINIR=1` 追加予定
### Phase 122-124 統合計画
**3段階移行戦略**:
- **Phase 122**: 環境変数で選択可能(デフォルト旧経路)
- **Phase 123**: JoinIR デフォルト化(旧経路は NYASH_LEGACY_PHI=1)
- **Phase 124**: 旧経路完全削除(JoinIR のみ)
**タイムライン**: 3日で hako_check JoinIR 統合完了見込み
### Phase 122 への指針
**最優先課題**:
1. If文の JoinIR 統合 (src/mir/builder/if_form.rs)
2. Loop の JoinIR 統合拡張 (Mainline Targets 制限解除)
3. 環境変数 NYASH_HAKO_CHECK_JOINIR=1 の追加
**実装ステップ** (Phase 122):
- Step 1: 環境変数読み込み (30分)
- Step 2: If文の JoinIR 統合 (2-3時間)
- Step 3: Loop の JoinIR 統合拡張 (1-2時間)
- Step 4: テスト追加 (1-2時間)
- Step 5: ドキュメント更新 (30分)
### ファイル構成
**新規作成**:
- docs/development/current/main/phase121_hako_check_joinir_design.md (指示書)
- docs/development/current/main/hako_check_design.md (設計)
- docs/development/current/main/phase121_hako_check_investigation.md (調査)
- docs/development/current/main/phase121_legacy_path_analysis.md (旧経路特定)
- docs/development/current/main/phase121_integration_roadmap.md (統合計画)
**修正**:
- CURRENT_TASK.md (Phase 121完了記録追加)
### 技術的成果
- Phase 120: selfhost経路のベースライン確立
- Phase 121: hako_check統合計画の設計 ← Complete
- Phase 122+: 段階的実装(予定)
設計First原則の実践により、実装前に明確な指針を確立しました。
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-04 04:42:32 +09:00 |
|