anchor.diff:              <<"xattrs">> => ExpectedFinalXattrs
           }
       }], ProviderId).
  +
  +modify_metadata_and_rename_file(Config) ->
  +    [Worker | _] = ?config(op_worker_nodes, Config),
  +    SessId = ?SESS_ID(Worker),
  +
  +    FileName = ?FILE_NAME,
  +    FileName2 = ?FILE_NAME,
  +    JSON = #{<<"color">> => <<"blue">>},
  +
  +    {ok, Guid} = lfm_proxy:create(Worker, SessId, ?PATH(FileName, ?SPACE_ID1), 8#600),
  +    ok = lfm_proxy:set_metadata(Worker, SessId, {guid, Guid}, json, JSON, []),
  +    {ok, FileId} = file_id:guid_to_objectid(Guid),
  +
  +    Destination = #{?HARVESTER1 => [?INDEX11]},
  +    EncodedJSON = json_utils:encode(JSON),
  +    ProviderId = ?PROVIDER_ID(Worker),
  +
  +    ?assertReceivedHarvestMetadata(?SPACE_ID1, Destination, [#{
  +        <<"fileId">> => FileId,
  +        <<"spaceId">> => ?SPACE_ID1,
  +        <<"fileName">> => FileName,
  +        <<"operation">> => <<"submit">>,
  +        <<"payload">> => #{
  +            <<"json">> => EncodedJSON
  +        }
  +    }], ProviderId),
  +
  +    JSON2 = #{<<"color">> => <<"blue">>, <<"size">> => <<"big">>},
  +    EncodedJSON2 = json_utils:encode(JSON2),
  +    {ok, Guid} = lfm_proxy:mv(Worker, SessId, {guid, Guid}, ?PATH(FileName2, ?SPACE_ID1)),
  +    ok = lfm_proxy:set_metadata(Worker, SessId, {guid, Guid}, json, JSON2, []),
  +
  +    % both updates should be aggregated and sent in one batch
  +    ?assertReceivedHarvestMetadata(?SPACE_ID1, Destination, [#{
  +        <<"fileId">> => FileId,
  +        <<"spaceId">> => ?SPACE_ID1,
  +        <<"fileName">> => FileName2,
  +        <<"operation">> => <<"submit">>,
  +        <<"payload">> => #{
  +            <<"json">> => EncodedJSON2
  +        }
  +    }], ProviderId).
  +
   
   changes_should_be_submitted_to_all_harvesters_and_indices_subscribed_for_the_space(Config) ->
       % ?HARVESTER1 and ?HARVESTER2 are subscribed for ?SPACE_ID2
  
positive.code: all() ->
      ?ALL([
          create_file,
          delete_file,
          set_json_metadata,
          modify_json_metadata,
  
negative.code: %% tests
  -export([
      create_file/1,
      rename_file/1,
      delete_file/1,
      set_json_metadata/1,
      modify_json_metadata/1,
  