Question
Design the dispute (chargeback) workflow as a deadline-driven, multi-actor process: when a card network opens a dispute, the merchant has N days to submit evidence, you forward it, the network rules, and either side can escalate (representment → arbitration). Missing any deadline auto-loses the case and debits the merchant. ~50,000 active disputes, deadlines ranging hours to weeks, network events arriving via unreliable async webhooks/files. How do you guarantee no deadline is ever silently missed and the merchant's balance reflects every ruling exactly once?
Clarify scale and constraints first. Propose a clean component breakdown, then go deep on the hard parts — data model, bottlenecks, consistency, failure modes — and name the trade-offs you are making.