HLD
lld
Booking Lifecycle
Scenario: User starts a booking. We must reserve capacity in the external Flight Service but rollback if our local DB fails.
Scenario: User attempts to pay for Booking #45. We must enforce a strict 5-minute payment window inside a database transaction to prevent holding inventory indefinitely. If successful, we send an async notification.