promptfoo 0.98.0 → 0.99.1

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 (302) hide show
  1. package/README.md +2 -2
  2. package/dist/package.json +17 -14
  3. package/dist/src/__mocks__/esm.js +17 -7
  4. package/dist/src/__mocks__/esm.js.map +1 -1
  5. package/dist/src/app/assets/{index-D7I51A2q.js → index--9emYMXO.js} +268 -268
  6. package/dist/src/app/assets/index-CBwNqxkl.css +1 -0
  7. package/dist/src/app/assets/{index.es-COpBxjTX.js → index.es-C4p-sZzG.js} +1 -1
  8. package/dist/src/app/assets/{sync-BY_V2XfM.js → sync-CKFJhHjE.js} +1 -1
  9. package/dist/src/app/index.html +2 -2
  10. package/dist/src/assertions/index.d.ts +2 -2
  11. package/dist/src/assertions/index.d.ts.map +1 -1
  12. package/dist/src/assertions/rouge.js +17 -7
  13. package/dist/src/assertions/rouge.js.map +1 -1
  14. package/dist/src/assertions/sql.js +17 -7
  15. package/dist/src/assertions/sql.js.map +1 -1
  16. package/dist/src/commands/debug.d.ts +4 -0
  17. package/dist/src/commands/debug.d.ts.map +1 -0
  18. package/dist/src/commands/debug.js +94 -0
  19. package/dist/src/commands/debug.js.map +1 -0
  20. package/dist/src/commands/eval.js +18 -8
  21. package/dist/src/commands/eval.js.map +1 -1
  22. package/dist/src/commands/generate/dataset.js +17 -7
  23. package/dist/src/commands/generate/dataset.js.map +1 -1
  24. package/dist/src/commands/import.js +17 -7
  25. package/dist/src/commands/import.js.map +1 -1
  26. package/dist/src/commands/list.js +17 -7
  27. package/dist/src/commands/list.js.map +1 -1
  28. package/dist/src/commands/share.d.ts.map +1 -1
  29. package/dist/src/commands/share.js +7 -2
  30. package/dist/src/commands/share.js.map +1 -1
  31. package/dist/src/commands/view.d.ts.map +1 -1
  32. package/dist/src/commands/view.js +6 -4
  33. package/dist/src/commands/view.js.map +1 -1
  34. package/dist/src/constants.d.ts +1 -0
  35. package/dist/src/constants.d.ts.map +1 -1
  36. package/dist/src/constants.js +2 -1
  37. package/dist/src/constants.js.map +1 -1
  38. package/dist/src/database/index.js +17 -7
  39. package/dist/src/database/index.js.map +1 -1
  40. package/dist/src/database/tables.d.ts +24 -24
  41. package/dist/src/esm.js +17 -7
  42. package/dist/src/esm.js.map +1 -1
  43. package/dist/src/evaluator.js +17 -7
  44. package/dist/src/evaluator.js.map +1 -1
  45. package/dist/src/evaluatorHelpers.d.ts +1 -0
  46. package/dist/src/evaluatorHelpers.d.ts.map +1 -1
  47. package/dist/src/evaluatorHelpers.js +36 -7
  48. package/dist/src/evaluatorHelpers.js.map +1 -1
  49. package/dist/src/fetch.d.ts.map +1 -1
  50. package/dist/src/fetch.js +16 -0
  51. package/dist/src/fetch.js.map +1 -1
  52. package/dist/src/globalConfig/globalConfig.js +17 -7
  53. package/dist/src/globalConfig/globalConfig.js.map +1 -1
  54. package/dist/src/googleSheets.js +17 -7
  55. package/dist/src/googleSheets.js.map +1 -1
  56. package/dist/src/index.js +17 -7
  57. package/dist/src/index.js.map +1 -1
  58. package/dist/src/main.js +2 -0
  59. package/dist/src/main.js.map +1 -1
  60. package/dist/src/migrate.js +17 -7
  61. package/dist/src/migrate.js.map +1 -1
  62. package/dist/src/prompts/processors/json.js +17 -7
  63. package/dist/src/prompts/processors/json.js.map +1 -1
  64. package/dist/src/prompts/processors/jsonl.js +17 -7
  65. package/dist/src/prompts/processors/jsonl.js.map +1 -1
  66. package/dist/src/prompts/processors/python.js +17 -7
  67. package/dist/src/prompts/processors/python.js.map +1 -1
  68. package/dist/src/prompts/processors/text.js +17 -7
  69. package/dist/src/prompts/processors/text.js.map +1 -1
  70. package/dist/src/prompts/processors/yaml.js +17 -7
  71. package/dist/src/prompts/processors/yaml.js.map +1 -1
  72. package/dist/src/providers/anthropic.d.ts.map +1 -1
  73. package/dist/src/providers/anthropic.js +25 -17
  74. package/dist/src/providers/anthropic.js.map +1 -1
  75. package/dist/src/providers/azure.js +17 -7
  76. package/dist/src/providers/azure.js.map +1 -1
  77. package/dist/src/providers/bam.js +17 -7
  78. package/dist/src/providers/bam.js.map +1 -1
  79. package/dist/src/providers/bedrock.js +17 -7
  80. package/dist/src/providers/bedrock.js.map +1 -1
  81. package/dist/src/providers/browser.js +17 -7
  82. package/dist/src/providers/browser.js.map +1 -1
  83. package/dist/src/providers/fal.js +17 -7
  84. package/dist/src/providers/fal.js.map +1 -1
  85. package/dist/src/providers/sequence.d.ts +11 -0
  86. package/dist/src/providers/sequence.d.ts.map +1 -0
  87. package/dist/src/providers/sequence.js +66 -0
  88. package/dist/src/providers/sequence.js.map +1 -0
  89. package/dist/src/providers/vertexUtil.js +17 -7
  90. package/dist/src/providers/vertexUtil.js.map +1 -1
  91. package/dist/src/providers/watsonx.js +17 -7
  92. package/dist/src/providers/watsonx.js.map +1 -1
  93. package/dist/src/providers.d.ts +3 -7
  94. package/dist/src/providers.d.ts.map +1 -1
  95. package/dist/src/providers.js +21 -7
  96. package/dist/src/providers.js.map +1 -1
  97. package/dist/src/redteam/commands/generate.d.ts.map +1 -1
  98. package/dist/src/redteam/commands/generate.js +41 -10
  99. package/dist/src/redteam/commands/generate.js.map +1 -1
  100. package/dist/src/redteam/commands/init.d.ts.map +1 -1
  101. package/dist/src/redteam/commands/init.js +43 -26
  102. package/dist/src/redteam/commands/init.js.map +1 -1
  103. package/dist/src/redteam/commands/poison.js +17 -7
  104. package/dist/src/redteam/commands/poison.js.map +1 -1
  105. package/dist/src/redteam/commands/report.d.ts.map +1 -1
  106. package/dist/src/redteam/commands/report.js +11 -3
  107. package/dist/src/redteam/commands/report.js.map +1 -1
  108. package/dist/src/redteam/commands/run.js +17 -7
  109. package/dist/src/redteam/commands/run.js.map +1 -1
  110. package/dist/src/redteam/commands/setup.d.ts.map +1 -1
  111. package/dist/src/redteam/commands/setup.js +11 -3
  112. package/dist/src/redteam/commands/setup.js.map +1 -1
  113. package/dist/src/redteam/constants.d.ts +6 -6
  114. package/dist/src/redteam/constants.d.ts.map +1 -1
  115. package/dist/src/redteam/constants.js +25 -10
  116. package/dist/src/redteam/constants.js.map +1 -1
  117. package/dist/src/redteam/index.d.ts.map +1 -1
  118. package/dist/src/redteam/index.js +84 -28
  119. package/dist/src/redteam/index.js.map +1 -1
  120. package/dist/src/redteam/plugins/base.d.ts.map +1 -1
  121. package/dist/src/redteam/plugins/base.js +2 -0
  122. package/dist/src/redteam/plugins/base.js.map +1 -1
  123. package/dist/src/redteam/plugins/bfla.d.ts +5 -0
  124. package/dist/src/redteam/plugins/bfla.d.ts.map +1 -1
  125. package/dist/src/redteam/plugins/bfla.js +11 -0
  126. package/dist/src/redteam/plugins/bfla.js.map +1 -1
  127. package/dist/src/redteam/plugins/bola.d.ts +5 -0
  128. package/dist/src/redteam/plugins/bola.d.ts.map +1 -1
  129. package/dist/src/redteam/plugins/bola.js +11 -0
  130. package/dist/src/redteam/plugins/bola.js.map +1 -1
  131. package/dist/src/redteam/plugins/competitors.d.ts +6 -0
  132. package/dist/src/redteam/plugins/competitors.d.ts.map +1 -1
  133. package/dist/src/redteam/plugins/competitors.js +48 -1
  134. package/dist/src/redteam/plugins/competitors.js.map +1 -1
  135. package/dist/src/redteam/plugins/contracts.d.ts +5 -1
  136. package/dist/src/redteam/plugins/contracts.d.ts.map +1 -1
  137. package/dist/src/redteam/plugins/contracts.js +19 -0
  138. package/dist/src/redteam/plugins/contracts.js.map +1 -1
  139. package/dist/src/redteam/plugins/harmful/constants.d.ts.map +1 -1
  140. package/dist/src/redteam/plugins/harmful/constants.js +0 -72
  141. package/dist/src/redteam/plugins/harmful/constants.js.map +1 -1
  142. package/dist/src/redteam/plugins/hijacking.d.ts.map +1 -1
  143. package/dist/src/redteam/plugins/hijacking.js +2 -1
  144. package/dist/src/redteam/plugins/hijacking.js.map +1 -1
  145. package/dist/src/redteam/plugins/imitation.d.ts +5 -1
  146. package/dist/src/redteam/plugins/imitation.d.ts.map +1 -1
  147. package/dist/src/redteam/plugins/imitation.js +17 -0
  148. package/dist/src/redteam/plugins/imitation.js.map +1 -1
  149. package/dist/src/redteam/plugins/index.d.ts.map +1 -1
  150. package/dist/src/redteam/plugins/index.js +11 -1
  151. package/dist/src/redteam/plugins/index.js.map +1 -1
  152. package/dist/src/redteam/plugins/overreliance.d.ts +5 -1
  153. package/dist/src/redteam/plugins/overreliance.d.ts.map +1 -1
  154. package/dist/src/redteam/plugins/overreliance.js +31 -2
  155. package/dist/src/redteam/plugins/overreliance.js.map +1 -1
  156. package/dist/src/redteam/plugins/policy.d.ts.map +1 -1
  157. package/dist/src/redteam/plugins/policy.js +3 -2
  158. package/dist/src/redteam/plugins/policy.js.map +1 -1
  159. package/dist/src/redteam/plugins/politics.d.ts +5 -1
  160. package/dist/src/redteam/plugins/politics.d.ts.map +1 -1
  161. package/dist/src/redteam/plugins/politics.js +21 -1
  162. package/dist/src/redteam/plugins/politics.js.map +1 -1
  163. package/dist/src/redteam/plugins/religion.d.ts +5 -0
  164. package/dist/src/redteam/plugins/religion.d.ts.map +1 -1
  165. package/dist/src/redteam/plugins/religion.js +28 -0
  166. package/dist/src/redteam/plugins/religion.js.map +1 -1
  167. package/dist/src/redteam/plugins/shellInjection.d.ts.map +1 -1
  168. package/dist/src/redteam/plugins/shellInjection.js +6 -1
  169. package/dist/src/redteam/plugins/shellInjection.js.map +1 -1
  170. package/dist/src/redteam/providers/goat.d.ts.map +1 -1
  171. package/dist/src/redteam/providers/goat.js +57 -49
  172. package/dist/src/redteam/providers/goat.js.map +1 -1
  173. package/dist/src/redteam/providers/shared.js +17 -7
  174. package/dist/src/redteam/providers/shared.js.map +1 -1
  175. package/dist/src/redteam/shared.d.ts +4 -0
  176. package/dist/src/redteam/shared.d.ts.map +1 -0
  177. package/dist/src/redteam/shared.js +17 -0
  178. package/dist/src/redteam/shared.js.map +1 -0
  179. package/dist/src/redteam/strategies/citation.d.ts +3 -0
  180. package/dist/src/redteam/strategies/citation.d.ts.map +1 -0
  181. package/dist/src/redteam/strategies/citation.js +96 -0
  182. package/dist/src/redteam/strategies/citation.js.map +1 -0
  183. package/dist/src/redteam/strategies/index.d.ts.map +1 -1
  184. package/dist/src/redteam/strategies/index.js +20 -0
  185. package/dist/src/redteam/strategies/index.js.map +1 -1
  186. package/dist/src/redteam/strategies/iterative.d.ts +1 -1
  187. package/dist/src/redteam/strategies/iterative.d.ts.map +1 -1
  188. package/dist/src/redteam/strategies/promptInjections/index.js +17 -7
  189. package/dist/src/redteam/strategies/promptInjections/index.js.map +1 -1
  190. package/dist/src/redteam/strategies/singleTurnComposite.d.ts +3 -0
  191. package/dist/src/redteam/strategies/singleTurnComposite.d.ts.map +1 -0
  192. package/dist/src/redteam/strategies/singleTurnComposite.js +89 -0
  193. package/dist/src/redteam/strategies/singleTurnComposite.js.map +1 -0
  194. package/dist/src/redteam/types.d.ts +11 -2
  195. package/dist/src/redteam/types.d.ts.map +1 -1
  196. package/dist/src/server/index.js +4 -2
  197. package/dist/src/server/index.js.map +1 -1
  198. package/dist/src/server/server.d.ts +1 -7
  199. package/dist/src/server/server.d.ts.map +1 -1
  200. package/dist/src/server/server.js +6 -46
  201. package/dist/src/server/server.js.map +1 -1
  202. package/dist/src/testCases.js +18 -8
  203. package/dist/src/testCases.js.map +1 -1
  204. package/dist/src/types/index.d.ts +676 -656
  205. package/dist/src/types/index.d.ts.map +1 -1
  206. package/dist/src/types/index.js +10 -2
  207. package/dist/src/types/index.js.map +1 -1
  208. package/dist/src/util/config/load.js +17 -7
  209. package/dist/src/util/config/load.js.map +1 -1
  210. package/dist/src/util/config/manage.js +17 -7
  211. package/dist/src/util/config/manage.js.map +1 -1
  212. package/dist/src/util/index.d.ts +8 -8
  213. package/dist/src/util/index.js +17 -7
  214. package/dist/src/util/index.js.map +1 -1
  215. package/dist/src/util/server.d.ts +10 -0
  216. package/dist/src/util/server.d.ts.map +1 -0
  217. package/dist/src/util/server.js +74 -0
  218. package/dist/src/util/server.js.map +1 -0
  219. package/dist/src/validators/redteam.d.ts +9 -5
  220. package/dist/src/validators/redteam.d.ts.map +1 -1
  221. package/dist/src/validators/redteam.js +4 -1
  222. package/dist/src/validators/redteam.js.map +1 -1
  223. package/dist/test/assertions/index.test.js +17 -7
  224. package/dist/test/assertions/index.test.js.map +1 -1
  225. package/dist/test/assertions/utils.test.js +17 -7
  226. package/dist/test/assertions/utils.test.js.map +1 -1
  227. package/dist/test/commands/init.test.js +17 -7
  228. package/dist/test/commands/init.test.js.map +1 -1
  229. package/dist/test/evaluatorHelpers.test.js +17 -7
  230. package/dist/test/evaluatorHelpers.test.js.map +1 -1
  231. package/dist/test/factories/evalFactory.d.ts +16 -16
  232. package/dist/test/fetch.test.js +15 -36
  233. package/dist/test/fetch.test.js.map +1 -1
  234. package/dist/test/globalConfig.test.js +17 -7
  235. package/dist/test/globalConfig.test.js.map +1 -1
  236. package/dist/test/index.test.js +21 -8
  237. package/dist/test/index.test.js.map +1 -1
  238. package/dist/test/matchers.test.js +17 -7
  239. package/dist/test/matchers.test.js.map +1 -1
  240. package/dist/test/models/eval.test.js +17 -7
  241. package/dist/test/models/eval.test.js.map +1 -1
  242. package/dist/test/prompts/index.test.js +17 -7
  243. package/dist/test/prompts/index.test.js.map +1 -1
  244. package/dist/test/prompts/processors/json.test.js +17 -7
  245. package/dist/test/prompts/processors/json.test.js.map +1 -1
  246. package/dist/test/prompts/processors/jsonl.test.js +17 -7
  247. package/dist/test/prompts/processors/jsonl.test.js.map +1 -1
  248. package/dist/test/prompts/processors/markdown.test.js +17 -7
  249. package/dist/test/prompts/processors/markdown.test.js.map +1 -1
  250. package/dist/test/prompts/processors/python.test.js +17 -7
  251. package/dist/test/prompts/processors/python.test.js.map +1 -1
  252. package/dist/test/prompts/processors/text.test.js +17 -7
  253. package/dist/test/prompts/processors/text.test.js.map +1 -1
  254. package/dist/test/prompts/processors/yaml.test.js +17 -7
  255. package/dist/test/prompts/processors/yaml.test.js.map +1 -1
  256. package/dist/test/providers/index.test.js +17 -7
  257. package/dist/test/providers/index.test.js.map +1 -1
  258. package/dist/test/providers/palm.test.js +17 -7
  259. package/dist/test/providers/palm.test.js.map +1 -1
  260. package/dist/test/providers/scriptCompletion.test.js +17 -7
  261. package/dist/test/providers/scriptCompletion.test.js.map +1 -1
  262. package/dist/test/providers/vertex.test.js +17 -7
  263. package/dist/test/providers/vertex.test.js.map +1 -1
  264. package/dist/test/providers/watsonx.test.js +17 -7
  265. package/dist/test/providers/watsonx.test.js.map +1 -1
  266. package/dist/test/python/pythonUtils.test.js +17 -7
  267. package/dist/test/python/pythonUtils.test.js.map +1 -1
  268. package/dist/test/redteam/commands/generate.test.js +75 -7
  269. package/dist/test/redteam/commands/generate.test.js.map +1 -1
  270. package/dist/test/redteam/index.test.js +17 -7
  271. package/dist/test/redteam/index.test.js.map +1 -1
  272. package/dist/test/redteam/plugins/base.test.js +8 -0
  273. package/dist/test/redteam/plugins/base.test.js.map +1 -1
  274. package/dist/test/redteam/plugins/index.test.js +59 -0
  275. package/dist/test/redteam/plugins/index.test.js.map +1 -1
  276. package/dist/test/redteam/providers/goat.test.js +26 -0
  277. package/dist/test/redteam/providers/goat.test.js.map +1 -1
  278. package/dist/test/server/providers.test.js +20 -9
  279. package/dist/test/server/providers.test.js.map +1 -1
  280. package/dist/test/testCases.test.js +38 -7
  281. package/dist/test/testCases.test.js.map +1 -1
  282. package/dist/test/types.test.js +7 -8
  283. package/dist/test/types.test.js.map +1 -1
  284. package/dist/test/util/config/load.test.js +17 -7
  285. package/dist/test/util/config/load.test.js.map +1 -1
  286. package/dist/test/util/config/main.test.js +17 -7
  287. package/dist/test/util/config/main.test.js.map +1 -1
  288. package/dist/test/util/index.test.js +17 -7
  289. package/dist/test/util/index.test.js.map +1 -1
  290. package/dist/test/util/server.test.d.ts +2 -0
  291. package/dist/test/util/server.test.d.ts.map +1 -0
  292. package/dist/test/util/server.test.js +114 -0
  293. package/dist/test/util/server.test.js.map +1 -0
  294. package/dist/test/util/transform.test.js +17 -7
  295. package/dist/test/util/transform.test.js.map +1 -1
  296. package/dist/test/util/utils.d.ts +1 -0
  297. package/dist/test/util/utils.d.ts.map +1 -1
  298. package/dist/test/util/utils.js +25 -0
  299. package/dist/test/util/utils.js.map +1 -1
  300. package/dist/tsconfig.tsbuildinfo +1 -1
  301. package/package.json +17 -14
  302. package/dist/src/app/assets/index-DatcZSwS.css +0 -1
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
37
  };
@@ -94,7 +104,7 @@ async function readStandaloneTestsFile(varsPath, basePath = '') {
94
104
  telemetry_1.default.recordAndSendOnce('feature_used', {
95
105
  feature: 'csv tests file - local',
96
106
  });
97
- rows = (0, sync_1.parse)(fs.readFileSync(resolvedVarsPath, 'utf-8'), { columns: true });
107
+ rows = (0, sync_1.parse)(fs.readFileSync(resolvedVarsPath, 'utf-8'), { columns: true, bom: true });
98
108
  }
99
109
  else if (fileExtension === 'json') {
100
110
  telemetry_1.default.recordAndSendOnce('feature_used', {
@@ -1 +1 @@
1
- {"version":3,"file":"testCases.js","sourceRoot":"","sources":["../../src/testCases.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testCases.js","sourceRoot":"","sources":["../../src/testCases.ts"],"names":[],"mappings":"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"}