anchor.diff:  %%--------------------------------------------------------------------
   -spec invalidate_cache(gs_protocol:entity_type(), gs_protocol:entity_id()) -> ok.
   invalidate_cache(Type, Id) ->
  -    Type:invalidate_cache(Id).
  -
  +    ok = Type:invalidate_cache(Id).
  +
  +
  +%%--------------------------------------------------------------------
  +%% @doc
  +%% Handles a GraphSync push message from Onezone. The message is handled
  +%% asynchronously so as not to block the gs_client_worker process (especially
  +%% because the push handling logic can use GraphSync internally).
  +%% In case of errors, the GS channel is terminated (a reconnect will be
  +%% performed automatically).
  +%% @end
  +%%--------------------------------------------------------------------
  +-spec process_push_message(gs_protocol:push()) -> ok.
  +process_push_message(Message) ->
  +    spawn(fun() ->
  +        try
  +            process_push_message_async(Message)
  +        catch Type:Reason ->
  +            ?error_stacktrace("Error processing GS push message from Onezone - ~w:~p", [
  +                Type, Reason
  +            ]),
  +            force_terminate()
  +        end
  +    end).
   
   %%%===================================================================
   %%% gen_server callbacks
  
positive.code: invalidate_cache(#gri{type = Type, id = Id, aspect = instance}) ->
      invalidate_cache(Type, Id);
  invalidate_cache(#gri{type = temporary_token_secret, id = Id, aspect = user}) ->
      temporary_token_secret:invalidate_cache(Id).
  
  
  %%--------------------------------------------------------------------
  
negative.code:         _ ->
              ok
      end,
      invalidate_cache(GRI),
      ?debug("Entity deleted in OZ: ~s", [gri:serialize(GRI)]);
  
  process_push_message_async(#gs_push_graph{gri = GRI, data = Resource, change_type = updated}) ->
      Revision = maps:get(<<"revision">>, Resource),
      Doc = gs_client_translator:translate(GRI, Resource),
      coalesce_cache(get_connection_pid(), GRI, Doc, Revision),
      ok.
  
  
  %%--------------------------------------------------------------------
  