Phase 29ac: JoinIR thaw plan (Pattern6/7 near-miss → PASS)
Goal: Convert freeze-fixed Pattern6/7 near-miss cases into PASS while keeping contracts intact (no by-name or silent fallback).
Target list (current freeze fixtures)
apps/tests/phase29ab_pattern6_firstfail_min.hakoapps/tests/phase29ab_pattern6_matchscan_firstfail_min.hakoapps/tests/phase29ab_pattern7_firstfail_min.hako
Pass order (recommended)
- Pattern6 reverse scan
- Plan/Normalizer: add reverse support (
i >= 0, stepi = i - 1). - Smoke:
phase29ab_pattern6_reverse_firstfail_minnow OK PASS (RC=1).
- Plan/Normalizer: add reverse support (
- Pattern6 matchscan missing step
- Freeze reason:
[joinir/phase29ab/pattern6/contract] scan-with-init contract: missing step update - Resolution: add explicit
i = i + 1step in fixture (contract-aligned).
- Freeze reason:
- Pattern7 split-scan near-miss
- Resolve then/else update mismatches without relaxing contracts.
Commands
./tools/smokes/v2/run.sh --profile integration --filter "phase29ab_pattern6_*"./tools/smokes/v2/run.sh --profile integration --filter "phase29ab_pattern7_*"