#35569 [Bug]: Failed reservation cleanup can double-count actual spend
### Check for existing issues
- [x] I searched open and closed issues before filing - [x] I found no issue covering the combined reconcile-failure and counter-invalidation-failure path
### What happened?
When post-call budget reservation reconciliation raises, `_reconcile_budget_reservation_for_counter_update` attempts to invalidate all reserved counters and then returns an empty reserved-key set so the caller applies the full actual cost directly
That fallback is correct only if invalidation succeeded for every reserved key. If invalidation also raises, the function still returns an empty set. Any counter that retained its original reservation is then incremented by the full actual cost, leaving `previous_spend + reserved_cost + actual_cost`
The invalidation helper processes keys sequentially, so this can also leave a mixed state where some scopes were deleted and others retained their reservation. Treating all keys as unreserved cannot reconcile that partial result safely
The consequence is conservative over-counting rather than lost billing, but it can produce false budget exhaustion and persistent 429 responses until a durable reseed repairs the affected counter
### Step…