@iam-brain/opencode-codex-auth 1.2.5 → 1.4.0

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.
Files changed (172) hide show
  1. package/README.md +42 -98
  2. package/dist/lib/accounts-tools.d.ts.map +1 -1
  3. package/dist/lib/accounts-tools.js +1 -3
  4. package/dist/lib/accounts-tools.js.map +1 -1
  5. package/dist/lib/codex-native/acquire-auth.d.ts.map +1 -1
  6. package/dist/lib/codex-native/acquire-auth.js +2 -1
  7. package/dist/lib/codex-native/acquire-auth.js.map +1 -1
  8. package/dist/lib/codex-native/catalog-sync.d.ts +1 -1
  9. package/dist/lib/codex-native/catalog-sync.d.ts.map +1 -1
  10. package/dist/lib/codex-native/chat-hooks.d.ts.map +1 -1
  11. package/dist/lib/codex-native/chat-hooks.js.map +1 -1
  12. package/dist/lib/codex-native/client-identity.js +1 -1
  13. package/dist/lib/codex-native/client-identity.js.map +1 -1
  14. package/dist/lib/codex-native/oauth-auth-methods.d.ts.map +1 -1
  15. package/dist/lib/codex-native/oauth-auth-methods.js +5 -2
  16. package/dist/lib/codex-native/oauth-auth-methods.js.map +1 -1
  17. package/dist/lib/codex-native/oauth-server-debug.d.ts +10 -0
  18. package/dist/lib/codex-native/oauth-server-debug.d.ts.map +1 -0
  19. package/dist/lib/codex-native/oauth-server-debug.js +92 -0
  20. package/dist/lib/codex-native/oauth-server-debug.js.map +1 -0
  21. package/dist/lib/codex-native/oauth-server-network.d.ts +5 -0
  22. package/dist/lib/codex-native/oauth-server-network.d.ts.map +1 -0
  23. package/dist/lib/codex-native/oauth-server-network.js +39 -0
  24. package/dist/lib/codex-native/oauth-server-network.js.map +1 -0
  25. package/dist/lib/codex-native/oauth-server-types.d.ts +24 -0
  26. package/dist/lib/codex-native/oauth-server-types.d.ts.map +1 -0
  27. package/dist/lib/codex-native/oauth-server-types.js +2 -0
  28. package/dist/lib/codex-native/oauth-server-types.js.map +1 -0
  29. package/dist/lib/codex-native/oauth-server.d.ts +2 -17
  30. package/dist/lib/codex-native/oauth-server.d.ts.map +1 -1
  31. package/dist/lib/codex-native/oauth-server.js +11 -130
  32. package/dist/lib/codex-native/oauth-server.js.map +1 -1
  33. package/dist/lib/codex-native/openai-loader-fetch-quota.d.ts +18 -0
  34. package/dist/lib/codex-native/openai-loader-fetch-quota.d.ts.map +1 -0
  35. package/dist/lib/codex-native/openai-loader-fetch-quota.js +71 -0
  36. package/dist/lib/codex-native/openai-loader-fetch-quota.js.map +1 -0
  37. package/dist/lib/codex-native/openai-loader-fetch-state.d.ts +27 -0
  38. package/dist/lib/codex-native/openai-loader-fetch-state.d.ts.map +1 -0
  39. package/dist/lib/codex-native/openai-loader-fetch-state.js +91 -0
  40. package/dist/lib/codex-native/openai-loader-fetch-state.js.map +1 -0
  41. package/dist/lib/codex-native/openai-loader-fetch.d.ts.map +1 -1
  42. package/dist/lib/codex-native/openai-loader-fetch.js +28 -163
  43. package/dist/lib/codex-native/openai-loader-fetch.js.map +1 -1
  44. package/dist/lib/codex-native/request-transform-instructions.d.ts +16 -0
  45. package/dist/lib/codex-native/request-transform-instructions.d.ts.map +1 -0
  46. package/dist/lib/codex-native/request-transform-instructions.js +96 -0
  47. package/dist/lib/codex-native/request-transform-instructions.js.map +1 -0
  48. package/dist/lib/codex-native/request-transform-model-service-tier.d.ts +12 -0
  49. package/dist/lib/codex-native/request-transform-model-service-tier.d.ts.map +1 -0
  50. package/dist/lib/codex-native/request-transform-model-service-tier.js +88 -0
  51. package/dist/lib/codex-native/request-transform-model-service-tier.js.map +1 -0
  52. package/dist/lib/codex-native/request-transform-model.d.ts +39 -0
  53. package/dist/lib/codex-native/request-transform-model.d.ts.map +1 -0
  54. package/dist/lib/codex-native/request-transform-model.js +276 -0
  55. package/dist/lib/codex-native/request-transform-model.js.map +1 -0
  56. package/dist/lib/codex-native/request-transform-payload-helpers.d.ts +26 -0
  57. package/dist/lib/codex-native/request-transform-payload-helpers.d.ts.map +1 -0
  58. package/dist/lib/codex-native/request-transform-payload-helpers.js +232 -0
  59. package/dist/lib/codex-native/request-transform-payload-helpers.js.map +1 -0
  60. package/dist/lib/codex-native/request-transform-payload.d.ts +66 -0
  61. package/dist/lib/codex-native/request-transform-payload.d.ts.map +1 -0
  62. package/dist/lib/codex-native/request-transform-payload.js +296 -0
  63. package/dist/lib/codex-native/request-transform-payload.js.map +1 -0
  64. package/dist/lib/codex-native/request-transform-pipeline.d.ts +2 -1
  65. package/dist/lib/codex-native/request-transform-pipeline.d.ts.map +1 -1
  66. package/dist/lib/codex-native/request-transform-pipeline.js +6 -0
  67. package/dist/lib/codex-native/request-transform-pipeline.js.map +1 -1
  68. package/dist/lib/codex-native/request-transform-shared.d.ts +8 -0
  69. package/dist/lib/codex-native/request-transform-shared.d.ts.map +1 -0
  70. package/dist/lib/codex-native/request-transform-shared.js +49 -0
  71. package/dist/lib/codex-native/request-transform-shared.js.map +1 -0
  72. package/dist/lib/codex-native/request-transform.d.ts +4 -122
  73. package/dist/lib/codex-native/request-transform.d.ts.map +1 -1
  74. package/dist/lib/codex-native/request-transform.js +4 -862
  75. package/dist/lib/codex-native/request-transform.js.map +1 -1
  76. package/dist/lib/codex-native/session-affinity-state.d.ts +13 -0
  77. package/dist/lib/codex-native/session-affinity-state.d.ts.map +1 -1
  78. package/dist/lib/codex-native/session-affinity-state.js +20 -8
  79. package/dist/lib/codex-native/session-affinity-state.js.map +1 -1
  80. package/dist/lib/codex-native/static-fallback-models.d.ts +2 -0
  81. package/dist/lib/codex-native/static-fallback-models.d.ts.map +1 -0
  82. package/dist/lib/codex-native/static-fallback-models.js +15 -0
  83. package/dist/lib/codex-native/static-fallback-models.js.map +1 -0
  84. package/dist/lib/codex-native.d.ts.map +1 -1
  85. package/dist/lib/codex-native.js +1 -8
  86. package/dist/lib/codex-native.js.map +1 -1
  87. package/dist/lib/codex-prompts-cache.d.ts.map +1 -1
  88. package/dist/lib/codex-prompts-cache.js.map +1 -1
  89. package/dist/lib/codex-quota-fetch.js +1 -1
  90. package/dist/lib/codex-quota-fetch.js.map +1 -1
  91. package/dist/lib/config/behavior-settings.d.ts +3 -0
  92. package/dist/lib/config/behavior-settings.d.ts.map +1 -0
  93. package/dist/lib/config/behavior-settings.js +33 -0
  94. package/dist/lib/config/behavior-settings.js.map +1 -0
  95. package/dist/lib/config/io.d.ts +16 -0
  96. package/dist/lib/config/io.d.ts.map +1 -0
  97. package/dist/lib/config/io.js +64 -0
  98. package/dist/lib/config/io.js.map +1 -0
  99. package/dist/lib/config/parse.d.ts +22 -0
  100. package/dist/lib/config/parse.d.ts.map +1 -0
  101. package/dist/lib/config/parse.js +327 -0
  102. package/dist/lib/config/parse.js.map +1 -0
  103. package/dist/lib/config/resolve.d.ts +27 -0
  104. package/dist/lib/config/resolve.d.ts.map +1 -0
  105. package/dist/lib/config/resolve.js +154 -0
  106. package/dist/lib/config/resolve.js.map +1 -0
  107. package/dist/lib/config/types.d.ts +74 -0
  108. package/dist/lib/config/types.d.ts.map +1 -0
  109. package/dist/lib/config/types.js +160 -0
  110. package/dist/lib/config/types.js.map +1 -0
  111. package/dist/lib/config/validation.d.ts +6 -0
  112. package/dist/lib/config/validation.d.ts.map +1 -0
  113. package/dist/lib/config/validation.js +171 -0
  114. package/dist/lib/config/validation.js.map +1 -0
  115. package/dist/lib/config.d.ts +6 -114
  116. package/dist/lib/config.d.ts.map +1 -1
  117. package/dist/lib/config.js +6 -855
  118. package/dist/lib/config.js.map +1 -1
  119. package/dist/lib/fetch-orchestrator-helpers.d.ts +13 -0
  120. package/dist/lib/fetch-orchestrator-helpers.d.ts.map +1 -0
  121. package/dist/lib/fetch-orchestrator-helpers.js +63 -0
  122. package/dist/lib/fetch-orchestrator-helpers.js.map +1 -0
  123. package/dist/lib/fetch-orchestrator-types.d.ts +71 -0
  124. package/dist/lib/fetch-orchestrator-types.d.ts.map +1 -0
  125. package/dist/lib/fetch-orchestrator-types.js +11 -0
  126. package/dist/lib/fetch-orchestrator-types.js.map +1 -0
  127. package/dist/lib/fetch-orchestrator.d.ts +2 -69
  128. package/dist/lib/fetch-orchestrator.d.ts.map +1 -1
  129. package/dist/lib/fetch-orchestrator.js +30 -79
  130. package/dist/lib/fetch-orchestrator.js.map +1 -1
  131. package/dist/lib/model-catalog/cache-helpers.d.ts +23 -0
  132. package/dist/lib/model-catalog/cache-helpers.d.ts.map +1 -0
  133. package/dist/lib/model-catalog/cache-helpers.js +210 -0
  134. package/dist/lib/model-catalog/cache-helpers.js.map +1 -0
  135. package/dist/lib/model-catalog/catalog-fetch.d.ts +3 -0
  136. package/dist/lib/model-catalog/catalog-fetch.d.ts.map +1 -0
  137. package/dist/lib/model-catalog/catalog-fetch.js +159 -0
  138. package/dist/lib/model-catalog/catalog-fetch.js.map +1 -0
  139. package/dist/lib/model-catalog/provider.d.ts +6 -0
  140. package/dist/lib/model-catalog/provider.d.ts.map +1 -0
  141. package/dist/lib/model-catalog/provider.js +280 -0
  142. package/dist/lib/model-catalog/provider.js.map +1 -0
  143. package/dist/lib/model-catalog/shared.d.ts +99 -0
  144. package/dist/lib/model-catalog/shared.d.ts.map +1 -0
  145. package/dist/lib/model-catalog/shared.js +157 -0
  146. package/dist/lib/model-catalog/shared.js.map +1 -0
  147. package/dist/lib/model-catalog.d.ts +3 -68
  148. package/dist/lib/model-catalog.d.ts.map +1 -1
  149. package/dist/lib/model-catalog.js +3 -767
  150. package/dist/lib/model-catalog.js.map +1 -1
  151. package/dist/lib/proactive-refresh.d.ts.map +1 -1
  152. package/dist/lib/proactive-refresh.js +2 -4
  153. package/dist/lib/proactive-refresh.js.map +1 -1
  154. package/dist/lib/quarantine.js.map +1 -1
  155. package/dist/lib/quota-threshold-alerts.d.ts.map +1 -1
  156. package/dist/lib/quota-threshold-alerts.js +3 -1
  157. package/dist/lib/quota-threshold-alerts.js.map +1 -1
  158. package/dist/lib/rotation.js.map +1 -1
  159. package/dist/lib/storage/domain-state.d.ts +23 -0
  160. package/dist/lib/storage/domain-state.d.ts.map +1 -0
  161. package/dist/lib/storage/domain-state.js +275 -0
  162. package/dist/lib/storage/domain-state.js.map +1 -0
  163. package/dist/lib/storage/migration.d.ts +13 -0
  164. package/dist/lib/storage/migration.d.ts.map +1 -0
  165. package/dist/lib/storage/migration.js +225 -0
  166. package/dist/lib/storage/migration.js.map +1 -0
  167. package/dist/lib/storage.d.ts +2 -9
  168. package/dist/lib/storage.d.ts.map +1 -1
  169. package/dist/lib/storage.js +12 -503
  170. package/dist/lib/storage.js.map +1 -1
  171. package/package.json +14 -13
  172. package/schemas/codex-config.schema.json +8 -0
@@ -0,0 +1,92 @@
1
+ import { appendFileSync, chmodSync, mkdirSync, renameSync, statSync, unlinkSync } from "node:fs";
2
+ import { isFsErrorCode } from "../cache-io.js";
3
+ const DEFAULT_DEBUG_LOG_MAX_BYTES = 1_000_000;
4
+ const REDACTED = "[redacted]";
5
+ const REDACTED_DEBUG_META_KEY_FRAGMENTS = [
6
+ "token",
7
+ "secret",
8
+ "password",
9
+ "authorization",
10
+ "cookie",
11
+ "id_token",
12
+ "refresh_token",
13
+ "access_token",
14
+ "authorization_code",
15
+ "auth_code",
16
+ "code_verifier",
17
+ "pkce",
18
+ "verifier"
19
+ ];
20
+ function shouldRedactDebugMetaKey(key) {
21
+ const lower = key.trim().toLowerCase();
22
+ if (!lower)
23
+ return false;
24
+ return REDACTED_DEBUG_META_KEY_FRAGMENTS.some((fragment) => lower.includes(fragment));
25
+ }
26
+ export function sanitizeDebugMeta(value) {
27
+ if (typeof value === "string") {
28
+ return value
29
+ .replace(/\b(access_token|refresh_token|id_token|authorization_code|auth_code|code_verifier|pkce_verifier)=([^\s&]+)/gi, `$1=${REDACTED}`)
30
+ .replace(/"(access_token|refresh_token|id_token|authorization_code|auth_code|code_verifier|pkce_verifier)"\s*:\s*"[^"]*"/gi, `"$1":"${REDACTED}"`)
31
+ .replace(/([?&])(code|state|access_token|refresh_token|id_token|code_verifier|pkce_verifier)=([^&]+)/gi, (_match, prefix, key) => {
32
+ return `${prefix}${key}=${REDACTED}`;
33
+ });
34
+ }
35
+ if (Array.isArray(value))
36
+ return value.map((item) => sanitizeDebugMeta(item));
37
+ if (!value || typeof value !== "object")
38
+ return value;
39
+ const out = {};
40
+ for (const [key, entry] of Object.entries(value)) {
41
+ out[key] = shouldRedactDebugMetaKey(key) ? REDACTED : sanitizeDebugMeta(entry);
42
+ }
43
+ return out;
44
+ }
45
+ export function resolveDebugLogMaxBytes() {
46
+ const raw = process.env.CODEX_AUTH_DEBUG_MAX_BYTES;
47
+ if (!raw)
48
+ return DEFAULT_DEBUG_LOG_MAX_BYTES;
49
+ const parsed = Number(raw);
50
+ if (!Number.isFinite(parsed))
51
+ return DEFAULT_DEBUG_LOG_MAX_BYTES;
52
+ return Math.max(16_384, Math.floor(parsed));
53
+ }
54
+ export function rotateDebugLogIfNeeded(debugLogFile, maxBytes) {
55
+ try {
56
+ const stat = statSync(debugLogFile);
57
+ if (stat.size < maxBytes)
58
+ return;
59
+ const rotatedPath = `${debugLogFile}.1`;
60
+ try {
61
+ unlinkSync(rotatedPath);
62
+ }
63
+ catch (error) {
64
+ if (!isFsErrorCode(error, "ENOENT")) {
65
+ // ignore missing previous rotation file
66
+ }
67
+ // ignore missing previous rotation file
68
+ }
69
+ renameSync(debugLogFile, rotatedPath);
70
+ }
71
+ catch (error) {
72
+ if (!isFsErrorCode(error, "ENOENT")) {
73
+ // ignore when file does not exist or cannot be inspected
74
+ }
75
+ // ignore when file does not exist or cannot be inspected
76
+ }
77
+ }
78
+ export function appendDebugLine(input) {
79
+ try {
80
+ mkdirSync(input.debugLogDir, { recursive: true, mode: 0o700 });
81
+ rotateDebugLogIfNeeded(input.debugLogFile, input.debugLogMaxBytes);
82
+ appendFileSync(input.debugLogFile, `${input.line}\n`, { encoding: "utf8", mode: 0o600 });
83
+ chmodSync(input.debugLogFile, 0o600);
84
+ }
85
+ catch (error) {
86
+ if (error instanceof Error) {
87
+ // best effort file logging
88
+ }
89
+ // best effort file logging
90
+ }
91
+ }
92
+ //# sourceMappingURL=oauth-server-debug.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-server-debug.js","sourceRoot":"","sources":["../../../lib/codex-native/oauth-server-debug.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare function isLoopbackRemoteAddress(remoteAddress: string | undefined): boolean;
2
+ export declare function resolveListenHosts(loopbackHost: string): string[];
3
+ export declare function shouldRetryListenWithFallback(error: unknown): boolean;
4
+ export declare function rewriteCallbackUriHost(callbackUri: string, host: string): string;
5
+ //# sourceMappingURL=oauth-server-network.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-server-network.d.ts","sourceRoot":"","sources":["../../../lib/codex-native/oauth-server-network.ts"],"names":[],"mappings":"AAEA,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAQlF;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAMjE;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAIrE;AAED,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAWhF"}
@@ -0,0 +1,39 @@
1
+ import { isFsErrorCode } from "../cache-io.js";
2
+ export function isLoopbackRemoteAddress(remoteAddress) {
3
+ if (!remoteAddress)
4
+ return false;
5
+ const normalized = remoteAddress.split("%")[0]?.toLowerCase();
6
+ if (!normalized)
7
+ return false;
8
+ if (normalized === "::1")
9
+ return true;
10
+ if (normalized.startsWith("127."))
11
+ return true;
12
+ if (normalized.startsWith("::ffff:127."))
13
+ return true;
14
+ return false;
15
+ }
16
+ export function resolveListenHosts(loopbackHost) {
17
+ const normalized = loopbackHost.trim().toLowerCase();
18
+ if (normalized === "localhost") {
19
+ return ["localhost", "127.0.0.1", "::1"];
20
+ }
21
+ return [loopbackHost];
22
+ }
23
+ export function shouldRetryListenWithFallback(error) {
24
+ return (isFsErrorCode(error, "EADDRNOTAVAIL") || isFsErrorCode(error, "EAFNOSUPPORT") || isFsErrorCode(error, "ENOTFOUND"));
25
+ }
26
+ export function rewriteCallbackUriHost(callbackUri, host) {
27
+ try {
28
+ const url = new URL(callbackUri);
29
+ url.hostname = host;
30
+ return url.toString();
31
+ }
32
+ catch (error) {
33
+ if (error instanceof Error) {
34
+ // fallback to configured callback URI when URL parsing fails
35
+ }
36
+ return callbackUri;
37
+ }
38
+ }
39
+ //# sourceMappingURL=oauth-server-network.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-server-network.js","sourceRoot":"","sources":["../../../lib/codex-native/oauth-server-network.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAE9C,MAAM,UAAU,uBAAuB,CAAC,aAAiC;IACvE,IAAI,CAAC,aAAa;QAAE,OAAO,KAAK,CAAA;IAChC,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAA;IAC7D,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAA;IAC7B,IAAI,UAAU,KAAK,KAAK;QAAE,OAAO,IAAI,CAAA;IACrC,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAA;IAC9C,IAAI,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC;QAAE,OAAO,IAAI,CAAA;IACrD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,YAAoB;IACrD,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACpD,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QAC/B,OAAO,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,CAAA;IAC1C,CAAC;IACD,OAAO,CAAC,YAAY,CAAC,CAAA;AACvB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,KAAc;IAC1D,OAAO,CACL,aAAa,CAAC,KAAK,EAAE,eAAe,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,cAAc,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,WAAW,CAAC,CACnH,CAAA;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,WAAmB,EAAE,IAAY;IACtE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAA;QAChC,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAA;QACnB,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAA;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,6DAA6D;QAC/D,CAAC;QACD,OAAO,WAAW,CAAA;IACpB,CAAC;AACH,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { OpenAIAuthMode } from "../types.js";
2
+ export type OAuthServerStopReason = "success" | "error" | "other";
3
+ export type OAuthServerControllerInput<TPkce, TTokens> = {
4
+ port: number;
5
+ loopbackHost: string;
6
+ callbackOrigin: string;
7
+ callbackUri: string;
8
+ callbackPath: string;
9
+ callbackTimeoutMs: number;
10
+ debugLogDir?: string;
11
+ debugLogFile?: string;
12
+ buildOAuthErrorHtml: (error: string) => string;
13
+ buildOAuthSuccessHtml: (mode: "native" | "codex") => string;
14
+ composeCodexSuccessRedirectUrl: (tokens: TTokens) => string;
15
+ exchangeCodeForTokens: (code: string, redirectUri: string, pkce: TPkce) => Promise<TTokens>;
16
+ };
17
+ export type PendingOAuth<TPkce, TTokens> = {
18
+ pkce: TPkce;
19
+ state: string;
20
+ authMode: OpenAIAuthMode;
21
+ resolve: (tokens: TTokens) => void;
22
+ reject: (error: Error) => void;
23
+ };
24
+ //# sourceMappingURL=oauth-server-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-server-types.d.ts","sourceRoot":"","sources":["../../../lib/codex-native/oauth-server-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEjD,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAA;AAEjE,MAAM,MAAM,0BAA0B,CAAC,KAAK,EAAE,OAAO,IAAI;IACvD,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,iBAAiB,EAAE,MAAM,CAAA;IACzB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;IAC9C,qBAAqB,EAAE,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,KAAK,MAAM,CAAA;IAC3D,8BAA8B,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,CAAA;IAC3D,qBAAqB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CAC5F,CAAA;AAED,MAAM,MAAM,YAAY,CAAC,KAAK,EAAE,OAAO,IAAI;IACzC,IAAI,EAAE,KAAK,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,cAAc,CAAA;IACxB,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAA;IAClC,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;CAC/B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=oauth-server-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-server-types.js","sourceRoot":"","sources":["../../../lib/codex-native/oauth-server-types.ts"],"names":[],"mappings":""}
@@ -1,20 +1,6 @@
1
1
  import type { OpenAIAuthMode } from "../types.js";
2
- type OAuthServerStopReason = "success" | "error" | "other";
3
- type OAuthServerControllerInput<TPkce, TTokens> = {
4
- port: number;
5
- loopbackHost: string;
6
- callbackOrigin: string;
7
- callbackUri: string;
8
- callbackPath: string;
9
- callbackTimeoutMs: number;
10
- debugLogDir?: string;
11
- debugLogFile?: string;
12
- buildOAuthErrorHtml: (error: string) => string;
13
- buildOAuthSuccessHtml: (mode: "native" | "codex") => string;
14
- composeCodexSuccessRedirectUrl: (tokens: TTokens) => string;
15
- exchangeCodeForTokens: (code: string, redirectUri: string, pkce: TPkce) => Promise<TTokens>;
16
- };
17
- export declare function isLoopbackRemoteAddress(remoteAddress: string | undefined): boolean;
2
+ import type { OAuthServerControllerInput, OAuthServerStopReason } from "./oauth-server-types.js";
3
+ export { isLoopbackRemoteAddress } from "./oauth-server-network.js";
18
4
  export declare function createOAuthServerController<TPkce, TTokens>(input: OAuthServerControllerInput<TPkce, TTokens>): {
19
5
  isDebugEnabled: () => boolean;
20
6
  emitDebug: (event: string, meta?: Record<string, unknown>) => void;
@@ -25,5 +11,4 @@ export declare function createOAuthServerController<TPkce, TTokens>(input: OAuth
25
11
  scheduleStop: (delayMs: number, reason: OAuthServerStopReason) => void;
26
12
  waitForCallback: (pkce: TPkce, state: string, authMode: OpenAIAuthMode) => Promise<TTokens>;
27
13
  };
28
- export {};
29
14
  //# sourceMappingURL=oauth-server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-server.d.ts","sourceRoot":"","sources":["../../../lib/codex-native/oauth-server.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAIjD,KAAK,qBAAqB,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAA;AAE1D,KAAK,0BAA0B,CAAC,KAAK,EAAE,OAAO,IAAI;IAChD,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,iBAAiB,EAAE,MAAM,CAAA;IACzB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;IAC9C,qBAAqB,EAAE,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,KAAK,MAAM,CAAA;IAC3D,8BAA8B,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,CAAA;IAC3D,qBAAqB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CAC5F,CAAA;AA4FD,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAQlF;AA+BD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,EACxD,KAAK,EAAE,0BAA0B,CAAC,KAAK,EAAE,OAAO,CAAC,GAChD;IACD,cAAc,EAAE,MAAM,OAAO,CAAA;IAC7B,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;IAClE,KAAK,EAAE,MAAM,OAAO,CAAC;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC7C,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAA;IACtE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CAC5F,CA2VA"}
1
+ {"version":3,"file":"oauth-server.d.ts","sourceRoot":"","sources":["../../../lib/codex-native/oauth-server.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AASjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,qBAAqB,EAAgB,MAAM,yBAAyB,CAAA;AAE9G,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAEnE,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,EACxD,KAAK,EAAE,0BAA0B,CAAC,KAAK,EAAE,OAAO,CAAC,GAChD;IACD,cAAc,EAAE,MAAM,OAAO,CAAA;IAC7B,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;IAClE,KAAK,EAAE,MAAM,OAAO,CAAC;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC7C,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAA;IACtE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CAC5F,CAsVA"}
@@ -1,122 +1,9 @@
1
1
  import http from "node:http";
2
2
  import path from "node:path";
3
- import { appendFileSync, chmodSync, mkdirSync, renameSync, statSync, unlinkSync } from "node:fs";
4
- import { isFsErrorCode } from "../cache-io.js";
5
3
  import { defaultCodexPluginLogsPath } from "../paths.js";
6
- const DEFAULT_DEBUG_LOG_MAX_BYTES = 1_000_000;
7
- const REDACTED = "[redacted]";
8
- const REDACTED_DEBUG_META_KEY_FRAGMENTS = [
9
- "token",
10
- "secret",
11
- "password",
12
- "authorization",
13
- "cookie",
14
- "id_token",
15
- "refresh_token",
16
- "access_token",
17
- "authorization_code",
18
- "auth_code",
19
- "code_verifier",
20
- "pkce",
21
- "verifier"
22
- ];
23
- function shouldRedactDebugMetaKey(key) {
24
- const lower = key.trim().toLowerCase();
25
- if (!lower)
26
- return false;
27
- return REDACTED_DEBUG_META_KEY_FRAGMENTS.some((fragment) => lower.includes(fragment));
28
- }
29
- function sanitizeDebugMeta(value) {
30
- if (typeof value === "string") {
31
- return value
32
- .replace(/\b(access_token|refresh_token|id_token|authorization_code|auth_code|code_verifier|pkce_verifier)=([^\s&]+)/gi, `$1=${REDACTED}`)
33
- .replace(/"(access_token|refresh_token|id_token|authorization_code|auth_code|code_verifier|pkce_verifier)"\s*:\s*"[^"]*"/gi, `"$1":"${REDACTED}"`)
34
- .replace(/([?&])(code|state|access_token|refresh_token|id_token|code_verifier|pkce_verifier)=([^&]+)/gi, (_match, prefix, key) => {
35
- return `${prefix}${key}=${REDACTED}`;
36
- });
37
- }
38
- if (Array.isArray(value))
39
- return value.map((item) => sanitizeDebugMeta(item));
40
- if (!value || typeof value !== "object")
41
- return value;
42
- const out = {};
43
- for (const [key, entry] of Object.entries(value)) {
44
- out[key] = shouldRedactDebugMetaKey(key) ? REDACTED : sanitizeDebugMeta(entry);
45
- }
46
- return out;
47
- }
48
- function resolveDebugLogMaxBytes() {
49
- const raw = process.env.CODEX_AUTH_DEBUG_MAX_BYTES;
50
- if (!raw)
51
- return DEFAULT_DEBUG_LOG_MAX_BYTES;
52
- const parsed = Number(raw);
53
- if (!Number.isFinite(parsed))
54
- return DEFAULT_DEBUG_LOG_MAX_BYTES;
55
- return Math.max(16_384, Math.floor(parsed));
56
- }
57
- function rotateDebugLogIfNeeded(debugLogFile, maxBytes) {
58
- try {
59
- const stat = statSync(debugLogFile);
60
- if (stat.size < maxBytes)
61
- return;
62
- const rotatedPath = `${debugLogFile}.1`;
63
- try {
64
- unlinkSync(rotatedPath);
65
- }
66
- catch (error) {
67
- if (!isFsErrorCode(error, "ENOENT")) {
68
- // ignore missing previous rotation file
69
- }
70
- // ignore missing previous rotation file
71
- }
72
- renameSync(debugLogFile, rotatedPath);
73
- }
74
- catch (error) {
75
- if (!isFsErrorCode(error, "ENOENT")) {
76
- // ignore when file does not exist or cannot be inspected
77
- }
78
- // ignore when file does not exist or cannot be inspected
79
- }
80
- }
81
- export function isLoopbackRemoteAddress(remoteAddress) {
82
- if (!remoteAddress)
83
- return false;
84
- const normalized = remoteAddress.split("%")[0]?.toLowerCase();
85
- if (!normalized)
86
- return false;
87
- if (normalized === "::1")
88
- return true;
89
- if (normalized.startsWith("127."))
90
- return true;
91
- if (normalized.startsWith("::ffff:127."))
92
- return true;
93
- return false;
94
- }
95
- function resolveListenHosts(loopbackHost) {
96
- const normalized = loopbackHost.trim().toLowerCase();
97
- if (normalized === "localhost") {
98
- return ["localhost", "127.0.0.1", "::1"];
99
- }
100
- return [loopbackHost];
101
- }
102
- function shouldRetryListenWithFallback(error) {
103
- return (isFsErrorCode(error, "EADDRNOTAVAIL") ||
104
- isFsErrorCode(error, "EAFNOSUPPORT") ||
105
- isFsErrorCode(error, "ENOTFOUND"));
106
- }
107
- function rewriteCallbackUriHost(callbackUri, host) {
108
- try {
109
- const url = new URL(callbackUri);
110
- url.hostname = host;
111
- return url.toString();
112
- }
113
- catch (error) {
114
- if (error instanceof Error) {
115
- // fallback to configured callback URI when URL parsing fails
116
- }
117
- return callbackUri;
118
- }
119
- }
4
+ import { appendDebugLine, resolveDebugLogMaxBytes, sanitizeDebugMeta } from "./oauth-server-debug.js";
5
+ import { isLoopbackRemoteAddress, resolveListenHosts, rewriteCallbackUriHost, shouldRetryListenWithFallback } from "./oauth-server-network.js";
6
+ export { isLoopbackRemoteAddress } from "./oauth-server-network.js";
120
7
  export function createOAuthServerController(input) {
121
8
  const debugLogDir = input.debugLogDir ?? defaultCodexPluginLogsPath();
122
9
  const debugLogFile = input.debugLogFile ?? path.join(debugLogDir, "oauth-lifecycle.log");
@@ -150,18 +37,12 @@ export function createOAuthServerController(input) {
150
37
  }
151
38
  // best effort stderr logging
152
39
  }
153
- try {
154
- mkdirSync(debugLogDir, { recursive: true, mode: 0o700 });
155
- rotateDebugLogIfNeeded(debugLogFile, debugLogMaxBytes);
156
- appendFileSync(debugLogFile, `${line}\n`, { encoding: "utf8", mode: 0o600 });
157
- chmodSync(debugLogFile, 0o600);
158
- }
159
- catch (error) {
160
- if (error instanceof Error) {
161
- // best effort file logging
162
- }
163
- // best effort file logging
164
- }
40
+ appendDebugLine({
41
+ debugLogDir,
42
+ debugLogFile,
43
+ debugLogMaxBytes,
44
+ line
45
+ });
165
46
  }
166
47
  function clearCloseTimer() {
167
48
  if (!oauthServerCloseTimer)
@@ -306,7 +187,7 @@ export function createOAuthServerController(input) {
306
187
  setResponseHeaders(res, { contentType: "text/plain; charset=utf-8" });
307
188
  res.end("Not found");
308
189
  }
309
- catch (error) {
190
+ catch (_error) {
310
191
  res.statusCode = 500;
311
192
  setResponseHeaders(res, { contentType: "text/plain; charset=utf-8" });
312
193
  res.end("Server error");
@@ -353,7 +234,7 @@ export function createOAuthServerController(input) {
353
234
  }
354
235
  }
355
236
  if (!boundHost) {
356
- throw (lastListenError ?? new Error("Failed to bind OAuth callback server"));
237
+ throw lastListenError ?? new Error("Failed to bind OAuth callback server");
357
238
  }
358
239
  emitDebug("server_started", { port: input.port, host: boundHost, redirectUri: activeRedirectUri });
359
240
  }
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-server.js","sourceRoot":"","sources":["../../../lib/codex-native/oauth-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth-server.js","sourceRoot":"","sources":["../../../lib/codex-native/oauth-server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { Logger } from "../logger.js";
2
+ import type { CodexSpoofMode } from "../config.js";
3
+ import { type QuotaThresholdTrackerState } from "../quota-threshold-alerts.js";
4
+ export declare function scheduleQuotaRefresh(input: {
5
+ identityForQuota: string;
6
+ selectedAuthForQuota: {
7
+ access: string;
8
+ accountId?: string;
9
+ };
10
+ spoofMode: CodexSpoofMode;
11
+ log?: Logger;
12
+ quietMode: boolean;
13
+ quotaRefreshAtByIdentity: Map<string, number>;
14
+ quotaTrackerByIdentity: Map<string, QuotaThresholdTrackerState>;
15
+ setCooldown: (idKey: string, cooldownUntil: number) => Promise<void>;
16
+ showToast: (message: string, variant?: "info" | "success" | "warning" | "error", quietMode?: boolean) => Promise<void>;
17
+ }): void;
18
+ //# sourceMappingURL=openai-loader-fetch-quota.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openai-loader-fetch-quota.d.ts","sourceRoot":"","sources":["../../../lib/codex-native/openai-loader-fetch-quota.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAE1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAGL,KAAK,0BAA0B,EAChC,MAAM,8BAA8B,CAAA;AAUrC,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,gBAAgB,EAAE,MAAM,CAAA;IACxB,oBAAoB,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5D,SAAS,EAAE,cAAc,CAAA;IACzB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,OAAO,CAAA;IAClB,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7C,sBAAsB,EAAE,GAAG,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAA;IAC/D,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACpE,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,EAAE,SAAS,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACvH,GAAG,IAAI,CAuEP"}
@@ -0,0 +1,71 @@
1
+ import { saveSnapshots } from "../codex-status-storage.js";
2
+ import { fetchQuotaSnapshotFromBackend } from "../codex-quota-fetch.js";
3
+ import { defaultSnapshotsPath } from "../paths.js";
4
+ import { DEFAULT_QUOTA_THRESHOLD_TRACKER_STATE, evaluateQuotaThresholds } from "../quota-threshold-alerts.js";
5
+ import { resolveRequestUserAgent } from "./client-identity.js";
6
+ import { resolveCodexOriginator } from "./originator.js";
7
+ import { QUOTA_EXHAUSTED_FALLBACK_COOLDOWN_MS, QUOTA_FETCH_TIMEOUT_MS, QUOTA_REFRESH_FAILURE_RETRY_MS, QUOTA_REFRESH_TTL_MS } from "./openai-loader-fetch-state.js";
8
+ export function scheduleQuotaRefresh(input) {
9
+ const now = Date.now();
10
+ const nextRefreshAt = input.quotaRefreshAtByIdentity.get(input.identityForQuota);
11
+ if (nextRefreshAt !== undefined && now < nextRefreshAt) {
12
+ return;
13
+ }
14
+ input.quotaRefreshAtByIdentity.set(input.identityForQuota, now + QUOTA_REFRESH_TTL_MS);
15
+ void (async () => {
16
+ try {
17
+ const quotaSnapshot = await fetchQuotaSnapshotFromBackend({
18
+ accessToken: input.selectedAuthForQuota.access,
19
+ accountId: input.selectedAuthForQuota.accountId,
20
+ now,
21
+ modelFamily: "codex",
22
+ userAgent: resolveRequestUserAgent(input.spoofMode, resolveCodexOriginator(input.spoofMode)),
23
+ log: input.log,
24
+ timeoutMs: QUOTA_FETCH_TIMEOUT_MS
25
+ });
26
+ if (!quotaSnapshot) {
27
+ input.quotaRefreshAtByIdentity.set(input.identityForQuota, now + QUOTA_REFRESH_FAILURE_RETRY_MS);
28
+ return;
29
+ }
30
+ await saveSnapshots(defaultSnapshotsPath(), (current) => ({
31
+ ...current,
32
+ [input.identityForQuota]: quotaSnapshot
33
+ }));
34
+ const previousTracker = input.quotaTrackerByIdentity.get(input.identityForQuota) ?? DEFAULT_QUOTA_THRESHOLD_TRACKER_STATE;
35
+ const evaluated = evaluateQuotaThresholds({
36
+ snapshot: quotaSnapshot,
37
+ previousState: previousTracker
38
+ });
39
+ input.quotaTrackerByIdentity.set(input.identityForQuota, evaluated.nextState);
40
+ for (const warning of evaluated.warnings) {
41
+ await input.showToast(warning.message, "warning", input.quietMode);
42
+ }
43
+ if (evaluated.exhaustedCrossings.length > 0) {
44
+ const nowForCooldown = Date.now();
45
+ const cooldownCandidates = evaluated.exhaustedCrossings
46
+ .map((crossing) => crossing.resetsAt)
47
+ .filter((value) => typeof value === "number" && Number.isFinite(value) && value > nowForCooldown);
48
+ const cooldownUntil = cooldownCandidates.length > 0
49
+ ? Math.max(...cooldownCandidates)
50
+ : nowForCooldown + QUOTA_EXHAUSTED_FALLBACK_COOLDOWN_MS;
51
+ await input.setCooldown(input.identityForQuota, cooldownUntil);
52
+ if (evaluated.exhaustedCrossings.length === 1) {
53
+ const only = evaluated.exhaustedCrossings[0];
54
+ const label = only.window === "weekly" ? "weekly" : "5h";
55
+ await input.showToast(`Switching account due to ${label} quota limit`, "warning", input.quietMode);
56
+ }
57
+ else {
58
+ await input.showToast("Switching account due to 5h and weekly quota limits", "warning", input.quietMode);
59
+ }
60
+ }
61
+ }
62
+ catch (error) {
63
+ input.quotaRefreshAtByIdentity.set(input.identityForQuota, now + QUOTA_REFRESH_FAILURE_RETRY_MS);
64
+ input.log?.debug("quota refresh during request failed", {
65
+ identityKey: input.identityForQuota,
66
+ error: error instanceof Error ? error.message : String(error)
67
+ });
68
+ }
69
+ })();
70
+ }
71
+ //# sourceMappingURL=openai-loader-fetch-quota.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openai-loader-fetch-quota.js","sourceRoot":"","sources":["../../../lib/codex-native/openai-loader-fetch-quota.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { QuotaThresholdTrackerState } from "../quota-threshold-alerts.js";
2
+ export type CatalogSyncState = {
3
+ lastAttemptAt: number;
4
+ lastFailureAt: number;
5
+ inFlight: Promise<void> | null;
6
+ };
7
+ export declare const QUOTA_STATE_MAX_ENTRIES = 512;
8
+ export declare const QUOTA_REFRESH_TTL_MS = 60000;
9
+ export declare const QUOTA_REFRESH_FAILURE_RETRY_MS = 10000;
10
+ export declare const QUOTA_FETCH_TIMEOUT_MS = 3000;
11
+ export declare const QUOTA_EXHAUSTED_FALLBACK_COOLDOWN_MS: number;
12
+ export declare const CATALOG_REFRESH_TTL_MS = 60000;
13
+ export declare const CATALOG_REFRESH_FAILURE_RETRY_MS = 10000;
14
+ export declare function resolveCatalogScopeKey(auth: {
15
+ accountId?: string;
16
+ identityKey?: string;
17
+ email?: string;
18
+ plan?: string;
19
+ selectionTrace?: {
20
+ attemptKey?: string;
21
+ };
22
+ }): string;
23
+ export declare function pruneCatalogSyncState(catalogSyncByScope: Map<string, CatalogSyncState>, now: number): void;
24
+ export declare function getCatalogSyncState(catalogSyncByScope: Map<string, CatalogSyncState>, scopeKey: string): CatalogSyncState;
25
+ export declare function pruneQuotaState(quotaRefreshAtByIdentity: Map<string, number>, quotaTrackerByIdentity: Map<string, QuotaThresholdTrackerState>, now: number): void;
26
+ export declare function stripUnsafeForwardedHeaders(headers: Headers): void;
27
+ //# sourceMappingURL=openai-loader-fetch-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openai-loader-fetch-state.d.ts","sourceRoot":"","sources":["../../../lib/codex-native/openai-loader-fetch-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AAE9E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC/B,CAAA;AAED,eAAO,MAAM,uBAAuB,MAAM,CAAA;AAC1C,eAAO,MAAM,oBAAoB,QAAS,CAAA;AAC1C,eAAO,MAAM,8BAA8B,QAAS,CAAA;AACpD,eAAO,MAAM,sBAAsB,OAAO,CAAA;AAC1C,eAAO,MAAM,oCAAoC,QAAgB,CAAA;AACjE,eAAO,MAAM,sBAAsB,QAAS,CAAA;AAC5C,eAAO,MAAM,gCAAgC,QAAS,CAAA;AAWtD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,cAAc,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACzC,GAAG,MAAM,CAaT;AAED,wBAAgB,qBAAqB,CAAC,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAiB1G;AAED,wBAAgB,mBAAmB,CACjC,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,EACjD,QAAQ,EAAE,MAAM,GACf,gBAAgB,CAWlB;AAED,wBAAgB,eAAe,CAC7B,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7C,sBAAsB,EAAE,GAAG,CAAC,MAAM,EAAE,0BAA0B,CAAC,EAC/D,GAAG,EAAE,MAAM,GACV,IAAI,CAqBN;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAOlE"}