{"id":"payment-toctou-double-jeopardy","text":"The payment system has two independent TOCTOU windows in the same code path: the balance sufficiency check and the overdraft guard are both non-atomic, meaning concurrent payments can independently pass both validations.","truth_value":"OUT","source":"","source_url":"","source_hash":"","justifications":[{"type":"SL","antecedents":["payment-balance-check-not-atomic","payment-overdraft-not-atomic"],"outlist":[],"label":"Two non-atomic checks in the same path compound rather than overlap — fixing one still leaves the other"}],"dependents":["assumed-invariants-are-unenforced","temporal-check-gaps-are-systematic-risk"],"metadata":{"last_reviewed":"2026-06-05T18:21:49","review_result":"invalid","_retracted":true,"retract_reason":"research: abandoned — The two antecedents describe the same single non-atomic balance check from different angles, not two independent TOCTOU windows. The core claim of 'two independent TOCTOU windows' is factually wrong — there is only one vulnerability described twice. Softening would require changing the claim so fundamentally (from 'two independent windows compound' to 'one window exists') that it would just duplicate either antecedent. No linking can fix this since the problem is redundant antecedents, not a missing one."},"created_at":"","updated_at":"2026-06-17T14:30:34+00:00","reviewed_at":"","verified_at":"","retracted_at":"2026-06-17T14:30:34+00:00","explanation":{"steps":[{"node":"payment-toctou-double-jeopardy","truth_value":"OUT","reason":"SL justification invalid","failed_antecedents":["payment-balance-check-not-atomic","payment-overdraft-not-atomic"],"label":"Two non-atomic checks in the same path compound rather than overlap — fixing one still leaves the other"}]}}