@google/gemini-cli-core 0.31.0 → 0.33.0-nightly.20260228.1ca5c05d0

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 (323) hide show
  1. package/dist/docs/changelogs/index.md +22 -0
  2. package/dist/docs/changelogs/latest.md +307 -352
  3. package/dist/docs/changelogs/preview.md +391 -293
  4. package/dist/docs/cli/cli-reference.md +12 -12
  5. package/dist/docs/cli/custom-commands.md +9 -0
  6. package/dist/docs/cli/enterprise.md +19 -0
  7. package/dist/docs/cli/model.md +5 -14
  8. package/dist/docs/cli/plan-mode.md +29 -7
  9. package/dist/docs/cli/sandbox.md +42 -2
  10. package/dist/docs/cli/settings.md +15 -6
  11. package/dist/docs/cli/telemetry.md +68 -11
  12. package/dist/docs/cli/tutorials/automation.md +101 -5
  13. package/dist/docs/cli/tutorials/mcp-setup.md +8 -0
  14. package/dist/docs/cli/tutorials/skills-getting-started.md +8 -0
  15. package/dist/docs/extensions/reference.md +36 -0
  16. package/dist/docs/extensions/writing-extensions.md +16 -0
  17. package/dist/docs/get-started/authentication.md +86 -5
  18. package/dist/docs/get-started/installation.md +2 -2
  19. package/dist/docs/hooks/best-practices.md +33 -1
  20. package/dist/docs/hooks/writing-hooks.md +24 -0
  21. package/dist/docs/ide-integration/index.md +8 -0
  22. package/dist/docs/local-development.md +49 -43
  23. package/dist/docs/reference/configuration.md +48 -7
  24. package/dist/docs/reference/keyboard-shortcuts.md +6 -6
  25. package/dist/docs/reference/policy-engine.md +14 -3
  26. package/dist/docs/resources/faq.md +21 -0
  27. package/dist/docs/resources/tos-privacy.md +6 -0
  28. package/dist/docs/resources/troubleshooting.md +4 -1
  29. package/dist/docs/resources/uninstall.md +1 -10
  30. package/dist/docs/tools/mcp-server.md +22 -0
  31. package/dist/google-gemini-cli-core-0.33.0-nightly.20260227.08ee13613.tgz +0 -0
  32. package/dist/src/agents/a2a-client-manager.d.ts +7 -6
  33. package/dist/src/agents/a2a-client-manager.js +8 -9
  34. package/dist/src/agents/a2a-client-manager.js.map +1 -1
  35. package/dist/src/agents/a2a-client-manager.test.js +45 -31
  36. package/dist/src/agents/a2a-client-manager.test.js.map +1 -1
  37. package/dist/src/agents/a2aUtils.d.ts +25 -7
  38. package/dist/src/agents/a2aUtils.js +165 -58
  39. package/dist/src/agents/a2aUtils.js.map +1 -1
  40. package/dist/src/agents/a2aUtils.test.js +170 -27
  41. package/dist/src/agents/a2aUtils.test.js.map +1 -1
  42. package/dist/src/agents/generalist-agent.js +1 -2
  43. package/dist/src/agents/generalist-agent.js.map +1 -1
  44. package/dist/src/agents/registry.test.js +4 -2
  45. package/dist/src/agents/registry.test.js.map +1 -1
  46. package/dist/src/agents/remote-invocation.d.ts +2 -1
  47. package/dist/src/agents/remote-invocation.js +41 -22
  48. package/dist/src/agents/remote-invocation.js.map +1 -1
  49. package/dist/src/agents/remote-invocation.test.js +196 -56
  50. package/dist/src/agents/remote-invocation.test.js.map +1 -1
  51. package/dist/src/agents/subagent-tool-wrapper.js +1 -1
  52. package/dist/src/agents/subagent-tool-wrapper.test.js +1 -1
  53. package/dist/src/agents/subagent-tool.js +15 -2
  54. package/dist/src/agents/subagent-tool.js.map +1 -1
  55. package/dist/src/agents/subagent-tool.test.js +31 -0
  56. package/dist/src/agents/subagent-tool.test.js.map +1 -1
  57. package/dist/src/billing/billing.d.ts +80 -0
  58. package/dist/src/billing/billing.js +127 -0
  59. package/dist/src/billing/billing.js.map +1 -0
  60. package/dist/src/billing/billing.test.d.ts +6 -0
  61. package/dist/src/billing/billing.test.js +182 -0
  62. package/dist/src/billing/billing.test.js.map +1 -0
  63. package/dist/src/billing/index.d.ts +6 -0
  64. package/dist/src/billing/index.js +7 -0
  65. package/dist/src/billing/index.js.map +1 -0
  66. package/dist/src/code_assist/codeAssist.js +1 -1
  67. package/dist/src/code_assist/codeAssist.js.map +1 -1
  68. package/dist/src/code_assist/codeAssist.test.js +2 -2
  69. package/dist/src/code_assist/codeAssist.test.js.map +1 -1
  70. package/dist/src/code_assist/converter.d.ts +9 -4
  71. package/dist/src/code_assist/converter.js +17 -2
  72. package/dist/src/code_assist/converter.js.map +1 -1
  73. package/dist/src/code_assist/converter.test.js.map +1 -1
  74. package/dist/src/code_assist/oauth2.js +6 -3
  75. package/dist/src/code_assist/oauth2.js.map +1 -1
  76. package/dist/src/code_assist/oauth2.test.js +1 -0
  77. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  78. package/dist/src/code_assist/server.d.ts +9 -4
  79. package/dist/src/code_assist/server.js +86 -5
  80. package/dist/src/code_assist/server.js.map +1 -1
  81. package/dist/src/code_assist/server.test.js +11 -0
  82. package/dist/src/code_assist/server.test.js.map +1 -1
  83. package/dist/src/code_assist/setup.d.ts +2 -1
  84. package/dist/src/code_assist/setup.js +15 -4
  85. package/dist/src/code_assist/setup.js.map +1 -1
  86. package/dist/src/code_assist/types.d.ts +33 -10
  87. package/dist/src/code_assist/types.js.map +1 -1
  88. package/dist/src/config/config.d.ts +50 -4
  89. package/dist/src/config/config.js +77 -3
  90. package/dist/src/config/config.js.map +1 -1
  91. package/dist/src/config/config.test.js +151 -1
  92. package/dist/src/config/config.test.js.map +1 -1
  93. package/dist/src/config/storage.d.ts +1 -0
  94. package/dist/src/config/storage.js +3 -0
  95. package/dist/src/config/storage.js.map +1 -1
  96. package/dist/src/core/contentGenerator.d.ts +3 -2
  97. package/dist/src/core/contentGenerator.js +9 -2
  98. package/dist/src/core/contentGenerator.js.map +1 -1
  99. package/dist/src/core/coreToolScheduler.js +2 -1
  100. package/dist/src/core/coreToolScheduler.js.map +1 -1
  101. package/dist/src/core/coreToolScheduler.test.js +21 -2
  102. package/dist/src/core/coreToolScheduler.test.js.map +1 -1
  103. package/dist/src/core/fakeContentGenerator.d.ts +2 -1
  104. package/dist/src/core/fakeContentGenerator.js +1 -0
  105. package/dist/src/core/fakeContentGenerator.js.map +1 -1
  106. package/dist/src/core/geminiChat.js +6 -2
  107. package/dist/src/core/geminiChat.js.map +1 -1
  108. package/dist/src/core/geminiChat.test.js +34 -0
  109. package/dist/src/core/geminiChat.test.js.map +1 -1
  110. package/dist/src/core/localLiteRtLmClient.d.ts +24 -0
  111. package/dist/src/core/localLiteRtLmClient.js +77 -0
  112. package/dist/src/core/localLiteRtLmClient.js.map +1 -0
  113. package/dist/src/core/localLiteRtLmClient.test.d.ts +6 -0
  114. package/dist/src/core/localLiteRtLmClient.test.js +87 -0
  115. package/dist/src/core/localLiteRtLmClient.test.js.map +1 -0
  116. package/dist/src/core/loggingContentGenerator.d.ts +3 -1
  117. package/dist/src/core/loggingContentGenerator.js +65 -17
  118. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  119. package/dist/src/core/loggingContentGenerator.test.js +164 -5
  120. package/dist/src/core/loggingContentGenerator.test.js.map +1 -1
  121. package/dist/src/core/prompts.test.js +1 -1
  122. package/dist/src/core/prompts.test.js.map +1 -1
  123. package/dist/src/fallback/handler.js +2 -0
  124. package/dist/src/fallback/handler.js.map +1 -1
  125. package/dist/src/fallback/types.d.ts +1 -1
  126. package/dist/src/generated/git-commit.d.ts +2 -2
  127. package/dist/src/generated/git-commit.js +2 -2
  128. package/dist/src/generated/git-commit.js.map +1 -1
  129. package/dist/src/index.d.ts +5 -0
  130. package/dist/src/index.js +5 -0
  131. package/dist/src/index.js.map +1 -1
  132. package/dist/src/policy/config.d.ts +18 -6
  133. package/dist/src/policy/config.js +50 -12
  134. package/dist/src/policy/config.js.map +1 -1
  135. package/dist/src/policy/config.test.js +26 -26
  136. package/dist/src/policy/config.test.js.map +1 -1
  137. package/dist/src/policy/policies/plan.toml +1 -1
  138. package/dist/src/policy/policy-engine.d.ts +8 -0
  139. package/dist/src/policy/policy-engine.js +12 -0
  140. package/dist/src/policy/policy-engine.js.map +1 -1
  141. package/dist/src/policy/policy-engine.test.js +93 -0
  142. package/dist/src/policy/policy-engine.test.js.map +1 -1
  143. package/dist/src/policy/toml-loader.d.ts +1 -1
  144. package/dist/src/policy/toml-loader.js +4 -2
  145. package/dist/src/policy/toml-loader.js.map +1 -1
  146. package/dist/src/policy/toml-loader.test.js +15 -12
  147. package/dist/src/policy/toml-loader.test.js.map +1 -1
  148. package/dist/src/policy/workspace-policy.test.js +10 -10
  149. package/dist/src/prompts/snippets.js +43 -27
  150. package/dist/src/prompts/snippets.js.map +1 -1
  151. package/dist/src/routing/modelRouterService.js +19 -11
  152. package/dist/src/routing/modelRouterService.js.map +1 -1
  153. package/dist/src/routing/modelRouterService.test.js +38 -1
  154. package/dist/src/routing/modelRouterService.test.js.map +1 -1
  155. package/dist/src/routing/routingStrategy.d.ts +3 -2
  156. package/dist/src/routing/strategies/classifierStrategy.d.ts +2 -1
  157. package/dist/src/routing/strategies/classifierStrategy.js +1 -1
  158. package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
  159. package/dist/src/routing/strategies/classifierStrategy.test.js +15 -13
  160. package/dist/src/routing/strategies/classifierStrategy.test.js.map +1 -1
  161. package/dist/src/routing/strategies/compositeStrategy.d.ts +2 -1
  162. package/dist/src/routing/strategies/compositeStrategy.js +3 -3
  163. package/dist/src/routing/strategies/compositeStrategy.js.map +1 -1
  164. package/dist/src/routing/strategies/compositeStrategy.test.js +10 -8
  165. package/dist/src/routing/strategies/compositeStrategy.test.js.map +1 -1
  166. package/dist/src/routing/strategies/defaultStrategy.d.ts +2 -1
  167. package/dist/src/routing/strategies/defaultStrategy.js +1 -1
  168. package/dist/src/routing/strategies/defaultStrategy.js.map +1 -1
  169. package/dist/src/routing/strategies/defaultStrategy.test.js +8 -4
  170. package/dist/src/routing/strategies/defaultStrategy.test.js.map +1 -1
  171. package/dist/src/routing/strategies/fallbackStrategy.d.ts +2 -1
  172. package/dist/src/routing/strategies/fallbackStrategy.js +1 -1
  173. package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -1
  174. package/dist/src/routing/strategies/fallbackStrategy.test.js +6 -5
  175. package/dist/src/routing/strategies/fallbackStrategy.test.js.map +1 -1
  176. package/dist/src/routing/strategies/gemmaClassifierStrategy.d.ts +14 -0
  177. package/dist/src/routing/strategies/gemmaClassifierStrategy.js +182 -0
  178. package/dist/src/routing/strategies/gemmaClassifierStrategy.js.map +1 -0
  179. package/dist/src/routing/strategies/gemmaClassifierStrategy.test.d.ts +6 -0
  180. package/dist/src/routing/strategies/gemmaClassifierStrategy.test.js +218 -0
  181. package/dist/src/routing/strategies/gemmaClassifierStrategy.test.js.map +1 -0
  182. package/dist/src/routing/strategies/numericalClassifierStrategy.d.ts +2 -1
  183. package/dist/src/routing/strategies/numericalClassifierStrategy.js +1 -1
  184. package/dist/src/routing/strategies/numericalClassifierStrategy.js.map +1 -1
  185. package/dist/src/routing/strategies/numericalClassifierStrategy.test.js +24 -22
  186. package/dist/src/routing/strategies/numericalClassifierStrategy.test.js.map +1 -1
  187. package/dist/src/routing/strategies/overrideStrategy.d.ts +2 -1
  188. package/dist/src/routing/strategies/overrideStrategy.js +1 -1
  189. package/dist/src/routing/strategies/overrideStrategy.js.map +1 -1
  190. package/dist/src/routing/strategies/overrideStrategy.test.js +5 -4
  191. package/dist/src/routing/strategies/overrideStrategy.test.js.map +1 -1
  192. package/dist/src/scheduler/scheduler.d.ts +1 -0
  193. package/dist/src/scheduler/scheduler.js +18 -7
  194. package/dist/src/scheduler/scheduler.js.map +1 -1
  195. package/dist/src/scheduler/scheduler.test.js +19 -1
  196. package/dist/src/scheduler/scheduler.test.js.map +1 -1
  197. package/dist/src/scheduler/scheduler_parallel.test.js +94 -3
  198. package/dist/src/scheduler/scheduler_parallel.test.js.map +1 -1
  199. package/dist/src/scheduler/tool-executor.js +21 -12
  200. package/dist/src/scheduler/tool-executor.js.map +1 -1
  201. package/dist/src/scheduler/tool-executor.test.js +54 -0
  202. package/dist/src/scheduler/tool-executor.test.js.map +1 -1
  203. package/dist/src/services/trackerService.d.ts +49 -0
  204. package/dist/src/services/trackerService.js +172 -0
  205. package/dist/src/services/trackerService.js.map +1 -0
  206. package/dist/src/services/trackerService.test.d.ts +6 -0
  207. package/dist/src/services/trackerService.test.js +117 -0
  208. package/dist/src/services/trackerService.test.js.map +1 -0
  209. package/dist/src/services/trackerTypes.d.ts +51 -0
  210. package/dist/src/services/trackerTypes.js +33 -0
  211. package/dist/src/services/trackerTypes.js.map +1 -0
  212. package/dist/src/telemetry/billingEvents.d.ts +75 -0
  213. package/dist/src/telemetry/billingEvents.js +181 -0
  214. package/dist/src/telemetry/billingEvents.js.map +1 -0
  215. package/dist/src/telemetry/billingEvents.test.d.ts +6 -0
  216. package/dist/src/telemetry/billingEvents.test.js +139 -0
  217. package/dist/src/telemetry/billingEvents.test.js.map +1 -0
  218. package/dist/src/telemetry/conseca-logger.test.js +1 -0
  219. package/dist/src/telemetry/conseca-logger.test.js.map +1 -1
  220. package/dist/src/telemetry/constants.d.ts +25 -0
  221. package/dist/src/telemetry/constants.js +29 -0
  222. package/dist/src/telemetry/constants.js.map +1 -1
  223. package/dist/src/telemetry/index.d.ts +3 -1
  224. package/dist/src/telemetry/index.js +5 -1
  225. package/dist/src/telemetry/index.js.map +1 -1
  226. package/dist/src/telemetry/loggers.d.ts +2 -0
  227. package/dist/src/telemetry/loggers.js +10 -0
  228. package/dist/src/telemetry/loggers.js.map +1 -1
  229. package/dist/src/telemetry/loggers.test.js +16 -0
  230. package/dist/src/telemetry/loggers.test.js.map +1 -1
  231. package/dist/src/telemetry/metrics.d.ts +28 -0
  232. package/dist/src/telemetry/metrics.js +40 -0
  233. package/dist/src/telemetry/metrics.js.map +1 -1
  234. package/dist/src/telemetry/sanitize.test.js +1 -0
  235. package/dist/src/telemetry/sanitize.test.js.map +1 -1
  236. package/dist/src/telemetry/sdk.test.js +1 -0
  237. package/dist/src/telemetry/sdk.test.js.map +1 -1
  238. package/dist/src/telemetry/telemetryAttributes.js +2 -0
  239. package/dist/src/telemetry/telemetryAttributes.js.map +1 -1
  240. package/dist/src/telemetry/trace.d.ts +2 -1
  241. package/dist/src/telemetry/trace.js +13 -18
  242. package/dist/src/telemetry/trace.js.map +1 -1
  243. package/dist/src/telemetry/trace.test.d.ts +6 -0
  244. package/dist/src/telemetry/trace.test.js +116 -0
  245. package/dist/src/telemetry/trace.test.js.map +1 -0
  246. package/dist/src/tools/confirmation-policy.test.js +1 -0
  247. package/dist/src/tools/confirmation-policy.test.js.map +1 -1
  248. package/dist/src/tools/definitions/model-family-sets/default-legacy.js +2 -2
  249. package/dist/src/tools/definitions/model-family-sets/default-legacy.js.map +1 -1
  250. package/dist/src/tools/definitions/model-family-sets/gemini-3.js +3 -3
  251. package/dist/src/tools/definitions/model-family-sets/gemini-3.js.map +1 -1
  252. package/dist/src/tools/grep-utils.d.ts +1 -1
  253. package/dist/src/tools/grep-utils.js +4 -4
  254. package/dist/src/tools/grep-utils.js.map +1 -1
  255. package/dist/src/tools/grep.d.ts +1 -1
  256. package/dist/src/tools/grep.js +9 -9
  257. package/dist/src/tools/grep.js.map +1 -1
  258. package/dist/src/tools/grep.test.js +8 -5
  259. package/dist/src/tools/grep.test.js.map +1 -1
  260. package/dist/src/tools/line-endings.test.js +3 -11
  261. package/dist/src/tools/line-endings.test.js.map +1 -1
  262. package/dist/src/tools/mcp-client-manager.d.ts +25 -0
  263. package/dist/src/tools/mcp-client-manager.js +66 -3
  264. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  265. package/dist/src/tools/mcp-client-manager.test.js +47 -0
  266. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  267. package/dist/src/tools/mcp-client.d.ts +20 -9
  268. package/dist/src/tools/mcp-client.js +50 -46
  269. package/dist/src/tools/mcp-client.js.map +1 -1
  270. package/dist/src/tools/mcp-client.test.js +96 -84
  271. package/dist/src/tools/mcp-client.test.js.map +1 -1
  272. package/dist/src/tools/mcp-tool.d.ts +3 -3
  273. package/dist/src/tools/mcp-tool.js +1 -0
  274. package/dist/src/tools/mcp-tool.js.map +1 -1
  275. package/dist/src/tools/ripGrep.d.ts +1 -1
  276. package/dist/src/tools/ripGrep.js +7 -7
  277. package/dist/src/tools/ripGrep.js.map +1 -1
  278. package/dist/src/tools/ripGrep.test.js +10 -7
  279. package/dist/src/tools/ripGrep.test.js.map +1 -1
  280. package/dist/src/tools/tools.d.ts +1 -0
  281. package/dist/src/tools/tools.js +1 -0
  282. package/dist/src/tools/tools.js.map +1 -1
  283. package/dist/src/tools/write-file.js +4 -17
  284. package/dist/src/tools/write-file.js.map +1 -1
  285. package/dist/src/tools/write-file.test.js +29 -83
  286. package/dist/src/tools/write-file.test.js.map +1 -1
  287. package/dist/src/utils/editCorrector.d.ts +1 -42
  288. package/dist/src/utils/editCorrector.js +9 -461
  289. package/dist/src/utils/editCorrector.js.map +1 -1
  290. package/dist/src/utils/editCorrector.test.js +17 -421
  291. package/dist/src/utils/editCorrector.test.js.map +1 -1
  292. package/dist/src/utils/envExpansion.js.map +1 -1
  293. package/dist/src/utils/errors.js +7 -0
  294. package/dist/src/utils/errors.js.map +1 -1
  295. package/dist/src/utils/errors_timeout.test.d.ts +6 -0
  296. package/dist/src/utils/errors_timeout.test.js +40 -0
  297. package/dist/src/utils/errors_timeout.test.js.map +1 -0
  298. package/dist/src/utils/extensionLoader.js +35 -0
  299. package/dist/src/utils/extensionLoader.js.map +1 -1
  300. package/dist/src/utils/extensionLoader.test.js +36 -0
  301. package/dist/src/utils/extensionLoader.test.js.map +1 -1
  302. package/dist/src/utils/fetch.js +13 -2
  303. package/dist/src/utils/fetch.js.map +1 -1
  304. package/dist/src/utils/fileUtils.js +0 -1
  305. package/dist/src/utils/fileUtils.js.map +1 -1
  306. package/dist/src/utils/fileUtils.test.js +0 -1
  307. package/dist/src/utils/fileUtils.test.js.map +1 -1
  308. package/dist/src/utils/flashFallback.test.js +24 -0
  309. package/dist/src/utils/flashFallback.test.js.map +1 -1
  310. package/dist/src/utils/googleErrors.d.ts +2 -2
  311. package/dist/src/utils/googleQuotaErrors.d.ts +3 -1
  312. package/dist/src/utils/googleQuotaErrors.js +22 -12
  313. package/dist/src/utils/googleQuotaErrors.js.map +1 -1
  314. package/dist/src/utils/googleQuotaErrors.test.js +33 -1
  315. package/dist/src/utils/googleQuotaErrors.test.js.map +1 -1
  316. package/dist/src/utils/retry.js +4 -2
  317. package/dist/src/utils/retry.js.map +1 -1
  318. package/dist/src/utils/retry.test.js +20 -0
  319. package/dist/src/utils/retry.test.js.map +1 -1
  320. package/dist/src/utils/schemaValidator.js +0 -1
  321. package/dist/src/utils/schemaValidator.js.map +1 -1
  322. package/dist/tsconfig.tsbuildinfo +1 -1
  323. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"remote-invocation.test.js","sourceRoot":"","sources":["../../../src/agents/remote-invocation.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote-invocation.test.js","sourceRoot":"","sources":["../../../src/agents/remote-invocation.test.ts"],"names":[],"mappings":"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"}
@@ -26,7 +26,7 @@ export class SubagentToolWrapper extends BaseDeclarativeTool {
26
26
  * @param messageBus Optional message bus for policy enforcement.
27
27
  */
28
28
  constructor(definition, config, messageBus) {
29
- super(definition.name, definition.displayName ?? definition.name, definition.description, Kind.Think, definition.inputConfig.inputSchema, messageBus,
29
+ super(definition.name, definition.displayName ?? definition.name, definition.description, Kind.Agent, definition.inputConfig.inputSchema, messageBus,
30
30
  /* isOutputMarkdown */ true,
31
31
  /* canUpdateOutput */ true);
32
32
  this.definition = definition;
@@ -55,7 +55,7 @@ describe('SubagentToolWrapper', () => {
55
55
  expect(wrapper.name).toBe(mockDefinition.name);
56
56
  expect(wrapper.displayName).toBe(mockDefinition.displayName);
57
57
  expect(wrapper.description).toBe(mockDefinition.description);
58
- expect(wrapper.kind).toBe(Kind.Think);
58
+ expect(wrapper.kind).toBe(Kind.Agent);
59
59
  expect(wrapper.isOutputMarkdown).toBe(true);
60
60
  expect(wrapper.canUpdateOutput).toBe(true);
61
61
  });
@@ -7,6 +7,8 @@ import { BaseDeclarativeTool, Kind, BaseToolInvocation, isTool, } from '../tools
7
7
  import { SubagentToolWrapper } from './subagent-tool-wrapper.js';
8
8
  import { SchemaValidator } from '../utils/schemaValidator.js';
9
9
  import { formatUserHintsForModel } from '../utils/fastAckHelper.js';
10
+ import { runInDevTraceSpan } from '../telemetry/trace.js';
11
+ import { GeminiCliOperation, GEN_AI_AGENT_DESCRIPTION, GEN_AI_AGENT_NAME, } from '../telemetry/constants.js';
10
12
  export class SubagentTool extends BaseDeclarativeTool {
11
13
  definition;
12
14
  config;
@@ -17,7 +19,7 @@ export class SubagentTool extends BaseDeclarativeTool {
17
19
  if (schemaError) {
18
20
  throw new Error(`Invalid schema for agent ${definition.name}: ${schemaError}`);
19
21
  }
20
- super(definition.name, definition.displayName ?? definition.name, definition.description, Kind.Think, inputSchema, messageBus,
22
+ super(definition.name, definition.displayName ?? definition.name, definition.description, Kind.Agent, inputSchema, messageBus,
21
23
  /* isOutputMarkdown */ true,
22
24
  /* canUpdateOutput */ true);
23
25
  this.definition = definition;
@@ -88,7 +90,18 @@ class SubAgentInvocation extends BaseToolInvocation {
88
90
  throw new Error(`Invalid arguments for agent '${this.definition.name}': ${validationError}. Input schema: ${JSON.stringify(this.definition.inputConfig.inputSchema)}.`);
89
91
  }
90
92
  const invocation = this.buildSubInvocation(this.definition, this.withUserHints(this.params));
91
- return invocation.execute(signal, updateOutput);
93
+ return runInDevTraceSpan({
94
+ operation: GeminiCliOperation.AgentCall,
95
+ attributes: {
96
+ [GEN_AI_AGENT_NAME]: this.definition.name,
97
+ [GEN_AI_AGENT_DESCRIPTION]: this.definition.description,
98
+ },
99
+ }, async ({ metadata }) => {
100
+ metadata.input = this.params;
101
+ const result = await invocation.execute(signal, updateOutput);
102
+ metadata.output = result;
103
+ return result;
104
+ });
92
105
  }
93
106
  withUserHints(agentArgs) {
94
107
  if (this.definition.kind !== 'remote') {
@@ -1 +1 @@
1
- {"version":3,"file":"subagent-tool.js","sourceRoot":"","sources":["../../../src/agents/subagent-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subagent-tool.js","sourceRoot":"","sources":["../../../src/agents/subagent-tool.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,22 @@
6
6
  import { describe, it, expect, vi, beforeEach } from 'vitest';
7
7
  import { SubagentTool } from './subagent-tool.js';
8
8
  import { SubagentToolWrapper } from './subagent-tool-wrapper.js';
9
+ import { Kind } from '../tools/tools.js';
9
10
  import { makeFakeConfig } from '../test-utils/config.js';
10
11
  import { createMockMessageBus } from '../test-utils/mock-message-bus.js';
12
+ import { GeminiCliOperation, GEN_AI_AGENT_DESCRIPTION, GEN_AI_AGENT_NAME, } from '../telemetry/constants.js';
11
13
  vi.mock('./subagent-tool-wrapper.js');
14
+ // Mock runInDevTraceSpan
15
+ const runInDevTraceSpan = vi.hoisted(() => vi.fn(async (opts, fn) => {
16
+ const metadata = { attributes: opts.attributes || {} };
17
+ return fn({
18
+ metadata,
19
+ endSpan: vi.fn(),
20
+ });
21
+ }));
22
+ vi.mock('../telemetry/trace.js', () => ({
23
+ runInDevTraceSpan,
24
+ }));
12
25
  const MockSubagentToolWrapper = vi.mocked(SubagentToolWrapper);
13
26
  const testDefinition = {
14
27
  kind: 'local',
@@ -47,6 +60,10 @@ describe('SubAgentInvocation', () => {
47
60
  .fn()
48
61
  .mockReturnValue(mockInnerInvocation);
49
62
  });
63
+ it('should have Kind.Agent', () => {
64
+ const tool = new SubagentTool(testDefinition, mockConfig, mockMessageBus);
65
+ expect(tool.kind).toBe(Kind.Agent);
66
+ });
50
67
  it('should delegate shouldConfirmExecute to the inner sub-invocation (local)', async () => {
51
68
  const tool = new SubagentTool(testDefinition, mockConfig, mockMessageBus);
52
69
  const params = {};
@@ -92,6 +109,20 @@ describe('SubAgentInvocation', () => {
92
109
  const result = await invocation.execute(abortSignal, updateOutput);
93
110
  expect(result).toBe(mockResult);
94
111
  expect(mockInnerInvocation.execute).toHaveBeenCalledWith(abortSignal, updateOutput);
112
+ expect(runInDevTraceSpan).toHaveBeenCalledWith(expect.objectContaining({
113
+ operation: GeminiCliOperation.AgentCall,
114
+ attributes: expect.objectContaining({
115
+ [GEN_AI_AGENT_NAME]: testDefinition.name,
116
+ [GEN_AI_AGENT_DESCRIPTION]: testDefinition.description,
117
+ }),
118
+ }), expect.any(Function));
119
+ // Verify metadata was set on the span
120
+ const spanCallback = vi.mocked(runInDevTraceSpan).mock.calls[0][1];
121
+ const mockMetadata = { input: undefined, output: undefined };
122
+ const mockSpan = { metadata: mockMetadata, endSpan: vi.fn() };
123
+ await spanCallback(mockSpan);
124
+ expect(mockMetadata.input).toBe(params);
125
+ expect(mockMetadata.output).toBe(mockResult);
95
126
  });
96
127
  describe('withUserHints', () => {
97
128
  it('should NOT modify query for local agents', async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"subagent-tool.test.js","sourceRoot":"","sources":["../../../src/agents/subagent-tool.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subagent-tool.test.js","sourceRoot":"","sources":["../../../src/agents/subagent-tool.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { CreditType, GeminiUserTier } from '../code_assist/types.js';
7
+ /**
8
+ * Strategy for handling quota exhaustion when AI credits are available.
9
+ * - 'ask': Prompt the user each time
10
+ * - 'always': Automatically use credits
11
+ * - 'never': Never use credits, show standard fallback
12
+ */
13
+ export type OverageStrategy = 'ask' | 'always' | 'never';
14
+ /** Credit type for Google One AI credits */
15
+ export declare const G1_CREDIT_TYPE: CreditType;
16
+ /**
17
+ * The set of models that support AI credits overage billing.
18
+ * Only these models are eligible for the credits-based retry flow.
19
+ */
20
+ export declare const OVERAGE_ELIGIBLE_MODELS: Set<string>;
21
+ /**
22
+ * Checks if a model is eligible for AI credits overage billing.
23
+ * @param model The model name to check.
24
+ * @returns true if the model supports credits overage, false otherwise.
25
+ */
26
+ export declare function isOverageEligibleModel(model: string): boolean;
27
+ /**
28
+ * Wraps a URL in the AccountChooser redirect to maintain user context.
29
+ * @param email User's email address for account selection
30
+ * @param continueUrl The destination URL after account selection
31
+ * @returns The full AccountChooser redirect URL
32
+ */
33
+ export declare function wrapInAccountChooser(email: string, continueUrl: string): string;
34
+ /**
35
+ * UTM campaign identifiers per the design doc.
36
+ */
37
+ export declare const G1_UTM_CAMPAIGNS: {
38
+ /** From Interception Flow "Manage" link (user has credits) */
39
+ readonly MANAGE_ACTIVITY: "hydrogen_cli_settings_ai_credits_activity_page";
40
+ /** From "Manage" to add more credits */
41
+ readonly MANAGE_ADD_CREDITS: "hydrogen_cli_settings_add_credits";
42
+ /** From Empty Wallet Flow "Get AI Credits" link */
43
+ readonly EMPTY_WALLET_ADD_CREDITS: "hydrogen_cli_insufficient_credits_add_credits";
44
+ };
45
+ /**
46
+ * Builds a G1 AI URL with UTM tracking parameters.
47
+ * @param path The path segment (e.g., 'activity' or 'credits')
48
+ * @param email User's email for AccountChooser wrapper
49
+ * @param campaign The UTM campaign identifier
50
+ * @returns The complete URL wrapped in AccountChooser
51
+ */
52
+ export declare function buildG1Url(path: 'activity' | 'credits', email: string, campaign: string): string;
53
+ /**
54
+ * Extracts the G1 AI credit balance from a tier's available credits.
55
+ * @param tier The user tier to check
56
+ * @returns The credit amount as a number, 0 if eligible but empty, or null if not eligible
57
+ */
58
+ export declare function getG1CreditBalance(tier: GeminiUserTier | null | undefined): number | null;
59
+ export declare const MIN_CREDIT_BALANCE = 50;
60
+ /**
61
+ * Determines if credits should be automatically used based on the overage strategy.
62
+ * @param strategy The configured overage strategy
63
+ * @param creditBalance The available credit balance
64
+ * @returns true if credits should be auto-used, false otherwise
65
+ */
66
+ export declare function shouldAutoUseCredits(strategy: OverageStrategy, creditBalance: number | null): boolean;
67
+ /**
68
+ * Determines if the overage menu should be shown based on the strategy.
69
+ * @param strategy The configured overage strategy
70
+ * @param creditBalance The available credit balance
71
+ * @returns true if the menu should be shown
72
+ */
73
+ export declare function shouldShowOverageMenu(strategy: OverageStrategy, creditBalance: number | null): boolean;
74
+ /**
75
+ * Determines if the empty wallet menu should be shown.
76
+ * @param strategy The configured overage strategy
77
+ * @param creditBalance The available credit balance
78
+ * @returns true if the empty wallet menu should be shown
79
+ */
80
+ export declare function shouldShowEmptyWalletMenu(strategy: OverageStrategy, creditBalance: number | null): boolean;
@@ -0,0 +1,127 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { PREVIEW_GEMINI_MODEL, PREVIEW_GEMINI_3_1_MODEL, } from '../config/models.js';
7
+ /** Credit type for Google One AI credits */
8
+ export const G1_CREDIT_TYPE = 'GOOGLE_ONE_AI';
9
+ /**
10
+ * The set of models that support AI credits overage billing.
11
+ * Only these models are eligible for the credits-based retry flow.
12
+ */
13
+ export const OVERAGE_ELIGIBLE_MODELS = new Set([
14
+ PREVIEW_GEMINI_MODEL,
15
+ PREVIEW_GEMINI_3_1_MODEL,
16
+ ]);
17
+ /**
18
+ * Checks if a model is eligible for AI credits overage billing.
19
+ * @param model The model name to check.
20
+ * @returns true if the model supports credits overage, false otherwise.
21
+ */
22
+ export function isOverageEligibleModel(model) {
23
+ return OVERAGE_ELIGIBLE_MODELS.has(model);
24
+ }
25
+ /** Base URL for Google One AI page */
26
+ const G1_AI_BASE_URL = 'https://one.google.com/ai';
27
+ /** AccountChooser URL for redirecting with email context */
28
+ const ACCOUNT_CHOOSER_URL = 'https://accounts.google.com/AccountChooser';
29
+ /** UTM parameters for CLI tracking */
30
+ const UTM_SOURCE = 'gemini_cli';
31
+ // TODO: change to 'desktop' when G1 service fix is rolled out
32
+ const UTM_MEDIUM = 'web';
33
+ /**
34
+ * Wraps a URL in the AccountChooser redirect to maintain user context.
35
+ * @param email User's email address for account selection
36
+ * @param continueUrl The destination URL after account selection
37
+ * @returns The full AccountChooser redirect URL
38
+ */
39
+ export function wrapInAccountChooser(email, continueUrl) {
40
+ const params = new URLSearchParams({
41
+ Email: email,
42
+ continue: continueUrl,
43
+ });
44
+ return `${ACCOUNT_CHOOSER_URL}?${params.toString()}`;
45
+ }
46
+ /**
47
+ * UTM campaign identifiers per the design doc.
48
+ */
49
+ export const G1_UTM_CAMPAIGNS = {
50
+ /** From Interception Flow "Manage" link (user has credits) */
51
+ MANAGE_ACTIVITY: 'hydrogen_cli_settings_ai_credits_activity_page',
52
+ /** From "Manage" to add more credits */
53
+ MANAGE_ADD_CREDITS: 'hydrogen_cli_settings_add_credits',
54
+ /** From Empty Wallet Flow "Get AI Credits" link */
55
+ EMPTY_WALLET_ADD_CREDITS: 'hydrogen_cli_insufficient_credits_add_credits',
56
+ };
57
+ /**
58
+ * Builds a G1 AI URL with UTM tracking parameters.
59
+ * @param path The path segment (e.g., 'activity' or 'credits')
60
+ * @param email User's email for AccountChooser wrapper
61
+ * @param campaign The UTM campaign identifier
62
+ * @returns The complete URL wrapped in AccountChooser
63
+ */
64
+ export function buildG1Url(path, email, campaign) {
65
+ const baseUrl = `${G1_AI_BASE_URL}/${path}`;
66
+ const params = new URLSearchParams({
67
+ utm_source: UTM_SOURCE,
68
+ utm_medium: UTM_MEDIUM,
69
+ utm_campaign: campaign,
70
+ });
71
+ const urlWithUtm = `${baseUrl}?${params.toString()}`;
72
+ return wrapInAccountChooser(email, urlWithUtm);
73
+ }
74
+ /**
75
+ * Extracts the G1 AI credit balance from a tier's available credits.
76
+ * @param tier The user tier to check
77
+ * @returns The credit amount as a number, 0 if eligible but empty, or null if not eligible
78
+ */
79
+ export function getG1CreditBalance(tier) {
80
+ if (!tier?.availableCredits) {
81
+ return null;
82
+ }
83
+ const g1Credits = tier.availableCredits.filter((credit) => credit.creditType === G1_CREDIT_TYPE);
84
+ if (g1Credits.length === 0) {
85
+ return null;
86
+ }
87
+ // creditAmount is an int64 represented as string; sum all matching entries
88
+ return g1Credits.reduce((sum, credit) => {
89
+ const amount = parseInt(credit.creditAmount ?? '0', 10);
90
+ return sum + (isNaN(amount) ? 0 : amount);
91
+ }, 0);
92
+ }
93
+ export const MIN_CREDIT_BALANCE = 50;
94
+ /**
95
+ * Determines if credits should be automatically used based on the overage strategy.
96
+ * @param strategy The configured overage strategy
97
+ * @param creditBalance The available credit balance
98
+ * @returns true if credits should be auto-used, false otherwise
99
+ */
100
+ export function shouldAutoUseCredits(strategy, creditBalance) {
101
+ return (strategy === 'always' &&
102
+ creditBalance != null &&
103
+ creditBalance >= MIN_CREDIT_BALANCE);
104
+ }
105
+ /**
106
+ * Determines if the overage menu should be shown based on the strategy.
107
+ * @param strategy The configured overage strategy
108
+ * @param creditBalance The available credit balance
109
+ * @returns true if the menu should be shown
110
+ */
111
+ export function shouldShowOverageMenu(strategy, creditBalance) {
112
+ return (strategy === 'ask' &&
113
+ creditBalance != null &&
114
+ creditBalance >= MIN_CREDIT_BALANCE);
115
+ }
116
+ /**
117
+ * Determines if the empty wallet menu should be shown.
118
+ * @param strategy The configured overage strategy
119
+ * @param creditBalance The available credit balance
120
+ * @returns true if the empty wallet menu should be shown
121
+ */
122
+ export function shouldShowEmptyWalletMenu(strategy, creditBalance) {
123
+ return (strategy !== 'never' &&
124
+ creditBalance != null &&
125
+ creditBalance < MIN_CREDIT_BALANCE);
126
+ }
127
+ //# sourceMappingURL=billing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../../src/billing/billing.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export {};
@@ -0,0 +1,182 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { describe, it, expect } from 'vitest';
7
+ import { buildG1Url, getG1CreditBalance, G1_CREDIT_TYPE, G1_UTM_CAMPAIGNS, isOverageEligibleModel, shouldAutoUseCredits, shouldShowEmptyWalletMenu, shouldShowOverageMenu, wrapInAccountChooser, } from './billing.js';
8
+ describe('billing', () => {
9
+ describe('wrapInAccountChooser', () => {
10
+ it('should wrap URL with AccountChooser redirect', () => {
11
+ const result = wrapInAccountChooser('user@gmail.com', 'https://one.google.com/ai/activity');
12
+ expect(result).toBe('https://accounts.google.com/AccountChooser?Email=user%40gmail.com&continue=https%3A%2F%2Fone.google.com%2Fai%2Factivity');
13
+ });
14
+ it('should handle special characters in email', () => {
15
+ const result = wrapInAccountChooser('user+test@example.com', 'https://example.com');
16
+ expect(result).toContain('Email=user%2Btest%40example.com');
17
+ });
18
+ });
19
+ describe('buildG1Url', () => {
20
+ it('should build activity URL with UTM params wrapped in AccountChooser', () => {
21
+ const result = buildG1Url('activity', 'user@gmail.com', G1_UTM_CAMPAIGNS.MANAGE_ACTIVITY);
22
+ // Should contain AccountChooser prefix
23
+ expect(result).toContain('https://accounts.google.com/AccountChooser');
24
+ expect(result).toContain('Email=user%40gmail.com');
25
+ // The continue URL should contain the G1 activity path and UTM params
26
+ expect(result).toContain('one.google.com%2Fai%2Factivity');
27
+ expect(result).toContain('utm_source%3Dgemini_cli');
28
+ expect(result).toContain('utm_campaign%3Dhydrogen_cli_settings_ai_credits_activity_page');
29
+ });
30
+ it('should build credits URL with UTM params wrapped in AccountChooser', () => {
31
+ const result = buildG1Url('credits', 'test@example.com', G1_UTM_CAMPAIGNS.EMPTY_WALLET_ADD_CREDITS);
32
+ expect(result).toContain('https://accounts.google.com/AccountChooser');
33
+ expect(result).toContain('one.google.com%2Fai%2Fcredits');
34
+ expect(result).toContain('utm_campaign%3Dhydrogen_cli_insufficient_credits_add_credits');
35
+ });
36
+ });
37
+ describe('getG1CreditBalance', () => {
38
+ it('should return null for null tier', () => {
39
+ expect(getG1CreditBalance(null)).toBeNull();
40
+ });
41
+ it('should return null for undefined tier', () => {
42
+ expect(getG1CreditBalance(undefined)).toBeNull();
43
+ });
44
+ it('should return null for tier without availableCredits', () => {
45
+ const tier = { id: 'PERSONAL' };
46
+ expect(getG1CreditBalance(tier)).toBeNull();
47
+ });
48
+ it('should return null for empty availableCredits array', () => {
49
+ const tier = { id: 'PERSONAL', availableCredits: [] };
50
+ expect(getG1CreditBalance(tier)).toBeNull();
51
+ });
52
+ it('should return null when no G1 credit type found', () => {
53
+ const tier = {
54
+ id: 'PERSONAL',
55
+ availableCredits: [
56
+ { creditType: 'CREDIT_TYPE_UNSPECIFIED', creditAmount: '100' },
57
+ ],
58
+ };
59
+ expect(getG1CreditBalance(tier)).toBeNull();
60
+ });
61
+ it('should return G1 credit balance when present', () => {
62
+ const tier = {
63
+ id: 'PERSONAL',
64
+ availableCredits: [{ creditType: G1_CREDIT_TYPE, creditAmount: '500' }],
65
+ };
66
+ expect(getG1CreditBalance(tier)).toBe(500);
67
+ });
68
+ it('should return G1 credit balance when multiple credit types present', () => {
69
+ const tier = {
70
+ id: 'PERSONAL',
71
+ availableCredits: [
72
+ { creditType: 'CREDIT_TYPE_UNSPECIFIED', creditAmount: '100' },
73
+ { creditType: G1_CREDIT_TYPE, creditAmount: '750' },
74
+ ],
75
+ };
76
+ expect(getG1CreditBalance(tier)).toBe(750);
77
+ });
78
+ it('should return 0 for invalid credit amount', () => {
79
+ const tier = {
80
+ id: 'PERSONAL',
81
+ availableCredits: [
82
+ { creditType: G1_CREDIT_TYPE, creditAmount: 'invalid' },
83
+ ],
84
+ };
85
+ expect(getG1CreditBalance(tier)).toBe(0);
86
+ });
87
+ it('should handle large credit amounts (int64 as string)', () => {
88
+ const tier = {
89
+ id: 'PERSONAL',
90
+ availableCredits: [
91
+ { creditType: G1_CREDIT_TYPE, creditAmount: '9999999999' },
92
+ ],
93
+ };
94
+ expect(getG1CreditBalance(tier)).toBe(9999999999);
95
+ });
96
+ it('should sum multiple credits of the same G1 type', () => {
97
+ const tier = {
98
+ id: 'PERSONAL',
99
+ availableCredits: [
100
+ { creditType: G1_CREDIT_TYPE, creditAmount: '1000' },
101
+ { creditType: G1_CREDIT_TYPE, creditAmount: '8' },
102
+ ],
103
+ };
104
+ expect(getG1CreditBalance(tier)).toBe(1008);
105
+ });
106
+ });
107
+ describe('shouldAutoUseCredits', () => {
108
+ it('should return true when strategy is always and balance > 0', () => {
109
+ expect(shouldAutoUseCredits('always', 100)).toBe(true);
110
+ });
111
+ it('should return false when strategy is always but balance is 0', () => {
112
+ expect(shouldAutoUseCredits('always', 0)).toBe(false);
113
+ });
114
+ it('should return false when strategy is ask', () => {
115
+ expect(shouldAutoUseCredits('ask', 100)).toBe(false);
116
+ });
117
+ it('should return false when strategy is never', () => {
118
+ expect(shouldAutoUseCredits('never', 100)).toBe(false);
119
+ });
120
+ it('should return false when creditBalance is null (ineligible)', () => {
121
+ expect(shouldAutoUseCredits('always', null)).toBe(false);
122
+ });
123
+ });
124
+ describe('shouldShowOverageMenu', () => {
125
+ it('should return true when strategy is ask and balance > 0', () => {
126
+ expect(shouldShowOverageMenu('ask', 100)).toBe(true);
127
+ });
128
+ it('should return false when strategy is ask but balance is 0', () => {
129
+ expect(shouldShowOverageMenu('ask', 0)).toBe(false);
130
+ });
131
+ it('should return false when strategy is always', () => {
132
+ expect(shouldShowOverageMenu('always', 100)).toBe(false);
133
+ });
134
+ it('should return false when strategy is never', () => {
135
+ expect(shouldShowOverageMenu('never', 100)).toBe(false);
136
+ });
137
+ it('should return false when creditBalance is null (ineligible)', () => {
138
+ expect(shouldShowOverageMenu('ask', null)).toBe(false);
139
+ });
140
+ });
141
+ describe('shouldShowEmptyWalletMenu', () => {
142
+ it('should return true when strategy is ask and balance is 0', () => {
143
+ expect(shouldShowEmptyWalletMenu('ask', 0)).toBe(true);
144
+ });
145
+ it('should return true when strategy is always and balance is 0', () => {
146
+ expect(shouldShowEmptyWalletMenu('always', 0)).toBe(true);
147
+ });
148
+ it('should return false when strategy is never', () => {
149
+ expect(shouldShowEmptyWalletMenu('never', 0)).toBe(false);
150
+ });
151
+ it('should return false when balance > 0', () => {
152
+ expect(shouldShowEmptyWalletMenu('ask', 100)).toBe(false);
153
+ });
154
+ it('should return false when creditBalance is null (ineligible)', () => {
155
+ expect(shouldShowEmptyWalletMenu('ask', null)).toBe(false);
156
+ });
157
+ });
158
+ describe('isOverageEligibleModel', () => {
159
+ it('should return true for gemini-3-pro-preview', () => {
160
+ expect(isOverageEligibleModel('gemini-3-pro-preview')).toBe(true);
161
+ });
162
+ it('should return true for gemini-3.1-pro-preview', () => {
163
+ expect(isOverageEligibleModel('gemini-3.1-pro-preview')).toBe(true);
164
+ });
165
+ it('should return true for gemini-3.1-pro-preview-customtools', () => {
166
+ expect(isOverageEligibleModel('gemini-3.1-pro-preview-customtools')).toBe(false);
167
+ });
168
+ it('should return false for gemini-3-flash-preview', () => {
169
+ expect(isOverageEligibleModel('gemini-3-flash-preview')).toBe(false);
170
+ });
171
+ it('should return false for gemini-2.5-pro', () => {
172
+ expect(isOverageEligibleModel('gemini-2.5-pro')).toBe(false);
173
+ });
174
+ it('should return false for gemini-2.5-flash', () => {
175
+ expect(isOverageEligibleModel('gemini-2.5-flash')).toBe(false);
176
+ });
177
+ it('should return false for custom model names', () => {
178
+ expect(isOverageEligibleModel('my-custom-model')).toBe(false);
179
+ });
180
+ });
181
+ });
182
+ //# sourceMappingURL=billing.test.js.map