Why I Didn't Try to Make Double-Booking "Impossible" — I Made It Cheap to Reverse

A common instinct when building any capacity-constrained booking system (event slots, appointment times, seats) is to reach for a hard database constraint that makes overbooking structurally impossible. I want to walk through why I didn't do that for Korum, and what I built instead.

The setup

Korum coordinates casual sports matches. A match has a fixed capacity. When it's full, further joins should fail cleanly.

What "impossible" would actually require