Files
hakorune/tests
nyash-codex 84129a7ed4 feat(joinir): Phase 80-B/C/D - Pattern3/4 BindingId wiring + E2E tests (dev-only)
Task 80-B (P1): Pattern3 (if-sum) BindingId registration
- pattern3_with_if_phi.rs: Added BindingId→ValueId registration
- Loop var + condition bindings registration (lines 131-159)
- Debug logs: [phase80/p3] tags
- Follows Pattern2 template structure

Task 80-C (P2): Pattern4 (continue) BindingId registration
- pattern4_with_continue.rs: Pass binding_map to lowerer (lines 341-352)
- loop_with_continue_minimal.rs: Added BindingId→ValueId registration (lines 206-230)
- Loop var + condition bindings registration
- Debug logs: [phase80/p4] tags
- Follows Pattern2 template structure

Task 80-D (P3): E2E tests for BindingId lookup
- tests/normalized_joinir_min.rs: Added 2 new tests (lines 2182-2222)
- test_phase80_p3_bindingid_lookup_works(): Pattern3 verification
- test_phase80_p4_bindingid_lookup_works(): Pattern4 verification
- Manual fallback detection via NYASH_JOINIR_DEBUG=1

Task P4: Cleanup
- Fixed unused variable warnings (loop_var_join_id → _loop_var_join_id)
- Fixed unnecessary mut warning (cargo fix auto-applied)
- pattern2_with_break.rs: Clean up pre-existing unused warning

Result: BindingId operational across Pattern2/3/4
Tests: 970/970 PASS (baseline, E2E tests in normalized_dev feature)
Design: dev-only, dual-path maintained, zero production impact

Phase 74-80 complete: BindingId migration fully operational across all patterns

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-13 18:05:14 +09:00
..