codex-multi-auth 2.1.13-beta.0 → 2.1.13-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -254,6 +254,32 @@ export declare function getNetworkErrorCooldownMs(pluginConfig: PluginConfig): n
254
254
  * @returns The cooldown in milliseconds to use after a server error (minimum 0, default 4000)
255
255
  */
256
256
  export declare function getServerErrorCooldownMs(pluginConfig: PluginConfig): number;
257
+ /**
258
+ * Get the cooldown duration in milliseconds to apply when an OAuth token has been
259
+ * explicitly invalidated by the upstream (distinct from a generic 401).
260
+ *
261
+ * A longer default (5 minutes) prevents the cascade where rapid account rotation
262
+ * causes each successive account's token to be invalidated in turn by OpenAI's
263
+ * anti-abuse detection.
264
+ *
265
+ * @param pluginConfig - Plugin configuration used to resolve the setting
266
+ * @returns The cooldown in milliseconds (minimum 0, default 300000)
267
+ */
268
+ export declare function getTokenInvalidationCooldownMs(pluginConfig: PluginConfig): number;
269
+ /**
270
+ * Get the minimum time in milliseconds that must elapse between global account
271
+ * switches across requests. When the last served account is still within this
272
+ * window and is available, it receives a large selection-score boost so the
273
+ * proxy stays on it rather than rotating to a fresher idle account.
274
+ *
275
+ * Setting this to 0 disables the throttle. Default is 60 seconds, which
276
+ * reduces the rate at which different OAuth tokens are presented from the same
277
+ * IP and helps avoid OpenAI's anti-abuse detection (see issue #495).
278
+ *
279
+ * @param pluginConfig - Plugin configuration used to resolve the setting
280
+ * @returns The minimum rotation interval in milliseconds (minimum 0, default 60000)
281
+ */
282
+ export declare function getMinRotationIntervalMs(pluginConfig: PluginConfig): number;
257
283
  /**
258
284
  * Determines whether periodic storage backups are enabled.
259
285
  *
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"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"}
@@ -127,6 +127,8 @@ export const DEFAULT_PLUGIN_CONFIG = {
127
127
  proactiveRefreshBufferMs: 5 * 60_000,
128
128
  networkErrorCooldownMs: 6_000,
129
129
  serverErrorCooldownMs: 4_000,
130
+ tokenInvalidationCooldownMs: 5 * 60_000,
131
+ minRotationIntervalMs: 60_000,
130
132
  storageBackupEnabled: true,
131
133
  preemptiveQuotaEnabled: true,
132
134
  preemptiveQuotaRemainingPercent5h: 5,
@@ -942,6 +944,36 @@ export function getNetworkErrorCooldownMs(pluginConfig) {
942
944
  export function getServerErrorCooldownMs(pluginConfig) {
943
945
  return resolveNumberSetting("CODEX_AUTH_SERVER_ERROR_COOLDOWN_MS", pluginConfig.serverErrorCooldownMs, 4_000, { min: 0 });
944
946
  }
947
+ /**
948
+ * Get the cooldown duration in milliseconds to apply when an OAuth token has been
949
+ * explicitly invalidated by the upstream (distinct from a generic 401).
950
+ *
951
+ * A longer default (5 minutes) prevents the cascade where rapid account rotation
952
+ * causes each successive account's token to be invalidated in turn by OpenAI's
953
+ * anti-abuse detection.
954
+ *
955
+ * @param pluginConfig - Plugin configuration used to resolve the setting
956
+ * @returns The cooldown in milliseconds (minimum 0, default 300000)
957
+ */
958
+ export function getTokenInvalidationCooldownMs(pluginConfig) {
959
+ return resolveNumberSetting("CODEX_AUTH_TOKEN_INVALIDATION_COOLDOWN_MS", pluginConfig.tokenInvalidationCooldownMs, 5 * 60_000, { min: 0 });
960
+ }
961
+ /**
962
+ * Get the minimum time in milliseconds that must elapse between global account
963
+ * switches across requests. When the last served account is still within this
964
+ * window and is available, it receives a large selection-score boost so the
965
+ * proxy stays on it rather than rotating to a fresher idle account.
966
+ *
967
+ * Setting this to 0 disables the throttle. Default is 60 seconds, which
968
+ * reduces the rate at which different OAuth tokens are presented from the same
969
+ * IP and helps avoid OpenAI's anti-abuse detection (see issue #495).
970
+ *
971
+ * @param pluginConfig - Plugin configuration used to resolve the setting
972
+ * @returns The minimum rotation interval in milliseconds (minimum 0, default 60000)
973
+ */
974
+ export function getMinRotationIntervalMs(pluginConfig) {
975
+ return resolveNumberSetting("CODEX_AUTH_MIN_ROTATION_INTERVAL_MS", pluginConfig.minRotationIntervalMs, 60_000, { min: 0 });
976
+ }
945
977
  /**
946
978
  * Determines whether periodic storage backups are enabled.
947
979
  *
@@ -1303,6 +1335,16 @@ const CONFIG_EXPLAIN_ENTRIES = [
1303
1335
  envNames: ["CODEX_AUTH_SERVER_ERROR_COOLDOWN_MS"],
1304
1336
  getValue: getServerErrorCooldownMs,
1305
1337
  },
1338
+ {
1339
+ key: "tokenInvalidationCooldownMs",
1340
+ envNames: ["CODEX_AUTH_TOKEN_INVALIDATION_COOLDOWN_MS"],
1341
+ getValue: getTokenInvalidationCooldownMs,
1342
+ },
1343
+ {
1344
+ key: "minRotationIntervalMs",
1345
+ envNames: ["CODEX_AUTH_MIN_ROTATION_INTERVAL_MS"],
1346
+ getValue: getMinRotationIntervalMs,
1347
+ },
1306
1348
  {
1307
1349
  key: "storageBackupEnabled",
1308
1350
  envNames: ["CODEX_AUTH_STORAGE_BACKUP_ENABLED"],
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"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"}
@@ -69,6 +69,7 @@ export declare function resetPinCacheForTesting(): void;
69
69
  * spinning up the full proxy. See issue #474.
70
70
  */
71
71
  export declare function maybeInvalidateAffinityFromDisk(sessionAffinityStore: SessionAffinityStore | null, lastObservedGeneration: number, storagePath?: string): number;
72
+ export declare function buildTokenInvalidationBody(upstreamBodyText: string): string;
72
73
  export declare function chooseAccount(params: {
73
74
  accountManager: AccountManager;
74
75
  sessionAffinityStore: SessionAffinityStore | null;
@@ -80,6 +81,7 @@ export declare function chooseAccount(params: {
80
81
  policy: RuntimePolicyDecision | null;
81
82
  pinnedIndex: number | null;
82
83
  skipReasons?: Map<number, string>;
84
+ stickyBoostByAccount?: Record<number, number>;
83
85
  }): ManagedAccount | null;
84
86
  /**
85
87
  * Build the JSON `error` body for a pinned-account 503 response. Extracted so
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-rotation-proxy.d.ts","sourceRoot":"","sources":["../../lib/runtime-rotation-proxy.ts"],"names":[],"mappings":"AAIA,OAAO,EACN,cAAc,EAEd,KAAK,cAAc,EACnB,MAAM,eAAe,CAAC;AAqBvB,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAQtE,OAAO,EAIN,KAAK,qBAAqB,EAC1B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAI7D,MAAM,WAAW,0BAA0B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,SAAS,EAAE,MAAM,0BAA0B,CAAC;CAC5C;AAED,MAAM,WAAW,0BAA0B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,2BAA2B;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC9B;AA6MD,MAAM,WAAW,WAAW;IAC3B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,kBAAkB,EAAE,MAAM,CAAC;CAC3B;AAkBD;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACtC,WAAW,GAAE,MAAyB,GACpC,WAAW,CAgDb;AAED;;;GAGG;AACH,wBAAgB,8BAA8B,CAC7C,WAAW,GAAE,MAAyB,GACpC,MAAM,GAAG,IAAI,CAEf;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAC9C,oBAAoB,EAAE,oBAAoB,GAAG,IAAI,EACjD,sBAAsB,EAAE,MAAM,EAC9B,WAAW,GAAE,MAAyB,GACpC,MAAM,CAOR;AAqcD,wBAAgB,aAAa,CAAC,MAAM,EAAE;IACrC,cAAc,EAAE,cAAc,CAAC;IAC/B,oBAAoB,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAClD,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACrC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,GAAG,cAAc,GAAG,IAAI,CA+GxB;AAgED;;;;;;GAMG;AACH,MAAM,WAAW,0BAA0B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,kCAAkC,CAAC;IACzC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7C;AAED,wBAAgB,+BAA+B,CAC9C,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACtC,kBAAkB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7C,0BAA0B,CAqB5B;AA0ED,wBAAsB,yBAAyB,CAC9C,OAAO,EAAE,2BAA2B,GAClC,OAAO,CAAC,0BAA0B,CAAC,CAquBrC"}
1
+ {"version":3,"file":"runtime-rotation-proxy.d.ts","sourceRoot":"","sources":["../../lib/runtime-rotation-proxy.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { existsSync, readFileSync } from "node:fs";
3
3
  import { createServer } from "node:http";
4
4
  import { AccountManager, extractAccountId, } from "./accounts.js";
5
5
  import { getStoragePath } from "./storage.js";
6
- import { getFetchTimeoutMs, getNetworkErrorCooldownMs, getRetryAllAccountsMaxRetries, getServerErrorCooldownMs, getSessionAffinity, getSessionAffinityMaxEntries, getSessionAffinityTtlMs, getStreamStallTimeoutMs, getTokenRefreshSkewMs, loadPluginConfig, } from "./config.js";
6
+ import { getFetchTimeoutMs, getNetworkErrorCooldownMs, getRetryAllAccountsMaxRetries, getServerErrorCooldownMs, getSessionAffinity, getSessionAffinityMaxEntries, getSessionAffinityTtlMs, getStreamStallTimeoutMs, getMinRotationIntervalMs, getTokenInvalidationCooldownMs, getTokenRefreshSkewMs, loadPluginConfig, } from "./config.js";
7
7
  import { CODEX_BASE_URL, HTTP_STATUS, OPENAI_HEADERS, OPENAI_HEADER_VALUES, URL_PATHS, } from "./constants.js";
8
8
  import { getModelFamily } from "./prompts/codex.js";
9
9
  import { queuedRefresh } from "./refresh-queue.js";
@@ -16,6 +16,21 @@ const DEFAULT_HOST = "127.0.0.1";
16
16
  const DEFAULT_QUOTA_REMAINING_THRESHOLD = 10;
17
17
  const DEFAULT_AUTH_FAILURE_COOLDOWN_MS = 30_000;
18
18
  const DEFAULT_MAX_RUNTIME_ACCOUNT_ATTEMPTS = 4;
19
+ // Phrases observed in upstream 401 response bodies when OpenAI/Microsoft has
20
+ // explicitly revoked an OAuth token (as opposed to a generic expired-token 401
21
+ // that can be retried after a refresh). Matching is case-insensitive substring.
22
+ // If anti-abuse detection triggers different wording in production, add the new
23
+ // phrase here and record the source provider and date. See issue #495.
24
+ const TOKEN_INVALIDATION_PHRASES = [
25
+ "invalidated oauth token",
26
+ "authentication token has been invalidated",
27
+ "oauth token has been invalidated",
28
+ "token has been invalidated",
29
+ ];
30
+ function isTokenInvalidationError(bodyText) {
31
+ const lower = bodyText.toLowerCase();
32
+ return TOKEN_INVALIDATION_PHRASES.some((phrase) => lower.includes(phrase));
33
+ }
19
34
  const MAX_REQUEST_BODY_BYTES = 64 * 1024 * 1024;
20
35
  const MAX_THREAD_GOAL_FALLBACKS = 512;
21
36
  const HOP_BY_HOP_HEADERS = new Set([
@@ -424,6 +439,21 @@ function buildUpstreamUrl(req, upstreamBaseUrl, upstreamPath) {
424
439
  upstream.search = incomingUrl.search;
425
440
  return upstream.toString();
426
441
  }
442
+ // Monotonic auth-failure cooldown: only extend, never shorten. Two concurrent
443
+ // requests on the same account can race so that an invalidation path sets a
444
+ // long cooldown (5 min) and a subsequent generic 401 truncates it (30 s).
445
+ // Reading the live coolingDownUntil before writing prevents that race.
446
+ function applyMonotonicAuthCooldown(accountManager, account, cooldownMs) {
447
+ const existing = accountManager.getAccountByIndex(account.index)?.coolingDownUntil ?? 0;
448
+ // Intentionally Date.now(), not the proxy's injected now(): coolingDownUntil is
449
+ // written by markAccountCoolingDown via nowMs() (== Date.now()), so both sides of
450
+ // this comparison must live in the same real-wall-clock domain. Switching to the
451
+ // injected now() would mis-compare an injected-clock value against a real-clock
452
+ // deadline and silently defeat the monotonic guard.
453
+ if (Date.now() + cooldownMs > existing) {
454
+ accountManager.markAccountCoolingDown(account, cooldownMs, "auth-failure");
455
+ }
456
+ }
427
457
  function hasUsableAccessToken(account, now, skewMs) {
428
458
  return (typeof account.access === "string" &&
429
459
  account.access.trim().length > 0 &&
@@ -465,7 +495,7 @@ async function commitRefreshedAuthOnce(accountManager, account, auth) {
465
495
  return pending;
466
496
  }
467
497
  async function ensureFreshAccessToken(params) {
468
- const { accountManager, account, family, model, now, tokenRefreshSkewMs } = params;
498
+ const { accountManager, account, family, model, now, tokenRefreshSkewMs, tokenInvalidationCooldownMs } = params;
469
499
  if (hasUsableAccessToken(account, now, tokenRefreshSkewMs)) {
470
500
  return { ok: true, accessToken: account.access ?? "", account };
471
501
  }
@@ -473,9 +503,14 @@ async function ensureFreshAccessToken(params) {
473
503
  if (refreshResult.type === "failed") {
474
504
  accountManager.recordFailure(account, family, model);
475
505
  accountManager.incrementAuthFailures(account);
476
- accountManager.markAccountCoolingDown(account, DEFAULT_AUTH_FAILURE_COOLDOWN_MS, "auth-failure");
506
+ // If the refresh endpoint itself returns an explicit invalidation message
507
+ // (e.g. Microsoft/Outlook SSO revokes the refresh token server-side), apply
508
+ // the long cooldown and signal to the caller to stop rotating rather than
509
+ // presenting other accounts' tokens from the same IP.
510
+ const invalidated = isTokenInvalidationError(refreshResult.message ?? "");
511
+ applyMonotonicAuthCooldown(accountManager, account, invalidated ? tokenInvalidationCooldownMs : DEFAULT_AUTH_FAILURE_COOLDOWN_MS);
477
512
  accountManager.saveToDiskDebounced();
478
- return { ok: false, retryable: isTokenRefreshRetryable(refreshResult) };
513
+ return { ok: false, retryable: isTokenRefreshRetryable(refreshResult), invalidated };
479
514
  }
480
515
  const auth = {
481
516
  type: "oauth",
@@ -556,6 +591,40 @@ async function readErrorBody(response) {
556
591
  return "";
557
592
  }
558
593
  }
594
+ const TOKEN_INVALIDATED_CODE = "token_invalidated";
595
+ const TOKEN_INVALIDATED_FALLBACK_MESSAGE = "OAuth token has been invalidated. Please re-login.";
596
+ // Both invalidation exit paths (refresh-failure and upstream-401) must hand the
597
+ // client the same machine-readable shape — { error: { message, code:
598
+ // "token_invalidated" } } — so a consumer keying off error.code behaves
599
+ // identically regardless of which vector fired. The upstream forwards a raw body
600
+ // with no guaranteed code, so we wrap it here while preserving its human-readable
601
+ // message when one is present.
602
+ export function buildTokenInvalidationBody(upstreamBodyText) {
603
+ let message = TOKEN_INVALIDATED_FALLBACK_MESSAGE;
604
+ const trimmed = upstreamBodyText.trim();
605
+ if (trimmed) {
606
+ try {
607
+ const parsed = JSON.parse(trimmed);
608
+ if (isRecord(parsed)) {
609
+ const direct = parsed.message;
610
+ if (typeof direct === "string" && direct.trim()) {
611
+ message = direct.trim();
612
+ }
613
+ else if (isRecord(parsed.error)) {
614
+ const nested = parsed.error.message;
615
+ if (typeof nested === "string" && nested.trim()) {
616
+ message = nested.trim();
617
+ }
618
+ }
619
+ }
620
+ }
621
+ catch {
622
+ // Non-JSON upstream body (e.g. HTML error page): keep the stable fallback
623
+ // message rather than echoing markup back to the client.
624
+ }
625
+ }
626
+ return JSON.stringify({ error: { message, code: TOKEN_INVALIDATED_CODE } });
627
+ }
559
628
  function extractErrorCodeFromBody(bodyText) {
560
629
  if (!bodyText.trim())
561
630
  return null;
@@ -616,7 +685,7 @@ function getQuotaNearExhaustionWaitMs(headers, remainingThreshold, now) {
616
685
  return candidates.length > 0 ? Math.max(...candidates) : 0;
617
686
  }
618
687
  export function chooseAccount(params) {
619
- const { accountManager, sessionAffinityStore, sessionKey, family, model, attemptedIndexes, now, policy, pinnedIndex, skipReasons, } = params;
688
+ const { accountManager, sessionAffinityStore, sessionKey, family, model, attemptedIndexes, now, policy, pinnedIndex, skipReasons, stickyBoostByAccount, } = params;
620
689
  // Manual pin (from `codex-multi-auth switch <n>`) overrides every other
621
690
  // selection signal. We do NOT call markSwitched here — the proxy must not
622
691
  // clobber the pin set by the CLI. See issue #474.
@@ -662,7 +731,10 @@ export function chooseAccount(params) {
662
731
  }
663
732
  }
664
733
  const selected = accountManager.getCurrentOrNextForFamilyHybrid(family, model, {
665
- scoreBoostByAccount: policy?.scoreBoostByAccount,
734
+ scoreBoostByAccount: {
735
+ ...(policy?.scoreBoostByAccount ?? {}),
736
+ ...(stickyBoostByAccount ?? {}),
737
+ },
666
738
  });
667
739
  if (selected &&
668
740
  !attemptedIndexes.has(selected.index) &&
@@ -831,6 +903,10 @@ export async function startRuntimeRotationProxy(options) {
831
903
  const tokenRefreshSkewMs = getTokenRefreshSkewMs(pluginConfig);
832
904
  const networkErrorCooldownMs = getNetworkErrorCooldownMs(pluginConfig);
833
905
  const serverErrorCooldownMs = getServerErrorCooldownMs(pluginConfig);
906
+ const tokenInvalidationCooldownMs = getTokenInvalidationCooldownMs(pluginConfig);
907
+ const minRotationIntervalMs = getMinRotationIntervalMs(pluginConfig);
908
+ let lastGlobalAccountIndex = null;
909
+ let lastGlobalSwitchAt = 0;
834
910
  const fetchTimeoutMs = options.fetchTimeoutMs ?? getFetchTimeoutMs(pluginConfig);
835
911
  const streamStallTimeoutMs = options.streamStallTimeoutMs ?? getStreamStallTimeoutMs(pluginConfig);
836
912
  const configuredMaxRetries = getRetryAllAccountsMaxRetries(pluginConfig);
@@ -1010,6 +1086,11 @@ export async function startRuntimeRotationProxy(options) {
1010
1086
  }
1011
1087
  while (attemptedIndexes.size < accountCount &&
1012
1088
  transientAttempts < transientAttemptLimit) {
1089
+ const rotationStickyBoost = minRotationIntervalMs > 0 &&
1090
+ lastGlobalAccountIndex !== null &&
1091
+ now() - lastGlobalSwitchAt < minRotationIntervalMs
1092
+ ? { [lastGlobalAccountIndex]: 1000 }
1093
+ : {};
1013
1094
  const selected = chooseAccount({
1014
1095
  accountManager,
1015
1096
  sessionAffinityStore,
@@ -1021,6 +1102,7 @@ export async function startRuntimeRotationProxy(options) {
1021
1102
  policy: policyDecision,
1022
1103
  pinnedIndex,
1023
1104
  skipReasons: accountSkipReasons,
1105
+ stickyBoostByAccount: rotationStickyBoost,
1024
1106
  });
1025
1107
  if (!selected) {
1026
1108
  if (!reloadedAfterNoAccount &&
@@ -1057,10 +1139,28 @@ export async function startRuntimeRotationProxy(options) {
1057
1139
  model: context.model,
1058
1140
  now: now(),
1059
1141
  tokenRefreshSkewMs,
1142
+ tokenInvalidationCooldownMs,
1060
1143
  });
1061
1144
  if (!refreshed.ok) {
1062
1145
  accountManager.refundToken(selected, context.family, context.model);
1063
1146
  exhaustionReason = "auth-failure";
1147
+ if (refreshed.invalidated) {
1148
+ // Refresh endpoint explicitly revoked the token. Stop cascade:
1149
+ // return auth error to client instead of rotating to the next account.
1150
+ sessionAffinityStore?.forgetSession(context.sessionKey);
1151
+ res.writeHead(HTTP_STATUS.UNAUTHORIZED, { "content-type": "application/json" });
1152
+ // Route through the shared builder so both invalidation exit paths stay
1153
+ // in lockstep — empty input yields { error: { message: <fallback>,
1154
+ // code: "token_invalidated" } }.
1155
+ res.end(buildTokenInvalidationBody(""));
1156
+ await usageRecorder.record({
1157
+ outcome: "failure",
1158
+ statusCode: HTTP_STATUS.UNAUTHORIZED,
1159
+ errorCode: "token_invalidated",
1160
+ account: selected,
1161
+ });
1162
+ return;
1163
+ }
1064
1164
  if (!refreshed.retryable)
1065
1165
  continue;
1066
1166
  transientAttempts += 1;
@@ -1212,10 +1312,34 @@ export async function startRuntimeRotationProxy(options) {
1212
1312
  return;
1213
1313
  }
1214
1314
  if (upstream.status === HTTP_STATUS.UNAUTHORIZED) {
1215
- await readErrorBody(upstream);
1315
+ const bodyText = await readErrorBody(upstream);
1216
1316
  accountManager.refundToken(refreshed.account, context.family, context.model);
1217
1317
  accountManager.recordFailure(refreshed.account, context.family, context.model);
1218
- accountManager.markAccountCoolingDown(refreshed.account, DEFAULT_AUTH_FAILURE_COOLDOWN_MS, "auth-failure");
1318
+ if (isTokenInvalidationError(bodyText)) {
1319
+ // The upstream explicitly revoked this OAuth token. Applying a long
1320
+ // cooldown prevents cascade invalidation: rapidly presenting each
1321
+ // account's token from the same IP triggers OpenAI's anti-abuse
1322
+ // detection and invalidates them in sequence. Return the 401 directly
1323
+ // rather than rotating so the client can prompt for re-login.
1324
+ applyMonotonicAuthCooldown(accountManager, refreshed.account, tokenInvalidationCooldownMs);
1325
+ sessionAffinityStore?.forgetSession(context.sessionKey);
1326
+ accountManager.saveToDiskDebounced();
1327
+ // Emit the same machine-readable shape as the refresh-failure path
1328
+ // (code: "token_invalidated") instead of forwarding the raw upstream
1329
+ // body, so the client contract is consistent across both vectors.
1330
+ const clientHeaders = responseHeadersForClient(upstream.headers);
1331
+ clientHeaders["content-type"] = "application/json";
1332
+ res.writeHead(upstream.status, clientHeaders);
1333
+ res.end(buildTokenInvalidationBody(bodyText));
1334
+ await usageRecorder.record({
1335
+ outcome: "failure",
1336
+ statusCode: upstream.status,
1337
+ errorCode: "token_invalidated",
1338
+ account: refreshed.account,
1339
+ });
1340
+ return;
1341
+ }
1342
+ applyMonotonicAuthCooldown(accountManager, refreshed.account, DEFAULT_AUTH_FAILURE_COOLDOWN_MS);
1219
1343
  accountManager.saveToDiskDebounced();
1220
1344
  exhaustionReason = "auth-failure";
1221
1345
  transientAttempts += 1;
@@ -1266,6 +1390,10 @@ export async function startRuntimeRotationProxy(options) {
1266
1390
  }
1267
1391
  else {
1268
1392
  sessionAffinityStore?.remember(context.sessionKey, refreshed.account.index, now());
1393
+ if (refreshed.account.index !== lastGlobalAccountIndex) {
1394
+ lastGlobalAccountIndex = refreshed.account.index;
1395
+ }
1396
+ lastGlobalSwitchAt = now();
1269
1397
  }
1270
1398
  await persistRuntimeActiveAccount(accountManager, refreshed.account, context.family, isPinned && refreshed.account.index === pinnedIndex);
1271
1399
  const forwarded = await forwardStreamingResponse(upstream, res, status, () => {