docs(phase21.5): MirBuilder JsonFrag analysis - already optimized

Analysis Results
- Task tool investigation: MirBuilder Box dependency analysis complete
- Finding: method系lower(array/map)already use JsonFrag (string-based MIR JSON generation)
- Remaining Box usage: Only 3 instances of `new MapBox()` for LoopFormBox.build2() opts
- Test verification: phase2034 29/29 PASS, phase2160 registry 7/7 PASS

Key Insights
- "ArrayBox/MapBox 23 locations" report was MIR JSON string occurrences, not actual instantiation
- Actual `new ArrayBox()` / `new MapBox()` instances: 3 (minimal, LoopFormBox interface only)
- Heavy using locations already resolved (method lowers use 2-3 using, loop lowers use 5-6)

Status Update (CURRENT_TASK.md)
- [x] Box dependency → JsonFrag replacement (complete, verified)
- [x] loop lowers minimal MapBox usage (LoopFormBox I/F, no optimization needed)
- Summary: JsonFrag refactoring already complete, system stable

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
nyash-codex
2025-11-10 19:50:30 +09:00
parent 6055d53eff
commit 24d88a10c0

View File

@ -57,10 +57,14 @@ Next after restart — Focused checklist
- MirBuilderフル経路の軽量化・段階 - MirBuilderフル経路の軽量化・段階
- [x] compare/foldIntInt/VarInt/VarVarを境界限定へ置換inline/Lower 双方) - [x] compare/foldIntInt/VarInt/VarVarを境界限定へ置換inline/Lower 双方)
- [x] registry: Min 経路での canary PASS 化(`[min|registry]` 許容) - [x] registry: Min 経路での canary PASS 化(`[min|registry]` 許容)
- [ ] 重い using の原因箇所から Box 依存を JsonFrag のテキスト組立へ置換(点で進める) - [x] 重い using の原因箇所から Box 依存を JsonFrag のテキスト組立へ置換(点で進める)
- **調査完了**: method系lowerarray/mapは既にJsonFrag置換済み文字列結合でMIR JSON生成
- **残存Box使用**: 3箇所のみloop系lowerでLoopFormBox.build2()へのopts渡し用 `new MapBox()`
- **Test結果**: phase2034 全29テスト PASS、phase2160 registry 全7テスト PASS
- [x] registry:return.method.arraymapgetを Full(JsonFrag) へ固定し、canary を registry 単独 PASS に更新 - [x] registry:return.method.arraymapgetを Full(JsonFrag) へ固定し、canary を registry 単独 PASS に更新
- [x] registry:return.method.arraymapset/push/lenも順次 Full に移植Min 許容を段階撤去) - [x] registry:return.method.arraymapset/push/lenも順次 Full に移植Min 許容を段階撤去)
- [ ] loop lowers は必要時のみ `HAKO_MIR_BUILDER_SKIP_LOOPS=1` を使用既定OFF - [x] loop lowers は必要時のみ `HAKO_MIR_BUILDER_SKIP_LOOPS=1` を使用既定OFF
- **現状**: loop系lowerは最小MapBox使用のみ、スキップ不要
- Runtimeファイルプロバイダ - Runtimeファイルプロバイダ
- [x] FileBox を ring1 常備coreroとして登録panic 経路の撤廃; pluginonly は従来通り) - [x] FileBox を ring1 常備coreroとして登録panic 経路の撤廃; pluginonly は従来通り)
- [x] ENV 追補の確認: MODE/ALLOW_FALLBACK/JSON_ONLY の説明を ENV_VARS.md に整合 - [x] ENV 追補の確認: MODE/ALLOW_FALLBACK/JSON_ONLY の説明を ENV_VARS.md に整合