docs: Phase 263 P0 完了記録(Pattern2 fallback 修正)

- 10-Now.md: Phase 263 P0 完了記録を追加(最上部に配置)
- phase-263/README.md: 詳細な実装記録・検証結果を作成
- 30-Backlog.md: Phase 263+ planned 項目を追加
  - Pattern2 LoopBodyLocal promotion(seg)
  - PromoteDecision API hardening(構造で迷子防止)
- phase263_p0_pattern2_seg_vm.sh: smoke test スクリプト改善

検証結果:
- cargo test --lib: 1368/1368 PASS 
- quick smoke: 45/46 PASS  (大幅改善)
- Pattern2 が正しく abort することを確認
This commit is contained in:
2025-12-21 10:39:48 +09:00
parent 93022e7e10
commit e3dd1bbecb
4 changed files with 283 additions and 7 deletions

View File

@ -58,6 +58,21 @@ Related:
- 目的: `if(cond_impure) break/continue` を ANF/順序固定の上で段階投入する
- 方針: Phase 145-anf の契約hoist + left-to-rightを条件式にも適用
- **Phase 263+planned: Pattern2 LoopBodyLocal promotionseg**
- 目的: StageB compilebundle_resolver系で露出している Pattern2 `LoopBodyLocal(seg)` を受理し、quick の first FAIL を進める
- 受け入れ条件:
- 最小再現 fixture + smoke で固定(先に失敗を SSOT 化)
- Pattern2 が不成立のときは “部分続行” せず `Ok(None)` で fallback既定挙動不変
- **Phase 263+planned / refactor: Pattern2 PromoteDecision API hardening**
- ねらい: “Reject でも続行して後段で落ちる” を構造で不可能にする(迷子防止)
- 形(最小):
- `PromoteStepBox::try_promote(...) -> Result<PromoteDecision, String>`
- `PromoteDecision::{Promoted, NotApplicable, Freeze}`
- 受け入れ条件:
- orchestrator が `NotApplicable` を受け取ったら Pattern2 を `Ok(None)` で抜けて fallbackSSOT
- “Reject=continue” のような曖昧挙動がコードから消える
- **real-app loop regression の横展開VM + LLVM EXE**
- ねらい: 実コード由来ループを 1 本ずつ最小抽出して fixture/smoke で固定する(段階投入)。
- 現状: Phase 107find_balanced_array/object / json_cur 由来)まで固定済み。