@tyvm/knowhow 0.0.105 → 0.0.107

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 (219) hide show
  1. package/CONFIG.md +8 -5
  2. package/package.json +3 -2
  3. package/scripts/check-model-pricing.ts +509 -0
  4. package/scripts/compare-openrouter-coverage.ts +576 -0
  5. package/src/agents/base/base.ts +169 -5
  6. package/src/agents/tools/execCommand.ts +4 -0
  7. package/src/agents/tools/executeScript/definition.ts +1 -1
  8. package/src/agents/tools/index.ts +0 -1
  9. package/src/agents/tools/list.ts +3 -43
  10. package/src/agents/tools/writeFile.ts +1 -1
  11. package/src/auth/browserLogin.ts +9 -4
  12. package/src/chat/modules/RemoteSyncModule.ts +3 -0
  13. package/src/cli.ts +31 -1
  14. package/src/clients/anthropic.ts +8 -2
  15. package/src/clients/cerebras.ts +10 -0
  16. package/src/clients/contextLimits.ts +7 -2
  17. package/src/clients/copilot.ts +23 -0
  18. package/src/clients/deepseek.ts +16 -0
  19. package/src/clients/fireworks.ts +15 -0
  20. package/src/clients/gemini.ts +59 -4
  21. package/src/clients/github.ts +16 -0
  22. package/src/clients/groq.ts +15 -0
  23. package/src/clients/http.ts +194 -6
  24. package/src/clients/index.ts +116 -4
  25. package/src/clients/llama.ts +16 -0
  26. package/src/clients/mistral.ts +16 -0
  27. package/src/clients/nvidia.ts +16 -0
  28. package/src/clients/openai.ts +53 -12
  29. package/src/clients/openrouter.ts +17 -0
  30. package/src/clients/pricing/anthropic.ts +105 -78
  31. package/src/clients/pricing/cerebras.ts +11 -0
  32. package/src/clients/pricing/copilot.ts +60 -0
  33. package/src/clients/pricing/deepseek.ts +15 -0
  34. package/src/clients/pricing/fireworks.ts +32 -0
  35. package/src/clients/pricing/github.ts +69 -0
  36. package/src/clients/pricing/google.ts +245 -206
  37. package/src/clients/pricing/groq.ts +56 -0
  38. package/src/clients/pricing/index.ts +42 -5
  39. package/src/clients/pricing/llama.ts +18 -0
  40. package/src/clients/pricing/mistral.ts +34 -0
  41. package/src/clients/pricing/models.ts +7 -236
  42. package/src/clients/pricing/nvidia.ts +102 -0
  43. package/src/clients/pricing/openai.ts +348 -171
  44. package/src/clients/pricing/openrouter.ts +36 -0
  45. package/src/clients/pricing/types.ts +83 -2
  46. package/src/clients/pricing/xai.ts +121 -65
  47. package/src/clients/types.ts +28 -1
  48. package/src/clients/xai.ts +161 -1
  49. package/src/fileSync.ts +8 -2
  50. package/src/login.ts +11 -3
  51. package/src/services/AgentSyncFs.ts +36 -12
  52. package/src/services/KnowhowClient.ts +11 -0
  53. package/src/services/LazyToolsService.ts +6 -0
  54. package/src/services/S3.ts +0 -7
  55. package/src/services/modules/index.ts +11 -2
  56. package/src/types.ts +56 -279
  57. package/src/worker.ts +174 -0
  58. package/tests/clients/AIClient.test.ts +1 -1
  59. package/tests/clients/anthropic.test.ts +202 -0
  60. package/tests/clients/pricing.test.ts +37 -0
  61. package/tests/manual/clients/completions.json +838 -226
  62. package/tests/manual/clients/completions.test.ts +46 -31
  63. package/ts_build/package.json +3 -2
  64. package/ts_build/src/agents/base/base.d.ts +18 -1
  65. package/ts_build/src/agents/base/base.js +111 -4
  66. package/ts_build/src/agents/base/base.js.map +1 -1
  67. package/ts_build/src/agents/tools/execCommand.js +3 -0
  68. package/ts_build/src/agents/tools/execCommand.js.map +1 -1
  69. package/ts_build/src/agents/tools/executeScript/definition.js +1 -1
  70. package/ts_build/src/agents/tools/executeScript/definition.js.map +1 -1
  71. package/ts_build/src/agents/tools/index.d.ts +0 -1
  72. package/ts_build/src/agents/tools/index.js +0 -1
  73. package/ts_build/src/agents/tools/index.js.map +1 -1
  74. package/ts_build/src/agents/tools/list.js +3 -38
  75. package/ts_build/src/agents/tools/list.js.map +1 -1
  76. package/ts_build/src/agents/tools/visionTool.d.ts +1 -1
  77. package/ts_build/src/agents/tools/writeFile.js +1 -1
  78. package/ts_build/src/agents/tools/writeFile.js.map +1 -1
  79. package/ts_build/src/ai.d.ts +1 -1
  80. package/ts_build/src/auth/browserLogin.d.ts +2 -1
  81. package/ts_build/src/auth/browserLogin.js +10 -3
  82. package/ts_build/src/auth/browserLogin.js.map +1 -1
  83. package/ts_build/src/chat/modules/RemoteSyncModule.js +1 -0
  84. package/ts_build/src/chat/modules/RemoteSyncModule.js.map +1 -1
  85. package/ts_build/src/cli.js +19 -0
  86. package/ts_build/src/cli.js.map +1 -1
  87. package/ts_build/src/clients/anthropic.d.ts +1 -82
  88. package/ts_build/src/clients/anthropic.js +8 -2
  89. package/ts_build/src/clients/anthropic.js.map +1 -1
  90. package/ts_build/src/clients/cerebras.d.ts +4 -0
  91. package/ts_build/src/clients/cerebras.js +14 -0
  92. package/ts_build/src/clients/cerebras.js.map +1 -0
  93. package/ts_build/src/clients/contextLimits.js +7 -2
  94. package/ts_build/src/clients/contextLimits.js.map +1 -1
  95. package/ts_build/src/clients/copilot.d.ts +4 -0
  96. package/ts_build/src/clients/copilot.js +15 -0
  97. package/ts_build/src/clients/copilot.js.map +1 -0
  98. package/ts_build/src/clients/deepseek.d.ts +4 -0
  99. package/ts_build/src/clients/deepseek.js +15 -0
  100. package/ts_build/src/clients/deepseek.js.map +1 -0
  101. package/ts_build/src/clients/fireworks.d.ts +4 -0
  102. package/ts_build/src/clients/fireworks.js +15 -0
  103. package/ts_build/src/clients/fireworks.js.map +1 -0
  104. package/ts_build/src/clients/gemini.d.ts +1 -0
  105. package/ts_build/src/clients/gemini.js +38 -2
  106. package/ts_build/src/clients/gemini.js.map +1 -1
  107. package/ts_build/src/clients/github.d.ts +4 -0
  108. package/ts_build/src/clients/github.js +15 -0
  109. package/ts_build/src/clients/github.js.map +1 -0
  110. package/ts_build/src/clients/groq.d.ts +4 -0
  111. package/ts_build/src/clients/groq.js +15 -0
  112. package/ts_build/src/clients/groq.js.map +1 -0
  113. package/ts_build/src/clients/http.d.ts +22 -1
  114. package/ts_build/src/clients/http.js +135 -7
  115. package/ts_build/src/clients/http.js.map +1 -1
  116. package/ts_build/src/clients/index.d.ts +14 -0
  117. package/ts_build/src/clients/index.js +94 -4
  118. package/ts_build/src/clients/index.js.map +1 -1
  119. package/ts_build/src/clients/llama.d.ts +4 -0
  120. package/ts_build/src/clients/llama.js +15 -0
  121. package/ts_build/src/clients/llama.js.map +1 -0
  122. package/ts_build/src/clients/mistral.d.ts +4 -0
  123. package/ts_build/src/clients/mistral.js +15 -0
  124. package/ts_build/src/clients/mistral.js.map +1 -0
  125. package/ts_build/src/clients/nvidia.d.ts +4 -0
  126. package/ts_build/src/clients/nvidia.js +15 -0
  127. package/ts_build/src/clients/nvidia.js.map +1 -0
  128. package/ts_build/src/clients/openai.d.ts +4 -206
  129. package/ts_build/src/clients/openai.js +38 -10
  130. package/ts_build/src/clients/openai.js.map +1 -1
  131. package/ts_build/src/clients/openrouter.d.ts +4 -0
  132. package/ts_build/src/clients/openrouter.js +15 -0
  133. package/ts_build/src/clients/openrouter.js.map +1 -0
  134. package/ts_build/src/clients/pricing/anthropic.d.ts +26 -78
  135. package/ts_build/src/clients/pricing/anthropic.js +75 -78
  136. package/ts_build/src/clients/pricing/anthropic.js.map +1 -1
  137. package/ts_build/src/clients/pricing/cerebras.d.ts +4 -0
  138. package/ts_build/src/clients/pricing/cerebras.js +11 -0
  139. package/ts_build/src/clients/pricing/cerebras.js.map +1 -0
  140. package/ts_build/src/clients/pricing/copilot.d.ts +5 -0
  141. package/ts_build/src/clients/pricing/copilot.js +35 -0
  142. package/ts_build/src/clients/pricing/copilot.js.map +1 -0
  143. package/ts_build/src/clients/pricing/deepseek.d.ts +5 -0
  144. package/ts_build/src/clients/pricing/deepseek.js +10 -0
  145. package/ts_build/src/clients/pricing/deepseek.js.map +1 -0
  146. package/ts_build/src/clients/pricing/fireworks.d.ts +5 -0
  147. package/ts_build/src/clients/pricing/fireworks.js +21 -0
  148. package/ts_build/src/clients/pricing/fireworks.js.map +1 -0
  149. package/ts_build/src/clients/pricing/github.d.ts +4 -0
  150. package/ts_build/src/clients/pricing/github.js +58 -0
  151. package/ts_build/src/clients/pricing/github.js.map +1 -0
  152. package/ts_build/src/clients/pricing/google.d.ts +59 -6
  153. package/ts_build/src/clients/pricing/google.js +214 -167
  154. package/ts_build/src/clients/pricing/google.js.map +1 -1
  155. package/ts_build/src/clients/pricing/groq.d.ts +5 -0
  156. package/ts_build/src/clients/pricing/groq.js +41 -0
  157. package/ts_build/src/clients/pricing/groq.js.map +1 -0
  158. package/ts_build/src/clients/pricing/index.d.ts +16 -5
  159. package/ts_build/src/clients/pricing/index.js +62 -7
  160. package/ts_build/src/clients/pricing/index.js.map +1 -1
  161. package/ts_build/src/clients/pricing/llama.d.ts +4 -0
  162. package/ts_build/src/clients/pricing/llama.js +14 -0
  163. package/ts_build/src/clients/pricing/llama.js.map +1 -0
  164. package/ts_build/src/clients/pricing/mistral.d.ts +5 -0
  165. package/ts_build/src/clients/pricing/mistral.js +23 -0
  166. package/ts_build/src/clients/pricing/mistral.js.map +1 -0
  167. package/ts_build/src/clients/pricing/models.d.ts +5 -4
  168. package/ts_build/src/clients/pricing/models.js +8 -162
  169. package/ts_build/src/clients/pricing/models.js.map +1 -1
  170. package/ts_build/src/clients/pricing/nvidia.d.ts +8 -0
  171. package/ts_build/src/clients/pricing/nvidia.js +96 -0
  172. package/ts_build/src/clients/pricing/nvidia.js.map +1 -0
  173. package/ts_build/src/clients/pricing/openai.d.ts +86 -197
  174. package/ts_build/src/clients/pricing/openai.js +295 -168
  175. package/ts_build/src/clients/pricing/openai.js.map +1 -1
  176. package/ts_build/src/clients/pricing/openrouter.d.ts +4 -0
  177. package/ts_build/src/clients/pricing/openrouter.js +29 -0
  178. package/ts_build/src/clients/pricing/openrouter.js.map +1 -0
  179. package/ts_build/src/clients/pricing/types.d.ts +27 -2
  180. package/ts_build/src/clients/pricing/types.js +46 -0
  181. package/ts_build/src/clients/pricing/types.js.map +1 -1
  182. package/ts_build/src/clients/pricing/xai.d.ts +37 -57
  183. package/ts_build/src/clients/pricing/xai.js +92 -59
  184. package/ts_build/src/clients/pricing/xai.js.map +1 -1
  185. package/ts_build/src/clients/types.d.ts +12 -1
  186. package/ts_build/src/clients/xai.d.ts +2 -62
  187. package/ts_build/src/clients/xai.js +132 -1
  188. package/ts_build/src/clients/xai.js.map +1 -1
  189. package/ts_build/src/fileSync.js +7 -2
  190. package/ts_build/src/fileSync.js.map +1 -1
  191. package/ts_build/src/login.js +8 -2
  192. package/ts_build/src/login.js.map +1 -1
  193. package/ts_build/src/services/AgentSyncFs.js +1 -0
  194. package/ts_build/src/services/AgentSyncFs.js.map +1 -1
  195. package/ts_build/src/services/KnowhowClient.d.ts +1 -0
  196. package/ts_build/src/services/KnowhowClient.js +7 -0
  197. package/ts_build/src/services/KnowhowClient.js.map +1 -1
  198. package/ts_build/src/services/LazyToolsService.d.ts +1 -0
  199. package/ts_build/src/services/LazyToolsService.js +3 -0
  200. package/ts_build/src/services/LazyToolsService.js.map +1 -1
  201. package/ts_build/src/services/S3.js +0 -7
  202. package/ts_build/src/services/S3.js.map +1 -1
  203. package/ts_build/src/services/modules/index.js +41 -1
  204. package/ts_build/src/services/modules/index.js.map +1 -1
  205. package/ts_build/src/types.d.ts +163 -124
  206. package/ts_build/src/types.js +33 -213
  207. package/ts_build/src/types.js.map +1 -1
  208. package/ts_build/src/worker.d.ts +4 -0
  209. package/ts_build/src/worker.js +140 -0
  210. package/ts_build/src/worker.js.map +1 -1
  211. package/ts_build/tests/clients/AIClient.test.js +1 -1
  212. package/ts_build/tests/clients/AIClient.test.js.map +1 -1
  213. package/ts_build/tests/clients/anthropic.test.d.ts +1 -0
  214. package/ts_build/tests/clients/anthropic.test.js +159 -0
  215. package/ts_build/tests/clients/anthropic.test.js.map +1 -0
  216. package/ts_build/tests/clients/pricing.test.js +21 -0
  217. package/ts_build/tests/clients/pricing.test.js.map +1 -1
  218. package/ts_build/tests/manual/clients/completions.test.js +27 -24
  219. package/ts_build/tests/manual/clients/completions.test.js.map +1 -1
@@ -37,6 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.worker = worker;
40
+ exports.tunnel = tunnel;
40
41
  const os_1 = __importDefault(require("os"));
41
42
  const ws_1 = require("ws");
42
43
  const knowhow_tunnel_1 = require("@tyvm/knowhow-tunnel");
@@ -440,4 +441,143 @@ async function worker(options) {
440
441
  await (0, utils_1.wait)(5000);
441
442
  }
442
443
  }
444
+ async function tunnel(options) {
445
+ const config = await (0, config_1.getConfig)();
446
+ const isInsideDocker = process.env.KNOWHOW_DOCKER === "true";
447
+ let tunnelLocalHost = config.worker?.tunnel?.localHost;
448
+ if (!tunnelLocalHost) {
449
+ if (isInsideDocker) {
450
+ tunnelLocalHost = "host.docker.internal";
451
+ console.log("🐳 Docker detected: tunnel will use host.docker.internal to reach host services");
452
+ }
453
+ else {
454
+ tunnelLocalHost = "127.0.0.1";
455
+ }
456
+ }
457
+ const portMapping = config.worker?.tunnel?.portMapping || {};
458
+ if (Object.keys(portMapping).length > 0) {
459
+ console.log("🔀 Port mapping configured:");
460
+ for (const [containerPort, hostPort] of Object.entries(portMapping)) {
461
+ console.log(` Container port ${containerPort} → Host port ${hostPort}`);
462
+ }
463
+ }
464
+ const tunnelPorts = config.worker?.tunnel?.allowedPorts || [];
465
+ if (tunnelPorts.length === 0) {
466
+ console.warn("⚠️ No allowedPorts configured. Add worker.tunnel.allowedPorts to knowhow.json");
467
+ }
468
+ else {
469
+ console.log(`🌐 Tunnel mode for ports: ${tunnelPorts.join(", ")}`);
470
+ }
471
+ function extractTunnelDomain(apiUrl) {
472
+ try {
473
+ const url = new URL(apiUrl);
474
+ const useHttps = url.protocol === "https:";
475
+ if (url.hostname === "localhost" || url.hostname === "127.0.0.1") {
476
+ return {
477
+ domain: `worker.${url.hostname}:${url.port || "80"}`,
478
+ useHttps,
479
+ };
480
+ }
481
+ return { domain: `worker.${url.hostname}`, useHttps };
482
+ }
483
+ catch (err) {
484
+ console.error("Failed to parse API_URL for tunnel domain:", err);
485
+ return { domain: "worker.localhost:4000", useHttps: false };
486
+ }
487
+ }
488
+ let connected = false;
489
+ let tunnelHandler = null;
490
+ let lastJwt = null;
491
+ let unauthorizedJwt = null;
492
+ async function connectTunnel() {
493
+ const jwt = await (0, login_1.loadJwt)();
494
+ lastJwt = jwt;
495
+ console.log(`Connecting tunnel to ${API_URL}`);
496
+ const dir = process.cwd();
497
+ const homedir = os_1.default.homedir();
498
+ const hostname = process.env.WORKER_HOSTNAME || os_1.default.hostname();
499
+ const root = process.env.WORKER_ROOT ||
500
+ (dir === homedir ? "~" : dir.replace(homedir, "~"));
501
+ const headers = {
502
+ Authorization: `Bearer ${jwt}`,
503
+ "User-Agent": `knowhow-tunnel/1.0.0/${hostname}`,
504
+ Root: root,
505
+ };
506
+ if (options?.share) {
507
+ headers.Shared = "true";
508
+ console.log("🔓 Tunnel shared with organization");
509
+ }
510
+ else if (options?.unshare) {
511
+ headers.Shared = "false";
512
+ console.log("🔒 Tunnel is now private (unshared)");
513
+ }
514
+ else {
515
+ console.log("🔒 Tunnel is private (only you can use it)");
516
+ }
517
+ const { domain: tunnelDomain, useHttps: tunnelUseHttps } = extractTunnelDomain(API_URL);
518
+ const tunnelConnection = new ws_1.WebSocket(`${API_URL}/ws/tunnel`, { headers });
519
+ tunnelConnection.on("open", () => {
520
+ console.log("🌐 Tunnel WebSocket connected");
521
+ connected = true;
522
+ const allowedPorts = config.worker?.tunnel?.allowedPorts || [];
523
+ const urlRewriter = (port, metadata) => {
524
+ const workerId = metadata?.workerId;
525
+ const secret = metadata?.secret;
526
+ const subdomain = secret ? `${secret}-p${port}` : `${workerId}-p${port}`;
527
+ return `${subdomain}.${tunnelDomain}`;
528
+ };
529
+ const tunnelConfig = {
530
+ allowedPorts,
531
+ maxConcurrentStreams: config.worker?.tunnel?.maxConcurrentStreams || 50,
532
+ tunnelUseHttps,
533
+ localHost: tunnelLocalHost,
534
+ urlRewriter,
535
+ enableUrlRewriting: config.worker?.tunnel?.enableUrlRewriting !== false,
536
+ portMapping,
537
+ logLevel: "debug",
538
+ };
539
+ tunnelHandler = (0, knowhow_tunnel_1.createTunnelHandler)(tunnelConnection, tunnelConfig);
540
+ console.log("🌐 Tunnel handler initialized");
541
+ console.log(tunnelConfig);
542
+ });
543
+ tunnelConnection.on("close", (code, reason) => {
544
+ console.log(`Tunnel WebSocket closed. Code: ${code}, Reason: ${reason.toString()}`);
545
+ if (code === 1008) {
546
+ unauthorizedJwt = lastJwt;
547
+ console.error("❌ Tunnel received Unauthorized (1008). The JWT may be expired.");
548
+ console.error(" Run 'knowhow login' to refresh your token, then restart.");
549
+ console.error(" Pausing reconnection until JWT changes...");
550
+ }
551
+ else {
552
+ console.log("Tunnel connection will reconnect on next cycle...");
553
+ }
554
+ if (tunnelHandler) {
555
+ tunnelHandler.cleanup();
556
+ tunnelHandler = null;
557
+ }
558
+ connected = false;
559
+ });
560
+ tunnelConnection.on("error", (error) => {
561
+ console.error("Tunnel WebSocket error:", error);
562
+ connected = false;
563
+ });
564
+ return tunnelConnection;
565
+ }
566
+ while (true) {
567
+ if (!connected) {
568
+ if (unauthorizedJwt !== null) {
569
+ const currentJwt = await (0, login_1.loadJwt)().catch(() => null);
570
+ if (currentJwt === unauthorizedJwt) {
571
+ await (0, utils_1.wait)(5000);
572
+ continue;
573
+ }
574
+ console.log("🔄 JWT has changed, attempting to reconnect tunnel...");
575
+ unauthorizedJwt = null;
576
+ }
577
+ console.log("Attempting to connect tunnel...");
578
+ await connectTunnel();
579
+ }
580
+ await (0, utils_1.wait)(5000);
581
+ }
582
+ }
443
583
  //# sourceMappingURL=worker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/worker.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoFA,wBA+eC;AAOD,wBAuKC;AAjvBD,4CAAoB;AACpB,2BAA+B;AAC/B,yDAA0E;AAC1E,8CAAoD;AACpD,mCAAkC;AAClC,yCAAsC;AACtC,8DAAkE;AAClE,wEAA4E;AAC5E,2CAA+D;AAC/D,wCAAkD;AAClD,yDAA2C;AAC3C,4DAA0C;AAC1C,mCAA+B;AAC/B,qCAAmD;AACnD,4DAA2D;AAC3D,qDAAsD;AAEtD,MAAM,OAAO,GAAG,+BAAe,CAAC;AAKhC,KAAK,UAAU,kBAAkB,CAC/B,OAAkE,EAClE,MAAW;IAEX,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,mBAAQ,GAAE,CAAC;IAE9B,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;IAGtE,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,oBAAoB,EAAE,CAAC;IAE5D,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC3D,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC1E,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC9C,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAGrC,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;IACrE,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC1E,OAAO,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAGD,MAAM,GAAG,GAAG,MAAM,IAAA,eAAO,GAAE,CAAC;IAG5B,IAAI,WAAmB,CAAC;IAExB,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAC/C,IAAI,CAAC;QACH,WAAW,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC;YAC5C,YAAY,EAAE,OAAO,CAAC,GAAG,EAAE;YAC3B,GAAG;YACH,MAAM,EAAE,OAAO;YACf,MAAM;YACN,KAAK,EAAE,OAAO,EAAE,KAAK;YACrB,OAAO,EAAE,OAAO,EAAE,OAAO;SAC1B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAGD,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,MAAM,CAAC,OAQ5B;IACC,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;IAGjC,IAAI,OAAO,EAAE,YAAY,EAAE,CAAC;QAC1B,MAAM,YAAY,GAAG,IAAI,kCAAmB,EAAE,CAAC;QAC/C,MAAM,YAAY,CAAC,KAAK,EAAE,CAAC;QAC3B,OAAO;IACT,CAAC;IAGD,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;QACrB,IAAI,GAAW,CAAC;QAChB,IAAI,CAAC;YACH,GAAG,GAAG,MAAM,IAAA,eAAO,GAAE,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAC9D,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,kCAAmB,EAAE,CAAC;QAC/C,MAAM,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,OAAO;IACT,CAAC;IAGD,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,MAAM,CAAC;IAE7D,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CACT,mEAAmE,CACpE,CAAC;QAEF,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;YACxB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;QAC3B,CAAC;IACH,CAAC;IAGD,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,aAAa,GAAG,EAAE,CAAC;IAEvB,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;QACrB,gBAAgB,GAAG,IAAI,CAAC;QACxB,aAAa,GAAG,0BAA0B,CAAC;QAG3C,MAAM,aAAa,GAAG;YACpB,GAAG,MAAM;YACT,MAAM,EAAE;gBACN,GAAG,MAAM,CAAC,MAAM;gBAChB,OAAO,EAAE,IAAI;aACd;SACF,CAAC;QACF,MAAM,IAAA,qBAAY,EAAC,aAAa,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;IAC5D,CAAC;SAAM,IAAI,OAAO,EAAE,SAAS,EAAE,CAAC;QAC9B,gBAAgB,GAAG,KAAK,CAAC;QACzB,aAAa,GAAG,6BAA6B,CAAC;QAG9C,MAAM,aAAa,GAAG;YACpB,GAAG,MAAM;YACT,MAAM,EAAE;gBACN,GAAG,MAAM,CAAC,MAAM;gBAChB,OAAO,EAAE,KAAK;aACf;SACF,CAAC;QACF,MAAM,IAAA,qBAAY,EAAC,aAAa,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;IAC/D,CAAC;SAAM,CAAC;QAEN,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,IAAI,KAAK,CAAC;QACnD,aAAa;YACX,MAAM,CAAC,MAAM,EAAE,OAAO,KAAK,SAAS;gBAClC,CAAC,CAAC,WAAW,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,GAAG;gBAC3D,CAAC,CAAC,sBAAsB,CAAC;IAC/B,CAAC;IAED,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,0BAA0B,aAAa,GAAG,CAAC,CAAC;QACxD,OAAO,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,IAAA,mBAAQ,GAAE,CAAC;IAElC,MAAM,aAAa,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,eAAW,CAAC,KAAK,EAAE,CAAC;IAC5D,KAAK,CAAC,WAAW,CAAC,oBAAa,EAAE,aAAa,CAAC,CAAC;IAChD,KAAK,CAAC,WAAW,CAAC,eAAW,CAAC,WAAW,EAAE,eAAW,CAAC,KAAK,CAAC,CAAC;IAE9D,MAAM,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1B,MAAM,SAAS,GAAG,IAAI,sBAAgB,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,gBAAgB,CAAC;IACpC,MAAM,aAAa,GAAG,OAAO,CAAC;IAK9B,IAAI,WAAW,GAAoC,IAAI,CAAC;IACxD,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC;IAEnD,IAAI,aAAa,EAAE,SAAS,IAAI,aAAa,EAAE,YAAY,EAAE,CAAC;QAC5D,WAAW,GAAG,IAAI,4CAAwB,CACxC;YACE,SAAS,EAAE,aAAa,CAAC,SAAS;YAClC,YAAY,EAAE,aAAa,CAAC,YAAY;YACxC,SAAS,EAAE,CAAC,CAAC;SACd,EACD,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,oBAAoB,IAAI,CAAC,CAC/C,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,yBAAyB,aAAa,GAAG,CAAC,CAAC;IACzD,CAAC;IAID,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QAClD,OAAO,CAAC,GAAG,CACT,+FAA+F,CAChG,CAAC;QACF,MAAM,CAAC,MAAM,GAAG;YACd,GAAG,MAAM,CAAC,MAAM;YAChB,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE;SACnC,CAAC;QACF,MAAM,IAAA,qBAAY,EAAC,MAAM,CAAC,CAAC;QAC3B,OAAO;IACT,CAAC;IAGD,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;QACtB,MAAM,IAAA,mCAAkB,EAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACxC,OAAO;IACT,CAAC;IAED,IAAI,UAAU,GAAG,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAInE,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,YAAY,GAAG,WAAW,CAAC;QAGjC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACpC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC/C,KAAK,CAAC,YAAY,CAAC;gBACjB,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;oBACnC,IAAI,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC;wBAC5B,OAAO;4BACL,KAAK,EAAE,eAAe;4BACtB,OAAO,EACL,0FAA0F;yBAC7F,CAAC;oBACJ,CAAC;oBACD,OAAO,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC7B,CAAC;aACF,CAAC,CAAC;QACL,CAAC;QAGD,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAA,sBAAc,EAAC,YAAY,CAAC,CAAC;QAClE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,IAAA,oBAAY,EAAC,YAAY,CAAC,CAAC;QAE5D,KAAK,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACrC,UAAU,GAAG,CAAC,gBAAgB,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC,CAAC;QAE/D,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACxD,CAAC;IAED,SAAS,CAAC,YAAY,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAExE,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,aAAa,GAAyB,IAAI,CAAC;IAC/C,IAAI,QAAQ,GAAqB,IAAI,CAAC;IACtC,IAAI,OAAO,GAAkB,IAAI,CAAC;IAClC,IAAI,eAAe,GAAkB,IAAI,CAAC;IAG1C,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,IAAI,KAAK,CAAC;IAG9D,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;IACvD,IAAI,CAAC,eAAe,EAAE,CAAC;QAErB,IAAI,cAAc,EAAE,CAAC;YACnB,eAAe,GAAG,sBAAsB,CAAC;YACzC,OAAO,CAAC,GAAG,CACT,iFAAiF,CAClF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,eAAe,GAAG,WAAW,CAAC;QAChC,CAAC;IACH,CAAC;IAGD,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,IAAI,EAAE,CAAC;IAC7D,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,KAAK,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACpE,OAAO,CAAC,GAAG,CAAC,qBAAqB,aAAa,gBAAgB,QAAQ,EAAE,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,IAAI,EAAE,CAAC;QAC9D,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CACV,4FAA4F,CAC7F,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,gCAAgC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CACT,2EAA2E,CAC5E,CAAC;IACJ,CAAC;IAKD,SAAS,mBAAmB,CAAC,MAAc;QAIzC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;YAC5B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;YAG3C,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;gBACjE,OAAO;oBACL,MAAM,EAAE,UAAU,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE;oBACpD,QAAQ;iBACT,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC;QACxD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,GAAG,CAAC,CAAC;YACjE,OAAO,EAAE,MAAM,EAAE,uBAAuB,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,KAAK,UAAU,gBAAgB;QAC7B,MAAM,GAAG,GAAG,MAAM,IAAA,eAAO,GAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,iBAAiB,OAAO,EAAE,CAAC,CAAC;QACxC,OAAO,GAAG,GAAG,CAAC;QAGd,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAExB,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAEhC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,YAAE,CAAC,OAAO,EAAE,CAAC;QAG7B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,YAAE,CAAC,QAAQ,EAAE,CAAC;QAC9D,MAAM,IAAI,GACR,OAAO,CAAC,GAAG,CAAC,WAAW;YACvB,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAEtD,MAAM,OAAO,GAA2B;YACtC,aAAa,EAAE,UAAU,GAAG,EAAE;YAC9B,YAAY,EAAE,GAAG,UAAU,IAAI,aAAa,IAAI,QAAQ,EAAE;YAC1D,IAAI,EAAE,IAAI;SACX,CAAC;QAGF,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QACpD,CAAC;aAAM,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;YAC5B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;QACrD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,GACtD,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAE/B,MAAM,EAAE,GAAG,IAAI,cAAS,CAAC,GAAG,OAAO,YAAY,EAAE;YAC/C,OAAO;SACR,CAAC,CAAC;QAKH,MAAM,uBAAuB,GAAG,KAAK,EAAE,IAAS,EAAE,EAAE;YAClD,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CACvB,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAClD,CAAC;gBACF,IAAI,MAAM,EAAE,IAAI,KAAK,kBAAkB,IAAI,MAAM,EAAE,QAAQ,EAAE,CAAC;oBAC5D,MAAM,aAAa,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;oBACxC,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC;oBACvD,IAAI,eAAe,KAAK,MAAM,CAAC,QAAQ,EAAE,CAAC;wBACxC,MAAM,IAAA,qBAAY,EAAC;4BACjB,GAAG,aAAa;4BAChB,MAAM,EAAE;gCACN,GAAG,aAAa,CAAC,MAAM;gCACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;6BAC1B;yBACF,CAAC,CAAC;wBACH,OAAO,CAAC,GAAG,CAAC,yBAAyB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;oBAC1D,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;YAET,CAAC;QACH,CAAC,CAAC;QACF,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC;QAG1C,IAAI,gBAAgB,GAAqB,IAAI,CAAC;QAC9C,IAAI,aAAa,EAAE,CAAC;YAClB,gBAAgB,GAAG,IAAI,cAAS,CAAC,GAAG,OAAO,YAAY,EAAE;gBACvD,OAAO;aACR,CAAC,CAAC;YAEH,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;gBAC/B,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;gBAG1C,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,IAAI,EAAE,CAAC;gBAK/D,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,QAAc,EAAE,EAAE;oBACnD,MAAM,QAAQ,GAAG,QAAQ,EAAE,QAAQ,CAAC;oBACpC,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC;oBAOhC,MAAM,SAAS,GAAG,MAAM;wBACtB,CAAC,CAAC,GAAG,MAAM,KAAK,IAAI,EAAE;wBACtB,CAAC,CAAC,GAAG,QAAQ,KAAK,IAAI,EAAE,CAAC;oBAI3B,MAAM,cAAc,GAAG,GAAG,SAAS,IAAI,YAAY,EAAE,CAAC;oBACtD,OAAO,cAAc,CAAC;gBACxB,CAAC,CAAC;gBAEF,MAAM,YAAY,GAAG;oBACnB,YAAY;oBACZ,oBAAoB,EAClB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,oBAAoB,IAAI,EAAE;oBACnD,cAAc;oBACd,SAAS,EAAE,eAAe;oBAC1B,WAAW;oBACX,kBAAkB,EAChB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,kBAAkB,KAAK,KAAK;oBACrD,WAAW;oBACX,QAAQ,EAAE,OAAgB;iBAC3B,CAAC;gBAIF,aAAa,GAAG,IAAA,oCAAmB,EAAC,gBAAiB,EAAE,YAAY,CAAC,CAAC;gBACrE,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;gBAC5C,OAAO,CAAC,GAAG,CACT,kCAAkC,IAAI,aAAa,MAAM,CAAC,QAAQ,EAAE,EAAE,CACvE,CAAC;gBACF,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;oBAClB,eAAe,GAAG,OAAO,CAAC;oBAC1B,OAAO,CAAC,KAAK,CACX,gEAAgE,CACjE,CAAC;oBACF,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;gBAChE,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CACT,8DAA8D,CAC/D,CAAC;gBACJ,CAAC;gBAGD,IAAI,aAAa,EAAE,CAAC;oBAClB,aAAa,CAAC,OAAO,EAAE,CAAC;oBACxB,aAAa,GAAG,IAAI,CAAC;gBACvB,CAAC;gBACD,QAAQ,GAAG,IAAI,CAAC;gBAIhB,SAAS,GAAG,KAAK,CAAC;YACpB,CAAC,CAAC,CAAC;YAEH,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACrC,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;gBAEhD,SAAS,GAAG,KAAK,CAAC;YACpB,CAAC,CAAC,CAAC;YAEH,QAAQ,GAAG,gBAAgB,CAAC;QAC9B,CAAC;QAED,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACjB,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;YAC1C,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;YACpC,OAAO,CAAC,GAAG,CACT,2BAA2B,IAAI,aAAa,MAAM,CAAC,QAAQ,EAAE,EAAE,CAChE,CAAC;YAGF,IAAI,aAAa,EAAE,CAAC;gBAClB,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;YAED,SAAS,GAAG,KAAK,CAAC;YAIlB,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,CAAC,KAAK,CACX,gEAAgE,CACjE,CAAC;gBACF,OAAO,CAAC,KAAK,CACX,wEAAwE,CACzE,CAAC;gBACF,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAChE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACvB,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAE1B,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;IACrC,CAAC;IAED,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,UAAU,GAIH,IAAI,CAAC;QAEhB,IAAI,CAAC,SAAS,EAAE,CAAC;YAEf,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;gBAC7B,MAAM,UAAU,GAAG,MAAM,IAAA,eAAO,GAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;gBACrD,IAAI,UAAU,KAAK,eAAe,EAAE,CAAC;oBAEnC,MAAM,IAAA,YAAI,EAAC,IAAI,CAAC,CAAC;oBACjB,SAAS;gBACX,CAAC;gBAED,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;gBAC9D,eAAe,GAAG,IAAI,CAAC;YACzB,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;YACxC,UAAU,GAAG,MAAM,gBAAgB,EAAE,CAAC;QACxC,CAAC;QACD,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YAC7B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;gBAC/C,SAAS,GAAG,KAAK,CAAC;YACpB,CAAC;QACH,CAAC;QACD,MAAM,IAAA,YAAI,EAAC,IAAI,CAAC,CAAC;IACnB,CAAC;AACH,CAAC;AAOM,KAAK,UAAU,MAAM,CAAC,OAG5B;IACC,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;IAEjC,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,MAAM,CAAC;IAG7D,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;IACvD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,IAAI,cAAc,EAAE,CAAC;YACnB,eAAe,GAAG,sBAAsB,CAAC;YACzC,OAAO,CAAC,GAAG,CACT,iFAAiF,CAClF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,eAAe,GAAG,WAAW,CAAC;QAChC,CAAC;IACH,CAAC;IAGD,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,IAAI,EAAE,CAAC;IAC7D,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,KAAK,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACpE,OAAO,CAAC,GAAG,CAAC,qBAAqB,aAAa,gBAAgB,QAAQ,EAAE,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,IAAI,EAAE,CAAC;IAC9D,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,IAAI,CACV,gFAAgF,CACjF,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,6BAA6B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrE,CAAC;IAGD,SAAS,mBAAmB,CAAC,MAAc;QAIzC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;YAC5B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;YAC3C,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;gBACjE,OAAO;oBACL,MAAM,EAAE,UAAU,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE;oBACpD,QAAQ;iBACT,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC;QACxD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,GAAG,CAAC,CAAC;YACjE,OAAO,EAAE,MAAM,EAAE,uBAAuB,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,aAAa,GAAyB,IAAI,CAAC;IAC/C,IAAI,OAAO,GAAkB,IAAI,CAAC;IAClC,IAAI,eAAe,GAAkB,IAAI,CAAC;IAE1C,KAAK,UAAU,aAAa;QAC1B,MAAM,GAAG,GAAG,MAAM,IAAA,eAAO,GAAE,CAAC;QAC5B,OAAO,GAAG,GAAG,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;QAE/C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,YAAE,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,YAAE,CAAC,QAAQ,EAAE,CAAC;QAC9D,MAAM,IAAI,GACR,OAAO,CAAC,GAAG,CAAC,WAAW;YACvB,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAEtD,MAAM,OAAO,GAA2B;YACtC,aAAa,EAAE,UAAU,GAAG,EAAE;YAC9B,YAAY,EAAE,wBAAwB,QAAQ,EAAE;YAChD,IAAI,EAAE,IAAI;SACX,CAAC;QAEF,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QACpD,CAAC;aAAM,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;YAC5B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;QACrD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,GACtD,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAE/B,MAAM,gBAAgB,GAAG,IAAI,cAAS,CAAC,GAAG,OAAO,YAAY,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAE5E,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YAC/B,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;YAC7C,SAAS,GAAG,IAAI,CAAC;YAEjB,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,IAAI,EAAE,CAAC;YAC/D,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,QAAc,EAAE,EAAE;gBACnD,MAAM,QAAQ,GAAG,QAAQ,EAAE,QAAQ,CAAC;gBACpC,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC;gBAChC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACzE,OAAO,GAAG,SAAS,IAAI,YAAY,EAAE,CAAC;YACxC,CAAC,CAAC;YAEF,MAAM,YAAY,GAAG;gBACnB,YAAY;gBACZ,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,oBAAoB,IAAI,EAAE;gBACvE,cAAc;gBACd,SAAS,EAAE,eAAe;gBAC1B,WAAW;gBACX,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,kBAAkB,KAAK,KAAK;gBACvE,WAAW;gBACX,QAAQ,EAAE,OAAgB;aAC3B,CAAC;YAEF,aAAa,GAAG,IAAA,oCAAmB,EAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;YACpE,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;YAC7C,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;YAC5C,OAAO,CAAC,GAAG,CAAC,kCAAkC,IAAI,aAAa,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACpF,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;gBAChF,OAAO,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC;gBAC7E,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAChE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;YACnE,CAAC;YACD,IAAI,aAAa,EAAE,CAAC;gBAClB,aAAa,CAAC,OAAO,EAAE,CAAC;gBACxB,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;YACD,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC,CAAC,CAAC;QAEH,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACrC,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;YAChD,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC,CAAC,CAAC;QAEH,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;gBAC7B,MAAM,UAAU,GAAG,MAAM,IAAA,eAAO,GAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;gBACrD,IAAI,UAAU,KAAK,eAAe,EAAE,CAAC;oBACnC,MAAM,IAAA,YAAI,EAAC,IAAI,CAAC,CAAC;oBACjB,SAAS;gBACX,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;gBACrE,eAAe,GAAG,IAAI,CAAC;YACzB,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;YAC/C,MAAM,aAAa,EAAE,CAAC;QACxB,CAAC;QACD,MAAM,IAAA,YAAI,EAAC,IAAI,CAAC,CAAC;IACnB,CAAC;AACH,CAAC"}
@@ -30,7 +30,7 @@ class FakeClient {
30
30
  },
31
31
  ],
32
32
  model: options.model,
33
- usage: { total_tokens: 100 },
33
+ usage: { prompt_tokens: 50, completion_tokens: 50, total_tokens: 100 },
34
34
  };
35
35
  }
36
36
  async createEmbedding(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"AIClient.test.js","sourceRoot":"","sources":["../../../tests/clients/AIClient.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AIClient.test.js","sourceRoot":"","sources":["../../../tests/clients/AIClient.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const anthropic_1 = require("../../src/clients/anthropic");
4
+ function createClient() {
5
+ return new anthropic_1.GenericAnthropicClient("fake-key");
6
+ }
7
+ describe("GenericAnthropicClient.transformMessages", () => {
8
+ let client;
9
+ beforeEach(() => {
10
+ client = createClient();
11
+ });
12
+ it("should handle a simple user message", () => {
13
+ const messages = [
14
+ { role: "user", content: "Hello" },
15
+ ];
16
+ const result = client.transformMessages(messages);
17
+ expect(result).toHaveLength(1);
18
+ expect(result[0].role).toBe("user");
19
+ expect(result[0].content).toBe("Hello");
20
+ });
21
+ it("should filter out system messages", () => {
22
+ const messages = [
23
+ { role: "system", content: "You are helpful" },
24
+ { role: "user", content: "Hello" },
25
+ ];
26
+ const result = client.transformMessages(messages);
27
+ expect(result).toHaveLength(1);
28
+ expect(result[0].role).toBe("user");
29
+ });
30
+ it("should inject tool_use assistant block when processing tool result", () => {
31
+ const messages = [
32
+ { role: "user", content: "Use a tool" },
33
+ {
34
+ role: "assistant",
35
+ content: "",
36
+ tool_calls: [
37
+ {
38
+ id: "toolu_abc123",
39
+ type: "function",
40
+ function: {
41
+ name: "listAvailableTools",
42
+ arguments: "{}",
43
+ },
44
+ },
45
+ ],
46
+ },
47
+ {
48
+ role: "tool",
49
+ tool_call_id: "toolu_abc123",
50
+ name: "listAvailableTools",
51
+ content: '{"enabled": ["finalAnswer"], "disabled": []}',
52
+ },
53
+ ];
54
+ const result = client.transformMessages(messages);
55
+ expect(result.length).toBeGreaterThanOrEqual(2);
56
+ const assistantMsg = result.find((m) => m.role === "assistant" &&
57
+ Array.isArray(m.content) &&
58
+ m.content.some((c) => c.type === "tool_use"));
59
+ expect(assistantMsg).toBeDefined();
60
+ const toolUseBlock = assistantMsg.content.find((c) => c.type === "tool_use");
61
+ expect(toolUseBlock.id).toBe("toolu_abc123");
62
+ expect(toolUseBlock.name).toBe("listAvailableTools");
63
+ const userToolResult = result.find((m) => m.role === "user" &&
64
+ Array.isArray(m.content) &&
65
+ m.content.some((c) => c.type === "tool_result"));
66
+ expect(userToolResult).toBeDefined();
67
+ const toolResultBlock = userToolResult.content.find((c) => c.type === "tool_result");
68
+ expect(toolResultBlock.tool_use_id).toBe("toolu_abc123");
69
+ });
70
+ it("should not have undefined tool_use_id when assistant message has empty content with tool_calls", () => {
71
+ const messages = [
72
+ { role: "user", content: "Use a tool" },
73
+ {
74
+ role: "assistant",
75
+ content: "",
76
+ tool_calls: [
77
+ {
78
+ id: "toolu_abc123",
79
+ type: "function",
80
+ function: {
81
+ name: "listAvailableTools",
82
+ arguments: "{}",
83
+ },
84
+ },
85
+ ],
86
+ },
87
+ {
88
+ role: "tool",
89
+ tool_call_id: "toolu_abc123",
90
+ name: "listAvailableTools",
91
+ content: '{"enabled": ["finalAnswer"]}',
92
+ },
93
+ ];
94
+ const result = client.transformMessages(messages);
95
+ const userToolResult = result.find((m) => m.role === "user" &&
96
+ Array.isArray(m.content) &&
97
+ m.content.some((c) => c.type === "tool_result"));
98
+ expect(userToolResult).toBeDefined();
99
+ const toolResultBlock = userToolResult.content.find((c) => c.type === "tool_result");
100
+ expect(toolResultBlock.tool_use_id).toBe("toolu_abc123");
101
+ expect(toolResultBlock.tool_use_id).not.toBeUndefined();
102
+ });
103
+ it("should handle multiple sequential tool calls", () => {
104
+ const messages = [
105
+ { role: "user", content: "Do two things" },
106
+ {
107
+ role: "assistant",
108
+ content: "",
109
+ tool_calls: [
110
+ {
111
+ id: "toolu_111",
112
+ type: "function",
113
+ function: { name: "toolOne", arguments: "{}" },
114
+ },
115
+ ],
116
+ },
117
+ {
118
+ role: "tool",
119
+ tool_call_id: "toolu_111",
120
+ name: "toolOne",
121
+ content: "result one",
122
+ },
123
+ {
124
+ role: "assistant",
125
+ content: "",
126
+ tool_calls: [
127
+ {
128
+ id: "toolu_222",
129
+ type: "function",
130
+ function: { name: "toolTwo", arguments: "{}" },
131
+ },
132
+ ],
133
+ },
134
+ {
135
+ role: "tool",
136
+ tool_call_id: "toolu_222",
137
+ name: "toolTwo",
138
+ content: "result two",
139
+ },
140
+ ];
141
+ const result = client.transformMessages(messages);
142
+ const toolResults = result
143
+ .filter((m) => m.role === "user" && Array.isArray(m.content))
144
+ .flatMap((m) => m.content.filter((c) => c.type === "tool_result"));
145
+ expect(toolResults).toHaveLength(2);
146
+ const ids = toolResults.map((r) => r.tool_use_id);
147
+ expect(ids).toContain("toolu_111");
148
+ expect(ids).toContain("toolu_222");
149
+ expect(ids).not.toContain(undefined);
150
+ });
151
+ it("should not crash when response is undefined (Cannot use in operator bug)", () => {
152
+ const undefinedLike = undefined;
153
+ expect(() => {
154
+ if (undefinedLike != null && "response" in undefinedLike) {
155
+ }
156
+ }).not.toThrow();
157
+ });
158
+ });
159
+ //# sourceMappingURL=anthropic.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anthropic.test.js","sourceRoot":"","sources":["../../../tests/clients/anthropic.test.ts"],"names":[],"mappings":"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"}
@@ -85,6 +85,27 @@ describe("Model Pricing Coverage", () => {
85
85
  expect(entry).toBeDefined();
86
86
  });
87
87
  }
88
+ describe("Model Catalog Coverage", () => {
89
+ const catalogIds = new Set(pricing_1.ALL_MODEL_CATALOG.map((m) => m.id));
90
+ describe("All Models.* entries are in the catalog", () => {
91
+ for (const [provider, providerModels] of Object.entries(types_1.Models)) {
92
+ for (const [modelKey, modelId] of Object.entries(providerModels)) {
93
+ it(`Models.${provider}.${modelKey} (${modelId}) is in ALL_MODEL_CATALOG`, () => {
94
+ expect(catalogIds.has(modelId)).toBe(true);
95
+ });
96
+ }
97
+ }
98
+ });
99
+ describe("All EmbeddingModels.* entries are in the catalog", () => {
100
+ for (const [provider, providerModels] of Object.entries(types_1.EmbeddingModels)) {
101
+ for (const [modelKey, modelId] of Object.entries(providerModels)) {
102
+ it(`EmbeddingModels.${provider}.${modelKey} (${modelId}) is in ALL_MODEL_CATALOG`, () => {
103
+ expect(catalogIds.has(modelId)).toBe(true);
104
+ });
105
+ }
106
+ }
107
+ });
108
+ });
88
109
  });
89
110
  });
90
111
  //# sourceMappingURL=pricing.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pricing.test.js","sourceRoot":"","sources":["../../../tests/clients/pricing.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pricing.test.js","sourceRoot":"","sources":["../../../tests/clients/pricing.test.ts"],"names":[],"mappings":"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"}
@@ -36,32 +36,29 @@ Object.defineProperty(exports, "__esModule", { value: true });
36
36
  const fs = __importStar(require("fs"));
37
37
  const path = __importStar(require("path"));
38
38
  const clients_1 = require("../../../src/clients");
39
- const types_1 = require("../../../src/types");
39
+ const openai_1 = require("../../../src/clients/pricing/openai");
40
+ const anthropic_1 = require("../../../src/clients/pricing/anthropic");
41
+ const google_1 = require("../../../src/clients/pricing/google");
42
+ const xai_1 = require("../../../src/clients/pricing/xai");
40
43
  const OUTPUT_FILE = path.join(__dirname, "completions.json");
41
44
  const PROMPT = "Say hello in 5 words.";
45
+ function openaiEntries(models) {
46
+ return models.map((model) => ({ provider: "openai", model, envKey: "OPENAI_KEY" }));
47
+ }
48
+ function anthropicEntries(models) {
49
+ return models.map((model) => ({ provider: "anthropic", model, envKey: "ANTHROPIC_API_KEY" }));
50
+ }
51
+ function googleEntries(models) {
52
+ return models.map((model) => ({ provider: "google", model, envKey: "GEMINI_API_KEY" }));
53
+ }
54
+ function xaiEntries(models) {
55
+ return models.map((model) => ({ provider: "xai", model, envKey: "XAI_API_KEY" }));
56
+ }
42
57
  const TEST_MODELS = [
43
- { provider: "openai", model: types_1.Models.openai.GPT_4o_Mini, envKey: "OPENAI_KEY" },
44
- { provider: "openai", model: types_1.Models.openai.GPT_41_Nano, envKey: "OPENAI_KEY" },
45
- { provider: "openai", model: types_1.Models.openai.GPT_54, envKey: "OPENAI_KEY" },
46
- { provider: "openai", model: types_1.Models.openai.GPT_54_Pro, envKey: "OPENAI_KEY" },
47
- { provider: "openai", model: types_1.Models.openai.GPT_54_Mini, envKey: "OPENAI_KEY" },
48
- { provider: "openai", model: types_1.Models.openai.GPT_54_Nano, envKey: "OPENAI_KEY" },
49
- { provider: "openai", model: types_1.Models.openai.GPT_53_Chat, envKey: "OPENAI_KEY" },
50
- { provider: "openai", model: types_1.Models.openai.GPT_53_Codex, envKey: "OPENAI_KEY" },
51
- { provider: "anthropic", model: types_1.Models.anthropic.Haiku4_5, envKey: "ANTHROPIC_API_KEY" },
52
- { provider: "anthropic", model: types_1.Models.anthropic.Sonnet4_6, envKey: "ANTHROPIC_API_KEY" },
53
- { provider: "anthropic", model: types_1.Models.anthropic.Opus4_6, envKey: "ANTHROPIC_API_KEY" },
54
- { provider: "google", model: types_1.Models.google.Gemini_25_Flash, envKey: "GEMINI_API_KEY" },
55
- { provider: "google", model: types_1.Models.google.Gemini_31_Flash_Lite_Preview, envKey: "GEMINI_API_KEY" },
56
- { provider: "google", model: types_1.Models.google.Gemini_31_Flash_Image_Preview, envKey: "GEMINI_API_KEY" },
57
- { provider: "google", model: types_1.Models.google.Gemini_31_Pro_Preview, envKey: "GEMINI_API_KEY" },
58
- { provider: "xai", model: types_1.Models.xai.Grok3MiniFastBeta, envKey: "XAI_API_KEY" },
59
- { provider: "xai", model: types_1.Models.xai.Grok3MiniBeta, envKey: "XAI_API_KEY" },
60
- { provider: "xai", model: types_1.Models.xai.Grok4, envKey: "XAI_API_KEY" },
61
- { provider: "xai", model: types_1.Models.xai.Grok4_1_Fast_NonReasoning, envKey: "XAI_API_KEY" },
62
- { provider: "xai", model: types_1.Models.xai.Grok4_1_Fast_NonReasoning, envKey: "XAI_API_KEY" },
63
- { provider: "xai", model: types_1.Models.xai.Grok_4_20_NonReasoning, envKey: "XAI_API_KEY" },
64
- { provider: "xai", model: types_1.Models.xai.Grok_4_20_Reasoning, envKey: "XAI_API_KEY" },
58
+ ...openaiEntries([...new Set([...openai_1.OpenAiChatModels, ...openai_1.OpenAiReasoningModels, ...openai_1.OpenAiResponsesOnlyModels])]),
59
+ ...anthropicEntries(anthropic_1.AnthropicTextModels),
60
+ ...googleEntries(google_1.GoogleTextModels),
61
+ ...xaiEntries(xai_1.XaiTextModels),
65
62
  ];
66
63
  function loadResults() {
67
64
  if (fs.existsSync(OUTPUT_FILE)) {
@@ -100,6 +97,7 @@ describe("Text Completions – multi-provider model verification", () => {
100
97
  console.log(`⏭ Skipping (already tested on ${rec.testedAt})`);
101
98
  console.log(` Response : "${rec.response}"`);
102
99
  console.log(` Cost : $${rec.usd_cost?.toFixed(8) ?? "unknown"}`);
100
+ console.log(` Duration : ${rec.durationMs != null ? rec.durationMs + "ms" : "unknown"}`);
103
101
  expect(rec.response).toBeTruthy();
104
102
  return;
105
103
  }
@@ -107,11 +105,14 @@ describe("Text Completions – multi-provider model verification", () => {
107
105
  console.log(`⏭ Skipping: ${envKey} not set`);
108
106
  return;
109
107
  }
108
+ const startMs = Date.now();
110
109
  const response = await client.createCompletion(provider, {
111
110
  model,
112
111
  messages: [{ role: "user", content: PROMPT }],
113
- max_tokens: 50,
112
+ max_tokens: 2000,
113
+ reasoning_effort: "low",
114
114
  });
115
+ const durationMs = Date.now() - startMs;
115
116
  const text = response.choices[0]?.message?.content ?? "";
116
117
  expect(text).toBeTruthy();
117
118
  const record = {
@@ -120,6 +121,7 @@ describe("Text Completions – multi-provider model verification", () => {
120
121
  prompt: PROMPT,
121
122
  response: text,
122
123
  usage: response.usage ?? {},
124
+ durationMs,
123
125
  usd_cost: response.usd_cost,
124
126
  testedAt: new Date().toISOString(),
125
127
  };
@@ -129,6 +131,7 @@ describe("Text Completions – multi-provider model verification", () => {
129
131
  console.log(` Response : "${text}"`);
130
132
  console.log(` Tokens : ${JSON.stringify(response.usage)}`);
131
133
  console.log(` Cost : $${response.usd_cost?.toFixed(8) ?? "unknown"}`);
134
+ console.log(` Duration : ${durationMs}ms`);
132
135
  }, 60_000);
133
136
  }
134
137
  });