fix: terminal auth — skip pre-emptive refresh, always refresh on app load for fresh cookies

This commit is contained in:
Gan, Jimmy
2026-03-20 00:21:25 +08:00
parent 59da4eb9f9
commit 0c45efc0ca
2 changed files with 7 additions and 13 deletions
+2 -4
View File
@@ -121,15 +121,13 @@
// Proxy auth not available, fall through to regular auth // Proxy auth not available, fall through to regular auth
} }
// Regular token auth check // Regular token auth check — always try refresh to get fresh cookies
if (!getToken()) {
const refreshed = await tryRefreshSession(); const refreshed = await tryRefreshSession();
if (!refreshed) { if (!refreshed && !getToken()) {
loading = false; loading = false;
authorized = false; authorized = false;
return; return;
} }
}
try { try {
await fetchUserInfo(); await fetchUserInfo();
@@ -266,18 +266,14 @@
} }
async function connect(forceRefresh = false) { async function connect(forceRefresh = false) {
// Always refresh token before first connection to ensure fresh cookies
let d = tabData.get(tabId); let d = tabData.get(tabId);
const isFirstConnect = !d?.hasConnectedOnce;
if (forceRefresh || isFirstConnect) { if (forceRefresh) {
const refreshed = await tryRefreshSession(); const refreshed = await tryRefreshSession();
if (!refreshed) { if (!refreshed) {
handleAuthExpired(); handleAuthExpired();
return null; return null;
} }
// Mark that we've connected once with fresh token
if (d) d.hasConnectedOnce = true;
} }
const ws = new WebSocket( const ws = new WebSocket(