From d044af1fbc604a082ee0f7e6a35224204bfd8a9e Mon Sep 17 00:00:00 2001 From: nyash-codex Date: Thu, 18 Dec 2025 06:10:17 +0900 Subject: [PATCH] docs: Phase 124 DONE MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Phase 124 完了: - reads facts SSOT 化(StepTreeFacts/Contract に追加) - Return(Variable) from env (writes) サポート(dev-only) - env マッピング(変数名 → ValueId)を writes から生成 - extract_variables_from_ast() で Variable 抽出を SSOT 化 - Fail-Fast 原則(env に無い Variable はエラー) - Unit tests: 1159 PASS (including test_return_variable_from_env) - Integration smoke: PASS (phase124_if_only_return_var_vm.sh) - 回帰確認: Phase 121/123/118 全て PASS - 10-Now.md 更新(Phase 124 完了、Phase 125 計画追加) --- docs/development/current/main/10-Now.md | 32 ++++++++++++++++++++----- 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/docs/development/current/main/10-Now.md b/docs/development/current/main/10-Now.md index 5a6bf269..f9bb8369 100644 --- a/docs/development/current/main/10-Now.md +++ b/docs/development/current/main/10-Now.md @@ -1,12 +1,32 @@ # Self Current Task — Now (main) -## Next: Phase 124(予定) +## Next: Phase 125(予定) -**Phase 124: Normalized reads facts + Return(Variable)(dev-only)** -- Phase 123 で Return(Integer literal) + If(minimal compare) 完了。次は reads facts による変数サポート -- 対応ノード: Return(Variable), If(complex conditions), 複合式 -- 既定挙動は不変(`joinir_dev_enabled()` のときだけ生成・検証、`joinir_strict_enabled()` で Fail-Fast) -- 入口(計画): `docs/development/current/main/phases/phase-124/README.md` +**Phase 125: Normalized unknown-read capability + reads-based env extension** +- Phase 124 で Return(Variable) from env (writes) 完了。次は reads-only 変数の env 拡張 +- 対応ノード: Return(Variable from reads), If(complex conditions), 複合式 +- unknown-read capability 導入 +- reads に基づく環境拡張(env に無い変数を reads から補完) +- 既定挙動は不変(`joinir_dev_enabled()` のときだけ生成・検証) + +## 2025-12-18:Phase 124 完了 ✅ + +**Phase 124: Normalized reads facts + Return(Variable from env)(dev-only)** +- StepTreeFacts に reads 追加(Variable 参照を AST から抽出) +- StepTreeContract signature に reads 反映(決定性維持) +- env マッピング(変数名 → ValueId)を writes から生成 +- Return(Variable) サポート: env にある変数のみ(writes 由来) +- env に無い Variable は Fail-Fast エラー(phase124 error → Ok(None) fallback) +- Box-first modularization: extract_variables_from_ast() で SSOT 化 +- Unit tests: 1159 tests PASS (including test_return_variable_from_env) +- Integration smoke: PASS (`phase124_if_only_return_var_vm.sh`, exit code 7 許容) +- 回帰: Phase 121/123/118 維持確認 +- 入口: `docs/development/current/main/phases/phase-124/README.md` +- 実装: + - `src/mir/control_tree/step_tree_facts.rs` (reads 追加、76行) + - `src/mir/control_tree/step_tree_contract_box.rs` (reads 反映、101行) + - `src/mir/control_tree/step_tree.rs` (extract_variables_from_ast 追加、612行) + - `src/mir/control_tree/normalized_shadow/builder.rs` (env マッピング追加、837行) ## 2025-12-18:Phase 123 完了 ✅