anchor.diff:              schedule_session_activity_checkup(RemainingTime),
               {noreply, State, hibernate};
           {false, {error, Reason}} ->
  -            ?error("Checking session ~p activity error ~p", [SessionId, Reason]),
  -            spawn(fun() ->
  -                session_manager:terminate_session(SessionId)
  -            end),
  +            ?error("Checking session ~p activity failed with error: ~p", [
  +                SessionId, Reason
  +            ]),
  +            async_terminate_session(SessionId),
               {noreply, State, hibernate}
       end;
   
  
positive.code: 
  -record(state, {
      session_id :: session:id(),
      session_grace_period :: session:grace_period(),
      identity :: aai:subject(),
      % Possible auth values:
  
negative.code:     credentials :: undefined | auth_manager:credentials(),
      validity_checkup_timer :: undefined | reference()
  }).
  -type state() :: #state{}.
  
  
  -define(REMOVE_SESSION, remove_session).
  -define(CHECK_SESSION_ACTIVITY, check_session_activity).
  