diff --git a/docs/development/current/main/01-JoinIR-Selfhost-INDEX.md b/docs/development/current/main/01-JoinIR-Selfhost-INDEX.md index 6850caf1..4a046ce5 100644 --- a/docs/development/current/main/01-JoinIR-Selfhost-INDEX.md +++ b/docs/development/current/main/01-JoinIR-Selfhost-INDEX.md @@ -57,6 +57,8 @@ JoinIR の箱構造と責務、ループ/if の lowering パターンを把握 - `docs/development/current/main/phases/phase-98/README.md` 12. Phase 100: Pinned Read‑Only Captures(設計メモ) - `docs/development/current/main/phases/phase-100/README.md` +13. Phase 102: real-app read_quoted loop regression(VM + LLVM EXE) + - `docs/development/current/main/phases/phase-102/README.md` 6. MIR Builder(Context 分割の入口) - `src/mir/builder/README.md` 7. Scope/BindingId(shadowing・束縛同一性の段階移行) diff --git a/docs/development/current/main/10-Now.md b/docs/development/current/main/10-Now.md index 3b97944f..1c709bdc 100644 --- a/docs/development/current/main/10-Now.md +++ b/docs/development/current/main/10-Now.md @@ -111,6 +111,14 @@ Next(設計メモ): - smoke: `tools/smokes/v2/profiles/integration/apps/phase97_json_loader_escape_llvm_exe.sh` - Phase 記録(入口): `docs/development/current/main/phases/phase-98/README.md` +## 2025‑12‑17:Phase 102(短報) + +- real-app(MiniJsonLoader.read_quoted_from)の loop を最小抽出し、VM + LLVM EXE で regression を固定(期待: length=4)。 + - フィクスチャ: `apps/tests/phase102_realapp_read_quoted_min.hako` + - smoke: `tools/smokes/v2/profiles/integration/apps/phase102_realapp_read_quoted_vm.sh` + - smoke: `tools/smokes/v2/profiles/integration/apps/phase102_realapp_read_quoted_llvm_exe.sh` + - Phase 記録(入口): `docs/development/current/main/phases/phase-102/README.md` + ## 2025‑12‑14:現状サマリ (補足)docs が増えて迷子になったときの「置き場所ルール(SSOT)」: diff --git a/docs/development/current/main/phases/phase-102/README.md b/docs/development/current/main/phases/phase-102/README.md new file mode 100644 index 00000000..1ab165ed --- /dev/null +++ b/docs/development/current/main/phases/phase-102/README.md @@ -0,0 +1,9 @@ +# Phase 102: real-app read_quoted loop regression (VM + LLVM EXE) + +- 対象: `apps/selfhost-vm/json_loader.hako` の `MiniJsonLoader.read_quoted_from` を最小抽出して fixture 化。 +- 固定: accumulator(`out = out + ch`)+ escape(`\\` → 次の1文字を取り込み)+ quote 終端(`"` で break)。 +- フィクスチャ: `apps/tests/phase102_realapp_read_quoted_min.hako`(期待: `out.length() == 4`) +- smoke: + - VM: `tools/smokes/v2/profiles/integration/apps/phase102_realapp_read_quoted_vm.sh` + - LLVM EXE: `tools/smokes/v2/profiles/integration/apps/phase102_realapp_read_quoted_llvm_exe.sh` +- 次候補: `parse_object` / `parse_array` の key/value ループ(Pattern4 continue + return 混在)や read_digits 系。