From 24d88a10c05463aa472f0705cf71d8e4ebff47d6 Mon Sep 17 00:00:00 2001 From: nyash-codex Date: Mon, 10 Nov 2025 19:50:30 +0900 Subject: [PATCH] docs(phase21.5): MirBuilder JsonFrag analysis - already optimized MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 --- CURRENT_TASK.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/CURRENT_TASK.md b/CURRENT_TASK.md index 146d3bd8..6d5c6ff7 100644 --- a/CURRENT_TASK.md +++ b/CURRENT_TASK.md @@ -57,10 +57,14 @@ Next after restart — Focused checklist - MirBuilder(フル経路の軽量化・段階) - [x] compare/fold(IntInt/VarInt/VarVar)を境界限定へ置換(inline/Lower 双方) - [x] registry: Min 経路での canary PASS 化(`[min|registry]` 許容) - - [ ] 重い using の原因箇所から Box 依存を JsonFrag のテキスト組立へ置換(点で進める) + - [x] 重い using の原因箇所から Box 依存を JsonFrag のテキスト組立へ置換(点で進める) + - **調査完了**: method系lower(array/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.arraymap(get)を Full(JsonFrag) へ固定し、canary を registry 単独 PASS に更新 - [x] registry:return.method.arraymap(set/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(ファイルプロバイダ) - [x] FileBox を ring‑1 常備(core‑ro)として登録(panic 経路の撤廃; plugin‑only は従来通り) - [x] ENV 追補の確認: MODE/ALLOW_FALLBACK/JSON_ONLY の説明を ENV_VARS.md に整合