promptfoo 0.121.7 → 0.121.9
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.
- package/dist/src/{accounts-Ca7WIoPY.js → accounts-4Xa5fcHy.js} +17 -18
- package/dist/src/{accounts-DanM1wq_.js → accounts-BAajbKSh.js} +17 -18
- package/dist/src/{accounts-CjFnOPmb.js → accounts-Bw2qPqE-.js} +18 -19
- package/dist/src/{accounts-CmWzeD2d.cjs → accounts-DAcQXPwE.cjs} +20 -21
- package/dist/src/{agentic-utils-DvPWSUpb.cjs → agentic-utils-C8eEgGG-.cjs} +3 -3
- package/dist/src/{agentic-utils-TxUEMPYS.js → agentic-utils-CP1IXFz3.js} +3 -3
- package/dist/src/{agentic-utils-DDEGRV9v.js → agentic-utils-CUwa3AE9.js} +3 -3
- package/dist/src/{agentic-utils-CJ0j3fBi.js → agentic-utils-DYr-aM6d.js} +3 -3
- package/dist/src/{agents-CBgJvRkB.js → agents-Bb00M6i5.js} +5 -5
- package/dist/src/{agents-D-vDNFx4.js → agents-CASf5zRj.js} +5 -5
- package/dist/src/{agents-B4sRuXg3.cjs → agents-CD1wH9bm.cjs} +5 -5
- package/dist/src/{agents-CYn2n3QP.js → agents-CZOHU7Q8.js} +5 -5
- package/dist/src/{agents-LrHuQqr1.js → agents-D539zhHr.js} +5 -5
- package/dist/src/{agents-B8q7h_ek.js → agents-DpRJdGBZ.js} +5 -5
- package/dist/src/{agents-QGg76OF-.js → agents-gZTW-8nu.js} +5 -5
- package/dist/src/{agents-eHZ9nlgA.cjs → agents-hix6c0Sh.cjs} +5 -5
- package/dist/src/{aimlapi-eYv3a_DK.js → aimlapi-DRQSL-Z4.js} +7 -7
- package/dist/src/{aimlapi-CJEbQ0o6.js → aimlapi-Dc3LW5zI.js} +7 -7
- package/dist/src/{aimlapi-D5HXzZ0s.js → aimlapi-KNYnjjU6.js} +7 -7
- package/dist/src/{aimlapi-T6HGNxNe.cjs → aimlapi-gnrgd_Ej.cjs} +7 -7
- package/dist/src/app/assets/Report-Clw_YCp-.js +1 -0
- package/dist/src/app/assets/index-BQHaquKk.css +1 -0
- package/dist/src/app/assets/{index-BnT6P6sF.js → index-CW3XcQK7.js} +6 -6
- package/dist/src/app/index.html +2 -2
- package/dist/src/{audio-FnxbEnSE.cjs → audio-BgFTqfMO.cjs} +5 -5
- package/dist/src/{audio-CPMtV1yR.js → audio-Cslbgd4l.js} +5 -5
- package/dist/src/{audio-DyiebVB3.js → audio-DOI8kth4.js} +5 -5
- package/dist/src/{audio-BqnRvcWG.js → audio-hewMOCUU.js} +5 -5
- package/dist/src/{authoritativeMarkupInjection-DyAXAsSr.js → authoritativeMarkupInjection-DgE4u_Rl.js} +8 -8
- package/dist/src/{authoritativeMarkupInjection-QEQmFS83.js → authoritativeMarkupInjection-gpm2K-Rp.js} +8 -8
- package/dist/src/{authoritativeMarkupInjection-BZIywVjG.js → authoritativeMarkupInjection-nrC4mSPQ.js} +7 -7
- package/dist/src/{authoritativeMarkupInjection-F2gBw0lN.cjs → authoritativeMarkupInjection-wG4x0yP2.cjs} +8 -8
- package/dist/src/{base-CKLo890h.js → base-0yya4DsM.js} +3 -3
- package/dist/src/{base-Co80MMCi.js → base-BARAIJmp.js} +3 -3
- package/dist/src/{base-DGJW48uz.cjs → base-BE_pY-r5.cjs} +3 -3
- package/dist/src/{base-E9I8zXjz.js → base-CTWzNAH9.js} +3 -3
- package/dist/src/{bestOfN-BBsO41z4.js → bestOfN-CV7ZKPw2.js} +8 -8
- package/dist/src/{bestOfN-_kTi8Bxe.js → bestOfN-DeucA4QS.js} +9 -9
- package/dist/src/{bestOfN-CAwmg5UL.cjs → bestOfN-DxcpVUvj.cjs} +9 -9
- package/dist/src/{bestOfN-B3wNzjSB.js → bestOfN-Ilxc2hMv.js} +9 -9
- package/dist/src/{blobs-B0977K1O.cjs → blobs-5wbW7TbH.cjs} +3 -3
- package/dist/src/{blobs-Dwef1Ao1.js → blobs-BfIMflt0.js} +3 -3
- package/dist/src/{blobs-DODuTK-a.js → blobs-CA4gXarv.js} +3 -3
- package/dist/src/{blobs-CeFdPn_T.js → blobs-ikh75MtF.js} +3 -3
- package/dist/src/{cache-DpPWrkTE.js → cache-BuudGL4I.js} +5 -5
- package/dist/src/{cache-DIXbtkNO.js → cache-CT5D7d_A.js} +4 -4
- package/dist/src/cache-CrL5EYgi.js +3 -0
- package/dist/src/{cache-CPGUA4Yl.cjs → cache-WuIsgzMA.cjs} +4 -4
- package/dist/src/{cache-roFAE0cI.js → cache-x9llZxbx.js} +5 -5
- package/dist/src/{chat-GmlolEwo.js → chat-B5NqvkS_.js} +3 -3
- package/dist/src/{chat-DqUFcWI0.js → chat-B8lsx0A0.js} +11 -11
- package/dist/src/{chat-DG1wG4w0.cjs → chat-BBlR1h8c.cjs} +3 -3
- package/dist/src/{chat-Dabu84Br.js → chat-CCtIXezK.js} +11 -11
- package/dist/src/{chat-TP8Qifkh.js → chat-CZOhFlzV.js} +3 -3
- package/dist/src/{chat-CUCorGiL.js → chat-CvQMD-mp.js} +11 -11
- package/dist/src/{chat-iwaM5UTQ.js → chat-Dh6mb5OL.js} +3 -3
- package/dist/src/{chat-DxTDQ83C.cjs → chat-DkitQHdt.cjs} +11 -11
- package/dist/src/{chatkit-fARZwEfV.js → chatkit-55cAEQb2.js} +4 -4
- package/dist/src/{chatkit-lb6FK02w.js → chatkit-B-uz3x63.js} +4 -4
- package/dist/src/{chatkit-B6DWi70Q.js → chatkit-Dxp6KO70.js} +4 -4
- package/dist/src/{chatkit-BYveR48_.cjs → chatkit-jEtokOVZ.cjs} +4 -4
- package/dist/src/{claude-agent-sdk-D5Jl0SDh.js → claude-agent-sdk-BVfdeahc.js} +9 -7
- package/dist/src/{claude-agent-sdk-DH416NBD.cjs → claude-agent-sdk-C0p-RhcW.cjs} +9 -7
- package/dist/src/{claude-agent-sdk-x1XJ1-pU.js → claude-agent-sdk-DB99Npst.js} +9 -7
- package/dist/src/{claude-agent-sdk-BQNp_y-F.js → claude-agent-sdk-DHyrhDUu.js} +9 -7
- package/dist/src/cloud-BA4aLhk0.js +3 -0
- package/dist/src/{cloud-D3DiFqH6.js → cloud-BbAl8dyj.js} +3 -3
- package/dist/src/{cloudflare-ai-RFSojyXG.js → cloudflare-ai-ChBxkojW.js} +5 -5
- package/dist/src/{cloudflare-ai-r4tbYmWU.js → cloudflare-ai-DDmTDys_.js} +5 -5
- package/dist/src/{cloudflare-ai-CEAW-xQa.cjs → cloudflare-ai-DPlNiC6I.cjs} +5 -5
- package/dist/src/{cloudflare-ai-B6NVI3ax.js → cloudflare-ai-UsZe6ndv.js} +5 -5
- package/dist/src/{cloudflare-gateway-TJMLBj6I.cjs → cloudflare-gateway-7b-lEtrb.cjs} +4 -4
- package/dist/src/{cloudflare-gateway-BaZ4insB.js → cloudflare-gateway-Bq5cqiV8.js} +4 -4
- package/dist/src/{cloudflare-gateway-CF-Vb-2Z.js → cloudflare-gateway-C0N-5s62.js} +4 -4
- package/dist/src/{cloudflare-gateway-BCkLouto.js → cloudflare-gateway-D5fm-QvC.js} +4 -4
- package/dist/src/{codex-app-server-DIXZ230V.js → codex-app-server-BG5Aphvl.js} +20 -5
- package/dist/src/{codex-app-server-B8KHEiF4.js → codex-app-server-BnPMlcjl.js} +20 -5
- package/dist/src/{codex-app-server-Dd22dC_N.js → codex-app-server-D6gbvJFw.js} +20 -5
- package/dist/src/{codex-app-server-CnrLBCeA.cjs → codex-app-server-Dl6BLKJn.cjs} +20 -5
- package/dist/src/{codex-sdk-B6Wah8Pa.js → codex-sdk-BnRTWAhS.js} +20 -8
- package/dist/src/codex-sdk-CChw5CYU.js +3 -0
- package/dist/src/{codex-sdk-CFF6gUyi.cjs → codex-sdk-Cy1pEjsQ.cjs} +20 -8
- package/dist/src/{codex-sdk-CmQABzV3.js → codex-sdk-D86dT4XV.js} +20 -8
- package/dist/src/{codex-sdk-D2d54RL8.js → codex-sdk-mgUqOG2C.js} +20 -8
- package/dist/src/{cometapi-CtzNCHKu.js → cometapi-CkOfr271.js} +8 -8
- package/dist/src/{cometapi-DHCDlQUI.cjs → cometapi-EB-Is7jj.cjs} +8 -8
- package/dist/src/{cometapi-OBILPLlu.js → cometapi-gvPhrXNM.js} +8 -8
- package/dist/src/{cometapi-Bu9B8NUY.js → cometapi-sBbQmdfk.js} +8 -8
- package/dist/src/{completion-DZNxcyfG.js → completion-BoWiFP-D.js} +7 -7
- package/dist/src/{completion-CO2e1_62.js → completion-C99GFqQE.js} +7 -7
- package/dist/src/{completion-sNvCLTAP.js → completion-CUtdijfr.js} +7 -7
- package/dist/src/{completion-CSYfl2cd.cjs → completion-CkRVjadz.cjs} +7 -7
- package/dist/src/{crescendo-QiaSLW0d.js → crescendo-B4EiUJ-M.js} +43 -22
- package/dist/src/{crescendo-BXEJK_bi.cjs → crescendo-BAN6NuWV.cjs} +45 -24
- package/dist/src/{crescendo-CU_Y2i-m.js → crescendo-CYzxmaSJ.js} +45 -24
- package/dist/src/{crescendo-J1Xx4_zb.js → crescendo-CrsXyaL0.js} +45 -24
- package/dist/src/{custom-BJfP00Bh.js → custom-C5K9QFs1.js} +13 -13
- package/dist/src/{custom-Cqia7M0D.cjs → custom-D1UjT5I5.cjs} +13 -13
- package/dist/src/{custom-CZVn-1-r.js → custom-DnMZvgB6.js} +13 -13
- package/dist/src/{custom-notggYVl.js → custom-EWterxkb.js} +11 -11
- package/dist/src/{docker-DdJQBxK9.js → docker-BFQc9ccU.js} +6 -6
- package/dist/src/{docker-D06JUoe2.cjs → docker-BMfsGXyn.cjs} +6 -6
- package/dist/src/{docker-4D1eL6Gq.js → docker-ChD4-eri.js} +6 -6
- package/dist/src/{docker-BBv1WUDu.js → docker-mZF5j6cW.js} +6 -6
- package/dist/src/{embedding-BbrwopfX.cjs → embedding-BMqFDnLI.cjs} +7 -7
- package/dist/src/{embedding--UZVe4_7.js → embedding-BQBXSWgy.js} +7 -7
- package/dist/src/{embedding-Bi3rxrZF.js → embedding-BwTB3YDt.js} +7 -7
- package/dist/src/{embedding-C251p1-8.js → embedding-cd5oPBkX.js} +7 -7
- package/dist/src/{esm-B6whoAcf.js → esm-CGER3lko.js} +2 -2
- package/dist/src/{esm-Bexx2PFc.js → esm-CYMWMaSj.js} +2 -2
- package/dist/src/{esm-BTK1W7lG.js → esm-C_yrt93A.js} +2 -2
- package/dist/src/{esm-BIKakvNa.cjs → esm-vv4rR-Dp.cjs} +2 -2
- package/dist/src/{eval-0VRANImH.js → eval-DmGWplIN.js} +10 -10
- package/dist/src/{eval-DscR5iOM.js → eval-N_VV5NZg.js} +1 -1
- package/dist/src/{evalResult-CvtS8h8u.cjs → evalResult-BZld6I3I.cjs} +6 -6
- package/dist/src/{evalResult-eUkJv9Ko.js → evalResult-ByGP9zuP.js} +7 -7
- package/dist/src/evalResult-CPPINYHK.js +3 -0
- package/dist/src/{evalResult-2RRJvFyB.js → evalResult-gEmQRANj.js} +6 -6
- package/dist/src/evaluator-B01pCdUY.js +3 -0
- package/dist/src/{evaluator-DRoiYB2q.js → evaluator-BpaUYhLY.js} +37 -37
- package/dist/src/{evaluatorHelpers-CRqTvSux.cjs → evaluatorHelpers-2gpZ9Q_f.cjs} +10 -10
- package/dist/src/{evaluatorHelpers-DuqFFfq7.js → evaluatorHelpers-C8C8WQTv.js} +10 -10
- package/dist/src/{evaluatorHelpers-BsYP_muT.js → evaluatorHelpers-DDG44JeI.js} +10 -10
- package/dist/src/{extractor-CxRtnaHl.js → extractor-Bjz9sdTQ.js} +6 -6
- package/dist/src/{extractor-CIW3iN-b.js → extractor-CtadTcJm.js} +6 -6
- package/dist/src/{extractor-BR7XAzAL.js → extractor-DAnauX2V.js} +6 -6
- package/dist/src/{extractor-BdxEtt3J.cjs → extractor-nyUwvU2U.cjs} +6 -6
- package/dist/src/{fetch-Dw4XZHjj.cjs → fetch-B2HvaVUc.cjs} +14 -12
- package/dist/src/{fetch-DXUnXkVU.js → fetch-C59QM4cf.js} +10 -8
- package/dist/src/{fetch-BufrQtvR.js → fetch-CBe8pU8Q.js} +10 -8
- package/dist/src/{fetch-It34O8Ur.js → fetch-CHJu2KON.js} +9 -7
- package/dist/src/fetch-D_XnRfBV.js +3 -0
- package/dist/src/{goat-Ckd3q3AY.js → goat-0HwO0EB2.js} +22 -21
- package/dist/src/{goat-una6pZGP.cjs → goat-7wQgRcT4.cjs} +22 -21
- package/dist/src/{goat-ghadEDdy.js → goat-BNX0lOFx.js} +20 -19
- package/dist/src/{goat-Qgurm-NP.js → goat-BOVnOl5S.js} +22 -21
- package/dist/src/{graders-BGP99PdK.js → graders-BnO-xoa-.js} +30 -30
- package/dist/src/{graders-ClrU2fnd.cjs → graders-CQv1GT5Q.cjs} +29 -29
- package/dist/src/graders-D4vc1PFi.js +3 -0
- package/dist/src/{graders-BX0f2tvS.js → graders-GNRQ1357.js} +29 -29
- package/dist/src/{graders-C0nXU_ZP.js → graders-k8qmhrPu.js} +31 -31
- package/dist/src/{hydra-BSNZZm2M.js → hydra-BrgGALmB.js} +38 -20
- package/dist/src/{hydra-BxdG4nkg.js → hydra-C38LOovb.js} +36 -18
- package/dist/src/{hydra-DE4xWwyc.js → hydra-CXc0p63W.js} +38 -20
- package/dist/src/{hydra-DrJttnvw.cjs → hydra-Hdj65j0k.cjs} +38 -20
- package/dist/src/{image-B_fPIwdg.js → image-6u3WZ_7H.js} +5 -5
- package/dist/src/{image-BN-hjLL9.js → image-B6hCz0z3.js} +5 -5
- package/dist/src/{image-BvUAW344.js → image-CgmaPlV_.js} +7 -7
- package/dist/src/{image-QzmydkiG.js → image-DXbwwL-r.js} +5 -5
- package/dist/src/{image-X0oY4350.cjs → image-Daa_X_YB.cjs} +7 -7
- package/dist/src/{image-Cvjwx1uY.js → image-DmC5qwQx.js} +7 -7
- package/dist/src/{image-DfVCGPbI.cjs → image-TY6FsHmn.cjs} +5 -5
- package/dist/src/{image-B4oBtu6J.js → image-V0-pYiBI.js} +7 -7
- package/dist/src/index.cjs +137 -140
- package/dist/src/index.d.cts +13 -0
- package/dist/src/index.d.ts +13 -0
- package/dist/src/index.js +137 -140
- package/dist/src/{indirectWebPwn-BJ22AbQa.cjs → indirectWebPwn-04ziKbly.cjs} +5 -5
- package/dist/src/{indirectWebPwn-tNx9OZ35.js → indirectWebPwn-1gHqaL91.js} +5 -5
- package/dist/src/{indirectWebPwn-DBQhOjoD.js → indirectWebPwn-B0CAtvZJ.js} +6 -6
- package/dist/src/{indirectWebPwn-uyWdHx04.js → indirectWebPwn-BXUoJl4I.js} +5 -5
- package/dist/src/{indirectWebPwn-02ZIghCS.js → indirectWebPwn-Biy9I52D.js} +6 -6
- package/dist/src/{indirectWebPwn-OsXnKejv.js → indirectWebPwn-BoPqjm9W.js} +6 -6
- package/dist/src/{indirectWebPwn-CbjUG0rh.js → indirectWebPwn-DRYpRTx6.js} +5 -5
- package/dist/src/{indirectWebPwn-CfQJt3gk.cjs → indirectWebPwn-MiCFTfzI.cjs} +6 -6
- package/dist/src/{inputVariables-DUGMb9Ka.js → inputVariables-B7cylqzM.js} +2 -2
- package/dist/src/{inputVariables-Dq9W-Z3a.cjs → inputVariables-D5K2vTp4.cjs} +2 -2
- package/dist/src/{inputVariables-B0qUChbV.js → inputVariables-DpOsOnzU.js} +3 -3
- package/dist/src/{inputVariables-DXFdi7AI.js → inputVariables-qJmuSN5i.js} +3 -3
- package/dist/src/{interactiveCheck-C4QlIuoR.js → interactiveCheck-BLnDrfjg.js} +2 -2
- package/dist/src/{iterative-FTS4Bz67.js → iterative-BDRx_noa.js} +29 -19
- package/dist/src/{iterative-CpU6i2As.js → iterative-BZxrxnoh.js} +27 -17
- package/dist/src/{iterative-DQBuWM-j.cjs → iterative-KSovqu_j.cjs} +29 -19
- package/dist/src/{iterative-DJQEQpG3.js → iterative-vxBU1IPs.js} +29 -19
- package/dist/src/{iterativeImage-Doz8mgxF.js → iterativeImage-BZuMd4x3.js} +7 -7
- package/dist/src/{iterativeImage-BUABMVOA.js → iterativeImage-DUWLmyVM.js} +6 -6
- package/dist/src/{iterativeImage-ByFWkxax.cjs → iterativeImage-DqNKoaIl.cjs} +7 -7
- package/dist/src/{iterativeImage-BzUapOUi.js → iterativeImage-DwIp1WGB.js} +7 -7
- package/dist/src/{iterativeMeta-CSS8M6Ds.cjs → iterativeMeta-9gsvnsl1.cjs} +39 -19
- package/dist/src/{iterativeMeta-B3YiAOc8.js → iterativeMeta-AgI6UEh6.js} +39 -19
- package/dist/src/{iterativeMeta-C7APE_P1.js → iterativeMeta-BbcVN5nQ.js} +39 -19
- package/dist/src/{iterativeMeta-DgoQ7bLh.js → iterativeMeta-BcF8LsFk.js} +37 -17
- package/dist/src/{iterativeTree-B5zxBBSW.js → iterativeTree-5TLHU9Kx.js} +81 -31
- package/dist/src/{iterativeTree-CPMF10ve.cjs → iterativeTree-7XyY_zdo.cjs} +81 -31
- package/dist/src/{iterativeTree-DvZ7GBwt.js → iterativeTree-CnHx_kPu.js} +81 -31
- package/dist/src/{iterativeTree-CNyIk0Yn.js → iterativeTree-D9I3UJ0P.js} +79 -29
- package/dist/src/{knowledgeBase-CkMljjdg.js → knowledgeBase-BGbDBwr5.js} +5 -5
- package/dist/src/{knowledgeBase-Bi_8sV-H.js → knowledgeBase-BzfBwPyQ.js} +5 -5
- package/dist/src/{knowledgeBase-BadkINlJ.js → knowledgeBase-C_MSTwDt.js} +5 -5
- package/dist/src/{knowledgeBase-DUh34xba.cjs → knowledgeBase-DSVK_YTi.cjs} +5 -5
- package/dist/src/{litellm-BXyn5kZK.js → litellm-CRTmskqC.js} +5 -5
- package/dist/src/{litellm-BKBo0jpC.js → litellm-Ch4E-r4b.js} +5 -5
- package/dist/src/{litellm-CNcfbCfa.js → litellm-DNnk7802.js} +5 -5
- package/dist/src/{litellm-CtAr7bKG.cjs → litellm-jA4_p8mv.cjs} +5 -5
- package/dist/src/{logger-KD8JjCRJ.js → logger-BjYLHvGm.js} +56 -25
- package/dist/src/{logger-cfNpzI4o.cjs → logger-Cm0Nb8YX.cjs} +34 -3
- package/dist/src/{logger-Ct2S6Yx-.js → logger-Cs0I2v_y.js} +34 -3
- package/dist/src/{logger-BbY6ypFL.js → logger-h-eiS4iv.js} +34 -3
- package/dist/src/{luma-ray-D3FUc2K3.cjs → luma-ray-BCkN79tz.cjs} +5 -5
- package/dist/src/{luma-ray-CR5TSpp4.js → luma-ray-BqVizUQY.js} +5 -5
- package/dist/src/{luma-ray-BMX1iEB6.js → luma-ray-CD7rd6KW.js} +5 -5
- package/dist/src/{luma-ray-OEMmS1RB.js → luma-ray-DLWLjDCa.js} +5 -5
- package/dist/src/main.js +143 -146
- package/dist/src/{memoryPoisoning-Dp-btinn.cjs → memoryPoisoning-BXDi4XCK.cjs} +8 -8
- package/dist/src/{memoryPoisoning-CM83NWYl.js → memoryPoisoning-D-V4yXjj.js} +8 -8
- package/dist/src/{memoryPoisoning-D8h9gXJF.js → memoryPoisoning-PrsT7Zh2.js} +8 -8
- package/dist/src/{memoryPoisoning-cLuCoTuJ.js → memoryPoisoning-ZUwCLvEn.js} +8 -8
- package/dist/src/{messages-DBPir0TQ.cjs → messages-BSFLFXIO.cjs} +8 -8
- package/dist/src/{messages-BabO-cX8.js → messages-C5qBfONg.js} +8 -8
- package/dist/src/{messages-DGUlSNU7.js → messages-CQoK4jHx.js} +8 -8
- package/dist/src/{messages-vsE_-Lv0.js → messages-Dy5vvc3H.js} +8 -8
- package/dist/src/{mischievousUser-olGgHIVR.cjs → mischievousUser-B4_YRWqu.cjs} +5 -5
- package/dist/src/{mischievousUser-frFYKxu6.js → mischievousUser-BoZy3Fry.js} +5 -5
- package/dist/src/{mischievousUser-BUOP9W5r.js → mischievousUser-CjJ9ZEuw.js} +5 -5
- package/dist/src/{mischievousUser-0l8GD7Dp.js → mischievousUser-CrMXlOUj.js} +5 -5
- package/dist/src/{modelslab-EyDczZ5A.js → modelslab-B72XbAlR.js} +8 -8
- package/dist/src/{modelslab-Dzst7VTU.js → modelslab-Bw-46LmW.js} +8 -8
- package/dist/src/{modelslab-Cogmu4mG.js → modelslab-CJ0zQdDH.js} +8 -8
- package/dist/src/{modelslab-CNV5bMSk.cjs → modelslab-LXFLCD-O.cjs} +8 -8
- package/dist/src/{nova-reel-CjJRxI1X.cjs → nova-reel-D0k0-k8Y.cjs} +5 -5
- package/dist/src/{nova-reel-C4eUJGse.js → nova-reel-DItvBa6z.js} +5 -5
- package/dist/src/{nova-reel-BGPNBOMS.js → nova-reel-DN7gTJzd.js} +5 -5
- package/dist/src/{nova-reel-B_5NKFu1.js → nova-reel-DRLvlFOH.js} +5 -5
- package/dist/src/{nova-sonic-BNGmgfFz.js → nova-sonic-BeAjEzkG.js} +3 -3
- package/dist/src/{nova-sonic-CrV0iaY_.js → nova-sonic-DB7LzcCY.js} +3 -3
- package/dist/src/{nova-sonic-DuOG9Aun.cjs → nova-sonic-DfLkPbkF.cjs} +3 -3
- package/dist/src/{nova-sonic-ChPlh5na.js → nova-sonic-kzIVxZDb.js} +3 -3
- package/dist/src/{openai-BMHD2Huo.js → openai-Bfbg6L4c.js} +2 -2
- package/dist/src/{openai-C3uXv8wS.cjs → openai-CCaz18I4.cjs} +2 -2
- package/dist/src/{openai-CJrsh9n4.js → openai-CJOpg_dA.js} +2 -2
- package/dist/src/{openai-zgwBb4Ff.js → openai-uRacy72N.js} +2 -2
- package/dist/src/{openclaw-zIJAsz3P.js → openclaw-2Y9Ukt9Y.js} +9 -9
- package/dist/src/{openclaw-CF7fMido.js → openclaw-BdnuiqBG.js} +9 -9
- package/dist/src/{openclaw-Dphc01BY.cjs → openclaw-D54hA9Fe.cjs} +9 -9
- package/dist/src/{openclaw-BIHlu_36.js → openclaw-DRjsDCSS.js} +9 -9
- package/dist/src/{opencode-sdk-B3vlPLsp.js → opencode-sdk-2su-bzyz.js} +38 -9
- package/dist/src/{opencode-sdk-DoY6GbWw.cjs → opencode-sdk-BRkqgOOQ.cjs} +38 -9
- package/dist/src/{opencode-sdk-D05JSgMQ.js → opencode-sdk-CFY-1bkH.js} +38 -9
- package/dist/src/{opencode-sdk-sRKYHGoI.js → opencode-sdk-D-tRQJ9s.js} +38 -9
- package/dist/src/{otlpReceiver-B2eaKC8C.js → otlpReceiver-BkB7tsTT.js} +3 -3
- package/dist/src/{otlpReceiver--gTpSagc.js → otlpReceiver-BqJYGC-M.js} +4 -4
- package/dist/src/{otlpReceiver-BXjcRqAM.js → otlpReceiver-CRwU2egH.js} +4 -4
- package/dist/src/{otlpReceiver-CvJdBGSc.cjs → otlpReceiver-DOl5S07u.cjs} +4 -4
- package/dist/src/{packageParser--MWTSrPW.js → packageParser-B3bpKHK4.js} +2 -2
- package/dist/src/{packageParser-hwwSGnAZ.js → packageParser-CZdMKLBh.js} +2 -2
- package/dist/src/{packageParser-CgE-ziRo.js → packageParser-D7YWfcSe.js} +2 -2
- package/dist/src/{packageParser-QoCS1FMl.cjs → packageParser-DR054ceU.cjs} +2 -2
- package/dist/src/{promptLength-B9nZEfO6.js → promptLength-5B4_P93z.js} +2 -2
- package/dist/src/{promptLength-BbBbDHNj.cjs → promptLength-CAcg7BmO.cjs} +2 -2
- package/dist/src/{promptLength-4X-Wd8PG.js → promptLength-PkjlYFx0.js} +2 -2
- package/dist/src/{promptLength-0qIHyhA5.js → promptLength-ho3wbst6.js} +2 -2
- package/dist/src/{promptfoo-BDrfT30-.js → promptfoo-CEsoPlBa.js} +67 -10
- package/dist/src/{promptfoo-b-baRMj-.cjs → promptfoo-DAXBmrE6.cjs} +96 -9
- package/dist/src/{promptfoo-Cm4hiy1Y.js → promptfoo-DVKqidd8.js} +67 -10
- package/dist/src/{promptfoo-Rjp-MeBb.js → promptfoo-wxe28-q9.js} +67 -10
- package/dist/src/{providerRegistry-DHcFiVWX.js → providerRegistry-Bf4tRLgu.js} +2 -2
- package/dist/src/{providerRegistry-CZO_w7ue.cjs → providerRegistry-DKbi2EbP.cjs} +2 -2
- package/dist/src/{providerRegistry-ReCd0sFa.js → providerRegistry-DLeG-xXn.js} +2 -2
- package/dist/src/{providerRegistry-1gB5vtzQ.js → providerRegistry-v8Wa3f9z.js} +2 -2
- package/dist/src/{providers-B9KzWxAX.js → providers-CYBHjFEg.js} +178 -126
- package/dist/src/{providers-BCCz6_IX.js → providers-DDLQc0tl.js} +177 -125
- package/dist/src/{providers-BDVVIQM6.cjs → providers-DP1CDgd5.cjs} +176 -124
- package/dist/src/{providers-DVYRZP4E.js → providers-DTPwadhk.js} +176 -124
- package/dist/src/{providers-BYAn82cf.js → providers-DvBFcsXi.js} +1 -1
- package/dist/src/{pythonUtils-Cokhluq3.cjs → pythonUtils-BjuymNdM.cjs} +3 -3
- package/dist/src/{pythonUtils-D0BYebvX.js → pythonUtils-C4Wnz6Q7.js} +3 -3
- package/dist/src/{pythonUtils-CLCgQ9tt.js → pythonUtils-CBe7VV6f.js} +3 -3
- package/dist/src/{pythonUtils-CgYxeSmO.js → pythonUtils-CLAoc6jg.js} +3 -3
- package/dist/src/{quiverai-CdTWPe-A.js → quiverai-B6ebiUKf.js} +6 -6
- package/dist/src/{quiverai-Cv7rJKDz.js → quiverai-BG7dvOQc.js} +6 -6
- package/dist/src/{quiverai-BAp6iTZD.cjs → quiverai-DH6SMaxD.cjs} +6 -6
- package/dist/src/{quiverai-BvIhI_0l.js → quiverai-DHNIAUfS.js} +6 -6
- package/dist/src/{registry-BUJrgjwv.js → registry-BKlwRYvr.js} +14 -14
- package/dist/src/{registry-KCVF1CFC.cjs → registry-CQHRTGYs.cjs} +14 -14
- package/dist/src/{registry-Dp5EqoXc.js → registry-Eiv-QeUm.js} +14 -14
- package/dist/src/{registry-DXm1t_x0.js → registry-qNoxbVEb.js} +14 -14
- package/dist/src/{remoteGeneration-DS9N3pgB.cjs → remoteGeneration-CD3c_rzc.cjs} +6 -6
- package/dist/src/{remoteGeneration-DsaSwmG2.js → remoteGeneration-CoxtxLvB.js} +6 -6
- package/dist/src/{remoteGeneration-B1_XsKXU.js → remoteGeneration-DW6mPZnO.js} +6 -6
- package/dist/src/{remoteGeneration-COpWcmWd.js → remoteGeneration-DvWEm3yi.js} +6 -6
- package/dist/src/{render-_6ur1fhE.js → render-BoxrvB84.js} +2 -2
- package/dist/src/{render-DFfDeYUK.js → render-CTZQAINJ.js} +2 -2
- package/dist/src/{render-BNTrbmBw.cjs → render-DJ4yipCD.cjs} +2 -2
- package/dist/src/{render-DznWrxGO.js → render-MiyTvDY4.js} +2 -2
- package/dist/src/{render-CSP99NLm.js → render-jE6RKVgk.js} +2 -2
- package/dist/src/{responses-1UFFF9N_.cjs → responses-Bs2_3zyr.cjs} +14 -10
- package/dist/src/{responses-B3W2JvOQ.js → responses-C0yU3fO6.js} +14 -10
- package/dist/src/{responses-URRzV8qE.js → responses-C2vhwf8F.js} +14 -10
- package/dist/src/{responses-B6ktc3Ra.js → responses-pvlY3oYx.js} +14 -10
- package/dist/src/{rubyUtils-CnlW8AYb.js → rubyUtils-AvgsD_QH.js} +3 -3
- package/dist/src/{rubyUtils-CqUWBZAt.cjs → rubyUtils-BEqeZynS.cjs} +3 -3
- package/dist/src/{rubyUtils-CXlFM2rR.js → rubyUtils-C-sxXgGT.js} +3 -3
- package/dist/src/{rubyUtils-DdGojpfv.js → rubyUtils-DFzPvVD4.js} +3 -3
- package/dist/src/rubyUtils-DfYaGbxe.js +3 -0
- package/dist/src/{runtimeTransform-DigbjU1r.js → runtimeTransform-BmhEztlx.js} +2 -2
- package/dist/src/{runtimeTransform-BJOpL9Yc.js → runtimeTransform-Bw9Tttpp.js} +2 -2
- package/dist/src/{runtimeTransform-ON3YYILw.cjs → runtimeTransform-DJEknTZQ.cjs} +2 -2
- package/dist/src/{runtimeTransform-Dgh_D7DU.js → runtimeTransform-s14J7yxm.js} +2 -2
- package/dist/src/{sagemaker-yr1QKeBs.js → sagemaker-C8NJAT8D.js} +11 -11
- package/dist/src/{sagemaker-vhtSV7JI.js → sagemaker-DlajLLgJ.js} +11 -11
- package/dist/src/{sagemaker-CujrzP1a.js → sagemaker-PgIzjxMt.js} +11 -11
- package/dist/src/{sagemaker-DzffAqo_.cjs → sagemaker-hwPXLGI4.cjs} +11 -11
- package/dist/src/{scanner-DS0109SS.js → scanner-B3DPvw5u.js} +6 -6
- package/dist/src/server/index.js +145 -148
- package/dist/src/{server-DhMHosWj.js → server-4wx571OM.js} +6 -6
- package/dist/src/{server-Ddp8GNMp.js → server-8in_Vrrf.js} +6 -6
- package/dist/src/server-BHd6SQYX.js +3 -0
- package/dist/src/{server-CMJD10J4.js → server-pMTgWs3M.js} +4 -4
- package/dist/src/{server-B8rqV126.cjs → server-yHhoBx98.cjs} +4 -4
- package/dist/src/{shared-D6IjElRI.js → shared-BF25a7ms.js} +12 -12
- package/dist/src/{shared-WkgnDkcg.cjs → shared-DlmtkptR.cjs} +12 -12
- package/dist/src/{shared-9WHQ1oNE.js → shared-DsbObxvy.js} +12 -12
- package/dist/src/{shared-7pmVZLNO.js → shared-yBQATkD5.js} +13 -13
- package/dist/src/{signal-CSurUUyV.js → signal-CRrWj2xI.js} +3 -3
- package/dist/src/{simulatedUser-Cu601Dd4.cjs → simulatedUser-9A3YPDh2.cjs} +7 -7
- package/dist/src/{simulatedUser-C9aQObBI.js → simulatedUser-CbZZV7UQ.js} +7 -7
- package/dist/src/{simulatedUser-U_qAHnuB.js → simulatedUser-DdcsTBuS.js} +7 -7
- package/dist/src/{simulatedUser-p3tACcmw.js → simulatedUser-LKk31Iov.js} +7 -7
- package/dist/src/{slack-Bapo-7_8.js → slack-CWxUAo6N.js} +2 -2
- package/dist/src/{slack-DMC1QVEg.cjs → slack-CtMQnlyy.cjs} +2 -2
- package/dist/src/{slack-DTEFhrMn.js → slack-DrcMAkvd.js} +2 -2
- package/dist/src/{slack-k-_CP84Q.js → slack-chzmaYU3.js} +2 -2
- package/dist/src/{storage-BU4qcnOb.js → storage-B9lg2RCL.js} +6 -6
- package/dist/src/{storage-QdU-SmvD.js → storage-BC9TzmHh.js} +5 -5
- package/dist/src/{storage-CA-v9V2v.cjs → storage-Cv7QYUPO.cjs} +4 -4
- package/dist/src/{storage-CD-GWAdx.js → storage-fbHNSuZ9.js} +4 -4
- package/dist/src/{store-B2NDDooM.cjs → store-BKN4VD-m.cjs} +3 -3
- package/dist/src/{store-HpopRVzl.js → store-C4eo8Kyv.js} +3 -3
- package/dist/src/store-mJpYYA7W.js +3 -0
- package/dist/src/{store-DKd5592Q.js → store-u1XNK3e8.js} +3 -3
- package/dist/src/{strategies-CiSeroPH.js → strategies-4Nnr_9xt.js} +18 -18
- package/dist/src/{strategies-7CS3Alao.cjs → strategies-BD7US9WB.cjs} +18 -18
- package/dist/src/{strategies-DRJjGTIY.js → strategies-Ptz_P4P4.js} +20 -20
- package/dist/src/{tables-CRSXQ2Ke.js → tables-Bn3_8sxV.js} +2 -2
- package/dist/src/{tables-DafUHOeh.js → tables-D_ZGKiGc.js} +3 -3
- package/dist/src/{tables-DBIJU0WE.cjs → tables-D_s2HMPP.cjs} +2 -2
- package/dist/src/{tables-CxjU7bBd.js → tables-PWOqfbI_.js} +3 -3
- package/dist/src/{telemetry-DwX9XUN5.js → telemetry-BTIhfopq.js} +21 -16
- package/dist/src/{telemetry-00ezXr_t.js → telemetry-BU80NveV.js} +21 -16
- package/dist/src/telemetry-CVHVhMOI.js +3 -0
- package/dist/src/{telemetry-DmXYcJNV.js → telemetry-D3yQCekN.js} +21 -16
- package/dist/src/{telemetry-CJ7FnCsc.cjs → telemetry-DvzmDrSM.cjs} +21 -16
- package/dist/src/{tracingOptions-BnwKCkSB.js → tracingOptions-D2F0D7es.js} +4 -4
- package/dist/src/{tracingOptions-Chi74lOD.js → tracingOptions-PLePpCmo.js} +3 -3
- package/dist/src/{tracingOptions-ji2OuXbT.js → tracingOptions-WpE9IqC8.js} +4 -4
- package/dist/src/{tracingOptions-DrbSFaKy.cjs → tracingOptions-eqmq5sA2.cjs} +4 -4
- package/dist/src/{transcription-mzuf18Mq.cjs → transcription-CKLxdMxm.cjs} +7 -7
- package/dist/src/{transcription-B8uIgCYX.js → transcription-CmlDorqD.js} +7 -7
- package/dist/src/{transcription-CfU5loSq.js → transcription-Cupf4JNw.js} +7 -7
- package/dist/src/{transcription-Dkd22_4K.js → transcription-sOgdGxM6.js} +7 -7
- package/dist/src/{transform-BnSXWmU_2.cjs → transform-0wnBYYaL2.cjs} +4 -4
- package/dist/src/{transform-EtD4jAWi.js → transform-AfC8gqCB.js} +5 -5
- package/dist/src/{transform-CGt7Kt3y2.js → transform-BDSnWRNv2.js} +4 -4
- package/dist/src/{transform-BnSTnFlp.js → transform-C5pxvKUV.js} +4 -4
- package/dist/src/{transform-CrPGTsij.js → transform-C5rpIuDz.js} +4 -4
- package/dist/src/{transform-DmvYBRll.js → transform-D7QlmswG.js} +5 -5
- package/dist/src/{transform-DhNkAUs8.cjs → transform-DKw2FNwg.cjs} +5 -5
- package/dist/src/{transform-BIMynQsA.js → transform-R1PnNdLv.js} +5 -5
- package/dist/src/{types-BFevViUY.js → types-C_e_SykX.js} +2 -2
- package/dist/src/{types-BJQBBPTP.js → types-uLCKnRiK.js} +2 -2
- package/dist/src/{util-CN8om2rz.cjs → util-3BRss2KA.cjs} +7 -7
- package/dist/src/{util-efByNxcr.js → util-B2Nt2Oy7.js} +25 -7
- package/dist/src/{util-I-Rf-KaD.js → util-BGfk7zh7.js} +8 -8
- package/dist/src/{util-5WnCSb0h.js → util-BLSQ_7Ky.js} +25 -7
- package/dist/src/{util-IYzs5Y04.cjs → util-BSZPCmvm.cjs} +4 -3
- package/dist/src/{util-SPsvFONY.cjs → util-BuYzkbEz.cjs} +7 -7
- package/dist/src/{util-LKTmNsMQ.js → util-C6d3eV0A.js} +25 -7
- package/dist/src/{util-DURocbYR.js → util-CES4qWd7.js} +8 -8
- package/dist/src/{util-Df8YMvS1.js → util-CKZReNsz.js} +8 -8
- package/dist/src/{util-BSIuSLVK.cjs → util-Cs372i1_.cjs} +25 -7
- package/dist/src/{util-CoQWM76y.js → util-Cw9nJJWm.js} +4 -3
- package/dist/src/{util-DNl96nNs.js → util-D1NKMz55.js} +7 -7
- package/dist/src/{util-kDURhgJW.js → util-D9grslJP.js} +8 -8
- package/dist/src/{util--WMgw7wM.js → util-SNUDkWJ8.js} +4 -3
- package/dist/src/{util-Bx677_k2.js → util-vaCPFatZ.js} +7 -7
- package/dist/src/{util-DiQ3QvBB.js → util-weQgMdSy.js} +4 -3
- package/dist/src/{utils-Ve6kuJsa.cjs → utils-B_HCobst.cjs} +2 -2
- package/dist/src/{utils-BGY69tk_.js → utils-C3qMBhJT.js} +2 -2
- package/dist/src/{utils-BFOh20Gb.js → utils-Cdx3ZJr7.js} +2 -2
- package/dist/src/{utils-B0lzitHZ.js → utils-DMWnIu_V.js} +2 -2
- package/dist/src/{version-BK20a4sw.js → version-BGiEZvX0.js} +2 -2
- package/dist/src/{version-lpHV_53E.js → version-BNhpIb2U.js} +2 -2
- package/dist/src/{version-eRkNuGv8.js → version-CnYqmWbz.js} +2 -2
- package/dist/src/{version-BWCSaByA.cjs → version-XjGPawtU.cjs} +2 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +17 -17
- package/dist/src/app/assets/Report-BNHJKN35.js +0 -1
- package/dist/src/app/assets/index-yhM8y1PP.css +0 -1
- package/dist/src/cache-Cf7b4pWE.js +0 -3
- package/dist/src/cloud-p96PA4MH.js +0 -3
- package/dist/src/codex-sdk-BGjVAk23.js +0 -3
- package/dist/src/evalResult-DqzsS6_W.js +0 -3
- package/dist/src/evaluator-DNdJF1Gv.js +0 -3
- package/dist/src/fetch-_YgGd2qv.js +0 -3
- package/dist/src/graders-BDT7dif6.js +0 -3
- package/dist/src/rubyUtils-BYVlQ94c.js +0 -3
- package/dist/src/server-BaLytskk.js +0 -3
- package/dist/src/store-IbiRIF3k.js +0 -3
- package/dist/src/telemetry-ByPqDcKC.js +0 -3
|
@@ -1,32 +1,32 @@
|
|
|
1
1
|
import { t as __exportAll } from "./chunk-DEq-mXcV.js";
|
|
2
|
-
import { O as isCI, S as getEnvBool, T as getEnvString, a as logger, h as extractJsonObjects, k as state, m as extractFirstJsonObject, y as safeJsonStringify } from "./logger-
|
|
2
|
+
import { O as isCI, S as getEnvBool, T as getEnvString, a as logger, h as extractJsonObjects, k as state, m as extractFirstJsonObject, y as safeJsonStringify } from "./logger-Cs0I2v_y.js";
|
|
3
3
|
import { t as invariant } from "./invariant-Ddh24eXh.js";
|
|
4
4
|
import { Et as CODING_AGENT_PLUGIN_DISPLAY_NAMES, L as PolicyObjectSchema, Tt as CODING_AGENT_PLUGIN_DESCRIPTIONS, W as MULTI_TURN_STRATEGIES, Wt as isApiProvider, j as PromptSchema, wt as CODING_AGENT_PLUGINS, z as isValidReusablePolicyId, zt as buildInputPromptDescription } from "./types-D6glLbdF.js";
|
|
5
|
-
import { l as sleep,
|
|
5
|
+
import { l as sleep, m as getRequestTimeoutMs, r as fetchWithTimeout, t as fetchWithProxy } from "./fetch-CHJu2KON.js";
|
|
6
6
|
import { i as isJavascriptFile } from "./fileExtensions-CXRfY3Ss.js";
|
|
7
|
-
import { i as getUserEmail } from "./accounts-
|
|
8
|
-
import { r as importModule } from "./esm-
|
|
9
|
-
import { i as extractVariablesFromTemplate, o as getNunjucksEngine } from "./render-
|
|
10
|
-
import { d as hasCodexDefaultCredentials, l as shouldGenerateRemote, r as getRemoteGenerationUrl, u as getCodexDefaultProviders } from "./remoteGeneration-
|
|
11
|
-
import { l as getPoliciesFromCloud } from "./storage-
|
|
12
|
-
import { r as runPython } from "./pythonUtils-
|
|
13
|
-
import { N as parseFileUrl, O as maybeLoadToolsFromExternalFile, S as getNunjucksEngineForFilePath, T as maybeLoadFromExternalFile, k as parsePathOrGlob, w as maybeLoadConfigFromExternalFile } from "./util-
|
|
7
|
+
import { i as getUserEmail } from "./accounts-4Xa5fcHy.js";
|
|
8
|
+
import { r as importModule } from "./esm-C_yrt93A.js";
|
|
9
|
+
import { i as extractVariablesFromTemplate, o as getNunjucksEngine } from "./render-CTZQAINJ.js";
|
|
10
|
+
import { d as hasCodexDefaultCredentials, l as shouldGenerateRemote, r as getRemoteGenerationUrl, u as getCodexDefaultProviders } from "./remoteGeneration-DvWEm3yi.js";
|
|
11
|
+
import { l as getPoliciesFromCloud } from "./storage-fbHNSuZ9.js";
|
|
12
|
+
import { r as runPython } from "./pythonUtils-C4Wnz6Q7.js";
|
|
13
|
+
import { N as parseFileUrl, O as maybeLoadToolsFromExternalFile, S as getNunjucksEngineForFilePath, T as maybeLoadFromExternalFile, k as parsePathOrGlob, w as maybeLoadConfigFromExternalFile } from "./util-vaCPFatZ.js";
|
|
14
14
|
import { n as sha256 } from "./createHash-BtbSX3mj.js";
|
|
15
|
-
import { i as getCache, o as isCacheEnabled, r as fetchWithCache } from "./cache-
|
|
16
|
-
import { t as OpenAiChatCompletionProvider } from "./chat-
|
|
17
|
-
import { x as hasGoogleDefaultCredentials } from "./transform-
|
|
18
|
-
import { C as AzureModerationProvider, S as DefaultSynthesizeProvider$1, T as AzureChatCompletionProvider, b as DefaultLlmRubricProvider, c as parseScriptParts, d as MistralEmbeddingProvider, l as OpenAiModerationProvider, m as DefaultGradingProvider$3, n as loadApiProvider, p as DefaultEmbeddingProvider$2, s as getFileHashes, u as MistralChatCompletionProvider, v as DefaultGradingJsonProvider$2, w as AzureEmbeddingProvider, x as DefaultSuggestionsProvider$2, y as DefaultGradingProvider$2 } from "./providers-
|
|
19
|
-
import { t as OpenAiEmbeddingProvider } from "./embedding-
|
|
15
|
+
import { i as getCache, o as isCacheEnabled, r as fetchWithCache } from "./cache-CT5D7d_A.js";
|
|
16
|
+
import { t as OpenAiChatCompletionProvider } from "./chat-CCtIXezK.js";
|
|
17
|
+
import { x as hasGoogleDefaultCredentials } from "./transform-R1PnNdLv.js";
|
|
18
|
+
import { C as AzureModerationProvider, S as DefaultSynthesizeProvider$1, T as AzureChatCompletionProvider, b as DefaultLlmRubricProvider, c as parseScriptParts, d as MistralEmbeddingProvider, l as OpenAiModerationProvider, m as DefaultGradingProvider$3, n as loadApiProvider, p as DefaultEmbeddingProvider$2, s as getFileHashes, u as MistralChatCompletionProvider, v as DefaultGradingJsonProvider$2, w as AzureEmbeddingProvider, x as DefaultSuggestionsProvider$2, y as DefaultGradingProvider$2 } from "./providers-DTPwadhk.js";
|
|
19
|
+
import { t as OpenAiEmbeddingProvider } from "./embedding-cd5oPBkX.js";
|
|
20
20
|
import { r as accumulateTokenUsage } from "./tokenUsageUtils-CmnQ0G2m.js";
|
|
21
|
-
import { t as AnthropicMessagesProvider } from "./messages-
|
|
22
|
-
import { t as OpenAiResponsesProvider } from "./responses-
|
|
23
|
-
import { n as materializeInputVariablesWithMetadata } from "./inputVariables-
|
|
24
|
-
import { a as extractPromptFromTags, c as isBasicRefusal, i as extractMaterializedVariablesFromJsonWithMetadata, l as isEmptyResponse, n as extractGoalFromPrompt, r as extractInputVarsFromPrompt, s as getShortPluginId, t as extractAllPromptsFromTags, u as removePrefix } from "./util-
|
|
25
|
-
import { _ as isRateLimitWrapped, f as redteamProviderManager, g as createProviderRateLimitOptions } from "./shared-
|
|
26
|
-
import { a as PROMPT_DELIMITER, n as maybeFilePath, r as normalizeInput } from "./utils-
|
|
27
|
-
import { n as getGeneratedPromptOverLimit, r as getMaxCharsPerMessageModifierValue, t as MAX_CHARS_PER_MESSAGE_MODIFIER_KEY } from "./promptLength-
|
|
21
|
+
import { t as AnthropicMessagesProvider } from "./messages-Dy5vvc3H.js";
|
|
22
|
+
import { t as OpenAiResponsesProvider } from "./responses-C2vhwf8F.js";
|
|
23
|
+
import { n as materializeInputVariablesWithMetadata } from "./inputVariables-B7cylqzM.js";
|
|
24
|
+
import { a as extractPromptFromTags, c as isBasicRefusal, i as extractMaterializedVariablesFromJsonWithMetadata, l as isEmptyResponse, n as extractGoalFromPrompt, r as extractInputVarsFromPrompt, s as getShortPluginId, t as extractAllPromptsFromTags, u as removePrefix } from "./util-D1NKMz55.js";
|
|
25
|
+
import { _ as isRateLimitWrapped, f as redteamProviderManager, g as createProviderRateLimitOptions } from "./shared-BF25a7ms.js";
|
|
26
|
+
import { a as PROMPT_DELIMITER, n as maybeFilePath, r as normalizeInput } from "./utils-C3qMBhJT.js";
|
|
27
|
+
import { n as getGeneratedPromptOverLimit, r as getMaxCharsPerMessageModifierValue, t as MAX_CHARS_PER_MESSAGE_MODIFIER_KEY } from "./promptLength-ho3wbst6.js";
|
|
28
28
|
import { t as REDTEAM_MEMORY_POISONING_PLUGIN_ID } from "./constants-DZGEFLsu.js";
|
|
29
|
-
import { n as checkExfilTracking } from "./indirectWebPwn-
|
|
29
|
+
import { n as checkExfilTracking } from "./indirectWebPwn-1gHqaL91.js";
|
|
30
30
|
import * as fs$2 from "fs";
|
|
31
31
|
import fs from "fs";
|
|
32
32
|
import path from "path";
|
|
@@ -276,13 +276,13 @@ const DefaultSuggestionsProvider$1 = new MistralChatCompletionProvider("mistral-
|
|
|
276
276
|
const DefaultSynthesizeProvider = new MistralChatCompletionProvider("mistral-large-latest");
|
|
277
277
|
//#endregion
|
|
278
278
|
//#region src/providers/openai/defaults.ts
|
|
279
|
-
const DEFAULT_OPENAI_GRADING_MODEL = "gpt-5.
|
|
279
|
+
const DEFAULT_OPENAI_GRADING_MODEL = "gpt-5.5-2026-04-23";
|
|
280
280
|
const DefaultEmbeddingProvider = new OpenAiEmbeddingProvider("text-embedding-3-large");
|
|
281
281
|
const DefaultGradingProvider = new OpenAiChatCompletionProvider(DEFAULT_OPENAI_GRADING_MODEL);
|
|
282
282
|
const DefaultGradingJsonProvider = new OpenAiChatCompletionProvider(DEFAULT_OPENAI_GRADING_MODEL, { config: { response_format: { type: "json_object" } } });
|
|
283
283
|
const DefaultSuggestionsProvider = new OpenAiChatCompletionProvider(DEFAULT_OPENAI_GRADING_MODEL);
|
|
284
284
|
const DefaultModerationProvider = new OpenAiModerationProvider("omni-moderation-latest");
|
|
285
|
-
const DefaultWebSearchProvider = new OpenAiResponsesProvider("gpt-5.
|
|
285
|
+
const DefaultWebSearchProvider = new OpenAiResponsesProvider("gpt-5.5-2026-04-23", { config: { tools: [{ type: "web_search_preview" }] } });
|
|
286
286
|
async function getDefaultProviderPreferences(env) {
|
|
287
287
|
const hasAnthropicCredentials = Boolean(getEnvString("ANTHROPIC_API_KEY") || env?.ANTHROPIC_API_KEY);
|
|
288
288
|
const hasOpenAiCredentials = Boolean(getEnvString("OPENAI_API_KEY") || env?.OPENAI_API_KEY);
|
|
@@ -1396,7 +1396,7 @@ async function doRemoteGrading(payload) {
|
|
|
1396
1396
|
method: "POST",
|
|
1397
1397
|
headers: { "Content-Type": "application/json" },
|
|
1398
1398
|
body
|
|
1399
|
-
},
|
|
1399
|
+
}, getRequestTimeoutMs());
|
|
1400
1400
|
logger.debug(`Remote grading result: status=${status}, statusText=${statusText}, data=${JSON.stringify(data)}`);
|
|
1401
1401
|
if (status !== 200) throw new Error(`Remote grading failed with status ${status}: ${statusText} ${JSON.stringify(data)}`);
|
|
1402
1402
|
const { result } = data;
|
|
@@ -1439,7 +1439,7 @@ async function doRemoteScoringWithPi(payload, passThreshold = .5) {
|
|
|
1439
1439
|
"x-api-key": apiKey
|
|
1440
1440
|
},
|
|
1441
1441
|
body
|
|
1442
|
-
},
|
|
1442
|
+
}, getRequestTimeoutMs());
|
|
1443
1443
|
return convertPiResultToGradingResult(data, passThreshold);
|
|
1444
1444
|
} else throw new Error(`Env var WITHPI_API_KEY must be set. Visit https://docs.withpi.ai for more information.`);
|
|
1445
1445
|
} catch (error) {
|
|
@@ -8389,7 +8389,7 @@ function describeFilters(config) {
|
|
|
8389
8389
|
}
|
|
8390
8390
|
async function fetchDataset$1(limit, config) {
|
|
8391
8391
|
try {
|
|
8392
|
-
const response = await fetchWithTimeout(DATASET_URL, {},
|
|
8392
|
+
const response = await fetchWithTimeout(DATASET_URL, {}, getRequestTimeoutMs());
|
|
8393
8393
|
if (!response.ok) throw new Error(`HTTP status: ${response.status} ${response.statusText}`);
|
|
8394
8394
|
const records = parse$1(await response.text(), { columns: true });
|
|
8395
8395
|
logger.debug(`[harmbench] Parsed ${records.length} entries from CSV`);
|
|
@@ -15606,7 +15606,7 @@ var VLSUDatasetManager = class VLSUDatasetManager extends ImageDatasetManager {
|
|
|
15606
15606
|
}
|
|
15607
15607
|
logger.debug(`[vlsu] Fetching CSV from ${VLSU_CSV_URL}`);
|
|
15608
15608
|
try {
|
|
15609
|
-
const response = await fetchWithCache(VLSU_CSV_URL, {},
|
|
15609
|
+
const response = await fetchWithCache(VLSU_CSV_URL, {}, getRequestTimeoutMs(), "text");
|
|
15610
15610
|
if (response.status < 200 || response.status >= 300) throw new Error(`Failed to fetch VLSU CSV: ${response.statusText}`);
|
|
15611
15611
|
const csvText = response.data;
|
|
15612
15612
|
const records = parse$1(csvText, {
|
|
@@ -16169,4 +16169,4 @@ function getGraderById(id) {
|
|
|
16169
16169
|
//#endregion
|
|
16170
16170
|
export { readProviderPromptMap as $, ExcessiveAgencyPlugin as A, withProviderCallExecutionContext as At, retryWithDeduplication as B, PlinyPlugin as C, processFileReference as Ct, ImitationPlugin as D, getAndCheckProvider as Dt, IntentPlugin as E, callProviderWithContext as Et, BeavertailsPlugin as F, matchesFactuality as G, fetchHuggingFaceDataset as H, AegisPlugin as I, matchesPiScore as J, matchesGEval as K, RedteamGraderBase as L, DebugAccessPlugin as M, CrossSessionLeakPlugin as N, HarmbenchPlugin as O, getGradingProvider as Ot, ContractPlugin as P, readPrompts as Q, RedteamPluginBase as R, makeInlinePolicyIdSync as S, loadFromJavaScriptFile as St, OverreliancePlugin as T, DEFAULT_ANTHROPIC_MODEL as Tt, isGraderFailure as U, sampleArray as V, matchesClosedQa as W, doRemoteGrading as X, matchesTrajectoryGoalSuccess as Y, processPrompts as Z, PromptExtractionPlugin as _, normalizeMatcherTokenUsage as _t, VLGuardPlugin as a, CONTEXT_FAITHFULNESS_NLI_STATEMENTS as at, determinePolicyTypeFromId as b, coerceString as bt, ToxicChatPlugin as c, CONTEXT_RECALL_NOT_ATTRIBUTED_TOKEN as ct, TeenSafetyDangerousRoleplayPlugin as d, loadRubricPrompt as dt, DEFAULT_WEB_SEARCH_PROMPT as et, TeenSafetyDangerousContentPlugin as f, renderLlmRubricPrompt as ft, RbacPlugin as g, fail as gt, ShellInjectionPlugin as h, euclideanDistance as ht, VLSUPlugin as i, CONTEXT_FAITHFULNESS_LONGFORM as it, DivergentRepetitionPlugin as j, HallucinationPlugin as k, getProviderCallExecutionContext as kt, ToolDiscoveryPlugin as l, CONTEXT_RELEVANCE as lt, SqlInjectionPlugin as m, dotProduct as mt, getGraderById as n, SUGGEST_PROMPTS_SYSTEM_MESSAGE as nt, UnverifiableClaimsPlugin as o, CONTEXT_RECALL as ot, TeenSafetyAgeRestrictedGoodsAndServicesPlugin as p, cosineSimilarity as pt, matchesLlmRubric as q, graders_exports as r, ANSWER_RELEVANCY_GENERATE as rt, UnsafeBenchPlugin as s, CONTEXT_RECALL_ATTRIBUTED_TOKEN as st, GRADERS as t, SELECT_BEST_PROMPT as tt, TeenSafetyHarmfulBodyIdealsPlugin as u, CONTEXT_RELEVANCE_BAD as ut, PoliticsPlugin as v, splitIntoSentences as vt, getPiiLeakTestsForCategory as w, getDefaultProviders as wt, isValidPolicyObject as x, getFinalTest as xt, PolicyPlugin as y, tryParse as yt, getCustomPolicies as z };
|
|
16171
16171
|
|
|
16172
|
-
//# sourceMappingURL=graders-
|
|
16172
|
+
//# sourceMappingURL=graders-GNRQ1357.js.map
|
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
import { t as __exportAll } from "./chunk-DEq-mXcV.js";
|
|
2
|
-
import {
|
|
3
|
-
import { m as sleep, r as fetchWithTimeout, t as fetchWithProxy,
|
|
2
|
+
import { C as getEnvBool, E as getEnvString, S as state, a as logger, h as extractJsonObjects, k as isCI, m as extractFirstJsonObject, y as safeJsonStringify } from "./logger-BjYLHvGm.js";
|
|
3
|
+
import { m as sleep, r as fetchWithTimeout, t as fetchWithProxy, y as getRequestTimeoutMs } from "./fetch-CBe8pU8Q.js";
|
|
4
4
|
import { t as invariant } from "./invariant-DIYf9sP1.js";
|
|
5
|
-
import { o as getUserEmail } from "./accounts-
|
|
6
|
-
import { r as importModule } from "./esm-
|
|
7
|
-
import { i as extractVariablesFromTemplate, o as getNunjucksEngine } from "./render-
|
|
8
|
-
import { d as hasCodexDefaultCredentials, l as shouldGenerateRemote, r as getRemoteGenerationUrl, u as getCodexDefaultProviders } from "./remoteGeneration-
|
|
9
|
-
import { C as isValidReusablePolicyId, ft as CODING_AGENT_PLUGINS, ht as PromptSchema, k as MULTI_TURN_STRATEGIES, mt as CODING_AGENT_PLUGIN_DISPLAY_NAMES, p as isApiProvider, pt as CODING_AGENT_PLUGIN_DESCRIPTIONS, vt as buildInputPromptDescription, x as PolicyObjectSchema } from "./types-
|
|
5
|
+
import { o as getUserEmail } from "./accounts-BAajbKSh.js";
|
|
6
|
+
import { r as importModule } from "./esm-CGER3lko.js";
|
|
7
|
+
import { i as extractVariablesFromTemplate, o as getNunjucksEngine } from "./render-BoxrvB84.js";
|
|
8
|
+
import { d as hasCodexDefaultCredentials, l as shouldGenerateRemote, r as getRemoteGenerationUrl, u as getCodexDefaultProviders } from "./remoteGeneration-CoxtxLvB.js";
|
|
9
|
+
import { C as isValidReusablePolicyId, ft as CODING_AGENT_PLUGINS, ht as PromptSchema, k as MULTI_TURN_STRATEGIES, mt as CODING_AGENT_PLUGIN_DISPLAY_NAMES, p as isApiProvider, pt as CODING_AGENT_PLUGIN_DESCRIPTIONS, vt as buildInputPromptDescription, x as PolicyObjectSchema } from "./types-uLCKnRiK.js";
|
|
10
10
|
import { o as isJavascriptFile } from "./shared-BoG7qLMv.js";
|
|
11
11
|
import { n as sha256 } from "./createHash-CGVzWdjj.js";
|
|
12
|
-
import { i as PROMPT_DELIMITER, n as maybeFilePath, r as normalizeInput } from "./utils-
|
|
13
|
-
import { i as getCache, o as isCacheEnabled, r as fetchWithCache } from "./cache-
|
|
12
|
+
import { i as PROMPT_DELIMITER, n as maybeFilePath, r as normalizeInput } from "./utils-DMWnIu_V.js";
|
|
13
|
+
import { i as getCache, o as isCacheEnabled, r as fetchWithCache } from "./cache-x9llZxbx.js";
|
|
14
14
|
import { r as accumulateTokenUsage } from "./tokenUsageUtils-BjVkdk18.js";
|
|
15
|
-
import { d as getPoliciesFromCloud } from "./storage-
|
|
16
|
-
import { r as runPython } from "./pythonUtils-
|
|
17
|
-
import { A as maybeLoadConfigFromExternalFile, F as parsePathOrGlob, O as getNunjucksEngineForFilePath, P as maybeLoadToolsFromExternalFile, j as maybeLoadFromExternalFile, z as parseFileUrl } from "./util-
|
|
18
|
-
import { t as OpenAiChatCompletionProvider } from "./chat-
|
|
19
|
-
import { x as hasGoogleDefaultCredentials } from "./transform-
|
|
20
|
-
import { t as AnthropicMessagesProvider } from "./messages-
|
|
21
|
-
import { t as OpenAiResponsesProvider } from "./responses-
|
|
22
|
-
import { C as DefaultLlmRubricProvider, D as AzureEmbeddingProvider, E as AzureModerationProvider, O as AzureChatCompletionProvider, S as DefaultGradingProvider$2, T as DefaultSynthesizeProvider$1, _ as DefaultEmbeddingProvider$2, c as parseScriptParts, g as MistralEmbeddingProvider, h as MistralChatCompletionProvider, m as OpenAiModerationProvider, n as loadApiProvider, s as getFileHashes, v as DefaultGradingProvider$3, w as DefaultSuggestionsProvider$2, x as DefaultGradingJsonProvider$2 } from "./providers-
|
|
23
|
-
import { t as OpenAiEmbeddingProvider } from "./embedding-
|
|
24
|
-
import { r as materializeInputVariablesWithMetadata } from "./inputVariables-
|
|
25
|
-
import { a as extractPromptFromTags, c as isBasicRefusal, i as extractMaterializedVariablesFromJsonWithMetadata, l as isEmptyResponse, n as extractGoalFromPrompt, r as extractInputVarsFromPrompt, s as getShortPluginId, t as extractAllPromptsFromTags, u as removePrefix } from "./util-
|
|
26
|
-
import { _ as isRateLimitWrapped, f as redteamProviderManager, g as createProviderRateLimitOptions } from "./shared-
|
|
27
|
-
import { n as getGeneratedPromptOverLimit, r as getMaxCharsPerMessageModifierValue, t as MAX_CHARS_PER_MESSAGE_MODIFIER_KEY } from "./promptLength-
|
|
15
|
+
import { d as getPoliciesFromCloud } from "./storage-BC9TzmHh.js";
|
|
16
|
+
import { r as runPython } from "./pythonUtils-CBe7VV6f.js";
|
|
17
|
+
import { A as maybeLoadConfigFromExternalFile, F as parsePathOrGlob, O as getNunjucksEngineForFilePath, P as maybeLoadToolsFromExternalFile, j as maybeLoadFromExternalFile, z as parseFileUrl } from "./util-BGfk7zh7.js";
|
|
18
|
+
import { t as OpenAiChatCompletionProvider } from "./chat-CvQMD-mp.js";
|
|
19
|
+
import { x as hasGoogleDefaultCredentials } from "./transform-D7QlmswG.js";
|
|
20
|
+
import { t as AnthropicMessagesProvider } from "./messages-C5qBfONg.js";
|
|
21
|
+
import { t as OpenAiResponsesProvider } from "./responses-pvlY3oYx.js";
|
|
22
|
+
import { C as DefaultLlmRubricProvider, D as AzureEmbeddingProvider, E as AzureModerationProvider, O as AzureChatCompletionProvider, S as DefaultGradingProvider$2, T as DefaultSynthesizeProvider$1, _ as DefaultEmbeddingProvider$2, c as parseScriptParts, g as MistralEmbeddingProvider, h as MistralChatCompletionProvider, m as OpenAiModerationProvider, n as loadApiProvider, s as getFileHashes, v as DefaultGradingProvider$3, w as DefaultSuggestionsProvider$2, x as DefaultGradingJsonProvider$2 } from "./providers-DDLQc0tl.js";
|
|
23
|
+
import { t as OpenAiEmbeddingProvider } from "./embedding-BwTB3YDt.js";
|
|
24
|
+
import { r as materializeInputVariablesWithMetadata } from "./inputVariables-DpOsOnzU.js";
|
|
25
|
+
import { a as extractPromptFromTags, c as isBasicRefusal, i as extractMaterializedVariablesFromJsonWithMetadata, l as isEmptyResponse, n as extractGoalFromPrompt, r as extractInputVarsFromPrompt, s as getShortPluginId, t as extractAllPromptsFromTags, u as removePrefix } from "./util-CKZReNsz.js";
|
|
26
|
+
import { _ as isRateLimitWrapped, f as redteamProviderManager, g as createProviderRateLimitOptions } from "./shared-yBQATkD5.js";
|
|
27
|
+
import { n as getGeneratedPromptOverLimit, r as getMaxCharsPerMessageModifierValue, t as MAX_CHARS_PER_MESSAGE_MODIFIER_KEY } from "./promptLength-5B4_P93z.js";
|
|
28
28
|
import { t as REDTEAM_MEMORY_POISONING_PLUGIN_ID } from "./constants-BjJV0cRr.js";
|
|
29
|
-
import { n as checkExfilTracking } from "./indirectWebPwn-
|
|
30
|
-
import { AsyncLocalStorage } from "node:async_hooks";
|
|
29
|
+
import { n as checkExfilTracking } from "./indirectWebPwn-DRYpRTx6.js";
|
|
31
30
|
import * as fs$2 from "fs";
|
|
32
31
|
import fs from "fs";
|
|
33
32
|
import path from "path";
|
|
33
|
+
import { AsyncLocalStorage } from "node:async_hooks";
|
|
34
34
|
import yaml from "js-yaml";
|
|
35
35
|
import z$1 from "zod";
|
|
36
36
|
import { readFile, stat } from "fs/promises";
|
|
@@ -160,13 +160,13 @@ const DefaultSuggestionsProvider$1 = new MistralChatCompletionProvider("mistral-
|
|
|
160
160
|
const DefaultSynthesizeProvider = new MistralChatCompletionProvider("mistral-large-latest");
|
|
161
161
|
//#endregion
|
|
162
162
|
//#region src/providers/openai/defaults.ts
|
|
163
|
-
const DEFAULT_OPENAI_GRADING_MODEL = "gpt-5.
|
|
163
|
+
const DEFAULT_OPENAI_GRADING_MODEL = "gpt-5.5-2026-04-23";
|
|
164
164
|
const DefaultEmbeddingProvider = new OpenAiEmbeddingProvider("text-embedding-3-large");
|
|
165
165
|
const DefaultGradingProvider = new OpenAiChatCompletionProvider(DEFAULT_OPENAI_GRADING_MODEL);
|
|
166
166
|
const DefaultGradingJsonProvider = new OpenAiChatCompletionProvider(DEFAULT_OPENAI_GRADING_MODEL, { config: { response_format: { type: "json_object" } } });
|
|
167
167
|
const DefaultSuggestionsProvider = new OpenAiChatCompletionProvider(DEFAULT_OPENAI_GRADING_MODEL);
|
|
168
168
|
const DefaultModerationProvider = new OpenAiModerationProvider("omni-moderation-latest");
|
|
169
|
-
const DefaultWebSearchProvider = new OpenAiResponsesProvider("gpt-5.
|
|
169
|
+
const DefaultWebSearchProvider = new OpenAiResponsesProvider("gpt-5.5-2026-04-23", { config: { tools: [{ type: "web_search_preview" }] } });
|
|
170
170
|
async function getDefaultProviderPreferences(env) {
|
|
171
171
|
const hasAnthropicCredentials = Boolean(getEnvString("ANTHROPIC_API_KEY") || env?.ANTHROPIC_API_KEY);
|
|
172
172
|
const hasOpenAiCredentials = Boolean(getEnvString("OPENAI_API_KEY") || env?.OPENAI_API_KEY);
|
|
@@ -1456,7 +1456,7 @@ async function doRemoteGrading(payload) {
|
|
|
1456
1456
|
method: "POST",
|
|
1457
1457
|
headers: { "Content-Type": "application/json" },
|
|
1458
1458
|
body
|
|
1459
|
-
},
|
|
1459
|
+
}, getRequestTimeoutMs());
|
|
1460
1460
|
logger.debug(`Remote grading result: status=${status}, statusText=${statusText}, data=${JSON.stringify(data)}`);
|
|
1461
1461
|
if (status !== 200) throw new Error(`Remote grading failed with status ${status}: ${statusText} ${JSON.stringify(data)}`);
|
|
1462
1462
|
const { result } = data;
|
|
@@ -1499,7 +1499,7 @@ async function doRemoteScoringWithPi(payload, passThreshold = .5) {
|
|
|
1499
1499
|
"x-api-key": apiKey
|
|
1500
1500
|
},
|
|
1501
1501
|
body
|
|
1502
|
-
},
|
|
1502
|
+
}, getRequestTimeoutMs());
|
|
1503
1503
|
return convertPiResultToGradingResult(data, passThreshold);
|
|
1504
1504
|
} else throw new Error(`Env var WITHPI_API_KEY must be set. Visit https://docs.withpi.ai for more information.`);
|
|
1505
1505
|
} catch (error) {
|
|
@@ -8389,7 +8389,7 @@ function describeFilters(config) {
|
|
|
8389
8389
|
}
|
|
8390
8390
|
async function fetchDataset$1(limit, config) {
|
|
8391
8391
|
try {
|
|
8392
|
-
const response = await fetchWithTimeout(DATASET_URL, {},
|
|
8392
|
+
const response = await fetchWithTimeout(DATASET_URL, {}, getRequestTimeoutMs());
|
|
8393
8393
|
if (!response.ok) throw new Error(`HTTP status: ${response.status} ${response.statusText}`);
|
|
8394
8394
|
const records = parse$1(await response.text(), { columns: true });
|
|
8395
8395
|
logger.debug(`[harmbench] Parsed ${records.length} entries from CSV`);
|
|
@@ -15606,7 +15606,7 @@ var VLSUDatasetManager = class VLSUDatasetManager extends ImageDatasetManager {
|
|
|
15606
15606
|
}
|
|
15607
15607
|
logger.debug(`[vlsu] Fetching CSV from ${VLSU_CSV_URL}`);
|
|
15608
15608
|
try {
|
|
15609
|
-
const response = await fetchWithCache(VLSU_CSV_URL, {},
|
|
15609
|
+
const response = await fetchWithCache(VLSU_CSV_URL, {}, getRequestTimeoutMs(), "text");
|
|
15610
15610
|
if (response.status < 200 || response.status >= 300) throw new Error(`Failed to fetch VLSU CSV: ${response.statusText}`);
|
|
15611
15611
|
const csvText = response.data;
|
|
15612
15612
|
const records = parse$1(csvText, {
|
|
@@ -16169,4 +16169,4 @@ function getGraderById(id) {
|
|
|
16169
16169
|
//#endregion
|
|
16170
16170
|
export { SUGGEST_PROMPTS_SYSTEM_MESSAGE as $, ExcessiveAgencyPlugin as A, DEFAULT_ANTHROPIC_MODEL as At, isGraderFailure as B, PlinyPlugin as C, getGradingProvider as Ct, ImitationPlugin as D, retryWithDeduplication as Dt, IntentPlugin as E, getCustomPolicies as Et, BeavertailsPlugin as F, matchesPiScore as G, matchesFactuality as H, AegisPlugin as I, processPrompts as J, matchesTrajectoryGoalSuccess as K, RedteamGraderBase as L, DebugAccessPlugin as M, CrossSessionLeakPlugin as N, HarmbenchPlugin as O, sampleArray as Ot, ContractPlugin as P, SELECT_BEST_PROMPT as Q, RedteamPluginBase as R, makeInlinePolicyIdSync as S, getAndCheckProvider as St, OverreliancePlugin as T, withProviderCallExecutionContext as Tt, matchesGEval as U, matchesClosedQa as V, matchesLlmRubric as W, readProviderPromptMap as X, readPrompts as Y, DEFAULT_WEB_SEARCH_PROMPT as Z, PromptExtractionPlugin as _, coerceString as _t, VLGuardPlugin as a, CONTEXT_RECALL_NOT_ATTRIBUTED_TOKEN as at, determinePolicyTypeFromId as b, processFileReference as bt, ToxicChatPlugin as c, loadRubricPrompt as ct, TeenSafetyDangerousRoleplayPlugin as d, dotProduct as dt, ANSWER_RELEVANCY_GENERATE as et, TeenSafetyDangerousContentPlugin as f, euclideanDistance as ft, RbacPlugin as g, tryParse as gt, ShellInjectionPlugin as h, splitIntoSentences as ht, VLSUPlugin as i, CONTEXT_RECALL_ATTRIBUTED_TOKEN as it, DivergentRepetitionPlugin as j, HallucinationPlugin as k, getDefaultProviders as kt, ToolDiscoveryPlugin as l, renderLlmRubricPrompt as lt, SqlInjectionPlugin as m, normalizeMatcherTokenUsage as mt, getGraderById as n, CONTEXT_FAITHFULNESS_NLI_STATEMENTS as nt, UnverifiableClaimsPlugin as o, CONTEXT_RELEVANCE as ot, TeenSafetyAgeRestrictedGoodsAndServicesPlugin as p, fail as pt, doRemoteGrading as q, graders_exports as r, CONTEXT_RECALL as rt, UnsafeBenchPlugin as s, CONTEXT_RELEVANCE_BAD as st, GRADERS as t, CONTEXT_FAITHFULNESS_LONGFORM as tt, TeenSafetyHarmfulBodyIdealsPlugin as u, cosineSimilarity as ut, PoliticsPlugin as v, getFinalTest as vt, getPiiLeakTestsForCategory as w, getProviderCallExecutionContext as wt, isValidPolicyObject as x, callProviderWithContext as xt, PolicyPlugin as y, loadFromJavaScriptFile as yt, fetchHuggingFaceDataset as z };
|
|
16171
16171
|
|
|
16172
|
-
//# sourceMappingURL=graders-
|
|
16172
|
+
//# sourceMappingURL=graders-k8qmhrPu.js.map
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { s as logger, y as isValidJson } from "./logger-
|
|
3
|
-
import { f as sleep } from "./fetch-
|
|
2
|
+
import { s as logger, y as isValidJson } from "./logger-h-eiS4iv.js";
|
|
3
|
+
import { f as sleep } from "./fetch-C59QM4cf.js";
|
|
4
4
|
import { t as invariant } from "./invariant-B2Rf6avk.js";
|
|
5
|
-
import { c as isLoggedIntoCloud } from "./accounts-
|
|
6
|
-
import { l as shouldGenerateRemote, n as getRemoteGenerationExplicitlyDisabledError, s as neverGenerateRemote, t as getRemoteGenerationDisabledError } from "./remoteGeneration-
|
|
5
|
+
import { c as isLoggedIntoCloud } from "./accounts-Bw2qPqE-.js";
|
|
6
|
+
import { l as shouldGenerateRemote, n as getRemoteGenerationExplicitlyDisabledError, s as neverGenerateRemote, t as getRemoteGenerationDisabledError } from "./remoteGeneration-DW6mPZnO.js";
|
|
7
7
|
import { a as createEmptyTokenUsage, n as accumulateResponseTokenUsage } from "./tokenUsageUtils-CDet74yk.js";
|
|
8
|
-
import { r as materializeInputVariablesWithMetadata } from "./inputVariables-
|
|
9
|
-
import { a as extractPromptFromTags, c as isBasicRefusal, o as getSessionId, r as extractInputVarsFromPrompt } from "./util-
|
|
10
|
-
import { t as PromptfooChatCompletionProvider } from "./promptfoo-
|
|
11
|
-
import { c as getTargetResponse, i as externalizeResponseForRedteamHistory, l as isConversationEndedResponse, o as getGraderAssertionValue, t as buildGraderResultAssertion, u as isValidChatMessageArray } from "./shared-
|
|
12
|
-
import { n as isBlobStorageEnabled, r as shouldAttemptRemoteBlobUpload } from "./extractor-
|
|
13
|
-
import { n as checkExfilTracking } from "./indirectWebPwn-
|
|
14
|
-
import { n as renderPrompt } from "./evaluatorHelpers-
|
|
15
|
-
import { t as Strategies } from "./strategies-
|
|
16
|
-
import { a as fetchTraceContext, i as extractTraceIdFromTraceparent, n as formatTraceForMetadata, r as formatTraceSummary, t as resolveTracingOptions } from "./tracingOptions-
|
|
17
|
-
import { t as applyRuntimeTransforms } from "./runtimeTransform-
|
|
8
|
+
import { r as materializeInputVariablesWithMetadata } from "./inputVariables-qJmuSN5i.js";
|
|
9
|
+
import { a as extractPromptFromTags, c as isBasicRefusal, o as getSessionId, r as extractInputVarsFromPrompt } from "./util-D9grslJP.js";
|
|
10
|
+
import { a as assertRemoteMaterializationHandled, s as buildRemoteMaterializedInputVariables, t as PromptfooChatCompletionProvider } from "./promptfoo-wxe28-q9.js";
|
|
11
|
+
import { c as getTargetResponse, i as externalizeResponseForRedteamHistory, l as isConversationEndedResponse, o as getGraderAssertionValue, t as buildGraderResultAssertion, u as isValidChatMessageArray } from "./shared-DsbObxvy.js";
|
|
12
|
+
import { n as isBlobStorageEnabled, r as shouldAttemptRemoteBlobUpload } from "./extractor-CtadTcJm.js";
|
|
13
|
+
import { n as checkExfilTracking } from "./indirectWebPwn-BXUoJl4I.js";
|
|
14
|
+
import { n as renderPrompt } from "./evaluatorHelpers-DDG44JeI.js";
|
|
15
|
+
import { t as Strategies } from "./strategies-Ptz_P4P4.js";
|
|
16
|
+
import { a as fetchTraceContext, i as extractTraceIdFromTraceparent, n as formatTraceForMetadata, r as formatTraceSummary, t as resolveTracingOptions } from "./tracingOptions-D2F0D7es.js";
|
|
17
|
+
import { t as applyRuntimeTransforms } from "./runtimeTransform-s14J7yxm.js";
|
|
18
18
|
//#region src/redteam/providers/hydra/index.ts
|
|
19
19
|
const DEFAULT_MAX_TURNS = 10;
|
|
20
20
|
const DEFAULT_MAX_BACKTRACKS = 10;
|
|
@@ -112,11 +112,12 @@ var HydraProvider = class {
|
|
|
112
112
|
let storedGraderResult = void 0;
|
|
113
113
|
let lastTargetResponse = void 0;
|
|
114
114
|
let backtrackCount = 0;
|
|
115
|
+
let agentFailureError;
|
|
115
116
|
const redteamHistory = [];
|
|
116
117
|
let lastTransformResult;
|
|
117
118
|
let lastTransformDisplayVars;
|
|
118
119
|
let lastFinalAttackPrompt;
|
|
119
|
-
const { getGraderById } = await import("./graders-
|
|
120
|
+
const { getGraderById } = await import("./graders-D4vc1PFi.js");
|
|
120
121
|
let assertToUse = test?.assert?.find((a) => a.type && a.type.includes(test.metadata?.pluginId));
|
|
121
122
|
if (!assertToUse) assertToUse = test?.assert?.find((a) => a.type);
|
|
122
123
|
let previousTraceSummary;
|
|
@@ -160,6 +161,7 @@ var HydraProvider = class {
|
|
|
160
161
|
testRunId,
|
|
161
162
|
error: agentResp.error
|
|
162
163
|
});
|
|
164
|
+
agentFailureError = agentResp.error;
|
|
163
165
|
continue;
|
|
164
166
|
}
|
|
165
167
|
let nextMessage;
|
|
@@ -170,18 +172,31 @@ var HydraProvider = class {
|
|
|
170
172
|
}
|
|
171
173
|
if (!nextMessage) {
|
|
172
174
|
logger.info("[Hydra] Missing message from agent", { turn });
|
|
175
|
+
agentFailureError = "Hydra agent did not return an attack message";
|
|
173
176
|
continue;
|
|
174
177
|
}
|
|
175
178
|
let processedMessage = nextMessage;
|
|
176
179
|
const extractedPrompt = extractPromptFromTags(nextMessage);
|
|
177
180
|
if (extractedPrompt) processedMessage = extractedPrompt;
|
|
181
|
+
if (this.config.inputs && shouldGenerateRemote()) assertRemoteMaterializationHandled(agentResp, "Hydra multi-input generation");
|
|
178
182
|
const currentInputVars = extractInputVarsFromPrompt(processedMessage, this.config.inputs);
|
|
179
|
-
|
|
183
|
+
let materializedInputVars;
|
|
184
|
+
if (this.config.inputs && shouldGenerateRemote() && !currentInputVars && !agentResp.materializedVars) {
|
|
185
|
+
logger.warn("[Hydra] Remote multi-input generation returned an invalid prompt format", {
|
|
186
|
+
turn,
|
|
187
|
+
messagePreview: processedMessage.slice(0, 200)
|
|
188
|
+
});
|
|
189
|
+
agentFailureError = "Hydra remote multi-input generation returned an invalid prompt format";
|
|
190
|
+
continue;
|
|
191
|
+
}
|
|
192
|
+
if ((currentInputVars || agentResp.materializedVars) && this.config.inputs) if (shouldGenerateRemote()) materializedInputVars = buildRemoteMaterializedInputVariables(agentResp, currentInputVars ?? {}, this.config.inputs);
|
|
193
|
+
else materializedInputVars = await materializeInputVariablesWithMetadata(currentInputVars, this.config.inputs, {
|
|
180
194
|
materializationIndex: turn,
|
|
181
195
|
pluginId: "hydra",
|
|
182
196
|
provider: this.agentProvider,
|
|
183
197
|
purpose: test?.metadata?.purpose
|
|
184
|
-
})
|
|
198
|
+
});
|
|
199
|
+
const currentRenderInputVars = materializedInputVars?.vars ?? currentInputVars;
|
|
185
200
|
this.conversationHistory.push({
|
|
186
201
|
role: "user",
|
|
187
202
|
content: processedMessage
|
|
@@ -513,13 +528,16 @@ var HydraProvider = class {
|
|
|
513
528
|
role: msg.role,
|
|
514
529
|
content: msg.content
|
|
515
530
|
}));
|
|
531
|
+
const targetProbeCount = totalTokenUsage.numRequests ?? 0;
|
|
532
|
+
const hydraRoundsCompleted = this.conversationHistory.filter((m) => m.role === "user").length;
|
|
533
|
+
const failClosedError = targetProbeCount === 0 ? agentFailureError || "Hydra did not execute any target probes" : void 0;
|
|
516
534
|
return {
|
|
517
535
|
output: lastTargetResponse?.output || "",
|
|
518
|
-
...lastTargetResponse?.error ? { error: lastTargetResponse.error } : {},
|
|
536
|
+
...failClosedError ? { error: failClosedError } : lastTargetResponse?.error ? { error: lastTargetResponse.error } : {},
|
|
519
537
|
metadata: {
|
|
520
538
|
sessionId: this.sessionId || getSessionId(lastTargetResponse, context),
|
|
521
539
|
messages,
|
|
522
|
-
hydraRoundsCompleted
|
|
540
|
+
hydraRoundsCompleted,
|
|
523
541
|
hydraBacktrackCount: backtrackCount,
|
|
524
542
|
hydraResult: vulnerabilityAchieved,
|
|
525
543
|
stopReason,
|
|
@@ -540,4 +558,4 @@ var HydraProvider = class {
|
|
|
540
558
|
//#endregion
|
|
541
559
|
export { HydraProvider, HydraProvider as default };
|
|
542
560
|
|
|
543
|
-
//# sourceMappingURL=hydra-
|
|
561
|
+
//# sourceMappingURL=hydra-BrgGALmB.js.map
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { _ as isValidJson, a as logger } from "./logger-
|
|
2
|
-
import { m as sleep } from "./fetch-
|
|
1
|
+
import { _ as isValidJson, a as logger } from "./logger-BjYLHvGm.js";
|
|
2
|
+
import { m as sleep } from "./fetch-CBe8pU8Q.js";
|
|
3
3
|
import { t as invariant } from "./invariant-DIYf9sP1.js";
|
|
4
|
-
import { c as isLoggedIntoCloud } from "./accounts-
|
|
5
|
-
import { l as shouldGenerateRemote, n as getRemoteGenerationExplicitlyDisabledError, s as neverGenerateRemote, t as getRemoteGenerationDisabledError } from "./remoteGeneration-
|
|
4
|
+
import { c as isLoggedIntoCloud } from "./accounts-BAajbKSh.js";
|
|
5
|
+
import { l as shouldGenerateRemote, n as getRemoteGenerationExplicitlyDisabledError, s as neverGenerateRemote, t as getRemoteGenerationDisabledError } from "./remoteGeneration-CoxtxLvB.js";
|
|
6
6
|
import { a as createEmptyTokenUsage, n as accumulateResponseTokenUsage } from "./tokenUsageUtils-BjVkdk18.js";
|
|
7
|
-
import { n as isBlobStorageEnabled, r as shouldAttemptRemoteBlobUpload } from "./extractor-
|
|
8
|
-
import { r as materializeInputVariablesWithMetadata } from "./inputVariables-
|
|
9
|
-
import { a as extractPromptFromTags, c as isBasicRefusal, o as getSessionId, r as extractInputVarsFromPrompt } from "./util-
|
|
10
|
-
import { t as PromptfooChatCompletionProvider } from "./promptfoo-
|
|
11
|
-
import { c as getTargetResponse, i as externalizeResponseForRedteamHistory, l as isConversationEndedResponse, o as getGraderAssertionValue, t as buildGraderResultAssertion, u as isValidChatMessageArray } from "./shared-
|
|
12
|
-
import { n as checkExfilTracking } from "./indirectWebPwn-
|
|
7
|
+
import { n as isBlobStorageEnabled, r as shouldAttemptRemoteBlobUpload } from "./extractor-DAnauX2V.js";
|
|
8
|
+
import { r as materializeInputVariablesWithMetadata } from "./inputVariables-DpOsOnzU.js";
|
|
9
|
+
import { a as extractPromptFromTags, c as isBasicRefusal, o as getSessionId, r as extractInputVarsFromPrompt } from "./util-CKZReNsz.js";
|
|
10
|
+
import { a as assertRemoteMaterializationHandled, s as buildRemoteMaterializedInputVariables, t as PromptfooChatCompletionProvider } from "./promptfoo-DVKqidd8.js";
|
|
11
|
+
import { c as getTargetResponse, i as externalizeResponseForRedteamHistory, l as isConversationEndedResponse, o as getGraderAssertionValue, t as buildGraderResultAssertion, u as isValidChatMessageArray } from "./shared-yBQATkD5.js";
|
|
12
|
+
import { n as checkExfilTracking } from "./indirectWebPwn-DRYpRTx6.js";
|
|
13
13
|
import { n as renderPrompt, t as Strategies } from "./server/index.js";
|
|
14
|
-
import { a as fetchTraceContext, i as extractTraceIdFromTraceparent, n as formatTraceForMetadata, r as formatTraceSummary, t as resolveTracingOptions } from "./tracingOptions-
|
|
15
|
-
import { t as applyRuntimeTransforms } from "./runtimeTransform-
|
|
14
|
+
import { a as fetchTraceContext, i as extractTraceIdFromTraceparent, n as formatTraceForMetadata, r as formatTraceSummary, t as resolveTracingOptions } from "./tracingOptions-PLePpCmo.js";
|
|
15
|
+
import { t as applyRuntimeTransforms } from "./runtimeTransform-BmhEztlx.js";
|
|
16
16
|
//#region src/redteam/providers/hydra/index.ts
|
|
17
17
|
const DEFAULT_MAX_TURNS = 10;
|
|
18
18
|
const DEFAULT_MAX_BACKTRACKS = 10;
|
|
@@ -110,11 +110,12 @@ var HydraProvider = class {
|
|
|
110
110
|
let storedGraderResult = void 0;
|
|
111
111
|
let lastTargetResponse = void 0;
|
|
112
112
|
let backtrackCount = 0;
|
|
113
|
+
let agentFailureError;
|
|
113
114
|
const redteamHistory = [];
|
|
114
115
|
let lastTransformResult;
|
|
115
116
|
let lastTransformDisplayVars;
|
|
116
117
|
let lastFinalAttackPrompt;
|
|
117
|
-
const { getGraderById } = await import("./graders-
|
|
118
|
+
const { getGraderById } = await import("./graders-k8qmhrPu.js").then((n) => n.r);
|
|
118
119
|
let assertToUse = test?.assert?.find((a) => a.type && a.type.includes(test.metadata?.pluginId));
|
|
119
120
|
if (!assertToUse) assertToUse = test?.assert?.find((a) => a.type);
|
|
120
121
|
let previousTraceSummary;
|
|
@@ -158,6 +159,7 @@ var HydraProvider = class {
|
|
|
158
159
|
testRunId,
|
|
159
160
|
error: agentResp.error
|
|
160
161
|
});
|
|
162
|
+
agentFailureError = agentResp.error;
|
|
161
163
|
continue;
|
|
162
164
|
}
|
|
163
165
|
let nextMessage;
|
|
@@ -168,18 +170,31 @@ var HydraProvider = class {
|
|
|
168
170
|
}
|
|
169
171
|
if (!nextMessage) {
|
|
170
172
|
logger.info("[Hydra] Missing message from agent", { turn });
|
|
173
|
+
agentFailureError = "Hydra agent did not return an attack message";
|
|
171
174
|
continue;
|
|
172
175
|
}
|
|
173
176
|
let processedMessage = nextMessage;
|
|
174
177
|
const extractedPrompt = extractPromptFromTags(nextMessage);
|
|
175
178
|
if (extractedPrompt) processedMessage = extractedPrompt;
|
|
179
|
+
if (this.config.inputs && shouldGenerateRemote()) assertRemoteMaterializationHandled(agentResp, "Hydra multi-input generation");
|
|
176
180
|
const currentInputVars = extractInputVarsFromPrompt(processedMessage, this.config.inputs);
|
|
177
|
-
|
|
181
|
+
let materializedInputVars;
|
|
182
|
+
if (this.config.inputs && shouldGenerateRemote() && !currentInputVars && !agentResp.materializedVars) {
|
|
183
|
+
logger.warn("[Hydra] Remote multi-input generation returned an invalid prompt format", {
|
|
184
|
+
turn,
|
|
185
|
+
messagePreview: processedMessage.slice(0, 200)
|
|
186
|
+
});
|
|
187
|
+
agentFailureError = "Hydra remote multi-input generation returned an invalid prompt format";
|
|
188
|
+
continue;
|
|
189
|
+
}
|
|
190
|
+
if ((currentInputVars || agentResp.materializedVars) && this.config.inputs) if (shouldGenerateRemote()) materializedInputVars = buildRemoteMaterializedInputVariables(agentResp, currentInputVars ?? {}, this.config.inputs);
|
|
191
|
+
else materializedInputVars = await materializeInputVariablesWithMetadata(currentInputVars, this.config.inputs, {
|
|
178
192
|
materializationIndex: turn,
|
|
179
193
|
pluginId: "hydra",
|
|
180
194
|
provider: this.agentProvider,
|
|
181
195
|
purpose: test?.metadata?.purpose
|
|
182
|
-
})
|
|
196
|
+
});
|
|
197
|
+
const currentRenderInputVars = materializedInputVars?.vars ?? currentInputVars;
|
|
183
198
|
this.conversationHistory.push({
|
|
184
199
|
role: "user",
|
|
185
200
|
content: processedMessage
|
|
@@ -511,13 +526,16 @@ var HydraProvider = class {
|
|
|
511
526
|
role: msg.role,
|
|
512
527
|
content: msg.content
|
|
513
528
|
}));
|
|
529
|
+
const targetProbeCount = totalTokenUsage.numRequests ?? 0;
|
|
530
|
+
const hydraRoundsCompleted = this.conversationHistory.filter((m) => m.role === "user").length;
|
|
531
|
+
const failClosedError = targetProbeCount === 0 ? agentFailureError || "Hydra did not execute any target probes" : void 0;
|
|
514
532
|
return {
|
|
515
533
|
output: lastTargetResponse?.output || "",
|
|
516
|
-
...lastTargetResponse?.error ? { error: lastTargetResponse.error } : {},
|
|
534
|
+
...failClosedError ? { error: failClosedError } : lastTargetResponse?.error ? { error: lastTargetResponse.error } : {},
|
|
517
535
|
metadata: {
|
|
518
536
|
sessionId: this.sessionId || getSessionId(lastTargetResponse, context),
|
|
519
537
|
messages,
|
|
520
|
-
hydraRoundsCompleted
|
|
538
|
+
hydraRoundsCompleted,
|
|
521
539
|
hydraBacktrackCount: backtrackCount,
|
|
522
540
|
hydraResult: vulnerabilityAchieved,
|
|
523
541
|
stopReason,
|
|
@@ -538,4 +556,4 @@ var HydraProvider = class {
|
|
|
538
556
|
//#endregion
|
|
539
557
|
export { HydraProvider, HydraProvider as default };
|
|
540
558
|
|
|
541
|
-
//# sourceMappingURL=hydra-
|
|
559
|
+
//# sourceMappingURL=hydra-C38LOovb.js.map
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { _ as isValidJson, a as logger } from "./logger-
|
|
1
|
+
import { _ as isValidJson, a as logger } from "./logger-Cs0I2v_y.js";
|
|
2
2
|
import { t as invariant } from "./invariant-Ddh24eXh.js";
|
|
3
|
-
import { l as sleep } from "./fetch-
|
|
4
|
-
import { o as isLoggedIntoCloud } from "./accounts-
|
|
5
|
-
import { l as shouldGenerateRemote, n as getRemoteGenerationExplicitlyDisabledError, s as neverGenerateRemote, t as getRemoteGenerationDisabledError } from "./remoteGeneration-
|
|
3
|
+
import { l as sleep } from "./fetch-CHJu2KON.js";
|
|
4
|
+
import { o as isLoggedIntoCloud } from "./accounts-4Xa5fcHy.js";
|
|
5
|
+
import { l as shouldGenerateRemote, n as getRemoteGenerationExplicitlyDisabledError, s as neverGenerateRemote, t as getRemoteGenerationDisabledError } from "./remoteGeneration-DvWEm3yi.js";
|
|
6
6
|
import { a as createEmptyTokenUsage, n as accumulateResponseTokenUsage } from "./tokenUsageUtils-CmnQ0G2m.js";
|
|
7
|
-
import { n as materializeInputVariablesWithMetadata } from "./inputVariables-
|
|
8
|
-
import { a as extractPromptFromTags, c as isBasicRefusal, o as getSessionId, r as extractInputVarsFromPrompt } from "./util-
|
|
9
|
-
import { t as PromptfooChatCompletionProvider } from "./promptfoo-
|
|
10
|
-
import { c as getTargetResponse, i as externalizeResponseForRedteamHistory, l as isConversationEndedResponse, o as getGraderAssertionValue, t as buildGraderResultAssertion, u as isValidChatMessageArray } from "./shared-
|
|
11
|
-
import { n as isBlobStorageEnabled, r as shouldAttemptRemoteBlobUpload } from "./extractor-
|
|
12
|
-
import { n as checkExfilTracking } from "./indirectWebPwn-
|
|
13
|
-
import { n as renderPrompt } from "./evaluatorHelpers-
|
|
14
|
-
import { t as Strategies } from "./strategies-
|
|
15
|
-
import { a as fetchTraceContext, i as extractTraceIdFromTraceparent, n as formatTraceForMetadata, r as formatTraceSummary, t as resolveTracingOptions } from "./tracingOptions-
|
|
16
|
-
import { t as applyRuntimeTransforms } from "./runtimeTransform-
|
|
7
|
+
import { n as materializeInputVariablesWithMetadata } from "./inputVariables-B7cylqzM.js";
|
|
8
|
+
import { a as extractPromptFromTags, c as isBasicRefusal, o as getSessionId, r as extractInputVarsFromPrompt } from "./util-D1NKMz55.js";
|
|
9
|
+
import { a as assertRemoteMaterializationHandled, s as buildRemoteMaterializedInputVariables, t as PromptfooChatCompletionProvider } from "./promptfoo-CEsoPlBa.js";
|
|
10
|
+
import { c as getTargetResponse, i as externalizeResponseForRedteamHistory, l as isConversationEndedResponse, o as getGraderAssertionValue, t as buildGraderResultAssertion, u as isValidChatMessageArray } from "./shared-BF25a7ms.js";
|
|
11
|
+
import { n as isBlobStorageEnabled, r as shouldAttemptRemoteBlobUpload } from "./extractor-Bjz9sdTQ.js";
|
|
12
|
+
import { n as checkExfilTracking } from "./indirectWebPwn-1gHqaL91.js";
|
|
13
|
+
import { n as renderPrompt } from "./evaluatorHelpers-C8C8WQTv.js";
|
|
14
|
+
import { t as Strategies } from "./strategies-4Nnr_9xt.js";
|
|
15
|
+
import { a as fetchTraceContext, i as extractTraceIdFromTraceparent, n as formatTraceForMetadata, r as formatTraceSummary, t as resolveTracingOptions } from "./tracingOptions-WpE9IqC8.js";
|
|
16
|
+
import { t as applyRuntimeTransforms } from "./runtimeTransform-Bw9Tttpp.js";
|
|
17
17
|
//#region src/redteam/providers/hydra/index.ts
|
|
18
18
|
const DEFAULT_MAX_TURNS = 10;
|
|
19
19
|
const DEFAULT_MAX_BACKTRACKS = 10;
|
|
@@ -111,11 +111,12 @@ var HydraProvider = class {
|
|
|
111
111
|
let storedGraderResult = void 0;
|
|
112
112
|
let lastTargetResponse = void 0;
|
|
113
113
|
let backtrackCount = 0;
|
|
114
|
+
let agentFailureError;
|
|
114
115
|
const redteamHistory = [];
|
|
115
116
|
let lastTransformResult;
|
|
116
117
|
let lastTransformDisplayVars;
|
|
117
118
|
let lastFinalAttackPrompt;
|
|
118
|
-
const { getGraderById } = await import("./graders-
|
|
119
|
+
const { getGraderById } = await import("./graders-GNRQ1357.js").then((n) => n.r);
|
|
119
120
|
let assertToUse = test?.assert?.find((a) => a.type && a.type.includes(test.metadata?.pluginId));
|
|
120
121
|
if (!assertToUse) assertToUse = test?.assert?.find((a) => a.type);
|
|
121
122
|
let previousTraceSummary;
|
|
@@ -159,6 +160,7 @@ var HydraProvider = class {
|
|
|
159
160
|
testRunId,
|
|
160
161
|
error: agentResp.error
|
|
161
162
|
});
|
|
163
|
+
agentFailureError = agentResp.error;
|
|
162
164
|
continue;
|
|
163
165
|
}
|
|
164
166
|
let nextMessage;
|
|
@@ -169,18 +171,31 @@ var HydraProvider = class {
|
|
|
169
171
|
}
|
|
170
172
|
if (!nextMessage) {
|
|
171
173
|
logger.info("[Hydra] Missing message from agent", { turn });
|
|
174
|
+
agentFailureError = "Hydra agent did not return an attack message";
|
|
172
175
|
continue;
|
|
173
176
|
}
|
|
174
177
|
let processedMessage = nextMessage;
|
|
175
178
|
const extractedPrompt = extractPromptFromTags(nextMessage);
|
|
176
179
|
if (extractedPrompt) processedMessage = extractedPrompt;
|
|
180
|
+
if (this.config.inputs && shouldGenerateRemote()) assertRemoteMaterializationHandled(agentResp, "Hydra multi-input generation");
|
|
177
181
|
const currentInputVars = extractInputVarsFromPrompt(processedMessage, this.config.inputs);
|
|
178
|
-
|
|
182
|
+
let materializedInputVars;
|
|
183
|
+
if (this.config.inputs && shouldGenerateRemote() && !currentInputVars && !agentResp.materializedVars) {
|
|
184
|
+
logger.warn("[Hydra] Remote multi-input generation returned an invalid prompt format", {
|
|
185
|
+
turn,
|
|
186
|
+
messagePreview: processedMessage.slice(0, 200)
|
|
187
|
+
});
|
|
188
|
+
agentFailureError = "Hydra remote multi-input generation returned an invalid prompt format";
|
|
189
|
+
continue;
|
|
190
|
+
}
|
|
191
|
+
if ((currentInputVars || agentResp.materializedVars) && this.config.inputs) if (shouldGenerateRemote()) materializedInputVars = buildRemoteMaterializedInputVariables(agentResp, currentInputVars ?? {}, this.config.inputs);
|
|
192
|
+
else materializedInputVars = await materializeInputVariablesWithMetadata(currentInputVars, this.config.inputs, {
|
|
179
193
|
materializationIndex: turn,
|
|
180
194
|
pluginId: "hydra",
|
|
181
195
|
provider: this.agentProvider,
|
|
182
196
|
purpose: test?.metadata?.purpose
|
|
183
|
-
})
|
|
197
|
+
});
|
|
198
|
+
const currentRenderInputVars = materializedInputVars?.vars ?? currentInputVars;
|
|
184
199
|
this.conversationHistory.push({
|
|
185
200
|
role: "user",
|
|
186
201
|
content: processedMessage
|
|
@@ -512,13 +527,16 @@ var HydraProvider = class {
|
|
|
512
527
|
role: msg.role,
|
|
513
528
|
content: msg.content
|
|
514
529
|
}));
|
|
530
|
+
const targetProbeCount = totalTokenUsage.numRequests ?? 0;
|
|
531
|
+
const hydraRoundsCompleted = this.conversationHistory.filter((m) => m.role === "user").length;
|
|
532
|
+
const failClosedError = targetProbeCount === 0 ? agentFailureError || "Hydra did not execute any target probes" : void 0;
|
|
515
533
|
return {
|
|
516
534
|
output: lastTargetResponse?.output || "",
|
|
517
|
-
...lastTargetResponse?.error ? { error: lastTargetResponse.error } : {},
|
|
535
|
+
...failClosedError ? { error: failClosedError } : lastTargetResponse?.error ? { error: lastTargetResponse.error } : {},
|
|
518
536
|
metadata: {
|
|
519
537
|
sessionId: this.sessionId || getSessionId(lastTargetResponse, context),
|
|
520
538
|
messages,
|
|
521
|
-
hydraRoundsCompleted
|
|
539
|
+
hydraRoundsCompleted,
|
|
522
540
|
hydraBacktrackCount: backtrackCount,
|
|
523
541
|
hydraResult: vulnerabilityAchieved,
|
|
524
542
|
stopReason,
|
|
@@ -539,4 +557,4 @@ var HydraProvider = class {
|
|
|
539
557
|
//#endregion
|
|
540
558
|
export { HydraProvider, HydraProvider as default };
|
|
541
559
|
|
|
542
|
-
//# sourceMappingURL=hydra-
|
|
560
|
+
//# sourceMappingURL=hydra-CXc0p63W.js.map
|