fix: réveiller la session avant d'écrire les .env (bug reconnect-last 1er essai)#6
Merged
Merged
Conversation
Une session OAuth2 ENT n'est pleinement active qu'après une première requête authentifiée. loginAndGetCookies capturait les cookies du 302 sans finaliser la session, donc au 1er essai les tokens écrits dans le .env pointaient vers une session pas encore initialisée (rejetés), puis acceptés au 2e essai. Surtout visible sur reconnect-last/historique (skipConfirm supprime toute pause entre login et écriture). warmSession sonde /auth/oauth2/userinfo (réutilise isSessionAlive) jusqu'à ce que la session réponde, avant d'écrire les .env. Best-effort : on écrit quand même si le réseau échoue ou si le budget de sondes est épuisé. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
damienromito
approved these changes
Jun 25, 2026
damienromito
left a comment
Member
There was a problem hiding this comment.
j'ai pu tester, tout fonctionne. Par contre en relisant le code je n'ai pas compris ce qui n'allait pas ^^
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Résumé
Corrige le bug remonté : sur
reconnect-last(ou sélection de l'historique sur unconnect), les tokens générés ne fonctionnent pas au 1er essai ; relancer la commande règle le problème.Contexte
Une session OAuth2 ENT n'est pleinement active qu'après une première requête authentifiée.
loginAndGetCookiescapture les cookies du302(redirect: 'manual') sans finaliser la session côté serveur. Résultat : au 1er essai les cookies écrits dans le.envpointent vers une session pas encore initialisée → rejetés ; au 2e essai ça passe.Particulièrement visible sur
reconnect-last/historique carskipConfirm: truesupprime toute pause entre le login et l'écriture du.env.Changements
EnvSyncService.warmSession: après login et avant d'écrire les.env, sonde/auth/oauth2/userinfo(réutiliseisSessionAlive) jusqu'à ce que la session réponde — la sonde réalise la première requête authentifiée qui finalise la session..env(on ne casse pas une connexion qui marcherait).withAliveSequence([false, true])vérifie qu'on sonde bien la session fraîche (bonsessionId) jusqu'à réponse vivante avant d'écrire le.env.Comment tester
pnpm run buildreconnect-lastà froid (après une longue inactivité).Suite de tests :
pnpm test→ 46 tests OK. Typecheck + lint OK.🤖 Generated with Claude Code