anchor.diff:  
   [NOTE]
   ====
  -All rules defined in the KIE Container specified by the `org.jbpm.task.assignment.rules.releaseId` property are used. 
  +All rules defined in the KIE Container specified by the `org.jbpm.task.assignment.rules.releaseId` property are used.
   ====
   
   [source,java]
  
positive.code: 
  * When created, a task usually has input variables, which are then set on `Task` instance. This applies to `beforeTaskAdded` and `afterTaskAdded` events handling.
  
  * When `Task` is completed, it usually has output variables, which are set on a task. 
  +
  The `loadTaskVariables` method should be used to populate task variables in all other circumstances.
  +
  [NOTE]
  ====
  Calling the `loadTaskVariables` method of the listener once (such as in `beforeTask`) makes it available to both `beforeTask` and `afterTask` methods. 
  ====
  
  . *Configuring the TaskEventListener*
  
negative.code: * Data change
  * Need for node mapping
  
  The best practice is to create backward compatible processes whenever possible, such as extending process definitions. For example, removing specific nodes from the process definition breaks compatibility. In such case, you must provide new node mapping in case an active process instance is in a node that has been removed.
  
  A node map contains source node IDs, from the old process definition, mapped to target node IDs in the new process definition. You can map nodes with the same type only, for example a user task to a user task.
  
  