@omnicross/core 0.1.4 → 0.1.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 (204) hide show
  1. package/dist/ApiConverter.cjs +2 -2
  2. package/dist/ApiConverter.js +1 -1
  3. package/dist/{CompletionService-DdWaAxq0.d.ts → CompletionService-C3BX0Ovy.d.ts} +4 -3
  4. package/dist/{CompletionService-D3a47vdU.d.cts → CompletionService-kNA17cfI.d.cts} +4 -3
  5. package/dist/auth/GeminiCodeAssistProjectResolver.cjs +7 -5
  6. package/dist/auth/GeminiCodeAssistProjectResolver.js +5 -3
  7. package/dist/{chunk-HRRYG2AX.js → chunk-23S5OPIO.js} +10 -1
  8. package/dist/chunk-25GXJCEZ.cjs +40 -0
  9. package/dist/chunk-2JYRIADS.js +40 -0
  10. package/dist/chunk-3Z5BQZFM.cjs +52 -0
  11. package/dist/{chunk-4VAVYUZS.cjs → chunk-4VLRHHFE.cjs} +82 -40
  12. package/dist/{chunk-VACWOIRE.cjs → chunk-4VZX5F4T.cjs} +39 -15
  13. package/dist/{chunk-FTQ7IQUC.js → chunk-6CL5HTPQ.js} +52 -10
  14. package/dist/chunk-6QQG7YG3.cjs +153 -0
  15. package/dist/{chunk-SU2GCLAC.cjs → chunk-6VUQPOV3.cjs} +359 -60
  16. package/dist/chunk-7AK7B36B.cjs +44 -0
  17. package/dist/{chunk-5ZQBEOMD.js → chunk-AT7B7SOZ.js} +25 -2
  18. package/dist/{chunk-IK3KE3AU.js → chunk-DE2SRBFZ.js} +1 -1
  19. package/dist/chunk-DLXZEZWO.cjs +285 -0
  20. package/dist/{chunk-UHGVBFU3.js → chunk-EBLFCNPY.js} +38 -14
  21. package/dist/chunk-EJLH6NFT.cjs +166 -0
  22. package/dist/chunk-HVBBDBS3.cjs +350 -0
  23. package/dist/{chunk-7Y47UCF2.js → chunk-IFXJ2BG7.js} +5 -38
  24. package/dist/{chunk-46ZIFWYG.cjs → chunk-IIRPUVPH.cjs} +7 -1
  25. package/dist/{chunk-YGXJGRFI.cjs → chunk-KBM2W6UY.cjs} +111 -24
  26. package/dist/{chunk-OCEUVQHW.cjs → chunk-KCVJWJST.cjs} +73 -3
  27. package/dist/chunk-LB6EBS6Y.js +69 -0
  28. package/dist/{chunk-C7PSERMH.js → chunk-LVUCAWMK.js} +1 -1
  29. package/dist/chunk-MKF46GNZ.js +350 -0
  30. package/dist/{chunk-HYN75H6G.cjs → chunk-MUHWHQVM.cjs} +1 -1
  31. package/dist/{chunk-Z7Y2NPHY.js → chunk-N5T4M4GU.js} +1 -1
  32. package/dist/{chunk-TIER4SUC.js → chunk-OEWZUX4G.js} +346 -47
  33. package/dist/chunk-OF3BECU2.cjs +69 -0
  34. package/dist/{chunk-RSJ3TWJQ.cjs → chunk-OKMJLEXX.cjs} +5 -5
  35. package/dist/chunk-OPRS4IQZ.js +153 -0
  36. package/dist/{chunk-XK5CIRMQ.js → chunk-SIZQQD6T.js} +72 -2
  37. package/dist/{chunk-DKPXN34V.cjs → chunk-SQYVORNP.cjs} +1334 -510
  38. package/dist/chunk-SYQF7OIR.js +52 -0
  39. package/dist/{chunk-S4WBV25P.js → chunk-TOVPMMHM.js} +111 -24
  40. package/dist/{chunk-QYTT6GE3.js → chunk-UDCC7EMR.js} +1093 -269
  41. package/dist/{chunk-E3UCVHLP.cjs → chunk-UNWKG6EI.cjs} +5 -38
  42. package/dist/{chunk-ZLX3KGXX.js → chunk-UX7VWA46.js} +135 -23
  43. package/dist/{chunk-7YN22L2H.cjs → chunk-V4TXMEJS.cjs} +5 -5
  44. package/dist/chunk-VRFBB5DB.js +44 -0
  45. package/dist/chunk-WB6PH56J.js +166 -0
  46. package/dist/{chunk-G2UTNSGU.js → chunk-WNKWAEUR.js} +7 -1
  47. package/dist/{chunk-SUEGJ75D.cjs → chunk-WYTEQ4Q5.cjs} +25 -2
  48. package/dist/{chunk-5ENKBSWO.js → chunk-YJVHCHQX.js} +42 -6
  49. package/dist/{chunk-VQY5W4YW.cjs → chunk-YK57NMIF.cjs} +44 -8
  50. package/dist/{chunk-KFI44N2R.cjs → chunk-YNJNTCSQ.cjs} +10 -1
  51. package/dist/completion/ApiKeyPoolService.cjs +12 -0
  52. package/dist/completion/ApiKeyPoolService.d.cts +6 -0
  53. package/dist/completion/ApiKeyPoolService.d.ts +6 -0
  54. package/dist/completion/ApiKeyPoolService.js +12 -0
  55. package/dist/completion/CompletionService.cjs +27 -24
  56. package/dist/completion/CompletionService.d.cts +2 -1
  57. package/dist/completion/CompletionService.d.ts +2 -1
  58. package/dist/completion/CompletionService.js +26 -23
  59. package/dist/completion.cjs +27 -24
  60. package/dist/completion.d.cts +2 -1
  61. package/dist/completion.d.ts +2 -1
  62. package/dist/completion.js +26 -23
  63. package/dist/index.cjs +53 -29
  64. package/dist/index.d.cts +8 -8
  65. package/dist/index.d.ts +8 -8
  66. package/dist/index.js +56 -32
  67. package/dist/{keyPolicy-Cp0FntZl.d.cts → keyPolicy-zdWTu3CQ.d.cts} +1 -1
  68. package/dist/{keyPolicy-Cp0FntZl.d.ts → keyPolicy-zdWTu3CQ.d.ts} +1 -1
  69. package/dist/outbound-api/auditCapture.cjs +2 -2
  70. package/dist/outbound-api/auditCapture.d.cts +5 -3
  71. package/dist/outbound-api/auditCapture.d.ts +5 -3
  72. package/dist/outbound-api/auditCapture.js +1 -1
  73. package/dist/outbound-api/quotaWarn.d.cts +1 -1
  74. package/dist/outbound-api/quotaWarn.d.ts +1 -1
  75. package/dist/outbound-api/routeResolver.cjs +2 -2
  76. package/dist/outbound-api/routeResolver.d.cts +4 -3
  77. package/dist/outbound-api/routeResolver.d.ts +4 -3
  78. package/dist/outbound-api/routeResolver.js +1 -1
  79. package/dist/outbound-api/subscriptionRegistryPort.d.cts +1 -0
  80. package/dist/outbound-api/subscriptionRegistryPort.d.ts +1 -0
  81. package/dist/outbound-api/types.d.cts +3 -2
  82. package/dist/outbound-api/types.d.ts +3 -2
  83. package/dist/outbound-api.cjs +49 -25
  84. package/dist/outbound-api.d.cts +127 -85
  85. package/dist/outbound-api.d.ts +127 -85
  86. package/dist/outbound-api.js +52 -28
  87. package/dist/pipeline/AccountAllowanceScheduling.cjs +15 -0
  88. package/dist/pipeline/AccountAllowanceScheduling.d.cts +90 -0
  89. package/dist/pipeline/AccountAllowanceScheduling.d.ts +90 -0
  90. package/dist/pipeline/AccountAllowanceScheduling.js +15 -0
  91. package/dist/pipeline/AccountAllowanceStore.cjs +20 -0
  92. package/dist/pipeline/AccountAllowanceStore.d.cts +77 -0
  93. package/dist/pipeline/AccountAllowanceStore.d.ts +77 -0
  94. package/dist/pipeline/AccountAllowanceStore.js +20 -0
  95. package/dist/pipeline/AuthSource.d.cts +11 -2
  96. package/dist/pipeline/AuthSource.d.ts +11 -2
  97. package/dist/pipeline/BoundAccountSelectionError.cjs +10 -0
  98. package/dist/pipeline/BoundAccountSelectionError.d.cts +28 -0
  99. package/dist/pipeline/BoundAccountSelectionError.d.ts +28 -0
  100. package/dist/pipeline/BoundAccountSelectionError.js +10 -0
  101. package/dist/pipeline/LlmConfigProviderAuth.d.cts +1 -0
  102. package/dist/pipeline/LlmConfigProviderAuth.d.ts +1 -0
  103. package/dist/pipeline/SubscriptionAccountHealth.cjs +4 -2
  104. package/dist/pipeline/SubscriptionAccountHealth.d.cts +34 -6
  105. package/dist/pipeline/SubscriptionAccountHealth.d.ts +34 -6
  106. package/dist/pipeline/SubscriptionAccountHealth.js +3 -1
  107. package/dist/pipeline/SubscriptionAuthSource.cjs +5 -2
  108. package/dist/pipeline/SubscriptionAuthSource.d.cts +1 -0
  109. package/dist/pipeline/SubscriptionAuthSource.d.ts +1 -0
  110. package/dist/pipeline/SubscriptionAuthSource.js +4 -1
  111. package/dist/pipeline/SubscriptionAuthStrategy.d.cts +8 -3
  112. package/dist/pipeline/SubscriptionAuthStrategy.d.ts +8 -3
  113. package/dist/pipeline/executeProviderCall.cjs +2 -2
  114. package/dist/pipeline/executeProviderCall.d.cts +8 -3
  115. package/dist/pipeline/executeProviderCall.d.ts +8 -3
  116. package/dist/pipeline/executeProviderCall.js +1 -1
  117. package/dist/pipeline/resolveProviderChain.d.cts +2 -3
  118. package/dist/pipeline/resolveProviderChain.d.ts +2 -3
  119. package/dist/pipeline/resolveSubscriptionChain.d.cts +1 -0
  120. package/dist/pipeline/resolveSubscriptionChain.d.ts +1 -0
  121. package/dist/pipeline/upstreamFetch.cjs +4 -2
  122. package/dist/pipeline/upstreamFetch.d.cts +6 -0
  123. package/dist/pipeline/upstreamFetch.d.ts +6 -0
  124. package/dist/pipeline/upstreamFetch.js +3 -1
  125. package/dist/pipeline/upstreamTrace.cjs +14 -0
  126. package/dist/pipeline/upstreamTrace.d.cts +85 -0
  127. package/dist/pipeline/upstreamTrace.d.ts +85 -0
  128. package/dist/pipeline/upstreamTrace.js +14 -0
  129. package/dist/ports/pricing-store.d.cts +4 -3
  130. package/dist/ports/pricing-store.d.ts +4 -3
  131. package/dist/ports.d.cts +4 -3
  132. package/dist/ports.d.ts +4 -3
  133. package/dist/provider-proxy/ProviderProxy.cjs +27 -24
  134. package/dist/provider-proxy/ProviderProxy.d.cts +1 -0
  135. package/dist/provider-proxy/ProviderProxy.d.ts +1 -0
  136. package/dist/provider-proxy/ProviderProxy.js +26 -23
  137. package/dist/provider-proxy/ingress/providerProxyShared.cjs +31 -24
  138. package/dist/provider-proxy/ingress/providerProxyShared.d.cts +50 -5
  139. package/dist/provider-proxy/ingress/providerProxyShared.d.ts +50 -5
  140. package/dist/provider-proxy/ingress/providerProxyShared.js +30 -23
  141. package/dist/provider-proxy/matchText.cjs +4 -2
  142. package/dist/provider-proxy/matchText.d.cts +41 -6
  143. package/dist/provider-proxy/matchText.d.ts +41 -6
  144. package/dist/provider-proxy/matchText.js +3 -1
  145. package/dist/provider-proxy/types.d.cts +30 -2
  146. package/dist/provider-proxy/types.d.ts +30 -2
  147. package/dist/provider-proxy.cjs +27 -24
  148. package/dist/provider-proxy.d.cts +1 -0
  149. package/dist/provider-proxy.d.ts +1 -0
  150. package/dist/provider-proxy.js +26 -23
  151. package/dist/{routeResolver-C4T7yClx.d.ts → routeResolver-CHTv_Bs5.d.ts} +1 -1
  152. package/dist/{routeResolver-CB3tvJKy.d.cts → routeResolver-kepxnfcC.d.cts} +1 -1
  153. package/dist/transformer/TransformerChainExecutor.cjs +2 -2
  154. package/dist/transformer/TransformerChainExecutor.js +1 -1
  155. package/dist/transformer/transformers/AnthropicTransformer.cjs +2 -2
  156. package/dist/transformer/transformers/AnthropicTransformer.js +1 -1
  157. package/dist/transformer/transformers/GeminiCodeAssistTransformer.cjs +3 -3
  158. package/dist/transformer/transformers/GeminiCodeAssistTransformer.js +2 -2
  159. package/dist/transformer/transformers/GeminiTransformer.cjs +3 -3
  160. package/dist/transformer/transformers/GeminiTransformer.js +2 -2
  161. package/dist/transformer/transformers/OpenAIResponseTransformer.cjs +2 -2
  162. package/dist/transformer/transformers/OpenAIResponseTransformer.d.cts +1 -1
  163. package/dist/transformer/transformers/OpenAIResponseTransformer.d.ts +1 -1
  164. package/dist/transformer/transformers/OpenAIResponseTransformer.js +1 -1
  165. package/dist/transformer/transformers/OpenAITransformer.cjs +6 -0
  166. package/dist/transformer/transformers/OpenAITransformer.d.cts +68 -0
  167. package/dist/transformer/transformers/OpenAITransformer.d.ts +68 -0
  168. package/dist/transformer/transformers/OpenAITransformer.js +6 -0
  169. package/dist/transformer/transformers.cjs +8 -14
  170. package/dist/transformer/transformers.d.cts +12 -48
  171. package/dist/transformer/transformers.d.ts +12 -48
  172. package/dist/transformer/transformers.js +11 -17
  173. package/dist/transformer/types.d.cts +17 -0
  174. package/dist/transformer/types.d.ts +17 -0
  175. package/dist/transformer.cjs +11 -12
  176. package/dist/transformer.d.cts +1 -2
  177. package/dist/transformer.d.ts +1 -2
  178. package/dist/transformer.js +11 -12
  179. package/dist/{types-B8Arpxn0.d.cts → types-H3wGZSOo.d.cts} +134 -7
  180. package/dist/{types-lgPYQuZS.d.ts → types-hsoKrVQS.d.ts} +134 -7
  181. package/dist/usage/pricing-engine.cjs +2 -2
  182. package/dist/usage/pricing-engine.d.cts +9 -1
  183. package/dist/usage/pricing-engine.d.ts +9 -1
  184. package/dist/usage/pricing-engine.js +1 -1
  185. package/dist/usage.cjs +2 -2
  186. package/dist/usage.js +1 -1
  187. package/package.json +1 -1
  188. package/dist/chunk-C72S6TTV.cjs +0 -49
  189. package/dist/chunk-DWKQZ2SK.cjs +0 -254
  190. package/dist/chunk-IAXWICZU.js +0 -69
  191. package/dist/chunk-QWBWGODS.cjs +0 -69
  192. package/dist/chunk-RGTR7CIO.cjs +0 -235
  193. package/dist/chunk-VPBAUQ2M.js +0 -235
  194. package/dist/chunk-YMFAJFQT.cjs +0 -173
  195. package/dist/chunk-Z7LUNECE.js +0 -49
  196. package/dist/chunk-ZJZAOKI7.js +0 -254
  197. package/dist/transformer/transformers/OpenCodeGoTransformer.cjs +0 -6
  198. package/dist/transformer/transformers/OpenCodeGoTransformer.d.cts +0 -51
  199. package/dist/transformer/transformers/OpenCodeGoTransformer.d.ts +0 -51
  200. package/dist/transformer/transformers/OpenCodeGoTransformer.js +0 -6
  201. package/dist/transformer/transformers/ReasoningTransformer.cjs +0 -6
  202. package/dist/transformer/transformers/ReasoningTransformer.d.cts +0 -47
  203. package/dist/transformer/transformers/ReasoningTransformer.d.ts +0 -47
  204. package/dist/transformer/transformers/ReasoningTransformer.js +0 -6
@@ -0,0 +1,14 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
7
+ var _chunk3Z5BQZFMcjs = require('../chunk-3Z5BQZFM.cjs');
8
+
9
+
10
+
11
+
12
+
13
+
14
+ exports.__resetUpstreamTraceForTests = _chunk3Z5BQZFMcjs.__resetUpstreamTraceForTests; exports.getUpstreamTracePath = _chunk3Z5BQZFMcjs.getUpstreamTracePath; exports.redactHeaders = _chunk3Z5BQZFMcjs.redactHeaders; exports.setUpstreamTracePath = _chunk3Z5BQZFMcjs.setUpstreamTracePath; exports.writeUpstreamTrace = _chunk3Z5BQZFMcjs.writeUpstreamTrace;
@@ -0,0 +1,85 @@
1
+ /**
2
+ * upstreamTrace — opt-in COMPLETE upstream-exchange capture for debugging
3
+ * (the omnicross → provider leg, e.g. the codex Responses call).
4
+ *
5
+ * The request-audit-log (`auditCapture`) only sees the CLIENT-facing leg
6
+ * (what the client sent to omnicross + what omnicross returned). It can NOT
7
+ * show the actual upstream provider request/response — and for a streaming
8
+ * codex reply it records metadata only. Every protocol-level codex bug
9
+ * (missing `Content-Type`, `store:false`, `input_text`, …) lives in the
10
+ * UPSTREAM exchange, so this module captures it verbatim.
11
+ *
12
+ * {@link fetchUpstream} is the single egress seam for every upstream call.
13
+ * When a trace path is installed it clones the response, reads the FULL body
14
+ * (a `text/event-stream` included — `clone().text()` tees the stream so the
15
+ * relay keeps streaming the original while the clone is buffered for the
16
+ * trace), and appends one {@link UpstreamTraceRecord} JSON line. Relay calls
17
+ * carry an opaque `providerId`; OAuth-refresh / webhook sends do not, so they
18
+ * are skipped (less noise). Tracing is fire-and-forget: a read/write failure
19
+ * is swallowed so the egress path is never affected.
20
+ *
21
+ * The daemon installs the path via {@link setUpstreamTracePath} (gated on the
22
+ * audit segment's `captureBodies`, hot-reloaded like the audit sink). Absent a
23
+ * path the trace is a pure no-op — byte-identical zero regression.
24
+ *
25
+ * Secret discipline: request/response AUTHORIZATION + api-key HEADER values are
26
+ * masked (`***REDACTED***`) — they are OAuth bearer tokens, not the thing under
27
+ * test, and a plaintext trace file must not hold them. Header KEYS stay visible
28
+ * so presence is verifiable. The request/response BODIES are captured VERBATIM
29
+ * (a prompt / a codex SSE stream) — that is the whole point.
30
+ *
31
+ * @module @omnicross/core/pipeline/upstreamTrace
32
+ */
33
+ /**
34
+ * Install (or clear, with `null`/blank) the trace file path. Idempotent — last
35
+ * write wins. The path is resolved by the daemon relative to the audit store.
36
+ */
37
+ declare function setUpstreamTracePath(path: string | null): void;
38
+ /** The active trace file path, or `null` when tracing is disabled. */
39
+ declare function getUpstreamTracePath(): string | null;
40
+ /**
41
+ * Mask secret header values while keeping the keys. Accepts a web `Headers`
42
+ * (from a fetch response) or a plain `Record<string,string>` (from a relay
43
+ * `buildHeaders`). Never throws.
44
+ */
45
+ declare function redactHeaders(headers: Headers | Record<string, string> | Array<[string, string]> | undefined | null): Record<string, string>;
46
+ /** One complete upstream-exchange trace record (appended as one JSON line). */
47
+ interface UpstreamTraceRecord {
48
+ /** Epoch ms the call started (request send time). */
49
+ ts: number;
50
+ /** Round-trip duration in ms (response fully read). */
51
+ durationMs: number;
52
+ /** The opaque relay provider id (`codex`/`claude`/`gemini`/`opencodego`/`byo`). */
53
+ providerId?: string;
54
+ /** The selected pooled account id, when the relay reported one. */
55
+ accountId?: string;
56
+ /** The upstream URL the request was sent to. */
57
+ url: string;
58
+ /** HTTP method. */
59
+ method: string;
60
+ /** Outbound request headers (secret values masked). */
61
+ requestHeaders: Record<string, string>;
62
+ /** Outbound request body verbatim (the codex Responses payload), when a string. */
63
+ requestBody: string | null;
64
+ /** Upstream HTTP status (`0` when the fetch itself failed). */
65
+ status: number;
66
+ /** Upstream HTTP status text. */
67
+ statusText: string;
68
+ /** Upstream response headers. */
69
+ responseHeaders: Record<string, string>;
70
+ /** Upstream response body verbatim — the FULL `text/event-stream` for a stream. */
71
+ responseBody: string;
72
+ /** Response body size in UTF-8 bytes. */
73
+ responseBytes: number;
74
+ }
75
+ /**
76
+ * Append one trace record to the installed file. A no-op (zero work) when no
77
+ * path is installed. Fire-and-forget safe: any fs error is swallowed — a trace
78
+ * failure must NEVER surface into the egress path. ASYNC so a slow disk / large
79
+ * SSE body never blocks the event loop (the call site does not await it).
80
+ */
81
+ declare function writeUpstreamTrace(record: UpstreamTraceRecord): Promise<void>;
82
+ /** TEST SEAM — clear the trace path so a suite starts from the no-trace baseline. */
83
+ declare function __resetUpstreamTraceForTests(): void;
84
+
85
+ export { type UpstreamTraceRecord, __resetUpstreamTraceForTests, getUpstreamTracePath, redactHeaders, setUpstreamTracePath, writeUpstreamTrace };
@@ -0,0 +1,85 @@
1
+ /**
2
+ * upstreamTrace — opt-in COMPLETE upstream-exchange capture for debugging
3
+ * (the omnicross → provider leg, e.g. the codex Responses call).
4
+ *
5
+ * The request-audit-log (`auditCapture`) only sees the CLIENT-facing leg
6
+ * (what the client sent to omnicross + what omnicross returned). It can NOT
7
+ * show the actual upstream provider request/response — and for a streaming
8
+ * codex reply it records metadata only. Every protocol-level codex bug
9
+ * (missing `Content-Type`, `store:false`, `input_text`, …) lives in the
10
+ * UPSTREAM exchange, so this module captures it verbatim.
11
+ *
12
+ * {@link fetchUpstream} is the single egress seam for every upstream call.
13
+ * When a trace path is installed it clones the response, reads the FULL body
14
+ * (a `text/event-stream` included — `clone().text()` tees the stream so the
15
+ * relay keeps streaming the original while the clone is buffered for the
16
+ * trace), and appends one {@link UpstreamTraceRecord} JSON line. Relay calls
17
+ * carry an opaque `providerId`; OAuth-refresh / webhook sends do not, so they
18
+ * are skipped (less noise). Tracing is fire-and-forget: a read/write failure
19
+ * is swallowed so the egress path is never affected.
20
+ *
21
+ * The daemon installs the path via {@link setUpstreamTracePath} (gated on the
22
+ * audit segment's `captureBodies`, hot-reloaded like the audit sink). Absent a
23
+ * path the trace is a pure no-op — byte-identical zero regression.
24
+ *
25
+ * Secret discipline: request/response AUTHORIZATION + api-key HEADER values are
26
+ * masked (`***REDACTED***`) — they are OAuth bearer tokens, not the thing under
27
+ * test, and a plaintext trace file must not hold them. Header KEYS stay visible
28
+ * so presence is verifiable. The request/response BODIES are captured VERBATIM
29
+ * (a prompt / a codex SSE stream) — that is the whole point.
30
+ *
31
+ * @module @omnicross/core/pipeline/upstreamTrace
32
+ */
33
+ /**
34
+ * Install (or clear, with `null`/blank) the trace file path. Idempotent — last
35
+ * write wins. The path is resolved by the daemon relative to the audit store.
36
+ */
37
+ declare function setUpstreamTracePath(path: string | null): void;
38
+ /** The active trace file path, or `null` when tracing is disabled. */
39
+ declare function getUpstreamTracePath(): string | null;
40
+ /**
41
+ * Mask secret header values while keeping the keys. Accepts a web `Headers`
42
+ * (from a fetch response) or a plain `Record<string,string>` (from a relay
43
+ * `buildHeaders`). Never throws.
44
+ */
45
+ declare function redactHeaders(headers: Headers | Record<string, string> | Array<[string, string]> | undefined | null): Record<string, string>;
46
+ /** One complete upstream-exchange trace record (appended as one JSON line). */
47
+ interface UpstreamTraceRecord {
48
+ /** Epoch ms the call started (request send time). */
49
+ ts: number;
50
+ /** Round-trip duration in ms (response fully read). */
51
+ durationMs: number;
52
+ /** The opaque relay provider id (`codex`/`claude`/`gemini`/`opencodego`/`byo`). */
53
+ providerId?: string;
54
+ /** The selected pooled account id, when the relay reported one. */
55
+ accountId?: string;
56
+ /** The upstream URL the request was sent to. */
57
+ url: string;
58
+ /** HTTP method. */
59
+ method: string;
60
+ /** Outbound request headers (secret values masked). */
61
+ requestHeaders: Record<string, string>;
62
+ /** Outbound request body verbatim (the codex Responses payload), when a string. */
63
+ requestBody: string | null;
64
+ /** Upstream HTTP status (`0` when the fetch itself failed). */
65
+ status: number;
66
+ /** Upstream HTTP status text. */
67
+ statusText: string;
68
+ /** Upstream response headers. */
69
+ responseHeaders: Record<string, string>;
70
+ /** Upstream response body verbatim — the FULL `text/event-stream` for a stream. */
71
+ responseBody: string;
72
+ /** Response body size in UTF-8 bytes. */
73
+ responseBytes: number;
74
+ }
75
+ /**
76
+ * Append one trace record to the installed file. A no-op (zero work) when no
77
+ * path is installed. Fire-and-forget safe: any fs error is swallowed — a trace
78
+ * failure must NEVER surface into the egress path. ASYNC so a slow disk / large
79
+ * SSE body never blocks the event loop (the call site does not await it).
80
+ */
81
+ declare function writeUpstreamTrace(record: UpstreamTraceRecord): Promise<void>;
82
+ /** TEST SEAM — clear the trace path so a suite starts from the no-trace baseline. */
83
+ declare function __resetUpstreamTraceForTests(): void;
84
+
85
+ export { type UpstreamTraceRecord, __resetUpstreamTraceForTests, getUpstreamTracePath, redactHeaders, setUpstreamTracePath, writeUpstreamTrace };
@@ -0,0 +1,14 @@
1
+ import {
2
+ __resetUpstreamTraceForTests,
3
+ getUpstreamTracePath,
4
+ redactHeaders,
5
+ setUpstreamTracePath,
6
+ writeUpstreamTrace
7
+ } from "../chunk-SYQF7OIR.js";
8
+ export {
9
+ __resetUpstreamTraceForTests,
10
+ getUpstreamTracePath,
11
+ redactHeaders,
12
+ setUpstreamTracePath,
13
+ writeUpstreamTrace
14
+ };
@@ -1,4 +1,4 @@
1
- import { PricingEntry, PricingEntryInput, PricingResolution } from '@omnicross/contracts/pricing-types';
1
+ import { PricingSource, PricingEntry, PricingEntryInput, PricingResolution } from '@omnicross/contracts/pricing-types';
2
2
 
3
3
  /**
4
4
  * `PricingStore` — core-owned port for pricing-row persistence.
@@ -11,6 +11,7 @@ import { PricingEntry, PricingEntryInput, PricingResolution } from '@omnicross/c
11
11
  * @module ports/pricing-store
12
12
  */
13
13
 
14
+ type AutomaticPricingSource = Extract<PricingSource, 'litellm' | 'openrouter'>;
14
15
  interface PricingStore {
15
16
  /** Return every pricing row. The engine caches the full table in memory. */
16
17
  getAll(): Promise<PricingEntry[]>;
@@ -29,7 +30,7 @@ interface PricingStore {
29
30
  * left untouched and returned in `conflicts` as `{ current, incoming }`
30
31
  * pairs for per-row resolution by the user.
31
32
  */
32
- bulkApplyFromSource(entries: PricingEntryInput[]): Promise<{
33
+ bulkApplyFromSource(entries: PricingEntryInput[], source?: AutomaticPricingSource): Promise<{
33
34
  applied: PricingEntry[];
34
35
  conflicts: Array<{
35
36
  current: PricingEntry;
@@ -47,4 +48,4 @@ interface PricingStore {
47
48
  }>): Promise<PricingResolution>;
48
49
  }
49
50
 
50
- export type { PricingStore };
51
+ export type { AutomaticPricingSource, PricingStore };
@@ -1,4 +1,4 @@
1
- import { PricingEntry, PricingEntryInput, PricingResolution } from '@omnicross/contracts/pricing-types';
1
+ import { PricingSource, PricingEntry, PricingEntryInput, PricingResolution } from '@omnicross/contracts/pricing-types';
2
2
 
3
3
  /**
4
4
  * `PricingStore` — core-owned port for pricing-row persistence.
@@ -11,6 +11,7 @@ import { PricingEntry, PricingEntryInput, PricingResolution } from '@omnicross/c
11
11
  * @module ports/pricing-store
12
12
  */
13
13
 
14
+ type AutomaticPricingSource = Extract<PricingSource, 'litellm' | 'openrouter'>;
14
15
  interface PricingStore {
15
16
  /** Return every pricing row. The engine caches the full table in memory. */
16
17
  getAll(): Promise<PricingEntry[]>;
@@ -29,7 +30,7 @@ interface PricingStore {
29
30
  * left untouched and returned in `conflicts` as `{ current, incoming }`
30
31
  * pairs for per-row resolution by the user.
31
32
  */
32
- bulkApplyFromSource(entries: PricingEntryInput[]): Promise<{
33
+ bulkApplyFromSource(entries: PricingEntryInput[], source?: AutomaticPricingSource): Promise<{
33
34
  applied: PricingEntry[];
34
35
  conflicts: Array<{
35
36
  current: PricingEntry;
@@ -47,4 +48,4 @@ interface PricingStore {
47
48
  }>): Promise<PricingResolution>;
48
49
  }
49
50
 
50
- export type { PricingStore };
51
+ export type { AutomaticPricingSource, PricingStore };
package/dist/ports.d.cts CHANGED
@@ -1,11 +1,11 @@
1
1
  export { C as CorePaths, a as CoreUsageEvent, b as CoreUsageTokenCounts, U as UsageEventSink } from './usage-event-sink-BX7FE1NL.cjs';
2
2
  export { L as Logger } from './logger-4GvQNzhE.cjs';
3
- export { PricingStore } from './ports/pricing-store.cjs';
3
+ export { AutomaticPricingSource, PricingStore } from './ports/pricing-store.cjs';
4
4
  export { ProviderConfigSource } from './ports/provider-config-source.cjs';
5
5
  export { UsageEventStore } from './ports/usage-event-store.cjs';
6
6
  export { WebSearchBackend } from './ports/web-search-backend.cjs';
7
7
  export { UsageRecorderImport as UsageSink } from './provider-proxy/types.cjs';
8
- export { O as OutboundCredentialStore } from './types-B8Arpxn0.cjs';
8
+ export { O as OutboundCredentialStore } from './types-H3wGZSOo.cjs';
9
9
  import '@omnicross/contracts/pricing-types';
10
10
  import '@omnicross/contracts/llm-config';
11
11
  import './transformer/types.cjs';
@@ -18,6 +18,7 @@ import '@omnicross/contracts/subscription-types';
18
18
  import '@omnicross/contracts/usage-types';
19
19
  import './completion/ApiKeyPoolService.cjs';
20
20
  import './pipeline/AuthSource.cjs';
21
+ import './pipeline/BoundAccountSelectionError.cjs';
21
22
  import './pipeline/SubscriptionAuthSource.cjs';
22
23
  import './pipeline/SubscriptionAuthStrategy.cjs';
23
24
  import '@omnicross/contracts/account-tokens-types';
@@ -27,4 +28,4 @@ import '@omnicross/contracts/health-logging-types';
27
28
  import '@omnicross/contracts/voucher-types';
28
29
  import '@omnicross/contracts/webhook-types';
29
30
  import './ProviderProxy-CnMQYN59.cjs';
30
- import './keyPolicy-Cp0FntZl.cjs';
31
+ import './keyPolicy-zdWTu3CQ.cjs';
package/dist/ports.d.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  export { C as CorePaths, a as CoreUsageEvent, b as CoreUsageTokenCounts, U as UsageEventSink } from './usage-event-sink-BX7FE1NL.js';
2
2
  export { L as Logger } from './logger-4GvQNzhE.js';
3
- export { PricingStore } from './ports/pricing-store.js';
3
+ export { AutomaticPricingSource, PricingStore } from './ports/pricing-store.js';
4
4
  export { ProviderConfigSource } from './ports/provider-config-source.js';
5
5
  export { UsageEventStore } from './ports/usage-event-store.js';
6
6
  export { WebSearchBackend } from './ports/web-search-backend.js';
7
7
  export { UsageRecorderImport as UsageSink } from './provider-proxy/types.js';
8
- export { O as OutboundCredentialStore } from './types-lgPYQuZS.js';
8
+ export { O as OutboundCredentialStore } from './types-hsoKrVQS.js';
9
9
  import '@omnicross/contracts/pricing-types';
10
10
  import '@omnicross/contracts/llm-config';
11
11
  import './transformer/types.js';
@@ -18,6 +18,7 @@ import '@omnicross/contracts/subscription-types';
18
18
  import '@omnicross/contracts/usage-types';
19
19
  import './completion/ApiKeyPoolService.js';
20
20
  import './pipeline/AuthSource.js';
21
+ import './pipeline/BoundAccountSelectionError.js';
21
22
  import './pipeline/SubscriptionAuthSource.js';
22
23
  import './pipeline/SubscriptionAuthStrategy.js';
23
24
  import '@omnicross/contracts/account-tokens-types';
@@ -27,4 +28,4 @@ import '@omnicross/contracts/health-logging-types';
27
28
  import '@omnicross/contracts/voucher-types';
28
29
  import '@omnicross/contracts/webhook-types';
29
30
  import './ProviderProxy-C-xqrkKi.js';
30
- import './keyPolicy-Cp0FntZl.js';
31
+ import './keyPolicy-zdWTu3CQ.js';
@@ -1,48 +1,51 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _chunkDKPXN34Vcjs = require('../chunk-DKPXN34V.cjs');
4
+ var _chunkSQYVORNPcjs = require('../chunk-SQYVORNP.cjs');
5
+ require('../chunk-EJLH6NFT.cjs');
5
6
  require('../chunk-HQP3K7PU.cjs');
6
7
  require('../chunk-FZ46M34D.cjs');
8
+ require('../chunk-IIRPUVPH.cjs');
9
+ require('../chunk-GBHYAGX3.cjs');
7
10
  require('../chunk-3OPYJG76.cjs');
8
- require('../chunk-RGTR7CIO.cjs');
9
- require('../chunk-DWKQZ2SK.cjs');
10
- require('../chunk-4VAVYUZS.cjs');
11
- require('../chunk-7YN22L2H.cjs');
12
- require('../chunk-SU2GCLAC.cjs');
13
- require('../chunk-C72S6TTV.cjs');
11
+ require('../chunk-7AK7B36B.cjs');
12
+ require('../chunk-V4TXMEJS.cjs');
13
+ require('../chunk-6VUQPOV3.cjs');
14
+ require('../chunk-OF3BECU2.cjs');
15
+ require('../chunk-4VLRHHFE.cjs');
14
16
  require('../chunk-EYZYXJTJ.cjs');
15
- require('../chunk-YMFAJFQT.cjs');
17
+ require('../chunk-DLXZEZWO.cjs');
16
18
  require('../chunk-SNYBEXLB.cjs');
17
- require('../chunk-46ZIFWYG.cjs');
18
- require('../chunk-GBHYAGX3.cjs');
19
+ require('../chunk-R3HK6R4B.cjs');
19
20
  require('../chunk-RPII3E6Z.cjs');
20
21
  require('../chunk-6RPZADX3.cjs');
21
- require('../chunk-QWBWGODS.cjs');
22
+ require('../chunk-NYUNU75A.cjs');
23
+ require('../chunk-YK57NMIF.cjs');
24
+ require('../chunk-YNJNTCSQ.cjs');
25
+ require('../chunk-SVNDB62D.cjs');
22
26
  require('../chunk-UIBD2YY5.cjs');
23
- require('../chunk-R3HK6R4B.cjs');
24
- require('../chunk-HYN75H6G.cjs');
27
+ require('../chunk-6QQG7YG3.cjs');
28
+ require('../chunk-25GXJCEZ.cjs');
29
+ require('../chunk-MUHWHQVM.cjs');
25
30
  require('../chunk-Q27JY5RG.cjs');
26
31
  require('../chunk-QXD4MV2X.cjs');
27
- require('../chunk-NYUNU75A.cjs');
28
- require('../chunk-VQY5W4YW.cjs');
29
- require('../chunk-KFI44N2R.cjs');
30
- require('../chunk-SVNDB62D.cjs');
31
32
  require('../chunk-APYG5QD7.cjs');
32
33
  require('../chunk-L74VDN4A.cjs');
33
34
  require('../chunk-4YINUUKQ.cjs');
34
- require('../chunk-VACWOIRE.cjs');
35
+ require('../chunk-4VZX5F4T.cjs');
35
36
  require('../chunk-QBZJ7P2T.cjs');
36
37
  require('../chunk-4IH4EL7M.cjs');
37
38
  require('../chunk-A2YMUCBT.cjs');
38
- require('../chunk-E3UCVHLP.cjs');
39
+ require('../chunk-UNWKG6EI.cjs');
39
40
  require('../chunk-FCR77GYM.cjs');
40
41
  require('../chunk-AEOZIDEB.cjs');
41
42
  require('../chunk-XSVNC2UD.cjs');
42
- require('../chunk-SUEGJ75D.cjs');
43
- require('../chunk-RSJ3TWJQ.cjs');
44
- require('../chunk-YGXJGRFI.cjs');
45
- require('../chunk-OCEUVQHW.cjs');
43
+ require('../chunk-WYTEQ4Q5.cjs');
44
+ require('../chunk-OKMJLEXX.cjs');
45
+ require('../chunk-KBM2W6UY.cjs');
46
+ require('../chunk-KCVJWJST.cjs');
47
+ require('../chunk-3Z5BQZFM.cjs');
48
+ require('../chunk-HVBBDBS3.cjs');
46
49
  require('../chunk-NZYN7C3P.cjs');
47
50
  require('../chunk-JMJBSACD.cjs');
48
51
  require('../chunk-GMMT7RVN.cjs');
@@ -50,4 +53,4 @@ require('../chunk-UNEFIWXI.cjs');
50
53
 
51
54
 
52
55
 
53
- exports.ProviderProxy = _chunkDKPXN34Vcjs.ProviderProxy; exports.isLoopbackAddress = _chunkDKPXN34Vcjs.isLoopbackAddress;
56
+ exports.ProviderProxy = _chunkSQYVORNPcjs.ProviderProxy; exports.isLoopbackAddress = _chunkSQYVORNPcjs.isLoopbackAddress;
@@ -8,6 +8,7 @@ import '../completion/ApiKeyPoolService.cjs';
8
8
  import '@omnicross/contracts/llm-config';
9
9
  import '../logger-4GvQNzhE.cjs';
10
10
  import '../pipeline/AuthSource.cjs';
11
+ import '../pipeline/BoundAccountSelectionError.cjs';
11
12
  import '../pipeline/SubscriptionAuthSource.cjs';
12
13
  import '../pipeline/SubscriptionAuthStrategy.cjs';
13
14
  import '../ports/provider-config-source.cjs';
@@ -8,6 +8,7 @@ import '../completion/ApiKeyPoolService.js';
8
8
  import '@omnicross/contracts/llm-config';
9
9
  import '../logger-4GvQNzhE.js';
10
10
  import '../pipeline/AuthSource.js';
11
+ import '../pipeline/BoundAccountSelectionError.js';
11
12
  import '../pipeline/SubscriptionAuthSource.js';
12
13
  import '../pipeline/SubscriptionAuthStrategy.js';
13
14
  import '../ports/provider-config-source.js';
@@ -1,48 +1,51 @@
1
1
  import {
2
2
  ProviderProxy,
3
3
  isLoopbackAddress
4
- } from "../chunk-QYTT6GE3.js";
4
+ } from "../chunk-UDCC7EMR.js";
5
+ import "../chunk-WB6PH56J.js";
5
6
  import "../chunk-VVEHS2LI.js";
6
7
  import "../chunk-46RLHI7D.js";
8
+ import "../chunk-WNKWAEUR.js";
9
+ import "../chunk-MZNPGW5Q.js";
7
10
  import "../chunk-DK4A7DLE.js";
8
- import "../chunk-VPBAUQ2M.js";
9
- import "../chunk-ZJZAOKI7.js";
10
- import "../chunk-FTQ7IQUC.js";
11
- import "../chunk-C7PSERMH.js";
12
- import "../chunk-TIER4SUC.js";
13
- import "../chunk-Z7LUNECE.js";
11
+ import "../chunk-VRFBB5DB.js";
12
+ import "../chunk-LVUCAWMK.js";
13
+ import "../chunk-OEWZUX4G.js";
14
+ import "../chunk-LB6EBS6Y.js";
15
+ import "../chunk-6CL5HTPQ.js";
14
16
  import "../chunk-7VU7V2E4.js";
15
- import "../chunk-ZLX3KGXX.js";
17
+ import "../chunk-UX7VWA46.js";
16
18
  import "../chunk-BPKCU575.js";
17
- import "../chunk-G2UTNSGU.js";
18
- import "../chunk-MZNPGW5Q.js";
19
+ import "../chunk-DRWHTIIZ.js";
19
20
  import "../chunk-XTEI64OU.js";
20
21
  import "../chunk-XX6NQJMA.js";
21
- import "../chunk-IAXWICZU.js";
22
+ import "../chunk-5ERIZW3D.js";
23
+ import "../chunk-YJVHCHQX.js";
24
+ import "../chunk-23S5OPIO.js";
25
+ import "../chunk-AVYJ4YBN.js";
22
26
  import "../chunk-OE6TDIWW.js";
23
- import "../chunk-DRWHTIIZ.js";
24
- import "../chunk-IK3KE3AU.js";
27
+ import "../chunk-OPRS4IQZ.js";
28
+ import "../chunk-2JYRIADS.js";
29
+ import "../chunk-DE2SRBFZ.js";
25
30
  import "../chunk-ZY6KU6P3.js";
26
31
  import "../chunk-JWC6APFQ.js";
27
- import "../chunk-5ERIZW3D.js";
28
- import "../chunk-5ENKBSWO.js";
29
- import "../chunk-HRRYG2AX.js";
30
- import "../chunk-AVYJ4YBN.js";
31
32
  import "../chunk-WLYIIEAF.js";
32
33
  import "../chunk-TKJMZBAH.js";
33
34
  import "../chunk-3QFXFCHG.js";
34
- import "../chunk-UHGVBFU3.js";
35
+ import "../chunk-EBLFCNPY.js";
35
36
  import "../chunk-AQ5TNQB7.js";
36
37
  import "../chunk-XEKD23J5.js";
37
38
  import "../chunk-H5JUT3KV.js";
38
- import "../chunk-7Y47UCF2.js";
39
+ import "../chunk-IFXJ2BG7.js";
39
40
  import "../chunk-K5NM7VAH.js";
40
41
  import "../chunk-WNY4WMRF.js";
41
42
  import "../chunk-OZFM4X3S.js";
42
- import "../chunk-5ZQBEOMD.js";
43
- import "../chunk-Z7Y2NPHY.js";
44
- import "../chunk-S4WBV25P.js";
45
- import "../chunk-XK5CIRMQ.js";
43
+ import "../chunk-AT7B7SOZ.js";
44
+ import "../chunk-N5T4M4GU.js";
45
+ import "../chunk-TOVPMMHM.js";
46
+ import "../chunk-SIZQQD6T.js";
47
+ import "../chunk-SYQF7OIR.js";
48
+ import "../chunk-MKF46GNZ.js";
46
49
  import "../chunk-CDHS2QDC.js";
47
50
  import "../chunk-Y7FO65VT.js";
48
51
  import "../chunk-FMOBD2OQ.js";
@@ -7,48 +7,53 @@
7
7
 
8
8
 
9
9
 
10
- var _chunkDKPXN34Vcjs = require('../../chunk-DKPXN34V.cjs');
10
+
11
+
12
+ var _chunkSQYVORNPcjs = require('../../chunk-SQYVORNP.cjs');
13
+ require('../../chunk-EJLH6NFT.cjs');
11
14
  require('../../chunk-HQP3K7PU.cjs');
12
15
  require('../../chunk-FZ46M34D.cjs');
16
+ require('../../chunk-IIRPUVPH.cjs');
17
+ require('../../chunk-GBHYAGX3.cjs');
13
18
  require('../../chunk-3OPYJG76.cjs');
14
- require('../../chunk-RGTR7CIO.cjs');
15
- require('../../chunk-DWKQZ2SK.cjs');
16
- require('../../chunk-4VAVYUZS.cjs');
17
- require('../../chunk-7YN22L2H.cjs');
18
- require('../../chunk-SU2GCLAC.cjs');
19
- require('../../chunk-C72S6TTV.cjs');
19
+ require('../../chunk-7AK7B36B.cjs');
20
+ require('../../chunk-V4TXMEJS.cjs');
21
+ require('../../chunk-6VUQPOV3.cjs');
22
+ require('../../chunk-OF3BECU2.cjs');
23
+ require('../../chunk-4VLRHHFE.cjs');
20
24
  require('../../chunk-EYZYXJTJ.cjs');
21
- require('../../chunk-YMFAJFQT.cjs');
25
+ require('../../chunk-DLXZEZWO.cjs');
22
26
  require('../../chunk-SNYBEXLB.cjs');
23
- require('../../chunk-46ZIFWYG.cjs');
24
- require('../../chunk-GBHYAGX3.cjs');
27
+ require('../../chunk-R3HK6R4B.cjs');
25
28
  require('../../chunk-RPII3E6Z.cjs');
26
29
  require('../../chunk-6RPZADX3.cjs');
27
- require('../../chunk-QWBWGODS.cjs');
30
+ require('../../chunk-NYUNU75A.cjs');
31
+ require('../../chunk-YK57NMIF.cjs');
32
+ require('../../chunk-YNJNTCSQ.cjs');
33
+ require('../../chunk-SVNDB62D.cjs');
28
34
  require('../../chunk-UIBD2YY5.cjs');
29
- require('../../chunk-R3HK6R4B.cjs');
30
- require('../../chunk-HYN75H6G.cjs');
35
+ require('../../chunk-6QQG7YG3.cjs');
36
+ require('../../chunk-25GXJCEZ.cjs');
37
+ require('../../chunk-MUHWHQVM.cjs');
31
38
  require('../../chunk-Q27JY5RG.cjs');
32
39
  require('../../chunk-QXD4MV2X.cjs');
33
- require('../../chunk-NYUNU75A.cjs');
34
- require('../../chunk-VQY5W4YW.cjs');
35
- require('../../chunk-KFI44N2R.cjs');
36
- require('../../chunk-SVNDB62D.cjs');
37
40
  require('../../chunk-APYG5QD7.cjs');
38
41
  require('../../chunk-L74VDN4A.cjs');
39
42
  require('../../chunk-4YINUUKQ.cjs');
40
- require('../../chunk-VACWOIRE.cjs');
43
+ require('../../chunk-4VZX5F4T.cjs');
41
44
  require('../../chunk-QBZJ7P2T.cjs');
42
45
  require('../../chunk-4IH4EL7M.cjs');
43
46
  require('../../chunk-A2YMUCBT.cjs');
44
- require('../../chunk-E3UCVHLP.cjs');
47
+ require('../../chunk-UNWKG6EI.cjs');
45
48
  require('../../chunk-FCR77GYM.cjs');
46
49
  require('../../chunk-AEOZIDEB.cjs');
47
50
  require('../../chunk-XSVNC2UD.cjs');
48
- require('../../chunk-SUEGJ75D.cjs');
49
- require('../../chunk-RSJ3TWJQ.cjs');
50
- require('../../chunk-YGXJGRFI.cjs');
51
- require('../../chunk-OCEUVQHW.cjs');
51
+ require('../../chunk-WYTEQ4Q5.cjs');
52
+ require('../../chunk-OKMJLEXX.cjs');
53
+ require('../../chunk-KBM2W6UY.cjs');
54
+ require('../../chunk-KCVJWJST.cjs');
55
+ require('../../chunk-3Z5BQZFM.cjs');
56
+ require('../../chunk-HVBBDBS3.cjs');
52
57
  require('../../chunk-NZYN7C3P.cjs');
53
58
  require('../../chunk-JMJBSACD.cjs');
54
59
  require('../../chunk-GMMT7RVN.cjs');
@@ -62,4 +67,6 @@ require('../../chunk-UNEFIWXI.cjs');
62
67
 
63
68
 
64
69
 
65
- exports.getAnthropicEndpointTransformer = _chunkDKPXN34Vcjs.getAnthropicEndpointTransformer; exports.getGeminiEndpointTransformer = _chunkDKPXN34Vcjs.getGeminiEndpointTransformer; exports.getResponsesEndpointTransformer = _chunkDKPXN34Vcjs.getResponsesEndpointTransformer; exports.getSharedExecutor = _chunkDKPXN34Vcjs.getSharedExecutor; exports.readBody = _chunkDKPXN34Vcjs.readBody; exports.relayResponse = _chunkDKPXN34Vcjs.relayResponse; exports.resolvePoolBoundKey = _chunkDKPXN34Vcjs.resolvePoolBoundKey; exports.writeError = _chunkDKPXN34Vcjs.writeError;
70
+
71
+
72
+ exports.aggregateAnthropicSseToJsonBody = _chunkSQYVORNPcjs.aggregateAnthropicSseToJsonBody; exports.getAnthropicEndpointTransformer = _chunkSQYVORNPcjs.getAnthropicEndpointTransformer; exports.getGeminiEndpointTransformer = _chunkSQYVORNPcjs.getGeminiEndpointTransformer; exports.getResponsesEndpointTransformer = _chunkSQYVORNPcjs.getResponsesEndpointTransformer; exports.getSharedExecutor = _chunkSQYVORNPcjs.getSharedExecutor; exports.readBody = _chunkSQYVORNPcjs.readBody; exports.relayResponse = _chunkSQYVORNPcjs.relayResponse; exports.resolvePoolBoundKey = _chunkSQYVORNPcjs.resolvePoolBoundKey; exports.writeBoundAccountError = _chunkSQYVORNPcjs.writeBoundAccountError; exports.writeError = _chunkSQYVORNPcjs.writeError;