anchor.diff:                      {ItemIds, UpdatedIterationState} = workflow_iteration_state:finalize(IterationState),
                       {ok, State#workflow_execution_state{
                           iteration_state = UpdatedIterationState,
  -                        execution_status = ?WAITING_FOR_NEXT_LANE_PREPARATION_END(false),
  +                        execution_status = ?WAITING_FOR_ERROR_HANDLING_OR_NEXT_LANE_PREPARATION_END(false),
                           update_report = ?EXECUTION_CANCELLED_REPORT(ItemIds, TaskIdsToNotify),
                           pending_callbacks = [?CALLBACKS_ON_CANCEL_SELECTOR | PendingCallbacks]
                       }};
  
positive.code:     end,
      % TODO VFS-7787 - test cancel during lane_execution_finished callback execution
      case ExecutionStatus of
          ?WAITING_FOR_NEXT_LANE_PREPARATION_END(false) ->
              ?WF_ERROR_LANE_EXECUTION_CANCELLED(Handler, LaneId, LaneContext, TaskIdsToFinish);
          ?WAITING_FOR_NEXT_LANE_PREPARATION_END(true) ->
              ?WF_ERROR_NO_WAITING_ITEMS;
          #execution_cancelled{is_interrupted = true, abrupt_stop_reason = Reason} ->
              ?WF_ERROR_EXECUTION_ENDED(#execution_ended{handler = Handler, context = ExecutionContext,
  
negative.code: maybe_wait_for_preparation_in_advance(#workflow_execution_state{
      next_lane_preparation_status = ?PREPARING
  } = State) ->
      {ok, State#workflow_execution_state{execution_status = ?WAITING_FOR_ERROR_HANDLING_OR_NEXT_LANE_PREPARATION_END(false)}};
  maybe_wait_for_preparation_in_advance(_State) ->
      ?WF_ERROR_LANE_ALREADY_PREPARED.
  
  