feat(llvm): Phase 97 Box/Policy refactoring complete

Box化完了:
- CallRoutePolicyBox: Call routing SSoT
- PrintArgMarshallerBox: Print marshalling SSoT
- TypeFactsBox: Type propagation SSoT
- PhiSnapshotPolicyBox: PHI contract SSoT
- PluginErrorContext: Structured error reporting

📋 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-17 04:14:26 +09:00
parent 65763c1ed6
commit 6d73fc3404
16 changed files with 1861 additions and 64 deletions

View File

@ -53,6 +53,8 @@ JoinIR の箱構造と責務、ループ/if の lowering パターンを把握
- `docs/development/current/main/phases/phase-96/README.md`
10. Phase 97: MiniJsonLoader LLVM EXE paritynext_non_ws / escape
- `docs/development/current/main/phases/phase-97/README.md`
11. Phase 98: Plugin loader fail-fast + LLVM parity持続化
- `docs/development/current/main/phases/phase-98/README.md`
6. MIR BuilderContext 分割の入口)
- `src/mir/builder/README.md`
7. Scope/BindingIdshadowing・束縛同一性の段階移行

View File

@ -77,6 +77,13 @@
- smoke: `tools/smokes/v2/profiles/integration/apps/phase97_json_loader_escape_llvm_exe.sh`escape
- Phase 記録(入口): `docs/development/current/main/phases/phase-97/README.md`
## 20251217Phase 98短報
- plugin loader に strict fail-fast を導入しHAKO_JOINIR_STRICT=1、FileBox/MapBox の LLVM EXE parity を持続可能に。
- smoke: `tools/smokes/v2/profiles/integration/apps/phase97_next_non_ws_llvm_exe.sh`
- smoke: `tools/smokes/v2/profiles/integration/apps/phase97_json_loader_escape_llvm_exe.sh`
- Phase 記録(入口): `docs/development/current/main/phases/phase-98/README.md`
## 20251214現状サマリ
補足docs が増えて迷子になったときの「置き場所ルールSSOT」:

View File

@ -0,0 +1,6 @@
# Phase 98: Plugin loader fail-fast + LLVM parityの持続化
- 目的: Phase 97 で復旧した FileBox/MapBox plugin を「存在チェックstrict fail-fast」で固め、LLVM EXE parity を日常運用で維持する。
- ポイント: HAKO_JOINIR_STRICT=1 で missing .so を即座に止めるstrict=0 では best-effort 継続+[plugin/missing] ログを出す。新しい env は増やさない。
- 成果物: Phase 97 の2本 smokeLLVM EXEが plugin ビルド済みなら高速通過、欠落時は build だけ走らせて PASS まで持っていく。
- AOT/LLVM EXE exit code: IntegerBox 返却時のみその値を exit code にし、それ以外は 0VM と整合)。***