@kaitranntt/ccs 8.4.0-dev.10 → 8.4.0-dev.11

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 (478) hide show
  1. package/dist/auth/profile-registry.d.ts.map +1 -1
  2. package/dist/auth/profile-registry.js +13 -12
  3. package/dist/auth/profile-registry.js.map +1 -1
  4. package/dist/cliproxy/accounts/account-safety.d.ts.map +1 -1
  5. package/dist/cliproxy/accounts/account-safety.js +56 -56
  6. package/dist/cliproxy/accounts/account-safety.js.map +1 -1
  7. package/dist/cliproxy/auth/antigravity-responsibility.d.ts.map +1 -1
  8. package/dist/cliproxy/auth/antigravity-responsibility.js +15 -15
  9. package/dist/cliproxy/auth/antigravity-responsibility.js.map +1 -1
  10. package/dist/cliproxy/auth/auth-token-manager.d.ts.map +1 -1
  11. package/dist/cliproxy/auth/auth-token-manager.js +2 -1
  12. package/dist/cliproxy/auth/auth-token-manager.js.map +1 -1
  13. package/dist/cliproxy/auth/auth-types.d.ts.map +1 -1
  14. package/dist/cliproxy/auth/auth-types.js +3 -2
  15. package/dist/cliproxy/auth/auth-types.js.map +1 -1
  16. package/dist/cliproxy/auth/oauth-handler.d.ts.map +1 -1
  17. package/dist/cliproxy/auth/oauth-handler.js +6 -5
  18. package/dist/cliproxy/auth/oauth-handler.js.map +1 -1
  19. package/dist/cliproxy/auth/provider-refreshers/index.d.ts.map +1 -1
  20. package/dist/cliproxy/auth/provider-refreshers/index.js +2 -1
  21. package/dist/cliproxy/auth/provider-refreshers/index.js.map +1 -1
  22. package/dist/cliproxy/config/model-config.d.ts.map +1 -1
  23. package/dist/cliproxy/config/model-config.js +32 -32
  24. package/dist/cliproxy/config/model-config.js.map +1 -1
  25. package/dist/cliproxy/executor/arg-parser.d.ts.map +1 -1
  26. package/dist/cliproxy/executor/arg-parser.js +26 -26
  27. package/dist/cliproxy/executor/arg-parser.js.map +1 -1
  28. package/dist/cliproxy/executor/auth-coordinator.d.ts.map +1 -1
  29. package/dist/cliproxy/executor/auth-coordinator.js +15 -14
  30. package/dist/cliproxy/executor/auth-coordinator.js.map +1 -1
  31. package/dist/cliproxy/executor/index.d.ts.map +1 -1
  32. package/dist/cliproxy/executor/index.js +17 -13
  33. package/dist/cliproxy/executor/index.js.map +1 -1
  34. package/dist/cliproxy/executor/lifecycle-manager.d.ts.map +1 -1
  35. package/dist/cliproxy/executor/lifecycle-manager.js +18 -16
  36. package/dist/cliproxy/executor/lifecycle-manager.js.map +1 -1
  37. package/dist/cliproxy/executor/model-warnings.d.ts.map +1 -1
  38. package/dist/cliproxy/executor/model-warnings.js +24 -13
  39. package/dist/cliproxy/executor/model-warnings.js.map +1 -1
  40. package/dist/cliproxy/executor/retry-handler.d.ts.map +1 -1
  41. package/dist/cliproxy/executor/retry-handler.js +13 -11
  42. package/dist/cliproxy/executor/retry-handler.js.map +1 -1
  43. package/dist/cliproxy/executor/session-bridge.d.ts.map +1 -1
  44. package/dist/cliproxy/executor/session-bridge.js +18 -10
  45. package/dist/cliproxy/executor/session-bridge.js.map +1 -1
  46. package/dist/cliproxy/management/remote-token-uploader.d.ts.map +1 -1
  47. package/dist/cliproxy/management/remote-token-uploader.js +11 -11
  48. package/dist/cliproxy/management/remote-token-uploader.js.map +1 -1
  49. package/dist/cliproxy/proxy/https-tunnel-proxy.d.ts +5 -1
  50. package/dist/cliproxy/proxy/https-tunnel-proxy.d.ts.map +1 -1
  51. package/dist/cliproxy/proxy/https-tunnel-proxy.js +22 -10
  52. package/dist/cliproxy/proxy/https-tunnel-proxy.js.map +1 -1
  53. package/dist/cliproxy/proxy/tool-sanitization-proxy.d.ts +0 -12
  54. package/dist/cliproxy/proxy/tool-sanitization-proxy.d.ts.map +1 -1
  55. package/dist/cliproxy/proxy/tool-sanitization-proxy.js +42 -72
  56. package/dist/cliproxy/proxy/tool-sanitization-proxy.js.map +1 -1
  57. package/dist/cliproxy/quota/quota-fetcher/account-quota-fetcher.d.ts +21 -0
  58. package/dist/cliproxy/quota/quota-fetcher/account-quota-fetcher.d.ts.map +1 -0
  59. package/dist/cliproxy/quota/quota-fetcher/account-quota-fetcher.js +154 -0
  60. package/dist/cliproxy/quota/quota-fetcher/account-quota-fetcher.js.map +1 -0
  61. package/dist/cliproxy/quota/quota-fetcher/all-accounts-fetcher.d.ts +35 -0
  62. package/dist/cliproxy/quota/quota-fetcher/all-accounts-fetcher.d.ts.map +1 -0
  63. package/dist/cliproxy/quota/quota-fetcher/all-accounts-fetcher.js +98 -0
  64. package/dist/cliproxy/quota/quota-fetcher/all-accounts-fetcher.js.map +1 -0
  65. package/dist/cliproxy/quota/quota-fetcher/auth-file-reader.d.ts +22 -0
  66. package/dist/cliproxy/quota/quota-fetcher/auth-file-reader.d.ts.map +1 -0
  67. package/dist/cliproxy/quota/quota-fetcher/auth-file-reader.js +111 -0
  68. package/dist/cliproxy/quota/quota-fetcher/auth-file-reader.js.map +1 -0
  69. package/dist/cliproxy/quota/quota-fetcher/available-models-fetcher.d.ts +17 -0
  70. package/dist/cliproxy/quota/quota-fetcher/available-models-fetcher.d.ts.map +1 -0
  71. package/dist/cliproxy/quota/quota-fetcher/available-models-fetcher.js +85 -0
  72. package/dist/cliproxy/quota/quota-fetcher/available-models-fetcher.js.map +1 -0
  73. package/dist/cliproxy/quota/quota-fetcher/constants.d.ts +25 -0
  74. package/dist/cliproxy/quota/quota-fetcher/constants.d.ts.map +1 -0
  75. package/dist/cliproxy/quota/quota-fetcher/constants.js +31 -0
  76. package/dist/cliproxy/quota/quota-fetcher/constants.js.map +1 -0
  77. package/dist/cliproxy/quota/quota-fetcher/http-client.d.ts +29 -0
  78. package/dist/cliproxy/quota/quota-fetcher/http-client.d.ts.map +1 -0
  79. package/dist/cliproxy/quota/quota-fetcher/http-client.js +199 -0
  80. package/dist/cliproxy/quota/quota-fetcher/http-client.js.map +1 -0
  81. package/dist/cliproxy/quota/quota-fetcher/project-lookup.d.ts +16 -0
  82. package/dist/cliproxy/quota/quota-fetcher/project-lookup.d.ts.map +1 -0
  83. package/dist/cliproxy/quota/quota-fetcher/project-lookup.js +89 -0
  84. package/dist/cliproxy/quota/quota-fetcher/project-lookup.js.map +1 -0
  85. package/dist/cliproxy/quota/quota-fetcher/status-classifier.d.ts +29 -0
  86. package/dist/cliproxy/quota/quota-fetcher/status-classifier.d.ts.map +1 -0
  87. package/dist/cliproxy/quota/quota-fetcher/status-classifier.js +168 -0
  88. package/dist/cliproxy/quota/quota-fetcher/status-classifier.js.map +1 -0
  89. package/dist/cliproxy/quota/quota-fetcher/types.d.ts +165 -0
  90. package/dist/cliproxy/quota/quota-fetcher/types.d.ts.map +1 -0
  91. package/dist/cliproxy/quota/quota-fetcher/types.js +9 -0
  92. package/dist/cliproxy/quota/quota-fetcher/types.js.map +1 -0
  93. package/dist/cliproxy/quota/quota-fetcher-claude.d.ts.map +1 -1
  94. package/dist/cliproxy/quota/quota-fetcher-claude.js +14 -3
  95. package/dist/cliproxy/quota/quota-fetcher-claude.js.map +1 -1
  96. package/dist/cliproxy/quota/quota-fetcher-codex.d.ts.map +1 -1
  97. package/dist/cliproxy/quota/quota-fetcher-codex.js +36 -9
  98. package/dist/cliproxy/quota/quota-fetcher-codex.js.map +1 -1
  99. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/auth-file-discovery.d.ts +26 -0
  100. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/auth-file-discovery.d.ts.map +1 -0
  101. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/auth-file-discovery.js +132 -0
  102. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/auth-file-discovery.js.map +1 -0
  103. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/bucket-building.d.ts +23 -0
  104. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/bucket-building.d.ts.map +1 -0
  105. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/bucket-building.js +54 -0
  106. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/bucket-building.js.map +1 -0
  107. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/constants.d.ts +26 -0
  108. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/constants.d.ts.map +1 -0
  109. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/constants.js +29 -0
  110. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/constants.js.map +1 -0
  111. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/error-parsing.d.ts +61 -0
  112. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/error-parsing.d.ts.map +1 -0
  113. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/error-parsing.js +259 -0
  114. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/error-parsing.js.map +1 -0
  115. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/index.d.ts +20 -0
  116. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/index.d.ts.map +1 -0
  117. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/index.js +38 -0
  118. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/index.js.map +1 -0
  119. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/managed-request.d.ts +82 -0
  120. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/managed-request.d.ts.map +1 -0
  121. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/managed-request.js +263 -0
  122. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/managed-request.js.map +1 -0
  123. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/quota-fetcher.d.ts +46 -0
  124. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/quota-fetcher.d.ts.map +1 -0
  125. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/quota-fetcher.js +188 -0
  126. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/quota-fetcher.js.map +1 -0
  127. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/shared-utils.d.ts +35 -0
  128. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/shared-utils.d.ts.map +1 -0
  129. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/shared-utils.js +65 -0
  130. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/shared-utils.js.map +1 -0
  131. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/supplementary-metadata.d.ts +37 -0
  132. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/supplementary-metadata.d.ts.map +1 -0
  133. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/supplementary-metadata.js +117 -0
  134. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/supplementary-metadata.js.map +1 -0
  135. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/token-parsing.d.ts +31 -0
  136. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/token-parsing.d.ts.map +1 -0
  137. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/token-parsing.js +77 -0
  138. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/token-parsing.js.map +1 -0
  139. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/types.d.ts +114 -0
  140. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/types.d.ts.map +1 -0
  141. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/types.js +10 -0
  142. package/dist/cliproxy/quota/quota-fetcher-gemini-cli/types.js.map +1 -0
  143. package/dist/cliproxy/quota/quota-fetcher-gemini-cli.d.ts +13 -58
  144. package/dist/cliproxy/quota/quota-fetcher-gemini-cli.d.ts.map +1 -1
  145. package/dist/cliproxy/quota/quota-fetcher-gemini-cli.js +20 -819
  146. package/dist/cliproxy/quota/quota-fetcher-gemini-cli.js.map +1 -1
  147. package/dist/cliproxy/quota/quota-fetcher-ghcp.d.ts.map +1 -1
  148. package/dist/cliproxy/quota/quota-fetcher-ghcp.js +19 -4
  149. package/dist/cliproxy/quota/quota-fetcher-ghcp.js.map +1 -1
  150. package/dist/cliproxy/quota/quota-fetcher.d.ts +12 -108
  151. package/dist/cliproxy/quota/quota-fetcher.d.ts.map +1 -1
  152. package/dist/cliproxy/quota/quota-fetcher.js +23 -766
  153. package/dist/cliproxy/quota/quota-fetcher.js.map +1 -1
  154. package/dist/cliproxy/routing/routing-strategy.d.ts.map +1 -1
  155. package/dist/cliproxy/routing/routing-strategy.js +11 -3
  156. package/dist/cliproxy/routing/routing-strategy.js.map +1 -1
  157. package/dist/commands/cliproxy/quota-subcommand/claude-window-helpers.d.ts +26 -0
  158. package/dist/commands/cliproxy/quota-subcommand/claude-window-helpers.d.ts.map +1 -0
  159. package/dist/commands/cliproxy/quota-subcommand/claude-window-helpers.js +82 -0
  160. package/dist/commands/cliproxy/quota-subcommand/claude-window-helpers.js.map +1 -0
  161. package/dist/commands/cliproxy/quota-subcommand/codex-window-helpers.d.ts +41 -0
  162. package/dist/commands/cliproxy/quota-subcommand/codex-window-helpers.d.ts.map +1 -0
  163. package/dist/commands/cliproxy/quota-subcommand/codex-window-helpers.js +202 -0
  164. package/dist/commands/cliproxy/quota-subcommand/codex-window-helpers.js.map +1 -0
  165. package/dist/commands/cliproxy/quota-subcommand/format-helpers.d.ts +32 -0
  166. package/dist/commands/cliproxy/quota-subcommand/format-helpers.d.ts.map +1 -0
  167. package/dist/commands/cliproxy/quota-subcommand/format-helpers.js +90 -0
  168. package/dist/commands/cliproxy/quota-subcommand/format-helpers.js.map +1 -0
  169. package/dist/commands/cliproxy/quota-subcommand/handlers.d.ts +25 -0
  170. package/dist/commands/cliproxy/quota-subcommand/handlers.d.ts.map +1 -0
  171. package/dist/commands/cliproxy/quota-subcommand/handlers.js +245 -0
  172. package/dist/commands/cliproxy/quota-subcommand/handlers.js.map +1 -0
  173. package/dist/commands/cliproxy/quota-subcommand/profile-args.d.ts +10 -0
  174. package/dist/commands/cliproxy/quota-subcommand/profile-args.d.ts.map +1 -0
  175. package/dist/commands/cliproxy/quota-subcommand/profile-args.js +37 -0
  176. package/dist/commands/cliproxy/quota-subcommand/profile-args.js.map +1 -0
  177. package/dist/commands/cliproxy/quota-subcommand/provider-runtime.d.ts +12 -0
  178. package/dist/commands/cliproxy/quota-subcommand/provider-runtime.d.ts.map +1 -0
  179. package/dist/commands/cliproxy/quota-subcommand/provider-runtime.js +64 -0
  180. package/dist/commands/cliproxy/quota-subcommand/provider-runtime.js.map +1 -0
  181. package/dist/commands/cliproxy/quota-subcommand/quota-failure-display.d.ts +27 -0
  182. package/dist/commands/cliproxy/quota-subcommand/quota-failure-display.d.ts.map +1 -0
  183. package/dist/commands/cliproxy/quota-subcommand/quota-failure-display.js +74 -0
  184. package/dist/commands/cliproxy/quota-subcommand/quota-failure-display.js.map +1 -0
  185. package/dist/commands/cliproxy/quota-subcommand/sections/antigravity.d.ts +10 -0
  186. package/dist/commands/cliproxy/quota-subcommand/sections/antigravity.d.ts.map +1 -0
  187. package/dist/commands/cliproxy/quota-subcommand/sections/antigravity.js +46 -0
  188. package/dist/commands/cliproxy/quota-subcommand/sections/antigravity.js.map +1 -0
  189. package/dist/commands/cliproxy/quota-subcommand/sections/claude.d.ts +14 -0
  190. package/dist/commands/cliproxy/quota-subcommand/sections/claude.d.ts.map +1 -0
  191. package/dist/commands/cliproxy/quota-subcommand/sections/claude.js +68 -0
  192. package/dist/commands/cliproxy/quota-subcommand/sections/claude.js.map +1 -0
  193. package/dist/commands/cliproxy/quota-subcommand/sections/codex.d.ts +14 -0
  194. package/dist/commands/cliproxy/quota-subcommand/sections/codex.d.ts.map +1 -0
  195. package/dist/commands/cliproxy/quota-subcommand/sections/codex.js +82 -0
  196. package/dist/commands/cliproxy/quota-subcommand/sections/codex.js.map +1 -0
  197. package/dist/commands/cliproxy/quota-subcommand/sections/gemini-cli.d.ts +14 -0
  198. package/dist/commands/cliproxy/quota-subcommand/sections/gemini-cli.d.ts.map +1 -0
  199. package/dist/commands/cliproxy/quota-subcommand/sections/gemini-cli.js +61 -0
  200. package/dist/commands/cliproxy/quota-subcommand/sections/gemini-cli.js.map +1 -0
  201. package/dist/commands/cliproxy/quota-subcommand/sections/ghcp.d.ts +13 -0
  202. package/dist/commands/cliproxy/quota-subcommand/sections/ghcp.d.ts.map +1 -0
  203. package/dist/commands/cliproxy/quota-subcommand/sections/ghcp.js +63 -0
  204. package/dist/commands/cliproxy/quota-subcommand/sections/ghcp.js.map +1 -0
  205. package/dist/commands/cliproxy/quota-subcommand/test-exports.d.ts +19 -0
  206. package/dist/commands/cliproxy/quota-subcommand/test-exports.d.ts.map +1 -0
  207. package/dist/commands/cliproxy/quota-subcommand/test-exports.js +22 -0
  208. package/dist/commands/cliproxy/quota-subcommand/test-exports.js.map +1 -0
  209. package/dist/commands/cliproxy/quota-subcommand/types.d.ts +42 -0
  210. package/dist/commands/cliproxy/quota-subcommand/types.d.ts.map +1 -0
  211. package/dist/commands/cliproxy/quota-subcommand/types.js +9 -0
  212. package/dist/commands/cliproxy/quota-subcommand/types.js.map +1 -0
  213. package/dist/commands/cliproxy/quota-subcommand.d.ts +14 -36
  214. package/dist/commands/cliproxy/quota-subcommand.d.ts.map +1 -1
  215. package/dist/commands/cliproxy/quota-subcommand.js +21 -872
  216. package/dist/commands/cliproxy/quota-subcommand.js.map +1 -1
  217. package/dist/commands/persist-command/arg-parsing.d.ts +14 -0
  218. package/dist/commands/persist-command/arg-parsing.d.ts.map +1 -0
  219. package/dist/commands/persist-command/arg-parsing.js +84 -0
  220. package/dist/commands/persist-command/arg-parsing.js.map +1 -0
  221. package/dist/commands/persist-command/backup-rotation.d.ts +23 -0
  222. package/dist/commands/persist-command/backup-rotation.d.ts.map +1 -0
  223. package/dist/commands/persist-command/backup-rotation.js +260 -0
  224. package/dist/commands/persist-command/backup-rotation.js.map +1 -0
  225. package/dist/commands/persist-command/handler.d.ts +10 -0
  226. package/dist/commands/persist-command/handler.d.ts.map +1 -0
  227. package/dist/commands/persist-command/handler.js +267 -0
  228. package/dist/commands/persist-command/handler.js.map +1 -0
  229. package/dist/commands/persist-command/help.d.ts +9 -0
  230. package/dist/commands/persist-command/help.d.ts.map +1 -0
  231. package/dist/commands/persist-command/help.js +86 -0
  232. package/dist/commands/persist-command/help.js.map +1 -0
  233. package/dist/commands/persist-command/receipt.d.ts +13 -0
  234. package/dist/commands/persist-command/receipt.d.ts.map +1 -0
  235. package/dist/commands/persist-command/receipt.js +102 -0
  236. package/dist/commands/persist-command/receipt.js.map +1 -0
  237. package/dist/commands/persist-command/secret-detection.d.ts +11 -0
  238. package/dist/commands/persist-command/secret-detection.d.ts.map +1 -0
  239. package/dist/commands/persist-command/secret-detection.js +54 -0
  240. package/dist/commands/persist-command/secret-detection.js.map +1 -0
  241. package/dist/commands/persist-command/secure-file.d.ts +21 -0
  242. package/dist/commands/persist-command/secure-file.d.ts.map +1 -0
  243. package/dist/commands/persist-command/secure-file.js +231 -0
  244. package/dist/commands/persist-command/secure-file.js.map +1 -0
  245. package/dist/commands/persist-command/types.d.ts +42 -0
  246. package/dist/commands/persist-command/types.d.ts.map +1 -0
  247. package/dist/commands/persist-command/types.js +34 -0
  248. package/dist/commands/persist-command/types.js.map +1 -0
  249. package/dist/commands/persist-command.d.ts +7 -2
  250. package/dist/commands/persist-command.d.ts.map +1 -1
  251. package/dist/commands/persist-command.js +17 -933
  252. package/dist/commands/persist-command.js.map +1 -1
  253. package/dist/copilot/copilot-executor.js +25 -25
  254. package/dist/copilot/copilot-executor.js.map +1 -1
  255. package/dist/cursor/cursor-daemon-entry.d.ts.map +1 -1
  256. package/dist/cursor/cursor-daemon-entry.js +34 -9
  257. package/dist/cursor/cursor-daemon-entry.js.map +1 -1
  258. package/dist/cursor/cursor-daemon.d.ts.map +1 -1
  259. package/dist/cursor/cursor-daemon.js +1 -0
  260. package/dist/cursor/cursor-daemon.js.map +1 -1
  261. package/dist/cursor/cursor-profile-executor.d.ts.map +1 -1
  262. package/dist/cursor/cursor-profile-executor.js +18 -17
  263. package/dist/cursor/cursor-profile-executor.js.map +1 -1
  264. package/dist/delegation/delegation-handler.d.ts.map +1 -1
  265. package/dist/delegation/delegation-handler.js +29 -23
  266. package/dist/delegation/delegation-handler.js.map +1 -1
  267. package/dist/delegation/headless-executor.d.ts +1 -0
  268. package/dist/delegation/headless-executor.d.ts.map +1 -1
  269. package/dist/delegation/headless-executor.js +35 -14
  270. package/dist/delegation/headless-executor.js.map +1 -1
  271. package/dist/delegation/session-manager.d.ts.map +1 -1
  272. package/dist/delegation/session-manager.js +12 -4
  273. package/dist/delegation/session-manager.js.map +1 -1
  274. package/dist/dispatcher/cli-argument-parser.d.ts +1 -1
  275. package/dist/dispatcher/cli-argument-parser.d.ts.map +1 -1
  276. package/dist/dispatcher/cli-argument-parser.js +24 -23
  277. package/dist/dispatcher/cli-argument-parser.js.map +1 -1
  278. package/dist/dispatcher/flows/cliproxy-flow.d.ts.map +1 -1
  279. package/dist/dispatcher/flows/cliproxy-flow.js +12 -11
  280. package/dist/dispatcher/flows/cliproxy-flow.js.map +1 -1
  281. package/dist/dispatcher/flows/settings-flow.d.ts.map +1 -1
  282. package/dist/dispatcher/flows/settings-flow.js +27 -27
  283. package/dist/dispatcher/flows/settings-flow.js.map +1 -1
  284. package/dist/dispatcher/profile-resolver.d.ts.map +1 -1
  285. package/dist/dispatcher/profile-resolver.js +16 -16
  286. package/dist/dispatcher/profile-resolver.js.map +1 -1
  287. package/dist/docker/supervisord-lifecycle.d.ts.map +1 -1
  288. package/dist/docker/supervisord-lifecycle.js +5 -1
  289. package/dist/docker/supervisord-lifecycle.js.map +1 -1
  290. package/dist/errors/error-types.d.ts +26 -22
  291. package/dist/errors/error-types.d.ts.map +1 -1
  292. package/dist/errors/error-types.js +15 -12
  293. package/dist/errors/error-types.js.map +1 -1
  294. package/dist/errors/exit-codes.d.ts +20 -13
  295. package/dist/errors/exit-codes.d.ts.map +1 -1
  296. package/dist/errors/exit-codes.js +32 -28
  297. package/dist/errors/exit-codes.js.map +1 -1
  298. package/dist/glmt/delta-accumulator.d.ts +1 -0
  299. package/dist/glmt/delta-accumulator.d.ts.map +1 -1
  300. package/dist/glmt/delta-accumulator.js +12 -4
  301. package/dist/glmt/delta-accumulator.js.map +1 -1
  302. package/dist/glmt/glmt-proxy.d.ts.map +1 -1
  303. package/dist/glmt/glmt-proxy.js +39 -10
  304. package/dist/glmt/glmt-proxy.js.map +1 -1
  305. package/dist/glmt/glmt-transformer.d.ts.map +1 -1
  306. package/dist/glmt/glmt-transformer.js +1 -4
  307. package/dist/glmt/glmt-transformer.js.map +1 -1
  308. package/dist/glmt/pipeline/request-transformer.d.ts.map +1 -1
  309. package/dist/glmt/pipeline/request-transformer.js +5 -1
  310. package/dist/glmt/pipeline/request-transformer.js.map +1 -1
  311. package/dist/glmt/pipeline/response-builder.d.ts.map +1 -1
  312. package/dist/glmt/pipeline/response-builder.js +7 -3
  313. package/dist/glmt/pipeline/response-builder.js.map +1 -1
  314. package/dist/glmt/pipeline/stream-parser.d.ts.map +1 -1
  315. package/dist/glmt/pipeline/stream-parser.js +11 -5
  316. package/dist/glmt/pipeline/stream-parser.js.map +1 -1
  317. package/dist/glmt/pipeline/tool-call-handler.d.ts.map +1 -1
  318. package/dist/glmt/pipeline/tool-call-handler.js +7 -1
  319. package/dist/glmt/pipeline/tool-call-handler.js.map +1 -1
  320. package/dist/glmt/sse-parser.d.ts +1 -0
  321. package/dist/glmt/sse-parser.d.ts.map +1 -1
  322. package/dist/glmt/sse-parser.js +7 -3
  323. package/dist/glmt/sse-parser.js.map +1 -1
  324. package/dist/management/shared-manager/fs-helpers.d.ts +69 -0
  325. package/dist/management/shared-manager/fs-helpers.d.ts.map +1 -0
  326. package/dist/management/shared-manager/fs-helpers.js +241 -0
  327. package/dist/management/shared-manager/fs-helpers.js.map +1 -0
  328. package/dist/management/shared-manager/migrations.d.ts +21 -0
  329. package/dist/management/shared-manager/migrations.d.ts.map +1 -0
  330. package/dist/management/shared-manager/migrations.js +187 -0
  331. package/dist/management/shared-manager/migrations.js.map +1 -0
  332. package/dist/management/shared-manager/orchestrator.d.ts +87 -0
  333. package/dist/management/shared-manager/orchestrator.d.ts.map +1 -0
  334. package/dist/management/shared-manager/orchestrator.js +161 -0
  335. package/dist/management/shared-manager/orchestrator.js.map +1 -0
  336. package/dist/management/shared-manager/plugin-layout-internals.d.ts +42 -0
  337. package/dist/management/shared-manager/plugin-layout-internals.d.ts.map +1 -0
  338. package/dist/management/shared-manager/plugin-layout-internals.js +192 -0
  339. package/dist/management/shared-manager/plugin-layout-internals.js.map +1 -0
  340. package/dist/management/shared-manager/plugin-metadata-normalizer.d.ts +53 -0
  341. package/dist/management/shared-manager/plugin-metadata-normalizer.d.ts.map +1 -0
  342. package/dist/management/shared-manager/plugin-metadata-normalizer.js +253 -0
  343. package/dist/management/shared-manager/plugin-metadata-normalizer.js.map +1 -0
  344. package/dist/management/shared-manager/project-context-sync.d.ts +36 -0
  345. package/dist/management/shared-manager/project-context-sync.d.ts.map +1 -0
  346. package/dist/management/shared-manager/project-context-sync.js +204 -0
  347. package/dist/management/shared-manager/project-context-sync.js.map +1 -0
  348. package/dist/management/shared-manager/project-memory-sync.d.ts +21 -0
  349. package/dist/management/shared-manager/project-memory-sync.d.ts.map +1 -0
  350. package/dist/management/shared-manager/project-memory-sync.js +113 -0
  351. package/dist/management/shared-manager/project-memory-sync.js.map +1 -0
  352. package/dist/management/shared-manager/shared-dir-linker.d.ts +41 -0
  353. package/dist/management/shared-manager/shared-dir-linker.d.ts.map +1 -0
  354. package/dist/management/shared-manager/shared-dir-linker.js +227 -0
  355. package/dist/management/shared-manager/shared-dir-linker.js.map +1 -0
  356. package/dist/management/shared-manager/symlink-helpers.d.ts +61 -0
  357. package/dist/management/shared-manager/symlink-helpers.d.ts.map +1 -0
  358. package/dist/management/shared-manager/symlink-helpers.js +243 -0
  359. package/dist/management/shared-manager/symlink-helpers.js.map +1 -0
  360. package/dist/management/shared-manager/types.d.ts +45 -0
  361. package/dist/management/shared-manager/types.d.ts.map +1 -0
  362. package/dist/management/shared-manager/types.js +57 -0
  363. package/dist/management/shared-manager/types.js.map +1 -0
  364. package/dist/management/shared-manager.d.ts +13 -160
  365. package/dist/management/shared-manager.d.ts.map +1 -1
  366. package/dist/management/shared-manager.js +18 -1294
  367. package/dist/management/shared-manager.js.map +1 -1
  368. package/dist/proxy/proxy-daemon-entry.js +1 -1
  369. package/dist/proxy/proxy-daemon-entry.js.map +1 -1
  370. package/dist/proxy/transformers/sse-stream-transformer.d.ts.map +1 -1
  371. package/dist/proxy/transformers/sse-stream-transformer.js +12 -17
  372. package/dist/proxy/transformers/sse-stream-transformer.js.map +1 -1
  373. package/dist/services/logging/index.d.ts +1 -1
  374. package/dist/services/logging/index.d.ts.map +1 -1
  375. package/dist/services/logging/index.js +6 -1
  376. package/dist/services/logging/index.js.map +1 -1
  377. package/dist/services/logging/log-context.d.ts +27 -2
  378. package/dist/services/logging/log-context.d.ts.map +1 -1
  379. package/dist/services/logging/log-context.js +43 -4
  380. package/dist/services/logging/log-context.js.map +1 -1
  381. package/dist/services/logging/log-redaction.d.ts +9 -0
  382. package/dist/services/logging/log-redaction.d.ts.map +1 -1
  383. package/dist/services/logging/log-redaction.js +31 -3
  384. package/dist/services/logging/log-redaction.js.map +1 -1
  385. package/dist/services/logging/logger.js +2 -2
  386. package/dist/services/logging/logger.js.map +1 -1
  387. package/dist/targets/codex-adapter.d.ts.map +1 -1
  388. package/dist/targets/codex-adapter.js +11 -10
  389. package/dist/targets/codex-adapter.js.map +1 -1
  390. package/dist/targets/droid-adapter.d.ts.map +1 -1
  391. package/dist/targets/droid-adapter.js +12 -12
  392. package/dist/targets/droid-adapter.js.map +1 -1
  393. package/dist/utils/image-analysis/mcp-installer.d.ts.map +1 -1
  394. package/dist/utils/image-analysis/mcp-installer.js +16 -13
  395. package/dist/utils/image-analysis/mcp-installer.js.map +1 -1
  396. package/dist/utils/websearch/mcp-installer.d.ts.map +1 -1
  397. package/dist/utils/websearch/mcp-installer.js +14 -12
  398. package/dist/utils/websearch/mcp-installer.js.map +1 -1
  399. package/dist/web-server/middleware/request-logging-middleware.d.ts.map +1 -1
  400. package/dist/web-server/middleware/request-logging-middleware.js +14 -9
  401. package/dist/web-server/middleware/request-logging-middleware.js.map +1 -1
  402. package/dist/web-server/routes/bar-routes.d.ts.map +1 -1
  403. package/dist/web-server/routes/bar-routes.js +11 -2
  404. package/dist/web-server/routes/bar-routes.js.map +1 -1
  405. package/dist/web-server/routes/claude-extension-routes.d.ts.map +1 -1
  406. package/dist/web-server/routes/claude-extension-routes.js +3 -2
  407. package/dist/web-server/routes/claude-extension-routes.js.map +1 -1
  408. package/dist/web-server/routes/cliproxy-auth-routes.d.ts.map +1 -1
  409. package/dist/web-server/routes/cliproxy-auth-routes.js +6 -4
  410. package/dist/web-server/routes/cliproxy-auth-routes.js.map +1 -1
  411. package/dist/web-server/routes/cliproxy-stats-routes/config-routes.d.ts +16 -0
  412. package/dist/web-server/routes/cliproxy-stats-routes/config-routes.d.ts.map +1 -0
  413. package/dist/web-server/routes/cliproxy-stats-routes/config-routes.js +219 -0
  414. package/dist/web-server/routes/cliproxy-stats-routes/config-routes.js.map +1 -0
  415. package/dist/web-server/routes/cliproxy-stats-routes/error-log-routes.d.ts +12 -0
  416. package/dist/web-server/routes/cliproxy-stats-routes/error-log-routes.d.ts.map +1 -0
  417. package/dist/web-server/routes/cliproxy-stats-routes/error-log-routes.js +153 -0
  418. package/dist/web-server/routes/cliproxy-stats-routes/error-log-routes.js.map +1 -0
  419. package/dist/web-server/routes/cliproxy-stats-routes/quota-helpers.d.ts +19 -0
  420. package/dist/web-server/routes/cliproxy-stats-routes/quota-helpers.d.ts.map +1 -0
  421. package/dist/web-server/routes/cliproxy-stats-routes/quota-helpers.js +38 -0
  422. package/dist/web-server/routes/cliproxy-stats-routes/quota-helpers.js.map +1 -0
  423. package/dist/web-server/routes/cliproxy-stats-routes/quota-routes.d.ts +13 -0
  424. package/dist/web-server/routes/cliproxy-stats-routes/quota-routes.d.ts.map +1 -0
  425. package/dist/web-server/routes/cliproxy-stats-routes/quota-routes.js +195 -0
  426. package/dist/web-server/routes/cliproxy-stats-routes/quota-routes.js.map +1 -0
  427. package/dist/web-server/routes/cliproxy-stats-routes/restart-route.d.ts +17 -0
  428. package/dist/web-server/routes/cliproxy-stats-routes/restart-route.d.ts.map +1 -0
  429. package/dist/web-server/routes/cliproxy-stats-routes/restart-route.js +34 -0
  430. package/dist/web-server/routes/cliproxy-stats-routes/restart-route.js.map +1 -0
  431. package/dist/web-server/routes/cliproxy-stats-routes/router.d.ts +10 -0
  432. package/dist/web-server/routes/cliproxy-stats-routes/router.d.ts.map +1 -0
  433. package/dist/web-server/routes/cliproxy-stats-routes/router.js +245 -0
  434. package/dist/web-server/routes/cliproxy-stats-routes/router.js.map +1 -0
  435. package/dist/web-server/routes/cliproxy-stats-routes/shared.d.ts +35 -0
  436. package/dist/web-server/routes/cliproxy-stats-routes/shared.d.ts.map +1 -0
  437. package/dist/web-server/routes/cliproxy-stats-routes/shared.js +59 -0
  438. package/dist/web-server/routes/cliproxy-stats-routes/shared.js.map +1 -0
  439. package/dist/web-server/routes/cliproxy-stats-routes/version-helpers.d.ts +44 -0
  440. package/dist/web-server/routes/cliproxy-stats-routes/version-helpers.d.ts.map +1 -0
  441. package/dist/web-server/routes/cliproxy-stats-routes/version-helpers.js +66 -0
  442. package/dist/web-server/routes/cliproxy-stats-routes/version-helpers.js.map +1 -0
  443. package/dist/web-server/routes/cliproxy-stats-routes.d.ts +16 -57
  444. package/dist/web-server/routes/cliproxy-stats-routes.d.ts.map +1 -1
  445. package/dist/web-server/routes/cliproxy-stats-routes.js +25 -926
  446. package/dist/web-server/routes/cliproxy-stats-routes.js.map +1 -1
  447. package/dist/web-server/routes/cliproxy-sync-routes.d.ts.map +1 -1
  448. package/dist/web-server/routes/cliproxy-sync-routes.js +9 -2
  449. package/dist/web-server/routes/cliproxy-sync-routes.js.map +1 -1
  450. package/dist/web-server/routes/copilot-settings-routes.d.ts.map +1 -1
  451. package/dist/web-server/routes/copilot-settings-routes.js +2 -1
  452. package/dist/web-server/routes/copilot-settings-routes.js.map +1 -1
  453. package/dist/web-server/routes/image-analysis-routes.d.ts.map +1 -1
  454. package/dist/web-server/routes/image-analysis-routes.js +2 -1
  455. package/dist/web-server/routes/image-analysis-routes.js.map +1 -1
  456. package/dist/web-server/routes/persist-routes.d.ts.map +1 -1
  457. package/dist/web-server/routes/persist-routes.js +8 -1
  458. package/dist/web-server/routes/persist-routes.js.map +1 -1
  459. package/dist/web-server/routes/proxy-routes.d.ts.map +1 -1
  460. package/dist/web-server/routes/proxy-routes.js +33 -5
  461. package/dist/web-server/routes/proxy-routes.js.map +1 -1
  462. package/dist/web-server/routes/route-helpers.d.ts.map +1 -1
  463. package/dist/web-server/routes/route-helpers.js +10 -6
  464. package/dist/web-server/routes/route-helpers.js.map +1 -1
  465. package/dist/web-server/routes/settings-routes.d.ts.map +1 -1
  466. package/dist/web-server/routes/settings-routes.js +7 -6
  467. package/dist/web-server/routes/settings-routes.js.map +1 -1
  468. package/dist/web-server/usage/aggregator.d.ts.map +1 -1
  469. package/dist/web-server/usage/aggregator.js +8 -8
  470. package/dist/web-server/usage/aggregator.js.map +1 -1
  471. package/dist/web-server/usage/handlers.d.ts.map +1 -1
  472. package/dist/web-server/usage/handlers.js +1 -1
  473. package/dist/web-server/usage/handlers.js.map +1 -1
  474. package/package.json +1 -1
  475. package/scripts/ci-parity-gate.sh +31 -0
  476. package/scripts/generate-throw-error-baseline.js +103 -0
  477. package/scripts/hardening-inventory.js +62 -4
  478. package/scripts/maintainability-metrics.js +356 -0
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ /**
3
+ * Generic formatting helpers for quota CLI output.
4
+ *
5
+ * These helpers are pure (no I/O, no side effects) so they can be unit tested
6
+ * in isolation and reused across provider sections.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.dim = exports.color = exports.resolveDisplayedTier = exports.formatCliAccountLabel = exports.formatAbsoluteResetTime = exports.formatResetTimeISO = exports.formatResetTime = exports.formatQuotaBar = void 0;
10
+ const email_account_identity_1 = require("../../../cliproxy/accounts/email-account-identity");
11
+ const ui_1 = require("../../../utils/ui");
12
+ Object.defineProperty(exports, "color", { enumerable: true, get: function () { return ui_1.color; } });
13
+ Object.defineProperty(exports, "dim", { enumerable: true, get: function () { return ui_1.dim; } });
14
+ /** Render a 20-char wide ASCII quota bar for the given percentage. */
15
+ function formatQuotaBar(percentage) {
16
+ const width = 20;
17
+ const clampedPct = Math.max(0, Math.min(100, percentage));
18
+ const filled = Math.round((clampedPct / 100) * width);
19
+ const empty = width - filled;
20
+ const filledChar = clampedPct > 50 ? '█' : clampedPct > 10 ? '▓' : '░';
21
+ return `[${filledChar.repeat(filled)}${' '.repeat(empty)}]`;
22
+ }
23
+ exports.formatQuotaBar = formatQuotaBar;
24
+ /** Render a human-readable relative reset time from a seconds offset. */
25
+ function formatResetTime(seconds) {
26
+ if (seconds <= 0)
27
+ return 'now';
28
+ if (seconds < 60)
29
+ return `in ${seconds}s`;
30
+ if (seconds < 3600)
31
+ return `in ${Math.round(seconds / 60)}m`;
32
+ if (seconds < 86400)
33
+ return `in ${Math.round(seconds / 3600)}h`;
34
+ const days = Math.floor(seconds / 86400);
35
+ const hours = Math.round((seconds % 86400) / 3600);
36
+ if (hours <= 0)
37
+ return `in ${days}d`;
38
+ if (hours >= 24)
39
+ return `in ${days + 1}d`;
40
+ return `in ${days}d ${hours}h`;
41
+ }
42
+ exports.formatResetTime = formatResetTime;
43
+ /** Render a relative reset time from an ISO timestamp. Returns 'unknown' if invalid. */
44
+ function formatResetTimeISO(isoTime) {
45
+ if (!isoTime)
46
+ return 'unknown';
47
+ const resetDate = new Date(isoTime);
48
+ if (isNaN(resetDate.getTime()))
49
+ return 'unknown';
50
+ const seconds = Math.max(0, Math.round((resetDate.getTime() - Date.now()) / 1000));
51
+ return formatResetTime(seconds);
52
+ }
53
+ exports.formatResetTimeISO = formatResetTimeISO;
54
+ /** Render an absolute reset time (MM/DD HH:MM) from ISO, or null if invalid. */
55
+ function formatAbsoluteResetTime(isoTime) {
56
+ if (!isoTime)
57
+ return null;
58
+ const resetDate = new Date(isoTime);
59
+ if (isNaN(resetDate.getTime()))
60
+ return null;
61
+ const date = resetDate.toLocaleDateString(undefined, {
62
+ month: '2-digit',
63
+ day: '2-digit',
64
+ });
65
+ const time = resetDate.toLocaleTimeString(undefined, {
66
+ hour: '2-digit',
67
+ minute: '2-digit',
68
+ });
69
+ return `${date} ${time}`;
70
+ }
71
+ exports.formatAbsoluteResetTime = formatAbsoluteResetTime;
72
+ /**
73
+ * Display label for an account: shows nickname + canonical email-style label
74
+ * when a nickname is present, otherwise just the canonical label.
75
+ */
76
+ function formatCliAccountLabel(account) {
77
+ const displayName = (0, email_account_identity_1.formatAccountDisplayName)(account);
78
+ return account.nickname ? `${account.nickname} (${displayName})` : displayName;
79
+ }
80
+ exports.formatCliAccountLabel = formatCliAccountLabel;
81
+ /**
82
+ * Pick the tier to display for an account. A live (freshly fetched) tier wins
83
+ * over a stale account-config tier unless the live tier is 'unknown'. Returns
84
+ * 'unknown' when neither source provides a value.
85
+ */
86
+ function resolveDisplayedTier(accountTier, liveTier) {
87
+ return (liveTier && liveTier !== 'unknown' ? liveTier : accountTier) || 'unknown';
88
+ }
89
+ exports.resolveDisplayedTier = resolveDisplayedTier;
90
+ //# sourceMappingURL=format-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format-helpers.js","sourceRoot":"","sources":["../../../../src/commands/cliproxy/quota-subcommand/format-helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Quota CLI subcommand handlers.
3
+ *
4
+ * Public entry points consumed by src/commands/cliproxy/index.ts:
5
+ * - handleQuotaStatus (`ccs cliproxy quota`)
6
+ * - handleDoctor (`ccs cliproxy doctor` / `diag`)
7
+ * - handleSetDefault (`ccs cliproxy default <account>`)
8
+ * - handlePauseAccount (`ccs cliproxy pause <account>`)
9
+ * - handleResumeAccount (`ccs cliproxy resume <account>`)
10
+ *
11
+ * Behavior is preserved verbatim from the original god file; only the
12
+ * module boundaries changed.
13
+ */
14
+ import { type QuotaSupportedProvider } from '../../../cliproxy/provider-capabilities';
15
+ /** `ccs cliproxy quota [--provider <name>]` */
16
+ export declare function handleQuotaStatus(verbose?: boolean, providerFilter?: QuotaSupportedProvider | 'all'): Promise<void>;
17
+ /** `ccs cliproxy doctor` (alias: `diag`) - Antigravity diagnostics. */
18
+ export declare function handleDoctor(verbose?: boolean): Promise<void>;
19
+ /** `ccs cliproxy default <account> [--provider <provider>]` */
20
+ export declare function handleSetDefault(args: string[]): Promise<void>;
21
+ /** `ccs cliproxy pause <account> [--provider <provider>]` */
22
+ export declare function handlePauseAccount(args: string[]): Promise<void>;
23
+ /** `ccs cliproxy resume <account> [--provider <provider>]` */
24
+ export declare function handleResumeAccount(args: string[]): Promise<void>;
25
+ //# sourceMappingURL=handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../../src/commands/cliproxy/quota-subcommand/handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAUH,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,yCAAyC,CAAC;AASjD,+CAA+C;AAC/C,wBAAsB,iBAAiB,CACrC,OAAO,UAAQ,EACf,cAAc,GAAE,sBAAsB,GAAG,KAAa,GACrD,OAAO,CAAC,IAAI,CAAC,CAkDf;AAED,uEAAuE;AACvE,wBAAsB,YAAY,CAAC,OAAO,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAwFjE;AAED,+DAA+D;AAC/D,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA0CpE;AAED,6DAA6D;AAC7D,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuCtE;AAED,8DAA8D;AAC9D,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiCvE"}
@@ -0,0 +1,245 @@
1
+ "use strict";
2
+ /**
3
+ * Quota CLI subcommand handlers.
4
+ *
5
+ * Public entry points consumed by src/commands/cliproxy/index.ts:
6
+ * - handleQuotaStatus (`ccs cliproxy quota`)
7
+ * - handleDoctor (`ccs cliproxy doctor` / `diag`)
8
+ * - handleSetDefault (`ccs cliproxy default <account>`)
9
+ * - handlePauseAccount (`ccs cliproxy pause <account>`)
10
+ * - handleResumeAccount (`ccs cliproxy resume <account>`)
11
+ *
12
+ * Behavior is preserved verbatim from the original god file; only the
13
+ * module boundaries changed.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.handleResumeAccount = exports.handlePauseAccount = exports.handleSetDefault = exports.handleDoctor = exports.handleQuotaStatus = void 0;
17
+ const account_manager_1 = require("../../../cliproxy/accounts/account-manager");
18
+ const provider_capabilities_1 = require("../../../cliproxy/provider-capabilities");
19
+ const quota_fetcher_1 = require("../../../cliproxy/quota/quota-fetcher");
20
+ const ui_1 = require("../../../utils/ui");
21
+ const pool_state_renderer_1 = require("../pool-state-renderer");
22
+ const quota_failure_display_1 = require("./quota-failure-display");
23
+ const format_helpers_1 = require("./format-helpers");
24
+ const profile_args_1 = require("./profile-args");
25
+ const provider_runtime_1 = require("./provider-runtime");
26
+ /** `ccs cliproxy quota [--provider <name>]` */
27
+ async function handleQuotaStatus(verbose = false, providerFilter = 'all') {
28
+ await (0, ui_1.initUI)();
29
+ console.log((0, ui_1.header)('Quota Status'));
30
+ console.log('');
31
+ const requestedProviders = new Set(providerFilter === 'all' ? provider_capabilities_1.QUOTA_SUPPORTED_PROVIDER_IDS : [providerFilter]);
32
+ const shouldFetch = (provider) => requestedProviders.has(provider);
33
+ console.log((0, ui_1.dim)('Fetching quotas...'));
34
+ const providerResults = new Map(await Promise.all(provider_capabilities_1.QUOTA_SUPPORTED_PROVIDER_IDS.map(async (provider) => {
35
+ if (!shouldFetch(provider)) {
36
+ return [provider, null];
37
+ }
38
+ return [provider, await provider_runtime_1.QUOTA_PROVIDER_RUNTIME[provider].fetch(verbose)];
39
+ })));
40
+ console.log('');
41
+ // Pool routing settings are global to the CLIProxy config; read once.
42
+ const poolSettings = (0, pool_state_renderer_1.readPoolRoutingSettings)();
43
+ for (const provider of provider_capabilities_1.QUOTA_SUPPORTED_PROVIDER_IDS) {
44
+ if (!shouldFetch(provider)) {
45
+ continue;
46
+ }
47
+ const runtime = provider_runtime_1.QUOTA_PROVIDER_RUNTIME[provider];
48
+ const result = providerResults.get(provider) ?? null;
49
+ if (result !== null && runtime.hasData(result)) {
50
+ runtime.render(result);
51
+ // Pool context: drain order + per-account state (available/cooling/paused).
52
+ // QuotaSupportedProvider ids are all valid CLIProxyProvider values.
53
+ // Async: folds in live in-proxy 429 cooldowns when pool routing is on.
54
+ await (0, pool_state_renderer_1.renderProviderPoolSection)(provider, poolSettings);
55
+ continue;
56
+ }
57
+ console.log((0, ui_1.subheader)(runtime.emptyTitle));
58
+ console.log((0, ui_1.info)(runtime.emptyMessage));
59
+ console.log(` Run: ${(0, ui_1.color)(runtime.authCommand, 'command')} to authenticate`);
60
+ console.log('');
61
+ }
62
+ }
63
+ exports.handleQuotaStatus = handleQuotaStatus;
64
+ /** `ccs cliproxy doctor` (alias: `diag`) - Antigravity diagnostics. */
65
+ async function handleDoctor(verbose = false) {
66
+ await (0, ui_1.initUI)();
67
+ console.log((0, ui_1.header)('CLIProxy Quota Diagnostics'));
68
+ console.log('');
69
+ const provider = 'agy';
70
+ const accounts = (0, account_manager_1.getProviderAccounts)(provider);
71
+ if (accounts.length === 0) {
72
+ console.log((0, ui_1.info)('No Antigravity accounts configured'));
73
+ console.log(` Run: ${(0, ui_1.color)('ccs agy --auth', 'command')} to authenticate`);
74
+ return;
75
+ }
76
+ console.log((0, ui_1.subheader)(`Antigravity Accounts (${accounts.length})`));
77
+ console.log('');
78
+ console.log((0, ui_1.dim)('Fetching quotas...'));
79
+ const quotaResult = await (0, quota_fetcher_1.fetchAllProviderQuotas)(provider, verbose);
80
+ for (const { account, quota } of quotaResult.accounts) {
81
+ const accountLabel = (0, format_helpers_1.formatCliAccountLabel)(account);
82
+ const defaultBadge = account.isDefault ? (0, ui_1.color)(' (default)', 'info') : '';
83
+ if (!quota.success) {
84
+ console.log(` ${(0, ui_1.fail)(accountLabel)}${defaultBadge}`);
85
+ (0, quota_failure_display_1.displayQuotaFailure)(quota);
86
+ if (quota.isUnprovisioned) {
87
+ console.log(` ${(0, ui_1.warn)('Account not provisioned - open Gemini Code Assist in IDE first')}`);
88
+ }
89
+ console.log('');
90
+ continue;
91
+ }
92
+ const avgQuota = quota.models.length > 0
93
+ ? quota.models.reduce((sum, m) => sum + m.percentage, 0) / quota.models.length
94
+ : 0;
95
+ const statusIcon = avgQuota > 50 ? (0, ui_1.ok)('') : avgQuota > 10 ? (0, ui_1.warn)('') : (0, ui_1.fail)('');
96
+ console.log(` ${statusIcon}${accountLabel}${defaultBadge}`);
97
+ if (quota.projectId) {
98
+ console.log(` Project: ${(0, ui_1.dim)(quota.projectId)}`);
99
+ }
100
+ for (const model of quota.models) {
101
+ const bar = (0, format_helpers_1.formatQuotaBar)(model.percentage);
102
+ console.log(` ${model.name.padEnd(20)} ${bar} ${model.percentage.toFixed(0)}%`);
103
+ }
104
+ console.log('');
105
+ }
106
+ const sharedProjects = Object.entries(quotaResult.projectGroups).filter(([, accountIds]) => accountIds.length > 1);
107
+ if (sharedProjects.length > 0) {
108
+ console.log('');
109
+ console.log((0, ui_1.subheader)('Shared Project Warning'));
110
+ console.log('');
111
+ for (const [projectId, accountIds] of sharedProjects) {
112
+ console.log((0, ui_1.fail)(`Project ${projectId.substring(0, 20)}... shared by ${accountIds.length} accounts:`));
113
+ for (const accountId of accountIds) {
114
+ console.log(` - ${accountId}`);
115
+ }
116
+ console.log('');
117
+ console.log((0, ui_1.warn)('These accounts share the same quota pool!'));
118
+ console.log((0, ui_1.warn)('Failover between them will NOT help when quota is exhausted.'));
119
+ console.log((0, ui_1.info)('Solution: Use accounts from different GCP projects.'));
120
+ }
121
+ }
122
+ console.log('');
123
+ console.log((0, ui_1.subheader)('Summary'));
124
+ const healthyAccounts = quotaResult.accounts.filter(({ quota }) => quota.success && quota.models.some((m) => m.percentage > 5));
125
+ console.log(` Accounts with quota: ${healthyAccounts.length}/${accounts.length}`);
126
+ if (sharedProjects.length > 0) {
127
+ console.log(` ${(0, ui_1.fail)(`Shared projects: ${sharedProjects.length} (failover limited)`)}`);
128
+ }
129
+ else if (accounts.length > 1) {
130
+ console.log(` ${(0, ui_1.ok)('No shared projects (failover fully operational)')}`);
131
+ }
132
+ console.log('');
133
+ }
134
+ exports.handleDoctor = handleDoctor;
135
+ /** `ccs cliproxy default <account> [--provider <provider>]` */
136
+ async function handleSetDefault(args) {
137
+ await (0, ui_1.initUI)();
138
+ const parsed = (0, profile_args_1.parseProfileArgs)(args);
139
+ if (!parsed.name) {
140
+ console.log((0, ui_1.fail)('Usage: ccs cliproxy default <account> [--provider <provider>]'));
141
+ console.log('');
142
+ console.log('Examples:');
143
+ console.log(' ccs cliproxy default ultra@gmail.com');
144
+ console.log(' ccs cliproxy default john --provider agy');
145
+ process.exit(1);
146
+ }
147
+ const provider = (parsed.provider || 'agy');
148
+ const account = (0, account_manager_1.findAccountByQuery)(provider, parsed.name);
149
+ if (!account) {
150
+ console.log((0, ui_1.fail)(`Account not found: ${parsed.name}`));
151
+ console.log('');
152
+ const accounts = (0, account_manager_1.getProviderAccounts)(provider);
153
+ if (accounts.length > 0) {
154
+ console.log('Available accounts:');
155
+ for (const acc of accounts) {
156
+ const badge = acc.isDefault ? (0, ui_1.color)(' (current default)', 'info') : '';
157
+ console.log(` - ${(0, format_helpers_1.formatCliAccountLabel)(acc)}${badge}`);
158
+ }
159
+ }
160
+ else {
161
+ console.log(`No accounts found for provider: ${provider}`);
162
+ console.log(`Run: ccs ${provider} --auth`);
163
+ }
164
+ process.exit(1);
165
+ }
166
+ const success = (0, account_manager_1.setDefaultAccount)(provider, account.id);
167
+ if (success) {
168
+ console.log((0, ui_1.ok)(`Default account set to: ${(0, format_helpers_1.formatCliAccountLabel)(account)}`));
169
+ console.log((0, ui_1.info)(`Provider: ${provider}`));
170
+ }
171
+ else {
172
+ console.log((0, ui_1.fail)('Failed to set default account'));
173
+ process.exit(1);
174
+ }
175
+ }
176
+ exports.handleSetDefault = handleSetDefault;
177
+ /** `ccs cliproxy pause <account> [--provider <provider>]` */
178
+ async function handlePauseAccount(args) {
179
+ await (0, ui_1.initUI)();
180
+ const parsed = (0, profile_args_1.parseProfileArgs)(args);
181
+ if (!parsed.name) {
182
+ console.log((0, ui_1.fail)('Usage: ccs cliproxy pause <account> [--provider <provider>]'));
183
+ console.log('');
184
+ console.log('Pauses an account so it will be skipped in quota rotation.');
185
+ process.exit(1);
186
+ }
187
+ const provider = (parsed.provider || 'agy');
188
+ const account = (0, account_manager_1.findAccountByQuery)(provider, parsed.name);
189
+ if (!account) {
190
+ console.log((0, ui_1.fail)(`Account not found: ${parsed.name}`));
191
+ process.exit(1);
192
+ }
193
+ if (account.paused) {
194
+ const refreshed = (0, account_manager_1.pauseAccount)(provider, account.id);
195
+ const refreshedAccount = refreshed ? (0, account_manager_1.findAccountByQuery)(provider, account.id) : account;
196
+ console.log((0, ui_1.warn)(`Account already paused: ${(0, format_helpers_1.formatCliAccountLabel)(account)}`));
197
+ if (refreshed) {
198
+ console.log((0, ui_1.info)('Manual pause refreshed; account will stay out of quota rotation'));
199
+ }
200
+ console.log((0, ui_1.info)(`Paused at: ${refreshedAccount?.pausedAt || account.pausedAt || 'unknown'}`));
201
+ return;
202
+ }
203
+ const success = (0, account_manager_1.pauseAccount)(provider, account.id);
204
+ if (success) {
205
+ console.log((0, ui_1.ok)(`Account paused: ${(0, format_helpers_1.formatCliAccountLabel)(account)}`));
206
+ console.log((0, ui_1.info)('Account will be skipped in quota rotation'));
207
+ }
208
+ else {
209
+ console.log((0, ui_1.fail)('Failed to pause account'));
210
+ process.exit(1);
211
+ }
212
+ }
213
+ exports.handlePauseAccount = handlePauseAccount;
214
+ /** `ccs cliproxy resume <account> [--provider <provider>]` */
215
+ async function handleResumeAccount(args) {
216
+ await (0, ui_1.initUI)();
217
+ const parsed = (0, profile_args_1.parseProfileArgs)(args);
218
+ if (!parsed.name) {
219
+ console.log((0, ui_1.fail)('Usage: ccs cliproxy resume <account> [--provider <provider>]'));
220
+ console.log('');
221
+ console.log('Resumes a paused account for quota rotation.');
222
+ process.exit(1);
223
+ }
224
+ const provider = (parsed.provider || 'agy');
225
+ const account = (0, account_manager_1.findAccountByQuery)(provider, parsed.name);
226
+ if (!account) {
227
+ console.log((0, ui_1.fail)(`Account not found: ${parsed.name}`));
228
+ process.exit(1);
229
+ }
230
+ if (!account.paused) {
231
+ console.log((0, ui_1.warn)(`Account is not paused: ${(0, format_helpers_1.formatCliAccountLabel)(account)}`));
232
+ return;
233
+ }
234
+ const success = (0, account_manager_1.resumeAccount)(provider, account.id);
235
+ if (success) {
236
+ console.log((0, ui_1.ok)(`Account resumed: ${(0, format_helpers_1.formatCliAccountLabel)(account)}`));
237
+ console.log((0, ui_1.info)('Account is now active in quota rotation'));
238
+ }
239
+ else {
240
+ console.log((0, ui_1.fail)('Failed to resume account'));
241
+ process.exit(1);
242
+ }
243
+ }
244
+ exports.handleResumeAccount = handleResumeAccount;
245
+ //# sourceMappingURL=handlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../../src/commands/cliproxy/quota-subcommand/handlers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Argument parsing for account-management subcommands (default/pause/resume).
3
+ *
4
+ * Extracted verbatim from the original god file. Only the parsing logic lives
5
+ * here; the subcommand handlers themselves are in handlers.ts.
6
+ */
7
+ import type { CliproxyProfileArgs } from './types';
8
+ /** Parse the raw CLI args for a `ccs cliproxy default|pause|resume` invocation. */
9
+ export declare function parseProfileArgs(args: string[]): CliproxyProfileArgs;
10
+ //# sourceMappingURL=profile-args.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"profile-args.d.ts","sourceRoot":"","sources":["../../../../src/commands/cliproxy/quota-subcommand/profile-args.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEnD,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAmBpE"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /**
3
+ * Argument parsing for account-management subcommands (default/pause/resume).
4
+ *
5
+ * Extracted verbatim from the original god file. Only the parsing logic lives
6
+ * here; the subcommand handlers themselves are in handlers.ts.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.parseProfileArgs = void 0;
10
+ /** Parse the raw CLI args for a `ccs cliproxy default|pause|resume` invocation. */
11
+ function parseProfileArgs(args) {
12
+ const result = {};
13
+ for (let i = 0; i < args.length; i++) {
14
+ const arg = args[i];
15
+ if (arg === '--provider' && args[i + 1]) {
16
+ result.provider = args[++i];
17
+ }
18
+ else if (arg === '--model' && args[i + 1]) {
19
+ result.model = args[++i];
20
+ }
21
+ else if (arg === '--account' && args[i + 1]) {
22
+ result.account = args[++i];
23
+ }
24
+ else if (arg === '--force') {
25
+ result.force = true;
26
+ }
27
+ else if (arg === '--yes' || arg === '-y') {
28
+ result.yes = true;
29
+ }
30
+ else if (!arg.startsWith('-') && !result.name) {
31
+ result.name = arg;
32
+ }
33
+ }
34
+ return result;
35
+ }
36
+ exports.parseProfileArgs = parseProfileArgs;
37
+ //# sourceMappingURL=profile-args.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"profile-args.js","sourceRoot":"","sources":["../../../../src/commands/cliproxy/quota-subcommand/profile-args.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAIH,mFAAmF;AACnF,SAAgB,gBAAgB,CAAC,IAAc;IAC7C,MAAM,MAAM,GAAwB,EAAE,CAAC;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,YAAY,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACxC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9B,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5C,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,CAAC;aAAM,IAAI,GAAG,KAAK,WAAW,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7B,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;QACtB,CAAC;aAAM,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAC3C,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC;QACpB,CAAC;aAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAChD,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC;QACpB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAnBD,4CAmBC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Per-provider runtime adapters for the quota command.
3
+ *
4
+ * Each entry wires a fetcher (from cliproxy/quota/*) to its section renderer
5
+ * and provides the empty-state strings shown when no accounts are configured.
6
+ * The runtime map is consumed by handleQuotaStatus in handlers.ts.
7
+ */
8
+ import type { QuotaSupportedProvider } from '../../../cliproxy/provider-capabilities';
9
+ import type { QuotaProviderRuntime } from './types';
10
+ /** Runtime adapter for each quota-supported provider. */
11
+ export declare const QUOTA_PROVIDER_RUNTIME: Record<QuotaSupportedProvider, QuotaProviderRuntime>;
12
+ //# sourceMappingURL=provider-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-runtime.d.ts","sourceRoot":"","sources":["../../../../src/commands/cliproxy/quota-subcommand/provider-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAOpD,yDAAyD;AACzD,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,sBAAsB,EAAE,oBAAoB,CA+CvF,CAAC"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ /**
3
+ * Per-provider runtime adapters for the quota command.
4
+ *
5
+ * Each entry wires a fetcher (from cliproxy/quota/*) to its section renderer
6
+ * and provides the empty-state strings shown when no accounts are configured.
7
+ * The runtime map is consumed by handleQuotaStatus in handlers.ts.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.QUOTA_PROVIDER_RUNTIME = void 0;
11
+ const quota_fetcher_claude_1 = require("../../../cliproxy/quota/quota-fetcher-claude");
12
+ const quota_fetcher_codex_1 = require("../../../cliproxy/quota/quota-fetcher-codex");
13
+ const quota_fetcher_gemini_cli_1 = require("../../../cliproxy/quota/quota-fetcher-gemini-cli");
14
+ const quota_fetcher_ghcp_1 = require("../../../cliproxy/quota/quota-fetcher-ghcp");
15
+ const quota_fetcher_1 = require("../../../cliproxy/quota/quota-fetcher");
16
+ const antigravity_1 = require("./sections/antigravity");
17
+ const claude_1 = require("./sections/claude");
18
+ const codex_1 = require("./sections/codex");
19
+ const ghcp_1 = require("./sections/ghcp");
20
+ const gemini_cli_1 = require("./sections/gemini-cli");
21
+ /** Runtime adapter for each quota-supported provider. */
22
+ exports.QUOTA_PROVIDER_RUNTIME = {
23
+ agy: {
24
+ fetch: (verbose) => (0, quota_fetcher_1.fetchAllProviderQuotas)('agy', verbose),
25
+ hasData: (result) => result.accounts.length > 0,
26
+ render: (result) => (0, antigravity_1.displayAntigravityQuotaSection)(result),
27
+ emptyTitle: 'Antigravity (0 accounts)',
28
+ emptyMessage: 'No Antigravity accounts configured',
29
+ authCommand: 'ccs agy --auth',
30
+ },
31
+ codex: {
32
+ fetch: (verbose) => (0, quota_fetcher_codex_1.fetchAllCodexQuotas)(verbose),
33
+ hasData: (result) => result.length > 0,
34
+ render: (result) => (0, codex_1.displayCodexQuotaSection)(result),
35
+ emptyTitle: 'Codex (0 accounts)',
36
+ emptyMessage: 'No Codex accounts configured',
37
+ authCommand: 'ccs codex --auth',
38
+ },
39
+ claude: {
40
+ fetch: (verbose) => (0, quota_fetcher_claude_1.fetchAllClaudeQuotas)(verbose),
41
+ hasData: (result) => result.length > 0,
42
+ render: (result) => (0, claude_1.displayClaudeQuotaSection)(result),
43
+ emptyTitle: 'Claude (0 accounts)',
44
+ emptyMessage: 'No Claude accounts configured',
45
+ authCommand: 'ccs claude --auth',
46
+ },
47
+ gemini: {
48
+ fetch: (verbose) => (0, quota_fetcher_gemini_cli_1.fetchAllGeminiCliQuotas)(verbose),
49
+ hasData: (result) => result.length > 0,
50
+ render: (result) => (0, gemini_cli_1.displayGeminiCliQuotaSection)(result),
51
+ emptyTitle: 'Gemini CLI (0 accounts)',
52
+ emptyMessage: 'No Gemini CLI accounts configured',
53
+ authCommand: 'ccs gemini --auth',
54
+ },
55
+ ghcp: {
56
+ fetch: (verbose) => (0, quota_fetcher_ghcp_1.fetchAllGhcpQuotas)(verbose),
57
+ hasData: (result) => result.length > 0,
58
+ render: (result) => (0, ghcp_1.displayGhcpQuotaSection)(result),
59
+ emptyTitle: 'GitHub Copilot (0 accounts)',
60
+ emptyMessage: 'No GitHub Copilot accounts configured',
61
+ authCommand: 'ccs ghcp --auth',
62
+ },
63
+ };
64
+ //# sourceMappingURL=provider-runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-runtime.js","sourceRoot":"","sources":["../../../../src/commands/cliproxy/quota-subcommand/provider-runtime.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAQH,uFAAoF;AACpF,qFAAkF;AAClF,+FAA2F;AAC3F,mFAAgF;AAChF,yEAA+E;AAG/E,wDAAwE;AACxE,8CAA8D;AAC9D,4CAA4D;AAC5D,0CAA0D;AAC1D,sDAAqE;AAErE,yDAAyD;AAC5C,QAAA,sBAAsB,GAAyD;IAC1F,GAAG,EAAE;QACH,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,sCAAsB,EAAC,KAAK,EAAE,OAAO,CAAC;QAC1D,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CACjB,MAA6D,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QACpF,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CACjB,IAAA,4CAA8B,EAAC,MAA4D,CAAC;QAC9F,UAAU,EAAE,0BAA0B;QACtC,YAAY,EAAE,oCAAoC;QAClD,WAAW,EAAE,gBAAgB;KAC9B;IACD,KAAK,EAAE;QACL,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,yCAAmB,EAAC,OAAO,CAAC;QAChD,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAE,MAAyD,CAAC,MAAM,GAAG,CAAC;QAC1F,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CACjB,IAAA,gCAAwB,EAAC,MAAwD,CAAC;QACpF,UAAU,EAAE,oBAAoB;QAChC,YAAY,EAAE,8BAA8B;QAC5C,WAAW,EAAE,kBAAkB;KAChC;IACD,MAAM,EAAE;QACN,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,2CAAoB,EAAC,OAAO,CAAC;QACjD,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAE,MAA0D,CAAC,MAAM,GAAG,CAAC;QAC3F,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CACjB,IAAA,kCAAyB,EAAC,MAAyD,CAAC;QACtF,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,+BAA+B;QAC7C,WAAW,EAAE,mBAAmB;KACjC;IACD,MAAM,EAAE;QACN,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,kDAAuB,EAAC,OAAO,CAAC;QACpD,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAE,MAA6D,CAAC,MAAM,GAAG,CAAC;QAC9F,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CACjB,IAAA,yCAA4B,EAAC,MAA4D,CAAC;QAC5F,UAAU,EAAE,yBAAyB;QACrC,YAAY,EAAE,mCAAmC;QACjD,WAAW,EAAE,mBAAmB;KACjC;IACD,IAAI,EAAE;QACJ,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,uCAAkB,EAAC,OAAO,CAAC;QAC/C,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAE,MAAwD,CAAC,MAAM,GAAG,CAAC;QACzF,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CACjB,IAAA,8BAAuB,EAAC,MAAuD,CAAC;QAClF,UAAU,EAAE,6BAA6B;QACzC,YAAY,EAAE,uCAAuC;QACrD,WAAW,EAAE,iBAAiB;KAC/B;CACF,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Quota failure display helpers.
3
+ *
4
+ * Builds the multi-line failure block shown beneath a failed account row.
5
+ * Extracted from the original god file verbatim so the CLI output and the
6
+ * unit tests in tests/unit/commands/cliproxy-quota-subcommand.test.ts keep
7
+ * their exact behavior.
8
+ */
9
+ import type { QuotaErrorMetadata } from '../../../cliproxy/quota/quota-types';
10
+ import type { QuotaFailureDisplayEntry } from './types';
11
+ /**
12
+ * Build the ordered list of failure display entries for a quota error.
13
+ *
14
+ * Order is:
15
+ * 1. error message (always)
16
+ * 2. action hint (if present)
17
+ * 3. diagnostics line: HTTP status | error code | retryable flag (if any)
18
+ * 4. detail line (only if it differs from the error message)
19
+ */
20
+ export declare function getQuotaFailureDisplayEntries(quota: QuotaErrorMetadata & {
21
+ error?: string;
22
+ }): QuotaFailureDisplayEntry[];
23
+ /** Render the failure block for a single failed account to stdout. */
24
+ export declare function displayQuotaFailure(quota: QuotaErrorMetadata & {
25
+ error?: string;
26
+ }): void;
27
+ //# sourceMappingURL=quota-failure-display.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quota-failure-display.d.ts","sourceRoot":"","sources":["../../../../src/commands/cliproxy/quota-subcommand/quota-failure-display.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAE9E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAExD;;;;;;;;GAQG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,kBAAkB,GAAG;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GACA,wBAAwB,EAAE,CA0C5B;AAED,sEAAsE;AACtE,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,kBAAkB,GAAG;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GACA,IAAI,CAUN"}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ /**
3
+ * Quota failure display helpers.
4
+ *
5
+ * Builds the multi-line failure block shown beneath a failed account row.
6
+ * Extracted from the original god file verbatim so the CLI output and the
7
+ * unit tests in tests/unit/commands/cliproxy-quota-subcommand.test.ts keep
8
+ * their exact behavior.
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.displayQuotaFailure = exports.getQuotaFailureDisplayEntries = void 0;
12
+ const ui_1 = require("../../../utils/ui");
13
+ /**
14
+ * Build the ordered list of failure display entries for a quota error.
15
+ *
16
+ * Order is:
17
+ * 1. error message (always)
18
+ * 2. action hint (if present)
19
+ * 3. diagnostics line: HTTP status | error code | retryable flag (if any)
20
+ * 4. detail line (only if it differs from the error message)
21
+ */
22
+ function getQuotaFailureDisplayEntries(quota) {
23
+ const entries = [
24
+ {
25
+ tone: 'error',
26
+ text: quota.error || 'Failed to fetch quota',
27
+ },
28
+ ];
29
+ if (quota.actionHint) {
30
+ entries.push({
31
+ tone: 'info',
32
+ text: quota.actionHint,
33
+ });
34
+ }
35
+ const diagnostics = [];
36
+ if (typeof quota.httpStatus === 'number') {
37
+ diagnostics.push(`HTTP ${quota.httpStatus}`);
38
+ }
39
+ if (quota.errorCode) {
40
+ diagnostics.push(`Code: ${quota.errorCode}`);
41
+ }
42
+ if (quota.retryable) {
43
+ diagnostics.push('Retryable');
44
+ }
45
+ if (diagnostics.length > 0) {
46
+ entries.push({
47
+ tone: 'dim',
48
+ text: diagnostics.join(' | '),
49
+ });
50
+ }
51
+ const normalizedError = quota.error?.trim();
52
+ const normalizedDetail = quota.errorDetail?.trim();
53
+ if (normalizedDetail && normalizedDetail !== normalizedError) {
54
+ entries.push({
55
+ tone: 'dim',
56
+ text: `Detail: ${normalizedDetail}`,
57
+ });
58
+ }
59
+ return entries;
60
+ }
61
+ exports.getQuotaFailureDisplayEntries = getQuotaFailureDisplayEntries;
62
+ /** Render the failure block for a single failed account to stdout. */
63
+ function displayQuotaFailure(quota) {
64
+ for (const entry of getQuotaFailureDisplayEntries(quota)) {
65
+ const rendered = entry.tone === 'error'
66
+ ? (0, ui_1.color)(entry.text, 'error')
67
+ : entry.tone === 'info'
68
+ ? (0, ui_1.info)(entry.text)
69
+ : (0, ui_1.dim)(entry.text);
70
+ console.log(` ${rendered}`);
71
+ }
72
+ }
73
+ exports.displayQuotaFailure = displayQuotaFailure;
74
+ //# sourceMappingURL=quota-failure-display.js.map