There are 2 cases where a bookingPart state does not transition from PREBOOKED:
when the booking is deleted
when the booking is expired
In both cases, the bookingParts status will remain PEBOOKED, meaning that PREBOOKED is the initial state, but also an end state. This can cause confusion because it is unclear if the bookingPart can still be confirmed or not but the state itself.
I suggest to transition the bookingPart state from PREBOOKED to CANCELLED when the part has not been confirmed, fulfilled or placed on hold. Similar to the expiration of the on hold.
The booking state model defines the Staes of the individual bookingParts.
There are 2 cases where a bookingPart state does not transition from PREBOOKED:
In both cases, the bookingParts status will remain PEBOOKED, meaning that PREBOOKED is the initial state, but also an end state. This can cause confusion because it is unclear if the bookingPart can still be confirmed or not but the state itself.
I suggest to transition the bookingPart state from PREBOOKED to CANCELLED when the part has not been confirmed, fulfilled or placed on hold. Similar to the expiration of the on hold.