Claude: refresh OAuth proactif + erreurs fatales distinctes (fini les reconnexions manuelles)
Le refresh token est rotatif : la chaîne se régénère seule indéfiniment tant que le nouveau token est persisté. La reconnexion manuelle n'était requise que lorsque cet invariant cassait. Trois correctifs : - Refresh PROACTIF : on rafraîchit dès qu'il reste < 2h sur le token (~8h de vie) au lieu des 2 dernières minutes. Un échec transitoire a des heures de marge avant que l'access token meure ; la fenêtre où un kill/timeout perd le token rotatif fraîchement rotaté passe de ~8h à quelques ms. Réglable via MONITORINK_CLAUDE_REFRESH_LEAD_MIN (défaut 120). - Distinction FATAL vs TRANSITOIRE : 400 invalid_grant / 401 sur l'endpoint token -> _RefreshFatal, sans backoff ni re-soumission en boucle (évite la reuse-detection qui révoque toute la famille). 429/5xx/réseau gardent le backoff exponentiel. - Visibilité + auto-réparation : le cas fatal affiche "Reconnexion Claude requise" (pas de repli cache silencieux) et l'alerte se referme seule dès qu'un token frais réapparaît sur disque (re-login isolé), sans redémarrer le conteneur. Timeout du POST de refresh porté à 45s (réglable, MONITORINK_CLAUDE_REFRESH_TIMEOUT) pour réduire la fenêtre de perte du token après rotation serveur. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -9,6 +9,12 @@ MONITORINK_CLAUDE_CREDS=/creds/.credentials.json
|
||||
MONITORINK_CLAUDE_UA=claude-code/2.1.172
|
||||
# Burn rate via ccusage (nécessite ccusage installé + ~/.claude/projects monté). 0/1
|
||||
MONITORINK_CCUSAGE=0
|
||||
# Marge proactive de refresh OAuth (minutes) : rafraîchit le token bien avant son expiration
|
||||
# (~8 h) pour laisser des heures de marge en cas d'échec transitoire (429/réseau). Défaut 120.
|
||||
MONITORINK_CLAUDE_REFRESH_LEAD_MIN=120
|
||||
# Timeout du POST de refresh (secondes). Généreux pour ne pas couper après que le serveur a
|
||||
# rotaté le refresh token, ce qui le perdrait et forcerait un re-login manuel. Défaut 45.
|
||||
MONITORINK_CLAUDE_REFRESH_TIMEOUT=45
|
||||
|
||||
# Affichage — canevas de rendu en PAYSAGE ; le PNG est pivoté de 90° pour la Kobo.
|
||||
MONITORINK_TZ=Europe/Paris
|
||||
|
||||
Reference in New Issue
Block a user