Parcel and Carrier Label Lifecycle
The Lifecycle
Carrier-label attempts retain their own progression while the parcel can remain packed.
Transitions Explained
Packing creates a packed parcel. Purchasing retains a requested carrier-label attempt while the parcel stays packed; success labels it, and refusal leaves it packed. A successful void either permits another preparation or removes the parcel.
What Cannot Happen
Uncertain purchases must be resolved under their existing key before another purchase starts. Pickup parcels refuse carrier work. Tracking can move a handed-over parcel directly to delivery or a problem state without an intermediate transit observation.
Concurrency and Timing
Intent and outcome use separate transactions around the carrier call. No background worker settles labels or polls tracking, so another request or a staff resolution provides continuation.