- Launcher регистрирует hardware fingerprint.
- Запрашивает device code у backend.
- Открывает verification URL в системном браузере.
- Polling ожидает подтверждение.
- После успеха токен и профиль записываются SessionService.
- UI обновляется через событие
session.changedбез полной перезагрузки renderer.
Состояния ошибок
Закрытие окна
Закрытие auth modal вызываетsiteAuth.stop(). AbortController прекращает ожидание и сбрасывает active operation. Следующее открытие начинает новый flow.
