codex-multi-auth 2.1.13-beta.1 → 2.2.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 (214) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +415 -415
  3. package/assets/codex-multi-auth-icon.svg +39 -39
  4. package/assets/readme-hero.svg +31 -31
  5. package/config/README.md +29 -29
  6. package/config/codex-legacy.json +571 -571
  7. package/config/codex-modern.json +258 -258
  8. package/config/minimal-codex.json +15 -15
  9. package/config/schema/config.schema.json +20 -20
  10. package/dist/lib/accounts.d.ts.map +1 -1
  11. package/dist/lib/accounts.js +30 -1
  12. package/dist/lib/accounts.js.map +1 -1
  13. package/dist/lib/auth/org-override.d.ts +19 -0
  14. package/dist/lib/auth/org-override.d.ts.map +1 -0
  15. package/dist/lib/auth/org-override.js +23 -0
  16. package/dist/lib/auth/org-override.js.map +1 -0
  17. package/dist/lib/circuit-breaker.d.ts +6 -0
  18. package/dist/lib/circuit-breaker.d.ts.map +1 -1
  19. package/dist/lib/circuit-breaker.js +8 -0
  20. package/dist/lib/circuit-breaker.js.map +1 -1
  21. package/dist/lib/codex-manager/account-manager-commands.d.ts +14 -0
  22. package/dist/lib/codex-manager/account-manager-commands.d.ts.map +1 -0
  23. package/dist/lib/codex-manager/account-manager-commands.js +43 -0
  24. package/dist/lib/codex-manager/account-manager-commands.js.map +1 -0
  25. package/dist/lib/codex-manager/commands/best.d.ts +1 -1
  26. package/dist/lib/codex-manager/commands/best.d.ts.map +1 -1
  27. package/dist/lib/codex-manager/commands/best.js +2 -1
  28. package/dist/lib/codex-manager/commands/best.js.map +1 -1
  29. package/dist/lib/codex-manager/commands/debug-bundle.d.ts +16 -0
  30. package/dist/lib/codex-manager/commands/debug-bundle.d.ts.map +1 -1
  31. package/dist/lib/codex-manager/commands/debug-bundle.js +80 -5
  32. package/dist/lib/codex-manager/commands/debug-bundle.js.map +1 -1
  33. package/dist/lib/codex-manager/commands/forecast.d.ts +1 -1
  34. package/dist/lib/codex-manager/commands/forecast.d.ts.map +1 -1
  35. package/dist/lib/codex-manager/commands/forecast.js +2 -1
  36. package/dist/lib/codex-manager/commands/forecast.js.map +1 -1
  37. package/dist/lib/codex-manager/commands/report.d.ts.map +1 -1
  38. package/dist/lib/codex-manager/commands/report.js +2 -2
  39. package/dist/lib/codex-manager/commands/report.js.map +1 -1
  40. package/dist/lib/codex-manager/commands/status.d.ts +2 -0
  41. package/dist/lib/codex-manager/commands/status.d.ts.map +1 -1
  42. package/dist/lib/codex-manager/commands/status.js +84 -25
  43. package/dist/lib/codex-manager/commands/status.js.map +1 -1
  44. package/dist/lib/codex-manager/commands/switch.d.ts.map +1 -1
  45. package/dist/lib/codex-manager/commands/switch.js +7 -0
  46. package/dist/lib/codex-manager/commands/switch.js.map +1 -1
  47. package/dist/lib/codex-manager/experimental-settings-prompt.d.ts.map +1 -1
  48. package/dist/lib/codex-manager/experimental-settings-prompt.js +13 -3
  49. package/dist/lib/codex-manager/experimental-settings-prompt.js.map +1 -1
  50. package/dist/lib/codex-manager/forecast-report-commands.d.ts.map +1 -1
  51. package/dist/lib/codex-manager/forecast-report-commands.js +3 -3
  52. package/dist/lib/codex-manager/forecast-report-commands.js.map +1 -1
  53. package/dist/lib/codex-manager/repair-commands.d.ts.map +1 -1
  54. package/dist/lib/codex-manager/repair-commands.js +11 -1
  55. package/dist/lib/codex-manager/repair-commands.js.map +1 -1
  56. package/dist/lib/codex-manager/settings-hub/experimental.d.ts.map +1 -1
  57. package/dist/lib/codex-manager/settings-hub/experimental.js +8 -0
  58. package/dist/lib/codex-manager/settings-hub/experimental.js.map +1 -1
  59. package/dist/lib/codex-manager.d.ts +3 -0
  60. package/dist/lib/codex-manager.d.ts.map +1 -1
  61. package/dist/lib/codex-manager.js +53 -65
  62. package/dist/lib/codex-manager.js.map +1 -1
  63. package/dist/lib/config.d.ts +26 -0
  64. package/dist/lib/config.d.ts.map +1 -1
  65. package/dist/lib/config.js +152 -5
  66. package/dist/lib/config.js.map +1 -1
  67. package/dist/lib/context-overflow.d.ts +7 -2
  68. package/dist/lib/context-overflow.d.ts.map +1 -1
  69. package/dist/lib/context-overflow.js +65 -47
  70. package/dist/lib/context-overflow.js.map +1 -1
  71. package/dist/lib/errors.d.ts +16 -0
  72. package/dist/lib/errors.d.ts.map +1 -1
  73. package/dist/lib/errors.js +23 -0
  74. package/dist/lib/errors.js.map +1 -1
  75. package/dist/lib/local-bridge.d.ts +8 -0
  76. package/dist/lib/local-bridge.d.ts.map +1 -1
  77. package/dist/lib/local-bridge.js +81 -7
  78. package/dist/lib/local-bridge.js.map +1 -1
  79. package/dist/lib/logger.d.ts +9 -1
  80. package/dist/lib/logger.d.ts.map +1 -1
  81. package/dist/lib/logger.js +104 -19
  82. package/dist/lib/logger.js.map +1 -1
  83. package/dist/lib/oauth-success.html +125 -125
  84. package/dist/lib/oc-chatgpt-orchestrator.d.ts +7 -1
  85. package/dist/lib/oc-chatgpt-orchestrator.d.ts.map +1 -1
  86. package/dist/lib/oc-chatgpt-orchestrator.js +68 -9
  87. package/dist/lib/oc-chatgpt-orchestrator.js.map +1 -1
  88. package/dist/lib/policy/runtime-policy.d.ts.map +1 -1
  89. package/dist/lib/policy/runtime-policy.js +15 -1
  90. package/dist/lib/policy/runtime-policy.js.map +1 -1
  91. package/dist/lib/prompts/codex-host-bridge.js +138 -138
  92. package/dist/lib/prompts/codex.d.ts.map +1 -1
  93. package/dist/lib/prompts/codex.js +203 -108
  94. package/dist/lib/prompts/codex.js.map +1 -1
  95. package/dist/lib/prompts/fetch-utils.d.ts +72 -0
  96. package/dist/lib/prompts/fetch-utils.d.ts.map +1 -0
  97. package/dist/lib/prompts/fetch-utils.js +165 -0
  98. package/dist/lib/prompts/fetch-utils.js.map +1 -0
  99. package/dist/lib/prompts/host-codex-prompt.d.ts.map +1 -1
  100. package/dist/lib/prompts/host-codex-prompt.js +24 -10
  101. package/dist/lib/prompts/host-codex-prompt.js.map +1 -1
  102. package/dist/lib/quota-cache.d.ts.map +1 -1
  103. package/dist/lib/quota-cache.js +10 -1
  104. package/dist/lib/quota-cache.js.map +1 -1
  105. package/dist/lib/quota-probe.d.ts +21 -0
  106. package/dist/lib/quota-probe.d.ts.map +1 -1
  107. package/dist/lib/quota-probe.js +39 -0
  108. package/dist/lib/quota-probe.js.map +1 -1
  109. package/dist/lib/quota-readiness.d.ts +3 -1
  110. package/dist/lib/quota-readiness.d.ts.map +1 -1
  111. package/dist/lib/quota-readiness.js +16 -3
  112. package/dist/lib/quota-readiness.js.map +1 -1
  113. package/dist/lib/recovery/storage.d.ts +7 -0
  114. package/dist/lib/recovery/storage.d.ts.map +1 -1
  115. package/dist/lib/recovery/storage.js +178 -10
  116. package/dist/lib/recovery/storage.js.map +1 -1
  117. package/dist/lib/refresh-lease.d.ts +1 -1
  118. package/dist/lib/refresh-lease.d.ts.map +1 -1
  119. package/dist/lib/refresh-lease.js +25 -3
  120. package/dist/lib/refresh-lease.js.map +1 -1
  121. package/dist/lib/refresh-queue.d.ts.map +1 -1
  122. package/dist/lib/refresh-queue.js +31 -17
  123. package/dist/lib/refresh-queue.js.map +1 -1
  124. package/dist/lib/request/fetch-helpers.d.ts +0 -5
  125. package/dist/lib/request/fetch-helpers.d.ts.map +1 -1
  126. package/dist/lib/request/fetch-helpers.js +36 -7
  127. package/dist/lib/request/fetch-helpers.js.map +1 -1
  128. package/dist/lib/rotation.d.ts +12 -0
  129. package/dist/lib/rotation.d.ts.map +1 -1
  130. package/dist/lib/rotation.js +36 -0
  131. package/dist/lib/rotation.js.map +1 -1
  132. package/dist/lib/runtime/account-check-types.d.ts +1 -0
  133. package/dist/lib/runtime/account-check-types.d.ts.map +1 -1
  134. package/dist/lib/runtime/account-check-types.js +1 -0
  135. package/dist/lib/runtime/account-check-types.js.map +1 -1
  136. package/dist/lib/runtime/account-check.d.ts.map +1 -1
  137. package/dist/lib/runtime/account-check.js +15 -4
  138. package/dist/lib/runtime/account-check.js.map +1 -1
  139. package/dist/lib/runtime/runtime-observability.d.ts.map +1 -1
  140. package/dist/lib/runtime/runtime-observability.js +24 -2
  141. package/dist/lib/runtime/runtime-observability.js.map +1 -1
  142. package/dist/lib/runtime-rotation-proxy.d.ts +3 -0
  143. package/dist/lib/runtime-rotation-proxy.d.ts.map +1 -1
  144. package/dist/lib/runtime-rotation-proxy.js +296 -21
  145. package/dist/lib/runtime-rotation-proxy.js.map +1 -1
  146. package/dist/lib/schemas.d.ts +2 -0
  147. package/dist/lib/schemas.d.ts.map +1 -1
  148. package/dist/lib/schemas.js +2 -0
  149. package/dist/lib/schemas.js.map +1 -1
  150. package/dist/lib/storage/account-clear.d.ts.map +1 -1
  151. package/dist/lib/storage/account-clear.js +4 -2
  152. package/dist/lib/storage/account-clear.js.map +1 -1
  153. package/dist/lib/storage/flagged-storage-io.d.ts.map +1 -1
  154. package/dist/lib/storage/flagged-storage-io.js +4 -1
  155. package/dist/lib/storage/flagged-storage-io.js.map +1 -1
  156. package/dist/lib/storage/import-export.d.ts.map +1 -1
  157. package/dist/lib/storage/import-export.js +29 -9
  158. package/dist/lib/storage/import-export.js.map +1 -1
  159. package/dist/lib/storage/paths.d.ts.map +1 -1
  160. package/dist/lib/storage/paths.js +93 -0
  161. package/dist/lib/storage/paths.js.map +1 -1
  162. package/dist/lib/storage/storage-parser.d.ts.map +1 -1
  163. package/dist/lib/storage/storage-parser.js +7 -1
  164. package/dist/lib/storage/storage-parser.js.map +1 -1
  165. package/dist/lib/storage.d.ts.map +1 -1
  166. package/dist/lib/storage.js +13 -9
  167. package/dist/lib/storage.js.map +1 -1
  168. package/dist/lib/table-formatter.d.ts.map +1 -1
  169. package/dist/lib/table-formatter.js +20 -2
  170. package/dist/lib/table-formatter.js.map +1 -1
  171. package/dist/lib/types.d.ts +7 -0
  172. package/dist/lib/types.d.ts.map +1 -1
  173. package/dist/lib/ui/auth-menu.d.ts.map +1 -1
  174. package/dist/lib/ui/auth-menu.js +8 -2
  175. package/dist/lib/ui/auth-menu.js.map +1 -1
  176. package/dist/lib/ui/display-width.d.ts +27 -0
  177. package/dist/lib/ui/display-width.d.ts.map +1 -0
  178. package/dist/lib/ui/display-width.js +194 -0
  179. package/dist/lib/ui/display-width.js.map +1 -0
  180. package/dist/lib/ui/select.d.ts +23 -0
  181. package/dist/lib/ui/select.d.ts.map +1 -1
  182. package/dist/lib/ui/select.js +64 -16
  183. package/dist/lib/ui/select.js.map +1 -1
  184. package/dist/lib/ui/theme.d.ts +13 -0
  185. package/dist/lib/ui/theme.d.ts.map +1 -1
  186. package/dist/lib/ui/theme.js +34 -1
  187. package/dist/lib/ui/theme.js.map +1 -1
  188. package/node_modules/@codex-ai/plugin/dist/index.d.ts +2 -2
  189. package/node_modules/@codex-ai/plugin/dist/index.js +2 -2
  190. package/node_modules/@codex-ai/plugin/dist/tool.d.ts +42 -42
  191. package/node_modules/@codex-ai/plugin/dist/tool.js +29 -29
  192. package/node_modules/@codex-ai/plugin/package.json +9 -9
  193. package/node_modules/@codex-ai/sdk/dist/index.d.ts +4 -0
  194. package/node_modules/@codex-ai/sdk/dist/index.js +2 -0
  195. package/node_modules/@codex-ai/sdk/package.json +8 -0
  196. package/package.json +196 -193
  197. package/scripts/codex-app-launcher.js +653 -653
  198. package/scripts/codex-app-router.js +322 -322
  199. package/scripts/codex-bin-resolver.js +254 -254
  200. package/scripts/codex-multi-auth.js +59 -59
  201. package/scripts/codex-routing.js +59 -56
  202. package/scripts/codex.js +4782 -4275
  203. package/scripts/install-codex-auth-utils.js +206 -206
  204. package/scripts/mcodex +117 -0
  205. package/scripts/postinstall.js +343 -343
  206. package/scripts/preuninstall.js +254 -254
  207. package/vendor/codex-ai-plugin/dist/index.d.ts +2 -2
  208. package/vendor/codex-ai-plugin/dist/index.js +2 -2
  209. package/vendor/codex-ai-plugin/dist/tool.d.ts +42 -42
  210. package/vendor/codex-ai-plugin/dist/tool.js +29 -29
  211. package/vendor/codex-ai-plugin/package.json +9 -9
  212. package/vendor/codex-ai-sdk/dist/index.d.ts +4 -4
  213. package/vendor/codex-ai-sdk/dist/index.js +2 -2
  214. package/vendor/codex-ai-sdk/package.json +8 -8
@@ -1,126 +1,126 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Codex Sign-In Complete</title>
7
- <style>
8
- :root {
9
- color-scheme: dark;
10
- --bg: #0b0b0b;
11
- --panel: #111111;
12
- --text: #f2f2f2;
13
- --muted: #a3a3a3;
14
- --line: #232323;
15
- --ok: #7cf0a6;
16
- }
17
-
18
- * {
19
- box-sizing: border-box;
20
- }
21
-
22
- body {
23
- margin: 0;
24
- min-height: 100vh;
25
- display: grid;
26
- place-items: center;
27
- background: var(--bg);
28
- color: var(--text);
29
- font-family: "Geist Mono", "GeistMono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
30
- padding: 24px;
31
- }
32
-
33
- main {
34
- width: min(520px, 100%);
35
- background: var(--panel);
36
- border: 1px solid var(--line);
37
- border-radius: 12px;
38
- padding: 20px;
39
- display: grid;
40
- gap: 14px;
41
- }
42
-
43
- h1 {
44
- margin: 0;
45
- font-size: 20px;
46
- font-weight: 600;
47
- letter-spacing: -0.02em;
48
- }
49
-
50
- p {
51
- margin: 0;
52
- color: var(--muted);
53
- font-size: 14px;
54
- line-height: 1.5;
55
- }
56
-
57
- .status {
58
- display: inline-flex;
59
- align-items: center;
60
- gap: 8px;
61
- color: var(--ok);
62
- font-size: 13px;
63
- }
64
-
65
- .dot {
66
- width: 8px;
67
- height: 8px;
68
- border-radius: 50%;
69
- background: currentColor;
70
- }
71
-
72
- dl {
73
- margin: 0;
74
- display: grid;
75
- grid-template-columns: 120px 1fr;
76
- gap: 8px 12px;
77
- font-size: 13px;
78
- }
79
-
80
- dt {
81
- color: var(--muted);
82
- }
83
-
84
- dd {
85
- margin: 0;
86
- color: var(--text);
87
- word-break: break-word;
88
- }
89
-
90
- code {
91
- background: #171717;
92
- border: 1px solid var(--line);
93
- border-radius: 6px;
94
- padding: 2px 6px;
95
- font-family: inherit;
96
- font-size: 12px;
97
- }
98
-
99
- @media (max-width: 520px) {
100
- dl {
101
- grid-template-columns: 1fr;
102
- }
103
- }
104
- </style>
105
- </head>
106
- <body>
107
- <main role="main" aria-label="OAuth callback received">
108
- <h1>Sign-in complete</h1>
109
- <p>Return to your terminal to finish Codex login.</p>
110
-
111
- <div class="status" aria-live="polite">
112
- <span class="dot" aria-hidden="true"></span>
113
- Callback received
114
- </div>
115
-
116
- <dl>
117
- <dt>Endpoint</dt>
118
- <dd><code>localhost:1455</code></dd>
119
- <dt>Flow</dt>
120
- <dd>OAuth callback captured</dd>
121
- <dt>Next</dt>
122
- <dd>Close this tab and continue in terminal</dd>
123
- </dl>
124
- </main>
125
- </body>
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>Codex Sign-In Complete</title>
7
+ <style>
8
+ :root {
9
+ color-scheme: dark;
10
+ --bg: #0b0b0b;
11
+ --panel: #111111;
12
+ --text: #f2f2f2;
13
+ --muted: #a3a3a3;
14
+ --line: #232323;
15
+ --ok: #7cf0a6;
16
+ }
17
+
18
+ * {
19
+ box-sizing: border-box;
20
+ }
21
+
22
+ body {
23
+ margin: 0;
24
+ min-height: 100vh;
25
+ display: grid;
26
+ place-items: center;
27
+ background: var(--bg);
28
+ color: var(--text);
29
+ font-family: "Geist Mono", "GeistMono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
30
+ padding: 24px;
31
+ }
32
+
33
+ main {
34
+ width: min(520px, 100%);
35
+ background: var(--panel);
36
+ border: 1px solid var(--line);
37
+ border-radius: 12px;
38
+ padding: 20px;
39
+ display: grid;
40
+ gap: 14px;
41
+ }
42
+
43
+ h1 {
44
+ margin: 0;
45
+ font-size: 20px;
46
+ font-weight: 600;
47
+ letter-spacing: -0.02em;
48
+ }
49
+
50
+ p {
51
+ margin: 0;
52
+ color: var(--muted);
53
+ font-size: 14px;
54
+ line-height: 1.5;
55
+ }
56
+
57
+ .status {
58
+ display: inline-flex;
59
+ align-items: center;
60
+ gap: 8px;
61
+ color: var(--ok);
62
+ font-size: 13px;
63
+ }
64
+
65
+ .dot {
66
+ width: 8px;
67
+ height: 8px;
68
+ border-radius: 50%;
69
+ background: currentColor;
70
+ }
71
+
72
+ dl {
73
+ margin: 0;
74
+ display: grid;
75
+ grid-template-columns: 120px 1fr;
76
+ gap: 8px 12px;
77
+ font-size: 13px;
78
+ }
79
+
80
+ dt {
81
+ color: var(--muted);
82
+ }
83
+
84
+ dd {
85
+ margin: 0;
86
+ color: var(--text);
87
+ word-break: break-word;
88
+ }
89
+
90
+ code {
91
+ background: #171717;
92
+ border: 1px solid var(--line);
93
+ border-radius: 6px;
94
+ padding: 2px 6px;
95
+ font-family: inherit;
96
+ font-size: 12px;
97
+ }
98
+
99
+ @media (max-width: 520px) {
100
+ dl {
101
+ grid-template-columns: 1fr;
102
+ }
103
+ }
104
+ </style>
105
+ </head>
106
+ <body>
107
+ <main role="main" aria-label="OAuth callback received">
108
+ <h1>Sign-in complete</h1>
109
+ <p>Return to your terminal to finish Codex login.</p>
110
+
111
+ <div class="status" aria-live="polite">
112
+ <span class="dot" aria-hidden="true"></span>
113
+ Callback received
114
+ </div>
115
+
116
+ <dl>
117
+ <dt>Endpoint</dt>
118
+ <dd><code>localhost:1455</code></dd>
119
+ <dt>Flow</dt>
120
+ <dd>OAuth callback captured</dd>
121
+ <dt>Next</dt>
122
+ <dd>Close this tab and continue in terminal</dd>
123
+ </dl>
124
+ </main>
125
+ </body>
126
126
  </html>
@@ -17,7 +17,13 @@ type OcChatgptSyncPlanReady = {
17
17
  payload: OcChatgptPreviewPayload;
18
18
  destination: AccountStorageV3 | null;
19
19
  };
20
- export type OcChatgptSyncPlanResult = OcChatgptSyncPlanReady | BlockedDetection;
20
+ type OcChatgptSyncPlanError = {
21
+ kind: "plan-error";
22
+ target: OcChatgptTargetDescriptor;
23
+ error: unknown;
24
+ cause: "load" | "preview";
25
+ };
26
+ export type OcChatgptSyncPlanResult = OcChatgptSyncPlanReady | BlockedDetection | OcChatgptSyncPlanError;
21
27
  type DetectOptions = {
22
28
  explicitRoot?: string | null;
23
29
  projectRoot?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"oc-chatgpt-orchestrator.d.ts","sourceRoot":"","sources":["../../lib/oc-chatgpt-orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oc-chatgpt-orchestrator.d.ts","sourceRoot":"","sources":["../../lib/oc-chatgpt-orchestrator.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { promises as fs } from "node:fs";
2
2
  import { dirname } from "node:path";
3
+ import { withFileOperationRetry } from "./fs-retry.js";
3
4
  import { previewOcChatgptImportMerge, } from "./oc-chatgpt-import-adapter.js";
4
5
  import { detectOcChatgptMultiAuthTarget, } from "./oc-chatgpt-target-detection.js";
5
6
  import { exportNamedBackup, normalizeAccountStorage, } from "./storage.js";
@@ -36,13 +37,28 @@ export async function planOcChatgptSync(options) {
36
37
  throw new Error("Unexpected oc target detection result");
37
38
  }
38
39
  const descriptor = detection.descriptor;
39
- const destination = options.destination === undefined
40
- ? await (options.dependencies?.loadTargetStorage ?? loadTargetStorageDefault)(descriptor)
41
- : options.destination;
42
- const preview = previewMerge({
43
- source: options.source,
44
- destination,
45
- });
40
+ let destination;
41
+ try {
42
+ destination =
43
+ options.destination === undefined
44
+ ? await (options.dependencies?.loadTargetStorage ?? loadTargetStorageDefault)(descriptor)
45
+ : options.destination;
46
+ }
47
+ catch (error) {
48
+ // chatgpt-import-06: a corrupt/unreadable destination must not throw out of
49
+ // planning; return a structured error like applyOcChatgptSync does.
50
+ return { kind: "plan-error", target: descriptor, error, cause: "load" };
51
+ }
52
+ let preview;
53
+ try {
54
+ preview = previewMerge({
55
+ source: options.source,
56
+ destination,
57
+ });
58
+ }
59
+ catch (error) {
60
+ return { kind: "plan-error", target: descriptor, error, cause: "preview" };
61
+ }
46
62
  return {
47
63
  kind: "ready",
48
64
  target: descriptor,
@@ -53,8 +69,47 @@ export async function planOcChatgptSync(options) {
53
69
  }
54
70
  async function persistMergedDefault(target, merged) {
55
71
  const path = target.accountPath;
56
- await fs.mkdir(dirname(path), { recursive: true });
57
- await fs.writeFile(path, `${JSON.stringify(merged, null, 2)}\n`, "utf-8");
72
+ // The merged file embeds raw refresh tokens for every account and overwrites the
73
+ // live, watched account store. Write atomically (temp + rename) at mode 0o600 so a
74
+ // crash mid-write cannot truncate the destination and the secrets are never created
75
+ // at the process umask. Create the parent at 0o700 too (matching auth-01) so the
76
+ // directory is not world-listable — otherwise other users could enumerate the
77
+ // filenames, including the `.tmp` intermediary that briefly holds the same secrets.
78
+ const dir = dirname(path);
79
+ await fs.mkdir(dir, { recursive: true, mode: 0o700 });
80
+ // mkdir's `mode` is ignored on an already-existing dir and on win32; on POSIX
81
+ // re-assert 0o700 so a pre-existing loose-perm dir is tightened (matches the
82
+ // refresh-lease hardening). win32 relies on the user-profile ACL like the main
83
+ // account store does — POSIX bits are not enforced there.
84
+ if (process.platform !== "win32") {
85
+ await fs.chmod(dir, 0o700).catch(() => undefined);
86
+ }
87
+ const tempPath = `${path}.${Date.now()}.${Math.random().toString(36).slice(2, 8)}.tmp`;
88
+ const content = `${JSON.stringify(merged, null, 2)}\n`;
89
+ try {
90
+ await fs.writeFile(tempPath, content, { encoding: "utf-8", mode: 0o600 });
91
+ if (process.platform !== "win32") {
92
+ await fs.chmod(tempPath, 0o600).catch(() => undefined);
93
+ }
94
+ // Route the atomic rename through withFileOperationRetry: on Windows the
95
+ // destination is a live, watched store, so a concurrent reader/indexer can
96
+ // hold it briefly and surface EBUSY/EPERM/ENOTEMPTY/EACCES. Retrying with
97
+ // backoff turns a transient lock into a successful merge instead of a
98
+ // spurious error (mirrors the account-save path).
99
+ await withFileOperationRetry(() => fs.rename(tempPath, path));
100
+ }
101
+ finally {
102
+ try {
103
+ // Route cleanup through withFileOperationRetry too: if the rename failed
104
+ // and a transient Windows EBUSY/EPERM lingers, a single-shot unlink would
105
+ // leave a secret-bearing .tmp next to the live account store. force:true
106
+ // keeps ENOENT (rename already consumed it) a no-op.
107
+ await withFileOperationRetry(() => fs.rm(tempPath, { force: true }));
108
+ }
109
+ catch {
110
+ // Best-effort temp cleanup; rename success removes it, ENOENT is expected.
111
+ }
112
+ }
58
113
  return path;
59
114
  }
60
115
  export async function applyOcChatgptSync(options) {
@@ -70,6 +125,10 @@ export async function applyOcChatgptSync(options) {
70
125
  loadTargetStorage: dependencies.loadTargetStorage,
71
126
  },
72
127
  });
128
+ if (plan.kind === "plan-error") {
129
+ // Map the structured planning error onto the apply error variant.
130
+ return { kind: "error", target: plan.target, error: plan.error };
131
+ }
73
132
  if (plan.kind !== "ready") {
74
133
  return plan;
75
134
  }
@@ -1 +1 @@
1
- {"version":3,"file":"oc-chatgpt-orchestrator.js","sourceRoot":"","sources":["../../lib/oc-chatgpt-orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oc-chatgpt-orchestrator.js","sourceRoot":"","sources":["../../lib/oc-chatgpt-orchestrator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-policy.d.ts","sourceRoot":"","sources":["../../../lib/policy/runtime-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAGN,KAAK,kBAAkB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAIN,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAEN,KAAK,4BAA4B,EACjC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACN,oBAAoB,EAGpB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,oBAAoB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,qBAAqB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnC,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,iBAAiB,EAAE,qBAAqB,EAAE,CAAC;CAC3C;AAED,MAAM,WAAW,kBAAkB;IAClC,eAAe,EAAE,kBAAkB,CAAC;IACpC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,OAAO,EAAE,4BAA4B,CAAC;CACtC;AAED,MAAM,WAAW,oBAAoB;IACpC,MAAM,EAAE,CAAC,KAAK,EAAE,uBAAuB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,WAAW,EAAE,MAAM,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACvC,OAAO,EAAE,kBAAkB,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,wBAAsB,sBAAsB,CAC3C,QAAQ,SAAgB,GACtB,OAAO,CAAC,kBAAkB,CAAC,CAO7B;AAkDD,wBAAsB,qBAAqB,CAAC,KAAK,EAAE;IAClD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,gBAAgB,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAChD,GAAG,CAAC,EAAE,MAAM,CAAC;CACb,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAoFjC;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE;IACjD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,oBAAoB,CAAC;CACrC,GAAG,oBAAoB,CAgCvB"}
1
+ {"version":3,"file":"runtime-policy.d.ts","sourceRoot":"","sources":["../../../lib/policy/runtime-policy.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { resolveEntitlementAccountKey } from "../entitlement-cache.js";
1
2
  import { getAccountPolicyKey, loadAccountPolicyStore, } from "../account-policy.js";
2
3
  import { evaluateBudgetGuard, getBudgetWindowStart, loadBudgetGuardStore, } from "../budget-guard.js";
3
4
  import { resolveProjectRoutingProfile, } from "../routing-profiles.js";
@@ -47,6 +48,10 @@ async function evaluateBudgets(input) {
47
48
  const summary = await summarizeUsageLedger({
48
49
  since: getBudgetWindowStart(limit.window, input.now),
49
50
  until: input.now,
51
+ // Budget windows (e.g. monthly) can span a ledger rotation. Without archives,
52
+ // rotated-out rows are dropped from the sum, under-counting spend and letting
53
+ // usage exceed the limit within the active window (quota-forecast-03).
54
+ includeArchives: true,
50
55
  });
51
56
  evaluations.push(evaluateBudgetGuard(limit, summary));
52
57
  }
@@ -100,7 +105,16 @@ export async function evaluateRuntimePolicy(input) {
100
105
  if (profile?.accountWeightByKey[accountKey] !== undefined) {
101
106
  boost += (profile.accountWeightByKey[accountKey] ?? 0) * 2;
102
107
  }
103
- const capabilitySnapshot = input.capabilityPolicy?.getSnapshot(accountKey, input.model ?? "unknown");
108
+ // quota-forecast-01: the capability store is WRITTEN under the entitlement
109
+ // key (resolveEntitlementAccountKey) at the recordUnsupported sites, so the
110
+ // read must use the same key. Previously this used getAccountPolicyKey, a
111
+ // different format, so getSnapshot never matched and suppression was dead.
112
+ const capabilityKey = resolveEntitlementAccountKey({
113
+ accountId: account.accountId ?? undefined,
114
+ email: account.email ?? undefined,
115
+ index: account.index,
116
+ });
117
+ const capabilitySnapshot = input.capabilityPolicy?.getSnapshot(capabilityKey, input.model ?? "unknown");
104
118
  if (capabilitySnapshot && capabilitySnapshot.unsupported > 0) {
105
119
  blockedAccountIndexes.add(account.index);
106
120
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-policy.js","sourceRoot":"","sources":["../../../lib/policy/runtime-policy.ts"],"names":[],"mappings":"AACA,OAAO,EACN,mBAAmB,EACnB,sBAAsB,GAEtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,GAGpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACN,4BAA4B,GAE5B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACN,oBAAoB,EACpB,oBAAoB,GAKpB,MAAM,mBAAmB,CAAC;AA2C3B,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC3C,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;IAExB,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC7D,sBAAsB,EAAE;QACxB,oBAAoB,EAAE;QACtB,4BAA4B,CAAC,QAAQ,CAAC;KACtC,CAAC,CAAC;IACH,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAC9C,CAAC;AAED,SAAS,cAAc,CAAC,KAAgC;IACvD,MAAM,OAAO,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,OAAO,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AACvD,CAAC;AAED,SAAS,YAAY,CAAC,QAAkB,EAAE,KAAoB;IAC7D,MAAM,eAAe,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,CAAC,eAAe;QAAE,OAAO,KAAK,CAAC;IACnC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QAChC,MAAM,iBAAiB,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,iBAAiB;YAAE,OAAO,KAAK,CAAC;QACrC,OAAO,CACN,eAAe,KAAK,iBAAiB;YACrC,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAC3C,CAAC;IACH,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,IAAc,EAAE,KAAe;IAClD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IAChC,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,KAG9B;IACA,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnB,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QACpC,IAAI,CAAC,GAAG,CAAC,WAAW,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC;QAC5C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;IACD,MAAM,WAAW,GAA4B,EAAE,CAAC;IAChD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC;YAC1C,KAAK,EAAE,oBAAoB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC;YACpD,KAAK,EAAE,KAAK,CAAC,GAAG;SAChB,CAAC,CAAC;QACH,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,WAAW,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,KAM3C;IACA,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IACpC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAU,CAAC;IAChD,MAAM,mBAAmB,GAA2B,EAAE,CAAC;IACvD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;IAE5C,IAAI,OAAO,EAAE,aAAa,CAAC,MAAM,IAAI,YAAY,CAAC,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACvF,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IACxD,CAAC;IACD,IACC,OAAO,EAAE,cAAc,CAAC,MAAM;QAC9B,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,EACjD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,iBAAiB,GAAG,MAAM,eAAe,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7E,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;QAC5C,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CACX,UAAU,UAAU,CAAC,GAAG,qBAAqB,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC5E,CAAC;QACH,CAAC;IACF,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,mBAAmB,CACrC;YACC,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,SAAS;YACzC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,SAAS;SACjC,EACD,OAAO,CAAC,KAAK,CACb,CAAC;QACF,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACvE,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,aAAa,EAAE,MAAM,EAAE,CAAC;YAC3B,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,aAAa,EAAE,OAAO,EAAE,CAAC;YAC5B,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YACnB,KAAK,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;QACD,IACC,aAAa;YACb,OAAO,EAAE,aAAa,CAAC,MAAM;YAC7B,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,EACpD,CAAC;YACF,KAAK,IAAI,CAAC,CAAC;QACZ,CAAC;QACD,IACC,aAAa;YACb,OAAO,EAAE,SAAS,CAAC,MAAM;YACzB,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,EAChD,CAAC;YACF,KAAK,IAAI,CAAC,CAAC;QACZ,CAAC;QACD,IAAI,OAAO,EAAE,kBAAkB,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE,CAAC;YAC3D,KAAK,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC5D,CAAC;QACD,MAAM,kBAAkB,GAAG,KAAK,CAAC,gBAAgB,EAAE,WAAW,CAC7D,UAAU,EACV,KAAK,CAAC,KAAK,IAAI,SAAS,CACxB,CAAC;QACF,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;YAC9D,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;QACD,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;IAC5C,CAAC;IAED,MAAM,eAAe,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACpF,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;IACzD,OAAO;QACN,OAAO;QACP,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;QACvC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB;QACjF,OAAO;QACP,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU;QAC1C,qBAAqB;QACrB,mBAAmB;QACnB,iBAAiB;KACjB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAQ1C;IACA,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAChD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,oBAAoB,CAAC;IACpD,OAAO;QACN,WAAW,EAAE,GAAG,EAAE,CAAC,QAAQ;QAC3B,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;YAC7B,IAAI,QAAQ;gBAAE,OAAO;YACrB,QAAQ,GAAG,IAAI,CAAC;YAChB,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;YACpC,MAAM,GAAG,GAA2B;gBACnC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,OAAO,EAAE,WAAW,CAAC,OAAO;gBAC5B,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,UAAU,EAAE,WAAW,CAAC,UAAU;gBAClC,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,UAAU,EAAE,WAAW,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAC5D,SAAS,EAAE,OAAO,EAAE,SAAS;gBAC7B,KAAK,EAAE,OAAO,EAAE,KAAK;gBACrB,YAAY,EAAE,OAAO,EAAE,KAAK;gBAC5B,WAAW,EAAE,WAAW,CAAC,WAAW;gBACpC,YAAY,EAAE,WAAW,CAAC,YAAY;gBACtC,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;gBAChD,eAAe,EAAE,WAAW,CAAC,eAAe;gBAC5C,WAAW,EAAE,WAAW,CAAC,WAAW;aACpC,CAAC;YACF,MAAM,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC1C,CAAC;KACD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"runtime-policy.js","sourceRoot":"","sources":["../../../lib/policy/runtime-policy.ts"],"names":[],"mappings":"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"}