codex-multi-auth 2.3.0-beta.1 → 2.3.0-beta.3

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 (535) hide show
  1. package/.codex-plugin/plugin.json +2 -1
  2. package/README.md +4 -4
  3. package/config/schema/config.schema.json +268 -21
  4. package/dist/index.js +0 -1
  5. package/dist/lib/account-policy.d.ts.map +1 -1
  6. package/dist/lib/account-policy.js +2 -2
  7. package/dist/lib/accounts/rate-limits.js +0 -1
  8. package/dist/lib/accounts.d.ts +3 -8
  9. package/dist/lib/accounts.d.ts.map +1 -1
  10. package/dist/lib/accounts.js +2 -3
  11. package/dist/lib/audit.d.ts +0 -9
  12. package/dist/lib/audit.d.ts.map +1 -1
  13. package/dist/lib/audit.js +0 -1
  14. package/dist/lib/auth/auth.js +0 -1
  15. package/dist/lib/auth/browser.js +0 -1
  16. package/dist/lib/auth/device-auth.d.ts +1 -6
  17. package/dist/lib/auth/device-auth.d.ts.map +1 -1
  18. package/dist/lib/auth/device-auth.js +5 -6
  19. package/dist/lib/auth/index.js +0 -1
  20. package/dist/lib/auth/org-override.js +0 -1
  21. package/dist/lib/auth/server.js +0 -1
  22. package/dist/lib/auth/token-utils.js +0 -1
  23. package/dist/lib/auth-rate-limit.js +0 -1
  24. package/dist/lib/budget-guard.d.ts.map +1 -1
  25. package/dist/lib/budget-guard.js +2 -2
  26. package/dist/lib/capability-policy.js +0 -1
  27. package/dist/lib/circuit-breaker.js +0 -1
  28. package/dist/lib/cli.js +1 -2
  29. package/dist/lib/codex-cli/index.js +0 -1
  30. package/dist/lib/codex-cli/observability.js +0 -1
  31. package/dist/lib/codex-cli/state.js +0 -1
  32. package/dist/lib/codex-cli/sync.d.ts +2 -2
  33. package/dist/lib/codex-cli/sync.d.ts.map +1 -1
  34. package/dist/lib/codex-cli/sync.js +1 -2
  35. package/dist/lib/codex-cli/writer.d.ts.map +1 -1
  36. package/dist/lib/codex-cli/writer.js +2 -2
  37. package/dist/lib/codex-manager/account-credentials.d.ts +13 -0
  38. package/dist/lib/codex-manager/account-credentials.d.ts.map +1 -0
  39. package/dist/lib/codex-manager/account-credentials.js +55 -0
  40. package/dist/lib/codex-manager/account-manager-commands.js +0 -1
  41. package/dist/lib/codex-manager/account-pool-write.d.ts +1 -1
  42. package/dist/lib/codex-manager/account-pool-write.d.ts.map +1 -1
  43. package/dist/lib/codex-manager/account-pool-write.js +0 -1
  44. package/dist/lib/codex-manager/backend-category-entry.js +0 -1
  45. package/dist/lib/codex-manager/backend-category-helpers.js +0 -1
  46. package/dist/lib/codex-manager/backend-category-prompt.js +0 -1
  47. package/dist/lib/codex-manager/backend-settings-controller.js +0 -1
  48. package/dist/lib/codex-manager/backend-settings-entry.js +0 -1
  49. package/dist/lib/codex-manager/backend-settings-helpers.d.ts +0 -1
  50. package/dist/lib/codex-manager/backend-settings-helpers.d.ts.map +1 -1
  51. package/dist/lib/codex-manager/backend-settings-helpers.js +1 -2
  52. package/dist/lib/codex-manager/backend-settings-prompt.js +0 -1
  53. package/dist/lib/codex-manager/backend-settings-schema.js +0 -1
  54. package/dist/lib/codex-manager/behavior-settings-panel.d.ts +1 -20
  55. package/dist/lib/codex-manager/behavior-settings-panel.d.ts.map +1 -1
  56. package/dist/lib/codex-manager/behavior-settings-panel.js +0 -1
  57. package/dist/lib/codex-manager/commands/account.js +0 -1
  58. package/dist/lib/codex-manager/commands/best.d.ts +8 -0
  59. package/dist/lib/codex-manager/commands/best.d.ts.map +1 -1
  60. package/dist/lib/codex-manager/commands/best.js +64 -1
  61. package/dist/lib/codex-manager/commands/bridge.js +0 -1
  62. package/dist/lib/codex-manager/commands/budget.js +0 -1
  63. package/dist/lib/codex-manager/commands/check.js +0 -1
  64. package/dist/lib/codex-manager/commands/config-explain.js +0 -1
  65. package/dist/lib/codex-manager/commands/debug-bundle.js +0 -1
  66. package/dist/lib/codex-manager/commands/forecast.js +0 -1
  67. package/dist/lib/codex-manager/commands/init-config.js +0 -1
  68. package/dist/lib/codex-manager/commands/integrations.js +0 -1
  69. package/dist/lib/codex-manager/commands/models.js +0 -1
  70. package/dist/lib/codex-manager/commands/monitor.js +0 -1
  71. package/dist/lib/codex-manager/commands/report.d.ts.map +1 -1
  72. package/dist/lib/codex-manager/commands/report.js +2 -2
  73. package/dist/lib/codex-manager/commands/rotation.d.ts.map +1 -1
  74. package/dist/lib/codex-manager/commands/rotation.js +1 -4
  75. package/dist/lib/codex-manager/commands/status.js +0 -1
  76. package/dist/lib/codex-manager/commands/switch.js +0 -1
  77. package/dist/lib/codex-manager/commands/uninstall.d.ts +2 -2
  78. package/dist/lib/codex-manager/commands/uninstall.d.ts.map +1 -1
  79. package/dist/lib/codex-manager/commands/uninstall.js +3 -34
  80. package/dist/lib/codex-manager/commands/unpin.js +0 -1
  81. package/dist/lib/codex-manager/commands/usage.d.ts.map +1 -1
  82. package/dist/lib/codex-manager/commands/usage.js +2 -2
  83. package/dist/lib/codex-manager/commands/verify.d.ts +2 -2
  84. package/dist/lib/codex-manager/commands/verify.d.ts.map +1 -1
  85. package/dist/lib/codex-manager/commands/verify.js +0 -1
  86. package/dist/lib/codex-manager/commands/why-selected.d.ts +1 -22
  87. package/dist/lib/codex-manager/commands/why-selected.d.ts.map +1 -1
  88. package/dist/lib/codex-manager/commands/why-selected.js +0 -1
  89. package/dist/lib/codex-manager/commands/workspace.js +0 -1
  90. package/dist/lib/codex-manager/dashboard-display-panel.d.ts +1 -15
  91. package/dist/lib/codex-manager/dashboard-display-panel.d.ts.map +1 -1
  92. package/dist/lib/codex-manager/dashboard-display-panel.js +0 -1
  93. package/dist/lib/codex-manager/dashboard-formatters.js +0 -1
  94. package/dist/lib/codex-manager/dashboard-settings-controller.js +0 -1
  95. package/dist/lib/codex-manager/dashboard-settings-data.js +0 -1
  96. package/dist/lib/codex-manager/dashboard-settings-entry.js +0 -1
  97. package/dist/lib/codex-manager/experimental-settings-entry.js +0 -1
  98. package/dist/lib/codex-manager/experimental-settings-prompt.d.ts +2 -1
  99. package/dist/lib/codex-manager/experimental-settings-prompt.d.ts.map +1 -1
  100. package/dist/lib/codex-manager/experimental-settings-prompt.js +0 -1
  101. package/dist/lib/codex-manager/experimental-settings-schema.js +1 -2
  102. package/dist/lib/codex-manager/experimental-sync-target-entry.js +0 -1
  103. package/dist/lib/codex-manager/experimental-sync-target.js +0 -1
  104. package/dist/lib/codex-manager/forecast-report-commands.js +0 -1
  105. package/dist/lib/codex-manager/forecast-report-shared.d.ts +2 -2
  106. package/dist/lib/codex-manager/forecast-report-shared.d.ts.map +1 -1
  107. package/dist/lib/codex-manager/forecast-report-shared.js +5 -21
  108. package/dist/lib/codex-manager/formatters/account-formatters.d.ts +11 -0
  109. package/dist/lib/codex-manager/formatters/account-formatters.d.ts.map +1 -0
  110. package/dist/lib/codex-manager/formatters/account-formatters.js +79 -0
  111. package/dist/lib/codex-manager/formatters/index.d.ts +5 -0
  112. package/dist/lib/codex-manager/formatters/index.d.ts.map +1 -0
  113. package/dist/lib/codex-manager/formatters/index.js +4 -0
  114. package/dist/lib/codex-manager/formatters/model-formatters.d.ts +12 -0
  115. package/dist/lib/codex-manager/formatters/model-formatters.d.ts.map +1 -0
  116. package/dist/lib/codex-manager/formatters/model-formatters.js +23 -0
  117. package/dist/lib/codex-manager/formatters/quota-formatters.d.ts +9 -0
  118. package/dist/lib/codex-manager/formatters/quota-formatters.d.ts.map +1 -0
  119. package/dist/lib/codex-manager/formatters/quota-formatters.js +104 -0
  120. package/dist/lib/codex-manager/formatters/text-style.d.ts +14 -0
  121. package/dist/lib/codex-manager/formatters/text-style.d.ts.map +1 -0
  122. package/dist/lib/codex-manager/formatters/text-style.js +111 -0
  123. package/dist/lib/codex-manager/health-check.d.ts +14 -0
  124. package/dist/lib/codex-manager/health-check.d.ts.map +1 -0
  125. package/dist/lib/codex-manager/health-check.js +278 -0
  126. package/dist/lib/codex-manager/help.d.ts +2 -1
  127. package/dist/lib/codex-manager/help.d.ts.map +1 -1
  128. package/dist/lib/codex-manager/help.js +0 -1
  129. package/dist/lib/codex-manager/login-action-panel.d.ts +4 -0
  130. package/dist/lib/codex-manager/login-action-panel.d.ts.map +1 -0
  131. package/dist/lib/codex-manager/login-action-panel.js +238 -0
  132. package/dist/lib/codex-manager/login-flow.d.ts +17 -0
  133. package/dist/lib/codex-manager/login-flow.d.ts.map +1 -0
  134. package/dist/lib/codex-manager/login-flow.js +387 -0
  135. package/dist/lib/codex-manager/login-menu-actions.d.ts +20 -0
  136. package/dist/lib/codex-manager/login-menu-actions.d.ts.map +1 -0
  137. package/dist/lib/codex-manager/login-menu-actions.js +303 -0
  138. package/dist/lib/codex-manager/login-menu-data.d.ts +19 -0
  139. package/dist/lib/codex-manager/login-menu-data.d.ts.map +1 -0
  140. package/dist/lib/codex-manager/login-menu-data.js +378 -0
  141. package/dist/lib/codex-manager/login-oauth.d.ts +55 -0
  142. package/dist/lib/codex-manager/login-oauth.d.ts.map +1 -0
  143. package/dist/lib/codex-manager/login-oauth.js +345 -0
  144. package/dist/lib/codex-manager/manual-callback.js +0 -1
  145. package/dist/lib/codex-manager/persist-selected-account.d.ts +24 -0
  146. package/dist/lib/codex-manager/persist-selected-account.d.ts.map +1 -0
  147. package/dist/lib/codex-manager/persist-selected-account.js +107 -0
  148. package/dist/lib/codex-manager/quota-cache-helpers.d.ts +18 -0
  149. package/dist/lib/codex-manager/quota-cache-helpers.d.ts.map +1 -0
  150. package/dist/lib/codex-manager/quota-cache-helpers.js +112 -0
  151. package/dist/lib/codex-manager/rate-limit-markers.js +0 -1
  152. package/dist/lib/codex-manager/repair-commands.d.ts +0 -15
  153. package/dist/lib/codex-manager/repair-commands.d.ts.map +1 -1
  154. package/dist/lib/codex-manager/repair-commands.js +5 -6
  155. package/dist/lib/codex-manager/settings-hub/backend.d.ts +0 -5
  156. package/dist/lib/codex-manager/settings-hub/backend.d.ts.map +1 -1
  157. package/dist/lib/codex-manager/settings-hub/backend.js +2 -3
  158. package/dist/lib/codex-manager/settings-hub/dashboard.d.ts +1 -14
  159. package/dist/lib/codex-manager/settings-hub/dashboard.d.ts.map +1 -1
  160. package/dist/lib/codex-manager/settings-hub/dashboard.js +9 -10
  161. package/dist/lib/codex-manager/settings-hub/experimental.js +1 -2
  162. package/dist/lib/codex-manager/settings-hub/index.js +1 -2
  163. package/dist/lib/codex-manager/settings-hub/shared.js +0 -1
  164. package/dist/lib/codex-manager/settings-hub-entry.js +0 -1
  165. package/dist/lib/codex-manager/settings-hub-menu.js +0 -1
  166. package/dist/lib/codex-manager/settings-hub-prompt.js +0 -1
  167. package/dist/lib/codex-manager/settings-hub.js +0 -1
  168. package/dist/lib/codex-manager/settings-panels.js +0 -1
  169. package/dist/lib/codex-manager/settings-persist-utils.js +0 -1
  170. package/dist/lib/codex-manager/settings-preview.js +0 -1
  171. package/dist/lib/codex-manager/settings-write-queue.d.ts +0 -10
  172. package/dist/lib/codex-manager/settings-write-queue.d.ts.map +1 -1
  173. package/dist/lib/codex-manager/settings-write-queue.js +10 -11
  174. package/dist/lib/codex-manager/statusline-order.js +0 -1
  175. package/dist/lib/codex-manager/statusline-settings-panel.d.ts +3 -18
  176. package/dist/lib/codex-manager/statusline-settings-panel.d.ts.map +1 -1
  177. package/dist/lib/codex-manager/statusline-settings-panel.js +0 -1
  178. package/dist/lib/codex-manager/theme-settings-panel.d.ts +1 -14
  179. package/dist/lib/codex-manager/theme-settings-panel.d.ts.map +1 -1
  180. package/dist/lib/codex-manager/theme-settings-panel.js +0 -1
  181. package/dist/lib/codex-manager/unified-settings-controller.js +0 -1
  182. package/dist/lib/codex-manager/unified-settings-entry.js +0 -1
  183. package/dist/lib/codex-manager.d.ts +2 -4
  184. package/dist/lib/codex-manager.d.ts.map +1 -1
  185. package/dist/lib/codex-manager.js +219 -2570
  186. package/dist/lib/config-schema.d.ts +32 -0
  187. package/dist/lib/config-schema.d.ts.map +1 -0
  188. package/dist/lib/config-schema.js +96 -0
  189. package/dist/lib/config.d.ts +0 -13
  190. package/dist/lib/config.d.ts.map +1 -1
  191. package/dist/lib/config.js +82 -123
  192. package/dist/lib/constants.js +0 -1
  193. package/dist/lib/context-overflow.js +0 -1
  194. package/dist/lib/dashboard-settings.d.ts +3 -3
  195. package/dist/lib/dashboard-settings.d.ts.map +1 -1
  196. package/dist/lib/dashboard-settings.js +0 -2
  197. package/dist/lib/entitlement-cache.js +0 -1
  198. package/dist/lib/env-parsing.js +0 -1
  199. package/dist/lib/errors.d.ts +0 -1
  200. package/dist/lib/errors.d.ts.map +1 -1
  201. package/dist/lib/errors.js +0 -1
  202. package/dist/lib/forecast.d.ts +4 -3
  203. package/dist/lib/forecast.d.ts.map +1 -1
  204. package/dist/lib/forecast.js +0 -1
  205. package/dist/lib/fs-retry.d.ts +46 -3
  206. package/dist/lib/fs-retry.d.ts.map +1 -1
  207. package/dist/lib/fs-retry.js +77 -9
  208. package/dist/lib/health.js +0 -1
  209. package/dist/lib/index.d.ts +1 -0
  210. package/dist/lib/index.d.ts.map +1 -1
  211. package/dist/lib/index.js +1 -1
  212. package/dist/lib/integration-generators.js +0 -1
  213. package/dist/lib/live-account-sync.js +0 -1
  214. package/dist/lib/local-bridge.js +0 -1
  215. package/dist/lib/local-client-tokens.d.ts.map +1 -1
  216. package/dist/lib/local-client-tokens.js +2 -2
  217. package/dist/lib/logger.js +0 -1
  218. package/dist/lib/model-capability-matrix.js +0 -1
  219. package/dist/lib/named-backup-export.js +0 -1
  220. package/dist/lib/oc-chatgpt-import-adapter.d.ts +1 -1
  221. package/dist/lib/oc-chatgpt-import-adapter.d.ts.map +1 -1
  222. package/dist/lib/oc-chatgpt-import-adapter.js +0 -1
  223. package/dist/lib/oc-chatgpt-orchestrator.d.ts.map +1 -1
  224. package/dist/lib/oc-chatgpt-orchestrator.js +2 -2
  225. package/dist/lib/oc-chatgpt-target-detection.d.ts +1 -1
  226. package/dist/lib/oc-chatgpt-target-detection.d.ts.map +1 -1
  227. package/dist/lib/oc-chatgpt-target-detection.js +0 -1
  228. package/dist/lib/parallel-probe.js +0 -1
  229. package/dist/lib/policy/runtime-policy.js +0 -1
  230. package/dist/lib/preemptive-quota-scheduler.js +0 -1
  231. package/dist/lib/proactive-refresh.js +0 -1
  232. package/dist/lib/prompts/codex-host-bridge.d.ts +0 -8
  233. package/dist/lib/prompts/codex-host-bridge.d.ts.map +1 -1
  234. package/dist/lib/prompts/codex-host-bridge.js +0 -21
  235. package/dist/lib/prompts/codex.d.ts +3 -11
  236. package/dist/lib/prompts/codex.d.ts.map +1 -1
  237. package/dist/lib/prompts/codex.js +6 -13
  238. package/dist/lib/prompts/fetch-utils.d.ts +0 -2
  239. package/dist/lib/prompts/fetch-utils.d.ts.map +1 -1
  240. package/dist/lib/prompts/fetch-utils.js +2 -3
  241. package/dist/lib/prompts/host-codex-prompt.d.ts.map +1 -1
  242. package/dist/lib/prompts/host-codex-prompt.js +2 -2
  243. package/dist/lib/quota-cache.d.ts.map +1 -1
  244. package/dist/lib/quota-cache.js +17 -44
  245. package/dist/lib/quota-probe.js +0 -1
  246. package/dist/lib/quota-readiness.js +0 -1
  247. package/dist/lib/recovery/constants.js +0 -1
  248. package/dist/lib/recovery/index.js +0 -1
  249. package/dist/lib/recovery/storage.d.ts.map +1 -1
  250. package/dist/lib/recovery/storage.js +35 -54
  251. package/dist/lib/recovery/storage.js.map +1 -1
  252. package/dist/lib/recovery/types.d.ts +4 -12
  253. package/dist/lib/recovery/types.d.ts.map +1 -1
  254. package/dist/lib/recovery/types.js +0 -1
  255. package/dist/lib/recovery.d.ts +2 -2
  256. package/dist/lib/recovery.d.ts.map +1 -1
  257. package/dist/lib/recovery.js +0 -1
  258. package/dist/lib/refresh-guardian.js +0 -1
  259. package/dist/lib/refresh-lease.d.ts.map +1 -1
  260. package/dist/lib/refresh-lease.js +1 -4
  261. package/dist/lib/refresh-queue.js +0 -1
  262. package/dist/lib/request/error-classification.d.ts +75 -0
  263. package/dist/lib/request/error-classification.d.ts.map +1 -0
  264. package/dist/lib/request/error-classification.js +295 -0
  265. package/dist/lib/request/failover-config.js +0 -1
  266. package/dist/lib/request/failure-policy.js +0 -1
  267. package/dist/lib/request/fetch-helpers.d.ts +10 -114
  268. package/dist/lib/request/fetch-helpers.d.ts.map +1 -1
  269. package/dist/lib/request/fetch-helpers.js +7 -589
  270. package/dist/lib/request/headers.d.ts +33 -0
  271. package/dist/lib/request/headers.d.ts.map +1 -0
  272. package/dist/lib/request/headers.js +64 -0
  273. package/dist/lib/request/helpers/input-utils.js +0 -1
  274. package/dist/lib/request/helpers/model-map.d.ts +10 -0
  275. package/dist/lib/request/helpers/model-map.d.ts.map +1 -1
  276. package/dist/lib/request/helpers/model-map.js +11 -1
  277. package/dist/lib/request/helpers/tool-utils.js +0 -1
  278. package/dist/lib/request/index.js +0 -1
  279. package/dist/lib/request/rate-limit-backoff.js +0 -1
  280. package/dist/lib/request/rate-limit-decision.d.ts +28 -0
  281. package/dist/lib/request/rate-limit-decision.d.ts.map +1 -0
  282. package/dist/lib/request/rate-limit-decision.js +191 -0
  283. package/dist/lib/request/request-attempt-budget.js +0 -1
  284. package/dist/lib/request/request-init.js +0 -1
  285. package/dist/lib/request/request-resilience.js +0 -1
  286. package/dist/lib/request/request-transformer.js +0 -1
  287. package/dist/lib/request/response-compaction.d.ts +2 -1
  288. package/dist/lib/request/response-compaction.d.ts.map +1 -1
  289. package/dist/lib/request/response-compaction.js +0 -1
  290. package/dist/lib/request/response-handler.js +0 -1
  291. package/dist/lib/request/response-metadata.js +0 -1
  292. package/dist/lib/request/stream-failover-runtime.d.ts +8 -0
  293. package/dist/lib/request/stream-failover-runtime.d.ts.map +1 -0
  294. package/dist/lib/request/stream-failover-runtime.js +171 -0
  295. package/dist/lib/request/stream-failover.js +0 -1
  296. package/dist/lib/request/token-refresh.d.ts +30 -0
  297. package/dist/lib/request/token-refresh.d.ts.map +1 -0
  298. package/dist/lib/request/token-refresh.js +116 -0
  299. package/dist/lib/request/url-rewriting.d.ts +24 -0
  300. package/dist/lib/request/url-rewriting.d.ts.map +1 -0
  301. package/dist/lib/request/url-rewriting.js +153 -0
  302. package/dist/lib/request/wait-utils.js +0 -1
  303. package/dist/lib/rotation.d.ts +2 -4
  304. package/dist/lib/rotation.d.ts.map +1 -1
  305. package/dist/lib/rotation.js +1 -3
  306. package/dist/lib/routing-mutex.js +0 -1
  307. package/dist/lib/routing-profiles.d.ts.map +1 -1
  308. package/dist/lib/routing-profiles.js +2 -2
  309. package/dist/lib/runtime/account-check-helpers.js +0 -1
  310. package/dist/lib/runtime/account-check-types.js +0 -1
  311. package/dist/lib/runtime/account-check.js +0 -1
  312. package/dist/lib/runtime/account-health-check.js +0 -1
  313. package/dist/lib/runtime/account-manager-cache-entry.js +0 -1
  314. package/dist/lib/runtime/account-manager-cache.js +0 -1
  315. package/dist/lib/runtime/account-pool.js +0 -1
  316. package/dist/lib/runtime/account-scope.js +0 -1
  317. package/dist/lib/runtime/account-select-event.js +0 -1
  318. package/dist/lib/runtime/account-selection.js +0 -1
  319. package/dist/lib/runtime/account-state.js +0 -1
  320. package/dist/lib/runtime/account-status.js +0 -1
  321. package/dist/lib/runtime/account-storage-scope-entry.js +0 -1
  322. package/dist/lib/runtime/app-bind.js +0 -1
  323. package/dist/lib/runtime/auth-facade.js +0 -1
  324. package/dist/lib/runtime/browser-oauth-flow.js +0 -1
  325. package/dist/lib/runtime/capability-boost.js +0 -1
  326. package/dist/lib/runtime/config-toml.d.ts +0 -6
  327. package/dist/lib/runtime/config-toml.d.ts.map +1 -1
  328. package/dist/lib/runtime/config-toml.js +6 -7
  329. package/dist/lib/runtime/event-handler.d.ts +0 -31
  330. package/dist/lib/runtime/event-handler.d.ts.map +1 -1
  331. package/dist/lib/runtime/event-handler.js +0 -23
  332. package/dist/lib/runtime/first-run.d.ts +78 -0
  333. package/dist/lib/runtime/first-run.d.ts.map +1 -0
  334. package/dist/lib/runtime/first-run.js +327 -0
  335. package/dist/lib/runtime/flagged-verify-types.js +0 -1
  336. package/dist/lib/runtime/hydrate-emails.js +0 -1
  337. package/dist/lib/runtime/live-sync-entry.js +0 -1
  338. package/dist/lib/runtime/live-sync.js +0 -1
  339. package/dist/lib/runtime/loader-setup.js +0 -1
  340. package/dist/lib/runtime/login-menu-accounts.js +0 -1
  341. package/dist/lib/runtime/manual-oauth-flow.js +0 -1
  342. package/dist/lib/runtime/oauth-browser-flow.js +0 -1
  343. package/dist/lib/runtime/preemptive-quota.js +0 -1
  344. package/dist/lib/runtime/quota-headers.d.ts +1 -6
  345. package/dist/lib/runtime/quota-headers.d.ts.map +1 -1
  346. package/dist/lib/runtime/quota-headers.js +5 -6
  347. package/dist/lib/runtime/quota-probe.js +0 -1
  348. package/dist/lib/runtime/quota-settings.js +0 -1
  349. package/dist/lib/runtime/refresh-guardian-entry.js +0 -1
  350. package/dist/lib/runtime/refresh-guardian.js +0 -1
  351. package/dist/lib/runtime/request-init.js +0 -1
  352. package/dist/lib/runtime/rotation-account-selection.d.ts +38 -0
  353. package/dist/lib/runtime/rotation-account-selection.d.ts.map +1 -0
  354. package/dist/lib/runtime/rotation-account-selection.js +172 -0
  355. package/dist/lib/runtime/rotation-proxy-state.d.ts +54 -0
  356. package/dist/lib/runtime/rotation-proxy-state.d.ts.map +1 -0
  357. package/dist/lib/runtime/rotation-proxy-state.js +56 -0
  358. package/dist/lib/runtime/rotation-server-types.d.ts +57 -0
  359. package/dist/lib/runtime/rotation-server-types.d.ts.map +1 -0
  360. package/dist/lib/runtime/rotation-server-types.js +1 -0
  361. package/dist/lib/runtime/rotation-storage-meta.d.ts +40 -0
  362. package/dist/lib/runtime/rotation-storage-meta.d.ts.map +1 -0
  363. package/dist/lib/runtime/rotation-storage-meta.js +143 -0
  364. package/dist/lib/runtime/rotation-token-refresh.d.ts +25 -0
  365. package/dist/lib/runtime/rotation-token-refresh.d.ts.map +1 -0
  366. package/dist/lib/runtime/rotation-token-refresh.js +99 -0
  367. package/dist/lib/runtime/runtime-current-account.d.ts +3 -3
  368. package/dist/lib/runtime/runtime-current-account.d.ts.map +1 -1
  369. package/dist/lib/runtime/runtime-current-account.js +2 -5
  370. package/dist/lib/runtime/runtime-observability.d.ts +2 -2
  371. package/dist/lib/runtime/runtime-observability.d.ts.map +1 -1
  372. package/dist/lib/runtime/runtime-observability.js +0 -5
  373. package/dist/lib/runtime/runtime-services.js +0 -1
  374. package/dist/lib/runtime/session-affinity-entry.js +0 -1
  375. package/dist/lib/runtime/session-affinity.js +0 -1
  376. package/dist/lib/runtime/session-recovery.js +0 -1
  377. package/dist/lib/runtime/status-marker.js +0 -1
  378. package/dist/lib/runtime/storage-scope.js +0 -1
  379. package/dist/lib/runtime/toast.js +0 -1
  380. package/dist/lib/runtime/ui-runtime-entry.js +0 -1
  381. package/dist/lib/runtime/ui-runtime.js +0 -1
  382. package/dist/lib/runtime/verify-flagged.js +0 -1
  383. package/dist/lib/runtime-constants.js +0 -1
  384. package/dist/lib/runtime-paths.js +0 -1
  385. package/dist/lib/runtime-rotation-proxy.d.ts +7 -124
  386. package/dist/lib/runtime-rotation-proxy.d.ts.map +1 -1
  387. package/dist/lib/runtime-rotation-proxy.js +618 -1356
  388. package/dist/lib/schemas.d.ts +5 -93
  389. package/dist/lib/schemas.d.ts.map +1 -1
  390. package/dist/lib/schemas.js +9 -10
  391. package/dist/lib/session-affinity.js +0 -1
  392. package/dist/lib/shutdown.js +0 -1
  393. package/dist/lib/storage/account-clear-entry.js +0 -1
  394. package/dist/lib/storage/account-clear.js +0 -1
  395. package/dist/lib/storage/account-match-utils.js +0 -1
  396. package/dist/lib/storage/account-persistence.d.ts +1 -1
  397. package/dist/lib/storage/account-persistence.d.ts.map +1 -1
  398. package/dist/lib/storage/account-persistence.js +0 -1
  399. package/dist/lib/storage/account-port.d.ts +1 -1
  400. package/dist/lib/storage/account-port.d.ts.map +1 -1
  401. package/dist/lib/storage/account-port.js +0 -1
  402. package/dist/lib/storage/account-save-entry.d.ts +1 -1
  403. package/dist/lib/storage/account-save-entry.d.ts.map +1 -1
  404. package/dist/lib/storage/account-save-entry.js +0 -1
  405. package/dist/lib/storage/account-save.d.ts +1 -1
  406. package/dist/lib/storage/account-save.d.ts.map +1 -1
  407. package/dist/lib/storage/account-save.js +0 -1
  408. package/dist/lib/storage/account-snapshot.js +0 -1
  409. package/dist/lib/storage/backup-metadata-builder.d.ts +1 -1
  410. package/dist/lib/storage/backup-metadata-builder.d.ts.map +1 -1
  411. package/dist/lib/storage/backup-metadata-builder.js +0 -1
  412. package/dist/lib/storage/backup-metadata.d.ts +13 -0
  413. package/dist/lib/storage/backup-metadata.d.ts.map +1 -1
  414. package/dist/lib/storage/backup-metadata.js +0 -1
  415. package/dist/lib/storage/backup-paths.js +0 -1
  416. package/dist/lib/storage/backup-restore.d.ts +1 -1
  417. package/dist/lib/storage/backup-restore.d.ts.map +1 -1
  418. package/dist/lib/storage/backup-restore.js +0 -1
  419. package/dist/lib/storage/cache-artifacts.js +0 -1
  420. package/dist/lib/storage/error-hints.js +0 -1
  421. package/dist/lib/storage/file-paths.d.ts +2 -2
  422. package/dist/lib/storage/file-paths.d.ts.map +1 -1
  423. package/dist/lib/storage/file-paths.js +2 -3
  424. package/dist/lib/storage/fixture-guards.d.ts +1 -1
  425. package/dist/lib/storage/fixture-guards.d.ts.map +1 -1
  426. package/dist/lib/storage/fixture-guards.js +0 -1
  427. package/dist/lib/storage/flagged-entry.js +0 -1
  428. package/dist/lib/storage/flagged-load-entry.d.ts +1 -1
  429. package/dist/lib/storage/flagged-load-entry.d.ts.map +1 -1
  430. package/dist/lib/storage/flagged-load-entry.js +0 -1
  431. package/dist/lib/storage/flagged-save-entry.d.ts +1 -1
  432. package/dist/lib/storage/flagged-save-entry.d.ts.map +1 -1
  433. package/dist/lib/storage/flagged-save-entry.js +0 -1
  434. package/dist/lib/storage/flagged-storage-file.d.ts +1 -1
  435. package/dist/lib/storage/flagged-storage-file.d.ts.map +1 -1
  436. package/dist/lib/storage/flagged-storage-file.js +0 -1
  437. package/dist/lib/storage/flagged-storage-io.d.ts +1 -1
  438. package/dist/lib/storage/flagged-storage-io.d.ts.map +1 -1
  439. package/dist/lib/storage/flagged-storage-io.js +2 -3
  440. package/dist/lib/storage/flagged-storage.d.ts +1 -1
  441. package/dist/lib/storage/flagged-storage.d.ts.map +1 -1
  442. package/dist/lib/storage/flagged-storage.js +15 -2
  443. package/dist/lib/storage/flagged-storage.js.map +1 -1
  444. package/dist/lib/storage/gitignore.js +0 -1
  445. package/dist/lib/storage/hash.js +0 -1
  446. package/dist/lib/storage/health.js +0 -1
  447. package/dist/lib/storage/identity.js +0 -1
  448. package/dist/lib/storage/import-export.d.ts +1 -1
  449. package/dist/lib/storage/import-export.d.ts.map +1 -1
  450. package/dist/lib/storage/import-export.js +2 -3
  451. package/dist/lib/storage/metadata-section.js +0 -1
  452. package/dist/lib/storage/migrations.d.ts +7 -49
  453. package/dist/lib/storage/migrations.d.ts.map +1 -1
  454. package/dist/lib/storage/migrations.js +5 -2
  455. package/dist/lib/storage/named-backup-entry.js +0 -1
  456. package/dist/lib/storage/named-backups-entry.d.ts +1 -1
  457. package/dist/lib/storage/named-backups-entry.d.ts.map +1 -1
  458. package/dist/lib/storage/named-backups-entry.js +0 -1
  459. package/dist/lib/storage/named-backups.js +0 -1
  460. package/dist/lib/storage/path-state.js +0 -1
  461. package/dist/lib/storage/paths.js +0 -1
  462. package/dist/lib/storage/project-migration.d.ts +1 -1
  463. package/dist/lib/storage/project-migration.d.ts.map +1 -1
  464. package/dist/lib/storage/project-migration.js +0 -1
  465. package/dist/lib/storage/public-types.d.ts +70 -0
  466. package/dist/lib/storage/public-types.d.ts.map +1 -0
  467. package/dist/lib/storage/public-types.js +6 -0
  468. package/dist/lib/storage/record-utils.js +0 -1
  469. package/dist/lib/storage/restore-assessment.d.ts +1 -1
  470. package/dist/lib/storage/restore-assessment.d.ts.map +1 -1
  471. package/dist/lib/storage/restore-assessment.js +0 -1
  472. package/dist/lib/storage/restore-backup-entry.d.ts +1 -1
  473. package/dist/lib/storage/restore-backup-entry.d.ts.map +1 -1
  474. package/dist/lib/storage/restore-backup-entry.js +0 -1
  475. package/dist/lib/storage/restore-metadata.d.ts +1 -1
  476. package/dist/lib/storage/restore-metadata.d.ts.map +1 -1
  477. package/dist/lib/storage/restore-metadata.js +0 -1
  478. package/dist/lib/storage/restore.d.ts +1 -1
  479. package/dist/lib/storage/restore.d.ts.map +1 -1
  480. package/dist/lib/storage/restore.js +0 -1
  481. package/dist/lib/storage/save-retry.d.ts +10 -0
  482. package/dist/lib/storage/save-retry.d.ts.map +1 -0
  483. package/dist/lib/storage/save-retry.js +26 -0
  484. package/dist/lib/storage/snapshot-inspectors.d.ts +1 -1
  485. package/dist/lib/storage/snapshot-inspectors.d.ts.map +1 -1
  486. package/dist/lib/storage/snapshot-inspectors.js +0 -1
  487. package/dist/lib/storage/storage-parser.d.ts +1 -1
  488. package/dist/lib/storage/storage-parser.d.ts.map +1 -1
  489. package/dist/lib/storage/storage-parser.js +0 -1
  490. package/dist/lib/storage/transactions.d.ts +1 -1
  491. package/dist/lib/storage/transactions.d.ts.map +1 -1
  492. package/dist/lib/storage/transactions.js +0 -1
  493. package/dist/lib/storage.d.ts +3 -24
  494. package/dist/lib/storage.d.ts.map +1 -1
  495. package/dist/lib/storage.js +47 -55
  496. package/dist/lib/table-formatter.js +0 -1
  497. package/dist/lib/temp-path.d.ts +26 -0
  498. package/dist/lib/temp-path.d.ts.map +1 -0
  499. package/dist/lib/temp-path.js +30 -0
  500. package/dist/lib/tools/hashline-tools.js +0 -1
  501. package/dist/lib/types.js +0 -1
  502. package/dist/lib/ui/ansi.js +0 -1
  503. package/dist/lib/ui/auth-menu-builder.d.ts +89 -0
  504. package/dist/lib/ui/auth-menu-builder.d.ts.map +1 -0
  505. package/dist/lib/ui/auth-menu-builder.js +350 -0
  506. package/dist/lib/ui/auth-menu.d.ts +2 -76
  507. package/dist/lib/ui/auth-menu.d.ts.map +1 -1
  508. package/dist/lib/ui/auth-menu.js +3 -349
  509. package/dist/lib/ui/confirm.js +0 -1
  510. package/dist/lib/ui/display-width.js +0 -1
  511. package/dist/lib/ui/format.js +0 -1
  512. package/dist/lib/ui/index.d.ts +10 -0
  513. package/dist/lib/ui/index.d.ts.map +1 -0
  514. package/dist/lib/ui/index.js +9 -0
  515. package/dist/lib/ui/runtime.js +0 -1
  516. package/dist/lib/ui/select.js +0 -1
  517. package/dist/lib/ui/theme.d.ts +3 -2
  518. package/dist/lib/ui/theme.d.ts.map +1 -1
  519. package/dist/lib/ui/theme.js +0 -1
  520. package/dist/lib/ui/ui-copy.d.ts +159 -0
  521. package/dist/lib/ui/ui-copy.d.ts.map +1 -0
  522. package/dist/lib/ui/ui-copy.js +163 -0
  523. package/dist/lib/unified-settings.d.ts.map +1 -1
  524. package/dist/lib/unified-settings.js +2 -2
  525. package/dist/lib/update-notice.d.ts.map +1 -1
  526. package/dist/lib/update-notice.js +2 -2
  527. package/dist/lib/usage/index.js +0 -1
  528. package/dist/lib/usage/ledger.js +0 -1
  529. package/dist/lib/usage/pricing.js +0 -1
  530. package/dist/lib/usage/redaction.js +0 -1
  531. package/dist/lib/usage/types.js +0 -1
  532. package/dist/lib/utils.js +0 -1
  533. package/package.json +8 -9
  534. package/scripts/postinstall.js +34 -265
  535. package/scripts/preuninstall.js +2 -2
@@ -2,39 +2,9 @@ import { readFile, writeFile, rm } from "node:fs/promises";
2
2
  import { homedir } from "node:os";
3
3
  import { join } from "node:path";
4
4
  import process from "node:process";
5
+ import { withFileOperationRetry } from "../../fs-retry.js";
5
6
  import { unbindCodexAppRuntimeRotation } from "../../runtime/app-bind.js";
6
7
  const PLUGIN_NAME = "codex-multi-auth";
7
- const FILE_RETRY_CODES = new Set([
8
- "EBUSY",
9
- "EPERM",
10
- "EAGAIN",
11
- "ENOTEMPTY",
12
- "EACCES",
13
- ]);
14
- const FILE_RETRY_MAX_ATTEMPTS = 6;
15
- const FILE_RETRY_BASE_DELAY_MS = 25;
16
- const FILE_RETRY_JITTER_MS = 20;
17
- function isRetryableFsError(error) {
18
- if (!(error instanceof Error))
19
- return false;
20
- const code = error.code;
21
- return typeof code === "string" && FILE_RETRY_CODES.has(code);
22
- }
23
- async function withFileOperationRetry(operation) {
24
- for (let attempt = 1;; attempt += 1) {
25
- try {
26
- return await operation();
27
- }
28
- catch (error) {
29
- if (!isRetryableFsError(error) || attempt >= FILE_RETRY_MAX_ATTEMPTS) {
30
- throw error;
31
- }
32
- const jitter = Math.floor(Math.random() * FILE_RETRY_JITTER_MS);
33
- const delayMs = FILE_RETRY_BASE_DELAY_MS * 2 ** (attempt - 1) + jitter;
34
- await new Promise((resolve) => setTimeout(resolve, delayMs));
35
- }
36
- }
37
- }
38
8
  export function resolveUninstallPaths(platform = process.platform, env = process.env, home = homedir()) {
39
9
  const isWindows = platform === "win32";
40
10
  const appData = (env["APPDATA"] ?? "").trim();
@@ -63,7 +33,7 @@ export function removePluginFromList(list) {
63
33
  return entry !== PLUGIN_NAME && !entry.startsWith(`${PLUGIN_NAME}@`);
64
34
  });
65
35
  }
66
- export function printUninstallUsage() {
36
+ function printUninstallUsage() {
67
37
  console.log([
68
38
  "Usage:",
69
39
  " codex-multi-auth uninstall [--dry-run] [--json] [--clear-accounts]",
@@ -74,7 +44,7 @@ export function printUninstallUsage() {
74
44
  " --clear-accounts Also remove stored account credentials (irreversible)",
75
45
  "",
76
46
  "Behavior:",
77
- " Reverses all postinstall changes: unbinds Codex app, removes OS launchers,",
47
+ " Reverses all first-run setup changes: unbinds Codex app, removes OS launchers,",
78
48
  " strips plugin from Codex.json, and clears the plugin cache.",
79
49
  "",
80
50
  "Recommended order (npm@7+ no longer fires preuninstall lifecycle scripts,",
@@ -285,4 +255,3 @@ export async function runUninstallCommand(args, deps = {}) {
285
255
  }
286
256
  return partialFailure ? 1 : 0;
287
257
  }
288
- //# sourceMappingURL=uninstall.js.map
@@ -32,4 +32,3 @@ export async function runUnpinCommand(deps) {
32
32
  logInfo(`Cleared manual pin (was account ${previousPin + 1}). Runtime routing will resume hybrid rotation.`);
33
33
  return 0;
34
34
  }
35
- //# sourceMappingURL=unpin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../../../lib/codex-manager/commands/usage.ts"],"names":[],"mappings":"AAGA,OAAO,EACN,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EAKpB,MAAM,sBAAsB,CAAC;AAmB9B,MAAM,WAAW,gBAAgB;IAChC,cAAc,CAAC,EAAE,OAAO,oBAAoB,CAAC;IAC7C,aAAa,CAAC,EAAE,OAAO,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,EAAE,OAAO,mBAAmB,CAAC;IACtC,YAAY,CAAC,EAAE,OAAO,iBAAiB,CAAC;IACxC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9D;AAoRD,wBAAsB,eAAe,CACpC,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,GAAE,gBAAqB,GACzB,OAAO,CAAC,MAAM,CAAC,CAiGjB"}
1
+ {"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../../../lib/codex-manager/commands/usage.ts"],"names":[],"mappings":"AAGA,OAAO,EACN,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EAKpB,MAAM,sBAAsB,CAAC;AAoB9B,MAAM,WAAW,gBAAgB;IAChC,cAAc,CAAC,EAAE,OAAO,oBAAoB,CAAC;IAC7C,aAAa,CAAC,EAAE,OAAO,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,EAAE,OAAO,mBAAmB,CAAC;IACtC,YAAY,CAAC,EAAE,OAAO,iBAAiB,CAAC;IACxC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9D;AAoRD,wBAAsB,eAAe,CACpC,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,GAAE,gBAAqB,GACzB,OAAO,CAAC,MAAM,CAAC,CAiGjB"}
@@ -2,6 +2,7 @@ import { promises as fs } from "node:fs";
2
2
  import { dirname, resolve } from "node:path";
3
3
  import { sleep } from "../../utils.js";
4
4
  import { readUsageLedgerRows, rotateUsageLedger, summarizeUsageRows, summarizeUsageLedger, } from "../../usage/index.js";
5
+ import { tempPathFor } from "../../temp-path.js";
5
6
  const VALID_GROUPS = new Set([
6
7
  "model",
7
8
  "account",
@@ -233,7 +234,7 @@ function isRetryableWriteError(error) {
233
234
  }
234
235
  async function defaultWriteFile(path, contents) {
235
236
  await fs.mkdir(dirname(path), { recursive: true });
236
- const tempPath = `${path}.${process.pid}.${Date.now()}.${Math.random().toString(36).slice(2, 8)}.tmp`;
237
+ const tempPath = tempPathFor(path);
237
238
  let moved = false;
238
239
  try {
239
240
  await fs.writeFile(tempPath, contents, "utf-8");
@@ -344,4 +345,3 @@ export async function runUsageCommand(args, deps = {}) {
344
345
  logInfo(rendered);
345
346
  return 0;
346
347
  }
347
- //# sourceMappingURL=usage.js.map
@@ -11,14 +11,14 @@ type ParsedArgsResult<T> = {
11
11
  ok: false;
12
12
  message: string;
13
13
  };
14
- export interface VerifyPathStep {
14
+ interface VerifyPathStep {
15
15
  name: string;
16
16
  input?: string;
17
17
  output?: string;
18
18
  ok: boolean;
19
19
  error?: string;
20
20
  }
21
- export interface VerifySandboxResult {
21
+ interface VerifySandboxResult {
22
22
  name: string;
23
23
  input: string;
24
24
  rejected: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../../lib/codex-manager/commands/verify.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,OAAO,CAAC;CACb;AAED,KAAK,gBAAgB,CAAC,CAAC,IACpB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,CAAC,CAAA;CAAE,GACxB;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAElC,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IACjC,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,YAAY,EAAE,mBAAmB,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,MAAM,MAAM,CAAC;IACrB,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACrD,iCAAiC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;IACnE,oBAAoB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;IACtD,mBAAmB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;IACrD,yBAAyB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;IAC3D,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACvC;AAED,MAAM,WAAW,iBAAiB;IACjC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IACxE,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,iBAAiB,CAAC;IAC9D,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,eAAe,EAAE,eAAe,CAAC;IACjC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC/C,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,eAAe,GAAG,iBAAiB,CAyF5E;AAoID,wBAAsB,gBAAgB,CACrC,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,iBAAiB,GACrB,OAAO,CAAC,MAAM,CAAC,CA6FjB;AAED,wBAAgB,eAAe,CAC9B,IAAI,EAAE,MAAM,EAAE,GACZ,gBAAgB,CAAC,gBAAgB,CAAC,CA4CpC;AAED,wBAAgB,gBAAgB,IAAI,IAAI,CAiBvC"}
1
+ {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../../lib/codex-manager/commands/verify.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,OAAO,CAAC;CACb;AAED,KAAK,gBAAgB,CAAC,CAAC,IACpB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,CAAC,CAAA;CAAE,GACxB;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAElC,UAAU,cAAc;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,mBAAmB;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IACjC,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,YAAY,EAAE,mBAAmB,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,MAAM,MAAM,CAAC;IACrB,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACrD,iCAAiC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;IACnE,oBAAoB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;IACtD,mBAAmB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;IACrD,yBAAyB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;IAC3D,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACvC;AAED,MAAM,WAAW,iBAAiB;IACjC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IACxE,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,iBAAiB,CAAC;IAC9D,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,eAAe,EAAE,eAAe,CAAC;IACjC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC/C,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,eAAe,GAAG,iBAAiB,CAyF5E;AAoID,wBAAsB,gBAAgB,CACrC,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,iBAAiB,GACrB,OAAO,CAAC,MAAM,CAAC,CA6FjB;AAED,wBAAgB,eAAe,CAC9B,IAAI,EAAE,MAAM,EAAE,GACZ,gBAAgB,CAAC,gBAAgB,CAAC,CA4CpC;AAED,wBAAgB,gBAAgB,IAAI,IAAI,CAiBvC"}
@@ -329,4 +329,3 @@ export function printVerifyUsage() {
329
329
  " - `--paths` and `--flagged` cannot be combined; use `verify-flagged` when you only need flagged checks.",
330
330
  ].join("\n"));
331
331
  }
332
- //# sourceMappingURL=verify.js.map
@@ -11,7 +11,7 @@ type ParsedArgsResult<T> = {
11
11
  ok: false;
12
12
  message: string;
13
13
  };
14
- export interface WhySelectedRuntimeSnapshot {
14
+ interface WhySelectedRuntimeSnapshot {
15
15
  lastSwitchReason?: string;
16
16
  lastRateLimitReason?: string;
17
17
  cooldownReason?: string;
@@ -29,27 +29,6 @@ export interface WhySelectedCommandDeps {
29
29
  logInfo?: (message: string) => void;
30
30
  logError?: (message: string) => void;
31
31
  }
32
- export interface WhySelectedCandidateRecord {
33
- index: number;
34
- oneBasedIndex: number;
35
- email?: string;
36
- accountId?: string;
37
- enabled: boolean;
38
- available: boolean;
39
- health: number;
40
- tokens: number;
41
- hoursSinceUsed: number;
42
- capabilityBoost: number;
43
- pidBonus: number;
44
- score: number;
45
- lastSwitchReason?: string;
46
- lastRateLimitReason?: string;
47
- cooldownReason?: string;
48
- reason?: string;
49
- }
50
- export interface WhySelectedSelectedRecord extends WhySelectedCandidateRecord {
51
- selectionReason: string;
52
- }
53
32
  export declare function runWhySelectedCommand(args: string[], deps: WhySelectedCommandDeps): Promise<number>;
54
33
  export declare function parseWhySelectedArgs(args: string[]): ParsedArgsResult<WhySelectedCliOptions>;
55
34
  export declare function printWhySelectedUsage(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"why-selected.d.ts","sourceRoot":"","sources":["../../../../lib/codex-manager/commands/why-selected.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAEX,0BAA0B,EAC1B,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,qBAAqB;IACrC,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;CACrB;AAED,KAAK,gBAAgB,CAAC,CAAC,IACpB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,CAAC,CAAA;CAAE,GACxB;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAElC,MAAM,WAAW,0BAA0B;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,sBAAsB;IACtC,oBAAoB,EAAE,CACrB,IAAI,EAAE,MAAM,EAAE,KACV,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;IAC7C,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAClC,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC9C,YAAY,EAAE,MAAM,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IACrD,kBAAkB,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC;IAC5E,mBAAmB,EAAE,CACpB,OAAO,EAAE,gBAAgB,KACrB,0BAA0B,CAAC;IAChC,gCAAgC,CAAC,EAAE,MAAM,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAAC;IACpF,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,MAAM,GAAG,SAAS,CAAC;IAClE,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,0BAA0B;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,yBAA0B,SAAQ,0BAA0B;IAC5E,eAAe,EAAE,MAAM,CAAC;CACxB;AAqCD,wBAAsB,qBAAqB,CAC1C,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,sBAAsB,GAC1B,OAAO,CAAC,MAAM,CAAC,CAsJjB;AAED,wBAAgB,oBAAoB,CACnC,IAAI,EAAE,MAAM,EAAE,GACZ,gBAAgB,CAAC,qBAAqB,CAAC,CAiCzC;AAED,wBAAgB,qBAAqB,IAAI,IAAI,CAc5C"}
1
+ {"version":3,"file":"why-selected.d.ts","sourceRoot":"","sources":["../../../../lib/codex-manager/commands/why-selected.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAEX,0BAA0B,EAC1B,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,qBAAqB;IACrC,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;CACrB;AAED,KAAK,gBAAgB,CAAC,CAAC,IACpB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,CAAC,CAAA;CAAE,GACxB;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAElC,UAAU,0BAA0B;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,sBAAsB;IACtC,oBAAoB,EAAE,CACrB,IAAI,EAAE,MAAM,EAAE,KACV,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;IAC7C,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAClC,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC9C,YAAY,EAAE,MAAM,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IACrD,kBAAkB,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC;IAC5E,mBAAmB,EAAE,CACpB,OAAO,EAAE,gBAAgB,KACrB,0BAA0B,CAAC;IAChC,gCAAgC,CAAC,EAAE,MAAM,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAAC;IACpF,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,MAAM,GAAG,SAAS,CAAC;IAClE,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AA4DD,wBAAsB,qBAAqB,CAC1C,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,sBAAsB,GAC1B,OAAO,CAAC,MAAM,CAAC,CAsJjB;AAED,wBAAgB,oBAAoB,CACnC,IAAI,EAAE,MAAM,EAAE,GACZ,gBAAgB,CAAC,qBAAqB,CAAC,CAiCzC;AAED,wBAAgB,qBAAqB,IAAI,IAAI,CAc5C"}
@@ -195,4 +195,3 @@ export function printWhySelectedUsage() {
195
195
  "Exits 0 when an account is selected, 1 when no account can be selected.",
196
196
  ].join("\n"));
197
197
  }
198
- //# sourceMappingURL=why-selected.js.map
@@ -93,4 +93,3 @@ export async function runWorkspaceCommand(args, deps) {
93
93
  logInfo(`Account ${parsedAccount} now using workspace ${parsedWorkspace}: [${targetName}]${idSuffix ? ` (id:${idSuffix})` : ""}.`);
94
94
  return 0;
95
95
  }
96
- //# sourceMappingURL=workspace.js.map
@@ -1,5 +1,5 @@
1
1
  import { type DashboardAccountSortMode, type DashboardDisplaySettings } from "../dashboard-settings.js";
2
- import type { UI_COPY } from "../ui/copy.js";
2
+ import type { UI_COPY } from "../ui/ui-copy.js";
3
3
  import { getUiRuntimeOptions } from "../ui/runtime.js";
4
4
  export type DashboardDisplaySettingKey = "menuShowStatusBadge" | "menuShowCurrentBadge" | "menuShowLastUsed" | "menuShowQuotaSummary" | "menuShowQuotaCooldown" | "menuShowDetailsForUnselectedRows" | "menuShowFetchStatus" | "menuHighlightCurrentRow" | "menuSortEnabled" | "menuSortPinCurrent" | "menuSortQuickSwitchVisibleRow";
5
5
  export interface DashboardDisplaySettingOption {
@@ -7,20 +7,6 @@ export interface DashboardDisplaySettingOption {
7
7
  label: string;
8
8
  description: string;
9
9
  }
10
- export type DashboardConfigAction = {
11
- type: "toggle";
12
- key: DashboardDisplaySettingKey;
13
- } | {
14
- type: "cycle-sort-mode";
15
- } | {
16
- type: "cycle-layout-mode";
17
- } | {
18
- type: "reset";
19
- } | {
20
- type: "save";
21
- } | {
22
- type: "cancel";
23
- };
24
10
  export interface DashboardDisplayPanelDeps {
25
11
  cloneDashboardSettings: (settings: DashboardDisplaySettings) => DashboardDisplaySettings;
26
12
  buildAccountListPreview: (settings: DashboardDisplaySettings, ui: ReturnType<typeof getUiRuntimeOptions>, focusKey: DashboardDisplaySettingKey | "menuSortMode" | "menuLayoutMode") => {
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-display-panel.d.ts","sourceRoot":"","sources":["../../../lib/codex-manager/dashboard-display-panel.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAE7B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAGvD,MAAM,MAAM,0BAA0B,GACnC,qBAAqB,GACrB,sBAAsB,GACtB,kBAAkB,GAClB,sBAAsB,GACtB,uBAAuB,GACvB,kCAAkC,GAClC,qBAAqB,GACrB,yBAAyB,GACzB,iBAAiB,GACjB,oBAAoB,GACpB,+BAA+B,CAAC;AAEnC,MAAM,WAAW,6BAA6B;IAC7C,GAAG,EAAE,0BAA0B,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,qBAAqB,GAC9B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,0BAA0B,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3B;IAAE,IAAI,EAAE,mBAAmB,CAAA;CAAE,GAC7B;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEtB,MAAM,WAAW,yBAAyB;IACzC,sBAAsB,EAAE,CACvB,QAAQ,EAAE,wBAAwB,KAC9B,wBAAwB,CAAC;IAC9B,uBAAuB,EAAE,CACxB,QAAQ,EAAE,wBAAwB,EAClC,EAAE,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,EAC1C,QAAQ,EAAE,0BAA0B,GAAG,cAAc,GAAG,gBAAgB,KACpE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,2BAA2B,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC;IAC1D,kBAAkB,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,MAAM,CAAC;IAC/D,qBAAqB,EAAE,CACtB,QAAQ,EAAE,wBAAwB,KAC9B,iBAAiB,GAAG,eAAe,CAAC;IACzC,oBAAoB,EAAE,CAAC,IAAI,EAAE,iBAAiB,GAAG,eAAe,KAAK,MAAM,CAAC;IAC5E,6BAA6B,EAAE,CAC9B,KAAK,EAAE,wBAAwB,EAC/B,IAAI,EAAE,SAAS,CAAC,MAAM,wBAAwB,CAAC,EAAE,KAC7C,wBAAwB,CAAC;IAC9B,yBAAyB,EAAE,SAAS,6BAA6B,EAAE,CAAC;IACpE,uBAAuB,EAAE,SAAS,CAAC,MAAM,wBAAwB,CAAC,EAAE,CAAC;IACrE,OAAO,EAAE,OAAO,OAAO,CAAC;CACxB;AAED,wBAAsB,2BAA2B,CAChD,OAAO,EAAE,wBAAwB,EACjC,IAAI,EAAE,yBAAyB,GAC7B,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAiM1C"}
1
+ {"version":3,"file":"dashboard-display-panel.d.ts","sourceRoot":"","sources":["../../../lib/codex-manager/dashboard-display-panel.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAE7B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAGvD,MAAM,MAAM,0BAA0B,GACnC,qBAAqB,GACrB,sBAAsB,GACtB,kBAAkB,GAClB,sBAAsB,GACtB,uBAAuB,GACvB,kCAAkC,GAClC,qBAAqB,GACrB,yBAAyB,GACzB,iBAAiB,GACjB,oBAAoB,GACpB,+BAA+B,CAAC;AAEnC,MAAM,WAAW,6BAA6B;IAC7C,GAAG,EAAE,0BAA0B,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACpB;AAUD,MAAM,WAAW,yBAAyB;IACzC,sBAAsB,EAAE,CACvB,QAAQ,EAAE,wBAAwB,KAC9B,wBAAwB,CAAC;IAC9B,uBAAuB,EAAE,CACxB,QAAQ,EAAE,wBAAwB,EAClC,EAAE,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,EAC1C,QAAQ,EAAE,0BAA0B,GAAG,cAAc,GAAG,gBAAgB,KACpE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,2BAA2B,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC;IAC1D,kBAAkB,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,MAAM,CAAC;IAC/D,qBAAqB,EAAE,CACtB,QAAQ,EAAE,wBAAwB,KAC9B,iBAAiB,GAAG,eAAe,CAAC;IACzC,oBAAoB,EAAE,CAAC,IAAI,EAAE,iBAAiB,GAAG,eAAe,KAAK,MAAM,CAAC;IAC5E,6BAA6B,EAAE,CAC9B,KAAK,EAAE,wBAAwB,EAC/B,IAAI,EAAE,SAAS,CAAC,MAAM,wBAAwB,CAAC,EAAE,KAC7C,wBAAwB,CAAC;IAC9B,yBAAyB,EAAE,SAAS,6BAA6B,EAAE,CAAC;IACpE,uBAAuB,EAAE,SAAS,CAAC,MAAM,wBAAwB,CAAC,EAAE,CAAC;IACrE,OAAO,EAAE,OAAO,OAAO,CAAC;CACxB;AAED,wBAAsB,2BAA2B,CAChD,OAAO,EAAE,wBAAwB,EACjC,IAAI,EAAE,yBAAyB,GAC7B,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAiM1C"}
@@ -184,4 +184,3 @@ export async function promptDashboardDisplayPanel(initial, deps) {
184
184
  draft = { ...draft, [result.key]: !draft[result.key] };
185
185
  }
186
186
  }
187
- //# sourceMappingURL=dashboard-display-panel.js.map
@@ -16,4 +16,3 @@ export function formatMenuQuotaTtl(ttlMs) {
16
16
  }
17
17
  return `${ttlMs}ms`;
18
18
  }
19
- //# sourceMappingURL=dashboard-formatters.js.map
@@ -14,4 +14,3 @@ export async function configureDashboardSettingsController(currentSettings, deps
14
14
  deps.applyUiThemeFromDashboardSettings(merged);
15
15
  return merged;
16
16
  }
17
- //# sourceMappingURL=dashboard-settings-controller.js.map
@@ -92,4 +92,3 @@ export function dashboardSettingsDataEqual(left, right, deps) {
92
92
  JSON.stringify(deps.normalizeStatuslineFields(left.menuStatuslineFields)) ===
93
93
  JSON.stringify(deps.normalizeStatuslineFields(right.menuStatuslineFields)));
94
94
  }
95
- //# sourceMappingURL=dashboard-settings-data.js.map
@@ -10,4 +10,3 @@ export async function configureDashboardSettingsEntry(currentSettings, deps) {
10
10
  writeLine: deps.writeLine,
11
11
  });
12
12
  }
13
- //# sourceMappingURL=dashboard-settings-entry.js.map
@@ -27,4 +27,3 @@ export async function promptExperimentalSettingsEntry(params) {
27
27
  getAppliedLabel: params.getAppliedLabel,
28
28
  });
29
29
  }
30
- //# sourceMappingURL=experimental-settings-entry.js.map
@@ -4,7 +4,7 @@ import type { PluginConfig } from "../types.js";
4
4
  import type { MenuItem, select } from "../ui/select.js";
5
5
  import type { UiRuntimeOptions } from "../ui/runtime.js";
6
6
  import type { getExperimentalSelectOptions, mapExperimentalMenuHotkey, mapExperimentalStatusHotkey } from "./experimental-settings-schema.js";
7
- export type ExperimentalSettingsCopy = {
7
+ type ExperimentalSettingsCopy = {
8
8
  experimentalSync: string;
9
9
  experimentalBackup: string;
10
10
  experimentalRefreshGuard: string;
@@ -63,4 +63,5 @@ export type ExperimentalSettingsPromptDeps<TTargetState> = {
63
63
  };
64
64
  };
65
65
  export declare function promptExperimentalSettingsMenu<TTargetState>(params: ExperimentalSettingsPromptDeps<TTargetState>): Promise<PluginConfig | null>;
66
+ export {};
66
67
  //# sourceMappingURL=experimental-settings-prompt.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"experimental-settings-prompt.d.ts","sourceRoot":"","sources":["../../../lib/codex-manager/experimental-settings-prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"experimental-settings-prompt.d.ts","sourceRoot":"","sources":["../../../lib/codex-manager/experimental-settings-prompt.ts"],"names":[],"mappings":"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"}
@@ -228,4 +228,3 @@ export async function promptExperimentalSettingsMenu(params) {
228
228
  ], params.getExperimentalSelectOptions(params.ui, copy.experimentalHelpStatus, params.mapExperimentalStatusHotkey));
229
229
  }
230
230
  }
231
- //# sourceMappingURL=experimental-settings-prompt.js.map
@@ -1,4 +1,4 @@
1
- import { UI_COPY } from "../ui/copy.js";
1
+ import { UI_COPY } from "../ui/ui-copy.js";
2
2
  export function getExperimentalSelectOptions(ui, help, onInput) {
3
3
  return {
4
4
  message: UI_COPY.settings.experimentalTitle,
@@ -31,4 +31,3 @@ export function mapExperimentalMenuHotkey(raw) {
31
31
  export function mapExperimentalStatusHotkey(raw) {
32
32
  return raw.toLowerCase() === "q" ? { type: "back" } : undefined;
33
33
  }
34
- //# sourceMappingURL=experimental-settings-schema.js.map
@@ -13,4 +13,3 @@ export async function loadExperimentalSyncTargetEntry(params) {
13
13
  normalizeAccountStorage: params.normalizeAccountStorage,
14
14
  });
15
15
  }
16
- //# sourceMappingURL=experimental-sync-target-entry.js.map
@@ -36,4 +36,3 @@ export async function loadExperimentalSyncTargetState(deps) {
36
36
  };
37
37
  }
38
38
  }
39
- //# sourceMappingURL=experimental-sync-target.js.map
@@ -441,4 +441,3 @@ export async function runReport(args, deps) {
441
441
  }
442
442
  return 0;
443
443
  }
444
- //# sourceMappingURL=forecast-report-commands.js.map
@@ -1,15 +1,15 @@
1
1
  import type { ForecastAccountResult } from "../forecast.js";
2
2
  import type { CodexQuotaSnapshot } from "../quota-probe.js";
3
3
  import { type AccountMetadataV3, type AccountStorageV3 } from "../storage.js";
4
+ import { saveAccountsWithRetry } from "../storage/save-retry.js";
4
5
  import type { TokenFailure } from "../types.js";
6
+ export { saveAccountsWithRetry };
5
7
  export type AccountIdentityMatch = Pick<AccountMetadataV3, "accountId" | "email" | "refreshToken">;
6
8
  export type RefreshedAccountPatch = Pick<AccountMetadataV3, "refreshToken" | "accessToken" | "expiresAt"> & {
7
9
  email?: AccountMetadataV3["email"];
8
10
  accountId?: AccountMetadataV3["accountId"];
9
11
  accountIdSource?: AccountMetadataV3["accountIdSource"];
10
12
  };
11
- export declare function isRetryableStorageWriteError(error: unknown): boolean;
12
- export declare function saveAccountsWithRetry(storage: AccountStorageV3, saveAccounts: (storage: AccountStorageV3) => Promise<void>): Promise<void>;
13
13
  export declare function applyRefreshedAccountPatch(account: AccountMetadataV3, patch: RefreshedAccountPatch): void;
14
14
  export declare function persistRefreshedAccountPatch(storage: AccountStorageV3, accountMatch: AccountIdentityMatch, patch: RefreshedAccountPatch, loadAccounts: () => Promise<AccountStorageV3 | null>, saveAccounts: (storage: AccountStorageV3) => Promise<void>): Promise<void>;
15
15
  export declare function serializeForecastResults(results: ForecastAccountResult[], liveQuotaByIndex: Map<number, CodexQuotaSnapshot>, refreshFailures: Map<number, TokenFailure>, formatQuotaSnapshotLine: (snapshot: CodexQuotaSnapshot) => string): Array<{
@@ -1 +1 @@
1
- {"version":3,"file":"forecast-report-shared.d.ts","sourceRoot":"","sources":["../../../lib/codex-manager/forecast-report-shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAEN,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAKhD,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACtC,iBAAiB,EACjB,WAAW,GAAG,OAAO,GAAG,cAAc,CACtC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACvC,iBAAiB,EACjB,cAAc,GAAG,aAAa,GAAG,WAAW,CAC5C,GAAG;IACH,KAAK,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC3C,eAAe,CAAC,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;CACvD,CAAC;AAEF,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGpE;AAED,wBAAsB,qBAAqB,CAC1C,OAAO,EAAE,gBAAgB,EACzB,YAAY,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,GACxD,OAAO,CAAC,IAAI,CAAC,CAYf;AAED,wBAAgB,0BAA0B,CACzC,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,qBAAqB,GAC1B,IAAI,CASN;AAED,wBAAsB,4BAA4B,CACjD,OAAO,EAAE,gBAAgB,EACzB,YAAY,EAAE,oBAAoB,EAClC,KAAK,EAAE,qBAAqB,EAC5B,YAAY,EAAE,MAAM,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,EACpD,YAAY,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,GACxD,OAAO,CAAC,IAAI,CAAC,CAmBf;AAED,wBAAgB,wBAAwB,CACvC,OAAO,EAAE,qBAAqB,EAAE,EAChC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,EACjD,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EAC1C,uBAAuB,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,MAAM,GAC/D,KAAK,CAAC;IACR,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,qBAAqB,CAAC,cAAc,CAAC,CAAC;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE;QACX,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,cAAc,CAAC,EAAE,YAAY,CAAC;CAC9B,CAAC,CA0BD"}
1
+ {"version":3,"file":"forecast-report-shared.d.ts","sourceRoot":"","sources":["../../../lib/codex-manager/forecast-report-shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAEN,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAKhD,OAAO,EAAE,qBAAqB,EAAE,CAAC;AAEjC,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACtC,iBAAiB,EACjB,WAAW,GAAG,OAAO,GAAG,cAAc,CACtC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACvC,iBAAiB,EACjB,cAAc,GAAG,aAAa,GAAG,WAAW,CAC5C,GAAG;IACH,KAAK,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC3C,eAAe,CAAC,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;CACvD,CAAC;AAEF,wBAAgB,0BAA0B,CACzC,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,qBAAqB,GAC1B,IAAI,CASN;AAED,wBAAsB,4BAA4B,CACjD,OAAO,EAAE,gBAAgB,EACzB,YAAY,EAAE,oBAAoB,EAClC,KAAK,EAAE,qBAAqB,EAC5B,YAAY,EAAE,MAAM,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,EACpD,YAAY,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,GACxD,OAAO,CAAC,IAAI,CAAC,CAmBf;AAED,wBAAgB,wBAAwB,CACvC,OAAO,EAAE,qBAAqB,EAAE,EAChC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,EACjD,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EAC1C,uBAAuB,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,MAAM,GAC/D,KAAK,CAAC;IACR,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,qBAAqB,CAAC,cAAc,CAAC,CAAC;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE;QACX,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,cAAc,CAAC,EAAE,YAAY,CAAC;CAC9B,CAAC,CA0BD"}
@@ -1,24 +1,9 @@
1
1
  import { findMatchingAccountIndex, } from "../storage.js";
2
- import { sleep } from "../utils.js";
3
- const RETRYABLE_STORAGE_WRITE_CODES = new Set(["EBUSY", "EPERM"]);
4
- export function isRetryableStorageWriteError(error) {
5
- const code = error?.code;
6
- return typeof code === "string" && RETRYABLE_STORAGE_WRITE_CODES.has(code);
7
- }
8
- export async function saveAccountsWithRetry(storage, saveAccounts) {
9
- for (let attempt = 0;; attempt += 1) {
10
- try {
11
- await saveAccounts(storage);
12
- return;
13
- }
14
- catch (error) {
15
- if (!isRetryableStorageWriteError(error) || attempt >= 3) {
16
- throw error;
17
- }
18
- await sleep(10 * 2 ** attempt);
19
- }
20
- }
21
- }
2
+ import { saveAccountsWithRetry } from "../storage/save-retry.js";
3
+ // Moved to lib/storage/save-retry.ts so lib/accounts.ts can use the retry
4
+ // helper without importing this codex-manager module; re-exported here to
5
+ // preserve the historical import surface.
6
+ export { saveAccountsWithRetry };
22
7
  export function applyRefreshedAccountPatch(account, patch) {
23
8
  account.refreshToken = patch.refreshToken;
24
9
  account.accessToken = patch.accessToken;
@@ -76,4 +61,3 @@ export function serializeForecastResults(results, liveQuotaByIndex, refreshFailu
76
61
  };
77
62
  });
78
63
  }
79
- //# sourceMappingURL=forecast-report-shared.js.map
@@ -0,0 +1,11 @@
1
+ import type { ForecastAccountResult } from "../../forecast.js";
2
+ import type { ModelFamily } from "../../prompts/codex.js";
3
+ import { type PromptTone } from "./text-style.js";
4
+ export declare function styleAccountDetailText(detail: string, fallbackTone?: PromptTone): string;
5
+ export declare function riskTone(level: ForecastAccountResult["riskLevel"]): "success" | "warning" | "danger";
6
+ export declare function availabilityTone(availability: ForecastAccountResult["availability"]): "success" | "warning" | "danger";
7
+ export declare function formatRateLimitEntry(account: {
8
+ rateLimitResetTimes?: Record<string, number | undefined>;
9
+ }, now: number, family?: ModelFamily): string | null;
10
+ export declare function formatBackupSavedAt(mtimeMs: number): string;
11
+ //# sourceMappingURL=account-formatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account-formatters.d.ts","sourceRoot":"","sources":["../../../../lib/codex-manager/formatters/account-formatters.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAG1D,OAAO,EAEN,KAAK,UAAU,EAEf,MAAM,iBAAiB,CAAC;AAKzB,wBAAgB,sBAAsB,CACrC,MAAM,EAAE,MAAM,EACd,YAAY,GAAE,UAAoB,GAChC,MAAM,CA4CR;AAED,wBAAgB,QAAQ,CACvB,KAAK,EAAE,qBAAqB,CAAC,WAAW,CAAC,GACvC,SAAS,GAAG,SAAS,GAAG,QAAQ,CAIlC;AAED,wBAAgB,gBAAgB,CAC/B,YAAY,EAAE,qBAAqB,CAAC,cAAc,CAAC,GACjD,SAAS,GAAG,SAAS,GAAG,QAAQ,CAIlC;AAED,wBAAgB,oBAAoB,CACnC,OAAO,EAAE;IAAE,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;CAAE,EACrE,GAAG,EAAE,MAAM,EACX,MAAM,GAAE,WAAqB,GAC3B,MAAM,GAAG,IAAI,CAEf;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQ3D"}
@@ -0,0 +1,79 @@
1
+ import { formatWaitTime } from "../../accounts.js";
2
+ import { formatRateLimitEntry as formatAccountRateLimitEntry } from "../../runtime/account-status.js";
3
+ import { styleQuotaSummary } from "./quota-formatters.js";
4
+ import { collapseWhitespace, stylePromptText, } from "./text-style.js";
5
+ // Exported for unit tests: tone precedence (danger before warning) is
6
+ // security/UX-relevant — a failure whose text contains "unavailable" must
7
+ // render red, not be downgraded to yellow. See test/codex-manager-detail-tone.test.ts.
8
+ export function styleAccountDetailText(detail, fallbackTone = "muted") {
9
+ const compact = collapseWhitespace(detail);
10
+ if (!compact)
11
+ return stylePromptText("", fallbackTone);
12
+ const quotaMatch = compact.match(/^(.*?)\(([^()]*\d{1,3}%[^()]*)\)(.*)$/);
13
+ if (quotaMatch) {
14
+ const prefix = (quotaMatch[1] ?? "").trim();
15
+ const quota = (quotaMatch[2] ?? "").trim();
16
+ const suffix = (quotaMatch[3] ?? "").trim();
17
+ // danger wins across the WHOLE detail: a failure keyword anywhere — even
18
+ // trapped inside the (…%) quota segment, e.g.
19
+ // "signed in and working (live check failed: … 0%)" — must keep the prefix
20
+ // red, never let a "working"/"ok" prefix render green over a real failure.
21
+ const detailHasFailure = /failed|error|rate-limited/i.test(compact);
22
+ const prefixTone = detailHasFailure
23
+ ? "danger"
24
+ : /\b(ok|working|succeeded|valid)\b/i.test(prefix)
25
+ ? "success"
26
+ : fallbackTone;
27
+ const suffixTone =
28
+ // danger wins first: a real failure whose text happens to contain
29
+ // "unavailable"/"not available" (e.g. a 5xx "service not available")
30
+ // must render red, not be downgraded to a yellow warning.
31
+ /failed|error/i.test(suffix)
32
+ ? "danger"
33
+ : /re-login|stale|warning|retry|fallback|unavailable|not available/i.test(suffix)
34
+ ? "warning"
35
+ : "muted";
36
+ const chunks = [];
37
+ if (prefix)
38
+ chunks.push(stylePromptText(prefix, prefixTone));
39
+ chunks.push(`(${styleQuotaSummary(quota)})`);
40
+ if (suffix)
41
+ chunks.push(stylePromptText(suffix, suffixTone));
42
+ return chunks.join(" ");
43
+ }
44
+ if (/rate-limited/i.test(compact))
45
+ return stylePromptText(compact, "danger");
46
+ if (/failed|error/i.test(compact))
47
+ return stylePromptText(compact, "danger");
48
+ if (/re-login|stale|warning|fallback|unavailable|not available/i.test(compact))
49
+ return stylePromptText(compact, "warning");
50
+ if (/\b(ok|working|succeeded|valid)\b/i.test(compact))
51
+ return stylePromptText(compact, "success");
52
+ return stylePromptText(compact, fallbackTone);
53
+ }
54
+ export function riskTone(level) {
55
+ if (level === "low")
56
+ return "success";
57
+ if (level === "medium")
58
+ return "warning";
59
+ return "danger";
60
+ }
61
+ export function availabilityTone(availability) {
62
+ if (availability === "ready")
63
+ return "success";
64
+ if (availability === "delayed")
65
+ return "warning";
66
+ return "danger";
67
+ }
68
+ export function formatRateLimitEntry(account, now, family = "codex") {
69
+ return formatAccountRateLimitEntry(account, now, formatWaitTime, family);
70
+ }
71
+ export function formatBackupSavedAt(mtimeMs) {
72
+ return new Date(mtimeMs).toLocaleString(undefined, {
73
+ month: "short",
74
+ day: "numeric",
75
+ year: "numeric",
76
+ hour: "numeric",
77
+ minute: "2-digit",
78
+ });
79
+ }
@@ -0,0 +1,5 @@
1
+ export * from "./account-formatters.js";
2
+ export * from "./model-formatters.js";
3
+ export * from "./quota-formatters.js";
4
+ export * from "./text-style.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../lib/codex-manager/formatters/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from "./account-formatters.js";
2
+ export * from "./model-formatters.js";
3
+ export * from "./quota-formatters.js";
4
+ export * from "./text-style.js";
@@ -0,0 +1,12 @@
1
+ import type { ModelFamily } from "../../prompts/codex.js";
2
+ import { getModelCapabilities } from "../../request/helpers/model-map.js";
3
+ export interface ModelInspection {
4
+ requested: string;
5
+ normalized: string;
6
+ remapped: boolean;
7
+ promptFamily: ModelFamily;
8
+ capabilities: ReturnType<typeof getModelCapabilities>;
9
+ }
10
+ export declare function inspectRequestedModel(requestedModel: string): ModelInspection;
11
+ export declare function formatModelInspection(model: ModelInspection): string;
12
+ //# sourceMappingURL=model-formatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-formatters.d.ts","sourceRoot":"","sources":["../../../../lib/codex-manager/formatters/model-formatters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EACN,oBAAoB,EAGpB,MAAM,oCAAoC,CAAC;AAE5C,MAAM,WAAW,eAAe;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,WAAW,CAAC;IAC1B,YAAY,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;CACtD;AAED,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,eAAe,CAU7E;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,CAUpE"}
@@ -0,0 +1,23 @@
1
+ import { getModelCapabilities, getModelProfile, resolveNormalizedModel, } from "../../request/helpers/model-map.js";
2
+ export function inspectRequestedModel(requestedModel) {
3
+ const normalized = resolveNormalizedModel(requestedModel);
4
+ const profile = getModelProfile(normalized);
5
+ return {
6
+ requested: requestedModel,
7
+ normalized,
8
+ remapped: requestedModel !== normalized,
9
+ promptFamily: profile.promptFamily,
10
+ capabilities: getModelCapabilities(normalized),
11
+ };
12
+ }
13
+ export function formatModelInspection(model) {
14
+ const route = model.remapped
15
+ ? `${model.requested} -> ${model.normalized}`
16
+ : model.normalized;
17
+ return [
18
+ route,
19
+ `prompt family ${model.promptFamily}`,
20
+ `tool search ${model.capabilities.toolSearch ? "yes" : "no"}`,
21
+ `computer use ${model.capabilities.computerUse ? "yes" : "no"}`,
22
+ ].join(" | ");
23
+ }
@@ -0,0 +1,9 @@
1
+ import type { DashboardDisplaySettings } from "../../dashboard-settings.js";
2
+ import type { QuotaCacheEntry } from "../../quota-cache.js";
3
+ import { type CodexQuotaSnapshot, fetchCodexQuotaSnapshot } from "../../quota-probe.js";
4
+ export declare function styleQuotaSummary(summary: string): string;
5
+ export declare function formatQuotaSnapshotForDashboard(snapshot: Awaited<ReturnType<typeof fetchCodexQuotaSnapshot>>, settings: DashboardDisplaySettings): string;
6
+ export declare function quotaCacheEntryToSnapshot(entry: QuotaCacheEntry): CodexQuotaSnapshot;
7
+ export declare function formatCompactQuotaSnapshot(snapshot: CodexQuotaSnapshot, now?: number): string;
8
+ export declare function formatAccountQuotaSummary(entry: QuotaCacheEntry, now?: number): string;
9
+ //# sourceMappingURL=quota-formatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quota-formatters.d.ts","sourceRoot":"","sources":["../../../../lib/codex-manager/formatters/quota-formatters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EACN,KAAK,kBAAkB,EACvB,uBAAuB,EAEvB,MAAM,sBAAsB,CAAC;AAY9B,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CA8BzD;AAED,wBAAgB,+BAA+B,CAC9C,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC,EAC7D,QAAQ,EAAE,wBAAwB,GAChC,MAAM,CAGR;AAED,wBAAgB,yBAAyB,CACxC,KAAK,EAAE,eAAe,GACpB,kBAAkB,CAgBpB;AAyBD,wBAAgB,0BAA0B,CACzC,QAAQ,EAAE,kBAAkB,EAC5B,GAAG,SAAa,GACd,MAAM,CAuBR;AAED,wBAAgB,yBAAyB,CACxC,KAAK,EAAE,eAAe,EACtB,GAAG,SAAa,GACd,MAAM,CAuBR"}