@marinoscar/platform-api 0.1.0-next.4 → 0.1.0-next.6

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 (241) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/ai/core/ai-error.d.ts +15 -158
  3. package/dist/ai/core/ai-error.d.ts.map +1 -1
  4. package/dist/ai/core/ai-error.js +58 -221
  5. package/dist/ai/core/ai-error.js.map +1 -1
  6. package/dist/ai/core/capabilities.d.ts +3 -126
  7. package/dist/ai/core/capabilities.d.ts.map +1 -1
  8. package/dist/ai/core/capabilities.js +13 -109
  9. package/dist/ai/core/capabilities.js.map +1 -1
  10. package/dist/ai/core/conversation.d.ts +2 -15
  11. package/dist/ai/core/conversation.d.ts.map +1 -1
  12. package/dist/ai/core/conversation.js +9 -54
  13. package/dist/ai/core/conversation.js.map +1 -1
  14. package/dist/ai/core/hosted-tools.d.ts +3 -172
  15. package/dist/ai/core/hosted-tools.d.ts.map +1 -1
  16. package/dist/ai/core/hosted-tools.js +20 -286
  17. package/dist/ai/core/hosted-tools.js.map +1 -1
  18. package/dist/ai/core/provider-adapter.interface.d.ts +3 -260
  19. package/dist/ai/core/provider-adapter.interface.d.ts.map +1 -1
  20. package/dist/ai/core/provider-adapter.interface.js +7 -29
  21. package/dist/ai/core/provider-adapter.interface.js.map +1 -1
  22. package/dist/ai/core/structured-output.d.ts +3 -49
  23. package/dist/ai/core/structured-output.d.ts.map +1 -1
  24. package/dist/ai/core/structured-output.js +9 -80
  25. package/dist/ai/core/structured-output.js.map +1 -1
  26. package/dist/ai/core/tools.d.ts +3 -93
  27. package/dist/ai/core/tools.d.ts.map +1 -1
  28. package/dist/ai/core/tools.js +9 -73
  29. package/dist/ai/core/tools.js.map +1 -1
  30. package/dist/ai/core/types/file-inputs.types.d.ts +3 -102
  31. package/dist/ai/core/types/file-inputs.types.d.ts.map +1 -1
  32. package/dist/ai/core/types/file-inputs.types.js +14 -78
  33. package/dist/ai/core/types/file-inputs.types.js.map +1 -1
  34. package/dist/ai/core/types/media.types.d.ts +3 -616
  35. package/dist/ai/core/types/media.types.d.ts.map +1 -1
  36. package/dist/ai/core/types/media.types.js +33 -203
  37. package/dist/ai/core/types/media.types.js.map +1 -1
  38. package/dist/ai/core/types/responses.types.d.ts +3 -619
  39. package/dist/ai/core/types/responses.types.d.ts.map +1 -1
  40. package/dist/ai/core/types/responses.types.js +9 -57
  41. package/dist/ai/core/types/responses.types.js.map +1 -1
  42. package/dist/ai/http/dto/ai-images.dto.d.ts +4 -4
  43. package/dist/ai/index.d.ts +1 -1
  44. package/dist/ai/index.d.ts.map +1 -1
  45. package/dist/ai/index.js +3 -3
  46. package/dist/ai/index.js.map +1 -1
  47. package/dist/ai/providers/anthropic/anthropic-client.factory.d.ts +13 -15
  48. package/dist/ai/providers/anthropic/anthropic-client.factory.d.ts.map +1 -1
  49. package/dist/ai/providers/anthropic/anthropic-client.factory.js +23 -52
  50. package/dist/ai/providers/anthropic/anthropic-client.factory.js.map +1 -1
  51. package/dist/ai/providers/anthropic/anthropic.adapter.d.ts +15 -51
  52. package/dist/ai/providers/anthropic/anthropic.adapter.d.ts.map +1 -1
  53. package/dist/ai/providers/anthropic/anthropic.adapter.js +29 -293
  54. package/dist/ai/providers/anthropic/anthropic.adapter.js.map +1 -1
  55. package/dist/ai/providers/azure-openai/azure-openai-client.factory.d.ts +10 -14
  56. package/dist/ai/providers/azure-openai/azure-openai-client.factory.d.ts.map +1 -1
  57. package/dist/ai/providers/azure-openai/azure-openai-client.factory.js +20 -53
  58. package/dist/ai/providers/azure-openai/azure-openai-client.factory.js.map +1 -1
  59. package/dist/ai/providers/azure-openai/azure-openai.adapter.d.ts +14 -31
  60. package/dist/ai/providers/azure-openai/azure-openai.adapter.d.ts.map +1 -1
  61. package/dist/ai/providers/azure-openai/azure-openai.adapter.js +25 -170
  62. package/dist/ai/providers/azure-openai/azure-openai.adapter.js.map +1 -1
  63. package/dist/ai/providers/gemini/gemini-client.factory.d.ts +13 -18
  64. package/dist/ai/providers/gemini/gemini-client.factory.d.ts.map +1 -1
  65. package/dist/ai/providers/gemini/gemini-client.factory.js +24 -68
  66. package/dist/ai/providers/gemini/gemini-client.factory.js.map +1 -1
  67. package/dist/ai/providers/gemini/gemini.adapter.d.ts +15 -58
  68. package/dist/ai/providers/gemini/gemini.adapter.d.ts.map +1 -1
  69. package/dist/ai/providers/gemini/gemini.adapter.js +29 -348
  70. package/dist/ai/providers/gemini/gemini.adapter.js.map +1 -1
  71. package/dist/ai/providers/openai/openai-client.factory.d.ts +13 -35
  72. package/dist/ai/providers/openai/openai-client.factory.d.ts.map +1 -1
  73. package/dist/ai/providers/openai/openai-client.factory.js +25 -64
  74. package/dist/ai/providers/openai/openai-client.factory.js.map +1 -1
  75. package/dist/ai/providers/openai/openai.adapter.d.ts +15 -48
  76. package/dist/ai/providers/openai/openai.adapter.d.ts.map +1 -1
  77. package/dist/ai/providers/openai/openai.adapter.js +27 -206
  78. package/dist/ai/providers/openai/openai.adapter.js.map +1 -1
  79. package/dist/ai/providers/openai-compatible/openai-compatible-client.factory.d.ts +11 -11
  80. package/dist/ai/providers/openai-compatible/openai-compatible-client.factory.d.ts.map +1 -1
  81. package/dist/ai/providers/openai-compatible/openai-compatible-client.factory.js +18 -41
  82. package/dist/ai/providers/openai-compatible/openai-compatible-client.factory.js.map +1 -1
  83. package/dist/ai/providers/openai-compatible/openai-compatible.adapter.d.ts +14 -32
  84. package/dist/ai/providers/openai-compatible/openai-compatible.adapter.d.ts.map +1 -1
  85. package/dist/ai/providers/openai-compatible/openai-compatible.adapter.js +25 -149
  86. package/dist/ai/providers/openai-compatible/openai-compatible.adapter.js.map +1 -1
  87. package/dist/ai/providers/platform-ai-tracer.d.ts +4 -0
  88. package/dist/ai/providers/platform-ai-tracer.d.ts.map +1 -0
  89. package/dist/ai/providers/platform-ai-tracer.js +20 -0
  90. package/dist/ai/providers/platform-ai-tracer.js.map +1 -0
  91. package/dist/ai/runtime/ai-image-run-request.d.ts +1 -1
  92. package/dist/ai/testing/conformance/ai-no-sdk-leak.suite.d.ts +28 -5
  93. package/dist/ai/testing/conformance/ai-no-sdk-leak.suite.d.ts.map +1 -1
  94. package/dist/ai/testing/conformance/ai-no-sdk-leak.suite.js +54 -9
  95. package/dist/ai/testing/conformance/ai-no-sdk-leak.suite.js.map +1 -1
  96. package/dist/ai/testing/index.d.ts +1 -1
  97. package/dist/ai/testing/index.d.ts.map +1 -1
  98. package/dist/ai/testing/index.js +2 -1
  99. package/dist/ai/testing/index.js.map +1 -1
  100. package/dist/jobs/rate-limit.error.d.ts +2 -26
  101. package/dist/jobs/rate-limit.error.d.ts.map +1 -1
  102. package/dist/jobs/rate-limit.error.js +4 -52
  103. package/dist/jobs/rate-limit.error.js.map +1 -1
  104. package/dist/storage/config/storage-config.controller.d.ts +1 -1
  105. package/package.json +3 -2
  106. package/dist/ai/providers/anthropic/anthropic-errors.d.ts +0 -16
  107. package/dist/ai/providers/anthropic/anthropic-errors.d.ts.map +0 -1
  108. package/dist/ai/providers/anthropic/anthropic-errors.js +0 -156
  109. package/dist/ai/providers/anthropic/anthropic-errors.js.map +0 -1
  110. package/dist/ai/providers/anthropic/anthropic-messages.mapper.d.ts +0 -80
  111. package/dist/ai/providers/anthropic/anthropic-messages.mapper.d.ts.map +0 -1
  112. package/dist/ai/providers/anthropic/anthropic-messages.mapper.js +0 -536
  113. package/dist/ai/providers/anthropic/anthropic-messages.mapper.js.map +0 -1
  114. package/dist/ai/providers/anthropic/anthropic-model-catalog.d.ts +0 -49
  115. package/dist/ai/providers/anthropic/anthropic-model-catalog.d.ts.map +0 -1
  116. package/dist/ai/providers/anthropic/anthropic-model-catalog.js +0 -198
  117. package/dist/ai/providers/anthropic/anthropic-model-catalog.js.map +0 -1
  118. package/dist/ai/providers/anthropic/anthropic-stream.mapper.d.ts +0 -35
  119. package/dist/ai/providers/anthropic/anthropic-stream.mapper.d.ts.map +0 -1
  120. package/dist/ai/providers/anthropic/anthropic-stream.mapper.js +0 -203
  121. package/dist/ai/providers/anthropic/anthropic-stream.mapper.js.map +0 -1
  122. package/dist/ai/providers/anthropic/testing/anthropic-fixtures.d.ts +0 -18
  123. package/dist/ai/providers/anthropic/testing/anthropic-fixtures.d.ts.map +0 -1
  124. package/dist/ai/providers/anthropic/testing/anthropic-fixtures.js +0 -120
  125. package/dist/ai/providers/anthropic/testing/anthropic-fixtures.js.map +0 -1
  126. package/dist/ai/providers/anthropic/testing/anthropic-mock-transport.d.ts +0 -59
  127. package/dist/ai/providers/anthropic/testing/anthropic-mock-transport.d.ts.map +0 -1
  128. package/dist/ai/providers/anthropic/testing/anthropic-mock-transport.js +0 -206
  129. package/dist/ai/providers/anthropic/testing/anthropic-mock-transport.js.map +0 -1
  130. package/dist/ai/providers/azure-openai/azure-openai-settings.d.ts +0 -23
  131. package/dist/ai/providers/azure-openai/azure-openai-settings.d.ts.map +0 -1
  132. package/dist/ai/providers/azure-openai/azure-openai-settings.js +0 -54
  133. package/dist/ai/providers/azure-openai/azure-openai-settings.js.map +0 -1
  134. package/dist/ai/providers/gemini/gemini-content.mapper.d.ts +0 -98
  135. package/dist/ai/providers/gemini/gemini-content.mapper.d.ts.map +0 -1
  136. package/dist/ai/providers/gemini/gemini-content.mapper.js +0 -665
  137. package/dist/ai/providers/gemini/gemini-content.mapper.js.map +0 -1
  138. package/dist/ai/providers/gemini/gemini-embeddings.mapper.d.ts +0 -13
  139. package/dist/ai/providers/gemini/gemini-embeddings.mapper.d.ts.map +0 -1
  140. package/dist/ai/providers/gemini/gemini-embeddings.mapper.js +0 -78
  141. package/dist/ai/providers/gemini/gemini-embeddings.mapper.js.map +0 -1
  142. package/dist/ai/providers/gemini/gemini-errors.d.ts +0 -32
  143. package/dist/ai/providers/gemini/gemini-errors.d.ts.map +0 -1
  144. package/dist/ai/providers/gemini/gemini-errors.js +0 -191
  145. package/dist/ai/providers/gemini/gemini-errors.js.map +0 -1
  146. package/dist/ai/providers/gemini/gemini-model-catalog.d.ts +0 -45
  147. package/dist/ai/providers/gemini/gemini-model-catalog.d.ts.map +0 -1
  148. package/dist/ai/providers/gemini/gemini-model-catalog.js +0 -264
  149. package/dist/ai/providers/gemini/gemini-model-catalog.js.map +0 -1
  150. package/dist/ai/providers/gemini/gemini-stream.mapper.d.ts +0 -31
  151. package/dist/ai/providers/gemini/gemini-stream.mapper.d.ts.map +0 -1
  152. package/dist/ai/providers/gemini/gemini-stream.mapper.js +0 -118
  153. package/dist/ai/providers/gemini/gemini-stream.mapper.js.map +0 -1
  154. package/dist/ai/providers/gemini/testing/gemini-fixtures.d.ts +0 -80
  155. package/dist/ai/providers/gemini/testing/gemini-fixtures.d.ts.map +0 -1
  156. package/dist/ai/providers/gemini/testing/gemini-fixtures.js +0 -118
  157. package/dist/ai/providers/gemini/testing/gemini-fixtures.js.map +0 -1
  158. package/dist/ai/providers/gemini/testing/gemini-mock-transport.d.ts +0 -82
  159. package/dist/ai/providers/gemini/testing/gemini-mock-transport.d.ts.map +0 -1
  160. package/dist/ai/providers/gemini/testing/gemini-mock-transport.js +0 -342
  161. package/dist/ai/providers/gemini/testing/gemini-mock-transport.js.map +0 -1
  162. package/dist/ai/providers/openai/openai-audio.mapper.d.ts +0 -42
  163. package/dist/ai/providers/openai/openai-audio.mapper.d.ts.map +0 -1
  164. package/dist/ai/providers/openai/openai-audio.mapper.js +0 -266
  165. package/dist/ai/providers/openai/openai-audio.mapper.js.map +0 -1
  166. package/dist/ai/providers/openai/openai-call-telemetry.d.ts +0 -25
  167. package/dist/ai/providers/openai/openai-call-telemetry.d.ts.map +0 -1
  168. package/dist/ai/providers/openai/openai-call-telemetry.js +0 -93
  169. package/dist/ai/providers/openai/openai-call-telemetry.js.map +0 -1
  170. package/dist/ai/providers/openai/openai-chat-completions-stream.mapper.d.ts +0 -41
  171. package/dist/ai/providers/openai/openai-chat-completions-stream.mapper.d.ts.map +0 -1
  172. package/dist/ai/providers/openai/openai-chat-completions-stream.mapper.js +0 -173
  173. package/dist/ai/providers/openai/openai-chat-completions-stream.mapper.js.map +0 -1
  174. package/dist/ai/providers/openai/openai-chat-completions.engine.d.ts +0 -33
  175. package/dist/ai/providers/openai/openai-chat-completions.engine.d.ts.map +0 -1
  176. package/dist/ai/providers/openai/openai-chat-completions.engine.js +0 -165
  177. package/dist/ai/providers/openai/openai-chat-completions.engine.js.map +0 -1
  178. package/dist/ai/providers/openai/openai-chat-completions.mapper.d.ts +0 -42
  179. package/dist/ai/providers/openai/openai-chat-completions.mapper.d.ts.map +0 -1
  180. package/dist/ai/providers/openai/openai-chat-completions.mapper.js +0 -304
  181. package/dist/ai/providers/openai/openai-chat-completions.mapper.js.map +0 -1
  182. package/dist/ai/providers/openai/openai-embeddings.mapper.d.ts +0 -25
  183. package/dist/ai/providers/openai/openai-embeddings.mapper.d.ts.map +0 -1
  184. package/dist/ai/providers/openai/openai-embeddings.mapper.js +0 -81
  185. package/dist/ai/providers/openai/openai-embeddings.mapper.js.map +0 -1
  186. package/dist/ai/providers/openai/openai-errors.d.ts +0 -45
  187. package/dist/ai/providers/openai/openai-errors.d.ts.map +0 -1
  188. package/dist/ai/providers/openai/openai-errors.js +0 -247
  189. package/dist/ai/providers/openai/openai-errors.js.map +0 -1
  190. package/dist/ai/providers/openai/openai-family-guards.d.ts +0 -4
  191. package/dist/ai/providers/openai/openai-family-guards.d.ts.map +0 -1
  192. package/dist/ai/providers/openai/openai-family-guards.js +0 -19
  193. package/dist/ai/providers/openai/openai-family-guards.js.map +0 -1
  194. package/dist/ai/providers/openai/openai-images.mapper.d.ts +0 -23
  195. package/dist/ai/providers/openai/openai-images.mapper.d.ts.map +0 -1
  196. package/dist/ai/providers/openai/openai-images.mapper.js +0 -164
  197. package/dist/ai/providers/openai/openai-images.mapper.js.map +0 -1
  198. package/dist/ai/providers/openai/openai-model-catalog.d.ts +0 -36
  199. package/dist/ai/providers/openai/openai-model-catalog.d.ts.map +0 -1
  200. package/dist/ai/providers/openai/openai-model-catalog.js +0 -209
  201. package/dist/ai/providers/openai/openai-model-catalog.js.map +0 -1
  202. package/dist/ai/providers/openai/openai-realtime.mapper.d.ts +0 -18
  203. package/dist/ai/providers/openai/openai-realtime.mapper.d.ts.map +0 -1
  204. package/dist/ai/providers/openai/openai-realtime.mapper.js +0 -159
  205. package/dist/ai/providers/openai/openai-realtime.mapper.js.map +0 -1
  206. package/dist/ai/providers/openai/openai-redirect-guard.d.ts +0 -9
  207. package/dist/ai/providers/openai/openai-redirect-guard.d.ts.map +0 -1
  208. package/dist/ai/providers/openai/openai-redirect-guard.js +0 -61
  209. package/dist/ai/providers/openai/openai-redirect-guard.js.map +0 -1
  210. package/dist/ai/providers/openai/openai-responses.engine.d.ts +0 -50
  211. package/dist/ai/providers/openai/openai-responses.engine.d.ts.map +0 -1
  212. package/dist/ai/providers/openai/openai-responses.engine.js +0 -206
  213. package/dist/ai/providers/openai/openai-responses.engine.js.map +0 -1
  214. package/dist/ai/providers/openai/openai-responses.mapper.d.ts +0 -64
  215. package/dist/ai/providers/openai/openai-responses.mapper.d.ts.map +0 -1
  216. package/dist/ai/providers/openai/openai-responses.mapper.js +0 -580
  217. package/dist/ai/providers/openai/openai-responses.mapper.js.map +0 -1
  218. package/dist/ai/providers/openai/openai-stream.mapper.d.ts +0 -28
  219. package/dist/ai/providers/openai/openai-stream.mapper.d.ts.map +0 -1
  220. package/dist/ai/providers/openai/openai-stream.mapper.js +0 -139
  221. package/dist/ai/providers/openai/openai-stream.mapper.js.map +0 -1
  222. package/dist/ai/providers/openai/testing/chat-completions-fixtures.d.ts +0 -24
  223. package/dist/ai/providers/openai/testing/chat-completions-fixtures.d.ts.map +0 -1
  224. package/dist/ai/providers/openai/testing/chat-completions-fixtures.js +0 -72
  225. package/dist/ai/providers/openai/testing/chat-completions-fixtures.js.map +0 -1
  226. package/dist/ai/providers/openai/testing/conformance-responders.d.ts +0 -7
  227. package/dist/ai/providers/openai/testing/conformance-responders.d.ts.map +0 -1
  228. package/dist/ai/providers/openai/testing/conformance-responders.js +0 -64
  229. package/dist/ai/providers/openai/testing/conformance-responders.js.map +0 -1
  230. package/dist/ai/providers/openai/testing/openai-fixtures.d.ts +0 -52
  231. package/dist/ai/providers/openai/testing/openai-fixtures.d.ts.map +0 -1
  232. package/dist/ai/providers/openai/testing/openai-fixtures.js +0 -208
  233. package/dist/ai/providers/openai/testing/openai-fixtures.js.map +0 -1
  234. package/dist/ai/providers/openai/testing/openai-mock-transport.d.ts +0 -242
  235. package/dist/ai/providers/openai/testing/openai-mock-transport.d.ts.map +0 -1
  236. package/dist/ai/providers/openai/testing/openai-mock-transport.js +0 -523
  237. package/dist/ai/providers/openai/testing/openai-mock-transport.js.map +0 -1
  238. package/dist/ai/providers/openai-compatible/openai-compatible-settings.d.ts +0 -13
  239. package/dist/ai/providers/openai-compatible/openai-compatible-settings.d.ts.map +0 -1
  240. package/dist/ai/providers/openai-compatible/openai-compatible-settings.js +0 -29
  241. package/dist/ai/providers/openai-compatible/openai-compatible-settings.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"gemini-content.mapper.js","sourceRoot":"","sources":["../../../../src/ai/providers/gemini/gemini-content.mapper.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import type { Content, EmbedContentConfig, EmbedContentResponse } from '@google/genai';
2
- import type { AiEmbeddingRequest, AiEmbeddingResult } from '../../core/types/media.types';
3
- import type { GeminiModelProfile } from './gemini-model-catalog';
4
- export interface GeminiEmbeddingRequest {
5
- model: string;
6
- contents: Content[];
7
- config: EmbedContentConfig;
8
- }
9
- /** The `embedContent` parameters for `req` (the adapter adds the signal). */
10
- export declare function toGeminiEmbeddingRequest(req: AiEmbeddingRequest, profile: GeminiModelProfile | null): GeminiEmbeddingRequest;
11
- /** The neutral result, or `AI_PROVIDER_UNAVAILABLE` for a malformed answer. */
12
- export declare function fromGeminiEmbeddingResponse(data: EmbedContentResponse, request: AiEmbeddingRequest): AiEmbeddingResult;
13
- //# sourceMappingURL=gemini-embeddings.mapper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gemini-embeddings.mapper.d.ts","sourceRoot":"","sources":["../../../../src/ai/providers/gemini/gemini-embeddings.mapper.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAGvF,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAE1F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAED,6EAA6E;AAC7E,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,kBAAkB,EACvB,OAAO,EAAE,kBAAkB,GAAG,IAAI,GACjC,sBAAsB,CA4BxB;AAED,+EAA+E;AAC/E,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,oBAAoB,EAC1B,OAAO,EAAE,kBAAkB,GAC1B,iBAAiB,CA4BnB"}
@@ -1,78 +0,0 @@
1
- "use strict";
2
- // =============================================================================
3
- // Gemini embeddings mapper (issue #447, epic #421)
4
- // =============================================================================
5
- //
6
- // AiEmbeddingRequest <-> `embedContent` (on the Gemini API the SDK sends it as
7
- // `models/{model}:batchEmbedContents`, one request per input). Pure
8
- // functions; every failure is an `AiError`, never an SDK error. The contract
9
- // mirrors `openai-embeddings.mapper.ts`:
10
- //
11
- // - ONE CONTENT PER INPUT. Every input is sent as its own `Content`
12
- // (`{ role: 'user', parts: [{ text }] }`), never as a bare string array:
13
- // for a multimodal embedding model (`gemini-embedding-2`) the SDK folds a
14
- // string array into ONE content with several parts — one vector for the
15
- // whole batch — which would break "one vector per input, in order".
16
- // - `dimensions` -> `outputDimensionality` (Matryoshka truncation). Every
17
- // embedding family this adapter classifies accepts it; an id the
18
- // classifier knows NOT to (none today) is refused here, and an unknown id
19
- // passes through — Gemini is the authority, and its 400 maps to
20
- // `AI_INVALID_REQUEST` anyway.
21
- // - The answer must hold exactly one vector per input, all the same
22
- // length; anything else is a provider fault (`AI_PROVIDER_UNAVAILABLE`).
23
- // - Usage: the Gemini API reports no token count for embeddings, so usage
24
- // is `{}`.
25
- //
26
- // `providerOptions.gemini` merges into the config first (e.g. a `taskType`
27
- // such as `RETRIEVAL_DOCUMENT`); the port's own fields win.
28
- // =============================================================================
29
- Object.defineProperty(exports, "__esModule", { value: true });
30
- exports.toGeminiEmbeddingRequest = toGeminiEmbeddingRequest;
31
- exports.fromGeminiEmbeddingResponse = fromGeminiEmbeddingResponse;
32
- const ai_error_1 = require("../../core/ai-error");
33
- const gemini_errors_1 = require("./gemini-errors");
34
- /** The `embedContent` parameters for `req` (the adapter adds the signal). */
35
- function toGeminiEmbeddingRequest(req, profile) {
36
- if (profile && profile.kind !== 'embedding') {
37
- throw new ai_error_1.AiError('AI_CAPABILITY_UNSUPPORTED', `Model "${req.model}" is not an embedding model.`, {
38
- details: { provider: gemini_errors_1.GEMINI_PROVIDER_ID, model: req.model, capability: 'embeddings' },
39
- });
40
- }
41
- if (req.dimensions !== undefined && profile && profile.embeddingDimensions !== true) {
42
- throw new ai_error_1.AiError('AI_INVALID_REQUEST', `Model "${req.model}" does not support a custom embedding length (dimensions).`, { details: { provider: gemini_errors_1.GEMINI_PROVIDER_ID, model: req.model, dimensions: req.dimensions } });
43
- }
44
- const inputs = typeof req.input === 'string' ? [req.input] : req.input;
45
- const { abortSignal: _signal, ...escapeHatch } = (req.providerOptions?.[gemini_errors_1.GEMINI_PROVIDER_ID] ?? {});
46
- return {
47
- model: req.model,
48
- contents: inputs.map((text) => ({ role: 'user', parts: [{ text }] })),
49
- config: {
50
- ...escapeHatch,
51
- ...(req.dimensions !== undefined ? { outputDimensionality: req.dimensions } : {}),
52
- },
53
- };
54
- }
55
- /** The neutral result, or `AI_PROVIDER_UNAVAILABLE` for a malformed answer. */
56
- function fromGeminiEmbeddingResponse(data, request) {
57
- const expected = typeof request.input === 'string' ? 1 : request.input.length;
58
- const vectors = (data.embeddings ?? []).map((embedding) => embedding.values ?? []);
59
- const dimensions = vectors[0]?.length ?? 0;
60
- const malformed = vectors.length !== expected ||
61
- dimensions === 0 ||
62
- vectors.some((vector) => !Array.isArray(vector) ||
63
- vector.length !== dimensions ||
64
- vector.some((value) => typeof value !== 'number' || !Number.isFinite(value)));
65
- if (malformed) {
66
- throw new ai_error_1.AiError('AI_PROVIDER_UNAVAILABLE', 'Gemini returned a malformed embeddings response.', {
67
- details: { provider: gemini_errors_1.GEMINI_PROVIDER_ID, expected, received: vectors.length },
68
- });
69
- }
70
- return {
71
- provider: gemini_errors_1.GEMINI_PROVIDER_ID,
72
- model: request.model,
73
- vectors,
74
- dimensions,
75
- usage: {},
76
- };
77
- }
78
- //# sourceMappingURL=gemini-embeddings.mapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gemini-embeddings.mapper.js","sourceRoot":"","sources":["../../../../src/ai/providers/gemini/gemini-embeddings.mapper.ts"],"names":[],"mappings":"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"}
@@ -1,32 +0,0 @@
1
- import { AiError, AiErrorCode } from '../../core/ai-error';
2
- export declare const GEMINI_PROVIDER_ID = "gemini";
3
- /** The generic, secret-free message this adapter uses for `code`. */
4
- export declare function geminiErrorMessage(code: AiErrorCode): string;
5
- /** The machine-readable facts of a Google error body. */
6
- export interface GeminiErrorBody {
7
- /** Google's canonical status (`RESOURCE_EXHAUSTED`, `INVALID_ARGUMENT`, ...). */
8
- status?: string;
9
- /** `google.rpc.ErrorInfo.reason` (`API_KEY_INVALID`, ...). */
10
- reason?: string;
11
- /** `google.rpc.RetryInfo.retryDelay`, in milliseconds. */
12
- retryAfterMs?: number;
13
- }
14
- /** `"37s"` / `"1.5s"` (a protobuf Duration in JSON) → milliseconds. */
15
- export declare function parseGeminiRetryDelay(value: unknown): number | undefined;
16
- /**
17
- * Parses what an `ApiError`'s message carries: the JSON error body, possibly
18
- * after a `got status: ...` prefix. Never throws; unknown shapes yield `{}`.
19
- */
20
- export declare function parseGeminiErrorBody(message: string): GeminiErrorBody;
21
- /** Which `AiErrorCode` an SDK/HTTP failure means. Pure — exported for the table spec. */
22
- export declare function geminiErrorCode(err: unknown): AiErrorCode;
23
- export interface MapGeminiErrorOptions {
24
- /** The caller's own signal: an abort it caused is `aborted`, any other abort a timeout. */
25
- signal?: AbortSignal;
26
- }
27
- /**
28
- * Turns anything a Gemini call threw into an `AiError`. An `AiError` is
29
- * returned unchanged (the mapper's own `AI_CAPABILITY_UNSUPPORTED`, for one).
30
- */
31
- export declare function mapGeminiError(err: unknown, opts?: MapGeminiErrorOptions): AiError;
32
- //# sourceMappingURL=gemini-errors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gemini-errors.d.ts","sourceRoot":"","sources":["../../../../src/ai/providers/gemini/gemini-errors.ts"],"names":[],"mappings":"AAkDA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAE3D,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAoB3C,qEAAqE;AACrE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAE5D;AAED,yDAAyD;AACzD,MAAM,WAAW,eAAe;IAC9B,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,uEAAuE;AACvE,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAUxE;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAyCrE;AAMD,yFAAyF;AACzF,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW,CAiBzD;AAED,MAAM,WAAW,qBAAqB;IACpC,2FAA2F;IAC3F,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,GAAE,qBAA0B,GAAG,OAAO,CA8BtF"}
@@ -1,191 +0,0 @@
1
- "use strict";
2
- // =============================================================================
3
- // Google Gen AI SDK error -> AiError (issue #447, epic #421)
4
- // =============================================================================
5
- //
6
- // The one place a Gemini failure becomes an `AiError` — the counterpart of
7
- // `openai-errors.ts` and `anthropic-errors.ts`: every `catch` in this adapter
8
- // funnels through `mapGeminiError`, so a raw SDK exception never crosses the
9
- // `AiProviderAdapter` boundary (the conformance kit asserts it).
10
- //
11
- // WHAT THE SDK THROWS. `@google/genai` raises exactly one typed error,
12
- // `ApiError { status, message }`, whose `message` is the JSON error body
13
- // verbatim (`{"error":{"code":429,"status":"RESOURCE_EXHAUSTED",...}}`) — or,
14
- // for an error frame inside a stream, `got status: <STATUS>. <json>`. The
15
- // body is parsed here for three machine-readable facts only: Google's
16
- // canonical `status` (`RESOURCE_EXHAUSTED`, ...), the `ErrorInfo.reason`
17
- // (`API_KEY_INVALID`, ...) and the `RetryInfo.retryDelay` (`"37s"`).
18
- // Everything else — a network failure, an abort, a malformed SSE chunk — is
19
- // a plain `Error`/`TypeError`/`AbortError` from `fetch` or the SDK.
20
- //
21
- // ⚠ SECRETS. The SDK's `message` is never copied into the `AiError`: it is
22
- // the provider's text, and the real API echoes request details in it. What
23
- // travels in `details` is short machine-readable metadata only. The SDK error
24
- // is kept as the non-enumerable `cause`.
25
- //
26
- // THE TABLE (pinned by `gemini-errors.spec.ts`):
27
- //
28
- // 400 INVALID_ARGUMENT, reason API_KEY_INVALID AI_KEY_INVALID (Gemini's
29
- // answer to a bad key is a
30
- // 400, not a 401)
31
- // 401 UNAUTHENTICATED AI_KEY_INVALID
32
- // 403 PERMISSION_DENIED AI_KEY_INVALID (the key may
33
- // not call the API / project)
34
- // 404 NOT_FOUND AI_MODEL_NOT_REACHABLE
35
- // 429 RESOURCE_EXHAUSTED AI_RATE_LIMITED, with
36
- // `RetryInfo.retryDelay`
37
- // 408 / 499 / 5xx (INTERNAL, UNAVAILABLE, AI_PROVIDER_UNAVAILABLE (with
38
- // DEADLINE_EXCEEDED) the retry delay when named)
39
- // other 4xx (INVALID_ARGUMENT, AI_INVALID_REQUEST
40
- // FAILED_PRECONDITION, ...)
41
- // abort by the caller's signal AI_PROVIDER_UNAVAILABLE,
42
- // details.aborted
43
- // abort by the client timeout AI_PROVIDER_UNAVAILABLE,
44
- // details.transport 'timeout'
45
- // fetch failure (TypeError) AI_PROVIDER_UNAVAILABLE,
46
- // details.transport 'connection'
47
- // anything else AI_PROVIDER_UNAVAILABLE
48
- // =============================================================================
49
- Object.defineProperty(exports, "__esModule", { value: true });
50
- exports.GEMINI_PROVIDER_ID = void 0;
51
- exports.geminiErrorMessage = geminiErrorMessage;
52
- exports.parseGeminiRetryDelay = parseGeminiRetryDelay;
53
- exports.parseGeminiErrorBody = parseGeminiErrorBody;
54
- exports.geminiErrorCode = geminiErrorCode;
55
- exports.mapGeminiError = mapGeminiError;
56
- const genai_1 = require("@google/genai");
57
- const ai_error_1 = require("../../core/ai-error");
58
- exports.GEMINI_PROVIDER_ID = 'gemini';
59
- const MESSAGES = {
60
- AI_DISABLED: 'AI is disabled.',
61
- AI_PROVIDER_DISABLED: 'The AI provider is disabled.',
62
- AI_KEY_REQUIRED: 'An API key is required for this AI provider.',
63
- AI_KEY_INVALID: 'The Google Gemini API key was rejected.',
64
- AI_MODEL_NOT_ENABLED: 'The model is not enabled.',
65
- AI_MODEL_NOT_REACHABLE: 'The Gemini model is not reachable with this API key.',
66
- AI_CAPABILITY_UNSUPPORTED: 'The request uses a capability Gemini does not support here.',
67
- AI_TOOL_DISABLED: 'The requested tool is not enabled in this deployment.',
68
- AI_REALTIME_DISABLED: 'Realtime sessions are not enabled in this deployment.',
69
- AI_RATE_LIMITED: 'Gemini rate-limited the request.',
70
- AI_PROVIDER_UNAVAILABLE: 'Gemini is unavailable or the request failed.',
71
- AI_CONTENT_FILTERED: 'Gemini blocked the request or its response.',
72
- AI_INVALID_REQUEST: 'Gemini rejected the request as invalid.',
73
- AI_STRUCTURED_OUTPUT_INVALID: 'The model output does not match the requested schema.',
74
- AI_STORAGE_UNAVAILABLE: 'Object storage is unavailable.',
75
- };
76
- /** The generic, secret-free message this adapter uses for `code`. */
77
- function geminiErrorMessage(code) {
78
- return MESSAGES[code];
79
- }
80
- /** `"37s"` / `"1.5s"` (a protobuf Duration in JSON) → milliseconds. */
81
- function parseGeminiRetryDelay(value) {
82
- if (typeof value !== 'string')
83
- return undefined;
84
- const match = /^(\d+(?:\.\d+)?)s$/.exec(value.trim());
85
- if (!match)
86
- return undefined;
87
- const ms = Math.round(Number(match[1]) * 1000);
88
- return Number.isFinite(ms) && ms > 0 ? ms : undefined;
89
- }
90
- /**
91
- * Parses what an `ApiError`'s message carries: the JSON error body, possibly
92
- * after a `got status: ...` prefix. Never throws; unknown shapes yield `{}`.
93
- */
94
- function parseGeminiErrorBody(message) {
95
- const start = message.indexOf('{');
96
- if (start < 0)
97
- return {};
98
- let parsed;
99
- try {
100
- parsed = JSON.parse(message.slice(start));
101
- }
102
- catch {
103
- return {};
104
- }
105
- const error = parsed?.error;
106
- if (!error || typeof error !== 'object')
107
- return {};
108
- const out = {};
109
- const { status, details } = error;
110
- if (typeof status === 'string' && status.length > 0)
111
- out.status = status;
112
- if (Array.isArray(details)) {
113
- for (const detail of details) {
114
- if (!detail || typeof detail !== 'object')
115
- continue;
116
- const type = typeof detail['@type'] === 'string' ? detail['@type'] : '';
117
- if (type.endsWith('google.rpc.ErrorInfo') && typeof detail.reason === 'string') {
118
- out.reason = detail.reason;
119
- }
120
- if (type.endsWith('google.rpc.RetryInfo')) {
121
- const delay = parseGeminiRetryDelay(detail.retryDelay);
122
- if (delay !== undefined)
123
- out.retryAfterMs = delay;
124
- }
125
- }
126
- }
127
- return out;
128
- }
129
- function isAbortError(err) {
130
- return err instanceof Error && (err.name === 'AbortError' || err.name === 'TimeoutError');
131
- }
132
- /** Which `AiErrorCode` an SDK/HTTP failure means. Pure — exported for the table spec. */
133
- function geminiErrorCode(err) {
134
- if (err instanceof ai_error_1.AiError)
135
- return err.code;
136
- if (err instanceof genai_1.ApiError) {
137
- const status = err.status;
138
- const body = parseGeminiErrorBody(err.message);
139
- if (body.reason === 'API_KEY_INVALID')
140
- return 'AI_KEY_INVALID';
141
- if (status === 401 || status === 403)
142
- return 'AI_KEY_INVALID';
143
- if (status === 404)
144
- return 'AI_MODEL_NOT_REACHABLE';
145
- if (status === 429)
146
- return 'AI_RATE_LIMITED';
147
- if (status === 408 || status === 499 || status >= 500)
148
- return 'AI_PROVIDER_UNAVAILABLE';
149
- if (status >= 400)
150
- return 'AI_INVALID_REQUEST';
151
- }
152
- // An abort, a fetch failure, a malformed SSE chunk, anything else.
153
- return 'AI_PROVIDER_UNAVAILABLE';
154
- }
155
- /**
156
- * Turns anything a Gemini call threw into an `AiError`. An `AiError` is
157
- * returned unchanged (the mapper's own `AI_CAPABILITY_UNSUPPORTED`, for one).
158
- */
159
- function mapGeminiError(err, opts = {}) {
160
- if (err instanceof ai_error_1.AiError)
161
- return err;
162
- const code = geminiErrorCode(err);
163
- const details = { provider: exports.GEMINI_PROVIDER_ID };
164
- let retryAfterMs;
165
- if (err instanceof genai_1.ApiError) {
166
- const body = parseGeminiErrorBody(err.message);
167
- details.status = err.status;
168
- if (body.status)
169
- details.providerStatus = body.status;
170
- if (body.reason)
171
- details.providerReason = body.reason;
172
- if (code === 'AI_RATE_LIMITED' || code === 'AI_PROVIDER_UNAVAILABLE') {
173
- retryAfterMs = body.retryAfterMs;
174
- }
175
- }
176
- else if (isAbortError(err)) {
177
- // The SDK aborts a request for exactly two reasons: the caller's signal,
178
- // or the client's own per-request timeout.
179
- if (opts.signal?.aborted) {
180
- details.aborted = true;
181
- }
182
- else {
183
- details.transport = 'timeout';
184
- }
185
- }
186
- else if (err instanceof TypeError) {
187
- details.transport = 'connection';
188
- }
189
- return new ai_error_1.AiError(code, geminiErrorMessage(code), { cause: err, details, retryAfterMs });
190
- }
191
- //# sourceMappingURL=gemini-errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gemini-errors.js","sourceRoot":"","sources":["../../../../src/ai/providers/gemini/gemini-errors.ts"],"names":[],"mappings":"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"}
@@ -1,45 +0,0 @@
1
- import type { AiDiscoveredModelMetadata } from '../../core/provider-adapter.interface';
2
- import type { AiModelCapabilities, AiReasoningEffort } from '../../core/capabilities';
3
- export type GeminiThinkingStyle = 'level' | 'budget' | 'none';
4
- /** `thinkingConfig.thinkingLevel` values (the SDK's `ThinkingLevel`). */
5
- export type GeminiThinkingLevel = 'MINIMAL' | 'LOW' | 'MEDIUM' | 'HIGH';
6
- export interface GeminiModelProfile {
7
- kind: 'generate' | 'embedding';
8
- capabilities: AiModelCapabilities;
9
- thinking: GeminiThinkingStyle;
10
- thinkingLevels?: Readonly<Record<AiReasoningEffort, GeminiThinkingLevel>>;
11
- structuredOutput: boolean;
12
- structuredWithTools: boolean;
13
- embeddingDimensions?: boolean;
14
- }
15
- export interface GeminiClassifierRule {
16
- /** Tested against the lower-cased id without its `models/` prefix. */
17
- match: RegExp;
18
- /** `null` claims the id as deliberately unclassified. */
19
- profile: GeminiModelProfile | null;
20
- }
21
- /**
22
- * `reasoning.effort` → `thinkingConfig.thinkingBudget`, for the 'budget'
23
- * families (Gemini 2.5), and for an unclassified model.
24
- *
25
- * The ranges Google documents are 128-32768 (2.5 Pro), 0-24576 (2.5 Flash)
26
- * and 512-24576 (2.5 Flash-Lite), so every rung sits inside all three: the
27
- * floor is Flash-Lite's minimum, the top is Flash's maximum, and the rungs
28
- * roughly quadruple so the four efforts are genuinely different amounts of
29
- * thinking. Gemini 3.x still accepts a budget (it is how an unclassified
30
- * model is asked), though a level is the recommended control there.
31
- */
32
- export declare const GEMINI_THINKING_BUDGETS: Readonly<Record<AiReasoningEffort, number>>;
33
- /** Ordered; first match wins. See the file header before reordering. */
34
- export declare const GEMINI_CLASSIFIER_RULES: readonly GeminiClassifierRule[];
35
- /** The id the rules are tested against: trimmed, lower-cased, without `models/`. */
36
- export declare function normalizeGeminiModelId(modelId: string): string;
37
- /**
38
- * The full profile for `modelId`, or `null` when neither the table nor the
39
- * listing metadata classifies it. A fresh copy each call, so a caller cannot
40
- * corrupt the table.
41
- */
42
- export declare function geminiModelProfile(modelId: string, metadata?: AiDiscoveredModelMetadata, rules?: readonly GeminiClassifierRule[]): GeminiModelProfile | null;
43
- /** `classifyModel()`: the neutral capabilities only. */
44
- export declare function classifyGeminiModel(modelId: string, metadata?: AiDiscoveredModelMetadata): AiModelCapabilities | null;
45
- //# sourceMappingURL=gemini-model-catalog.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gemini-model-catalog.d.ts","sourceRoot":"","sources":["../../../../src/ai/providers/gemini/gemini-model-catalog.ts"],"names":[],"mappings":"AAwDA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AACvF,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEtF,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE9D,yEAAyE;AACzE,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAExE,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,UAAU,GAAG,WAAW,CAAC;IAC/B,YAAY,EAAE,mBAAmB,CAAC;IAClC,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,cAAc,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC1E,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,sEAAsE;IACtE,KAAK,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAAC;CACpC;AAID;;;;;;;;;;GAUG;AACH,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAK/E,CAAC;AAmHF,wEAAwE;AACxE,eAAO,MAAM,uBAAuB,EAAE,SAAS,oBAAoB,EAwBlE,CAAC;AAEF,oFAAoF;AACpF,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE9D;AAyCD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,yBAAyB,EACpC,KAAK,GAAE,SAAS,oBAAoB,EAA4B,GAC/D,kBAAkB,GAAG,IAAI,CA6B3B;AAED,wDAAwD;AACxD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,yBAAyB,GAAG,mBAAmB,GAAG,IAAI,CAErH"}