A submits with proof, B confirms → complete. A submits, B silent → 10-minute auto-finalize (not a dispute). B disputes with no proof → 400.
B submits a conflicting winner with proof → dual-proof. The cup stays IN_PROGRESS. Only the next slot that needs that winner is blocked. Waiting players on that branch are emailed. Official dual-proof is HIGH. Staff never auto-pick when two proofs conflict.
No rollback once a winner has advanced.