anchor.diff:  -spec mark_failed_invalidation(id()) -> {ok, id()} | {error, term()}.
   mark_failed_invalidation(TransferId) ->
       UpdateFun = fun(T) ->
  -        {ok, T#transfer{invalidation_status = failed}}
  +        {ok, T#transfer{
  +            invalidation_status = failed,
  +            finish_time = provider_logic:zone_time_seconds()
  +        }}
       end,
       update_and_move_to_finished(TransferId, UpdateFun).
   
  
positive.code:     UpdateFun = fun(T = #transfer{invalidation_status = InvalidationStatus}) ->
          {ok, T#transfer{
              status = cancelled,
              invalidation_status = case transfer_utils:is_invalidation(T) of
                  true ->
                      cancelled;
  
negative.code: -spec mark_cancelled_invalidation(id()) -> {ok, id()} | {error, term()}.
  mark_cancelled_invalidation(TransferId) ->
      UpdateFun = fun(Transfer) ->
          {ok, Transfer#transfer{
              invalidation_status = cancelled,
              finish_time = provider_logic:zone_time_seconds()}
          }
      end,
      update_and_move_to_finished(TransferId, UpdateFun).
  
  