feat(joinir): Phase 38 If-side PHI Level 1 deletion (90 lines, LOW safety)
Phase 38: Level 1 deletion complete (exceeded target by 22 lines) - Deleted merge_modified_with_control (51 lines, dead code, 0 callsites) - Deleted extract_assigned_var (39 lines, JoinIR AST lowering replacement) - Updated callsites: if_form.rs (2), phi.rs (2) → replaced with None File changes: - if_phi.rs: 315 → 225 lines (90 lines, 28.6% reduction) - Callsites updated: 4 sites (if_form.rs, phi.rs) Technical achievements: ✅ JoinIR coverage verification (None replacement passes all tests) ✅ Dead code elimination (merge_modified_with_control 0 callsites) ✅ Staged deletion strategy validation (Phase 37 3-level plan works) Test results: ✅ cargo build --release: Clean ✅ PHI tests: 58/58 PASS (no regression) ✅ JoinIR Frontend tests: 37/38 PASS (1 failure pre-existing test ordering) ✅ Full lib tests: 399-400/460 PASS (10-12 non-deterministic failures baseline) Phase 35-38 cumulative: 605 lines deleted (430+107+90) Phase 39+ potential: 415 lines (Level 2: 115, Level 3: 300) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in: