Reservation Lifecycle¶
Models the lifecycle of a Reservation — a time-bounded commitment of a resource (delivery slot, store appointment, click-and-collect slot, or product hold) from creation through confirmation and fulfilment or release.
Object: reservation ·
States: 6 ·
Transitions: 7
State Diagram¶
flowchart LR
%% ── classDef palette ─────────────────────────────────────
classDef stInit fill:#0d9488,stroke:#0f766e,color:#fff,font-weight:bold
classDef stNorm fill:#3b82f6,stroke:#2563eb,color:#fff
classDef stOk fill:#16a34a,stroke:#15803d,color:#fff,font-weight:bold
classDef stFail fill:#dc2626,stroke:#b91c1c,color:#fff,font-weight:bold
classDef stHold fill:#d97706,stroke:#b45309,color:#fff
%% ── nodes ───────────────────────────────────────────────
requested(["Requested"])
confirmed["Confirmed"]
fulfilled[["Fulfilled"]]
expired[["Expired"]]
cancelled[["Cancelled"]]
released[["Released"]]
%% ── transitions ─────────────────────────────────
requested -->|"reservation-confirmed"| confirmed
requested -->|"reservation-expired"| expired
confirmed -->|"reservation-released"| fulfilled
confirmed -->|"reservation-expired"| expired
requested -->|"reservation-released"| cancelled
confirmed -->|"reservation-released"| cancelled
confirmed -->|"reservation-released"| released
%% ── class assignments ───────────────────────────
class requested stInit
class confirmed stNorm
class fulfilled,released stOk
class expired,cancelled stFail
States¶
| State | Label | Description | Initial | Terminal |
|---|---|---|---|---|
requested |
Requested | Reservation request initiated. Slot or item hold pending availability check. | ✓ | |
confirmed |
Confirmed | Slot or item hold confirmed. Resource locked for the customer within the reservation window. | ||
fulfilled |
Fulfilled | Customer arrived and used the reservation (collected item, attended slot). Resource released. | ✓ | |
expired |
Expired | Reservation window elapsed without customer action. Resource automatically released. | ✓ | |
cancelled |
Cancelled | Reservation cancelled by customer or retailer before expiry. | ✓ | |
released |
Released | Resource hold released early (e.g. order cancelled, slot freed by system). | ✓ |
Transitions¶
| From | To | Trigger | Guards |
|---|---|---|---|
requested |
confirmed |
reservation-confirmed |
Resource available at requested time/location; Customer eligibility verified (loyalty tier, etc.) |
requested |
expired |
reservation-expired |
No confirmation received within timeout window |
confirmed |
fulfilled |
reservation-released |
Customer checked in or item collected |
confirmed |
expired |
reservation-expired |
Reservation window elapsed without customer action |
requested |
cancelled |
reservation-released |
Customer or retailer cancels before confirmation |
confirmed |
cancelled |
reservation-released |
Customer cancels confirmed reservation |
confirmed |
released |
reservation-released |
Linked order cancelled or system-triggered release |