Admin quota adjustment now takes the per-user advisory lock and a FOR UPDATE row lock on the quota account before projecting the balance, so the check covers both used and reserved amounts and stays transactionally consistent with task freeze and settlement. Settlement and lease-recovery paths also lock the quota row explicitly. Add the isolated Phase 5 exception-matrix harness (fault injection against a dedicated DB + fake upstream) covering last-quota contention, concurrent admin reduce, freeze/reduce stress, bad/oversized/timeout upstream, storage failure, cross-period settlement and queued/running restart recovery. Add test-only deps, provisioning helper (secrets via env) and test README. |
||
|---|---|---|
| .. | ||
| app | ||
| migrations | ||
| tests | ||
| .env.example | ||
| requirements-test.txt | ||
| requirements.txt | ||