feat(mir): Phase 131-11-F - MIR JSON metadata 出力実装

## 実装内容
- mir_json_emit.rs に function-level metadata 追加
- PHI 命令に dst_type ヒント追加
- v0/v1 両 emitter で実装

## 成果物
-  metadata.value_types を JSON に出力
-  PHI dst_type を metadata から取得
-  ビルド成功(0 エラー)

## JSON 出力例
```json
{
  "functions": [{
    "metadata": {
      "value_types": {
        "1": "i64",
        "3": "i64"
      }
    }
  }]
}
```

## 既知の問題(Phase 131-11-E 再調査必要)
- MIR dump で PHI が String 型のまま
- Phase 131-11-E の TypeFacts 分離が完全に動作していない可能性

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
nyash-codex
2025-12-14 19:34:02 +09:00
parent 29d96b94e6
commit 413504d6de
4 changed files with 95 additions and 43 deletions

View File

@ -6,6 +6,13 @@
変更があったら、Phase ドキュメントではなく **このファイルを随時更新する** 方針。
併用ドキュメント(役割分担):
- **設計の正本(契約/不変条件/箱の責務)**: この `joinir-architecture-overview.md` を SSOT とする。
- **実装導線の地図(どのファイルを触るか/入口一覧/追加手順)**:
`docs/development/current/main/design/joinir-design-map.md` を参照する(ここには“場所”を書き、契約本文は本ファイルに寄せる)。
- docs の置き場所ルールSSOT: `docs/development/current/main/DOCS_LAYOUT.md`
---
## 0. 読み方ガイドReader's Guide