promptfoo 0.112.4 → 0.112.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 (134) hide show
  1. package/dist/package.json +40 -35
  2. package/dist/src/app/assets/{index-CjtcgXub.js → index-1DW9E3Nc.js} +125 -125
  3. package/dist/src/app/assets/{index.es-CTVmcuv3.js → index.es-CRVd21wS.js} +1 -1
  4. package/dist/src/app/assets/{source-map-support-DcTymX4v.js → source-map-support-BfNnIDrr.js} +1 -1
  5. package/dist/src/app/assets/{sync-DT4gZaAv.js → sync-B6RviJxk.js} +1 -1
  6. package/dist/src/app/index.html +1 -1
  7. package/dist/src/commands/eval.d.ts.map +1 -1
  8. package/dist/src/commands/eval.js +5 -5
  9. package/dist/src/commands/eval.js.map +1 -1
  10. package/dist/src/commands/init.d.ts.map +1 -1
  11. package/dist/src/commands/init.js +0 -2
  12. package/dist/src/commands/init.js.map +1 -1
  13. package/dist/src/commands/modelScan.d.ts.map +1 -1
  14. package/dist/src/commands/modelScan.js +0 -4
  15. package/dist/src/commands/modelScan.js.map +1 -1
  16. package/dist/src/commands/share.d.ts.map +1 -1
  17. package/dist/src/commands/share.js +0 -3
  18. package/dist/src/commands/share.js.map +1 -1
  19. package/dist/src/evaluator.d.ts.map +1 -1
  20. package/dist/src/evaluator.js +10 -1
  21. package/dist/src/evaluator.js.map +1 -1
  22. package/dist/src/evaluatorHelpers.d.ts.map +1 -1
  23. package/dist/src/evaluatorHelpers.js +18 -1
  24. package/dist/src/evaluatorHelpers.js.map +1 -1
  25. package/dist/src/fetch.d.ts +0 -1
  26. package/dist/src/fetch.d.ts.map +1 -1
  27. package/dist/src/fetch.js +17 -13
  28. package/dist/src/fetch.js.map +1 -1
  29. package/dist/src/main.d.ts +5 -1
  30. package/dist/src/main.d.ts.map +1 -1
  31. package/dist/src/main.js +31 -5
  32. package/dist/src/main.js.map +1 -1
  33. package/dist/src/providers/anthropic/messages.d.ts.map +1 -1
  34. package/dist/src/providers/anthropic/messages.js +1 -0
  35. package/dist/src/providers/anthropic/messages.js.map +1 -1
  36. package/dist/src/providers/azure/chat.d.ts.map +1 -1
  37. package/dist/src/providers/azure/chat.js +1 -0
  38. package/dist/src/providers/azure/chat.js.map +1 -1
  39. package/dist/src/providers/bedrock.d.ts +4 -3
  40. package/dist/src/providers/bedrock.d.ts.map +1 -1
  41. package/dist/src/providers/bedrock.js +110 -70
  42. package/dist/src/providers/bedrock.js.map +1 -1
  43. package/dist/src/providers/google/ai.studio.d.ts +10 -1
  44. package/dist/src/providers/google/ai.studio.d.ts.map +1 -1
  45. package/dist/src/providers/google/ai.studio.js +64 -1
  46. package/dist/src/providers/google/ai.studio.js.map +1 -1
  47. package/dist/src/providers/google/shared.d.ts.map +1 -1
  48. package/dist/src/providers/google/shared.js +14 -3
  49. package/dist/src/providers/google/shared.js.map +1 -1
  50. package/dist/src/providers/google/vertex.d.ts.map +1 -1
  51. package/dist/src/providers/google/vertex.js +1 -0
  52. package/dist/src/providers/google/vertex.js.map +1 -1
  53. package/dist/src/providers/http.js +2 -2
  54. package/dist/src/providers/http.js.map +1 -1
  55. package/dist/src/providers/mcp/client.d.ts.map +1 -1
  56. package/dist/src/providers/mcp/client.js +8 -4
  57. package/dist/src/providers/mcp/client.js.map +1 -1
  58. package/dist/src/providers/openai/chat.d.ts.map +1 -1
  59. package/dist/src/providers/openai/chat.js +1 -0
  60. package/dist/src/providers/openai/chat.js.map +1 -1
  61. package/dist/src/providers/perplexity.d.ts +75 -0
  62. package/dist/src/providers/perplexity.d.ts.map +1 -0
  63. package/dist/src/providers/perplexity.js +154 -0
  64. package/dist/src/providers/perplexity.js.map +1 -0
  65. package/dist/src/providers/registry.d.ts.map +1 -1
  66. package/dist/src/providers/registry.js +4 -9
  67. package/dist/src/providers/registry.js.map +1 -1
  68. package/dist/src/providers/sagemaker.d.ts +1 -5
  69. package/dist/src/providers/sagemaker.d.ts.map +1 -1
  70. package/dist/src/providers/scriptBasedProvider.js +1 -1
  71. package/dist/src/providers/scriptBasedProvider.js.map +1 -1
  72. package/dist/src/redteam/commands/generate.d.ts.map +1 -1
  73. package/dist/src/redteam/commands/generate.js +14 -6
  74. package/dist/src/redteam/commands/generate.js.map +1 -1
  75. package/dist/src/redteam/commands/poison.d.ts.map +1 -1
  76. package/dist/src/redteam/commands/poison.js +1 -5
  77. package/dist/src/redteam/commands/poison.js.map +1 -1
  78. package/dist/src/redteam/commands/run.d.ts.map +1 -1
  79. package/dist/src/redteam/commands/run.js +1 -39
  80. package/dist/src/redteam/commands/run.js.map +1 -1
  81. package/dist/src/redteam/constants.d.ts +23 -8
  82. package/dist/src/redteam/constants.d.ts.map +1 -1
  83. package/dist/src/redteam/constants.js +101 -16
  84. package/dist/src/redteam/constants.js.map +1 -1
  85. package/dist/src/redteam/graders.d.ts.map +1 -1
  86. package/dist/src/redteam/graders.js +1 -0
  87. package/dist/src/redteam/graders.js.map +1 -1
  88. package/dist/src/redteam/plugins/harmful/graders.d.ts +4 -0
  89. package/dist/src/redteam/plugins/harmful/graders.d.ts.map +1 -1
  90. package/dist/src/redteam/plugins/harmful/graders.js +49 -1
  91. package/dist/src/redteam/plugins/harmful/graders.js.map +1 -1
  92. package/dist/src/redteam/plugins/index.d.ts.map +1 -1
  93. package/dist/src/redteam/plugins/index.js +6 -1
  94. package/dist/src/redteam/plugins/index.js.map +1 -1
  95. package/dist/src/redteam/plugins/pii.d.ts.map +1 -1
  96. package/dist/src/redteam/plugins/pii.js +5 -0
  97. package/dist/src/redteam/plugins/pii.js.map +1 -1
  98. package/dist/src/redteam/plugins/shellInjection.d.ts.map +1 -1
  99. package/dist/src/redteam/plugins/shellInjection.js +4 -2
  100. package/dist/src/redteam/plugins/shellInjection.js.map +1 -1
  101. package/dist/src/redteam/providers/crescendo/index.d.ts +1 -1
  102. package/dist/src/redteam/providers/crescendo/index.d.ts.map +1 -1
  103. package/dist/src/redteam/providers/crescendo/index.js +1 -1
  104. package/dist/src/redteam/providers/crescendo/index.js.map +1 -1
  105. package/dist/src/redteam/providers/iterative.d.ts.map +1 -1
  106. package/dist/src/redteam/providers/iterative.js +5 -2
  107. package/dist/src/redteam/providers/iterative.js.map +1 -1
  108. package/dist/src/redteam/providers/iterativeTree.d.ts +13 -7
  109. package/dist/src/redteam/providers/iterativeTree.d.ts.map +1 -1
  110. package/dist/src/redteam/providers/iterativeTree.js +49 -27
  111. package/dist/src/redteam/providers/iterativeTree.js.map +1 -1
  112. package/dist/src/redteam/providers/prompts.d.ts.map +1 -1
  113. package/dist/src/redteam/providers/prompts.js +20 -2
  114. package/dist/src/redteam/providers/prompts.js.map +1 -1
  115. package/dist/src/redteam/types.d.ts +1 -0
  116. package/dist/src/redteam/types.d.ts.map +1 -1
  117. package/dist/src/types/index.d.ts +976 -2061
  118. package/dist/src/types/index.d.ts.map +1 -1
  119. package/dist/src/types/shared.d.ts +3 -3
  120. package/dist/src/util/config/load.d.ts.map +1 -1
  121. package/dist/src/util/config/load.js +2 -1
  122. package/dist/src/util/config/load.js.map +1 -1
  123. package/dist/src/util/file.d.ts +1 -2
  124. package/dist/src/util/file.d.ts.map +1 -1
  125. package/dist/src/util/file.js +4 -7
  126. package/dist/src/util/file.js.map +1 -1
  127. package/dist/src/util/formatDuration.d.ts +7 -0
  128. package/dist/src/util/formatDuration.d.ts.map +1 -0
  129. package/dist/src/util/formatDuration.js +27 -0
  130. package/dist/src/util/formatDuration.js.map +1 -0
  131. package/dist/src/validators/providers.d.ts +3 -3
  132. package/dist/src/validators/redteam.d.ts +5 -5
  133. package/dist/tsconfig.tsbuildinfo +1 -1
  134. package/package.json +40 -35
package/dist/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "promptfoo",
3
3
  "description": "LLM eval & testing toolkit",
4
4
  "author": "Ian Webster",
5
- "version": "0.112.4",
5
+ "version": "0.112.6",
6
6
  "license": "MIT",
7
7
  "type": "commonjs",
8
8
  "repository": {
@@ -53,8 +53,11 @@
53
53
  "format:check": "prettier --check .",
54
54
  "format": "prettier -w .",
55
55
  "jsonSchema:generate": "npx -y tsx scripts/generateJsonSchema.ts > site/static/config-schema.json | npx prettier --write site/static/config-schema.json",
56
- "l": "git diff --name-only --diff-filter=ACMRTUXB origin/main | grep -E '\\.(js|ts|tsx)$' | xargs eslint --max-warnings=0 --fix",
57
- "lint": "eslint . --max-warnings=0",
56
+ "l": "git diff --name-only --diff-filter=ACMRTUXB origin/main | grep -E '\\.(js|ts|tsx)$' | xargs eslint --max-warnings=0 --fix --no-warn-ignored",
57
+ "lint:site": "eslint site --max-warnings=0",
58
+ "lint:src": "eslint src --max-warnings=0",
59
+ "lint:tests": "eslint test --max-warnings=0",
60
+ "lint": "npm run lint:src",
58
61
  "local:web": "npm run dev --prefix src/app",
59
62
  "local": "ts-node --cwdMode --transpileOnly src/main.ts",
60
63
  "preversion": "command -v gh >/dev/null 2>&1 || (echo \"Error: GitHub CLI required.\" && exit 1) && [ \"$(git rev-parse --abbrev-ref HEAD)\" = \"main\" ] || (echo \"Error: Must be on main branch to version\" && exit 1) && git pull origin main && git checkout -b \"chore/bump-version-$(date +%s)\"",
@@ -112,14 +115,14 @@
112
115
  "sharp": "^0.33.5"
113
116
  },
114
117
  "devDependencies": {
115
- "@aws-sdk/client-bedrock-runtime": "^3.787.0",
116
- "@aws-sdk/credential-provider-sso": "^3.787.0",
117
- "@azure/identity": "^4.8.0",
118
- "@eslint/js": "^9.24.0",
119
- "@libsql/client": "^0.14.0",
120
- "@swc/cli": "^0.6.0",
121
- "@swc/core": "^1.11.21",
122
- "@swc/jest": "^0.2.37",
118
+ "@aws-sdk/client-bedrock-runtime": "^3.808.0",
119
+ "@aws-sdk/credential-provider-sso": "^3.808.0",
120
+ "@azure/identity": "^4.9.1",
121
+ "@eslint/js": "^9.26.0",
122
+ "@libsql/client": "^0.15.5",
123
+ "@swc/cli": "^0.7.7",
124
+ "@swc/core": "^1.11.24",
125
+ "@swc/jest": "^0.2.38",
123
126
  "@trivago/prettier-plugin-sort-imports": "^5.2.2",
124
127
  "@types/async": "^3.2.24",
125
128
  "@types/better-sqlite3": "^7.6.13",
@@ -127,50 +130,51 @@
127
130
  "@types/cache-manager-fs-hash": "^0.0.4",
128
131
  "@types/cli-progress": "^3.11.6",
129
132
  "@types/compression": "^1.7.5",
130
- "@types/cors": "^2.8.17",
133
+ "@types/cors": "^2.8.18",
131
134
  "@types/debounce": "^1.2.4",
132
135
  "@types/express": "^5.0.1",
133
136
  "@types/glob": "^8.1.0",
134
- "@types/inquirer": "^9.0.7",
137
+ "@types/inquirer": "^9.0.8",
135
138
  "@types/jest": "^29.5.14",
136
139
  "@types/js-yaml": "^4.0.9",
137
140
  "@types/nunjucks": "^3.2.6",
138
141
  "@types/opener": "^1.4.3",
139
142
  "@types/pdf-parse": "^1.1.5",
143
+ "@types/proxy-from-env": "^1.0.4",
140
144
  "@types/semver": "^7.7.0",
141
145
  "@types/source-map-support": "^0.5.10",
142
146
  "@types/supertest": "^6.0.3",
143
147
  "@types/uuid": "^10.0.0",
144
- "@typescript-eslint/eslint-plugin": "^8.29.1",
145
- "@typescript-eslint/parser": "^8.29.1",
148
+ "@typescript-eslint/eslint-plugin": "^8.32.1",
149
+ "@typescript-eslint/parser": "^8.32.1",
146
150
  "check-dependency-version-consistency": "^5.0.0",
147
151
  "cloudflare": "3.4.0",
148
152
  "concurrently": "^9.1.2",
149
- "drizzle-kit": "^0.31.0",
150
- "eslint": "^9.24.0",
153
+ "drizzle-kit": "^0.31.1",
154
+ "eslint": "^9.26.0",
151
155
  "eslint-plugin-jest": "^28.11.0",
152
156
  "eslint-plugin-react-hooks": "^5.2.0",
153
- "eslint-plugin-react-refresh": "^0.4.19",
154
- "eslint-plugin-unicorn": "^58.0.0",
157
+ "eslint-plugin-react-refresh": "^0.4.20",
158
+ "eslint-plugin-unicorn": "^59.0.1",
155
159
  "eslint-plugin-unused-imports": "^4.1.4",
156
160
  "jest": "^29.7.0",
157
161
  "madge": "^8.0.0",
158
- "nock": "^14.0.3",
159
- "nodemon": "^3.1.9",
162
+ "nock": "^14.0.4",
163
+ "nodemon": "^3.1.10",
160
164
  "prettier": "^3.5.3",
161
165
  "shx": "^0.4.0",
162
166
  "source-map-support": "^0.5.21",
163
- "supertest": "^7.1.0",
167
+ "supertest": "^7.1.1",
164
168
  "ts-node": "^10.9.2",
165
169
  "typescript": "^5.8.3",
166
- "typescript-eslint": "^8.29.1",
170
+ "typescript-eslint": "^8.32.1",
167
171
  "zod-to-json-schema": "^3.24.5"
168
172
  },
169
173
  "dependencies": {
170
- "@anthropic-ai/sdk": "^0.41.0",
171
- "@apidevtools/json-schema-ref-parser": "^12.0.1",
172
- "@googleapis/sheets": "^9.6.0",
173
- "@modelcontextprotocol/sdk": "^1.10.2",
174
+ "@anthropic-ai/sdk": "^0.50.4",
175
+ "@apidevtools/json-schema-ref-parser": "^12.0.2",
176
+ "@googleapis/sheets": "^9.7.0",
177
+ "@modelcontextprotocol/sdk": "^1.11.2",
174
178
  "@types/ws": "^8.18.1",
175
179
  "ajv": "^8.17.1",
176
180
  "ajv-formats": "^3.0.1",
@@ -188,7 +192,7 @@
188
192
  "csv-parse": "^5.6.0",
189
193
  "csv-stringify": "^6.5.2",
190
194
  "debounce": "^2.2.0",
191
- "dedent": "^1.5.3",
195
+ "dedent": "^1.6.0",
192
196
  "dotenv": "^16.5.0",
193
197
  "drizzle-orm": "^0.39.2",
194
198
  "express": "^4.21.2",
@@ -203,23 +207,24 @@
203
207
  "mathjs": "^14.4.0",
204
208
  "node-cache": "^5.1.2",
205
209
  "nunjucks": "^3.2.4",
206
- "openai": "^4.93.0",
210
+ "openai": "^4.98.0",
207
211
  "opener": "^1.5.2",
208
- "posthog-node": "^4.12.0",
212
+ "posthog-node": "^4.17.1",
209
213
  "proxy-agent": "^6.5.0",
214
+ "proxy-from-env": "^1.1.0",
210
215
  "python-shell": "^5.0.0",
211
216
  "replicate": "^0.34.1",
212
217
  "rfdc": "^1.4.1",
213
218
  "rxjs": "^7.8.2",
214
219
  "semver": "^7.7.1",
215
220
  "socket.io": "^4.8.1",
216
- "tsx": "^4.19.3",
217
- "undici": "^7.8.0",
221
+ "tsx": "^4.19.4",
222
+ "undici": "^7.9.0",
218
223
  "uuid": "^11.1.0",
219
224
  "winston": "^3.17.0",
220
- "ws": "^8.18.1",
221
- "zod": "^3.24.2",
222
- "zod-validation-error": "^3.4.0"
225
+ "ws": "^8.18.2",
226
+ "zod": "^3.24.4",
227
+ "zod-validation-error": "^3.4.1"
223
228
  },
224
229
  "madge": {
225
230
  "detectiveOptions": {