Changelog
CatchTable creates some dining reservations in a shop-confirmation-pending state: the reservation exists upstream, but the shop still has to accept it before it is a confirmed booking. The upstream create and detail payloads mark this with awaiting signals (awaitingLevel, confirmingReservation) rather than a status string.
reserve status is still a closed enum but now returns AWAITING_SHOP_CONFIRMATION in addition to CONFIRMED. Shops that review requests before accepting them create the reservation upstream in a confirmation-pending state; reserve previously failed those calls with UPSTREAM_ERROR even though the reservation already existed on CatchTable. Callers must handle the new value: treat it as \"request placed, awaiting the shop's confirmation\" and never present it to end users as a confirmed booking — CatchTable notifies the user once the shop confirms, and reservation-detail can be polled for the current state. reservation-detail status changes from a free-form string to the closed enum CONFIRMED | AWAITING_SHOP_CONFIRMATION | CANCELLED; it previously reported CONFIRMED for every non-cancelled reservation, including ones the shop had not confirmed. Callers that branched on other string values must switch to these three statuses.