whatsapp-address-resolution
Notes
- 2026-09-03 (entirely-api f5ad931): address-based project resolvers in routes/whatsapp.py now prefer active work — _INACTIVE_STATUSES extended with Certified/Invoiced, new _is_terminal_row/_is_terminal_record also demote brand=blackhouse legacy rows. eod_closeout drops terminal/legacy matches before declaring ambiguity (exactly one active match resolves; zero or 2+ stay ambiguous; single match still resolves even if terminal); field-lookup and upload-session start sort active-first via the same check (upload-session select now fetches brand). Root incident: 604 Capitol Heights Blvd — active MAN-9198 (UND-PUSH) shadowed by Certified 2024 blkhse.526718 encapsulation job; Kilroy described the stop with the legacy scope and eod-closeout returned ambiguous. 10 tests in test_whatsapp_address_resolution.py; deployed + live-verified active row sorts first.