@omnicross/core 0.1.3 → 0.1.5

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 (141) hide show
  1. package/LICENSE +21 -21
  2. package/NOTICE +57 -57
  3. package/README.md +15 -15
  4. package/dist/auth/GeminiCodeAssistProjectResolver.cjs +6 -5
  5. package/dist/auth/GeminiCodeAssistProjectResolver.js +6 -5
  6. package/dist/{chunk-2DCNB7DF.cjs → chunk-3Q6Z6JTO.cjs} +154 -26
  7. package/dist/chunk-3QFXFCHG.js +33 -0
  8. package/dist/chunk-3Z5BQZFM.cjs +52 -0
  9. package/dist/{chunk-4VAVYUZS.cjs → chunk-4XMYPW46.cjs} +9 -9
  10. package/dist/chunk-4YINUUKQ.cjs +33 -0
  11. package/dist/{chunk-S4WBV25P.js → chunk-6QZGDLL4.js} +106 -23
  12. package/dist/{chunk-C72S6TTV.cjs → chunk-7FEBOPJO.cjs} +5 -4
  13. package/dist/chunk-APYG5QD7.cjs +50 -0
  14. package/dist/{chunk-5HTVET6E.js → chunk-BODMAL6G.js} +143 -15
  15. package/dist/{chunk-CWM2ZDU5.js → chunk-BPKCU575.js} +3 -10
  16. package/dist/{chunk-2FMI2B6V.cjs → chunk-CGKLE6IW.cjs} +350 -461
  17. package/dist/{chunk-BO4RFWBR.js → chunk-D3TDKWRP.js} +84 -3
  18. package/dist/{chunk-RSJ3TWJQ.cjs → chunk-DDMRUL76.cjs} +5 -5
  19. package/dist/chunk-FCR77GYM.cjs +33 -0
  20. package/dist/{chunk-4DECIFU7.js → chunk-FH2P4OCD.js} +178 -289
  21. package/dist/{chunk-N5QFKSDO.js → chunk-HRRYG2AX.js} +2 -1
  22. package/dist/{chunk-KUU2RNG6.cjs → chunk-HYN75H6G.cjs} +3 -0
  23. package/dist/{chunk-Z7LUNECE.js → chunk-IB3FDI4O.js} +5 -4
  24. package/dist/chunk-IFXJ2BG7.js +109 -0
  25. package/dist/{chunk-JO5NLTLY.js → chunk-IK3KE3AU.js} +3 -0
  26. package/dist/{chunk-C7PSERMH.js → chunk-IWQAX3CS.js} +1 -1
  27. package/dist/{chunk-YGXJGRFI.cjs → chunk-JWVTXXPX.cjs} +106 -23
  28. package/dist/{chunk-7YN22L2H.cjs → chunk-K52THW2C.cjs} +5 -5
  29. package/dist/chunk-K5NM7VAH.js +33 -0
  30. package/dist/{chunk-Y6OM7EV7.cjs → chunk-KFI44N2R.cjs} +2 -1
  31. package/dist/{chunk-Z7Y2NPHY.js → chunk-MFZ5437A.js} +1 -1
  32. package/dist/chunk-OE6TDIWW.js +22 -0
  33. package/dist/{chunk-MQNDWYPN.js → chunk-OQWKZCXP.js} +13 -6
  34. package/dist/chunk-OZFM4X3S.js +18 -0
  35. package/dist/chunk-PG7PS2NN.cjs +170 -0
  36. package/dist/{chunk-3QOSDDNI.cjs → chunk-SNYBEXLB.cjs} +6 -13
  37. package/dist/chunk-SYQF7OIR.js +52 -0
  38. package/dist/{chunk-CZHZGRU7.js → chunk-UHGVBFU3.js} +2 -0
  39. package/dist/chunk-UIBD2YY5.cjs +22 -0
  40. package/dist/chunk-UNWKG6EI.cjs +109 -0
  41. package/dist/{chunk-SVXC36MU.cjs → chunk-VACWOIRE.cjs} +2 -0
  42. package/dist/chunk-WLYIIEAF.js +50 -0
  43. package/dist/chunk-XSVNC2UD.cjs +18 -0
  44. package/dist/{chunk-FFALUUZZ.cjs → chunk-ZCIQ3L3R.cjs} +18 -11
  45. package/dist/completion/CompletionService.cjs +26 -19
  46. package/dist/completion/CompletionService.js +25 -18
  47. package/dist/completion.cjs +28 -21
  48. package/dist/completion.js +27 -20
  49. package/dist/index.cjs +35 -25
  50. package/dist/index.d.cts +7 -3
  51. package/dist/index.d.ts +7 -3
  52. package/dist/index.js +44 -34
  53. package/dist/keyPolicy-Cp0FntZl.d.cts +90 -0
  54. package/dist/keyPolicy-Cp0FntZl.d.ts +90 -0
  55. package/dist/outbound-api/auditCapture.cjs +9 -0
  56. package/dist/outbound-api/auditCapture.d.cts +54 -0
  57. package/dist/outbound-api/auditCapture.d.ts +54 -0
  58. package/dist/outbound-api/auditCapture.js +9 -0
  59. package/dist/outbound-api/auditRedact.cjs +8 -0
  60. package/dist/outbound-api/auditRedact.d.cts +30 -0
  61. package/dist/outbound-api/auditRedact.d.ts +30 -0
  62. package/dist/outbound-api/auditRedact.js +8 -0
  63. package/dist/outbound-api/billingCapture.cjs +8 -0
  64. package/dist/outbound-api/billingCapture.d.cts +61 -0
  65. package/dist/outbound-api/billingCapture.d.ts +61 -0
  66. package/dist/outbound-api/billingCapture.js +8 -0
  67. package/dist/outbound-api/quotaWarn.cjs +12 -0
  68. package/dist/outbound-api/quotaWarn.d.cts +43 -0
  69. package/dist/outbound-api/quotaWarn.d.ts +43 -0
  70. package/dist/outbound-api/quotaWarn.js +12 -0
  71. package/dist/outbound-api/routeResolver.cjs +2 -2
  72. package/dist/outbound-api/routeResolver.d.cts +3 -2
  73. package/dist/outbound-api/routeResolver.d.ts +3 -2
  74. package/dist/outbound-api/routeResolver.js +1 -1
  75. package/dist/outbound-api/types.d.cts +2 -1
  76. package/dist/outbound-api/types.d.ts +2 -1
  77. package/dist/outbound-api.cjs +33 -23
  78. package/dist/outbound-api.d.cts +9 -140
  79. package/dist/outbound-api.d.ts +9 -140
  80. package/dist/outbound-api.js +32 -22
  81. package/dist/pipeline/AuthSource.d.cts +6 -0
  82. package/dist/pipeline/AuthSource.d.ts +6 -0
  83. package/dist/pipeline/SubscriptionAuthSource.cjs +2 -2
  84. package/dist/pipeline/SubscriptionAuthSource.js +1 -1
  85. package/dist/pipeline/SubscriptionAuthStrategy.d.cts +6 -0
  86. package/dist/pipeline/SubscriptionAuthStrategy.d.ts +6 -0
  87. package/dist/pipeline/auditUsageStash.cjs +10 -0
  88. package/dist/pipeline/auditUsageStash.d.cts +37 -0
  89. package/dist/pipeline/auditUsageStash.d.ts +37 -0
  90. package/dist/pipeline/auditUsageStash.js +10 -0
  91. package/dist/pipeline/executeProviderCall.cjs +2 -2
  92. package/dist/pipeline/executeProviderCall.js +1 -1
  93. package/dist/pipeline/upstreamFetch.cjs +15 -0
  94. package/dist/pipeline/upstreamFetch.d.cts +89 -0
  95. package/dist/pipeline/upstreamFetch.d.ts +89 -0
  96. package/dist/pipeline/upstreamFetch.js +15 -0
  97. package/dist/pipeline/upstreamTrace.cjs +14 -0
  98. package/dist/pipeline/upstreamTrace.d.cts +85 -0
  99. package/dist/pipeline/upstreamTrace.d.ts +85 -0
  100. package/dist/pipeline/upstreamTrace.js +14 -0
  101. package/dist/pipeline/webhookEmit.cjs +10 -0
  102. package/dist/pipeline/webhookEmit.d.cts +36 -0
  103. package/dist/pipeline/webhookEmit.d.ts +36 -0
  104. package/dist/pipeline/webhookEmit.js +10 -0
  105. package/dist/ports.d.cts +2 -1
  106. package/dist/ports.d.ts +2 -1
  107. package/dist/provider-proxy/ProviderProxy.cjs +26 -19
  108. package/dist/provider-proxy/ProviderProxy.js +25 -18
  109. package/dist/provider-proxy/ingress/providerProxyShared.cjs +28 -19
  110. package/dist/provider-proxy/ingress/providerProxyShared.d.cts +17 -1
  111. package/dist/provider-proxy/ingress/providerProxyShared.d.ts +17 -1
  112. package/dist/provider-proxy/ingress/providerProxyShared.js +27 -18
  113. package/dist/provider-proxy/types.d.cts +7 -0
  114. package/dist/provider-proxy/types.d.ts +7 -0
  115. package/dist/provider-proxy.cjs +26 -19
  116. package/dist/provider-proxy.js +25 -18
  117. package/dist/{routeResolver-B1NglTfe.d.ts → routeResolver-C4T7yClx.d.ts} +1 -1
  118. package/dist/{routeResolver-CbG5uBgm.d.cts → routeResolver-CB3tvJKy.d.cts} +1 -1
  119. package/dist/transformer/transformers/AnthropicTransformer.cjs +2 -2
  120. package/dist/transformer/transformers/AnthropicTransformer.js +1 -1
  121. package/dist/transformer/transformers/GeminiCodeAssistTransformer.cjs +3 -3
  122. package/dist/transformer/transformers/GeminiCodeAssistTransformer.js +2 -2
  123. package/dist/transformer/transformers/GeminiTransformer.cjs +3 -3
  124. package/dist/transformer/transformers/GeminiTransformer.js +2 -2
  125. package/dist/transformer/transformers/OpenAIResponseTransformer.cjs +2 -2
  126. package/dist/transformer/transformers/OpenAIResponseTransformer.js +1 -1
  127. package/dist/transformer/transformers/OpenCodeGoTransformer.cjs +2 -2
  128. package/dist/transformer/transformers/OpenCodeGoTransformer.js +1 -1
  129. package/dist/transformer/transformers.cjs +8 -8
  130. package/dist/transformer/transformers.js +7 -7
  131. package/dist/transformer.cjs +8 -8
  132. package/dist/transformer.js +7 -7
  133. package/dist/{types-aBFFXoBz.d.cts → types-B8Arpxn0.d.cts} +14 -90
  134. package/dist/{types-6OUY_xfA.d.ts → types-lgPYQuZS.d.ts} +14 -90
  135. package/dist/usage/usage-recorder.cjs +3 -2
  136. package/dist/usage/usage-recorder.js +2 -1
  137. package/dist/usage.cjs +3 -2
  138. package/dist/usage.js +2 -1
  139. package/package.json +64 -64
  140. package/dist/chunk-S6JGLF3G.cjs +0 -89
  141. package/dist/{chunk-FTQ7IQUC.js → chunk-C6OV7GCC.js} +8 -8
@@ -1,12 +1,6 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }// src/pipeline/auditUsageStash.ts
2
- var stash = /* @__PURE__ */ new WeakMap();
3
- function stashAuditUsage(key, detail) {
4
- const existing = stash.get(key);
5
- stash.set(key, existing ? { ...existing, ...detail } : { ...detail });
6
- }
7
- function readAuditUsage(key) {
8
- return stash.get(key);
9
- }
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
2
+
3
+ var _chunkXSVNC2UDcjs = require('./chunk-XSVNC2UD.cjs');
10
4
 
11
5
  // src/usage/usage-recorder.ts
12
6
  var UsageRecorder = class {
@@ -30,7 +24,7 @@ var UsageRecorder = class {
30
24
  */
31
25
  record(input) {
32
26
  if (input.auditResponse) {
33
- stashAuditUsage(input.auditResponse, {
27
+ _chunkXSVNC2UDcjs.stashAuditUsage.call(void 0, input.auditResponse, {
34
28
  inputTokens: input.usage.inputTokens,
35
29
  outputTokens: input.usage.outputTokens,
36
30
  model: input.model,
@@ -57,7 +51,7 @@ var UsageRecorder = class {
57
51
  );
58
52
  if (input.auditResponse) {
59
53
  try {
60
- stashAuditUsage(input.auditResponse, { costUsd });
54
+ _chunkXSVNC2UDcjs.stashAuditUsage.call(void 0, input.auditResponse, { costUsd });
61
55
  } catch (e) {
62
56
  }
63
57
  }
@@ -126,5 +120,4 @@ var safeStringify = (value) => {
126
120
 
127
121
 
128
122
 
129
-
130
- exports.readAuditUsage = readAuditUsage; exports.UsageRecorder = UsageRecorder;
123
+ exports.UsageRecorder = UsageRecorder;
@@ -0,0 +1,52 @@
1
+ // src/pipeline/upstreamTrace.ts
2
+ import { appendFile, mkdir } from "fs/promises";
3
+ import { dirname } from "path";
4
+ var tracePath = null;
5
+ var SECRET_HEADER_NAMES = /* @__PURE__ */ new Set([
6
+ "authorization",
7
+ "api-key",
8
+ "x-api-key",
9
+ "x-goog-api-key"
10
+ ]);
11
+ function setUpstreamTracePath(path) {
12
+ tracePath = typeof path === "string" && path.trim() ? path.trim() : null;
13
+ }
14
+ function getUpstreamTracePath() {
15
+ return tracePath;
16
+ }
17
+ function redactHeaders(headers) {
18
+ const out = {};
19
+ if (!headers) return out;
20
+ let entries;
21
+ if (Array.isArray(headers)) {
22
+ entries = headers;
23
+ } else if (typeof headers.entries === "function") {
24
+ entries = Array.from(headers.entries());
25
+ } else {
26
+ entries = Object.entries(headers);
27
+ }
28
+ for (const [key, value] of entries) {
29
+ out[key] = SECRET_HEADER_NAMES.has(key.toLowerCase()) ? "***REDACTED***" : String(value);
30
+ }
31
+ return out;
32
+ }
33
+ async function writeUpstreamTrace(record) {
34
+ const path = tracePath;
35
+ if (!path) return;
36
+ try {
37
+ await mkdir(dirname(path), { recursive: true });
38
+ await appendFile(path, JSON.stringify(record) + "\n", "utf8");
39
+ } catch {
40
+ }
41
+ }
42
+ function __resetUpstreamTraceForTests() {
43
+ tracePath = null;
44
+ }
45
+
46
+ export {
47
+ setUpstreamTracePath,
48
+ getUpstreamTracePath,
49
+ redactHeaders,
50
+ writeUpstreamTrace,
51
+ __resetUpstreamTraceForTests
52
+ };
@@ -351,6 +351,8 @@ async function resolveSubscriptionRoute(args) {
351
351
  // the built-in `/v1/messages` plan builder; INERT for the factory-present
352
352
  // delegation path + non-opencodego.
353
353
  subscriptionConfig,
354
+ // Per-request preferred account (provider/subscription duality); undefined ⇒ pool.
355
+ preferredAccountId: config.boundAccountId,
354
356
  anthropicSdkHints: hints
355
357
  };
356
358
  return { ok: true, route, usedRole: effectiveRole };
@@ -0,0 +1,22 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/pipeline/webhookEmit.ts
2
+ var sink = null;
3
+ function setWebhookSink(fn) {
4
+ sink = fn;
5
+ }
6
+ function emitWebhookEvent(event) {
7
+ const active = sink;
8
+ if (!active) return;
9
+ try {
10
+ active(event);
11
+ } catch (e) {
12
+ }
13
+ }
14
+ function __resetWebhookSinkForTests() {
15
+ sink = null;
16
+ }
17
+
18
+
19
+
20
+
21
+
22
+ exports.setWebhookSink = setWebhookSink; exports.emitWebhookEvent = emitWebhookEvent; exports.__resetWebhookSinkForTests = __resetWebhookSinkForTests;
@@ -0,0 +1,109 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
+
3
+ var _chunkFCR77GYMcjs = require('./chunk-FCR77GYM.cjs');
4
+
5
+
6
+
7
+ var _chunkAEOZIDEBcjs = require('./chunk-AEOZIDEB.cjs');
8
+
9
+
10
+ var _chunkXSVNC2UDcjs = require('./chunk-XSVNC2UD.cjs');
11
+
12
+ // src/outbound-api/auditCapture.ts
13
+ var _crypto = require('crypto');
14
+ function resolveClientIp(req, trustForwardedFor) {
15
+ if (trustForwardedFor) {
16
+ const xff = req.headers["x-forwarded-for"];
17
+ const raw = Array.isArray(xff) ? xff[0] : xff;
18
+ if (typeof raw === "string" && raw.trim()) {
19
+ const first = _optionalChain([raw, 'access', _ => _.split, 'call', _2 => _2(","), 'access', _3 => _3[0], 'optionalAccess', _4 => _4.trim, 'call', _5 => _5()]);
20
+ if (first) return first;
21
+ }
22
+ }
23
+ return _nullishCoalesce(_optionalChain([req, 'access', _6 => _6.socket, 'optionalAccess', _7 => _7.remoteAddress]), () => ( void 0));
24
+ }
25
+ function beginAuditCapture(req, res, now) {
26
+ const config = _chunkAEOZIDEBcjs.getAuditCaptureConfig.call(void 0, );
27
+ if (!config) return null;
28
+ let rawRequestBody;
29
+ const responseChunks = [];
30
+ let finished = false;
31
+ const ctx = {
32
+ setRequestBody(raw) {
33
+ if (config.captureBodies) rawRequestBody = raw;
34
+ }
35
+ };
36
+ if (config.captureBodies) {
37
+ installResponseCapture(res, {
38
+ push(chunk) {
39
+ responseChunks.push(chunk);
40
+ }
41
+ });
42
+ }
43
+ const finalize = () => {
44
+ if (finished) return;
45
+ finished = true;
46
+ try {
47
+ const record = {
48
+ id: _crypto.randomUUID.call(void 0, ),
49
+ ts: now,
50
+ method: _nullishCoalesce(req.method, () => ( "")),
51
+ path: _nullishCoalesce((_nullishCoalesce(req.url, () => ( ""))).split("?")[0], () => ( "")),
52
+ status: res.statusCode,
53
+ latencyMs: Math.max(0, Date.now() - now)
54
+ };
55
+ if (ctx.keyId != null) record.keyId = ctx.keyId;
56
+ const ip = resolveClientIp(req, config.trustForwardedFor);
57
+ if (ip) record.ip = ip;
58
+ const ua = req.headers["user-agent"];
59
+ if (typeof ua === "string" && ua) record.ua = ua;
60
+ if (ctx.model) record.model = ctx.model;
61
+ if (ctx.provider) record.provider = ctx.provider;
62
+ const usage = _chunkXSVNC2UDcjs.readAuditUsage.call(void 0, res);
63
+ if (usage) {
64
+ if (typeof usage.inputTokens === "number") record.inputTokens = usage.inputTokens;
65
+ if (typeof usage.outputTokens === "number") record.outputTokens = usage.outputTokens;
66
+ if (typeof usage.costUsd === "number") record.costUsd = usage.costUsd;
67
+ if (!record.model && usage.model) record.model = usage.model;
68
+ if (!record.provider && usage.provider) record.provider = usage.provider;
69
+ }
70
+ if (ctx.error) record.error = _chunkFCR77GYMcjs.redactAuditText.call(void 0, ctx.error);
71
+ if (config.captureBodies) {
72
+ if (rawRequestBody != null && rawRequestBody.length > 0) {
73
+ record.requestBody = _chunkFCR77GYMcjs.redactAuditText.call(void 0, rawRequestBody);
74
+ }
75
+ if (responseChunks.length > 0) {
76
+ const body = Buffer.concat(responseChunks).toString("utf8");
77
+ record.responseBody = _chunkFCR77GYMcjs.redactAuditText.call(void 0, body);
78
+ }
79
+ }
80
+ _chunkAEOZIDEBcjs.recordAudit.call(void 0, record);
81
+ } catch (e) {
82
+ }
83
+ };
84
+ res.once("close", finalize);
85
+ return ctx;
86
+ }
87
+ function installResponseCapture(res, sink) {
88
+ const capture = (chunk) => {
89
+ let buf = null;
90
+ if (Buffer.isBuffer(chunk)) buf = chunk;
91
+ else if (typeof chunk === "string") buf = Buffer.from(chunk, "utf8");
92
+ if (!buf || buf.length === 0) return;
93
+ sink.push(buf);
94
+ };
95
+ const originalWrite = res.write.bind(res);
96
+ const originalEnd = res.end.bind(res);
97
+ res.write = ((chunk, ...args) => {
98
+ if (chunk != null) capture(chunk);
99
+ return originalWrite(chunk, ...args);
100
+ });
101
+ res.end = ((chunk, ...args) => {
102
+ if (chunk != null && typeof chunk !== "function") capture(chunk);
103
+ return originalEnd(chunk, ...args);
104
+ });
105
+ }
106
+
107
+
108
+
109
+ exports.beginAuditCapture = beginAuditCapture;
@@ -351,6 +351,8 @@ async function resolveSubscriptionRoute(args) {
351
351
  // the built-in `/v1/messages` plan builder; INERT for the factory-present
352
352
  // delegation path + non-opencodego.
353
353
  subscriptionConfig,
354
+ // Per-request preferred account (provider/subscription duality); undefined ⇒ pool.
355
+ preferredAccountId: config.boundAccountId,
354
356
  anthropicSdkHints: hints
355
357
  };
356
358
  return { ok: true, route, usedRole: effectiveRole };
@@ -0,0 +1,50 @@
1
+ import {
2
+ getBillingCaptureConfig,
3
+ publishBillingEvent
4
+ } from "./chunk-TKJMZBAH.js";
5
+ import {
6
+ readAuditUsage
7
+ } from "./chunk-OZFM4X3S.js";
8
+
9
+ // src/outbound-api/billingCapture.ts
10
+ import { randomUUID } from "crypto";
11
+ var defaultDefer = (fn) => {
12
+ setTimeout(fn, 0);
13
+ };
14
+ function beginBillingCapture(_req, res, now, defer = defaultDefer) {
15
+ if (!getBillingCaptureConfig()) return null;
16
+ const ctx = {};
17
+ let finished = false;
18
+ const finalize = () => {
19
+ if (finished) return;
20
+ finished = true;
21
+ const status = res.statusCode;
22
+ defer(() => {
23
+ try {
24
+ const usage = readAuditUsage(res);
25
+ if (!usage) return;
26
+ const event = {
27
+ id: randomUUID(),
28
+ ts: now,
29
+ model: ctx.model ?? usage.model ?? "",
30
+ authMode: ctx.authMode ?? "byo",
31
+ inputTokens: usage.inputTokens ?? 0,
32
+ outputTokens: usage.outputTokens ?? 0,
33
+ costUsd: usage.costUsd ?? 0,
34
+ status
35
+ };
36
+ if (ctx.keyId != null) event.keyId = ctx.keyId;
37
+ const provider = ctx.provider ?? usage.provider;
38
+ if (provider) event.provider = provider;
39
+ publishBillingEvent(event);
40
+ } catch {
41
+ }
42
+ });
43
+ };
44
+ res.once("close", finalize);
45
+ return ctx;
46
+ }
47
+
48
+ export {
49
+ beginBillingCapture
50
+ };
@@ -0,0 +1,18 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/pipeline/auditUsageStash.ts
2
+ var stash = /* @__PURE__ */ new WeakMap();
3
+ function stashAuditUsage(key, detail) {
4
+ const existing = stash.get(key);
5
+ stash.set(key, existing ? { ...existing, ...detail } : { ...detail });
6
+ }
7
+ function readAuditUsage(key) {
8
+ return stash.get(key);
9
+ }
10
+ function __clearAuditUsageForTests(key) {
11
+ stash.delete(key);
12
+ }
13
+
14
+
15
+
16
+
17
+
18
+ exports.stashAuditUsage = stashAuditUsage; exports.readAuditUsage = readAuditUsage; exports.__clearAuditUsageForTests = __clearAuditUsageForTests;
@@ -1,21 +1,21 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class;
2
2
 
3
- var _chunkC72S6TTVcjs = require('./chunk-C72S6TTV.cjs');
3
+ var _chunk7FEBOPJOcjs = require('./chunk-7FEBOPJO.cjs');
4
4
 
5
5
 
6
6
  var _chunkDWKQZ2SKcjs = require('./chunk-DWKQZ2SK.cjs');
7
7
 
8
8
 
9
- var _chunk4VAVYUZScjs = require('./chunk-4VAVYUZS.cjs');
9
+ var _chunk4XMYPW46cjs = require('./chunk-4XMYPW46.cjs');
10
10
 
11
11
 
12
- var _chunk7YN22L2Hcjs = require('./chunk-7YN22L2H.cjs');
12
+ var _chunkK52THW2Ccjs = require('./chunk-K52THW2C.cjs');
13
13
 
14
14
 
15
- var _chunk2DCNB7DFcjs = require('./chunk-2DCNB7DF.cjs');
15
+ var _chunk3Q6Z6JTOcjs = require('./chunk-3Q6Z6JTO.cjs');
16
16
 
17
17
 
18
- var _chunkRSJ3TWJQcjs = require('./chunk-RSJ3TWJQ.cjs');
18
+ var _chunkDDMRUL76cjs = require('./chunk-DDMRUL76.cjs');
19
19
 
20
20
  // src/transformer/transformers/DeepseekTransformer.ts
21
21
  var DeepseekTransformer = (_class = class {constructor() { _class.prototype.__init.call(this); }
@@ -32,7 +32,14 @@ var DeepseekTransformer = (_class = class {constructor() { _class.prototype.__in
32
32
  _optionalChain([this, 'access', _4 => _4.logger, 'optionalAccess', _5 => _5.debug, 'call', _6 => _6("DeepSeek: Limiting max_tokens from %d to 8192", request.max_tokens)]);
33
33
  request.max_tokens = 8192;
34
34
  }
35
- return request;
35
+ const sanitizedMessages = (_nullishCoalesce(request.messages, () => ( []))).map((m) => {
36
+ const out = { role: m.role };
37
+ if (m.content !== void 0) out.content = m.content;
38
+ if (m.tool_calls) out.tool_calls = m.tool_calls;
39
+ if (m.tool_call_id) out.tool_call_id = m.tool_call_id;
40
+ return out;
41
+ });
42
+ return { ...request, messages: sanitizedMessages };
36
43
  }
37
44
  /**
38
45
  * Transform response: convert reasoning_content to thinking blocks
@@ -204,11 +211,11 @@ var DeepseekTransformer = (_class = class {constructor() { _class.prototype.__in
204
211
  var BuiltinTransformers = {
205
212
  DeepseekTransformer,
206
213
  ReasoningTransformer: _chunkDWKQZ2SKcjs.ReasoningTransformer,
207
- GeminiTransformer: _chunk7YN22L2Hcjs.GeminiTransformer,
208
- GeminiCodeAssistTransformer: _chunkRSJ3TWJQcjs.GeminiCodeAssistTransformer,
209
- AnthropicTransformer: _chunk4VAVYUZScjs.AnthropicTransformer,
210
- OpenAIResponseTransformer: _chunk2DCNB7DFcjs.OpenAIResponseTransformer,
211
- OpenCodeGoTransformer: _chunkC72S6TTVcjs.OpenCodeGoTransformer
214
+ GeminiTransformer: _chunkK52THW2Ccjs.GeminiTransformer,
215
+ GeminiCodeAssistTransformer: _chunkDDMRUL76cjs.GeminiCodeAssistTransformer,
216
+ AnthropicTransformer: _chunk4XMYPW46cjs.AnthropicTransformer,
217
+ OpenAIResponseTransformer: _chunk3Q6Z6JTOcjs.OpenAIResponseTransformer,
218
+ OpenCodeGoTransformer: _chunk7FEBOPJOcjs.OpenCodeGoTransformer
212
219
  };
213
220
  function getBuiltinTransformers() {
214
221
  return BuiltinTransformers;
@@ -1,45 +1,52 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunk2FMI2B6Vcjs = require('../chunk-2FMI2B6V.cjs');
3
+ var _chunkCGKLE6IWcjs = require('../chunk-CGKLE6IW.cjs');
4
4
  require('../chunk-HQP3K7PU.cjs');
5
5
  require('../chunk-FZ46M34D.cjs');
6
6
  require('../chunk-46ZIFWYG.cjs');
7
7
  require('../chunk-3OPYJG76.cjs');
8
- require('../chunk-FFALUUZZ.cjs');
9
- require('../chunk-C72S6TTV.cjs');
8
+ require('../chunk-ZCIQ3L3R.cjs');
9
+ require('../chunk-7FEBOPJO.cjs');
10
10
  require('../chunk-DWKQZ2SK.cjs');
11
- require('../chunk-4VAVYUZS.cjs');
12
- require('../chunk-7YN22L2H.cjs');
13
- require('../chunk-2DCNB7DF.cjs');
11
+ require('../chunk-4XMYPW46.cjs');
12
+ require('../chunk-K52THW2C.cjs');
13
+ require('../chunk-3Q6Z6JTO.cjs');
14
14
  require('../chunk-EYZYXJTJ.cjs');
15
15
  require('../chunk-YMFAJFQT.cjs');
16
- require('../chunk-3QOSDDNI.cjs');
16
+ require('../chunk-SNYBEXLB.cjs');
17
17
  require('../chunk-GBHYAGX3.cjs');
18
18
  require('../chunk-RPII3E6Z.cjs');
19
19
  require('../chunk-6RPZADX3.cjs');
20
20
  require('../chunk-QWBWGODS.cjs');
21
+ require('../chunk-UIBD2YY5.cjs');
22
+ require('../chunk-R3HK6R4B.cjs');
23
+ require('../chunk-HYN75H6G.cjs');
24
+ require('../chunk-Q27JY5RG.cjs');
25
+ require('../chunk-QXD4MV2X.cjs');
21
26
  require('../chunk-NYUNU75A.cjs');
22
27
  require('../chunk-VQY5W4YW.cjs');
23
- require('../chunk-Y6OM7EV7.cjs');
28
+ require('../chunk-KFI44N2R.cjs');
24
29
  require('../chunk-SVNDB62D.cjs');
25
- require('../chunk-R3HK6R4B.cjs');
26
- require('../chunk-AEOZIDEB.cjs');
30
+ require('../chunk-APYG5QD7.cjs');
27
31
  require('../chunk-L74VDN4A.cjs');
28
- require('../chunk-KUU2RNG6.cjs');
29
- require('../chunk-Q27JY5RG.cjs');
30
- require('../chunk-QXD4MV2X.cjs');
31
- require('../chunk-A2YMUCBT.cjs');
32
- require('../chunk-SVXC36MU.cjs');
32
+ require('../chunk-4YINUUKQ.cjs');
33
+ require('../chunk-VACWOIRE.cjs');
33
34
  require('../chunk-QBZJ7P2T.cjs');
34
35
  require('../chunk-4IH4EL7M.cjs');
36
+ require('../chunk-A2YMUCBT.cjs');
37
+ require('../chunk-UNWKG6EI.cjs');
38
+ require('../chunk-FCR77GYM.cjs');
39
+ require('../chunk-AEOZIDEB.cjs');
40
+ require('../chunk-XSVNC2UD.cjs');
35
41
  require('../chunk-SUEGJ75D.cjs');
36
- require('../chunk-S6JGLF3G.cjs');
37
- require('../chunk-RSJ3TWJQ.cjs');
38
- require('../chunk-YGXJGRFI.cjs');
42
+ require('../chunk-DDMRUL76.cjs');
43
+ require('../chunk-JWVTXXPX.cjs');
44
+ require('../chunk-PG7PS2NN.cjs');
45
+ require('../chunk-3Z5BQZFM.cjs');
39
46
  require('../chunk-NZYN7C3P.cjs');
40
47
  require('../chunk-JMJBSACD.cjs');
41
48
  require('../chunk-GMMT7RVN.cjs');
42
49
  require('../chunk-UNEFIWXI.cjs');
43
50
 
44
51
 
45
- exports.CompletionService = _chunk2FMI2B6Vcjs.CompletionService;
52
+ exports.CompletionService = _chunkCGKLE6IWcjs.CompletionService;
@@ -1,41 +1,48 @@
1
1
  import {
2
2
  CompletionService
3
- } from "../chunk-4DECIFU7.js";
3
+ } from "../chunk-FH2P4OCD.js";
4
4
  import "../chunk-VVEHS2LI.js";
5
5
  import "../chunk-46RLHI7D.js";
6
6
  import "../chunk-G2UTNSGU.js";
7
7
  import "../chunk-DK4A7DLE.js";
8
- import "../chunk-MQNDWYPN.js";
9
- import "../chunk-Z7LUNECE.js";
8
+ import "../chunk-OQWKZCXP.js";
9
+ import "../chunk-IB3FDI4O.js";
10
10
  import "../chunk-ZJZAOKI7.js";
11
- import "../chunk-FTQ7IQUC.js";
12
- import "../chunk-C7PSERMH.js";
13
- import "../chunk-5HTVET6E.js";
11
+ import "../chunk-C6OV7GCC.js";
12
+ import "../chunk-IWQAX3CS.js";
13
+ import "../chunk-BODMAL6G.js";
14
14
  import "../chunk-7VU7V2E4.js";
15
15
  import "../chunk-ZLX3KGXX.js";
16
- import "../chunk-CWM2ZDU5.js";
16
+ import "../chunk-BPKCU575.js";
17
17
  import "../chunk-MZNPGW5Q.js";
18
18
  import "../chunk-XTEI64OU.js";
19
19
  import "../chunk-XX6NQJMA.js";
20
20
  import "../chunk-IAXWICZU.js";
21
+ import "../chunk-OE6TDIWW.js";
22
+ import "../chunk-DRWHTIIZ.js";
23
+ import "../chunk-IK3KE3AU.js";
24
+ import "../chunk-ZY6KU6P3.js";
25
+ import "../chunk-JWC6APFQ.js";
21
26
  import "../chunk-5ERIZW3D.js";
22
27
  import "../chunk-5ENKBSWO.js";
23
- import "../chunk-N5QFKSDO.js";
28
+ import "../chunk-HRRYG2AX.js";
24
29
  import "../chunk-AVYJ4YBN.js";
25
- import "../chunk-DRWHTIIZ.js";
26
- import "../chunk-WNY4WMRF.js";
30
+ import "../chunk-WLYIIEAF.js";
27
31
  import "../chunk-TKJMZBAH.js";
28
- import "../chunk-JO5NLTLY.js";
29
- import "../chunk-ZY6KU6P3.js";
30
- import "../chunk-JWC6APFQ.js";
31
- import "../chunk-H5JUT3KV.js";
32
- import "../chunk-CZHZGRU7.js";
32
+ import "../chunk-3QFXFCHG.js";
33
+ import "../chunk-UHGVBFU3.js";
33
34
  import "../chunk-AQ5TNQB7.js";
34
35
  import "../chunk-XEKD23J5.js";
36
+ import "../chunk-H5JUT3KV.js";
37
+ import "../chunk-IFXJ2BG7.js";
38
+ import "../chunk-K5NM7VAH.js";
39
+ import "../chunk-WNY4WMRF.js";
40
+ import "../chunk-OZFM4X3S.js";
35
41
  import "../chunk-5ZQBEOMD.js";
36
- import "../chunk-BO4RFWBR.js";
37
- import "../chunk-Z7Y2NPHY.js";
38
- import "../chunk-S4WBV25P.js";
42
+ import "../chunk-MFZ5437A.js";
43
+ import "../chunk-6QZGDLL4.js";
44
+ import "../chunk-D3TDKWRP.js";
45
+ import "../chunk-SYQF7OIR.js";
39
46
  import "../chunk-CDHS2QDC.js";
40
47
  import "../chunk-Y7FO65VT.js";
41
48
  import "../chunk-FMOBD2OQ.js";
@@ -9,36 +9,41 @@
9
9
 
10
10
 
11
11
 
12
- var _chunk2FMI2B6Vcjs = require('./chunk-2FMI2B6V.cjs');
12
+ var _chunkCGKLE6IWcjs = require('./chunk-CGKLE6IW.cjs');
13
13
  require('./chunk-HQP3K7PU.cjs');
14
14
  require('./chunk-FZ46M34D.cjs');
15
15
  require('./chunk-46ZIFWYG.cjs');
16
16
  require('./chunk-3OPYJG76.cjs');
17
- require('./chunk-FFALUUZZ.cjs');
18
- require('./chunk-C72S6TTV.cjs');
17
+ require('./chunk-ZCIQ3L3R.cjs');
18
+ require('./chunk-7FEBOPJO.cjs');
19
19
  require('./chunk-DWKQZ2SK.cjs');
20
- require('./chunk-4VAVYUZS.cjs');
21
- require('./chunk-7YN22L2H.cjs');
22
- require('./chunk-2DCNB7DF.cjs');
20
+ require('./chunk-4XMYPW46.cjs');
21
+ require('./chunk-K52THW2C.cjs');
22
+ require('./chunk-3Q6Z6JTO.cjs');
23
23
  require('./chunk-EYZYXJTJ.cjs');
24
24
  require('./chunk-YMFAJFQT.cjs');
25
- require('./chunk-3QOSDDNI.cjs');
25
+ require('./chunk-SNYBEXLB.cjs');
26
26
  require('./chunk-GBHYAGX3.cjs');
27
27
  require('./chunk-RPII3E6Z.cjs');
28
28
  require('./chunk-6RPZADX3.cjs');
29
29
  require('./chunk-QWBWGODS.cjs');
30
- require('./chunk-NYUNU75A.cjs');
31
- require('./chunk-VQY5W4YW.cjs');
32
- require('./chunk-Y6OM7EV7.cjs');
33
- require('./chunk-SVNDB62D.cjs');
30
+ require('./chunk-UIBD2YY5.cjs');
34
31
  require('./chunk-R3HK6R4B.cjs');
35
- require('./chunk-AEOZIDEB.cjs');
36
- require('./chunk-L74VDN4A.cjs');
37
- require('./chunk-KUU2RNG6.cjs');
32
+ require('./chunk-HYN75H6G.cjs');
38
33
 
39
34
 
40
35
  var _chunkQ27JY5RGcjs = require('./chunk-Q27JY5RG.cjs');
41
36
  require('./chunk-QXD4MV2X.cjs');
37
+ require('./chunk-NYUNU75A.cjs');
38
+ require('./chunk-VQY5W4YW.cjs');
39
+ require('./chunk-KFI44N2R.cjs');
40
+ require('./chunk-SVNDB62D.cjs');
41
+ require('./chunk-APYG5QD7.cjs');
42
+ require('./chunk-L74VDN4A.cjs');
43
+ require('./chunk-4YINUUKQ.cjs');
44
+ require('./chunk-VACWOIRE.cjs');
45
+ require('./chunk-QBZJ7P2T.cjs');
46
+ require('./chunk-4IH4EL7M.cjs');
42
47
 
43
48
 
44
49
 
@@ -50,13 +55,15 @@ require('./chunk-QXD4MV2X.cjs');
50
55
 
51
56
 
52
57
  var _chunkA2YMUCBTcjs = require('./chunk-A2YMUCBT.cjs');
53
- require('./chunk-SVXC36MU.cjs');
54
- require('./chunk-QBZJ7P2T.cjs');
55
- require('./chunk-4IH4EL7M.cjs');
58
+ require('./chunk-UNWKG6EI.cjs');
59
+ require('./chunk-FCR77GYM.cjs');
60
+ require('./chunk-AEOZIDEB.cjs');
61
+ require('./chunk-XSVNC2UD.cjs');
56
62
  require('./chunk-SUEGJ75D.cjs');
57
- require('./chunk-S6JGLF3G.cjs');
58
- require('./chunk-RSJ3TWJQ.cjs');
59
- require('./chunk-YGXJGRFI.cjs');
63
+ require('./chunk-DDMRUL76.cjs');
64
+ require('./chunk-JWVTXXPX.cjs');
65
+ require('./chunk-PG7PS2NN.cjs');
66
+ require('./chunk-3Z5BQZFM.cjs');
60
67
 
61
68
 
62
69
 
@@ -97,4 +104,4 @@ require('./chunk-UNEFIWXI.cjs');
97
104
 
98
105
 
99
106
 
100
- exports.BuiltinToolExecutor = _chunkNZYN7C3Pcjs.BuiltinToolExecutor; exports.CompletionService = _chunk2FMI2B6Vcjs.CompletionService; exports.NATIVE_SEARCH_TOOL_NAMES = _chunkGMMT7RVNcjs.NATIVE_SEARCH_TOOL_NAMES; exports.addOpenRouterProviderToRequest = _chunk2FMI2B6Vcjs.addOpenRouterProviderToRequest; exports.applyAugmentation = _chunkJMJBSACDcjs.applyAugmentation; exports.attachStreamEventBuffer = _chunk2FMI2B6Vcjs.attach; exports.buildAnthropicApiUrl = _chunkA2YMUCBTcjs.buildAnthropicApiUrl; exports.buildAzureOpenAIApiUrl = _chunkA2YMUCBTcjs.buildAzureOpenAIApiUrl; exports.buildGeminiApiUrl = _chunkA2YMUCBTcjs.buildGeminiApiUrl; exports.buildNativeSearchAugmentation = _chunkJMJBSACDcjs.buildNativeSearchAugmentation; exports.buildOpenAIApiUrl = _chunkA2YMUCBTcjs.buildOpenAIApiUrl; exports.buildOpenAIResponseApiUrl = _chunkA2YMUCBTcjs.buildOpenAIResponseApiUrl; exports.buildProviderApiUrl = _chunkA2YMUCBTcjs.buildProviderApiUrl; exports.convertMessageToAnthropic = _chunk2FMI2B6Vcjs.convertMessageToAnthropic; exports.convertMessageToGemini = _chunk2FMI2B6Vcjs.convertMessageToGemini; exports.convertMessageToOpenAI = _chunk2FMI2B6Vcjs.convertMessageToOpenAI; exports.detectNativeSearch = _chunkJMJBSACDcjs.detectNativeSearch; exports.emitStreamEvent = _chunk2FMI2B6Vcjs.emit; exports.getBuiltinSearchTools = _chunkNZYN7C3Pcjs.getBuiltinSearchTools; exports.getOpenRouterProviderConfig = _chunk2FMI2B6Vcjs.getOpenRouterProviderConfig; exports.getProviderHeaders = _chunkQ27JY5RGcjs.getProviderHeaders; exports.normalizeAzureEndpoint = _chunkA2YMUCBTcjs.normalizeAzureEndpoint; exports.registerStreamEventBuffer = _chunk2FMI2B6Vcjs.register; exports.releaseStreamEventBuffer = _chunk2FMI2B6Vcjs.release; exports.resolveApiFormat = _chunkA2YMUCBTcjs.resolveApiFormat; exports.resolveProviderEndpoint = _chunkA2YMUCBTcjs.resolveProviderEndpoint;
107
+ exports.BuiltinToolExecutor = _chunkNZYN7C3Pcjs.BuiltinToolExecutor; exports.CompletionService = _chunkCGKLE6IWcjs.CompletionService; exports.NATIVE_SEARCH_TOOL_NAMES = _chunkGMMT7RVNcjs.NATIVE_SEARCH_TOOL_NAMES; exports.addOpenRouterProviderToRequest = _chunkCGKLE6IWcjs.addOpenRouterProviderToRequest; exports.applyAugmentation = _chunkJMJBSACDcjs.applyAugmentation; exports.attachStreamEventBuffer = _chunkCGKLE6IWcjs.attach; exports.buildAnthropicApiUrl = _chunkA2YMUCBTcjs.buildAnthropicApiUrl; exports.buildAzureOpenAIApiUrl = _chunkA2YMUCBTcjs.buildAzureOpenAIApiUrl; exports.buildGeminiApiUrl = _chunkA2YMUCBTcjs.buildGeminiApiUrl; exports.buildNativeSearchAugmentation = _chunkJMJBSACDcjs.buildNativeSearchAugmentation; exports.buildOpenAIApiUrl = _chunkA2YMUCBTcjs.buildOpenAIApiUrl; exports.buildOpenAIResponseApiUrl = _chunkA2YMUCBTcjs.buildOpenAIResponseApiUrl; exports.buildProviderApiUrl = _chunkA2YMUCBTcjs.buildProviderApiUrl; exports.convertMessageToAnthropic = _chunkCGKLE6IWcjs.convertMessageToAnthropic; exports.convertMessageToGemini = _chunkCGKLE6IWcjs.convertMessageToGemini; exports.convertMessageToOpenAI = _chunkCGKLE6IWcjs.convertMessageToOpenAI; exports.detectNativeSearch = _chunkJMJBSACDcjs.detectNativeSearch; exports.emitStreamEvent = _chunkCGKLE6IWcjs.emit; exports.getBuiltinSearchTools = _chunkNZYN7C3Pcjs.getBuiltinSearchTools; exports.getOpenRouterProviderConfig = _chunkCGKLE6IWcjs.getOpenRouterProviderConfig; exports.getProviderHeaders = _chunkQ27JY5RGcjs.getProviderHeaders; exports.normalizeAzureEndpoint = _chunkA2YMUCBTcjs.normalizeAzureEndpoint; exports.registerStreamEventBuffer = _chunkCGKLE6IWcjs.register; exports.releaseStreamEventBuffer = _chunkCGKLE6IWcjs.release; exports.resolveApiFormat = _chunkA2YMUCBTcjs.resolveApiFormat; exports.resolveProviderEndpoint = _chunkA2YMUCBTcjs.resolveProviderEndpoint;