anchor.diff:  %% Decodes link name created by {@link link_key/2}.
   %% @end
   %%--------------------------------------------------------------------
  --spec decode_link_key(datastore:link_name()) -> {storage:id(), od_space:id()}.
  -decode_link_key(LinkKey) ->
  +-spec unpack_link_name(handle_link_name()) -> {storage:id(), od_space:id()}.
  +unpack_link_name(LinkKey) ->
       [StorageId, SpaceId] = binary:split(LinkKey, <<":">>),
       {StorageId, SpaceId}.
  
positive.code:     Result :: {ok, [HandleAndSpaceIds]} | {error, term()}.
  get_local_handles_by_storage(SessId, StorageId) ->
      FoldFun = fun(#link{name = Name, target = HandleId}, Acc) ->
          case decode_link_key(Name) of
              {StorageId, SpaceId} ->
                  {ok, [{HandleId, SpaceId} | Acc]};
              _ ->
  
negative.code: 
  -define(HELPER_HANDLES_TREE_ID, <<"helper_handles">>).
  
  % link name constructed from storage id and space id
  -type handle_link_name() :: datastore:link_name().
  
  %%%===================================================================
  %%% API
  %%%===================================================================
  