anchor.diff:  
   get_auth_cache_size(Worker) ->
       rpc:call(Worker, ets, info, [auth_manager, size]).
  +
  +
  +-spec infer_ttl([caveats:caveat()]) -> undefined | time_utils:seconds().
  +infer_ttl(Caveats) ->
  +    ValidUntil = lists:foldl(fun
  +        (#cv_time{valid_until = ValidUntil}, undefined) -> ValidUntil;
  +        (#cv_time{valid_until = ValidUntil}, Acc) -> min(ValidUntil, Acc)
  +    end, undefined, caveats:filter([cv_time], Caveats)),
  +    case ValidUntil of
  +        undefined -> undefined;
  +        _ -> ValidUntil - time_utils:system_time_seconds()
  +    end.
  
positive.code:         rpc:call(Worker1, auth_manager, verify, [TokenAuth])
      ),
      ok = ssl:close(Sock).
  
  
  %%%===================================================================
  
negative.code: token_authentication(Config) ->
      % given
      [Worker1 | _] = ?config(op_worker_nodes, Config),
      Nonce = <<"token_authentication">>,
      AccessToken = initializer:create_access_token(?USER_ID),
      TokenAuth = auth_manager:build_token_auth(
          AccessToken, undefined,
  