541eb3d5ad
Two Phase 11 invariant tests in tests/test_gui_2_result.py verify
INTERNAL_RETHROW count for src/gui_2.py is 0 after the dunder-method
bare-raise heuristic:
- test_phase_11_invariant_rethrow_count_zero: scans audit --json
output, asserts 0 INTERNAL_RETHROW findings in gui_2.py
- test_phase_11_invariant_l757_l760_reclassified: scans audit --json
output, asserts no INTERNAL_RETHROW findings in any dunder-method
context (__getattr__/__getattribute__/__setattr__/__delattr__)
State.toml updates:
- phase_11 status: completed, checkpointsha: 6e03f5a
- phase_11_complete: true
- rethrow_count_zero: true
- t11_0/t11_1/t11_2 marked completed with their commit SHAs
Pre-Phase 11: gui_2.py had 2 INTERNAL_RETHROW sites (L778 + L781 in
App.__getattr__). Post-Phase 11: 0 sites. The heuristic in
scripts/audit_exception_handling.py:_classify_raise reclassifies
bare AttributeError/NameError raises in __getattr__/__getattribute__/
__setattr__/__delattr__ as INTERNAL_PROGRAMMER_RAISE (canonical
dunder-method pattern per error_handling.md lines 625-690).
Phase 11 result_migration_gui_2_20260619.