Two changes:
1. _request_with_retry: after a session-error re-login, also re-fetch
sites and refresh the client reference so the retry uses valid state.
2. get_aps: if every site fails with an exception, clear the token and
sites cache so the very next page reload triggers a fresh login.
Previously the broken state was sticky until a container restart.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>