@jsonstudio/rcc 0.89.164 → 0.89.333

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 (337) hide show
  1. package/README.md +18 -15
  2. package/dist/build-info.js +3 -3
  3. package/dist/build-info.js.map +1 -1
  4. package/dist/cli.js +32 -0
  5. package/dist/cli.js.map +1 -1
  6. package/dist/client/gemini-cli/gemini-cli-protocol-client.js +28 -5
  7. package/dist/client/gemini-cli/gemini-cli-protocol-client.js.map +1 -1
  8. package/dist/error-handling/quiet-error-handling-center.d.ts +9 -0
  9. package/dist/error-handling/quiet-error-handling-center.js +141 -0
  10. package/dist/error-handling/quiet-error-handling-center.js.map +1 -0
  11. package/dist/error-handling/route-error-hub.js +8 -2
  12. package/dist/error-handling/route-error-hub.js.map +1 -1
  13. package/dist/modules/pipeline/utils/colored-logger.d.ts +2 -0
  14. package/dist/modules/pipeline/utils/colored-logger.js +20 -3
  15. package/dist/modules/pipeline/utils/colored-logger.js.map +1 -1
  16. package/dist/providers/auth/antigravity-userinfo-helper.d.ts +10 -0
  17. package/dist/providers/auth/antigravity-userinfo-helper.js +140 -0
  18. package/dist/providers/auth/antigravity-userinfo-helper.js.map +1 -0
  19. package/dist/providers/auth/oauth-lifecycle.js +140 -8
  20. package/dist/providers/auth/oauth-lifecycle.js.map +1 -1
  21. package/dist/providers/auth/token-scanner/index.d.ts +32 -0
  22. package/dist/providers/auth/token-scanner/index.js +86 -0
  23. package/dist/providers/auth/token-scanner/index.js.map +1 -0
  24. package/dist/providers/auth/tokenfile-auth.d.ts +17 -0
  25. package/dist/providers/auth/tokenfile-auth.js +27 -5
  26. package/dist/providers/auth/tokenfile-auth.js.map +1 -1
  27. package/dist/providers/core/api/provider-types.d.ts +10 -0
  28. package/dist/providers/core/config/oauth-flows.d.ts +2 -0
  29. package/dist/providers/core/config/oauth-flows.js.map +1 -1
  30. package/dist/providers/core/config/provider-oauth-configs.js +85 -0
  31. package/dist/providers/core/config/provider-oauth-configs.js.map +1 -1
  32. package/dist/providers/core/config/service-profiles.js +15 -1
  33. package/dist/providers/core/config/service-profiles.js.map +1 -1
  34. package/dist/providers/core/runtime/base-provider.d.ts +8 -1
  35. package/dist/providers/core/runtime/base-provider.js +176 -108
  36. package/dist/providers/core/runtime/base-provider.js.map +1 -1
  37. package/dist/providers/core/runtime/gemini-cli-http-provider.d.ts +9 -5
  38. package/dist/providers/core/runtime/gemini-cli-http-provider.js +271 -69
  39. package/dist/providers/core/runtime/gemini-cli-http-provider.js.map +1 -1
  40. package/dist/providers/core/runtime/gemini-http-provider.d.ts +1 -2
  41. package/dist/providers/core/runtime/gemini-http-provider.js +0 -12
  42. package/dist/providers/core/runtime/gemini-http-provider.js.map +1 -1
  43. package/dist/providers/core/runtime/http-request-executor.d.ts +42 -0
  44. package/dist/providers/core/runtime/http-request-executor.js +133 -0
  45. package/dist/providers/core/runtime/http-request-executor.js.map +1 -0
  46. package/dist/providers/core/runtime/http-transport-provider.d.ts +32 -12
  47. package/dist/providers/core/runtime/http-transport-provider.js +464 -426
  48. package/dist/providers/core/runtime/http-transport-provider.js.map +1 -1
  49. package/dist/providers/core/runtime/provider-error-classifier.d.ts +25 -0
  50. package/dist/providers/core/runtime/provider-error-classifier.js +149 -0
  51. package/dist/providers/core/runtime/provider-error-classifier.js.map +1 -0
  52. package/dist/providers/core/runtime/provider-error-types.d.ts +23 -0
  53. package/dist/providers/core/runtime/provider-error-types.js +2 -0
  54. package/dist/providers/core/runtime/provider-error-types.js.map +1 -0
  55. package/dist/providers/core/runtime/provider-factory.d.ts +1 -0
  56. package/dist/providers/core/runtime/provider-factory.js +43 -8
  57. package/dist/providers/core/runtime/provider-factory.js.map +1 -1
  58. package/dist/providers/core/runtime/responses-provider.d.ts +3 -3
  59. package/dist/providers/core/runtime/responses-provider.js +48 -114
  60. package/dist/providers/core/runtime/responses-provider.js.map +1 -1
  61. package/dist/providers/core/strategies/oauth-auth-code-flow.js +11 -3
  62. package/dist/providers/core/strategies/oauth-auth-code-flow.js.map +1 -1
  63. package/dist/providers/core/utils/http-client.d.ts +5 -0
  64. package/dist/providers/core/utils/http-client.js +29 -3
  65. package/dist/providers/core/utils/http-client.js.map +1 -1
  66. package/dist/providers/core/utils/provider-error-reporter.js +8 -2
  67. package/dist/providers/core/utils/provider-error-reporter.js.map +1 -1
  68. package/dist/providers/core/utils/snapshot-writer.js +5 -1
  69. package/dist/providers/core/utils/snapshot-writer.js.map +1 -1
  70. package/dist/providers/profile/provider-profile-loader.js +8 -4
  71. package/dist/providers/profile/provider-profile-loader.js.map +1 -1
  72. package/dist/runtime/runtime-flags.d.ts +4 -0
  73. package/dist/runtime/runtime-flags.js +32 -0
  74. package/dist/runtime/runtime-flags.js.map +1 -0
  75. package/dist/server/handlers/handler-utils.js +29 -2
  76. package/dist/server/handlers/handler-utils.js.map +1 -1
  77. package/dist/server/handlers/messages-handler.js +27 -26
  78. package/dist/server/handlers/messages-handler.js.map +1 -1
  79. package/dist/server/handlers/responses-handler.js +35 -1
  80. package/dist/server/handlers/responses-handler.js.map +1 -1
  81. package/dist/server/runtime/http-server/index.d.ts +1 -0
  82. package/dist/server/runtime/http-server/index.js +39 -4
  83. package/dist/server/runtime/http-server/index.js.map +1 -1
  84. package/dist/server/runtime/http-server/request-executor.d.ts +4 -0
  85. package/dist/server/runtime/http-server/request-executor.js +99 -4
  86. package/dist/server/runtime/http-server/request-executor.js.map +1 -1
  87. package/dist/server/utils/sse-request-parser.d.ts +1 -0
  88. package/dist/server/utils/sse-request-parser.js +17 -6
  89. package/dist/server/utils/sse-request-parser.js.map +1 -1
  90. package/dist/server/utils/warmup-detector.d.ts +7 -0
  91. package/dist/server/utils/warmup-detector.js +125 -0
  92. package/dist/server/utils/warmup-detector.js.map +1 -0
  93. package/dist/server/utils/warmup-storm-tracker.d.ts +9 -0
  94. package/dist/server/utils/warmup-storm-tracker.js +61 -0
  95. package/dist/server/utils/warmup-storm-tracker.js.map +1 -0
  96. package/dist/utils/debug-utils.js +14 -0
  97. package/dist/utils/debug-utils.js.map +1 -1
  98. package/dist/utils/error-handler-registry.js +6 -5
  99. package/dist/utils/error-handler-registry.js.map +1 -1
  100. package/dist/utils/error-handling-utils.js +4 -3
  101. package/dist/utils/error-handling-utils.js.map +1 -1
  102. package/dist/utils/log-helpers.d.ts +6 -0
  103. package/dist/utils/log-helpers.js +90 -0
  104. package/dist/utils/log-helpers.js.map +1 -0
  105. package/dist/utils/logger.d.ts +8 -0
  106. package/dist/utils/logger.js +55 -2
  107. package/dist/utils/logger.js.map +1 -1
  108. package/dist/utils/snapshot-writer.js +2 -6
  109. package/dist/utils/snapshot-writer.js.map +1 -1
  110. package/node_modules/@jsonstudio/llms/dist/conversion/codecs/gemini-openai-codec.js +15 -1
  111. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/auto-thinking.d.ts +6 -0
  112. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/auto-thinking.js +25 -0
  113. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/field-mapping.d.ts +14 -0
  114. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/field-mapping.js +155 -0
  115. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/glm-tool-extraction.d.ts +2 -0
  116. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/glm-tool-extraction.js +264 -0
  117. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/qwen-transform.d.ts +3 -0
  118. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/qwen-transform.js +209 -0
  119. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/request-rules.d.ts +24 -0
  120. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/request-rules.js +63 -0
  121. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/response-blacklist.d.ts +14 -0
  122. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/response-blacklist.js +85 -0
  123. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/response-normalize.d.ts +5 -0
  124. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/response-normalize.js +121 -0
  125. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/response-validate.d.ts +5 -0
  126. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/response-validate.js +76 -0
  127. package/{dist/providers/compat/utils/snapshot-writer.d.ts → node_modules/@jsonstudio/llms/dist/conversion/compat/actions/snapshot.d.ts} +2 -2
  128. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/snapshot.js +21 -0
  129. package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/tool-schema.d.ts +6 -0
  130. package/{dist/providers/compat/glm/utils/tool-schema-helpers.js → node_modules/@jsonstudio/llms/dist/conversion/compat/actions/tool-schema.js} +6 -1
  131. package/{dist/providers/compat/filters → node_modules/@jsonstudio/llms/dist/conversion/compat/actions}/universal-shape-filter.d.ts +17 -22
  132. package/{dist/providers/compat/filters → node_modules/@jsonstudio/llms/dist/conversion/compat/actions}/universal-shape-filter.js +35 -99
  133. package/node_modules/@jsonstudio/llms/dist/conversion/compat/profiles/chat-glm.json +187 -13
  134. package/node_modules/@jsonstudio/llms/dist/conversion/compat/profiles/chat-iflow.json +177 -9
  135. package/node_modules/@jsonstudio/llms/dist/conversion/compat/profiles/chat-lmstudio.json +10 -2
  136. package/node_modules/@jsonstudio/llms/dist/conversion/compat/profiles/chat-qwen.json +14 -10
  137. package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/compat/compat-engine.d.ts +7 -2
  138. package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/compat/compat-engine.js +5 -665
  139. package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/compat/compat-pipeline-executor.d.ts +9 -0
  140. package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/compat/compat-pipeline-executor.js +845 -0
  141. package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/compat/compat-types.d.ts +47 -0
  142. package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/hub-pipeline.d.ts +2 -0
  143. package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/hub-pipeline.js +35 -1
  144. package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage3_compat/index.js +2 -2
  145. package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/target-utils.js +3 -0
  146. package/node_modules/@jsonstudio/llms/dist/conversion/hub/response/response-runtime.js +19 -2
  147. package/node_modules/@jsonstudio/llms/dist/conversion/responses/responses-host-policy.d.ts +6 -0
  148. package/node_modules/@jsonstudio/llms/dist/conversion/responses/responses-host-policy.js +14 -0
  149. package/node_modules/@jsonstudio/llms/dist/conversion/responses/responses-openai-bridge.js +51 -2
  150. package/node_modules/@jsonstudio/llms/dist/conversion/shared/anthropic-message-utils.js +6 -0
  151. package/node_modules/@jsonstudio/llms/dist/conversion/shared/responses-reasoning-registry.d.ts +4 -0
  152. package/node_modules/@jsonstudio/llms/dist/conversion/shared/responses-reasoning-registry.js +62 -1
  153. package/node_modules/@jsonstudio/llms/dist/conversion/shared/responses-response-utils.js +23 -1
  154. package/node_modules/@jsonstudio/llms/dist/conversion/shared/tool-canonicalizer.d.ts +2 -0
  155. package/node_modules/@jsonstudio/llms/dist/conversion/shared/tool-filter-pipeline.js +11 -0
  156. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/bootstrap.js +251 -12
  157. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/classifier.js +11 -4
  158. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/context-advisor.d.ts +21 -0
  159. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/context-advisor.js +76 -0
  160. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/engine.d.ts +11 -0
  161. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/engine.js +187 -28
  162. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/features.js +22 -457
  163. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/health-manager.js +2 -7
  164. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/message-utils.d.ts +7 -0
  165. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/message-utils.js +66 -0
  166. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/provider-registry.js +6 -2
  167. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/token-estimator.d.ts +2 -0
  168. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/token-estimator.js +16 -0
  169. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/token-file-scanner.d.ts +15 -0
  170. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/token-file-scanner.js +56 -0
  171. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/tool-signals.d.ts +13 -0
  172. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/tool-signals.js +403 -0
  173. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/types.d.ts +21 -1
  174. package/node_modules/@jsonstudio/llms/dist/router/virtual-router/types.js +1 -0
  175. package/node_modules/@jsonstudio/llms/package.json +2 -2
  176. package/package.json +13 -11
  177. package/scripts/README.md +26 -12
  178. package/scripts/auth-antigravity-token.mjs +64 -0
  179. package/scripts/auth-gemini-cli-token.mjs +96 -0
  180. package/scripts/auth-iflow-manual.mjs +81 -0
  181. package/scripts/auth-iflow-token-direct.mjs +87 -0
  182. package/scripts/auth-iflow-token.mjs +77 -0
  183. package/scripts/copy-compat-assets.mjs +3 -15
  184. package/scripts/install-verify.mjs +1 -0
  185. package/scripts/pack-mode.mjs +30 -1
  186. package/scripts/publish-rcc.mjs +31 -0
  187. package/scripts/replay-codex-sample.mjs +13 -8
  188. package/scripts/tests/chat-pipeline-blackbox.mjs +1 -1
  189. package/scripts/tools/capture-provider-goldens.mjs +8 -7
  190. package/scripts/verify-client-headers.mjs +224 -0
  191. package/dist/providers/compat/base-compatibility.d.ts +0 -27
  192. package/dist/providers/compat/base-compatibility.js +0 -143
  193. package/dist/providers/compat/base-compatibility.js.map +0 -1
  194. package/dist/providers/compat/compat-directory-loader.d.ts +0 -4
  195. package/dist/providers/compat/compat-directory-loader.js +0 -85
  196. package/dist/providers/compat/compat-directory-loader.js.map +0 -1
  197. package/dist/providers/compat/compatibility-adapter.d.ts +0 -18
  198. package/dist/providers/compat/compatibility-adapter.js +0 -104
  199. package/dist/providers/compat/compatibility-adapter.js.map +0 -1
  200. package/dist/providers/compat/compatibility-factory.d.ts +0 -57
  201. package/dist/providers/compat/compatibility-factory.js +0 -155
  202. package/dist/providers/compat/compatibility-factory.js.map +0 -1
  203. package/dist/providers/compat/compatibility-interface.d.ts +0 -35
  204. package/dist/providers/compat/compatibility-interface.js +0 -2
  205. package/dist/providers/compat/compatibility-interface.js.map +0 -1
  206. package/dist/providers/compat/compatibility-manager.d.ts +0 -85
  207. package/dist/providers/compat/compatibility-manager.js +0 -368
  208. package/dist/providers/compat/compatibility-manager.js.map +0 -1
  209. package/dist/providers/compat/config/config-compatibility.d.ts +0 -28
  210. package/dist/providers/compat/config/config-compatibility.js +0 -95
  211. package/dist/providers/compat/config/config-compatibility.js.map +0 -1
  212. package/dist/providers/compat/field-mapping.d.ts +0 -102
  213. package/dist/providers/compat/field-mapping.js +0 -447
  214. package/dist/providers/compat/field-mapping.js.map +0 -1
  215. package/dist/providers/compat/filters/blacklist-sanitizer.d.ts +0 -45
  216. package/dist/providers/compat/filters/blacklist-sanitizer.js +0 -133
  217. package/dist/providers/compat/filters/blacklist-sanitizer.js.map +0 -1
  218. package/dist/providers/compat/filters/response-blacklist-sanitizer.d.ts +0 -28
  219. package/dist/providers/compat/filters/response-blacklist-sanitizer.js +0 -138
  220. package/dist/providers/compat/filters/response-blacklist-sanitizer.js.map +0 -1
  221. package/dist/providers/compat/filters/universal-shape-filter.js.map +0 -1
  222. package/dist/providers/compat/glm/config/blacklist-rules.json +0 -22
  223. package/dist/providers/compat/glm/config/field-mappings.json +0 -92
  224. package/dist/providers/compat/glm/config/response-blacklist.json +0 -7
  225. package/dist/providers/compat/glm/config/shape-filters.json +0 -37
  226. package/dist/providers/compat/glm/field-mapping/field-mapping-processor.d.ts +0 -28
  227. package/dist/providers/compat/glm/field-mapping/field-mapping-processor.js +0 -306
  228. package/dist/providers/compat/glm/field-mapping/field-mapping-processor.js.map +0 -1
  229. package/dist/providers/compat/glm/functions/glm-processor.d.ts +0 -50
  230. package/dist/providers/compat/glm/functions/glm-processor.js +0 -134
  231. package/dist/providers/compat/glm/functions/glm-processor.js.map +0 -1
  232. package/dist/providers/compat/glm/glm-compatibility.d.ts +0 -34
  233. package/dist/providers/compat/glm/glm-compatibility.js +0 -117
  234. package/dist/providers/compat/glm/glm-compatibility.js.map +0 -1
  235. package/dist/providers/compat/glm/hooks/base-hook.d.ts +0 -21
  236. package/dist/providers/compat/glm/hooks/base-hook.js +0 -53
  237. package/dist/providers/compat/glm/hooks/base-hook.js.map +0 -1
  238. package/dist/providers/compat/glm/hooks/glm-request-validation-hook.d.ts +0 -24
  239. package/dist/providers/compat/glm/hooks/glm-request-validation-hook.js +0 -268
  240. package/dist/providers/compat/glm/hooks/glm-request-validation-hook.js.map +0 -1
  241. package/dist/providers/compat/glm/hooks/glm-response-normalization-hook.d.ts +0 -21
  242. package/dist/providers/compat/glm/hooks/glm-response-normalization-hook.js +0 -171
  243. package/dist/providers/compat/glm/hooks/glm-response-normalization-hook.js.map +0 -1
  244. package/dist/providers/compat/glm/hooks/glm-response-validation-hook.d.ts +0 -25
  245. package/dist/providers/compat/glm/hooks/glm-response-validation-hook.js +0 -236
  246. package/dist/providers/compat/glm/hooks/glm-response-validation-hook.js.map +0 -1
  247. package/dist/providers/compat/glm/hooks/glm-tool-cleaning-hook.d.ts +0 -26
  248. package/dist/providers/compat/glm/hooks/glm-tool-cleaning-hook.js +0 -186
  249. package/dist/providers/compat/glm/hooks/glm-tool-cleaning-hook.js.map +0 -1
  250. package/dist/providers/compat/glm/index.d.ts +0 -24
  251. package/dist/providers/compat/glm/index.js +0 -29
  252. package/dist/providers/compat/glm/index.js.map +0 -1
  253. package/dist/providers/compat/glm/utils/tool-schema-helpers.d.ts +0 -3
  254. package/dist/providers/compat/glm/utils/tool-schema-helpers.js.map +0 -1
  255. package/dist/providers/compat/iflow/config/field-mappings.json +0 -92
  256. package/dist/providers/compat/iflow/config/shape-filters.json +0 -37
  257. package/dist/providers/compat/iflow/field-mapping/iflow-field-mapping-processor.d.ts +0 -34
  258. package/dist/providers/compat/iflow/field-mapping/iflow-field-mapping-processor.js +0 -386
  259. package/dist/providers/compat/iflow/field-mapping/iflow-field-mapping-processor.js.map +0 -1
  260. package/dist/providers/compat/iflow/functions/iflow-processor.d.ts +0 -53
  261. package/dist/providers/compat/iflow/functions/iflow-processor.js +0 -215
  262. package/dist/providers/compat/iflow/functions/iflow-processor.js.map +0 -1
  263. package/dist/providers/compat/iflow/hooks/base-hook.d.ts +0 -23
  264. package/dist/providers/compat/iflow/hooks/base-hook.js +0 -59
  265. package/dist/providers/compat/iflow/hooks/base-hook.js.map +0 -1
  266. package/dist/providers/compat/iflow/hooks/iflow-request-validation-hook.d.ts +0 -23
  267. package/dist/providers/compat/iflow/hooks/iflow-request-validation-hook.js +0 -279
  268. package/dist/providers/compat/iflow/hooks/iflow-request-validation-hook.js.map +0 -1
  269. package/dist/providers/compat/iflow/hooks/iflow-response-normalization-hook.d.ts +0 -20
  270. package/dist/providers/compat/iflow/hooks/iflow-response-normalization-hook.js +0 -180
  271. package/dist/providers/compat/iflow/hooks/iflow-response-normalization-hook.js.map +0 -1
  272. package/dist/providers/compat/iflow/hooks/iflow-response-validation-hook.d.ts +0 -23
  273. package/dist/providers/compat/iflow/hooks/iflow-response-validation-hook.js +0 -232
  274. package/dist/providers/compat/iflow/hooks/iflow-response-validation-hook.js.map +0 -1
  275. package/dist/providers/compat/iflow/hooks/iflow-tool-cleaning-hook.d.ts +0 -25
  276. package/dist/providers/compat/iflow/hooks/iflow-tool-cleaning-hook.js +0 -216
  277. package/dist/providers/compat/iflow/hooks/iflow-tool-cleaning-hook.js.map +0 -1
  278. package/dist/providers/compat/iflow/iflow-compatibility.d.ts +0 -24
  279. package/dist/providers/compat/iflow/iflow-compatibility.js +0 -94
  280. package/dist/providers/compat/iflow/iflow-compatibility.js.map +0 -1
  281. package/dist/providers/compat/index.d.ts +0 -59
  282. package/dist/providers/compat/index.js +0 -83
  283. package/dist/providers/compat/index.js.map +0 -1
  284. package/dist/providers/compat/lmstudio-compatibility.d.ts +0 -44
  285. package/dist/providers/compat/lmstudio-compatibility.js +0 -193
  286. package/dist/providers/compat/lmstudio-compatibility.js.map +0 -1
  287. package/dist/providers/compat/passthrough-compatibility.d.ts +0 -29
  288. package/dist/providers/compat/passthrough-compatibility.js +0 -83
  289. package/dist/providers/compat/passthrough-compatibility.js.map +0 -1
  290. package/dist/providers/compat/profiles/chat/glm/index.d.ts +0 -6
  291. package/dist/providers/compat/profiles/chat/glm/index.js +0 -6
  292. package/dist/providers/compat/profiles/chat/glm/index.js.map +0 -1
  293. package/dist/providers/compat/profiles/chat/iflow/index.d.ts +0 -6
  294. package/dist/providers/compat/profiles/chat/iflow/index.js +0 -6
  295. package/dist/providers/compat/profiles/chat/iflow/index.js.map +0 -1
  296. package/dist/providers/compat/profiles/chat/lmstudio/index.d.ts +0 -6
  297. package/dist/providers/compat/profiles/chat/lmstudio/index.js +0 -6
  298. package/dist/providers/compat/profiles/chat/lmstudio/index.js.map +0 -1
  299. package/dist/providers/compat/profiles/chat/qwen/index.d.ts +0 -6
  300. package/dist/providers/compat/profiles/chat/qwen/index.js +0 -6
  301. package/dist/providers/compat/profiles/chat/qwen/index.js.map +0 -1
  302. package/dist/providers/compat/profiles/compat/passthrough/index.d.ts +0 -6
  303. package/dist/providers/compat/profiles/compat/passthrough/index.js +0 -6
  304. package/dist/providers/compat/profiles/compat/passthrough/index.js.map +0 -1
  305. package/dist/providers/compat/profiles/responses/c4m/index.d.ts +0 -6
  306. package/dist/providers/compat/profiles/responses/c4m/index.js +0 -6
  307. package/dist/providers/compat/profiles/responses/c4m/index.js.map +0 -1
  308. package/dist/providers/compat/profiles/responses/default/index.d.ts +0 -6
  309. package/dist/providers/compat/profiles/responses/default/index.js +0 -6
  310. package/dist/providers/compat/profiles/responses/default/index.js.map +0 -1
  311. package/dist/providers/compat/profiles/responses/fai/index.d.ts +0 -6
  312. package/dist/providers/compat/profiles/responses/fai/index.js +0 -6
  313. package/dist/providers/compat/profiles/responses/fai/index.js.map +0 -1
  314. package/dist/providers/compat/profiles/responses/fc/index.d.ts +0 -6
  315. package/dist/providers/compat/profiles/responses/fc/index.js +0 -6
  316. package/dist/providers/compat/profiles/responses/fc/index.js.map +0 -1
  317. package/dist/providers/compat/qwen/index.d.ts +0 -4
  318. package/dist/providers/compat/qwen/index.js +0 -6
  319. package/dist/providers/compat/qwen/index.js.map +0 -1
  320. package/dist/providers/compat/qwen-compatibility.d.ts +0 -52
  321. package/dist/providers/compat/qwen-compatibility.js +0 -330
  322. package/dist/providers/compat/qwen-compatibility.js.map +0 -1
  323. package/dist/providers/compat/register-compat-module.d.ts +0 -8
  324. package/dist/providers/compat/register-compat-module.js +0 -53
  325. package/dist/providers/compat/register-compat-module.js.map +0 -1
  326. package/dist/providers/compat/responses/c4m-responses-compatibility.d.ts +0 -27
  327. package/dist/providers/compat/responses/c4m-responses-compatibility.js +0 -197
  328. package/dist/providers/compat/responses/c4m-responses-compatibility.js.map +0 -1
  329. package/dist/providers/compat/standard-compatibility-utils.d.ts +0 -1
  330. package/dist/providers/compat/standard-compatibility-utils.js +0 -77
  331. package/dist/providers/compat/standard-compatibility-utils.js.map +0 -1
  332. package/dist/providers/compat/standard-compatibility.d.ts +0 -31
  333. package/dist/providers/compat/standard-compatibility.js +0 -118
  334. package/dist/providers/compat/standard-compatibility.js.map +0 -1
  335. package/dist/providers/compat/utils/snapshot-writer.js +0 -62
  336. package/dist/providers/compat/utils/snapshot-writer.js.map +0 -1
  337. package/scripts/check-glm-compat.mjs +0 -47
@@ -6,6 +6,27 @@
6
6
  import { attachProviderRuntimeMetadata, extractProviderRuntimeMetadata } from './provider-runtime-metadata.js';
7
7
  import { emitProviderError, buildRuntimeFromProviderContext } from '../utils/provider-error-reporter.js';
8
8
  import { normalizeProviderFamily, normalizeProviderType, providerTypeToProtocol } from '../utils/provider-type-utils.js';
9
+ import { classifyProviderError } from './provider-error-classifier.js';
10
+ import * as LlmsCore from '@jsonstudio/llms';
11
+ function getStatsCenterSafe() {
12
+ const anyLlms = LlmsCore;
13
+ try {
14
+ if (anyLlms && typeof anyLlms.getStatsCenter === 'function') {
15
+ const center = anyLlms.getStatsCenter();
16
+ if (center && typeof center.recordProviderUsage === 'function') {
17
+ return center;
18
+ }
19
+ }
20
+ }
21
+ catch {
22
+ // fall through to no-op
23
+ }
24
+ return {
25
+ recordProviderUsage: () => {
26
+ // stats center not available in this @jsonstudio/llms build
27
+ }
28
+ };
29
+ }
9
30
  /**
10
31
  * 基础Provider抽象类
11
32
  *
@@ -20,9 +41,12 @@ export class BaseProvider {
20
41
  requestCount = 0;
21
42
  errorCount = 0;
22
43
  lastActivity = Date.now();
44
+ authMode = 'apikey';
45
+ oauthProviderId;
23
46
  lastRuntimeMetadata;
24
47
  runtimeProfile;
25
- rateLimitFailures = new Map();
48
+ static rateLimitFailures = new Map();
49
+ static RATE_LIMIT_THRESHOLD = 4;
26
50
  constructor(config, dependencies) {
27
51
  this.id = `provider-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
28
52
  this.config = config;
@@ -73,9 +97,10 @@ export class BaseProvider {
73
97
  const response = await this.sendRequest(processedRequest);
74
98
  // 后处理响应
75
99
  const finalResponse = await this.postprocessResponse(response, context);
100
+ const endTime = Date.now();
76
101
  this.dependencies.logger?.logProviderRequest(this.id, 'request-success', {
77
102
  requestId: context.requestId,
78
- responseTime: Date.now() - context.startTime
103
+ responseTime: endTime - context.startTime
79
104
  });
80
105
  this.resetRateLimitCounter(context.providerKey);
81
106
  return finalResponse;
@@ -96,6 +121,7 @@ export class BaseProvider {
96
121
  }
97
122
  const context = this.createContext(request);
98
123
  const runtimeMetadata = context.runtimeMetadata;
124
+ const stats = getStatsCenterSafe();
99
125
  try {
100
126
  this.requestCount++;
101
127
  this.lastActivity = Date.now();
@@ -106,11 +132,53 @@ export class BaseProvider {
106
132
  const response = await this.sendRequestInternal(processedRequest);
107
133
  // 后处理响应
108
134
  const finalResponse = await this.postprocessResponse(response, context);
135
+ const endTime = Date.now();
109
136
  this.resetRateLimitCounter(context.providerKey);
137
+ try {
138
+ const usage = this.extractUsageTokensFromResponse(finalResponse);
139
+ const event = {
140
+ requestId: context.requestId,
141
+ timestamp: endTime,
142
+ providerKey: context.providerKey || runtimeMetadata?.providerKey || this.getRuntimeProfile()?.providerKey || this.providerType,
143
+ runtimeKey: this.getRuntimeProfile()?.runtimeKey,
144
+ providerType: context.providerType,
145
+ modelId: context.model,
146
+ routeName: context.routeName,
147
+ entryEndpoint: typeof context.metadata?.entryEndpoint === 'string' ? context.metadata.entryEndpoint : undefined,
148
+ success: true,
149
+ latencyMs: endTime - context.startTime,
150
+ promptTokens: usage.promptTokens,
151
+ completionTokens: usage.completionTokens,
152
+ totalTokens: usage.totalTokens
153
+ };
154
+ stats.recordProviderUsage(event);
155
+ }
156
+ catch {
157
+ // ignore stats errors
158
+ }
110
159
  return finalResponse;
111
160
  }
112
161
  catch (error) {
113
162
  this.errorCount++;
163
+ const endTime = Date.now();
164
+ try {
165
+ const event = {
166
+ requestId: context.requestId,
167
+ timestamp: endTime,
168
+ providerKey: context.providerKey || runtimeMetadata?.providerKey || this.getRuntimeProfile()?.providerKey || this.providerType,
169
+ runtimeKey: this.getRuntimeProfile()?.runtimeKey,
170
+ providerType: context.providerType,
171
+ modelId: context.model,
172
+ routeName: context.routeName,
173
+ entryEndpoint: typeof context.metadata?.entryEndpoint === 'string' ? context.metadata.entryEndpoint : undefined,
174
+ success: false,
175
+ latencyMs: endTime - context.startTime
176
+ };
177
+ stats.recordProviderUsage(event);
178
+ }
179
+ catch {
180
+ // ignore stats errors
181
+ }
114
182
  this.handleRequestError(error, context);
115
183
  throw error;
116
184
  }
@@ -166,6 +234,46 @@ export class BaseProvider {
166
234
  getCurrentRuntimeMetadata() {
167
235
  return this.lastRuntimeMetadata;
168
236
  }
237
+ extractUsageTokensFromResponse(finalResponse) {
238
+ if (!finalResponse || typeof finalResponse !== 'object') {
239
+ return {};
240
+ }
241
+ const container = finalResponse;
242
+ const meta = (container.metadata && typeof container.metadata === 'object')
243
+ ? container.metadata
244
+ : undefined;
245
+ const usageNode = meta && meta.usage && typeof meta.usage === 'object'
246
+ ? meta.usage
247
+ : (container.usage && typeof container.usage === 'object'
248
+ ? container.usage
249
+ : undefined);
250
+ if (!usageNode) {
251
+ return {};
252
+ }
253
+ const readNumber = (value) => {
254
+ if (typeof value !== 'number') {
255
+ return undefined;
256
+ }
257
+ if (!Number.isFinite(value)) {
258
+ return undefined;
259
+ }
260
+ return value;
261
+ };
262
+ const promptTokens = readNumber(usageNode.prompt_tokens) ??
263
+ readNumber(usageNode.promptTokens) ??
264
+ readNumber(usageNode.input_tokens) ??
265
+ readNumber(usageNode.inputTokens);
266
+ const completionTokens = readNumber(usageNode.completion_tokens) ??
267
+ readNumber(usageNode.completionTokens) ??
268
+ readNumber(usageNode.output_tokens) ??
269
+ readNumber(usageNode.outputTokens);
270
+ let totalTokens = readNumber(usageNode.total_tokens) ??
271
+ readNumber(usageNode.totalTokens);
272
+ if (totalTokens === undefined && (promptTokens !== undefined || completionTokens !== undefined)) {
273
+ totalTokens = (promptTokens ?? 0) + (completionTokens ?? 0);
274
+ }
275
+ return { promptTokens, completionTokens, totalTokens };
276
+ }
169
277
  createContext(request) {
170
278
  const runtimeMetadata = extractProviderRuntimeMetadata(request);
171
279
  this.lastRuntimeMetadata = runtimeMetadata;
@@ -210,67 +318,26 @@ export class BaseProvider {
210
318
  }
211
319
  handleRequestError(error, context) {
212
320
  const now = Date.now();
213
- const err = (error instanceof Error ? error : new Error(String(error)));
214
- const msg = typeof err.message === 'string' ? err.message : String(error ?? 'unknown error');
215
- // 1) 提取状态码:优先 err.statusCode;否则从 message 中提取第一个 "HTTP <3xx>" 数字
216
- let statusCode = err.statusCode;
217
- if (!statusCode) {
218
- try {
219
- const m = msg.match(/HTTP\s+(\d{3})/i);
220
- if (m) {
221
- statusCode = parseInt(m[1], 10);
222
- }
223
- }
224
- catch { /* ignore */ }
225
- }
226
- const augmentedError = err;
227
- const upstream = augmentedError.response?.data;
228
- const upstreamCode = augmentedError.code || upstream?.error?.code;
229
- const upstreamMessage = upstream?.error?.message;
230
- const statusText = String(statusCode ?? '');
231
- const msgLower = msg.toLowerCase();
232
- const isNetworkError = !statusCode && looksLikeNetworkTransportError(augmentedError, msgLower);
233
- // 2) 429 限流:可恢复 + 连续 4 次熔断
234
- const isRateLimit = statusText.includes('429') || msgLower.includes('429');
235
- // 3) 可恢复池:目前仅 400、429
236
- const isClient400 = statusText.includes('400') || msgLower.includes('400');
237
- const isExplicitRecoverable = isRateLimit || isClient400;
238
- // 4) 不可恢复:401 / 402 / 500 / 524 以及所有不在可恢复池里的
239
- const is401 = statusText.includes('401') || msgLower.includes('401');
240
- const is402 = statusText.includes('402') || msgLower.includes('402');
241
- const is500 = statusText.includes('500') || msgLower.includes('500');
242
- const is524 = statusText.includes('524') || msgLower.includes('524');
243
- let recoverable = isExplicitRecoverable;
244
- if (isNetworkError) {
245
- recoverable = true;
246
- }
247
- if (is401 || is402 || is500 || is524) {
248
- recoverable = false;
249
- }
250
321
  const runtimeProfile = this.getRuntimeProfile();
322
+ const classification = classifyProviderError({
323
+ error,
324
+ context,
325
+ detectDailyLimit: (messageLower, upstreamLower) => this.isDailyLimitRateLimit(messageLower, upstreamLower),
326
+ registerRateLimitFailure: this.registerRateLimitFailure.bind(this),
327
+ forceRateLimitFailure: this.forceRateLimitFailure.bind(this),
328
+ authMode: this.authMode
329
+ });
330
+ const augmentedError = classification.error;
331
+ const msg = classification.message;
332
+ const statusCode = classification.statusCode;
333
+ const upstreamCode = classification.upstreamCode;
334
+ const upstreamMessage = classification.upstreamMessage;
251
335
  const providerKey = context.providerKey || runtimeProfile?.providerKey;
252
- // 5) 是否影响健康:除非可恢复,一律影响健康
253
- let affectsHealth = !recoverable;
254
- if (isRateLimit && recoverable) {
255
- // rate-limit 由熔断计数器决定是否升级为健康问题
256
- affectsHealth = false;
257
- }
258
- let forceFatalRateLimit = false;
259
- if (isRateLimit) {
260
- const escalated = this.registerRateLimitFailure(providerKey);
261
- affectsHealth = escalated;
262
- forceFatalRateLimit = escalated;
263
- if (escalated) {
264
- recoverable = false;
265
- }
266
- else {
267
- recoverable = true;
268
- }
269
- }
270
- else if (providerKey) {
271
- this.resetRateLimitCounter(providerKey);
336
+ if (!classification.isRateLimit && providerKey) {
337
+ this.resetRateLimitCounter(providerKey, context.model);
272
338
  }
273
- // 统一错误日志
339
+ const affectsHealth = classification.affectsHealth;
340
+ const recoverable = classification.forceFatalRateLimit ? false : classification.recoverable;
274
341
  this.dependencies.logger?.logModule(this.id, 'request-error', {
275
342
  requestId: context.requestId,
276
343
  error: msg,
@@ -281,7 +348,7 @@ export class BaseProvider {
281
348
  providerFamily: context.providerFamily,
282
349
  providerId: context.providerId,
283
350
  providerProtocol: context.providerProtocol,
284
- providerKey: context.providerKey || runtimeProfile?.providerKey,
351
+ providerKey: providerKey,
285
352
  runtimeKey: runtimeProfile?.runtimeKey,
286
353
  processingTime: now - context.startTime
287
354
  });
@@ -297,17 +364,16 @@ export class BaseProvider {
297
364
  requestContext: context.runtimeMetadata,
298
365
  meta: augmentedError.details
299
366
  };
300
- const enrichedError = augmentedError;
301
- if (!enrichedError.requestId) {
302
- enrichedError.requestId = context.requestId;
367
+ if (!augmentedError.requestId) {
368
+ augmentedError.requestId = context.requestId;
303
369
  }
304
- enrichedError.providerKey = context.providerKey;
305
- enrichedError.providerId = context.providerId;
306
- enrichedError.providerType = context.providerType;
307
- enrichedError.providerFamily = context.providerFamily;
308
- enrichedError.routeName = context.routeName;
309
- enrichedError.details = {
310
- ...(enrichedError.details || {}),
370
+ augmentedError.providerKey = context.providerKey;
371
+ augmentedError.providerId = context.providerId;
372
+ augmentedError.providerType = context.providerType;
373
+ augmentedError.providerFamily = context.providerFamily;
374
+ augmentedError.routeName = context.routeName;
375
+ augmentedError.details = {
376
+ ...(augmentedError.details || {}),
311
377
  ...enrichedDetails,
312
378
  providerKey: enrichedDetails.providerKey,
313
379
  providerType: context.providerType,
@@ -317,12 +383,12 @@ export class BaseProvider {
317
383
  requestId: context.requestId
318
384
  };
319
385
  emitProviderError({
320
- error: err,
386
+ error: augmentedError,
321
387
  stage: 'provider.http',
322
388
  runtime: buildRuntimeFromProviderContext(context),
323
389
  dependencies: this.dependencies,
324
390
  statusCode,
325
- recoverable: forceFatalRateLimit ? false : recoverable,
391
+ recoverable,
326
392
  affectsHealth,
327
393
  details: enrichedDetails
328
394
  });
@@ -343,58 +409,60 @@ export class BaseProvider {
343
409
  }
344
410
  return Boolean(tools);
345
411
  }
346
- registerRateLimitFailure(providerKey) {
412
+ getRateLimitBucketKey(providerKey, model) {
347
413
  if (!providerKey) {
414
+ return undefined;
415
+ }
416
+ const runtimeProfile = this.getRuntimeProfile();
417
+ const providerId = runtimeProfile?.providerId || this.config.config.providerId;
418
+ if (providerId === 'antigravity' && model) {
419
+ return `${providerKey}::${model}`;
420
+ }
421
+ return providerKey;
422
+ }
423
+ registerRateLimitFailure(providerKey, model) {
424
+ const bucketKey = this.getRateLimitBucketKey(providerKey, model);
425
+ if (!bucketKey) {
348
426
  return false;
349
427
  }
350
- const current = this.rateLimitFailures.get(providerKey) ?? 0;
428
+ const current = BaseProvider.rateLimitFailures.get(bucketKey) ?? 0;
351
429
  const next = current + 1;
352
- this.rateLimitFailures.set(providerKey, next);
430
+ BaseProvider.rateLimitFailures.set(bucketKey, next);
353
431
  // 调试:记录当前 key 的第几次 429 命中,方便观察是否触发熔断
354
432
  if (this.dependencies.logger) {
355
433
  this.dependencies.logger.logModule(this.id, 'rate-limit-429', {
356
- providerKey,
434
+ providerKey: bucketKey,
357
435
  hitCount: next
358
436
  });
359
437
  }
360
- if (next >= 4) {
361
- this.rateLimitFailures.set(providerKey, 0);
438
+ if (next >= BaseProvider.RATE_LIMIT_THRESHOLD) {
439
+ BaseProvider.rateLimitFailures.set(bucketKey, 0);
362
440
  return true;
363
441
  }
364
442
  return false;
365
443
  }
366
- resetRateLimitCounter(providerKey) {
367
- if (!providerKey) {
444
+ resetRateLimitCounter(providerKey, model) {
445
+ const bucketKey = this.getRateLimitBucketKey(providerKey, model);
446
+ if (!bucketKey) {
368
447
  return;
369
448
  }
370
- this.rateLimitFailures.delete(providerKey);
449
+ BaseProvider.rateLimitFailures.delete(bucketKey);
371
450
  }
372
- }
373
- const NETWORK_ERROR_CODE_SET = new Set([
374
- 'ECONNRESET',
375
- 'ECONNREFUSED',
376
- 'EHOSTUNREACH',
377
- 'ENOTFOUND',
378
- 'EAI_AGAIN',
379
- 'EPIPE',
380
- 'ETIMEDOUT',
381
- 'ECONNABORTED'
382
- ]);
383
- function looksLikeNetworkTransportError(error, msgLower) {
384
- const code = typeof error.code === 'string' ? error.code : undefined;
385
- if (code && NETWORK_ERROR_CODE_SET.has(code)) {
386
- return true;
451
+ forceRateLimitFailure(providerKey, model) {
452
+ const bucketKey = this.getRateLimitBucketKey(providerKey, model);
453
+ if (!bucketKey) {
454
+ return;
455
+ }
456
+ BaseProvider.rateLimitFailures.set(bucketKey, BaseProvider.RATE_LIMIT_THRESHOLD);
457
+ }
458
+ isDailyLimitRateLimit(messageLower, upstreamLower) {
459
+ const haystack = `${messageLower} ${upstreamLower ?? ''}`;
460
+ return (haystack.includes('daily cost limit') ||
461
+ haystack.includes('daily quota') ||
462
+ haystack.includes('quota has been exhausted') ||
463
+ haystack.includes('quota exceeded') ||
464
+ haystack.includes('费用限制') ||
465
+ haystack.includes('每日费用限制'));
387
466
  }
388
- const hints = [
389
- 'fetch failed',
390
- 'network timeout',
391
- 'socket hang up',
392
- 'client network socket disconnected',
393
- 'tls handshake timeout',
394
- 'unable to verify the first certificate',
395
- 'network error',
396
- 'temporarily unreachable'
397
- ];
398
- return hints.some((hint) => msgLower.includes(hint));
399
467
  }
400
468
  //# sourceMappingURL=base-provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base-provider.js","sourceRoot":"","sources":["../../../../src/providers/core/runtime/base-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-provider.js","sourceRoot":"","sources":["../../../../src/providers/core/runtime/base-provider.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@
9
9
  */
10
10
  import { HttpTransportProvider } from './http-transport-provider.js';
11
11
  import type { OpenAIStandardConfig } from '../api/provider-config.js';
12
- import type { ProviderContext, ServiceProfile } from '../api/provider-types.js';
12
+ import type { ProviderContext } from '../api/provider-types.js';
13
13
  import type { UnknownObject } from '../../../types/common-types.js';
14
14
  import type { ModuleDependencies } from '../../../modules/pipeline/interfaces/pipeline-interfaces.js';
15
15
  type DataEnvelope = UnknownObject & {
@@ -17,18 +17,22 @@ type DataEnvelope = UnknownObject & {
17
17
  };
18
18
  export declare class GeminiCLIHttpProvider extends HttpTransportProvider {
19
19
  constructor(config: OpenAIStandardConfig, dependencies: ModuleDependencies);
20
- protected getServiceProfile(): ServiceProfile;
21
20
  protected preprocessRequest(request: UnknownObject): Promise<UnknownObject>;
21
+ protected wantsUpstreamSse(request: UnknownObject, context: ProviderContext): boolean;
22
+ protected finalizeRequestHeaders(headers: Record<string, string>, request: UnknownObject): Promise<Record<string, string>>;
22
23
  protected postprocessResponse(response: unknown, context: ProviderContext): Promise<UnknownObject>;
24
+ protected wrapUpstreamSseResponse(stream: NodeJS.ReadableStream, context: ProviderContext): Promise<UnknownObject>;
25
+ private isAntigravityRuntime;
23
26
  private resolvePayload;
24
27
  protected hasDataEnvelope(payload: UnknownObject): payload is DataEnvelope;
25
- private convertMessagesToContents;
26
- private normalizeMessageContent;
27
- private buildGenerationConfig;
28
28
  /**
29
29
  * 获取模型回退列表(用于处理 429 限流)
30
30
  * 参考 CLIProxyAPI 的 cliPreviewFallbackOrder
31
31
  */
32
32
  protected getFallbackModels(model: string): string[];
33
+ private applyStreamAction;
34
+ private ensureRequestMetadata;
35
+ private hasNonEmptyString;
36
+ private extractStreamFlag;
33
37
  }
34
38
  export default GeminiCLIHttpProvider;