Context:
BPMN events are currently handled the same as tasks, so they also explicitly have durations in case of a start & end mapping being present or implicitly based on their adjacent mappings in case of only one mapping being present.
Durations for events however only make sense when they are intermediate catch events, and not when they are start/end, throw, or boundary events. This is consistent with the engine.
AT:
- we only allow either a START or END mapping for event flow nodes
- flowNodeInstances of an event type other than intermediate catch Events always have a duration of 0 so startTime==EndTime. This includes start timer events and timer boundary events
- intermediate catch events get their endTime assigned via adjacent event updates and are the only events that may have a duration