@just-every/ensemble 0.2.78 → 0.2.80

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 (136) hide show
  1. package/dist/config/tool_execution.d.ts.map +1 -1
  2. package/dist/config/tool_execution.js +2 -11
  3. package/dist/config/tool_execution.js.map +1 -1
  4. package/dist/core/ensemble_embed.d.ts.map +1 -1
  5. package/dist/core/ensemble_embed.js +2 -4
  6. package/dist/core/ensemble_embed.js.map +1 -1
  7. package/dist/core/ensemble_image.d.ts.map +1 -1
  8. package/dist/core/ensemble_image.js +1 -1
  9. package/dist/core/ensemble_image.js.map +1 -1
  10. package/dist/core/ensemble_listen.d.ts.map +1 -1
  11. package/dist/core/ensemble_listen.js +3 -5
  12. package/dist/core/ensemble_listen.js.map +1 -1
  13. package/dist/core/ensemble_live.d.ts +14 -0
  14. package/dist/core/ensemble_live.d.ts.map +1 -0
  15. package/dist/core/ensemble_live.js +382 -0
  16. package/dist/core/ensemble_live.js.map +1 -0
  17. package/dist/core/ensemble_request.d.ts.map +1 -1
  18. package/dist/core/ensemble_request.js +5 -13
  19. package/dist/core/ensemble_request.js.map +1 -1
  20. package/dist/core/ensemble_voice.d.ts.map +1 -1
  21. package/dist/core/ensemble_voice.js +1 -1
  22. package/dist/core/ensemble_voice.js.map +1 -1
  23. package/dist/data/model_data.d.ts.map +1 -1
  24. package/dist/data/model_data.js +2 -11
  25. package/dist/data/model_data.js.map +1 -1
  26. package/dist/index.d.ts +6 -5
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +6 -5
  29. package/dist/index.js.map +1 -1
  30. package/dist/model_providers/base_provider.d.ts.map +1 -1
  31. package/dist/model_providers/base_provider.js +1 -1
  32. package/dist/model_providers/base_provider.js.map +1 -1
  33. package/dist/model_providers/claude.d.ts.map +1 -1
  34. package/dist/model_providers/claude.js +48 -101
  35. package/dist/model_providers/claude.js.map +1 -1
  36. package/dist/model_providers/deepseek.d.ts.map +1 -1
  37. package/dist/model_providers/deepseek.js +7 -18
  38. package/dist/model_providers/deepseek.js.map +1 -1
  39. package/dist/model_providers/elevenlabs.d.ts.map +1 -1
  40. package/dist/model_providers/elevenlabs.js +3 -7
  41. package/dist/model_providers/elevenlabs.js.map +1 -1
  42. package/dist/model_providers/gemini.d.ts +3 -4
  43. package/dist/model_providers/gemini.d.ts.map +1 -1
  44. package/dist/model_providers/gemini.js +499 -111
  45. package/dist/model_providers/gemini.js.map +1 -1
  46. package/dist/model_providers/grok.d.ts.map +1 -1
  47. package/dist/model_providers/grok.js +1 -2
  48. package/dist/model_providers/grok.js.map +1 -1
  49. package/dist/model_providers/model_provider.d.ts.map +1 -1
  50. package/dist/model_providers/model_provider.js +10 -20
  51. package/dist/model_providers/model_provider.js.map +1 -1
  52. package/dist/model_providers/openai.d.ts.map +1 -1
  53. package/dist/model_providers/openai.js +50 -100
  54. package/dist/model_providers/openai.js.map +1 -1
  55. package/dist/model_providers/openai_chat.d.ts.map +1 -1
  56. package/dist/model_providers/openai_chat.js +39 -72
  57. package/dist/model_providers/openai_chat.js.map +1 -1
  58. package/dist/model_providers/test_provider.d.ts.map +1 -1
  59. package/dist/model_providers/test_provider.js +7 -17
  60. package/dist/model_providers/test_provider.js.map +1 -1
  61. package/dist/tsconfig.tsbuildinfo +1 -1
  62. package/dist/types/errors.d.ts.map +1 -1
  63. package/dist/types/errors.js.map +1 -1
  64. package/dist/types/types.d.ts +158 -7
  65. package/dist/types/types.d.ts.map +1 -1
  66. package/dist/utils/agent.d.ts.map +1 -1
  67. package/dist/utils/agent.js +5 -16
  68. package/dist/utils/agent.js.map +1 -1
  69. package/dist/utils/citation_tracker.d.ts.map +1 -1
  70. package/dist/utils/citation_tracker.js.map +1 -1
  71. package/dist/utils/config_manager.d.ts.map +1 -1
  72. package/dist/utils/config_manager.js +12 -4
  73. package/dist/utils/config_manager.js.map +1 -1
  74. package/dist/utils/cost_tracker.d.ts.map +1 -1
  75. package/dist/utils/cost_tracker.js +13 -26
  76. package/dist/utils/cost_tracker.js.map +1 -1
  77. package/dist/utils/create_tool_function.d.ts.map +1 -1
  78. package/dist/utils/create_tool_function.js +4 -16
  79. package/dist/utils/create_tool_function.js.map +1 -1
  80. package/dist/utils/delta_buffer.d.ts.map +1 -1
  81. package/dist/utils/delta_buffer.js +1 -2
  82. package/dist/utils/delta_buffer.js.map +1 -1
  83. package/dist/utils/ensemble_result.d.ts.map +1 -1
  84. package/dist/utils/ensemble_result.js +9 -24
  85. package/dist/utils/ensemble_result.js.map +1 -1
  86. package/dist/utils/event_controller.d.ts.map +1 -1
  87. package/dist/utils/event_controller.js.map +1 -1
  88. package/dist/utils/external_models.d.ts.map +1 -1
  89. package/dist/utils/external_models.js.map +1 -1
  90. package/dist/utils/image_to_text.d.ts.map +1 -1
  91. package/dist/utils/image_to_text.js +1 -2
  92. package/dist/utils/image_to_text.js.map +1 -1
  93. package/dist/utils/image_utils.d.ts.map +1 -1
  94. package/dist/utils/image_utils.js.map +1 -1
  95. package/dist/utils/image_validation.d.ts.map +1 -1
  96. package/dist/utils/image_validation.js.map +1 -1
  97. package/dist/utils/llm_logger.d.ts.map +1 -1
  98. package/dist/utils/llm_logger.js.map +1 -1
  99. package/dist/utils/message_history.d.ts.map +1 -1
  100. package/dist/utils/message_history.js +9 -20
  101. package/dist/utils/message_history.js.map +1 -1
  102. package/dist/utils/model_class_config.d.ts.map +1 -1
  103. package/dist/utils/model_class_config.js +1 -1
  104. package/dist/utils/model_class_config.js.map +1 -1
  105. package/dist/utils/pause_controller.d.ts.map +1 -1
  106. package/dist/utils/pause_controller.js.map +1 -1
  107. package/dist/utils/quota_tracker.d.ts.map +1 -1
  108. package/dist/utils/quota_tracker.js +19 -49
  109. package/dist/utils/quota_tracker.js.map +1 -1
  110. package/dist/utils/retry_handler.d.ts.map +1 -1
  111. package/dist/utils/retry_handler.js.map +1 -1
  112. package/dist/utils/running_tool_tracker.d.ts.map +1 -1
  113. package/dist/utils/running_tool_tracker.js.map +1 -1
  114. package/dist/utils/sequential_queue.d.ts.map +1 -1
  115. package/dist/utils/sequential_queue.js.map +1 -1
  116. package/dist/utils/stream_handler.d.ts.map +1 -1
  117. package/dist/utils/stream_handler.js +1 -1
  118. package/dist/utils/stream_handler.js.map +1 -1
  119. package/dist/utils/summary_utils.d.ts.map +1 -1
  120. package/dist/utils/summary_utils.js +3 -8
  121. package/dist/utils/summary_utils.js.map +1 -1
  122. package/dist/utils/test_utils.d.ts.map +1 -1
  123. package/dist/utils/test_utils.js +1 -3
  124. package/dist/utils/test_utils.js.map +1 -1
  125. package/dist/utils/tool_execution_manager.d.ts.map +1 -1
  126. package/dist/utils/tool_execution_manager.js +3 -9
  127. package/dist/utils/tool_execution_manager.js.map +1 -1
  128. package/dist/utils/tool_parameter_utils.d.ts.map +1 -1
  129. package/dist/utils/tool_parameter_utils.js +2 -6
  130. package/dist/utils/tool_parameter_utils.js.map +1 -1
  131. package/dist/utils/tool_result_processor.d.ts.map +1 -1
  132. package/dist/utils/tool_result_processor.js +7 -18
  133. package/dist/utils/tool_result_processor.js.map +1 -1
  134. package/dist/utils/verification.d.ts.map +1 -1
  135. package/dist/utils/verification.js.map +1 -1
  136. package/package.json +4 -2
@@ -2,11 +2,11 @@ import { BaseModelProvider } from './base_provider.js';
2
2
  import OpenAI, { APIError } from 'openai';
3
3
  import { v4 as uuidv4 } from 'uuid';
4
4
  import { costTracker } from '../index.js';
5
- import { log_llm_error, log_llm_request, log_llm_response, } from '../utils/llm_logger.js';
5
+ import { log_llm_error, log_llm_request, log_llm_response } from '../utils/llm_logger.js';
6
6
  import { isPaused } from '../utils/pause_controller.js';
7
- import { appendMessageWithImage, resizeAndSplitForOpenAI, } from '../utils/image_utils.js';
8
- import { bufferDelta, flushBufferedDeltas, } from '../utils/delta_buffer.js';
9
- import { createCitationTracker, formatCitation, generateFootnotes, } from '../utils/citation_tracker.js';
7
+ import { appendMessageWithImage, resizeAndSplitForOpenAI } from '../utils/image_utils.js';
8
+ import { bufferDelta, flushBufferedDeltas } from '../utils/delta_buffer.js';
9
+ import { createCitationTracker, formatCitation, generateFootnotes } from '../utils/citation_tracker.js';
10
10
  const SIMULATED_TOOL_CALL_REGEX = /\n?\s*(?:```(?:json)?\s*)?\s*TOOL_CALLS:\s*(\[.*\])(?:\s*```)?/gs;
11
11
  const TOOL_CALL_CLEANUP_REGEX = /\n?\s*(?:```(?:json)?\s*)?\s*TOOL_CALLS:\s*\[.*\](?:\s*```)?/gms;
12
12
  const CLEANUP_PLACEHOLDER = '[Simulated Tool Calls Removed]';
@@ -151,9 +151,7 @@ async function mapMessagesToOpenAI(messages, model) {
151
151
  });
152
152
  }
153
153
  }
154
- else if (!msg.type ||
155
- msg.type === 'message' ||
156
- msg.type === 'thinking') {
154
+ else if (!msg.type || msg.type === 'message' || msg.type === 'thinking') {
157
155
  if ('content' in message) {
158
156
  delete message.type;
159
157
  delete message.timestamp;
@@ -254,8 +252,7 @@ export class OpenAIChat extends BaseModelProvider {
254
252
  throw initialParseError;
255
253
  }
256
254
  if (!Array.isArray(parsedToolCallArray)) {
257
- if (typeof parsedToolCallArray === 'object' &&
258
- parsedToolCallArray !== null) {
255
+ if (typeof parsedToolCallArray === 'object' && parsedToolCallArray !== null) {
259
256
  console.log(`(${this.provider}) Parsed JSON is not an array but an object, wrapping in array`);
260
257
  parsedToolCallArray = [parsedToolCallArray];
261
258
  }
@@ -276,8 +273,7 @@ export class OpenAIChat extends BaseModelProvider {
276
273
  },
277
274
  };
278
275
  const funcDetails = callData.function;
279
- if (typeof funcDetails === 'object' &&
280
- funcDetails !== null) {
276
+ if (typeof funcDetails === 'object' && funcDetails !== null) {
281
277
  if (typeof funcDetails.name === 'string') {
282
278
  toolCall.function.name = funcDetails.name;
283
279
  }
@@ -285,18 +281,15 @@ export class OpenAIChat extends BaseModelProvider {
285
281
  if (typeof funcDetails.arguments === 'string') {
286
282
  try {
287
283
  JSON.parse(funcDetails.arguments);
288
- toolCall.function.arguments =
289
- funcDetails.arguments;
284
+ toolCall.function.arguments = funcDetails.arguments;
290
285
  }
291
286
  catch {
292
287
  console.warn(`(${this.provider}) Argument string is not valid JSON, wrapping in quotes:`, funcDetails.arguments);
293
- toolCall.function.arguments =
294
- JSON.stringify(funcDetails.arguments);
288
+ toolCall.function.arguments = JSON.stringify(funcDetails.arguments);
295
289
  }
296
290
  }
297
291
  else {
298
- toolCall.function.arguments =
299
- JSON.stringify(funcDetails.arguments);
292
+ toolCall.function.arguments = JSON.stringify(funcDetails.arguments);
300
293
  }
301
294
  }
302
295
  }
@@ -306,23 +299,19 @@ export class OpenAIChat extends BaseModelProvider {
306
299
  if (typeof callData.arguments === 'string') {
307
300
  try {
308
301
  JSON.parse(callData.arguments);
309
- toolCall.function.arguments =
310
- callData.arguments;
302
+ toolCall.function.arguments = callData.arguments;
311
303
  }
312
304
  catch {
313
305
  console.warn(`(${this.provider}) Argument string is not valid JSON, wrapping in quotes:`, callData.arguments);
314
- toolCall.function.arguments =
315
- JSON.stringify(callData.arguments);
306
+ toolCall.function.arguments = JSON.stringify(callData.arguments);
316
307
  }
317
308
  }
318
309
  else {
319
- toolCall.function.arguments =
320
- JSON.stringify(callData.arguments);
310
+ toolCall.function.arguments = JSON.stringify(callData.arguments);
321
311
  }
322
312
  }
323
313
  }
324
- if (toolCall.function.name &&
325
- toolCall.function.name.length > 0) {
314
+ if (toolCall.function.name && toolCall.function.name.length > 0) {
326
315
  validSimulatedCalls.push(toolCall);
327
316
  }
328
317
  else {
@@ -335,9 +324,7 @@ export class OpenAIChat extends BaseModelProvider {
335
324
  }
336
325
  console.log(`(${this.provider}) Valid simulated calls extracted:`, validSimulatedCalls);
337
326
  if (validSimulatedCalls.length > 0) {
338
- let textBeforeToolCall = aggregatedContent
339
- .substring(0, matchIndex)
340
- .trim();
327
+ let textBeforeToolCall = aggregatedContent.substring(0, matchIndex).trim();
341
328
  textBeforeToolCall = textBeforeToolCall.replaceAll(TOOL_CALL_CLEANUP_REGEX, CLEANUP_PLACEHOLDER);
342
329
  const eventsToYield = [];
343
330
  if (textBeforeToolCall) {
@@ -369,9 +356,7 @@ export class OpenAIChat extends BaseModelProvider {
369
356
  }
370
357
  async *createResponseStream(messages, model, agent) {
371
358
  const { getToolsFromAgent } = await import('../utils/agent.js');
372
- const toolsPromise = agent
373
- ? getToolsFromAgent(agent)
374
- : Promise.resolve([]);
359
+ const toolsPromise = agent ? getToolsFromAgent(agent) : Promise.resolve([]);
375
360
  const tools = await toolsPromise;
376
361
  const settings = agent?.modelSettings;
377
362
  let requestId;
@@ -383,7 +368,11 @@ export class OpenAIChat extends BaseModelProvider {
383
368
  content: 'Please begin.',
384
369
  });
385
370
  }
386
- let requestParams = { model, messages: chatMessages, stream: true };
371
+ let requestParams = {
372
+ model,
373
+ messages: chatMessages,
374
+ stream: true,
375
+ };
387
376
  if (settings?.temperature !== undefined)
388
377
  requestParams.temperature = settings.temperature;
389
378
  if (settings?.top_p !== undefined)
@@ -407,11 +396,7 @@ export class OpenAIChat extends BaseModelProvider {
407
396
  console.warn(`(${this.provider}) Mistral models don't support native tool calling. Tools will be ignored.`);
408
397
  }
409
398
  const overrideParams = { ...this.commonParams };
410
- const REASONING_EFFORT_CONFIGS = [
411
- 'low',
412
- 'medium',
413
- 'high',
414
- ];
399
+ const REASONING_EFFORT_CONFIGS = ['low', 'medium', 'high'];
415
400
  for (const effort of REASONING_EFFORT_CONFIGS) {
416
401
  const suffix = `-${effort}`;
417
402
  if (model.endsWith(suffix)) {
@@ -479,11 +464,9 @@ export class OpenAIChat extends BaseModelProvider {
479
464
  }
480
465
  if (Array.isArray(extendedDelta.annotations)) {
481
466
  for (const ann of extendedDelta.annotations) {
482
- if (ann.type === 'url_citation' &&
483
- ann.url_citation?.url) {
467
+ if (ann.type === 'url_citation' && ann.url_citation?.url) {
484
468
  const marker = formatCitation(citationTracker, {
485
- title: ann.url_citation.title ||
486
- ann.url_citation.url,
469
+ title: ann.url_citation.title || ann.url_citation.url,
487
470
  url: ann.url_citation.url,
488
471
  });
489
472
  aggregatedContent += marker;
@@ -497,11 +480,9 @@ export class OpenAIChat extends BaseModelProvider {
497
480
  }
498
481
  }
499
482
  const extendedChunk = chunk;
500
- if (Array.isArray(extendedChunk.citations) &&
501
- extendedChunk.citations.length > 0) {
483
+ if (Array.isArray(extendedChunk.citations) && extendedChunk.citations.length > 0) {
502
484
  for (const url of extendedChunk.citations) {
503
- if (typeof url === 'string' &&
504
- !citationTracker.citations.has(url)) {
485
+ if (typeof url === 'string' && !citationTracker.citations.has(url)) {
505
486
  const title = url.split('/').pop() || url;
506
487
  const marker = formatCitation(citationTracker, {
507
488
  title,
@@ -558,8 +539,7 @@ export class OpenAIChat extends BaseModelProvider {
558
539
  type: 'function',
559
540
  function: {
560
541
  name: typedDelta.function?.name || '',
561
- arguments: typedDelta.function?.arguments ||
562
- '',
542
+ arguments: typedDelta.function?.arguments || '',
563
543
  },
564
544
  };
565
545
  partialToolCallsByIndex.set(index, partialCall);
@@ -568,20 +548,16 @@ export class OpenAIChat extends BaseModelProvider {
568
548
  if (typedDelta.id)
569
549
  partialCall.id = typedDelta.id;
570
550
  if (typedDelta.function?.name)
571
- partialCall.function.name =
572
- typedDelta.function.name;
551
+ partialCall.function.name = typedDelta.function.name;
573
552
  if (typedDelta.function?.arguments) {
574
553
  const newArgs = typedDelta.function.arguments;
575
- const accumulatedArgs = partialCall.function.arguments +
576
- newArgs;
554
+ const accumulatedArgs = partialCall.function.arguments + newArgs;
577
555
  try {
578
556
  JSON.parse(accumulatedArgs);
579
- partialCall.function.arguments =
580
- accumulatedArgs;
557
+ partialCall.function.arguments = accumulatedArgs;
581
558
  }
582
559
  catch {
583
- partialCall.function.arguments =
584
- accumulatedArgs;
560
+ partialCall.function.arguments = accumulatedArgs;
585
561
  }
586
562
  }
587
563
  }
@@ -610,8 +586,7 @@ export class OpenAIChat extends BaseModelProvider {
610
586
  cached_tokens: usage.prompt_tokens_details?.cached_tokens || 0,
611
587
  metadata: {
612
588
  total_tokens: usage.total_tokens || 0,
613
- reasoning_tokens: usage.completion_tokens_details
614
- ?.reasoning_tokens || 0,
589
+ reasoning_tokens: usage.completion_tokens_details?.reasoning_tokens || 0,
615
590
  },
616
591
  });
617
592
  }
@@ -649,8 +624,7 @@ export class OpenAIChat extends BaseModelProvider {
649
624
  if (completedToolCall.function.arguments) {
650
625
  try {
651
626
  const parsed = JSON.parse(completedToolCall.function.arguments);
652
- completedToolCall.function.arguments =
653
- JSON.stringify(parsed);
627
+ completedToolCall.function.arguments = JSON.stringify(parsed);
654
628
  }
655
629
  catch (error) {
656
630
  console.warn(`(${this.provider}) Invalid JSON in tool arguments for ${completedToolCall.function.name}, attempting to fix: ${error}`);
@@ -659,19 +633,16 @@ export class OpenAIChat extends BaseModelProvider {
659
633
  if (matches && matches[0]) {
660
634
  try {
661
635
  const parsed = JSON.parse(matches[0]);
662
- completedToolCall.function.arguments =
663
- JSON.stringify(parsed);
636
+ completedToolCall.function.arguments = JSON.stringify(parsed);
664
637
  console.log(`(${this.provider}) Successfully extracted valid JSON`);
665
638
  }
666
639
  catch {
667
- completedToolCall.function.arguments =
668
- '{}';
640
+ completedToolCall.function.arguments = '{}';
669
641
  console.error(`(${this.provider}) Could not parse arguments, using empty object`);
670
642
  }
671
643
  }
672
644
  else {
673
- completedToolCall.function.arguments =
674
- '{}';
645
+ completedToolCall.function.arguments = '{}';
675
646
  }
676
647
  }
677
648
  }
@@ -748,14 +719,11 @@ export class OpenAIChat extends BaseModelProvider {
748
719
  yield {
749
720
  type: 'error',
750
721
  error: `Stream processing error (${this.provider} ${model}): ` +
751
- (streamError instanceof OpenAI.APIError ||
752
- streamError instanceof APIError
722
+ (streamError instanceof OpenAI.APIError || streamError instanceof APIError
753
723
  ? `${streamError.status} ${streamError.name} ${streamError.message} ${JSON.stringify(streamError.error)}`
754
724
  : streamError instanceof Error
755
725
  ? streamError.stack
756
- : Object.getPrototypeOf(streamError) +
757
- ' ' +
758
- String(streamError)),
726
+ : Object.getPrototypeOf(streamError) + ' ' + String(streamError)),
759
727
  };
760
728
  }
761
729
  finally {
@@ -769,8 +737,7 @@ export class OpenAIChat extends BaseModelProvider {
769
737
  yield {
770
738
  type: 'error',
771
739
  error: `API Error (${this.provider} - ${model}): ` +
772
- (error instanceof OpenAI.APIError ||
773
- error instanceof APIError
740
+ (error instanceof OpenAI.APIError || error instanceof APIError
774
741
  ? `${error.status} ${error.name} ${error.message}`
775
742
  : error instanceof Error
776
743
  ? error.stack
@@ -1 +1 @@
1
- {"version":3,"file":"openai_chat.js","sourceRoot":"","sources":["../../model_providers/openai_chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai_chat.js","sourceRoot":"","sources":["../../model_providers/openai_chat.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"test_provider.d.ts","sourceRoot":"","sources":["../../model_providers/test_provider.ts"],"names":[],"mappings":"AAQA,OAAO,EACH,aAAa,EACb,mBAAmB,EAGnB,eAAe,EAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAQvD,MAAM,WAAW,kBAAkB;IAE/B,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,WAAW,CAAC,EAAE,OAAO,CAAC;IAGtB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAI5B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAGnC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAGnC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAG3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAGpC,UAAU,CAAC,EAAE;QACT,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;KACxB,CAAC;IAGF,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAGD,eAAO,MAAM,kBAAkB,EAAE,kBAehC,CAAC;AAKF,wBAAgB,uBAAuB,SAetC;AAUD,qBAAa,YAAa,SAAQ,iBAAiB;IAC/C,OAAO,CAAC,MAAM,CAAqB;gBAEvB,MAAM,GAAE,kBAAuC;IAQpD,oBAAoB,CACvB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,GACvB,cAAc,CAAC,mBAAmB,CAAC;IA4KtC,OAAO,CAAC,gBAAgB;IAoClB,eAAe,CACjB,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EACxB,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,GAAG,GACX,OAAO,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC;CAuBpC;AAGD,eAAO,MAAM,YAAY,cAAqB,CAAC"}
1
+ {"version":3,"file":"test_provider.d.ts","sourceRoot":"","sources":["../../model_providers/test_provider.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAA+B,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrH,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAQvD,MAAM,WAAW,kBAAkB;IAE/B,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,WAAW,CAAC,EAAE,OAAO,CAAC;IAGtB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAI5B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAGnC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAGnC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAG3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAGpC,UAAU,CAAC,EAAE;QACT,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;KACxB,CAAC;IAGF,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAGD,eAAO,MAAM,kBAAkB,EAAE,kBAehC,CAAC;AAKF,wBAAgB,uBAAuB,SAetC;AAUD,qBAAa,YAAa,SAAQ,iBAAiB;IAC/C,OAAO,CAAC,MAAM,CAAqB;gBAEvB,MAAM,GAAE,kBAAuC;IAQpD,oBAAoB,CACvB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,GACvB,cAAc,CAAC,mBAAmB,CAAC;IAgKtC,OAAO,CAAC,gBAAgB;IA8BlB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC;CAuB7G;AAGD,eAAO,MAAM,YAAY,cAAqB,CAAC"}
@@ -42,16 +42,13 @@ export class TestProvider extends BaseModelProvider {
42
42
  }
43
43
  async *createResponseStream(messages, model, agent) {
44
44
  console.log(`[TestProvider] Creating response stream for model: ${model}`);
45
- const lastUserMessage = messages
46
- .filter(m => 'role' in m && m.role === 'user')
47
- .pop();
45
+ const lastUserMessage = messages.filter(m => 'role' in m && m.role === 'user').pop();
48
46
  const userMessageContent = lastUserMessage && 'content' in lastUserMessage
49
47
  ? typeof lastUserMessage.content === 'string'
50
48
  ? lastUserMessage.content
51
49
  : JSON.stringify(lastUserMessage.content)
52
50
  : '';
53
- const inputTokenCount = this.config.tokenUsage?.inputTokens ||
54
- Math.max(50, Math.ceil(userMessageContent.length / 4));
51
+ const inputTokenCount = this.config.tokenUsage?.inputTokens || Math.max(50, Math.ceil(userMessageContent.length / 4));
55
52
  let response;
56
53
  if (this.config.simulateRateLimit) {
57
54
  const rateLimitError = '429 Too Many Requests: The server is currently processing too many requests. Please try again later.';
@@ -64,8 +61,7 @@ export class TestProvider extends BaseModelProvider {
64
61
  if (this.config.shouldError) {
65
62
  yield {
66
63
  type: 'error',
67
- error: this.config.errorMessage ||
68
- 'Simulated error from test provider',
64
+ error: this.config.errorMessage || 'Simulated error from test provider',
69
65
  };
70
66
  return;
71
67
  }
@@ -97,10 +93,7 @@ export class TestProvider extends BaseModelProvider {
97
93
  if (currentTools) {
98
94
  const toolArray = await currentTools;
99
95
  if (toolArray.length > 0) {
100
- const availableTool = toolArray.find(tool => this.config.toolName
101
- ? tool.definition.function.name ===
102
- this.config.toolName
103
- : true);
96
+ const availableTool = toolArray.find(tool => this.config.toolName ? tool.definition.function.name === this.config.toolName : true);
104
97
  if (availableTool) {
105
98
  const toolCall = {
106
99
  id: uuidv4(),
@@ -140,8 +133,7 @@ export class TestProvider extends BaseModelProvider {
140
133
  message_id: messageId,
141
134
  content: response,
142
135
  };
143
- const outputTokenCount = this.config.tokenUsage?.outputTokens ||
144
- Math.ceil(response.length / 4);
136
+ const outputTokenCount = this.config.tokenUsage?.outputTokens || Math.ceil(response.length / 4);
145
137
  yield {
146
138
  type: 'cost_update',
147
139
  usage: {
@@ -164,12 +156,10 @@ export class TestProvider extends BaseModelProvider {
164
156
  else if (lowercaseInput.includes('help')) {
165
157
  return "I'm here to help! What do you need assistance with?";
166
158
  }
167
- else if (lowercaseInput.includes('error') ||
168
- lowercaseInput.includes('problem')) {
159
+ else if (lowercaseInput.includes('error') || lowercaseInput.includes('problem')) {
169
160
  return "I understand you're experiencing an issue. Let me help troubleshoot the problem.";
170
161
  }
171
- else if (lowercaseInput.includes('json') ||
172
- lowercaseInput.includes('person')) {
162
+ else if (lowercaseInput.includes('json') || lowercaseInput.includes('person')) {
173
163
  return '{"name": "John Doe", "age": 30}';
174
164
  }
175
165
  else if (lowercaseInput.includes('test')) {
@@ -1 +1 @@
1
- {"version":3,"file":"test_provider.js","sourceRoot":"","sources":["../../model_providers/test_provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test_provider.js","sourceRoot":"","sources":["../../model_providers/test_provider.ts"],"names":[],"mappings":"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"}