docs: add Phase 122 entry (planned)
This commit is contained in:
@ -74,17 +74,25 @@ JoinIR の箱構造と責務、ループ/if の lowering パターンを把握
|
|||||||
- `docs/development/current/main/phases/phase-117/README.md`
|
- `docs/development/current/main/phases/phase-117/README.md`
|
||||||
20. Phase 118: loop + if-else merge parity(loop + if-else 変数更新 merge / carrier PHI contract)
|
20. Phase 118: loop + if-else merge parity(loop + if-else 変数更新 merge / carrier PHI contract)
|
||||||
- `docs/development/current/main/phases/phase-118/README.md`
|
- `docs/development/current/main/phases/phase-118/README.md`
|
||||||
21. Phase 104: loop(true) break-only digits(VM + LLVM EXE)
|
21. Phase 119: StepTree cond SSOT(AST handle)
|
||||||
|
- `docs/development/current/main/design/control-tree.md`
|
||||||
|
22. Phase 120: StepTree facts/contract SSOT(facts only → contract)
|
||||||
|
- `docs/development/current/main/design/control-tree.md`
|
||||||
|
23. Phase 121: StepTree→Normalized Shadow Lowering(if-only, dev-only)
|
||||||
|
- `docs/development/current/main/phases/phase-121/README.md`
|
||||||
|
24. Phase 122: StepTree→Normalized 実生成(if-only, dev-only / planned)
|
||||||
|
- `docs/development/current/main/phases/phase-122/README.md`
|
||||||
|
25. Phase 104: loop(true) break-only digits(VM + LLVM EXE)
|
||||||
- `docs/development/current/main/phases/phase-104/README.md`
|
- `docs/development/current/main/phases/phase-104/README.md`
|
||||||
22. Phase 107: json_cur find_balanced_* depth scan(VM + LLVM EXE)
|
26. Phase 107: json_cur find_balanced_* depth scan(VM + LLVM EXE)
|
||||||
- `docs/development/current/main/phases/phase-107/README.md`
|
- `docs/development/current/main/phases/phase-107/README.md`
|
||||||
23. Phase 108: Pattern2 policy router SSOT(入口の薄さを固定)
|
27. Phase 108: Pattern2 policy router SSOT(入口の薄さを固定)
|
||||||
- `docs/development/current/main/phases/phase-108/README.md`
|
- `docs/development/current/main/phases/phase-108/README.md`
|
||||||
24. Phase 109: error_tags hints SSOT(Fail-Fast + hint の語彙固定)
|
28. Phase 109: error_tags hints SSOT(Fail-Fast + hint の語彙固定)
|
||||||
- `docs/development/current/main/phases/phase-109/README.md`
|
- `docs/development/current/main/phases/phase-109/README.md`
|
||||||
25. MIR Builder(Context 分割の入口)
|
29. MIR Builder(Context 分割の入口)
|
||||||
- `src/mir/builder/README.md`
|
- `src/mir/builder/README.md`
|
||||||
26. Scope/BindingId(shadowing・束縛同一性の段階移行)
|
30. Scope/BindingId(shadowing・束縛同一性の段階移行)
|
||||||
- `docs/development/current/main/phase73-scope-manager-design.md`
|
- `docs/development/current/main/phase73-scope-manager-design.md`
|
||||||
- `docs/development/current/main/PHASE_74_SUMMARY.md`
|
- `docs/development/current/main/PHASE_74_SUMMARY.md`
|
||||||
- `docs/development/current/main/PHASE_75_SUMMARY.md`
|
- `docs/development/current/main/PHASE_75_SUMMARY.md`
|
||||||
@ -92,16 +100,16 @@ JoinIR の箱構造と責務、ループ/if の lowering パターンを把握
|
|||||||
- `docs/development/current/main/phase78-bindingid-promoted-carriers.md`
|
- `docs/development/current/main/phase78-bindingid-promoted-carriers.md`
|
||||||
- `docs/development/current/main/phase80-bindingid-p3p4-plan.md`(P3/P4 への配線計画)
|
- `docs/development/current/main/phase80-bindingid-p3p4-plan.md`(P3/P4 への配線計画)
|
||||||
- `docs/development/current/main/phase81-pattern2-exitline-contract.md`(promoted carriers の ExitLine 契約検証)
|
- `docs/development/current/main/phase81-pattern2-exitline-contract.md`(promoted carriers の ExitLine 契約検証)
|
||||||
25. Boxification feedback(Phase 78–85 の振り返りと Phase 86 推奨)
|
31. Boxification feedback(Phase 78–85 の振り返りと Phase 86 推奨)
|
||||||
- `docs/development/current/main/phase78-85-boxification-feedback.md`
|
- `docs/development/current/main/phase78-85-boxification-feedback.md`
|
||||||
26. Phase 86: Carrier Init Builder + Error Tags ✅
|
32. Phase 86: Carrier Init Builder + Error Tags ✅
|
||||||
- **Status**: COMPLETE (2025-12-13)
|
- **Status**: COMPLETE (2025-12-13)
|
||||||
- **Modules**:
|
- **Modules**:
|
||||||
- `src/mir/builder/control_flow/joinir/merge/carrier_init_builder.rs` (+8 tests)
|
- `src/mir/builder/control_flow/joinir/merge/carrier_init_builder.rs` (+8 tests)
|
||||||
- `src/mir/join_ir/lowering/error_tags.rs` (+5 tests)
|
- `src/mir/join_ir/lowering/error_tags.rs` (+5 tests)
|
||||||
- **Achievements**: SSOT 確立(CarrierInit → ValueId 生成統一、エラータグ中央化、DebugOutputBox 完全移行)
|
- **Achievements**: SSOT 確立(CarrierInit → ValueId 生成統一、エラータグ中央化、DebugOutputBox 完全移行)
|
||||||
- **Impact**: 987/987 tests PASS, +13 unit tests, Single Responsibility validated
|
- **Impact**: 987/987 tests PASS, +13 unit tests, Single Responsibility validated
|
||||||
27. Phase 87: LLVM Exe Line SSOT ✅
|
33. Phase 87: LLVM Exe Line SSOT ✅
|
||||||
- **Status**: COMPLETE (2025-12-13)
|
- **Status**: COMPLETE (2025-12-13)
|
||||||
- **SSOT**: `tools/build_llvm.sh` - Single pipeline for .hako → executable
|
- **SSOT**: `tools/build_llvm.sh` - Single pipeline for .hako → executable
|
||||||
- **Deliverables**:
|
- **Deliverables**:
|
||||||
|
|||||||
@ -1,5 +1,12 @@
|
|||||||
# Self Current Task — Now (main)
|
# Self Current Task — Now (main)
|
||||||
|
|
||||||
|
## Next: Phase 122(予定 / 実装中)
|
||||||
|
|
||||||
|
**Phase 122: StepTree→Normalized(if-only 実生成 / dev-only)**
|
||||||
|
- Phase 121 は “contract-only shadow parity” まで完了。次は JoinModule(Normalized方言)の実生成へ進める
|
||||||
|
- 既定挙動は不変(`joinir_dev_enabled()` のときだけ生成・検証、`joinir_strict_enabled()` で mismatch を Fail-Fast)
|
||||||
|
- 入口(計画): `docs/development/current/main/phases/phase-122/README.md`
|
||||||
|
|
||||||
## 2025-12-18:Phase 121 完了 ✅
|
## 2025-12-18:Phase 121 完了 ✅
|
||||||
|
|
||||||
**Phase 121: StepTree→Normalized Shadow Lowering (if-only, dev-only)**
|
**Phase 121: StepTree→Normalized Shadow Lowering (if-only, dev-only)**
|
||||||
|
|||||||
@ -20,8 +20,8 @@ Related:
|
|||||||
- **制御の再帰合成(docs-only → dev-only段階投入)**
|
- **制御の再帰合成(docs-only → dev-only段階投入)**
|
||||||
- ねらい: `loop/if` ネストの “構造” を SSOT(ControlTree/StepTree)で表せるようにする
|
- ねらい: `loop/if` ネストの “構造” を SSOT(ControlTree/StepTree)で表せるようにする
|
||||||
- 注意: canonicalizer は観測/構造SSOTまで(ValueId/PHI配線は Normalized 側へ)
|
- 注意: canonicalizer は観測/構造SSOTまで(ValueId/PHI配線は Normalized 側へ)
|
||||||
- 現状: Phase 110–112(StepTree dev-only + strict guard)、Phase 117(if-only nested-if parity)、Phase 118(loop + if merge parity)まで完了
|
- 現状: Phase 119–121(StepTree cond SSOT / facts→contract / shadow parity)まで完了
|
||||||
- 次候補: StepTreeContract を “変換可能” な SSOT に寄せる(cond は AST 参照を保持、sig は派生にする)→ docs-only → dev-only で段階投入
|
- 次候補(Phase 122): if-only を StepTree→Normalized で実生成(dev-only)し、将来の dual-run の土台を作る
|
||||||
- 入口: `docs/development/current/main/design/control-tree.md`
|
- 入口: `docs/development/current/main/design/control-tree.md`
|
||||||
|
|
||||||
## 中期(ループ在庫の残り)
|
## 中期(ループ在庫の残り)
|
||||||
|
|||||||
40
docs/development/current/main/phases/phase-122/README.md
Normal file
40
docs/development/current/main/phases/phase-122/README.md
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
# Phase 122: StepTree→Normalized(if-only 実生成 / dev-only)
|
||||||
|
|
||||||
|
## 目的
|
||||||
|
|
||||||
|
- Phase 121 で導入した StepTree→Normalized の “shadow変換(contract-only)” を一段進め、if-only を対象に Normalized JoinModule(env+継続)を実生成する。
|
||||||
|
- 既定挙動は不変:`joinir_dev_enabled()` のときだけ生成・検証し、本番経路の出力/動作は変えない。
|
||||||
|
- mismatch は strict のときだけ Fail-Fast(`freeze_with_hint`、hint必須)。
|
||||||
|
|
||||||
|
## Scope
|
||||||
|
|
||||||
|
- 対象: if-only(loopなし)
|
||||||
|
- 非対象(strictではcap不足でFail-Fast):
|
||||||
|
- Loop / Break / Continue(Phase 112/121 の guard 方針に従う)
|
||||||
|
|
||||||
|
## 実装方針(SSOT)
|
||||||
|
|
||||||
|
- 入力SSOT: `StepTree` + `StepTreeFacts` + `StepTreeContract`
|
||||||
|
- facts/contract は再解析しない(変換箱が AST を再走査して “推測” しない)
|
||||||
|
- 生成SSOT: “env + 継続” に統一し、PHI を直接扱わない
|
||||||
|
- merge: `join_k(env)` への tail-call
|
||||||
|
- env layout: `writes` で宣言された変数のみ
|
||||||
|
- 失敗時:
|
||||||
|
- dev-only: 理由ログ(タグ + 1行)
|
||||||
|
- strict: `freeze_with_hint`(1行hint必須、空hintは禁止)
|
||||||
|
|
||||||
|
## 受け入れ基準
|
||||||
|
|
||||||
|
- `cargo test --lib` が PASS
|
||||||
|
- Phase 121 の既存 smokes が退行しない
|
||||||
|
- Phase 122 の dev-only 検証で mismatch が出ない(strict で Fail-Fast するなら、その時点で修正が必要)
|
||||||
|
|
||||||
|
## 関連
|
||||||
|
|
||||||
|
- Phase 119–121: StepTree SSOT + shadow parity
|
||||||
|
- `docs/development/current/main/design/control-tree.md`
|
||||||
|
- `docs/development/current/main/phases/phase-121/README.md`
|
||||||
|
- StepTree 実装:
|
||||||
|
- `src/mir/control_tree/step_tree.rs`
|
||||||
|
- `src/mir/control_tree/step_tree_facts.rs`
|
||||||
|
- `src/mir/control_tree/step_tree_contract_box.rs`
|
||||||
Reference in New Issue
Block a user