promptfoo 0.121.7 → 0.121.8

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 (313) hide show
  1. package/dist/src/{accounts-CmWzeD2d.cjs → accounts-BVz5gHLK.cjs} +4 -4
  2. package/dist/src/{accounts-DanM1wq_.js → accounts-BWjqwsrf.js} +4 -4
  3. package/dist/src/{accounts-CjFnOPmb.js → accounts-D6IBfEE0.js} +5 -5
  4. package/dist/src/{accounts-Ca7WIoPY.js → accounts-DAv_0iE7.js} +4 -4
  5. package/dist/src/{agentic-utils-DDEGRV9v.js → agentic-utils-BJKAkz2e.js} +2 -2
  6. package/dist/src/{agentic-utils-DvPWSUpb.cjs → agentic-utils-C-A92xhn.cjs} +2 -2
  7. package/dist/src/{agentic-utils-TxUEMPYS.js → agentic-utils-DmoS_S4B.js} +2 -2
  8. package/dist/src/{agentic-utils-CJ0j3fBi.js → agentic-utils-GdToujHu.js} +2 -2
  9. package/dist/src/{agents-CBgJvRkB.js → agents-2C8NN6I1.js} +4 -4
  10. package/dist/src/{agents-CYn2n3QP.js → agents-BMAiSR2o.js} +2 -2
  11. package/dist/src/{agents-LrHuQqr1.js → agents-C-PGaxwj.js} +4 -4
  12. package/dist/src/{agents-D-vDNFx4.js → agents-C98cz5pl.js} +4 -4
  13. package/dist/src/{agents-B4sRuXg3.cjs → agents-DB8Ub2Ld.cjs} +2 -2
  14. package/dist/src/{agents-B8q7h_ek.js → agents-Dwshy2H8.js} +2 -2
  15. package/dist/src/{agents-QGg76OF-.js → agents-mlKjx-cK.js} +2 -2
  16. package/dist/src/{agents-eHZ9nlgA.cjs → agents-n2ej-c4H.cjs} +4 -4
  17. package/dist/src/{aimlapi-D5HXzZ0s.js → aimlapi-Bi-laUlp.js} +6 -6
  18. package/dist/src/{aimlapi-T6HGNxNe.cjs → aimlapi-D0OFV4Vj.cjs} +6 -6
  19. package/dist/src/{aimlapi-eYv3a_DK.js → aimlapi-WyUK0wYy.js} +6 -6
  20. package/dist/src/{aimlapi-CJEbQ0o6.js → aimlapi-v-63ZjEI.js} +6 -6
  21. package/dist/src/app/assets/Report-sCXUfaWo.js +1 -0
  22. package/dist/src/app/assets/{index-BnT6P6sF.js → index-BopgkZEh.js} +2 -2
  23. package/dist/src/app/index.html +1 -1
  24. package/dist/src/{audio-DyiebVB3.js → audio-DnEIHWZR.js} +3 -3
  25. package/dist/src/{audio-BqnRvcWG.js → audio-heR0mu0n.js} +3 -3
  26. package/dist/src/{audio-CPMtV1yR.js → audio-wafFO1wn.js} +3 -3
  27. package/dist/src/{audio-FnxbEnSE.cjs → audio-x44tsxIo.cjs} +3 -3
  28. package/dist/src/{authoritativeMarkupInjection-F2gBw0lN.cjs → authoritativeMarkupInjection-2G3Be6oL.cjs} +6 -6
  29. package/dist/src/{authoritativeMarkupInjection-DyAXAsSr.js → authoritativeMarkupInjection-81PPynHR.js} +6 -6
  30. package/dist/src/{authoritativeMarkupInjection-QEQmFS83.js → authoritativeMarkupInjection-D9O70HPi.js} +6 -6
  31. package/dist/src/{authoritativeMarkupInjection-BZIywVjG.js → authoritativeMarkupInjection-PxSf3Rh8.js} +5 -5
  32. package/dist/src/{base-E9I8zXjz.js → base-0Gzzue9Z.js} +2 -2
  33. package/dist/src/{base-Co80MMCi.js → base-Bp4c52YZ.js} +2 -2
  34. package/dist/src/{base-CKLo890h.js → base-BuNn-YBX.js} +2 -2
  35. package/dist/src/{base-DGJW48uz.cjs → base-BzdS8tod.cjs} +2 -2
  36. package/dist/src/{bestOfN-_kTi8Bxe.js → bestOfN-BHiOjeaq.js} +7 -7
  37. package/dist/src/{bestOfN-BBsO41z4.js → bestOfN-CdkNPPbX.js} +6 -6
  38. package/dist/src/{bestOfN-B3wNzjSB.js → bestOfN-ClUSOhN0.js} +7 -7
  39. package/dist/src/{bestOfN-CAwmg5UL.cjs → bestOfN-DWwXEg1h.cjs} +7 -7
  40. package/dist/src/cache-BKYi3kAA.js +3 -0
  41. package/dist/src/{cache-DpPWrkTE.js → cache-BR77mdIR.js} +3 -3
  42. package/dist/src/{cache-roFAE0cI.js → cache-CrioYnaa.js} +2 -2
  43. package/dist/src/{cache-DIXbtkNO.js → cache-DdriHsNX.js} +2 -2
  44. package/dist/src/{cache-CPGUA4Yl.cjs → cache-h5MWOBZI.cjs} +2 -2
  45. package/dist/src/{chat-Dabu84Br.js → chat-BBEnnpQk.js} +6 -6
  46. package/dist/src/{chat-CUCorGiL.js → chat-BSos6PvZ.js} +6 -6
  47. package/dist/src/{chat-TP8Qifkh.js → chat-Bnt7ieO0.js} +2 -2
  48. package/dist/src/{chat-DxTDQ83C.cjs → chat-DSyYuTYT.cjs} +6 -6
  49. package/dist/src/{chat-DqUFcWI0.js → chat-DTdf-J5Q.js} +6 -6
  50. package/dist/src/{chat-DG1wG4w0.cjs → chat-Dq3DomYU.cjs} +2 -2
  51. package/dist/src/{chat-GmlolEwo.js → chat-g5QLeLOo.js} +2 -2
  52. package/dist/src/{chat-iwaM5UTQ.js → chat-mTTuUAYb.js} +2 -2
  53. package/dist/src/{claude-agent-sdk-x1XJ1-pU.js → claude-agent-sdk-BGUac_kS.js} +7 -5
  54. package/dist/src/{claude-agent-sdk-D5Jl0SDh.js → claude-agent-sdk-BP__YGfK.js} +7 -5
  55. package/dist/src/{claude-agent-sdk-BQNp_y-F.js → claude-agent-sdk-Ddgx5BIQ.js} +7 -5
  56. package/dist/src/{claude-agent-sdk-DH416NBD.cjs → claude-agent-sdk-n2XcEclh.cjs} +7 -5
  57. package/dist/src/cloud-DiWbUiVP.js +3 -0
  58. package/dist/src/{cloud-D3DiFqH6.js → cloud-DqF5N1aJ.js} +2 -2
  59. package/dist/src/{cloudflare-ai-B6NVI3ax.js → cloudflare-ai-BGamMotN.js} +4 -4
  60. package/dist/src/{cloudflare-ai-r4tbYmWU.js → cloudflare-ai-BwW8W-w7.js} +4 -4
  61. package/dist/src/{cloudflare-ai-CEAW-xQa.cjs → cloudflare-ai-DCRGnsyL.cjs} +4 -4
  62. package/dist/src/{cloudflare-ai-RFSojyXG.js → cloudflare-ai-sD26nP6V.js} +4 -4
  63. package/dist/src/{cloudflare-gateway-BaZ4insB.js → cloudflare-gateway-2lnOT4qM.js} +3 -3
  64. package/dist/src/{cloudflare-gateway-BCkLouto.js → cloudflare-gateway-B1-8KNCt.js} +3 -3
  65. package/dist/src/{cloudflare-gateway-TJMLBj6I.cjs → cloudflare-gateway-CCC1DFrC.cjs} +3 -3
  66. package/dist/src/{cloudflare-gateway-CF-Vb-2Z.js → cloudflare-gateway-DOghiU6r.js} +3 -3
  67. package/dist/src/{codex-app-server-DIXZ230V.js → codex-app-server-BWeWamEb.js} +17 -2
  68. package/dist/src/{codex-app-server-B8KHEiF4.js → codex-app-server-DyQB1P0p.js} +17 -2
  69. package/dist/src/{codex-app-server-CnrLBCeA.cjs → codex-app-server-R9u_G7W9.cjs} +17 -2
  70. package/dist/src/{codex-app-server-Dd22dC_N.js → codex-app-server-ZQRJSJjU.js} +17 -2
  71. package/dist/src/{codex-sdk-CmQABzV3.js → codex-sdk-B62H0fe7.js} +14 -3
  72. package/dist/src/{codex-sdk-CFF6gUyi.cjs → codex-sdk-BRPUvJG8.cjs} +14 -3
  73. package/dist/src/{codex-sdk-B6Wah8Pa.js → codex-sdk-Dio1zJBS.js} +14 -3
  74. package/dist/src/codex-sdk-DxukZs_K.js +3 -0
  75. package/dist/src/{codex-sdk-D2d54RL8.js → codex-sdk-iEmW1eS2.js} +14 -3
  76. package/dist/src/{cometapi-Bu9B8NUY.js → cometapi--hh7dESS.js} +7 -7
  77. package/dist/src/{cometapi-OBILPLlu.js → cometapi-C7yWNGqt.js} +7 -7
  78. package/dist/src/{cometapi-CtzNCHKu.js → cometapi-CSIi16a0.js} +7 -7
  79. package/dist/src/{cometapi-DHCDlQUI.cjs → cometapi-sZgBZtbU.cjs} +7 -7
  80. package/dist/src/{completion-CSYfl2cd.cjs → completion-CWtqdn3z.cjs} +4 -4
  81. package/dist/src/{completion-CO2e1_62.js → completion-DT8cxo9T.js} +4 -4
  82. package/dist/src/{completion-DZNxcyfG.js → completion-DUScduXp.js} +4 -4
  83. package/dist/src/{completion-sNvCLTAP.js → completion-D_2IOAoS.js} +4 -4
  84. package/dist/src/{crescendo-QiaSLW0d.js → crescendo-B41TwUHM.js} +39 -18
  85. package/dist/src/{crescendo-J1Xx4_zb.js → crescendo-Bfic7KC4.js} +41 -20
  86. package/dist/src/{crescendo-BXEJK_bi.cjs → crescendo-DXFB7rHP.cjs} +41 -20
  87. package/dist/src/{crescendo-CU_Y2i-m.js → crescendo-DvvYxMLA.js} +41 -20
  88. package/dist/src/{custom-BJfP00Bh.js → custom-BdzuqFTN.js} +10 -10
  89. package/dist/src/{custom-notggYVl.js → custom-Cf5Q6r-P.js} +8 -8
  90. package/dist/src/{custom-CZVn-1-r.js → custom-DLgufezC.js} +10 -10
  91. package/dist/src/{custom-Cqia7M0D.cjs → custom-LEXHCRe3.cjs} +10 -10
  92. package/dist/src/{docker-4D1eL6Gq.js → docker-BOSO_6hK.js} +5 -5
  93. package/dist/src/{docker-D06JUoe2.cjs → docker-D0h2vFrc.cjs} +5 -5
  94. package/dist/src/{docker-DdJQBxK9.js → docker-D2TWGyTP.js} +5 -5
  95. package/dist/src/{docker-BBv1WUDu.js → docker-Vj_4_cPg.js} +5 -5
  96. package/dist/src/{embedding-BbrwopfX.cjs → embedding-BQIApR18.cjs} +4 -4
  97. package/dist/src/{embedding-Bi3rxrZF.js → embedding-CStK0TV6.js} +4 -4
  98. package/dist/src/{embedding--UZVe4_7.js → embedding-CU78FMnw.js} +4 -4
  99. package/dist/src/{embedding-C251p1-8.js → embedding-CV8lmCnU.js} +4 -4
  100. package/dist/src/{eval-0VRANImH.js → eval-B3BaNBbO.js} +4 -4
  101. package/dist/src/{eval-DscR5iOM.js → eval-DfR9885C.js} +1 -1
  102. package/dist/src/evalResult-BtZSUgQv.js +3 -0
  103. package/dist/src/{evalResult-eUkJv9Ko.js → evalResult-CcSqNl_Y.js} +3 -3
  104. package/dist/src/{evalResult-CvtS8h8u.cjs → evalResult-DHXs-9TL.cjs} +3 -3
  105. package/dist/src/{evalResult-2RRJvFyB.js → evalResult-PGqEbasb.js} +3 -3
  106. package/dist/src/evaluator-B9LGbKI8.js +3 -0
  107. package/dist/src/{evaluator-DRoiYB2q.js → evaluator-n_dEb00o.js} +20 -20
  108. package/dist/src/{evaluatorHelpers-DuqFFfq7.js → evaluatorHelpers-CrRObe2z.js} +4 -4
  109. package/dist/src/{evaluatorHelpers-CRqTvSux.cjs → evaluatorHelpers-D06I9WFL.cjs} +4 -4
  110. package/dist/src/{evaluatorHelpers-BsYP_muT.js → evaluatorHelpers-D1_kwvyp.js} +4 -4
  111. package/dist/src/{extractor-CIW3iN-b.js → extractor-BVkZtk4R.js} +4 -4
  112. package/dist/src/{extractor-CxRtnaHl.js → extractor-D3Fv_Tdh.js} +4 -4
  113. package/dist/src/{extractor-BR7XAzAL.js → extractor-Jp53vs-6.js} +4 -4
  114. package/dist/src/{extractor-BdxEtt3J.cjs → extractor-bV_NOoaz.cjs} +4 -4
  115. package/dist/src/{fetch-BufrQtvR.js → fetch-BSSAcMxf.js} +2 -2
  116. package/dist/src/fetch-BodQTrMU.js +3 -0
  117. package/dist/src/{fetch-Dw4XZHjj.cjs → fetch-Cfm4EuOB.cjs} +2 -2
  118. package/dist/src/{fetch-DXUnXkVU.js → fetch-Cpf1U1nO.js} +3 -3
  119. package/dist/src/{fetch-It34O8Ur.js → fetch-Doks14zQ.js} +2 -2
  120. package/dist/src/{goat-Qgurm-NP.js → goat-Ba7Gznzq.js} +18 -17
  121. package/dist/src/{goat-Ckd3q3AY.js → goat-CJngS-WU.js} +18 -17
  122. package/dist/src/{goat-ghadEDdy.js → goat-CwsbfQeu.js} +16 -15
  123. package/dist/src/{goat-una6pZGP.cjs → goat-DOMbozoX.cjs} +18 -17
  124. package/dist/src/graders-B3D7kCcD.js +3 -0
  125. package/dist/src/{graders-BGP99PdK.js → graders-BQt1BaQe.js} +18 -18
  126. package/dist/src/{graders-ClrU2fnd.cjs → graders-CBQ2s6gz.cjs} +18 -18
  127. package/dist/src/{graders-C0nXU_ZP.js → graders-DaRU98zs.js} +18 -18
  128. package/dist/src/{graders-BX0f2tvS.js → graders-KXzjnIim.js} +18 -18
  129. package/dist/src/{hydra-DE4xWwyc.js → hydra-BU6GjYoQ.js} +35 -17
  130. package/dist/src/{hydra-BxdG4nkg.js → hydra-BmXHxlyl.js} +33 -15
  131. package/dist/src/{hydra-BSNZZm2M.js → hydra-CR0KyYDb.js} +35 -17
  132. package/dist/src/{hydra-DrJttnvw.cjs → hydra-RO9jBks7.cjs} +35 -17
  133. package/dist/src/{image-B_fPIwdg.js → image-BBmZdKO3.js} +3 -3
  134. package/dist/src/{image-QzmydkiG.js → image-B_PFG7IG.js} +3 -3
  135. package/dist/src/{image-BvUAW344.js → image-BtODOZjh.js} +4 -4
  136. package/dist/src/{image-Cvjwx1uY.js → image-CYuNJIqd.js} +4 -4
  137. package/dist/src/{image-DfVCGPbI.cjs → image-E00WFZkq.cjs} +3 -3
  138. package/dist/src/{image-X0oY4350.cjs → image-HK2Cfqb1.cjs} +4 -4
  139. package/dist/src/{image-BN-hjLL9.js → image-LGj8dTcr.js} +3 -3
  140. package/dist/src/{image-B4oBtu6J.js → image-YMKejC0r.js} +4 -4
  141. package/dist/src/index.cjs +112 -115
  142. package/dist/src/index.d.cts +13 -0
  143. package/dist/src/index.d.ts +13 -0
  144. package/dist/src/index.js +113 -116
  145. package/dist/src/{indirectWebPwn-DBQhOjoD.js → indirectWebPwn-B80dLlFC.js} +5 -5
  146. package/dist/src/{indirectWebPwn-uyWdHx04.js → indirectWebPwn-BMTXXznx.js} +4 -4
  147. package/dist/src/{indirectWebPwn-tNx9OZ35.js → indirectWebPwn-BZFPV7Q9.js} +4 -4
  148. package/dist/src/{indirectWebPwn-CfQJt3gk.cjs → indirectWebPwn-BaEQEOIO.cjs} +5 -5
  149. package/dist/src/{indirectWebPwn-OsXnKejv.js → indirectWebPwn-BzpyMnFS.js} +5 -5
  150. package/dist/src/{indirectWebPwn-CbjUG0rh.js → indirectWebPwn-CiWB-vVH.js} +4 -4
  151. package/dist/src/{indirectWebPwn-BJ22AbQa.cjs → indirectWebPwn-D7NA9Nsv.cjs} +4 -4
  152. package/dist/src/{indirectWebPwn-02ZIghCS.js → indirectWebPwn-o_bEFMjP.js} +5 -5
  153. package/dist/src/{iterative-DJQEQpG3.js → iterative-B-l0syBV.js} +25 -15
  154. package/dist/src/{iterative-DQBuWM-j.cjs → iterative-BACUeCCz.cjs} +25 -15
  155. package/dist/src/{iterative-FTS4Bz67.js → iterative-CVwoExo8.js} +25 -15
  156. package/dist/src/{iterative-CpU6i2As.js → iterative-QDrGSyss.js} +23 -13
  157. package/dist/src/{iterativeImage-BUABMVOA.js → iterativeImage-BQg2OwA6.js} +3 -3
  158. package/dist/src/{iterativeImage-Doz8mgxF.js → iterativeImage-Bwn0fM75.js} +4 -4
  159. package/dist/src/{iterativeImage-ByFWkxax.cjs → iterativeImage-CcgVyASo.cjs} +4 -4
  160. package/dist/src/{iterativeImage-BzUapOUi.js → iterativeImage-D_UbQXg4.js} +4 -4
  161. package/dist/src/{iterativeMeta-C7APE_P1.js → iterativeMeta-CIu-CHRS.js} +36 -16
  162. package/dist/src/{iterativeMeta-B3YiAOc8.js → iterativeMeta-CN8CNjFA.js} +36 -16
  163. package/dist/src/{iterativeMeta-DgoQ7bLh.js → iterativeMeta-DN6BTjpq.js} +34 -14
  164. package/dist/src/{iterativeMeta-CSS8M6Ds.cjs → iterativeMeta-DlqY3BsS.cjs} +36 -16
  165. package/dist/src/{iterativeTree-DvZ7GBwt.js → iterativeTree-CJ8a8G9T.js} +78 -28
  166. package/dist/src/{iterativeTree-B5zxBBSW.js → iterativeTree-DcuFXnjL.js} +78 -28
  167. package/dist/src/{iterativeTree-CNyIk0Yn.js → iterativeTree-FrDDYAN0.js} +76 -26
  168. package/dist/src/{iterativeTree-CPMF10ve.cjs → iterativeTree-LOgAi0nU.cjs} +78 -28
  169. package/dist/src/{knowledgeBase-DUh34xba.cjs → knowledgeBase-CdbcGBZF.cjs} +4 -4
  170. package/dist/src/{knowledgeBase-Bi_8sV-H.js → knowledgeBase-CjOXp6Lr.js} +4 -4
  171. package/dist/src/{knowledgeBase-BadkINlJ.js → knowledgeBase-DxAq4n4z.js} +4 -4
  172. package/dist/src/{knowledgeBase-CkMljjdg.js → knowledgeBase-o_wTLzrt.js} +4 -4
  173. package/dist/src/{litellm-BKBo0jpC.js → litellm-B2gHwya_.js} +4 -4
  174. package/dist/src/{litellm-CtAr7bKG.cjs → litellm-CPpdlO7n.cjs} +4 -4
  175. package/dist/src/{litellm-BXyn5kZK.js → litellm-CYfgxLrM.js} +4 -4
  176. package/dist/src/{litellm-CNcfbCfa.js → litellm-ojWBKU3C.js} +4 -4
  177. package/dist/src/{luma-ray-D3FUc2K3.cjs → luma-ray-BCCO9XXG.cjs} +3 -3
  178. package/dist/src/{luma-ray-BMX1iEB6.js → luma-ray-BPrdihAb.js} +3 -3
  179. package/dist/src/{luma-ray-CR5TSpp4.js → luma-ray-DP5N79lB.js} +3 -3
  180. package/dist/src/{luma-ray-OEMmS1RB.js → luma-ray-DTDyoAlM.js} +3 -3
  181. package/dist/src/main.js +116 -119
  182. package/dist/src/{memoryPoisoning-Dp-btinn.cjs → memoryPoisoning-B6N3us35.cjs} +6 -6
  183. package/dist/src/{memoryPoisoning-D8h9gXJF.js → memoryPoisoning-Bc_BK_k2.js} +6 -6
  184. package/dist/src/{memoryPoisoning-CM83NWYl.js → memoryPoisoning-D375zwSX.js} +6 -6
  185. package/dist/src/{memoryPoisoning-cLuCoTuJ.js → memoryPoisoning-DJA0YjJT.js} +6 -6
  186. package/dist/src/{messages-BabO-cX8.js → messages-Bg29Nbit.js} +7 -7
  187. package/dist/src/{messages-DBPir0TQ.cjs → messages-BrZEnHsV.cjs} +7 -7
  188. package/dist/src/{messages-vsE_-Lv0.js → messages-CBulRaud.js} +7 -7
  189. package/dist/src/{messages-DGUlSNU7.js → messages-K9A8RxBM.js} +7 -7
  190. package/dist/src/{mischievousUser-0l8GD7Dp.js → mischievousUser-BDLwSGN0.js} +5 -5
  191. package/dist/src/{mischievousUser-frFYKxu6.js → mischievousUser-Blx-OtT3.js} +5 -5
  192. package/dist/src/{mischievousUser-BUOP9W5r.js → mischievousUser-CHuTTvBg.js} +5 -5
  193. package/dist/src/{mischievousUser-olGgHIVR.cjs → mischievousUser-CSUrH3fq.cjs} +5 -5
  194. package/dist/src/{modelslab-Cogmu4mG.js → modelslab-BjEk7yCP.js} +4 -4
  195. package/dist/src/{modelslab-EyDczZ5A.js → modelslab-CBCrdIBc.js} +4 -4
  196. package/dist/src/{modelslab-Dzst7VTU.js → modelslab-CrGpXuhv.js} +4 -4
  197. package/dist/src/{modelslab-CNV5bMSk.cjs → modelslab-Cvh0klQx.cjs} +4 -4
  198. package/dist/src/{nova-reel-BGPNBOMS.js → nova-reel-CUDDZcSA.js} +3 -3
  199. package/dist/src/{nova-reel-B_5NKFu1.js → nova-reel-CyDESu5J.js} +3 -3
  200. package/dist/src/{nova-reel-CjJRxI1X.cjs → nova-reel-DH_Ksu6X.cjs} +3 -3
  201. package/dist/src/{nova-reel-C4eUJGse.js → nova-reel-YQAqUYJY.js} +3 -3
  202. package/dist/src/{nova-sonic-ChPlh5na.js → nova-sonic-BVFFB7JZ.js} +2 -2
  203. package/dist/src/{nova-sonic-DuOG9Aun.cjs → nova-sonic-Bg3cxMMu.cjs} +2 -2
  204. package/dist/src/{nova-sonic-CrV0iaY_.js → nova-sonic-BhmnRGyh.js} +2 -2
  205. package/dist/src/{nova-sonic-BNGmgfFz.js → nova-sonic-DxmK95c1.js} +2 -2
  206. package/dist/src/{openclaw-Dphc01BY.cjs → openclaw-CHQaZi_-.cjs} +6 -6
  207. package/dist/src/{openclaw-zIJAsz3P.js → openclaw-CWOm2eOr.js} +6 -6
  208. package/dist/src/{openclaw-CF7fMido.js → openclaw-Cdk9JKfY.js} +6 -6
  209. package/dist/src/{openclaw-BIHlu_36.js → openclaw-DhF8rUpI.js} +6 -6
  210. package/dist/src/{opencode-sdk-B3vlPLsp.js → opencode-sdk-BRjiPV-g.js} +2 -2
  211. package/dist/src/{opencode-sdk-DoY6GbWw.cjs → opencode-sdk-CPFMw0ed.cjs} +2 -2
  212. package/dist/src/{opencode-sdk-sRKYHGoI.js → opencode-sdk-CaSOCsBA.js} +2 -2
  213. package/dist/src/{opencode-sdk-D05JSgMQ.js → opencode-sdk-CqkyG8De.js} +2 -2
  214. package/dist/src/{promptfoo-Rjp-MeBb.js → promptfoo-BU4_0J85.js} +64 -7
  215. package/dist/src/{promptfoo-BDrfT30-.js → promptfoo-CReYAtfb.js} +64 -7
  216. package/dist/src/{promptfoo-b-baRMj-.cjs → promptfoo-ClChwT74.cjs} +93 -6
  217. package/dist/src/{promptfoo-Cm4hiy1Y.js → promptfoo-CqEpj6Sr.js} +64 -7
  218. package/dist/src/{providers-B9KzWxAX.js → providers-B7TyByfj.js} +94 -50
  219. package/dist/src/{providers-DVYRZP4E.js → providers-BGc7tDtQ.js} +93 -49
  220. package/dist/src/{providers-BYAn82cf.js → providers-CSOp-bCm.js} +1 -1
  221. package/dist/src/{providers-BDVVIQM6.cjs → providers-V6RBuieY.cjs} +93 -49
  222. package/dist/src/{providers-BCCz6_IX.js → providers-iH3Sw1yo.js} +93 -49
  223. package/dist/src/{quiverai-BvIhI_0l.js → quiverai-58BtRRet.js} +3 -3
  224. package/dist/src/{quiverai-Cv7rJKDz.js → quiverai-C1dYu5MW.js} +3 -3
  225. package/dist/src/{quiverai-CdTWPe-A.js → quiverai-CNMIpZQg.js} +3 -3
  226. package/dist/src/{quiverai-BAp6iTZD.cjs → quiverai-fmSfU43k.cjs} +3 -3
  227. package/dist/src/{registry-KCVF1CFC.cjs → registry-6Jw6ebor.cjs} +14 -14
  228. package/dist/src/{registry-BUJrgjwv.js → registry-BTGk2ZkB.js} +14 -14
  229. package/dist/src/{registry-DXm1t_x0.js → registry-BTNqmP5o.js} +14 -14
  230. package/dist/src/{registry-Dp5EqoXc.js → registry-NGnOG2xa.js} +14 -14
  231. package/dist/src/{remoteGeneration-COpWcmWd.js → remoteGeneration--D6WjzUm.js} +4 -4
  232. package/dist/src/{remoteGeneration-DS9N3pgB.cjs → remoteGeneration-BpIYlb_O.cjs} +4 -4
  233. package/dist/src/{remoteGeneration-DsaSwmG2.js → remoteGeneration-CJC3E0aW.js} +4 -4
  234. package/dist/src/{remoteGeneration-B1_XsKXU.js → remoteGeneration-D6UjE2JT.js} +4 -4
  235. package/dist/src/{responses-B6ktc3Ra.js → responses-5Gf5HNOi.js} +9 -5
  236. package/dist/src/{responses-URRzV8qE.js → responses-BVi7xIdv.js} +9 -5
  237. package/dist/src/{responses-1UFFF9N_.cjs → responses-CUARGrhY.cjs} +9 -5
  238. package/dist/src/{responses-B3W2JvOQ.js → responses-CrmWv6iz.js} +9 -5
  239. package/dist/src/{sagemaker-DzffAqo_.cjs → sagemaker-BeVTKfrv.cjs} +9 -9
  240. package/dist/src/{sagemaker-yr1QKeBs.js → sagemaker-BwbV5U7_.js} +9 -9
  241. package/dist/src/{sagemaker-vhtSV7JI.js → sagemaker-ClAZ6Qwc.js} +9 -9
  242. package/dist/src/{sagemaker-CujrzP1a.js → sagemaker-DY2qrOpq.js} +9 -9
  243. package/dist/src/{scanner-DS0109SS.js → scanner-BS-iFIp3.js} +5 -5
  244. package/dist/src/server/index.js +111 -114
  245. package/dist/src/{server-B8rqV126.cjs → server-BHOEL8p8.cjs} +3 -3
  246. package/dist/src/{server-CMJD10J4.js → server-CbiJppij.js} +3 -3
  247. package/dist/src/server-D18AAlAc.js +3 -0
  248. package/dist/src/{server-DhMHosWj.js → server-DLYjSFm2.js} +5 -5
  249. package/dist/src/{server-Ddp8GNMp.js → server-JQYD_Nws.js} +5 -5
  250. package/dist/src/{shared-7pmVZLNO.js → shared-CRq0gGVf.js} +8 -8
  251. package/dist/src/{shared-D6IjElRI.js → shared-CSIGeGLl.js} +8 -8
  252. package/dist/src/{shared-9WHQ1oNE.js → shared-DNvim54U.js} +7 -7
  253. package/dist/src/{shared-WkgnDkcg.cjs → shared-aHWko3P1.cjs} +8 -8
  254. package/dist/src/{simulatedUser-U_qAHnuB.js → simulatedUser-C7sOFSF6.js} +5 -5
  255. package/dist/src/{simulatedUser-C9aQObBI.js → simulatedUser-DH_7RzEQ.js} +5 -5
  256. package/dist/src/{simulatedUser-p3tACcmw.js → simulatedUser-lgMMmniD.js} +5 -5
  257. package/dist/src/{simulatedUser-Cu601Dd4.cjs → simulatedUser-mnCUS9Bm.cjs} +5 -5
  258. package/dist/src/{storage-QdU-SmvD.js → storage-95htjpLs.js} +3 -3
  259. package/dist/src/{storage-CA-v9V2v.cjs → storage-A4WnAeN3.cjs} +3 -3
  260. package/dist/src/{storage-CD-GWAdx.js → storage-B2Ql_oq4.js} +3 -3
  261. package/dist/src/{storage-BU4qcnOb.js → storage-EKVWZBNY.js} +4 -4
  262. package/dist/src/{strategies-DRJjGTIY.js → strategies-CBI1brSy.js} +10 -10
  263. package/dist/src/{strategies-7CS3Alao.cjs → strategies-CCcnEbFO.cjs} +9 -9
  264. package/dist/src/{strategies-CiSeroPH.js → strategies-CD1gHeeQ.js} +9 -9
  265. package/dist/src/telemetry-BUm_krVX.js +3 -0
  266. package/dist/src/{telemetry-DmXYcJNV.js → telemetry-BbpmrenM.js} +4 -4
  267. package/dist/src/{telemetry-DwX9XUN5.js → telemetry-C4bX-6Sr.js} +4 -4
  268. package/dist/src/{telemetry-CJ7FnCsc.cjs → telemetry-C_ImlCOk.cjs} +4 -4
  269. package/dist/src/{telemetry-00ezXr_t.js → telemetry-DOE567Wj.js} +4 -4
  270. package/dist/src/{tracingOptions-ji2OuXbT.js → tracingOptions-BOP1FsRt.js} +2 -2
  271. package/dist/src/{tracingOptions-Chi74lOD.js → tracingOptions-BvmDa_jH.js} +2 -2
  272. package/dist/src/{tracingOptions-DrbSFaKy.cjs → tracingOptions-DFBoE8O0.cjs} +2 -2
  273. package/dist/src/{tracingOptions-BnwKCkSB.js → tracingOptions-xhjOg2b1.js} +2 -2
  274. package/dist/src/{transcription-Dkd22_4K.js → transcription-BOXDoehT.js} +4 -4
  275. package/dist/src/{transcription-CfU5loSq.js → transcription-CpVdKc4P.js} +4 -4
  276. package/dist/src/{transcription-mzuf18Mq.cjs → transcription-D8kkPXg_.cjs} +4 -4
  277. package/dist/src/{transcription-B8uIgCYX.js → transcription-Z94eV9LR.js} +4 -4
  278. package/dist/src/{transform-BIMynQsA.js → transform-BufxPIQL.js} +3 -3
  279. package/dist/src/{transform-DhNkAUs8.cjs → transform-DJkt81VY.cjs} +3 -3
  280. package/dist/src/{transform-EtD4jAWi.js → transform-DtTfiGoh.js} +3 -3
  281. package/dist/src/{transform-DmvYBRll.js → transform-Wp6s_5QE.js} +3 -3
  282. package/dist/src/{util-IYzs5Y04.cjs → util-BHCAeuXx.cjs} +3 -3
  283. package/dist/src/{util--WMgw7wM.js → util-CMrHV35u.js} +3 -3
  284. package/dist/src/{util-SPsvFONY.cjs → util-COnzevXE.cjs} +3 -3
  285. package/dist/src/{util-LKTmNsMQ.js → util-CYev3d-r.js} +16 -3
  286. package/dist/src/{util-Df8YMvS1.js → util-DGqkTb2-.js} +4 -4
  287. package/dist/src/{util-CN8om2rz.cjs → util-DNtUsus_.cjs} +4 -4
  288. package/dist/src/{util-Bx677_k2.js → util-DRfqa4xz.js} +3 -3
  289. package/dist/src/{util-DiQ3QvBB.js → util-DTq3jq2z.js} +3 -3
  290. package/dist/src/{util-5WnCSb0h.js → util-DeY58psG.js} +16 -3
  291. package/dist/src/{util-DNl96nNs.js → util-DpV6KT5i.js} +4 -4
  292. package/dist/src/{util-I-Rf-KaD.js → util-DwNJzqOV.js} +3 -3
  293. package/dist/src/{util-kDURhgJW.js → util-ETfU_sS9.js} +4 -4
  294. package/dist/src/{util-BSIuSLVK.cjs → util-NYQvo1C7.cjs} +16 -3
  295. package/dist/src/{util-CoQWM76y.js → util-X4KQgyVD.js} +3 -3
  296. package/dist/src/{util-DURocbYR.js → util-jZRrXe1P.js} +3 -3
  297. package/dist/src/{util-efByNxcr.js → util-o2Qg5rZv.js} +16 -3
  298. package/dist/src/{version-BK20a4sw.js → version-CHR-EFec.js} +2 -2
  299. package/dist/src/{version-eRkNuGv8.js → version-F0YDgb7J.js} +2 -2
  300. package/dist/src/{version-BWCSaByA.cjs → version-VzUqOBZk.cjs} +2 -2
  301. package/dist/src/{version-lpHV_53E.js → version-qVEN5qCm.js} +2 -2
  302. package/dist/tsconfig.tsbuildinfo +1 -1
  303. package/package.json +5 -5
  304. package/dist/src/app/assets/Report-BNHJKN35.js +0 -1
  305. package/dist/src/cache-Cf7b4pWE.js +0 -3
  306. package/dist/src/cloud-p96PA4MH.js +0 -3
  307. package/dist/src/codex-sdk-BGjVAk23.js +0 -3
  308. package/dist/src/evalResult-DqzsS6_W.js +0 -3
  309. package/dist/src/evaluator-DNdJF1Gv.js +0 -3
  310. package/dist/src/fetch-_YgGd2qv.js +0 -3
  311. package/dist/src/graders-BDT7dif6.js +0 -3
  312. package/dist/src/server-BaLytskk.js +0 -3
  313. package/dist/src/telemetry-ByPqDcKC.js +0 -3
@@ -2,36 +2,36 @@ import { t as __exportAll } from "./chunk-DEq-mXcV.js";
2
2
  import { C as getEnvFloat, T as getEnvString, _ as isValidJson, a as logger, c as REDACTED, f as sanitizeObject, k as state, l as isSecretField, p as sanitizeUrl, u as looksLikeSecret, w as getEnvInt, x as getConfigDirectoryPath, y as safeJsonStringify } from "./logger-Ct2S6Yx-.js";
3
3
  import { t as invariant } from "./invariant-Ddh24eXh.js";
4
4
  import { Wt as isApiProvider } from "./types-D6glLbdF.js";
5
- import { C as transformTools, S as transformToolChoice, T as cloudConfig, b as parseChatPrompt, f as LONG_RUNNING_MODEL_TIMEOUT_MS, g as isOpenAIToolChoice, h as isOpenAIToolArray, l as sleep, m as calculateCost, p as REQUEST_TIMEOUT_MS$1, r as fetchWithTimeout, t as fetchWithProxy, v as openaiToolChoiceToBedrock, x as toTitleCase, y as openaiToolsToBedrock } from "./fetch-It34O8Ur.js";
5
+ import { C as transformTools, S as transformToolChoice, T as cloudConfig, b as parseChatPrompt, f as LONG_RUNNING_MODEL_TIMEOUT_MS, g as isOpenAIToolChoice, h as isOpenAIToolArray, l as sleep, m as calculateCost, p as REQUEST_TIMEOUT_MS$1, r as fetchWithTimeout, t as fetchWithProxy, v as openaiToolChoiceToBedrock, x as toTitleCase, y as openaiToolsToBedrock } from "./fetch-Doks14zQ.js";
6
6
  import { i as isJavascriptFile } from "./fileExtensions-CXRfY3Ss.js";
7
7
  import { n as getWrapperDir, o as safeResolve, r as importModule } from "./esm-BTK1W7lG.js";
8
8
  import { i as withGenAISpan } from "./genaiTracer-D18lYzhB.js";
9
9
  import { n as renderVarsInObject, o as getNunjucksEngine, t as renderEnvOnlyInObject } from "./render-DFfDeYUK.js";
10
10
  import { t as providerRegistry } from "./providerRegistry-DHcFiVWX.js";
11
- import { a as getCloudDatabaseId, d as isCloudProvider, m as validateLinkedTargetId, r as storeMedia, t as getMediaStorage, u as getProviderFromCloud } from "./storage-CD-GWAdx.js";
11
+ import { a as getCloudDatabaseId, d as isCloudProvider, m as validateLinkedTargetId, r as storeMedia, t as getMediaStorage, u as getProviderFromCloud } from "./storage-B2Ql_oq4.js";
12
12
  import { i as validatePythonPath, n as getEnvInt$1, r as runPython, t as getConfiguredPythonPath } from "./pythonUtils-D0BYebvX.js";
13
- import { C as getResolvedRelativePath, D as maybeLoadResponseFormatFromExternalFile, E as maybeLoadFromExternalFileWithVars, M as loadFunction, N as parseFileUrl, O as maybeLoadToolsFromExternalFile, T as maybeLoadFromExternalFile, b as normalizeProviderRef, k as parsePathOrGlob, v as isProviderConfigFileReference, w as maybeLoadConfigFromExternalFile, x as readProviderConfigFile, y as loadProviderConfigsFromFile } from "./util-Bx677_k2.js";
13
+ import { C as getResolvedRelativePath, D as maybeLoadResponseFormatFromExternalFile, E as maybeLoadFromExternalFileWithVars, M as loadFunction, N as parseFileUrl, O as maybeLoadToolsFromExternalFile, T as maybeLoadFromExternalFile, b as normalizeProviderRef, k as parsePathOrGlob, v as isProviderConfigFileReference, w as maybeLoadConfigFromExternalFile, x as readProviderConfigFile, y as loadProviderConfigsFromFile } from "./util-DRfqa4xz.js";
14
14
  import { n as sha256 } from "./createHash-BtbSX3mj.js";
15
- import { a as getScopedCacheKey, i as getCache, o as isCacheEnabled, r as fetchWithCache } from "./cache-DIXbtkNO.js";
16
- import { i as normalizeFinishReason, n as MCPClient, r as FINISH_REASON_MAP, t as OpenAiChatCompletionProvider } from "./chat-Dabu84Br.js";
17
- import { C as resolveProjectId, S as loadCredentials, T as toDataUri, _ as GoogleAuthManager, a as calculateGoogleCost, b as getGoogleClient, c as geminiFormatAndSystemInstructions, d as mergeParts, f as normalizeSafetySettings, g as CHAT_MODELS, i as transformMCPToolsToOpenAi, j as TOKEN_REFRESH_BUFFER_MS, l as getCandidate, m as parseConfigSystemInstruction, o as createAuthCacheDiscriminator, p as normalizeTools, r as transformMCPToolsToGoogle, s as formatCandidateContents, u as getGoogleAccessToken, v as determineGoogleVertexMode, y as getGoogleApiKey } from "./transform-DmvYBRll.js";
15
+ import { a as getScopedCacheKey, i as getCache, o as isCacheEnabled, r as fetchWithCache } from "./cache-DdriHsNX.js";
16
+ import { i as normalizeFinishReason, n as MCPClient, r as FINISH_REASON_MAP, t as OpenAiChatCompletionProvider } from "./chat-BBEnnpQk.js";
17
+ import { C as resolveProjectId, S as loadCredentials, T as toDataUri, _ as GoogleAuthManager, a as calculateGoogleCost, b as getGoogleClient, c as geminiFormatAndSystemInstructions, d as mergeParts, f as normalizeSafetySettings, g as CHAT_MODELS, i as transformMCPToolsToOpenAi, j as TOKEN_REFRESH_BUFFER_MS, l as getCandidate, m as parseConfigSystemInstruction, o as createAuthCacheDiscriminator, p as normalizeTools, r as transformMCPToolsToGoogle, s as formatCandidateContents, u as getGoogleAccessToken, v as determineGoogleVertexMode, y as getGoogleApiKey } from "./transform-Wp6s_5QE.js";
18
18
  import { t as OpenAiGenericProvider } from "./openai-zgwBb4Ff.js";
19
- import { a as calculateOpenAICost, c as getTokenUsage$2, o as failApiCall, r as OPENAI_REALTIME_MODELS, s as formatOpenAiError } from "./util-LKTmNsMQ.js";
20
- import { t as OpenAiEmbeddingProvider } from "./embedding-Bi3rxrZF.js";
19
+ import { a as calculateOpenAICost, c as getTokenUsage$2, o as failApiCall, r as OPENAI_REALTIME_MODELS, s as formatOpenAiError } from "./util-CYev3d-r.js";
20
+ import { t as OpenAiEmbeddingProvider } from "./embedding-CStK0TV6.js";
21
21
  import { a as createEmptyTokenUsage, n as accumulateResponseTokenUsage } from "./tokenUsageUtils-CmnQ0G2m.js";
22
- import { n as AnthropicGenericProvider, t as AnthropicMessagesProvider } from "./messages-vsE_-Lv0.js";
23
- import { a as isClaudeOpus47Model, i as getTokenUsage$3, n as calculateAnthropicCost, o as outputFromMessage, s as parseMessages, t as ANTHROPIC_MODELS } from "./util--WMgw7wM.js";
24
- import { n as ResponsesProcessor, r as FunctionCallbackHandler, t as OpenAiResponsesProvider } from "./responses-URRzV8qE.js";
22
+ import { n as AnthropicGenericProvider, t as AnthropicMessagesProvider } from "./messages-CBulRaud.js";
23
+ import { a as isClaudeOpus47Model, i as getTokenUsage$3, n as calculateAnthropicCost, o as outputFromMessage, s as parseMessages, t as ANTHROPIC_MODELS } from "./util-CMrHV35u.js";
24
+ import { n as ResponsesProcessor, r as FunctionCallbackHandler, t as OpenAiResponsesProvider } from "./responses-BVi7xIdv.js";
25
25
  import { t as ellipsize } from "./text-DwYK5EBn.js";
26
- import { t as telemetry } from "./telemetry-DwX9XUN5.js";
27
- import { a as novaParseMessages, i as novaOutputFromMessage, t as AwsBedrockGenericProvider } from "./base-CKLo890h.js";
26
+ import { t as telemetry } from "./telemetry-C4bX-6Sr.js";
27
+ import { a as novaParseMessages, i as novaOutputFromMessage, t as AwsBedrockGenericProvider } from "./base-BuNn-YBX.js";
28
28
  import { r as storeBlob } from "./blobs-Dwef1Ao1.js";
29
29
  import { t as getProcessShim } from "./processShim-BcGzU8fY.js";
30
- import { i as formatOutput, n as buildStructuredImageOutputs, r as callOpenAiImageApi, t as OpenAiImageProvider } from "./image-BvUAW344.js";
31
- import { t as OpenAiCompletionProvider } from "./completion-sNvCLTAP.js";
30
+ import { i as formatOutput, n as buildStructuredImageOutputs, r as callOpenAiImageApi, t as OpenAiImageProvider } from "./image-BtODOZjh.js";
31
+ import { t as OpenAiCompletionProvider } from "./completion-D_2IOAoS.js";
32
32
  import { r as parsePackageProvider } from "./packageParser-CgE-ziRo.js";
33
33
  import { n as runRuby } from "./rubyUtils-CnlW8AYb.js";
34
- import { t as SimulatedUser } from "./simulatedUser-U_qAHnuB.js";
34
+ import { t as SimulatedUser } from "./simulatedUser-C7sOFSF6.js";
35
35
  import fs, { promises } from "fs";
36
36
  import path from "path";
37
37
  import yaml from "js-yaml";
@@ -1822,6 +1822,45 @@ Please choose one of the following options:
1822
1822
  };
1823
1823
  //#endregion
1824
1824
  //#region src/providers/azure/assistant.ts
1825
+ const AZURE_ASSISTANT_CACHE_KEY_HMAC_KEY = "promptfoo-azure-assistant-cache-key-v1";
1826
+ function normalizeAzureAssistantCacheValue(value, seen = /* @__PURE__ */ new WeakSet()) {
1827
+ if (Array.isArray(value)) {
1828
+ if (seen.has(value)) return "[Circular]";
1829
+ seen.add(value);
1830
+ const normalized = value.map((item) => normalizeAzureAssistantCacheValue(item, seen));
1831
+ seen.delete(value);
1832
+ return normalized;
1833
+ }
1834
+ if (value && typeof value === "object") {
1835
+ if (seen.has(value)) return "[Circular]";
1836
+ const prototype = Object.getPrototypeOf(value);
1837
+ if (prototype !== Object.prototype && prototype !== null) return value;
1838
+ seen.add(value);
1839
+ const normalized = Object.keys(value).sort().reduce((acc, key) => {
1840
+ acc[key] = normalizeAzureAssistantCacheValue(value[key], seen);
1841
+ return acc;
1842
+ }, {});
1843
+ seen.delete(value);
1844
+ return normalized;
1845
+ }
1846
+ return value;
1847
+ }
1848
+ function hmacAzureAssistantCacheValue(value) {
1849
+ const serialized = safeJsonStringify(normalizeAzureAssistantCacheValue(value));
1850
+ invariant(serialized !== void 0, "Azure Assistant cache key input contains values that cannot be serialized");
1851
+ return createHmac("sha256", AZURE_ASSISTANT_CACHE_KEY_HMAC_KEY).update(serialized).digest("hex");
1852
+ }
1853
+ function getAuthHeadersCacheIdentity(authHeaders) {
1854
+ const entries = Object.entries(authHeaders).sort(([nameA], [nameB]) => nameA.localeCompare(nameB));
1855
+ if (entries.length === 0) return {
1856
+ headerNames: [],
1857
+ namespace: "no-auth"
1858
+ };
1859
+ return {
1860
+ headerNames: entries.map(([name]) => name),
1861
+ namespace: hmacAzureAssistantCacheValue(["auth", entries])
1862
+ };
1863
+ }
1825
1864
  var AzureAssistantProvider = class extends AzureGenericProvider {
1826
1865
  assistantConfig;
1827
1866
  functionCallbackHandler = new FunctionCallbackHandler();
@@ -1836,8 +1875,11 @@ var AzureAssistantProvider = class extends AzureGenericProvider {
1836
1875
  if (!apiBaseUrl) throw new Error("Azure API host must be set.");
1837
1876
  if (!this.authHeaders["api-key"] && !this.authHeaders.Authorization) throw new Error("Azure API authentication failed. Set AZURE_API_KEY environment variable or configure apiKey in provider config.\nYou can also use Microsoft Entra ID authentication.");
1838
1877
  const apiVersion = this.assistantConfig.apiVersion || "2024-04-01-preview";
1839
- const cacheKey = `azure_assistant:${this.deploymentName}:${JSON.stringify({
1878
+ const loadedTools = await maybeLoadToolsFromExternalFile(this.assistantConfig.tools, context?.vars);
1879
+ const cacheKey = `azure_assistant:${this.deploymentName}:${hmacAzureAssistantCacheValue({
1880
+ apiBaseUrl,
1840
1881
  apiVersion,
1882
+ auth: getAuthHeadersCacheIdentity(this.authHeaders),
1841
1883
  instructions: this.assistantConfig.instructions,
1842
1884
  max_tokens: this.assistantConfig.max_tokens,
1843
1885
  model: this.assistantConfig.modelName,
@@ -1846,13 +1888,13 @@ var AzureAssistantProvider = class extends AzureGenericProvider {
1846
1888
  temperature: this.assistantConfig.temperature,
1847
1889
  tool_choice: this.assistantConfig.tool_choice,
1848
1890
  tool_resources: this.assistantConfig.tool_resources,
1849
- tools: JSON.stringify(await maybeLoadToolsFromExternalFile(this.assistantConfig.tools, context?.vars)),
1891
+ tools: loadedTools,
1850
1892
  top_p: this.assistantConfig.top_p
1851
1893
  })}`;
1852
1894
  if (isCacheEnabled()) try {
1853
1895
  const cachedResult = await (await getCache()).get(cacheKey);
1854
1896
  if (cachedResult) {
1855
- logger.debug(`Cache hit for assistant prompt: ${prompt.substring(0, 50)}...`);
1897
+ logger.debug("Cache hit for assistant prompt", { promptLength: prompt.length });
1856
1898
  return {
1857
1899
  ...cachedResult,
1858
1900
  cached: true
@@ -1867,7 +1909,10 @@ var AzureAssistantProvider = class extends AzureGenericProvider {
1867
1909
  headers: await this.getHeaders(),
1868
1910
  body: JSON.stringify({})
1869
1911
  });
1870
- logger.debug(`Created thread ${threadResponse.id} for prompt: ${prompt.substring(0, 30)}...`);
1912
+ logger.debug("Created thread for assistant prompt", {
1913
+ threadId: threadResponse.id,
1914
+ promptLength: prompt.length
1915
+ });
1871
1916
  await this.makeRequest(`${apiBaseUrl}/openai/threads/${threadResponse.id}/messages?api-version=${apiVersion}`, {
1872
1917
  method: "POST",
1873
1918
  headers: await this.getHeaders(),
@@ -1882,7 +1927,6 @@ var AzureAssistantProvider = class extends AzureGenericProvider {
1882
1927
  if (this.assistantConfig.tool_resources) runOptions.tool_resources = this.assistantConfig.tool_resources;
1883
1928
  if (this.assistantConfig.tool_choice) runOptions.tool_choice = this.assistantConfig.tool_choice;
1884
1929
  if (this.assistantConfig.tools) {
1885
- const loadedTools = await maybeLoadToolsFromExternalFile(this.assistantConfig.tools, context?.vars);
1886
1930
  if (loadedTools !== void 0) runOptions.tools = loadedTools;
1887
1931
  }
1888
1932
  if (this.assistantConfig.modelName) runOptions.model = this.assistantConfig.modelName;
@@ -1917,7 +1961,7 @@ var AzureAssistantProvider = class extends AzureGenericProvider {
1917
1961
  }
1918
1962
  if (isCacheEnabled() && !result.error) try {
1919
1963
  await (await getCache()).set(cacheKey, result);
1920
- logger.debug(`Cached assistant response for prompt: ${prompt.substring(0, 50)}...`);
1964
+ logger.debug("Cached assistant response for prompt", { promptLength: prompt.length });
1921
1965
  } catch (err) {
1922
1966
  logger.warn(`Error caching result: ${err}`);
1923
1967
  }
@@ -21618,7 +21662,7 @@ const providerMap = [
21618
21662
  {
21619
21663
  test: (providerPath) => providerPath.startsWith("opencode:") || providerPath === "opencode",
21620
21664
  create: async (providerPath, providerOptions, context) => {
21621
- const { OpenCodeSDKProvider } = await import("./opencode-sdk-sRKYHGoI.js");
21665
+ const { OpenCodeSDKProvider } = await import("./opencode-sdk-CaSOCsBA.js");
21622
21666
  return new OpenCodeSDKProvider({
21623
21667
  ...providerOptions,
21624
21668
  id: providerPath,
@@ -21630,14 +21674,14 @@ const providerMap = [
21630
21674
  {
21631
21675
  test: (providerPath) => providerPath.startsWith("openclaw:") || providerPath === "openclaw",
21632
21676
  create: async (providerPath, providerOptions, context) => {
21633
- const { createOpenClawProvider } = await import("./openclaw-CF7fMido.js");
21677
+ const { createOpenClawProvider } = await import("./openclaw-Cdk9JKfY.js");
21634
21678
  return createOpenClawProvider(providerPath, providerOptions, context.env);
21635
21679
  }
21636
21680
  },
21637
21681
  {
21638
21682
  test: (providerPath) => providerPath.startsWith("anthropic:claude-agent-sdk") || providerPath.startsWith("anthropic:claude-code"),
21639
21683
  create: async (_providerPath, providerOptions, _context) => {
21640
- const { ClaudeCodeSDKProvider } = await import("./claude-agent-sdk-D5Jl0SDh.js");
21684
+ const { ClaudeCodeSDKProvider } = await import("./claude-agent-sdk-BP__YGfK.js");
21641
21685
  return new ClaudeCodeSDKProvider({ ...providerOptions });
21642
21686
  }
21643
21687
  },
@@ -21693,25 +21737,25 @@ const providerMap = [
21693
21737
  const modelName = splits.slice(2).join(":");
21694
21738
  if (modelType === "converse") return new AwsBedrockConverseProvider(modelName, providerOptions);
21695
21739
  if (modelType === "nova-sonic" || modelType.includes("amazon.nova-sonic")) {
21696
- const { NovaSonicProvider } = await import("./nova-sonic-CrV0iaY_.js");
21740
+ const { NovaSonicProvider } = await import("./nova-sonic-BhmnRGyh.js");
21697
21741
  return new NovaSonicProvider("amazon.nova-sonic-v1:0", providerOptions);
21698
21742
  }
21699
21743
  if (modelType.includes("luma.ray") || modelName.includes("luma.ray")) {
21700
- const { LumaRayVideoProvider } = await import("./luma-ray-CR5TSpp4.js");
21744
+ const { LumaRayVideoProvider } = await import("./luma-ray-DP5N79lB.js");
21701
21745
  return new LumaRayVideoProvider(modelName.includes("luma.ray") ? modelName : splits.slice(1).join(":") || "luma.ray-v2:0", providerOptions);
21702
21746
  }
21703
21747
  if (modelType.includes("amazon.nova-reel") || modelType === "video" && (modelName.includes("amazon.nova-reel") || modelName === "")) {
21704
- const { NovaReelVideoProvider } = await import("./nova-reel-B_5NKFu1.js");
21748
+ const { NovaReelVideoProvider } = await import("./nova-reel-CyDESu5J.js");
21705
21749
  return new NovaReelVideoProvider(modelName || "amazon.nova-reel-v1:1", providerOptions);
21706
21750
  }
21707
21751
  if (modelType === "agents") {
21708
- const { AwsBedrockAgentsProvider } = await import("./agents-LrHuQqr1.js");
21752
+ const { AwsBedrockAgentsProvider } = await import("./agents-C-PGaxwj.js");
21709
21753
  return new AwsBedrockAgentsProvider(modelName, providerOptions);
21710
21754
  }
21711
21755
  if (modelType === "completion") return new AwsBedrockCompletionProvider(modelName, providerOptions);
21712
21756
  if (modelType === "embeddings" || modelType === "embedding") return new AwsBedrockEmbeddingProvider(modelName, providerOptions);
21713
21757
  if (modelType === "kb" || modelType === "knowledge-base") {
21714
- const { AwsBedrockKnowledgeBaseProvider } = await import("./knowledgeBase-BadkINlJ.js");
21758
+ const { AwsBedrockKnowledgeBaseProvider } = await import("./knowledgeBase-DxAq4n4z.js");
21715
21759
  return new AwsBedrockKnowledgeBaseProvider(modelName, providerOptions);
21716
21760
  }
21717
21761
  return new AwsBedrockCompletionProvider(splits.slice(1).join(":"), providerOptions);
@@ -21721,7 +21765,7 @@ const providerMap = [
21721
21765
  test: (providerPath) => providerPath.startsWith("bedrock-agent:"),
21722
21766
  create: async (providerPath, providerOptions, _context) => {
21723
21767
  const agentId = providerPath.substring(14);
21724
- const { AwsBedrockAgentsProvider } = await import("./agents-LrHuQqr1.js");
21768
+ const { AwsBedrockAgentsProvider } = await import("./agents-C-PGaxwj.js");
21725
21769
  return new AwsBedrockAgentsProvider(agentId, providerOptions);
21726
21770
  }
21727
21771
  },
@@ -21731,7 +21775,7 @@ const providerMap = [
21731
21775
  const splits = providerPath.split(":");
21732
21776
  const modelType = splits[1];
21733
21777
  const endpointName = splits.slice(2).join(":");
21734
- const { SageMakerCompletionProvider, SageMakerEmbeddingProvider } = await import("./sagemaker-yr1QKeBs.js");
21778
+ const { SageMakerCompletionProvider, SageMakerEmbeddingProvider } = await import("./sagemaker-BwbV5U7_.js");
21735
21779
  if (modelType === "embedding" || modelType === "embeddings") return new SageMakerEmbeddingProvider(endpointName || modelType, providerOptions);
21736
21780
  if (splits.length === 2) return new SageMakerCompletionProvider(modelType, providerOptions);
21737
21781
  if (endpointName.includes("jumpstart") || modelType === "jumpstart") return new SageMakerCompletionProvider(endpointName, {
@@ -21772,7 +21816,7 @@ const providerMap = [
21772
21816
  {
21773
21817
  test: (providerPath) => providerPath.startsWith("cloudflare-ai:"),
21774
21818
  create: async (providerPath, providerOptions, context) => {
21775
- const { createCloudflareAiProvider } = await import("./cloudflare-ai-B6NVI3ax.js");
21819
+ const { createCloudflareAiProvider } = await import("./cloudflare-ai-BGamMotN.js");
21776
21820
  return createCloudflareAiProvider(providerPath, {
21777
21821
  ...providerOptions,
21778
21822
  env: context.env
@@ -21782,7 +21826,7 @@ const providerMap = [
21782
21826
  {
21783
21827
  test: (providerPath) => providerPath.startsWith("cloudflare-gateway:"),
21784
21828
  create: async (providerPath, providerOptions, context) => {
21785
- const { createCloudflareGatewayProvider } = await import("./cloudflare-gateway-BaZ4insB.js");
21829
+ const { createCloudflareGatewayProvider } = await import("./cloudflare-gateway-2lnOT4qM.js");
21786
21830
  return createCloudflareGatewayProvider(providerPath, {
21787
21831
  ...providerOptions,
21788
21832
  env: context.env
@@ -21934,27 +21978,27 @@ const providerMap = [
21934
21978
  create: async (providerPath, providerOptions, context) => {
21935
21979
  const modelType = providerPath.split(":")[1];
21936
21980
  if (modelType === "image") {
21937
- const { createHyperbolicImageProvider } = await import("./image-B_fPIwdg.js");
21981
+ const { createHyperbolicImageProvider } = await import("./image-BBmZdKO3.js");
21938
21982
  return createHyperbolicImageProvider(providerPath, {
21939
21983
  ...providerOptions,
21940
21984
  env: context.env
21941
21985
  });
21942
21986
  }
21943
21987
  if (modelType === "audio") {
21944
- const { createHyperbolicAudioProvider } = await import("./audio-BqnRvcWG.js");
21988
+ const { createHyperbolicAudioProvider } = await import("./audio-heR0mu0n.js");
21945
21989
  return createHyperbolicAudioProvider(providerPath, {
21946
21990
  ...providerOptions,
21947
21991
  env: context.env
21948
21992
  });
21949
21993
  }
21950
- const { createHyperbolicProvider } = await import("./chat-GmlolEwo.js");
21994
+ const { createHyperbolicProvider } = await import("./chat-g5QLeLOo.js");
21951
21995
  return createHyperbolicProvider(providerPath, providerOptions);
21952
21996
  }
21953
21997
  },
21954
21998
  {
21955
21999
  test: (providerPath) => providerPath.startsWith("litellm:"),
21956
22000
  create: async (providerPath, providerOptions, context) => {
21957
- const { createLiteLLMProvider } = await import("./litellm-CNcfbCfa.js");
22001
+ const { createLiteLLMProvider } = await import("./litellm-ojWBKU3C.js");
21958
22002
  return createLiteLLMProvider(providerPath, {
21959
22003
  config: providerOptions,
21960
22004
  env: context.env
@@ -22011,7 +22055,7 @@ const providerMap = [
22011
22055
  const modelName = splits.slice(2).join(":");
22012
22056
  const configuredModel = getConfiguredOpenAiModel(providerOptions);
22013
22057
  if (modelType === "codex-app-server" || modelType === "codex-desktop") {
22014
- const { OpenAICodexAppServerProvider } = await import("./codex-app-server-B8KHEiF4.js");
22058
+ const { OpenAICodexAppServerProvider } = await import("./codex-app-server-DyQB1P0p.js");
22015
22059
  const codexModel = modelName || configuredModel;
22016
22060
  const codexProviderId = providerOptions.id ?? providerPath;
22017
22061
  return new OpenAICodexAppServerProvider({
@@ -22028,7 +22072,7 @@ const providerMap = [
22028
22072
  });
22029
22073
  }
22030
22074
  if (modelType === "codex-sdk" || modelType === "codex") {
22031
- const { OpenAICodexSDKProvider } = await import("./codex-sdk-D2d54RL8.js").then((n) => n.n);
22075
+ const { OpenAICodexSDKProvider } = await import("./codex-sdk-iEmW1eS2.js").then((n) => n.n);
22032
22076
  const codexModel = modelName || configuredModel;
22033
22077
  const codexProviderId = providerOptions.id ?? providerPath;
22034
22078
  return new OpenAICodexSDKProvider({
@@ -22048,7 +22092,7 @@ const providerMap = [
22048
22092
  if (modelType === "realtime") return new OpenAiRealtimeProvider(modelName || configuredModel || "gpt-4o-realtime-preview-2024-12-17", providerOptions);
22049
22093
  if (modelType === "responses") return new OpenAiResponsesProvider(modelName || configuredModel || "gpt-4.1-2025-04-14", providerOptions);
22050
22094
  if (modelType === "transcription") {
22051
- const { OpenAiTranscriptionProvider } = await import("./transcription-B8uIgCYX.js");
22095
+ const { OpenAiTranscriptionProvider } = await import("./transcription-Z94eV9LR.js");
22052
22096
  return new OpenAiTranscriptionProvider(modelName || configuredModel || "gpt-4o-transcribe-diarize", providerOptions);
22053
22097
  }
22054
22098
  if (OpenAiChatCompletionProvider.OPENAI_CHAT_MODEL_NAMES.includes(modelType)) return new OpenAiChatCompletionProvider(modelType, providerOptions);
@@ -22056,7 +22100,7 @@ const providerMap = [
22056
22100
  if (OpenAiRealtimeProvider.OPENAI_REALTIME_MODEL_NAMES.includes(modelType)) return new OpenAiRealtimeProvider(modelType, providerOptions);
22057
22101
  if (OpenAiResponsesProvider.OPENAI_RESPONSES_MODEL_NAMES.includes(modelType)) return new OpenAiResponsesProvider(modelType, providerOptions);
22058
22102
  if (modelType === "agents") {
22059
- const { OpenAiAgentsProvider } = await import("./agents-CYn2n3QP.js");
22103
+ const { OpenAiAgentsProvider } = await import("./agents-BMAiSR2o.js");
22060
22104
  return new OpenAiAgentsProvider(modelName || "default-agent", providerOptions);
22061
22105
  }
22062
22106
  if (modelType === "chatkit") {
@@ -22103,7 +22147,7 @@ const providerMap = [
22103
22147
  {
22104
22148
  test: (providerPath) => providerPath.startsWith("quiverai:"),
22105
22149
  create: async (providerPath, providerOptions, context) => {
22106
- const { createQuiverAiProvider } = await import("./quiverai-CdTWPe-A.js");
22150
+ const { createQuiverAiProvider } = await import("./quiverai-CNMIpZQg.js");
22107
22151
  return createQuiverAiProvider(providerPath, providerOptions, context.env);
22108
22152
  }
22109
22153
  },
@@ -22121,7 +22165,7 @@ const providerMap = [
22121
22165
  {
22122
22166
  test: (providerPath) => providerPath.startsWith("modelslab:"),
22123
22167
  create: async (providerPath, providerOptions, context) => {
22124
- const { ModelsLabImageProvider } = await import("./modelslab-Dzst7VTU.js");
22168
+ const { ModelsLabImageProvider } = await import("./modelslab-CrGpXuhv.js");
22125
22169
  const splits = providerPath.split(":");
22126
22170
  const modelType = splits[1];
22127
22171
  const modelName = splits.slice(2).join(":");
@@ -22165,7 +22209,7 @@ const providerMap = [
22165
22209
  {
22166
22210
  test: (providerPath) => providerPath.startsWith("aimlapi:"),
22167
22211
  create: async (providerPath, providerOptions, context) => {
22168
- const { createAimlApiProvider } = await import("./aimlapi-D5HXzZ0s.js");
22212
+ const { createAimlApiProvider } = await import("./aimlapi-Bi-laUlp.js");
22169
22213
  return createAimlApiProvider(providerPath, {
22170
22214
  ...providerOptions,
22171
22215
  env: context.env
@@ -22175,7 +22219,7 @@ const providerMap = [
22175
22219
  {
22176
22220
  test: (providerPath) => providerPath.startsWith("cometapi:"),
22177
22221
  create: async (providerPath, providerOptions, context) => {
22178
- const { createCometApiProvider } = await import("./cometapi-CtzNCHKu.js");
22222
+ const { createCometApiProvider } = await import("./cometapi-CSIi16a0.js");
22179
22223
  return createCometApiProvider(providerPath, {
22180
22224
  ...providerOptions,
22181
22225
  env: context.env
@@ -22185,7 +22229,7 @@ const providerMap = [
22185
22229
  {
22186
22230
  test: (providerPath) => providerPath.startsWith("docker:"),
22187
22231
  create: async (providerPath, providerOptions, context) => {
22188
- const { createDockerProvider } = await import("./docker-BBv1WUDu.js");
22232
+ const { createDockerProvider } = await import("./docker-Vj_4_cPg.js");
22189
22233
  return createDockerProvider(providerPath, {
22190
22234
  ...providerOptions,
22191
22235
  env: context.env
@@ -22457,7 +22501,7 @@ function isRedteamProviderPath(providerPath) {
22457
22501
  const providerFamilies = [{
22458
22502
  canHandle: isRedteamProviderPath,
22459
22503
  factories: async () => {
22460
- const { redteamProviderFactories } = await import("./registry-Dp5EqoXc.js");
22504
+ const { redteamProviderFactories } = await import("./registry-BTGk2ZkB.js");
22461
22505
  return redteamProviderFactories;
22462
22506
  }
22463
22507
  }];
@@ -22737,4 +22781,4 @@ function getProviderIds(providerPaths) {
22737
22781
  //#endregion
22738
22782
  export { AzureModerationProvider as C, DefaultSynthesizeProvider as S, AzureChatCompletionProvider as T, AIStudioChatProvider as _, resolveProvider as a, DefaultLlmRubricProvider as b, parseScriptParts as c, MistralEmbeddingProvider as d, MCPProvider as f, GoogleLiveProvider as g, VertexChatProvider as h, providers_exports as i, OpenAiModerationProvider as l, DefaultGradingProvider as m, loadApiProvider as n, resolveProviderConfigs as o, DefaultEmbeddingProvider as p, loadApiProviders as r, getFileHashes as s, getProviderIds as t, MistralChatCompletionProvider as u, DefaultGradingJsonProvider as v, AzureEmbeddingProvider as w, DefaultSuggestionsProvider as x, DefaultGradingProvider$1 as y };
22739
22783
 
22740
- //# sourceMappingURL=providers-DVYRZP4E.js.map
22784
+ //# sourceMappingURL=providers-BGc7tDtQ.js.map
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import { n as loadApiProvider, r as loadApiProviders } from "./providers-B9KzWxAX.js";
2
+ import { n as loadApiProvider, r as loadApiProviders } from "./providers-B7TyByfj.js";
3
3
  export { loadApiProvider, loadApiProviders };