Auth autonome pur HTTP via /gw/refresh (sans navigateur)

Le refresh du token passe désormais par POST /gw/refresh (l'endpoint que la
SPA appelle) au lieu d'un navigateur headless : pur httpx, refresh_token rotaté
persisté dans token.json, fenêtre 60j remise à zéro à chaque refresh. Lock
single-flight pour la rotation. get_token()/auth_status() tentent /gw/refresh
avant le filet Playwright. Homelab allumé = authentifié indéfiniment, sans re-sync.
This commit is contained in:
jerem
2026-06-18 12:06:42 +02:00
parent e37a27cc1a
commit e7776a539e
3 changed files with 121 additions and 10 deletions

View File

@@ -1,6 +1,10 @@
# Compte HelloFresh (région France : hellofresh.fr)
# Optionnels : utilisés seulement comme fallback de re-login auto si la session
# Playwright (.session/) a expiré. Le login principal se fait en local, fenêtre visible.
# En régime normal, le serveur reste authentifié tout seul via POST /gw/refresh
# (pur HTTP, sans navigateur) : le refresh_token roule par fenêtres de 60 j, donc
# un homelab allumé n'a JAMAIS besoin d'intervention manuelle.
# HF_EMAIL/HF_PASSWORD servent de recovery (re-login auto par navigateur) dans le
# cas rare où le refresh_token est mort (homelab éteint > 60 j) : best-effort,
# peut échouer si captcha/anti-bot — sinon refaire un login local + re-sync.
HF_EMAIL=
HF_PASSWORD=