Files
hakorune/docs/development/roadmap
nyash-codex 73844dbe04 feat(builder): CalleeBoxKind構造ガードで静的/ランタイムBox混線を根絶
🎯 箱理論の実践: 「境界を作る」原則による構造レベル分離

## 問題
- StageBArgsBox.resolve_src内のargs.get(i)が
  Stage1UsingResolverBox.getに化ける(静的Box名混入)
- 未定義ValueIdエラー発生(receiver定義なし)

## 解決策(構造ガード)
 CalleeBoxKind enum追加
  - StaticCompiler: Stage-B/Stage-1コンパイラBox
  - RuntimeData: MapBox/ArrayBox等ランタイムBox
  - UserDefined: ユーザー定義Box

 classify_box_kind(): Box名から種別判定
  - 静的Box群を明示的に列挙(1箇所に集約)
  - ランタイムBox群を明示的に列挙
  - 将来の拡張も容易

 apply_static_runtime_guard(): 混線検出・正規化
  - me-call判定(receiver型==box_name → 静的降下に委ねる)
  - 真の混線検出(receiver型≠box_name → 正規化)
  - トレースログで可視化

## 効果
- 修正前: Invalid value ValueId(150/187)
- 修正後: Unknown method 'is_space' (別issue、StringBox実装不足)
- → 静的Box名混入問題を根絶!

## 箱理論原則
-  境界を作る: Static/Runtime/UserDefinedを構造的に分離
-  Fail-Fast: フォールバックより明示的エラー
-  箱にする: CalleeBoxKindでBox種類を1箇所に集約

## ファイル
- src/mir/definitions/call_unified.rs: CalleeBoxKind enum
- src/mir/builder/calls/call_unified.rs: classify_box_kind()
- src/mir/builder/calls/emit.rs: apply_static_runtime_guard()
- docs/development/roadmap/phases/phase-25.1d/README.md: 箱化メモ更新

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 23:13:57 +09:00
..

🗺️ Nyash 予定(ロードマップ・タスク)

📋 現在進行中

🎯 最重要タスク

  • 現在のタスク: ../../CURRENT_TASK.md
  • Phase 8.3: Box操作WASM実装Copilot担当
  • Phase 8.4: ネイティブコンパイル実装計画AI大会議策定済み

🚀 ネイティブコンパイル計画 (2025-08-14策定)

📊 AI大会議成果

実装フェーズ

  • Phase A (2-3週間): AOT WASM → 500倍高速化目標
  • Phase B (2-3ヶ月): Cranelift Direct → 600倍高速化目標
  • Phase C (6ヶ月+): LLVM Ultimate → 1000倍高速化目標

🤖 Copilot協調管理

📋 Copilot作業管理

🎯 フェーズ別課題

📊 実装状況追跡

完了済み (Phase 8.2)

  • WASM: 0.17ms (280倍高速化)
  • VM: 16.97ms (2.9倍高速化)
  • ベンチマークシステム完成
  • 3バックエンド統合CLI

🚧 進行中 (Phase 8.3)

  • Box操作WASM対応Copilot実装中
  • RefNew/RefGet/RefSet命令
  • メモリレイアウト最適化

🔜 次期予定 (Phase 8.4+)

📚 関連ドキュメント

📖 技術資料

🔄 進捗管理

  • 定期更新: 毎週金曜日に進捗反映
  • AI会議: 重要決定事項は3AI大会議で検討
  • ベンチマーク: 性能回帰チェック自動実行

最終更新: 2025-08-14 - AI大会議によるネイティブコンパイル戦略確定