5dfd1e77a8
Follow-up to the salvaged #100350 commits: replace the per-table 'if table == "delivery_obligations"' branches in session_recovery.py and session_lost_and_found.py with a single _AUXILIARY_TABLE_SCHEMAS registry (table -> destination DDL initializer) that both the SQL-level and the lost_and_found lanes consume, so the next lazily-created state.db table is one entry, not three code paths. The .recover lane now iterates _CANONICAL_TABLES + _AUXILIARY_TABLES instead of a duplicated literal list. Tests: the .recover direct-copy lane creates the missing ledger on the destination; a source-vs-destination obligation count mismatch fails verification (complete=False) instead of reporting a clean salvage. Docs: state.db table inventory lists delivery_obligations. Addresses #100313