all-monetary-operations-maintain-double-entry-invariant

Status: IN

All monetary operations maintain the double-entry invariant under concurrency: payment ledgers create balanced debit-credit pairs for every movement, and wallet transfers are deadlock-free with frozen-check inside the lock — unless the non-atomic balance check allows concurrent payments to create valid double-entry pairs for overdrafted amounts, producing an internally consistent but financially incorrect ledger.

Justifications

Payment + wallet achieve structural safety independently, but the payment system's TOCTOU on balance check undermines the combined end-to-end guarantee

Depends on (SL): payment-double-entry-guarantees-balance-integrity, wallet-transfers-are-safe-under-concurrency

Unless: payment-balance-check-not-atomic

JSON