docs: update Phase 257-259 SSOT (first FAIL is is_integer)
This commit is contained in:
@ -1,6 +1,6 @@
|
||||
# Phase 257: Loop with Early Return Pattern
|
||||
|
||||
Status: Active
|
||||
Status: Completed (2025-12-20)
|
||||
Scope: Pattern6(ScanWithInit)拡張で reverse scan + early return を受理する
|
||||
Related:
|
||||
- Phase 256 完了(Pattern2 boundary SSOT 化、entry_param_mismatch 根治)
|
||||
@ -9,8 +9,8 @@ Related:
|
||||
## Current Status (SSOT)
|
||||
|
||||
- Former first FAIL: `json_lint_vm / StringUtils.last_index_of/2`(P0/P1で解消)
|
||||
- Current first FAIL: `json_lint_vm / StringUtils.is_integer/1`(nested-if + loop, still unsupported)
|
||||
- Approach (done): Pattern6(ScanWithInit)を reverse scan + early return に拡張し、PHI/CFG を fail-fast + 自動補正で安定化
|
||||
- Current first FAIL: `json_lint_vm / StringUtils.is_integer/1`(Phase 259)
|
||||
- Result: Pattern6 reverse scan + PHI/CFG 安定化(P0/P1)により quick が次へ進む
|
||||
|
||||
---
|
||||
|
||||
@ -129,23 +129,16 @@ Pattern6(ScanWithInit)を “scan direction” を持つ形に一般化す
|
||||
- Pattern6 を双方向 scan に拡張(forward/reverse)
|
||||
- reverse scan 用 lowerer を追加(`scan_with_init_reverse.rs`)
|
||||
- `apps/tests/phase257_p0_last_index_of_min.hako` を追加
|
||||
- ただし現状は「PHI predecessor mismatch」が先に露出しており、P1 でインフラ不変条件を固定する必要がある
|
||||
- ただし当初は「PHI predecessor mismatch」が露出したため、P1 でインフラ不変条件を固定した
|
||||
|
||||
## Phase 257 P1(次の指示書 / SSOT)
|
||||
### P1(完了)
|
||||
|
||||
### Goal
|
||||
P1 で以下を実装し、runtime の `phi pred mismatch` を compile-time 側で捕捉・根治した:
|
||||
|
||||
- Pattern6 の実行時 `phi pred mismatch` を根治し、`index_of` / `last_index_of` が VM で正常に走る
|
||||
- `./tools/smokes/v2/run.sh --profile quick` の最初の FAIL を次へ進める
|
||||
|
||||
### Tasks(順序)
|
||||
|
||||
1) MIR verifier を強化して `InvalidPhi` を検出する(fail-fast)
|
||||
- 期待: phi inputs が「ブロックの predecessor 全部」をカバーし、自己ブロック(self)を含まない
|
||||
2) Pattern6 の loop header PHI の entry edge source を正す
|
||||
- `entry_block == header_block` になっているケースを禁止し、必要なら preheader を作る or merge entry を main に寄せる
|
||||
3) smoke の false positive を防ぐ
|
||||
- `phase254_p0_index_of_vm.sh` は `--verify` を併用するか、VM error を検出して FAIL にする
|
||||
- Pattern6 の誤検出防止(detect/extract SSOT)
|
||||
- MIR verifier へ PHI predecessor 検証を追加(fail-fast)
|
||||
- loop header PHI の entry edge を CFG から復元(self pred 根治)
|
||||
- smoke の false positive を抑止(`--verify` + VM error 検出)
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user