Define, implement and document a lifecycle for task listener events that users can rely on. In particular, the following constraints should hold for a task:
- create is always the first event
- There is no event after complete or delete
- There is an immediate assignment event after create, if the task has an assignee based on the BPMN XML
- There is an update event when at least one task property has been changed. Setting properties before the create event is not regarded as a change/update.
- Events are not fired in Task Listeners, with the exception of the complete event.
Note: it is still possible to fire events through Task Listeners if the TaskService is used.