anchor.diff:  maybe_wait_for_preparation_in_advance(#workflow_execution_state{
       next_lane_preparation_status = ?PREPARING
   } = State) ->
  -    {ok, State#workflow_execution_state{execution_status = ?WAITING_FOR_NEXT_LANE_PREPARATION_END(false)}};
  +    {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.
   
  
positive.code: 
  -define(EXECUTION_CANCELLED(CallCount), #execution_cancelled{call_count = CallCount}).
  -define(PREPARATION_CANCELLED(CallCount), #execution_cancelled{execution_step = lane_prepare, call_count = CallCount}).
  -define(WAITING_FOR_NEXT_LANE_PREPARATION_END(IsInterrupted), #execution_cancelled{
      execution_step = waiting_on_next_lane_prepare, call_count = 0, is_interrupted = IsInterrupted}).
  -define(EXECUTION_ENDED_AFTER_CANCEL(IsInterrupted, Reason), #execution_cancelled{
      execution_step = finishing_execution, call_count = 0, callbacks_to_execute = [],
  
negative.code:     end,
      % TODO VFS-7787 - test cancel during lane_execution_finished callback execution
      case ExecutionStatus of
          ?WAITING_FOR_ERROR_HANDLING_OR_NEXT_LANE_PREPARATION_END(false) ->
              ?WF_ERROR_LANE_EXECUTION_CANCELLED(Handler, LaneId, LaneContext, TaskIdsToFinish);
          ?WAITING_FOR_ERROR_HANDLING_OR_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,
  