promptfoo 0.103.4 → 0.103.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/LICENSE +10 -1
  2. package/dist/package.json +9 -9
  3. package/dist/src/app/assets/{index-Br_ykdEV.js → index-CsrcHuZk.js} +203 -203
  4. package/dist/src/app/assets/{index.es-lNQS-wgf.js → index.es-Ccp6ob2s.js} +1 -1
  5. package/dist/src/app/assets/{sync-CRhW4wge.js → sync-_oBoT8fc.js} +1 -1
  6. package/dist/src/app/index.html +1 -1
  7. package/dist/src/assertions/index.d.ts +1 -1
  8. package/dist/src/assertions/index.d.ts.map +1 -1
  9. package/dist/src/assertions/index.js +1 -10
  10. package/dist/src/assertions/index.js.map +1 -1
  11. package/dist/src/assertions/utils.d.ts +5 -2
  12. package/dist/src/assertions/utils.d.ts.map +1 -1
  13. package/dist/src/commands/auth.d.ts +1 -0
  14. package/dist/src/commands/auth.d.ts.map +1 -1
  15. package/dist/src/commands/auth.js +7 -3
  16. package/dist/src/commands/auth.js.map +1 -1
  17. package/dist/src/database/tables.d.ts +45 -12
  18. package/dist/src/database/tables.d.ts.map +1 -1
  19. package/dist/src/fetch.d.ts.map +1 -1
  20. package/dist/src/fetch.js +20 -3
  21. package/dist/src/fetch.js.map +1 -1
  22. package/dist/src/globalConfig/cloud.d.ts +1 -0
  23. package/dist/src/globalConfig/cloud.d.ts.map +1 -1
  24. package/dist/src/globalConfig/cloud.js +4 -4
  25. package/dist/src/globalConfig/cloud.js.map +1 -1
  26. package/dist/src/index.d.ts +19 -1
  27. package/dist/src/index.d.ts.map +1 -1
  28. package/dist/src/index.js +13 -1
  29. package/dist/src/index.js.map +1 -1
  30. package/dist/src/providers/bedrock.d.ts.map +1 -1
  31. package/dist/src/providers/bedrock.js +28 -9
  32. package/dist/src/providers/bedrock.js.map +1 -1
  33. package/dist/src/providers/browser.js +1 -1
  34. package/dist/src/providers/browser.js.map +1 -1
  35. package/dist/src/providers/defaults.d.ts +1 -0
  36. package/dist/src/providers/defaults.d.ts.map +1 -1
  37. package/dist/src/providers/defaults.js +11 -0
  38. package/dist/src/providers/defaults.js.map +1 -1
  39. package/dist/src/providers/http.d.ts.map +1 -1
  40. package/dist/src/providers/http.js +39 -63
  41. package/dist/src/providers/http.js.map +1 -1
  42. package/dist/src/redteam/commands/run.d.ts +2 -0
  43. package/dist/src/redteam/commands/run.d.ts.map +1 -1
  44. package/dist/src/redteam/commands/run.js +41 -31
  45. package/dist/src/redteam/commands/run.js.map +1 -1
  46. package/dist/src/redteam/constants.d.ts +2 -2
  47. package/dist/src/redteam/constants.d.ts.map +1 -1
  48. package/dist/src/redteam/constants.js +3 -6
  49. package/dist/src/redteam/constants.js.map +1 -1
  50. package/dist/src/redteam/plugins/base.d.ts.map +1 -1
  51. package/dist/src/redteam/plugins/base.js +3 -0
  52. package/dist/src/redteam/plugins/base.js.map +1 -1
  53. package/dist/src/redteam/providers/crescendo/index.d.ts +1 -0
  54. package/dist/src/redteam/providers/crescendo/index.d.ts.map +1 -1
  55. package/dist/src/redteam/providers/crescendo/index.js +58 -3
  56. package/dist/src/redteam/providers/crescendo/index.js.map +1 -1
  57. package/dist/src/redteam/providers/iterative.js +4 -4
  58. package/dist/src/redteam/providers/iterative.js.map +1 -1
  59. package/dist/src/redteam/providers/iterativeTree.d.ts.map +1 -1
  60. package/dist/src/redteam/providers/iterativeTree.js +5 -4
  61. package/dist/src/redteam/providers/iterativeTree.js.map +1 -1
  62. package/dist/src/redteam/shared.d.ts.map +1 -1
  63. package/dist/src/redteam/shared.js +4 -1
  64. package/dist/src/redteam/shared.js.map +1 -1
  65. package/dist/src/types/env.d.ts +2 -0
  66. package/dist/src/types/env.d.ts.map +1 -1
  67. package/dist/src/types/index.d.ts +1215 -342
  68. package/dist/src/types/index.d.ts.map +1 -1
  69. package/dist/src/util/convertEvalResultsToTable.d.ts.map +1 -1
  70. package/dist/src/util/convertEvalResultsToTable.js +14 -0
  71. package/dist/src/util/convertEvalResultsToTable.js.map +1 -1
  72. package/dist/src/util/index.d.ts +10 -4
  73. package/dist/src/util/index.d.ts.map +1 -1
  74. package/dist/src/validators/providers.d.ts +71 -2
  75. package/dist/src/validators/providers.d.ts.map +1 -1
  76. package/dist/src/validators/providers.js +3 -0
  77. package/dist/src/validators/providers.js.map +1 -1
  78. package/dist/src/validators/redteam.d.ts +24 -0
  79. package/dist/src/validators/redteam.d.ts.map +1 -1
  80. package/dist/test/assertions/index.test.js +0 -30
  81. package/dist/test/assertions/index.test.js.map +1 -1
  82. package/dist/test/assertions/python.test.js +35 -0
  83. package/dist/test/assertions/python.test.js.map +1 -1
  84. package/dist/test/factories/evalFactory.d.ts +35 -8
  85. package/dist/test/factories/evalFactory.d.ts.map +1 -1
  86. package/dist/test/fetch.test.js +147 -19
  87. package/dist/test/fetch.test.js.map +1 -1
  88. package/dist/test/index.test.js +2 -0
  89. package/dist/test/index.test.js.map +1 -1
  90. package/dist/test/providers/bedrock.test.js +38 -0
  91. package/dist/test/providers/bedrock.test.js.map +1 -1
  92. package/dist/test/providers/defaults.test.d.ts +2 -0
  93. package/dist/test/providers/defaults.test.d.ts.map +1 -0
  94. package/dist/test/providers/defaults.test.js +77 -0
  95. package/dist/test/providers/defaults.test.js.map +1 -0
  96. package/dist/test/providers/http.test.js +65 -9
  97. package/dist/test/providers/http.test.js.map +1 -1
  98. package/dist/tsconfig.tsbuildinfo +1 -1
  99. package/package.json +9 -9
@@ -31,6 +31,7 @@ export default class EvalFactory {
31
31
  WATSONX_AI_APIKEY?: string | undefined;
32
32
  WATSONX_AI_PROJECT_ID?: string | undefined;
33
33
  WATSONX_AI_BEARER_TOKEN?: string | undefined;
34
+ WATSONX_AI_AUTH_TYPE?: string | undefined;
34
35
  AZURE_CLIENT_SECRET?: string | undefined;
35
36
  AZURE_CLIENT_ID?: string | undefined;
36
37
  AZURE_TENANT_ID?: string | undefined;
@@ -71,6 +72,8 @@ export default class EvalFactory {
71
72
  VERTEX_PROJECT_ID?: string | undefined;
72
73
  VERTEX_PUBLISHER?: string | undefined;
73
74
  VERTEX_REGION?: string | undefined;
75
+ PROMPTFOO_CA_CERT_PATH?: string | undefined;
76
+ PROMPTFOO_INSECURE_SSL?: string | undefined;
74
77
  } | undefined;
75
78
  metadata?: Record<string, any> | undefined;
76
79
  description?: string | undefined;
@@ -115,6 +118,7 @@ export default class EvalFactory {
115
118
  WATSONX_AI_APIKEY?: string | undefined;
116
119
  WATSONX_AI_PROJECT_ID?: string | undefined;
117
120
  WATSONX_AI_BEARER_TOKEN?: string | undefined;
121
+ WATSONX_AI_AUTH_TYPE?: string | undefined;
118
122
  AZURE_CLIENT_SECRET?: string | undefined;
119
123
  AZURE_CLIENT_ID?: string | undefined;
120
124
  AZURE_TENANT_ID?: string | undefined;
@@ -155,6 +159,8 @@ export default class EvalFactory {
155
159
  VERTEX_PROJECT_ID?: string | undefined;
156
160
  VERTEX_PUBLISHER?: string | undefined;
157
161
  VERTEX_REGION?: string | undefined;
162
+ PROMPTFOO_CA_CERT_PATH?: string | undefined;
163
+ PROMPTFOO_INSECURE_SSL?: string | undefined;
158
164
  } | undefined;
159
165
  } | (((args_0: string, args_1: {
160
166
  vars: Record<string, string | {}>;
@@ -197,6 +203,7 @@ export default class EvalFactory {
197
203
  WATSONX_AI_APIKEY?: string | undefined;
198
204
  WATSONX_AI_PROJECT_ID?: string | undefined;
199
205
  WATSONX_AI_BEARER_TOKEN?: string | undefined;
206
+ WATSONX_AI_AUTH_TYPE?: string | undefined;
200
207
  AZURE_CLIENT_SECRET?: string | undefined;
201
208
  AZURE_CLIENT_ID?: string | undefined;
202
209
  AZURE_TENANT_ID?: string | undefined;
@@ -237,6 +244,8 @@ export default class EvalFactory {
237
244
  VERTEX_PROJECT_ID?: string | undefined;
238
245
  VERTEX_PUBLISHER?: string | undefined;
239
246
  VERTEX_REGION?: string | undefined;
247
+ PROMPTFOO_CA_CERT_PATH?: string | undefined;
248
+ PROMPTFOO_INSECURE_SSL?: string | undefined;
240
249
  } | undefined;
241
250
  }>)[] | undefined;
242
251
  tests?: string | (string | {
@@ -286,6 +295,7 @@ export default class EvalFactory {
286
295
  WATSONX_AI_APIKEY?: string | undefined;
287
296
  WATSONX_AI_PROJECT_ID?: string | undefined;
288
297
  WATSONX_AI_BEARER_TOKEN?: string | undefined;
298
+ WATSONX_AI_AUTH_TYPE?: string | undefined;
289
299
  AZURE_CLIENT_SECRET?: string | undefined;
290
300
  AZURE_CLIENT_ID?: string | undefined;
291
301
  AZURE_TENANT_ID?: string | undefined;
@@ -326,6 +336,8 @@ export default class EvalFactory {
326
336
  VERTEX_PROJECT_ID?: string | undefined;
327
337
  VERTEX_PUBLISHER?: string | undefined;
328
338
  VERTEX_REGION?: string | undefined;
339
+ PROMPTFOO_CA_CERT_PATH?: string | undefined;
340
+ PROMPTFOO_INSECURE_SSL?: string | undefined;
329
341
  } | undefined;
330
342
  } | {
331
343
  callApi: import("../../src").CallApiFunction;
@@ -344,7 +356,7 @@ export default class EvalFactory {
344
356
  description?: string | undefined;
345
357
  providerOutput?: string | {} | undefined;
346
358
  assert?: ({
347
- type: "cost" | "moderation" | `promptfoo:redteam:${string}` | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-cost" | "not-moderation" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
359
+ type: "moderation" | `promptfoo:redteam:${string}` | "cost" | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-moderation" | "not-cost" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
348
360
  value?: import("../../src").AssertionValue | undefined;
349
361
  config?: Record<string, any> | undefined;
350
362
  provider?: any;
@@ -359,7 +371,7 @@ export default class EvalFactory {
359
371
  } | {
360
372
  type: "assert-set";
361
373
  assert: {
362
- type: "cost" | "moderation" | `promptfoo:redteam:${string}` | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-cost" | "not-moderation" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
374
+ type: "moderation" | `promptfoo:redteam:${string}` | "cost" | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-moderation" | "not-cost" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
363
375
  value?: import("../../src").AssertionValue | undefined;
364
376
  config?: Record<string, any> | undefined;
365
377
  provider?: any;
@@ -429,6 +441,7 @@ export default class EvalFactory {
429
441
  WATSONX_AI_APIKEY?: string | undefined;
430
442
  WATSONX_AI_PROJECT_ID?: string | undefined;
431
443
  WATSONX_AI_BEARER_TOKEN?: string | undefined;
444
+ WATSONX_AI_AUTH_TYPE?: string | undefined;
432
445
  AZURE_CLIENT_SECRET?: string | undefined;
433
446
  AZURE_CLIENT_ID?: string | undefined;
434
447
  AZURE_TENANT_ID?: string | undefined;
@@ -469,6 +482,8 @@ export default class EvalFactory {
469
482
  VERTEX_PROJECT_ID?: string | undefined;
470
483
  VERTEX_PUBLISHER?: string | undefined;
471
484
  VERTEX_REGION?: string | undefined;
485
+ PROMPTFOO_CA_CERT_PATH?: string | undefined;
486
+ PROMPTFOO_INSECURE_SSL?: string | undefined;
472
487
  } | undefined;
473
488
  } | {
474
489
  callApi: import("../../src").CallApiFunction;
@@ -487,7 +502,7 @@ export default class EvalFactory {
487
502
  description?: string | undefined;
488
503
  providerOutput?: string | {} | undefined;
489
504
  assert?: ({
490
- type: "cost" | "moderation" | `promptfoo:redteam:${string}` | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-cost" | "not-moderation" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
505
+ type: "moderation" | `promptfoo:redteam:${string}` | "cost" | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-moderation" | "not-cost" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
491
506
  value?: import("../../src").AssertionValue | undefined;
492
507
  config?: Record<string, any> | undefined;
493
508
  provider?: any;
@@ -502,7 +517,7 @@ export default class EvalFactory {
502
517
  } | {
503
518
  type: "assert-set";
504
519
  assert: {
505
- type: "cost" | "moderation" | `promptfoo:redteam:${string}` | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-cost" | "not-moderation" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
520
+ type: "moderation" | `promptfoo:redteam:${string}` | "cost" | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-moderation" | "not-cost" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
506
521
  value?: import("../../src").AssertionValue | undefined;
507
522
  config?: Record<string, any> | undefined;
508
523
  provider?: any;
@@ -569,6 +584,7 @@ export default class EvalFactory {
569
584
  WATSONX_AI_APIKEY?: string | undefined;
570
585
  WATSONX_AI_PROJECT_ID?: string | undefined;
571
586
  WATSONX_AI_BEARER_TOKEN?: string | undefined;
587
+ WATSONX_AI_AUTH_TYPE?: string | undefined;
572
588
  AZURE_CLIENT_SECRET?: string | undefined;
573
589
  AZURE_CLIENT_ID?: string | undefined;
574
590
  AZURE_TENANT_ID?: string | undefined;
@@ -609,6 +625,8 @@ export default class EvalFactory {
609
625
  VERTEX_PROJECT_ID?: string | undefined;
610
626
  VERTEX_PUBLISHER?: string | undefined;
611
627
  VERTEX_REGION?: string | undefined;
628
+ PROMPTFOO_CA_CERT_PATH?: string | undefined;
629
+ PROMPTFOO_INSECURE_SSL?: string | undefined;
612
630
  } | undefined;
613
631
  } | {
614
632
  callApi: import("../../src").CallApiFunction;
@@ -627,7 +645,7 @@ export default class EvalFactory {
627
645
  description?: string | undefined;
628
646
  providerOutput?: string | {} | undefined;
629
647
  assert?: ({
630
- type: "cost" | "moderation" | `promptfoo:redteam:${string}` | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-cost" | "not-moderation" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
648
+ type: "moderation" | `promptfoo:redteam:${string}` | "cost" | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-moderation" | "not-cost" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
631
649
  value?: import("../../src").AssertionValue | undefined;
632
650
  config?: Record<string, any> | undefined;
633
651
  provider?: any;
@@ -642,7 +660,7 @@ export default class EvalFactory {
642
660
  } | {
643
661
  type: "assert-set";
644
662
  assert: {
645
- type: "cost" | "moderation" | `promptfoo:redteam:${string}` | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-cost" | "not-moderation" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
663
+ type: "moderation" | `promptfoo:redteam:${string}` | "cost" | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-moderation" | "not-cost" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
646
664
  value?: import("../../src").AssertionValue | undefined;
647
665
  config?: Record<string, any> | undefined;
648
666
  provider?: any;
@@ -711,6 +729,7 @@ export default class EvalFactory {
711
729
  WATSONX_AI_APIKEY?: string | undefined;
712
730
  WATSONX_AI_PROJECT_ID?: string | undefined;
713
731
  WATSONX_AI_BEARER_TOKEN?: string | undefined;
732
+ WATSONX_AI_AUTH_TYPE?: string | undefined;
714
733
  AZURE_CLIENT_SECRET?: string | undefined;
715
734
  AZURE_CLIENT_ID?: string | undefined;
716
735
  AZURE_TENANT_ID?: string | undefined;
@@ -751,6 +770,8 @@ export default class EvalFactory {
751
770
  VERTEX_PROJECT_ID?: string | undefined;
752
771
  VERTEX_PUBLISHER?: string | undefined;
753
772
  VERTEX_REGION?: string | undefined;
773
+ PROMPTFOO_CA_CERT_PATH?: string | undefined;
774
+ PROMPTFOO_INSECURE_SSL?: string | undefined;
754
775
  } | undefined;
755
776
  } | {
756
777
  callApi: import("../../src").CallApiFunction;
@@ -768,7 +789,7 @@ export default class EvalFactory {
768
789
  }) | undefined;
769
790
  providerOutput?: string | {} | undefined;
770
791
  assert?: ({
771
- type: "cost" | "moderation" | `promptfoo:redteam:${string}` | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-cost" | "not-moderation" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
792
+ type: "moderation" | `promptfoo:redteam:${string}` | "cost" | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-moderation" | "not-cost" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
772
793
  value?: import("../../src").AssertionValue | undefined;
773
794
  config?: Record<string, any> | undefined;
774
795
  provider?: any;
@@ -783,7 +804,7 @@ export default class EvalFactory {
783
804
  } | {
784
805
  type: "assert-set";
785
806
  assert: {
786
- type: "cost" | "moderation" | `promptfoo:redteam:${string}` | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-cost" | "not-moderation" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
807
+ type: "moderation" | `promptfoo:redteam:${string}` | "cost" | "factuality" | "answer-relevance" | "bleu" | "classifier" | "contains-all" | "contains-any" | "contains-json" | "contains-sql" | "contains-xml" | "contains" | "context-faithfulness" | "context-recall" | "context-relevance" | "equals" | "g-eval" | "icontains-all" | "icontains-any" | "icontains" | "is-json" | "is-refusal" | "is-sql" | "is-valid-openai-function-call" | "is-valid-openai-tools-call" | "is-xml" | "javascript" | "latency" | "levenshtein" | "llm-rubric" | "model-graded-closedqa" | "model-graded-factuality" | "perplexity-score" | "perplexity" | "python" | "regex" | "rouge-n" | "similar" | "starts-with" | "webhook" | "not-moderation" | "not-cost" | "not-factuality" | "not-answer-relevance" | "not-bleu" | "not-classifier" | "not-contains-all" | "not-contains-any" | "not-contains-json" | "not-contains-sql" | "not-contains-xml" | "not-contains" | "not-context-faithfulness" | "not-context-recall" | "not-context-relevance" | "not-equals" | "not-g-eval" | "not-icontains-all" | "not-icontains-any" | "not-icontains" | "not-is-json" | "not-is-refusal" | "not-is-sql" | "not-is-valid-openai-function-call" | "not-is-valid-openai-tools-call" | "not-is-xml" | "not-javascript" | "not-latency" | "not-levenshtein" | "not-llm-rubric" | "not-model-graded-closedqa" | "not-model-graded-factuality" | "not-perplexity-score" | "not-perplexity" | "not-python" | "not-regex" | "not-rouge-n" | "not-similar" | "not-starts-with" | "not-webhook" | "select-best" | "human";
787
808
  value?: import("../../src").AssertionValue | undefined;
788
809
  config?: Record<string, any> | undefined;
789
810
  provider?: any;
@@ -902,6 +923,7 @@ export default class EvalFactory {
902
923
  WATSONX_AI_APIKEY?: string | undefined;
903
924
  WATSONX_AI_PROJECT_ID?: string | undefined;
904
925
  WATSONX_AI_BEARER_TOKEN?: string | undefined;
926
+ WATSONX_AI_AUTH_TYPE?: string | undefined;
905
927
  AZURE_CLIENT_SECRET?: string | undefined;
906
928
  AZURE_CLIENT_ID?: string | undefined;
907
929
  AZURE_TENANT_ID?: string | undefined;
@@ -942,6 +964,8 @@ export default class EvalFactory {
942
964
  VERTEX_PROJECT_ID?: string | undefined;
943
965
  VERTEX_PUBLISHER?: string | undefined;
944
966
  VERTEX_REGION?: string | undefined;
967
+ PROMPTFOO_CA_CERT_PATH?: string | undefined;
968
+ PROMPTFOO_INSECURE_SSL?: string | undefined;
945
969
  } | undefined;
946
970
  } | (((args_0: string, args_1: {
947
971
  vars: Record<string, string | {}>;
@@ -984,6 +1008,7 @@ export default class EvalFactory {
984
1008
  WATSONX_AI_APIKEY?: string | undefined;
985
1009
  WATSONX_AI_PROJECT_ID?: string | undefined;
986
1010
  WATSONX_AI_BEARER_TOKEN?: string | undefined;
1011
+ WATSONX_AI_AUTH_TYPE?: string | undefined;
987
1012
  AZURE_CLIENT_SECRET?: string | undefined;
988
1013
  AZURE_CLIENT_ID?: string | undefined;
989
1014
  AZURE_TENANT_ID?: string | undefined;
@@ -1024,6 +1049,8 @@ export default class EvalFactory {
1024
1049
  VERTEX_PROJECT_ID?: string | undefined;
1025
1050
  VERTEX_PUBLISHER?: string | undefined;
1026
1051
  VERTEX_REGION?: string | undefined;
1052
+ PROMPTFOO_CA_CERT_PATH?: string | undefined;
1053
+ PROMPTFOO_INSECURE_SSL?: string | undefined;
1027
1054
  } | undefined;
1028
1055
  }>)[] | undefined;
1029
1056
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"evalFactory.d.ts","sourceRoot":"","sources":["../../../test/factories/evalFactory.ts"],"names":[],"mappings":"AAIA,OAAO,IAAI,MAAM,uBAAuB,CAAC;AAGzC,MAAM,CAAC,OAAO,OAAO,WAAW;WACjB,MAAM;WAmJN,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI7B"}
1
+ {"version":3,"file":"evalFactory.d.ts","sourceRoot":"","sources":["../../../test/factories/evalFactory.ts"],"names":[],"mappings":"AAIA,OAAO,IAAI,MAAM,uBAAuB,CAAC;AAGzC,MAAM,CAAC,OAAO,OAAO,WAAW;WACjB,MAAM;WAmJN,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI7B"}
@@ -3,7 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ const fs_1 = __importDefault(require("fs"));
7
+ const path_1 = __importDefault(require("path"));
6
8
  const proxy_agent_1 = require("proxy-agent");
9
+ const cliState_1 = __importDefault(require("../src/cliState"));
7
10
  const constants_1 = require("../src/constants");
8
11
  const envars_1 = require("../src/envars");
9
12
  const fetch_1 = require("../src/fetch");
@@ -13,24 +16,37 @@ const utils_1 = require("./util/utils");
13
16
  jest.mock('../src/util/time', () => ({
14
17
  sleep: jest.fn().mockResolvedValue(undefined),
15
18
  }));
16
- jest.mock('proxy-agent');
19
+ jest.mock('proxy-agent', () => {
20
+ return {
21
+ ProxyAgent: jest.fn().mockImplementation((options) => ({
22
+ options,
23
+ addRequest: jest.fn(),
24
+ destroy: jest.fn(),
25
+ })),
26
+ };
27
+ });
17
28
  jest.mock('../src/logger');
18
29
  jest.mock('../src/envars', () => ({
19
- ...jest.requireActual('../src/envars'),
30
+ getEnvString: jest.fn().mockImplementation((key, defaultValue = '') => ''),
31
+ getEnvBool: jest.fn().mockImplementation((key, defaultValue = false) => false),
20
32
  getEnvInt: jest.fn().mockReturnValue(100),
21
- getEnvBool: jest.fn().mockReturnValue(false),
22
33
  }));
23
- jest.mock('../src/fetch', () => ({
24
- ...jest.requireActual('../src/fetch'),
25
- sleep: jest.fn(),
34
+ jest.mock('fs', () => ({
35
+ readFileSync: jest.fn(),
36
+ }));
37
+ jest.mock('../src/cliState', () => ({
38
+ default: {
39
+ basePath: undefined,
40
+ },
26
41
  }));
27
42
  describe('fetchWithProxy', () => {
28
43
  beforeEach(() => {
44
+ jest.clearAllMocks();
29
45
  jest.spyOn(global, 'fetch').mockImplementation();
30
46
  jest.mocked(proxy_agent_1.ProxyAgent).mockClear();
31
47
  });
32
48
  afterEach(() => {
33
- jest.clearAllMocks();
49
+ jest.resetAllMocks();
34
50
  });
35
51
  it('should add version header to all requests', async () => {
36
52
  const url = 'https://example.com/api';
@@ -118,7 +134,7 @@ describe('fetchWithProxy', () => {
118
134
  await (0, fetch_1.fetchWithProxy)(url);
119
135
  expect(global.fetch).toHaveBeenCalledWith('https://example.com/api', expect.objectContaining({
120
136
  headers: {
121
- Authorization: 'Basic dXNlcm5hbWU6', // Base64 encoded 'username:'
137
+ Authorization: 'Basic dXNlcm5hbWU6',
122
138
  'x-promptfoo-version': constants_1.VERSION,
123
139
  },
124
140
  }));
@@ -141,6 +157,111 @@ describe('fetchWithProxy', () => {
141
157
  },
142
158
  }));
143
159
  });
160
+ it('should use custom CA certificate when PROMPTFOO_CA_CERT_PATH is set', async () => {
161
+ const mockCertPath = path_1.default.normalize('/path/to/cert.pem');
162
+ const mockCertContent = 'mock-cert-content';
163
+ jest.mocked(envars_1.getEnvString).mockImplementation((key, defaultValue = '') => {
164
+ if (key === 'PROMPTFOO_CA_CERT_PATH') {
165
+ return mockCertPath;
166
+ }
167
+ return defaultValue;
168
+ });
169
+ jest.mocked(envars_1.getEnvBool).mockImplementation((key, defaultValue = false) => {
170
+ if (key === 'PROMPTFOO_INSECURE_SSL') {
171
+ return false;
172
+ }
173
+ return defaultValue;
174
+ });
175
+ jest.mocked(fs_1.default.readFileSync).mockReturnValue(mockCertContent);
176
+ const mockFetch = jest.fn().mockResolvedValue(new Response());
177
+ global.fetch = mockFetch;
178
+ await (0, fetch_1.fetchWithProxy)('https://example.com');
179
+ const actualPath = jest.mocked(fs_1.default.readFileSync).mock.calls[0][0];
180
+ const normalizedActual = path_1.default.normalize(actualPath).replace(/^\w:/, '');
181
+ const normalizedExpected = path_1.default.normalize(mockCertPath).replace(/^\w:/, '');
182
+ expect(normalizedActual).toBe(normalizedExpected);
183
+ expect(proxy_agent_1.ProxyAgent).toHaveBeenCalledWith(expect.objectContaining({
184
+ ca: mockCertContent,
185
+ rejectUnauthorized: true,
186
+ }));
187
+ });
188
+ it('should handle missing CA certificate file gracefully', async () => {
189
+ const mockCertPath = path_1.default.normalize('/path/to/nonexistent.pem');
190
+ jest.mocked(envars_1.getEnvString).mockImplementation((key, defaultValue = '') => {
191
+ if (key === 'PROMPTFOO_CA_CERT_PATH') {
192
+ return mockCertPath;
193
+ }
194
+ return defaultValue;
195
+ });
196
+ jest.mocked(fs_1.default.readFileSync).mockImplementation(() => {
197
+ throw new Error('File not found');
198
+ });
199
+ const mockFetch = jest.fn().mockResolvedValue(new Response());
200
+ global.fetch = mockFetch;
201
+ await (0, fetch_1.fetchWithProxy)('https://example.com');
202
+ const actualPath = jest.mocked(fs_1.default.readFileSync).mock.calls[0][0];
203
+ const normalizedActual = path_1.default.normalize(actualPath).replace(/^\w:/, '');
204
+ const normalizedExpected = path_1.default.normalize(mockCertPath).replace(/^\w:/, '');
205
+ expect(normalizedActual).toBe(normalizedExpected);
206
+ expect(proxy_agent_1.ProxyAgent).toHaveBeenCalledWith(expect.objectContaining({
207
+ rejectUnauthorized: true,
208
+ }));
209
+ });
210
+ it('should disable SSL verification when PROMPTFOO_INSECURE_SSL is true', async () => {
211
+ jest
212
+ .mocked(envars_1.getEnvString)
213
+ .mockImplementation((key, defaultValue = '') => defaultValue);
214
+ jest.mocked(envars_1.getEnvBool).mockImplementation((key, defaultValue = false) => {
215
+ if (key === 'PROMPTFOO_INSECURE_SSL') {
216
+ return true;
217
+ }
218
+ return defaultValue;
219
+ });
220
+ const mockFetch = jest.fn().mockResolvedValue(new Response());
221
+ global.fetch = mockFetch;
222
+ await (0, fetch_1.fetchWithProxy)('https://example.com');
223
+ expect(proxy_agent_1.ProxyAgent).toHaveBeenCalledWith(expect.objectContaining({
224
+ rejectUnauthorized: false,
225
+ }));
226
+ });
227
+ it('should resolve CA certificate path relative to basePath when available', async () => {
228
+ const mockBasePath = path_1.default.normalize('/base/path');
229
+ const mockCertPath = 'certs/cert.pem';
230
+ const mockCertContent = 'mock-cert-content';
231
+ // Update basePath in cliState
232
+ cliState_1.default.basePath = mockBasePath;
233
+ jest.mocked(envars_1.getEnvString).mockImplementation((key, defaultValue = '') => {
234
+ if (key === 'PROMPTFOO_CA_CERT_PATH') {
235
+ return mockCertPath;
236
+ }
237
+ return defaultValue;
238
+ });
239
+ jest.mocked(envars_1.getEnvBool).mockImplementation((key, defaultValue = false) => {
240
+ if (key === 'PROMPTFOO_INSECURE_SSL') {
241
+ return false;
242
+ }
243
+ return defaultValue;
244
+ });
245
+ jest.mocked(fs_1.default.readFileSync).mockReturnValue(mockCertContent);
246
+ const mockFetch = jest.fn().mockResolvedValue(new Response());
247
+ global.fetch = mockFetch;
248
+ await (0, fetch_1.fetchWithProxy)('https://example.com');
249
+ const expectedPath = path_1.default.normalize(path_1.default.join(mockBasePath, mockCertPath));
250
+ const actualPath = jest.mocked(fs_1.default.readFileSync).mock.calls[0][0];
251
+ const normalizedActual = path_1.default.normalize(actualPath).replace(/^\w:/, '');
252
+ const normalizedExpected = path_1.default.normalize(expectedPath).replace(/^\w:/, '');
253
+ const normalizedBasePath = path_1.default.normalize(mockBasePath).replace(/^\w:/, '');
254
+ const normalizedCertPath = path_1.default.normalize(mockCertPath);
255
+ expect(normalizedActual).toBe(normalizedExpected);
256
+ expect(normalizedActual).toContain(normalizedBasePath);
257
+ expect(normalizedActual).toContain(normalizedCertPath);
258
+ expect(proxy_agent_1.ProxyAgent).toHaveBeenCalledWith(expect.objectContaining({
259
+ ca: mockCertContent,
260
+ rejectUnauthorized: true,
261
+ }));
262
+ // Reset basePath
263
+ cliState_1.default.basePath = undefined;
264
+ });
144
265
  });
145
266
  describe('fetchWithTimeout', () => {
146
267
  beforeEach(() => {
@@ -232,7 +353,6 @@ describe('handleRateLimit', () => {
232
353
  }),
233
354
  });
234
355
  const promise = (0, fetch_1.handleRateLimit)(response);
235
- // No need to advance timers, sleep will resolve immediately
236
356
  await promise;
237
357
  expect(logger_1.default.debug).toHaveBeenCalledWith(expect.stringMatching(/Rate limited, waiting \d+ms before retry/));
238
358
  });
@@ -266,7 +386,7 @@ describe('fetchWithRetries', () => {
266
386
  jest.mocked(global.fetch).mockResolvedValueOnce(successResponse);
267
387
  await (0, fetch_1.fetchWithRetries)('https://example.com', {}, 1000, 0);
268
388
  expect(global.fetch).toHaveBeenCalledTimes(1);
269
- expect(time_1.sleep).not.toHaveBeenCalled(); // Should not sleep when retries=0
389
+ expect(time_1.sleep).not.toHaveBeenCalled();
270
390
  });
271
391
  it('should handle negative retry values by treating them as 0', async () => {
272
392
  const successResponse = (0, utils_1.createMockResponse)();
@@ -288,18 +408,24 @@ describe('fetchWithRetries', () => {
288
408
  expect(time_1.sleep).toHaveBeenCalledTimes(1); // Should only sleep once between attempts
289
409
  });
290
410
  it('should handle 5XX errors when PROMPTFOO_RETRY_5XX is true', async () => {
291
- jest.mocked(envars_1.getEnvBool).mockReturnValueOnce(true);
411
+ jest.mocked(envars_1.getEnvBool).mockImplementation((key) => {
412
+ if (key === 'PROMPTFOO_RETRY_5XX') {
413
+ return true;
414
+ }
415
+ return false;
416
+ });
292
417
  const errorResponse = (0, utils_1.createMockResponse)({
293
418
  status: 502,
294
419
  statusText: 'Bad Gateway',
295
420
  });
296
421
  const successResponse = (0, utils_1.createMockResponse)();
297
- jest
298
- .mocked(global.fetch)
422
+ const mockFetch = jest
423
+ .fn()
299
424
  .mockResolvedValueOnce(errorResponse)
300
425
  .mockResolvedValueOnce(successResponse);
426
+ global.fetch = mockFetch;
301
427
  await (0, fetch_1.fetchWithRetries)('https://example.com', {}, 1000, 2);
302
- expect(global.fetch).toHaveBeenCalledTimes(2);
428
+ expect(mockFetch).toHaveBeenCalledTimes(2);
303
429
  expect(time_1.sleep).toHaveBeenCalledTimes(1);
304
430
  });
305
431
  it('should handle rate limits with proper backoff', async () => {
@@ -310,19 +436,21 @@ describe('fetchWithRetries', () => {
310
436
  }),
311
437
  });
312
438
  const successResponse = (0, utils_1.createMockResponse)();
313
- jest
314
- .mocked(global.fetch)
439
+ const mockFetch = jest
440
+ .fn()
315
441
  .mockResolvedValueOnce(rateLimitedResponse)
316
442
  .mockResolvedValueOnce(successResponse);
443
+ global.fetch = mockFetch;
317
444
  await (0, fetch_1.fetchWithRetries)('https://example.com', {}, 1000, 2);
318
- expect(global.fetch).toHaveBeenCalledTimes(2);
445
+ expect(mockFetch).toHaveBeenCalledTimes(2);
319
446
  expect(logger_1.default.debug).toHaveBeenCalledWith(expect.stringContaining('Rate limited on URL'));
320
447
  expect(time_1.sleep).toHaveBeenCalledTimes(1);
321
448
  });
322
449
  it('should respect maximum retry count', async () => {
323
- jest.mocked(global.fetch).mockRejectedValue(new Error('Network error'));
450
+ const mockFetch = jest.fn().mockRejectedValue(new Error('Network error'));
451
+ global.fetch = mockFetch;
324
452
  await expect((0, fetch_1.fetchWithRetries)('https://example.com', {}, 1000, 2)).rejects.toThrow('Request failed after 2 retries: Network error');
325
- expect(global.fetch).toHaveBeenCalledTimes(3); // Initial attempt + 2 retries
453
+ expect(mockFetch).toHaveBeenCalledTimes(3); // Initial attempt + 2 retries
326
454
  expect(time_1.sleep).toHaveBeenCalledTimes(2);
327
455
  });
328
456
  });
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.test.js","sourceRoot":"","sources":["../../test/fetch.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch.test.js","sourceRoot":"","sources":["../../test/fetch.test.ts"],"names":[],"mappings":"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"}