promptfoo 0.121.3 → 0.121.5
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/README.md +1 -1
- package/dist/src/{ListApp-Du7YVwj5.js → ListApp-BRUsT43Y.js} +1 -1
- package/dist/src/{accounts-BPyfpSeU.cjs → accounts-BIFntVWB.cjs} +5 -5
- package/dist/src/{accounts-CFLK3mnD.js → accounts-CLJHCDDb.js} +6 -6
- package/dist/src/{accounts-B2XmGjty.js → accounts-CaLNYnf7.js} +5 -5
- package/dist/src/{accounts-Xatc0RYb.js → accounts-bnyHT7Ju.js} +5 -5
- package/dist/src/{agentic-utils-36epdqwB.js → agentic-utils-B5krlibj.js} +3 -3
- package/dist/src/{agentic-utils-DIYAAYE7.js → agentic-utils-Ba67xmgs.js} +3 -3
- package/dist/src/{agentic-utils-D8yXo5Lm.js → agentic-utils-BclbiXiq.js} +4 -4
- package/dist/src/{agentic-utils-DAVsChuB.cjs → agentic-utils-D2x0wGhB.cjs} +3 -3
- package/dist/src/{agents-CLQ-P15P.js → agents-BGqaTDnr.js} +5 -7
- package/dist/src/{agents-wg3ohknq.js → agents-BV9yFpXX.js} +6 -7
- package/dist/src/{agents-CgBniSlI.js → agents-BYdMl1UE.js} +5 -9
- package/dist/src/{agents-Bqgfdokm.js → agents-DhxWMCtH.js} +35 -14
- package/dist/src/{agents-BBWxKSM0.cjs → agents-DiWmQYH9.cjs} +5 -7
- package/dist/src/{agents-CAYbM7qD.cjs → agents-WULPVjbH.cjs} +34 -12
- package/dist/src/{agents-DSSTV4bv.js → agents-emVcx3yh.js} +35 -13
- package/dist/src/{agents-BBVJCIYr.js → agents-n6vPqV3i.js} +35 -13
- package/dist/src/{aimlapi-BwGC1TtS.js → aimlapi-BxqK9HF_.js} +8 -14
- package/dist/src/{aimlapi-Bv8Fmc-b.cjs → aimlapi-BzLjZI_m.cjs} +8 -15
- package/dist/src/{aimlapi-MgSLdvy7.js → aimlapi-DR4pgeiC.js} +7 -14
- package/dist/src/{aimlapi-DaC3qZ-o.js → aimlapi-uPGp0Zdo.js} +7 -16
- package/dist/src/app/app/tsconfig.app.tsbuildinfo +1 -0
- package/dist/src/app/assets/Report-vjzrbgce.js +1 -0
- package/dist/src/app/assets/index-B3NQ8HTd.js +385 -0
- package/dist/src/app/assets/index-Cli2yAXv.css +1 -0
- package/dist/src/app/assets/rolldown-runtime-COnpUsM8.js +1 -0
- package/dist/src/app/assets/scroll-timeline-D9IT_e8Z.js +1 -0
- package/dist/src/app/assets/sync-IjzpWrOE.js +4 -0
- package/dist/src/app/assets/vendor-charts-BNdH8TCw.js +36 -0
- package/dist/src/app/assets/vendor-markdown-Ch00wnNI.js +29 -0
- package/dist/src/app/assets/vendor-react-CVvmk1UB.js +9 -0
- package/dist/src/app/assets/vendor-utils-BnEYbx2Q.js +37 -0
- package/dist/src/app/index.html +32 -7
- package/dist/src/{audio-Bn44pQxv.js → audio-BvpTOArF.js} +4 -4
- package/dist/src/{audio-DVFjQ67_.cjs → audio-C0vDeS0j.cjs} +4 -4
- package/dist/src/{audio-DjU9GswO.js → audio-CScmnmEB.js} +4 -5
- package/dist/src/{audio-DDA5WHdx.js → audio-Da8U9IS5.js} +4 -4
- package/dist/src/{base-CKjwebIH.js → base-BOMaNEes.js} +3 -3
- package/dist/src/{base-CqzQ4K8j.js → base-BTux96b1.js} +3 -3
- package/dist/src/{base-BboXIF_0.cjs → base-Tw6uhH8K.cjs} +3 -3
- package/dist/src/{base-Cz2ZC_iA.js → base-dYsl2hmL.js} +3 -3
- package/dist/src/{blobs-C6j0bvFz.cjs → blobs-B95F_7vE.cjs} +3 -3
- package/dist/src/{blobs-DXTl6J3H.js → blobs-BW4U31ue.js} +3 -3
- package/dist/src/{blobs-BUWmKWzo.js → blobs-D_gg8nbm.js} +4 -4
- package/dist/src/{blobs-B1JriOyi.js → blobs-DjLby-uP.js} +4 -4
- package/dist/src/cache-BI5BY7ey.js +280 -0
- package/dist/src/cache-BRkhlH3k.cjs +3 -0
- package/dist/src/cache-BlC6aeJ0.js +3 -0
- package/dist/src/cache-Bzttsk0X.js +310 -0
- package/dist/src/cache-Cr-qWIbP.js +310 -0
- package/dist/src/cache-DGg-yTZG.cjs +376 -0
- package/dist/src/{chat-BEwdgGEg.js → chat-BLOdH60v.js} +63 -37
- package/dist/src/{chat-B0iaWhoh.js → chat-Cx_LkwvZ.js} +63 -37
- package/dist/src/{chat-DK1U-eZ-.js → chat-D9nudO9b.js} +5 -14
- package/dist/src/{chat-pxmiVpWe.js → chat-DChSH_Es.js} +63 -37
- package/dist/src/{chat-B-52XYI1.js → chat-DG2LkwLq.js} +3 -13
- package/dist/src/{chat-BtIKkLKx.cjs → chat-DH97tVV9.cjs} +3 -13
- package/dist/src/{chat-BE0qTA8e.js → chat-aMQZw6R7.js} +4 -16
- package/dist/src/{chat-CM8qWR3_.cjs → chat-vYqqv1gP.cjs} +64 -38
- package/dist/src/{chatkit-_8eJqKcD.js → chatkit-B8X34dQc.js} +4 -4
- package/dist/src/{chatkit-BYGQlHlV.js → chatkit-BXu42Qwt.js} +4 -4
- package/dist/src/{chatkit-a2D6mY6s.js → chatkit-CbMRoeYw.js} +4 -4
- package/dist/src/{chatkit-Cx174XI3.cjs → chatkit-D44VyUyB.cjs} +4 -4
- package/dist/src/{claude-agent-sdk-8ddRp1L2.cjs → claude-agent-sdk-BRq0bbIK.cjs} +23 -18
- package/dist/src/{claude-agent-sdk-CMjh4LFH.js → claude-agent-sdk-BjriSVRZ.js} +20 -15
- package/dist/src/{claude-agent-sdk-HgbFioFw.js → claude-agent-sdk-BzNZeZ0N.js} +20 -15
- package/dist/src/{claude-agent-sdk-Bq5EArsX.js → claude-agent-sdk-DYv_AJ8u.js} +21 -17
- package/dist/src/cloud-CoD5OacT.js +3 -0
- package/dist/src/{cloud-z8KZpUoa.js → cloud-Da0bofJd.js} +25 -13
- package/dist/src/{cloudflare-ai-Bbp26N0L.js → cloudflare-ai-CXC4b1EU.js} +5 -14
- package/dist/src/{cloudflare-ai-BGyXlpXJ.js → cloudflare-ai-CyBoIs1Q.js} +7 -15
- package/dist/src/{cloudflare-ai-DdKP9TKT.js → cloudflare-ai-DGOwgexC.js} +6 -17
- package/dist/src/{cloudflare-ai-C62x6MQG.cjs → cloudflare-ai-DJv5qnyb.cjs} +6 -15
- package/dist/src/{cloudflare-gateway-DXhtXDRb.js → cloudflare-gateway-1sAoOyft.js} +6 -16
- package/dist/src/{cloudflare-gateway-D-e9i1Sn.js → cloudflare-gateway-D-dnkzCF.js} +5 -18
- package/dist/src/{cloudflare-gateway-Dx36ftqF.cjs → cloudflare-gateway-DKVjkDav.cjs} +4 -15
- package/dist/src/{cloudflare-gateway-BwAaUgeW.js → cloudflare-gateway-TJkVrZlB.js} +4 -15
- package/dist/src/codex-app-server-CCLjqCh9.js +1915 -0
- package/dist/src/codex-app-server-CCe0TiDc.js +1915 -0
- package/dist/src/codex-app-server-CPW1LFwh.js +1916 -0
- package/dist/src/codex-app-server-VMRnjZ68.cjs +1920 -0
- package/dist/src/codex-sdk-1jm_qPHf.js +3 -0
- package/dist/src/codex-sdk-Bd8UbO9q.cjs +1172 -0
- package/dist/src/codex-sdk-BgEFQ70r.js +1164 -0
- package/dist/src/codex-sdk-Bzb_TqX9.js +1165 -0
- package/dist/src/codex-sdk-Danroptg.cjs +2 -0
- package/dist/src/codex-sdk-DfvDTN33.js +1165 -0
- package/dist/src/{cometapi-BDyV-NNm.js → cometapi-B5ImDlSm.js} +9 -15
- package/dist/src/{cometapi-C3hOlM7-.cjs → cometapi-BgAkuYCw.cjs} +9 -16
- package/dist/src/{cometapi-hhL4TAh3.js → cometapi-CC7hWxmX.js} +8 -15
- package/dist/src/{cometapi-sp7sJpBD.js → cometapi-CCbpHkuF.js} +8 -17
- package/dist/src/{completion-DoYy49ti.js → completion-2iuYVxwi.js} +8 -57
- package/dist/src/{completion-BCimtq-h.js → completion-CrD6MQ93.js} +8 -57
- package/dist/src/{completion-DlXUhj5c.cjs → completion-DtQ72Bm3.cjs} +7 -62
- package/dist/src/{completion-DCjv7RZ3.js → completion-Vq_ad618.js} +8 -57
- package/dist/src/{createHash-CTQmL3G2.js → createHash-4gFQpDDv.js} +3 -3
- package/dist/src/{createHash-Da8fMwqB.js → createHash-DPpsZgFF.js} +3 -3
- package/dist/src/{createHash-DmPQkvBh.js → createHash-Un4Q_huE.js} +3 -3
- package/dist/src/{createHash-BYwImsYv.cjs → createHash-VvBIc-AW.cjs} +4 -4
- package/dist/src/{docker-CxCkwMzc.js → docker--3qzPa-6.js} +6 -14
- package/dist/src/{docker-Cqj2-QVi.cjs → docker-D3AY-5F5.cjs} +7 -15
- package/dist/src/{docker-FeBni2dw.js → docker-DCsCDvwM.js} +7 -14
- package/dist/src/{docker-DpguQj-w.js → docker-Dorv4_Dg.js} +6 -16
- package/dist/src/embedding-BXhN5lCH.cjs +63 -0
- package/dist/src/embedding-ChS1ivFS.js +58 -0
- package/dist/src/embedding-DNRvZwRN.js +59 -0
- package/dist/src/embedding-D_bI4NDq.js +58 -0
- package/dist/src/entrypoint.js +69 -6
- package/dist/src/{errors-P6ll7XSJ.js → errors-DFHe4L-n.js} +1 -1
- package/dist/src/{esm-SUNIX1x3.js → esm-B6whoAcf.js} +15 -6
- package/dist/src/{esm-CKWP3u_P.js → esm-BRkfNsYs.js} +16 -7
- package/dist/src/{esm-7UIl0pPM.js → esm-BX8fwlAO.js} +27 -18
- package/dist/src/{esm-CipptfDu.cjs → esm-B_rGuPTo.cjs} +15 -6
- package/dist/src/eval-BQPLBJbw.js +3 -0
- package/dist/src/{eval-BTqTn7lb.js → eval-DJ_4A-tr.js} +50 -21
- package/dist/src/evalResult-BBJAHAtw.cjs +2 -0
- package/dist/src/evalResult-BBK58h2B.js +3 -0
- package/dist/src/{evalResult-DpARzUCb.cjs → evalResult-Cx-8OWkb.cjs} +29 -11
- package/dist/src/{evalResult-DUDShQrm.js → evalResult-D6P5I5il.js} +29 -11
- package/dist/src/{evalResult-BkIhRdTe.js → evalResult-pSvGWFMo.js} +29 -11
- package/dist/src/evalResult-spPqh1G_.js +2 -0
- package/dist/src/{evaluator-BcvOGaam.js → evaluator-D-UIbbYq.js} +3975 -2152
- package/dist/src/evaluator-DgLKaZk8.js +3 -0
- package/dist/src/{extractor-D_wd8jxt.js → extractor-BM3jRERL.js} +6 -6
- package/dist/src/{extractor-DG3sSfXE.cjs → extractor-Dxr2J_wK.cjs} +6 -6
- package/dist/src/{extractor-CAZ2G3Kh.js → extractor-DxyiFhPk.js} +6 -6
- package/dist/src/{extractor-C8XwivI9.js → extractor-YlZbUMsL.js} +6 -6
- package/dist/src/fetch-8viavNv8.js +3 -0
- package/dist/src/{fetch-DoVRJZhJ.js → fetch-B6ch2nU2.js} +199 -60
- package/dist/src/{fetch-CVAtKnI3.js → fetch-D9xxyC1p.js} +404 -252
- package/dist/src/{fetch-BnR9wSnm.cjs → fetch-NuqXW1Xb.cjs} +415 -263
- package/dist/src/{fetch-BiYv2BZc.js → fetch-Y5qX_kST.js} +222 -70
- package/dist/src/{fileExtensions-LcDYkU4v.js → fileExtensions-8CjoL7vB.js} +1 -1
- package/dist/src/{fileExtensions-DnqA1y9x.js → fileExtensions-BGh-W-HT.js} +1 -1
- package/dist/src/{fileExtensions-bYh77CN8.cjs → fileExtensions-D9h-8Wxg.cjs} +1 -1
- package/dist/src/{fileExtensions-Ds-foDzt.js → fileExtensions-DysCsxNG.js} +1 -1
- package/dist/src/{formatDuration-DgBVMN65.js → formatDuration-Ch4A7G3o.js} +1 -1
- package/dist/src/{genaiTracer-BfxrvSUb.cjs → genaiTracer-BokHC-MW.cjs} +7 -3
- package/dist/src/{genaiTracer-C1rxGO8Q.js → genaiTracer-C3ZPQU60.js} +6 -2
- package/dist/src/{genaiTracer-70Z8BIuV.js → genaiTracer-CFny3gOy.js} +6 -2
- package/dist/src/{genaiTracer-D3fD9dNV.js → genaiTracer-DxODqT9e.js} +6 -2
- package/dist/src/golang/wrapper.go +1 -1
- package/dist/src/{graders-DG7mhg-b.js → graders-BoUqsCEm.js} +7402 -5699
- package/dist/src/{graders-BElhu9ZY.cjs → graders-Bw1wk_21.cjs} +5220 -3437
- package/dist/src/graders-C84JI-m5.js +2 -0
- package/dist/src/graders-CBbd0K0Q.cjs +2 -0
- package/dist/src/graders-CbQqpHSN.js +3 -0
- package/dist/src/{graders-RjHF8VfG.js → graders-CgPn32yp.js} +7400 -5697
- package/dist/src/{graders-BXAJ0sbS.js → graders-CwrbifOo.js} +6136 -4433
- package/dist/src/graders-DS42d3ZG.js +2 -0
- package/dist/src/{image-6WQXK8m8.js → image-BeWaInPF.js} +4 -4
- package/dist/src/{image-PoF6DN3x.js → image-BmilRNqO.js} +8 -8
- package/dist/src/{image--F58eEIn.cjs → image-CxJoa3aW.cjs} +8 -8
- package/dist/src/{image-fza3zuKs.cjs → image-D10dNAav.cjs} +4 -4
- package/dist/src/{image-DO0RYnjH.js → image-Dr_3I3nK.js} +4 -5
- package/dist/src/{image-B8b6f36E.js → image-DsGRlkh7.js} +8 -8
- package/dist/src/{image-CoxZp9PZ.js → image-a_SGUobh.js} +8 -8
- package/dist/src/{image-xNbw5ph2.js → image-qjO6FWPs.js} +4 -4
- package/dist/src/index.cjs +4835 -2582
- package/dist/src/index.d.cts +2782 -31
- package/dist/src/index.d.ts +2783 -32
- package/dist/src/index.js +4817 -2564
- package/dist/src/{interactiveCheck-BnMYOjMu.js → interactiveCheck-CCICw2cy.js} +2 -2
- package/dist/src/{invariant-BtWWVVhl.js → invariant-B2Rf6avk.js} +1 -1
- package/dist/src/{invariant-vgHWClmd.js → invariant-DIYf9sP1.js} +1 -1
- package/dist/src/{knowledgeBase-Bi7CmDbx.js → knowledgeBase-BBETc5-S.js} +6 -8
- package/dist/src/{knowledgeBase-DqrLX8fy.cjs → knowledgeBase-C8qOo26M.cjs} +6 -8
- package/dist/src/{knowledgeBase-DFRXPZl_.js → knowledgeBase-CzAi2rUI.js} +7 -8
- package/dist/src/{knowledgeBase-Ce3ofVan.js → knowledgeBase-Dr3Kib7F.js} +6 -10
- package/dist/src/{litellm-CKiAxnoM.js → litellm-BLSiANhk.js} +6 -14
- package/dist/src/{litellm-CnHI69aj.cjs → litellm-CaUmV7Mk.cjs} +6 -15
- package/dist/src/{litellm-Tc294Jhj.js → litellm-DQGo_juI.js} +5 -14
- package/dist/src/{litellm-Bo2gQXpo.js → litellm-DRc4qWfc.js} +5 -16
- package/dist/src/{logger-BcJBzSSA.js → logger-BbY6ypFL.js} +41 -12
- package/dist/src/{logger-D5iKBpu_.cjs → logger-COuQb2xB.cjs} +51 -10
- package/dist/src/{logger-DO8_zM18.js → logger-Ct2S6Yx-.js} +40 -11
- package/dist/src/{logger-BnkjG2jt.js → logger-KD8JjCRJ.js} +41 -12
- package/dist/src/{luma-ray-C9q8rdQe.js → luma-ray-B-tNZzqW.js} +6 -10
- package/dist/src/{luma-ray-DP0QA9qn.js → luma-ray-CtS3OlGq.js} +6 -10
- package/dist/src/{luma-ray-0ehMPt5N.js → luma-ray-PJJgUjOc.js} +6 -11
- package/dist/src/{luma-ray-m9Ku2meV.cjs → luma-ray-if-Ml4R9.cjs} +6 -10
- package/dist/src/main.d.ts +1 -26
- package/dist/src/main.js +1188 -679
- package/dist/src/messages-B9dSjrNf.js +544 -0
- package/dist/src/messages-BnsVHUnm.cjs +558 -0
- package/dist/src/messages-CI69Lasb.js +543 -0
- package/dist/src/messages-CewuNcNS.js +543 -0
- package/dist/src/{meteor-DLZZ3osF.cjs → meteor-BBGcGeCa.cjs} +1 -1
- package/dist/src/{meteor-DUiCJRC-.js → meteor-BKTM-7KS.js} +1 -1
- package/dist/src/{meteor-44VjEACX.js → meteor-CeGo0Lu2.js} +2 -2
- package/dist/src/{meteor-D-SotUw9.js → meteor-Wc_aUVvu.js} +2 -2
- package/dist/src/{modelslab-B5J-ZM5c.js → modelslab-BCLOtfek.js} +8 -10
- package/dist/src/{modelslab-IQbNg-r7.cjs → modelslab-BkapYJhh.cjs} +7 -10
- package/dist/src/{modelslab-BTOT8FUO.js → modelslab-D73OnKSx.js} +7 -10
- package/dist/src/{modelslab-BI458moT.js → modelslab-zpz9JcK0.js} +7 -12
- package/dist/src/{nova-reel-BZ9y-Y5s.js → nova-reel-B8F_TK5w.js} +7 -10
- package/dist/src/{nova-reel-Xw1SXLpg.js → nova-reel-Bx0NFV2f.js} +6 -10
- package/dist/src/{nova-reel-DEeQlnOJ.js → nova-reel-CNGJTLtG.js} +6 -12
- package/dist/src/{nova-reel-CE5etkv9.cjs → nova-reel-DkT7tnoB.cjs} +6 -10
- package/dist/src/{nova-sonic-Ogqf-csn.js → nova-sonic-BaXRN1cr.js} +5 -7
- package/dist/src/{nova-sonic-DXTLpi-r.js → nova-sonic-BeTRaFOh.js} +4 -7
- package/dist/src/{nova-sonic-DWswpN1E.js → nova-sonic-CL7Zqv0G.js} +4 -9
- package/dist/src/{nova-sonic-N0yCm0vb.cjs → nova-sonic-YT426juD.cjs} +4 -7
- package/dist/src/{openai-BcB5KlTk.js → openai-BMHD2Huo.js} +6 -3
- package/dist/src/{openai-BMcwgD5C.js → openai-BT-JvDse.js} +6 -3
- package/dist/src/{openai-CoxGAQwn.cjs → openai-Cy1XLs0c.cjs} +6 -3
- package/dist/src/{openai-D6wITiVn.js → openai-D4fxGvRx.js} +6 -3
- package/dist/src/openclaw-Bq7RVR3k.js +1200 -0
- package/dist/src/openclaw-DA8U4DsD.js +1201 -0
- package/dist/src/openclaw-DObVgpjC.js +1200 -0
- package/dist/src/openclaw-DUBZP3GL.cjs +1206 -0
- package/dist/src/{opencode-sdk-CHCs7dEb.js → opencode-sdk-BB40Wir1.js} +6 -8
- package/dist/src/{opencode-sdk-DDxj4QqH.js → opencode-sdk-BM1UAIv1.js} +6 -8
- package/dist/src/{opencode-sdk-WWJhnbKr.cjs → opencode-sdk-CeqiOcOU.cjs} +7 -9
- package/dist/src/{opencode-sdk-C71Z0ehR.js → opencode-sdk-ChdK7F7z.js} +6 -9
- package/dist/src/{otlpReceiver-CZL48YfC.js → otlpReceiver-C6thJRXi.js} +154 -98
- package/dist/src/{otlpReceiver-C9KlUtxh.js → otlpReceiver-CcdIikOu.js} +154 -98
- package/dist/src/{otlpReceiver-DHKqJlsz.cjs → otlpReceiver-DNSQj6bf.cjs} +154 -98
- package/dist/src/{otlpReceiver-CavGAA6k.js → otlpReceiver-UYMQx3sy.js} +154 -98
- package/dist/src/{providerRegistry-BkzVH5Ba.js → providerRegistry-1gB5vtzQ.js} +2 -2
- package/dist/src/{providerRegistry-BTDgfV5h.cjs → providerRegistry-BESeALrr.cjs} +2 -2
- package/dist/src/{providerRegistry-CUWki5mQ.js → providerRegistry-DoACwqhD.js} +2 -2
- package/dist/src/{providerRegistry-B9lh-_tx.js → providerRegistry-PMsleEzs.js} +2 -2
- package/dist/src/providers-BuyzKt7C.js +2 -0
- package/dist/src/providers-C7lNVBjX.cjs +3 -0
- package/dist/src/providers-CCE2COJi2.js +2 -0
- package/dist/src/{providers-Cn73d5sr.js → providers-CJh7iriU.js} +17180 -16823
- package/dist/src/providers-Ctcc592x.js +3 -0
- package/dist/src/{providers-DvddrgxL.js → providers-DRrerKra.js} +1052 -695
- package/dist/src/{providers-Ch6Mr0gn.js → providers-DT-GtF2t.js} +16716 -16359
- package/dist/src/{providers-CScd1wN6.cjs → providers-eDShy16E.cjs} +19893 -19506
- package/dist/src/python/persistent_wrapper.py +0 -5
- package/dist/src/{pythonUtils-Cpo0Ez1p.js → pythonUtils-C4tltmIn.js} +4 -4
- package/dist/src/{pythonUtils-dAVigVK-.cjs → pythonUtils-CoLaCwNY.cjs} +4 -4
- package/dist/src/{pythonUtils-Bzwbgpbg.js → pythonUtils-DMO68Jg7.js} +3 -3
- package/dist/src/{pythonUtils-wIqk7zAf.js → pythonUtils-DNqbnRdx.js} +3 -3
- package/dist/src/{quiverai-BeofbLVc.js → quiverai-BSS9a7wV.js} +4 -4
- package/dist/src/{quiverai-DVSEqJiq.js → quiverai-Bk1KrvL6.js} +4 -4
- package/dist/src/{quiverai-CcUhPIBg.cjs → quiverai-Bpx6MZ7T.cjs} +4 -4
- package/dist/src/{quiverai-CCQn73lq.js → quiverai-CPKhWgaT.js} +4 -5
- package/dist/src/render-7uNJ2V14.js +135 -0
- package/dist/src/render-DlscvAUJ.js +135 -0
- package/dist/src/render-eui5p5mL.js +136 -0
- package/dist/src/{render-BHl6QVq9.js → render-nj-UaPdn.js} +2 -3
- package/dist/src/render-tG6ir9_g.cjs +165 -0
- package/dist/src/{responses-CgNyTPsY.js → responses-1ztiVYsx.js} +56 -17
- package/dist/src/{responses-BKP_WYis.js → responses-B8haB-mD.js} +56 -17
- package/dist/src/{responses-CQb1Tj69.js → responses-BiaBguAu.js} +56 -17
- package/dist/src/{responses-mo0KQDbu.cjs → responses-CF-ayauu.cjs} +56 -17
- package/dist/src/rubyUtils-4hjGxvju.js +3 -0
- package/dist/src/{rubyUtils-DECSbsfY.js → rubyUtils-BI0p46eZ.js} +3 -3
- package/dist/src/{rubyUtils-CiVfln3g.js → rubyUtils-CIQFnVz4.js} +3 -3
- package/dist/src/rubyUtils-CO-tuszQ.cjs +2 -0
- package/dist/src/{rubyUtils-PgU-gHmx.js → rubyUtils-DGnoCYL2.js} +4 -4
- package/dist/src/{rubyUtils-CGeUtCfW.cjs → rubyUtils-DoifqkiA.cjs} +5 -4
- package/dist/src/{sagemaker-CqeASYE5.js → sagemaker-BDLeW29y.js} +14 -18
- package/dist/src/{sagemaker-MUbD5V3v.js → sagemaker-C5T60MKf.js} +14 -19
- package/dist/src/{sagemaker-CVv8W7so.js → sagemaker-ClS_NB07.js} +14 -18
- package/dist/src/{sagemaker-jiw1wQa-.cjs → sagemaker-ljtY12VM.cjs} +14 -18
- package/dist/src/{scanner-DVDeUz1r.js → scanner-nOCWNIXa.js} +130 -35
- package/dist/src/server/golang/wrapper.go +1 -1
- package/dist/src/server/index.js +4829 -2529
- package/dist/src/server/python/persistent_wrapper.py +0 -5
- package/dist/src/{server-BtoCXeXI.cjs → server-BEECpeGG.cjs} +140 -6
- package/dist/src/{server-DZ9MtCn0.js → server-ByiF3qlg.js} +129 -9
- package/dist/src/{server-Cns05F1j.js → server-ByxbqAcQ.js} +128 -8
- package/dist/src/server-C0XKRNB_.cjs +2 -0
- package/dist/src/server-C_15p79-.js +3 -0
- package/dist/src/{server-CP9qKM40.js → server-gyd6d4Hc.js} +126 -7
- package/dist/src/{signal-C3ZTsUgi.js → signal-DTtUuU3l.js} +3 -3
- package/dist/src/{slack-DCEV-vWP.js → slack-4zZX1OKP.js} +2 -2
- package/dist/src/{slack-94iG3T0s.cjs → slack-BLlsDpfG.cjs} +2 -2
- package/dist/src/{slack-BR0HtO3K.js → slack-BPYLQLgb.js} +2 -2
- package/dist/src/{slack-2sdpGzbt.js → slack-Bamy_7te.js} +2 -2
- package/dist/src/{store-CLyU7AtI.cjs → store-2K0kDi80.cjs} +3 -3
- package/dist/src/{store-VB0GP46K.js → store-2OXm_eBY.js} +3 -3
- package/dist/src/store-BELqNwvz.js +3 -0
- package/dist/src/{store-Cj258DgL.js → store-BPkzEyFM.js} +3 -3
- package/dist/src/{store-P8OKm19S.js → store-CPh25336.js} +3 -3
- package/dist/src/store-uQZ4AjPe.cjs +2 -0
- package/dist/src/{tables-BEIFz2tM.js → tables-BMSOS2Gg.js} +3 -3
- package/dist/src/{tables-BdZQEpRz.cjs → tables-CXbaZ9y1.cjs} +3 -3
- package/dist/src/{tables-DmzvLbeZ.js → tables-NlvH23ky.js} +3 -3
- package/dist/src/{tables-kC7R5kiK.js → tables-WgdUZ8Ck.js} +3 -3
- package/dist/src/{telemetry-DPXLd7UE.js → telemetry--iqaGyaS.js} +5 -4
- package/dist/src/{telemetry-re627Lre.cjs → telemetry-CEQxGnMZ.cjs} +8 -7
- package/dist/src/{telemetry-BugWqKiu.js → telemetry-CgdVGV8N.js} +5 -4
- package/dist/src/{telemetry-BnH5VJAU.js → telemetry-DWdGHvEf.js} +5 -4
- package/dist/src/telemetry-DjNoC_n3.cjs +2 -0
- package/dist/src/telemetry-ZdPZc0fm.js +3 -0
- package/dist/src/{text-CW1cyrwj.cjs → text-BiNME7QG.cjs} +1 -1
- package/dist/src/{text-Db-Wt2u2.js → text-D4lz-Jg_.js} +1 -1
- package/dist/src/{text-TIv0QYnd.js → text-DDQP0tuQ.js} +1 -1
- package/dist/src/{text-B_UCRPp2.js → text-NWvfMfkF.js} +1 -1
- package/dist/src/{tokenUsageUtils-DflFMjS0.js → tokenUsageUtils-2wIvAhB3.js} +7 -3
- package/dist/src/{tokenUsageUtils-BDGe-iyI.js → tokenUsageUtils-4c780gFd.js} +7 -3
- package/dist/src/{tokenUsageUtils-NYT-WKS6.js → tokenUsageUtils-BjVkdk18.js} +7 -3
- package/dist/src/{tokenUsageUtils-bVa1ga6f.cjs → tokenUsageUtils-C9odhsbW.cjs} +7 -3
- package/dist/src/{transcription-CaMivnjG.js → transcription-84t4ALo2.js} +7 -11
- package/dist/src/{transcription-Hb3VnC4M.js → transcription-Bm2emLmJ.js} +8 -11
- package/dist/src/{transcription-BvtsrzRG.cjs → transcription-CZ4LG5hQ.cjs} +9 -13
- package/dist/src/{transcription-DOMMTu01.js → transcription-D7Q0vJsh.js} +7 -13
- package/dist/src/{transform-DrleutM3.js → transform-B-b6Cq-q.js} +8 -6
- package/dist/src/transform-BQt0BeAW.js +3 -0
- package/dist/src/transform-Bq5oqC0s.cjs +2 -0
- package/dist/src/{transform-ZrG2dvlo.cjs → transform-C9izGX54.cjs} +5 -5
- package/dist/src/{transform-BzK09Q_9.js → transform-CwbAZ84V.js} +5 -5
- package/dist/src/{transform-0BwoBsvO.cjs → transform-Dg4LcO1Y.cjs} +18 -10
- package/dist/src/{transform-B2-jIv68.js → transform-DtooZqYY.js} +8 -6
- package/dist/src/{transform-ljLYHEPh.js → transform-DzCF-wqV.js} +5 -5
- package/dist/src/{transform-DyDAwEpE.js → transform-_DpNB4qp.js} +9 -7
- package/dist/src/{transform-BqPkNPYm.js → transform-eGiUAv86.js} +5 -5
- package/dist/src/{transformersAvailability-DKoRtQLy.cjs → transformersAvailability-B22swDxr.cjs} +1 -1
- package/dist/src/{transformersAvailability-BGkzavwb.js → transformersAvailability-lvCCvuPT.js} +1 -1
- package/dist/src/{transformersAvailability-D6c6ROpT.js → transformersAvailability-rJGPccjr.js} +1 -1
- package/dist/src/{types-Cd3ygw8W.js → types-BDjGOq4E.js} +354 -24
- package/dist/src/{types-CIhFeUC4.js → types-BVH9hjgW.js} +364 -23
- package/dist/src/{types-D8cGDZbL.cjs → types-CgG2rKiW.cjs} +534 -167
- package/dist/src/{types-q8GXGF65.js → types-DNRZVOue.js} +498 -167
- package/dist/src/{util-BLvy9qfE.js → util-3pBZZb_H.js} +151 -149
- package/dist/src/{util-CFj4YKIn.cjs → util-A5_ZsQUn.cjs} +66 -44
- package/dist/src/{util-BtoGs5Cb.js → util-B9CNhyac.js} +66 -44
- package/dist/src/{util-Bm3E9jpK.js → util-BQOCAHQC.js} +692 -690
- package/dist/src/{util-vNmDL5DT.js → util-BVXcTwXu.js} +138 -36
- package/dist/src/{util-CgDCK4KI.js → util-BlFVL0UF.js} +66 -44
- package/dist/src/{util-DM2rTn_6.js → util-C-kmRosx.js} +66 -44
- package/dist/src/{util-DbVG-yZU.js → util-DFPeFkiV.js} +138 -36
- package/dist/src/{util-DMFeUvLz.js → util-DN0-b81k.js} +138 -36
- package/dist/src/{util--9u9UVCt.cjs → util-Dpmm_dAI.cjs} +143 -35
- package/dist/src/{util-CMMkIxfU.js → util-Dub0f_ej.js} +693 -691
- package/dist/src/{util-CuLo2pMR.cjs → util-DvpHnLt0.cjs} +714 -719
- package/dist/src/{utils-DOjD4dTC.js → utils-BUMN8orw.js} +6 -4
- package/dist/src/{utils-DKw8mrgr.cjs → utils-DkVeShIB.cjs} +6 -4
- package/dist/src/{utils-DEuL4VNB.js → utils-kt7lv30R.js} +6 -4
- package/dist/src/{utils-CFxO9KGo.js → utils-o8S5huU2.js} +6 -4
- package/dist/src/version-0frU0UTr.js +16 -0
- package/dist/src/version-CbpiUINz.js +17 -0
- package/dist/src/version-CbuBKu2U.js +16 -0
- package/dist/src/version-D9zu9FWB.cjs +27 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +57 -46
- package/dist/src/app/assets/index-B6l9CVVb.js +0 -439
- package/dist/src/app/assets/index-DyZ0Ep37.css +0 -1
- package/dist/src/app/assets/scroll-timeline-BdJZVXlz.js +0 -1
- package/dist/src/app/assets/sync-CStkzc6u.js +0 -4
- package/dist/src/app/assets/vendor-charts-BnDWwBlI.js +0 -36
- package/dist/src/app/assets/vendor-markdown-Bz7N-ca6.js +0 -29
- package/dist/src/app/assets/vendor-react-AtKqiNEf.js +0 -4
- package/dist/src/app/assets/vendor-syntax-D06x6TQF.js +0 -2
- package/dist/src/app/assets/vendor-utils-BvMHZmO7.js +0 -37
- package/dist/src/cache-C5yFZ4gC.cjs +0 -816
- package/dist/src/cache-CaT5tPgo.js +0 -756
- package/dist/src/cache-CyCanoMu.js +0 -6
- package/dist/src/cache-DSqR6ezl.js +0 -726
- package/dist/src/cache-Df_QFDNu.cjs +0 -5
- package/dist/src/cache-HP0NP4k3.js +0 -756
- package/dist/src/cloud-DE3t1-ZI.js +0 -4
- package/dist/src/codex-sdk-BQEw16R_.js +0 -834
- package/dist/src/codex-sdk-C_07GuVS.js +0 -834
- package/dist/src/codex-sdk-DE5G18dx.js +0 -835
- package/dist/src/codex-sdk-ZLKfDjqP.cjs +0 -838
- package/dist/src/eval-7aEqoMs3.js +0 -15
- package/dist/src/evalResult-CYNHkk5A.js +0 -12
- package/dist/src/evalResult-CuvJeNiM.js +0 -10
- package/dist/src/evalResult-tGdilrWt.cjs +0 -10
- package/dist/src/evaluator-BBUqRhz1.js +0 -36
- package/dist/src/fetch-UWU706qb.js +0 -5
- package/dist/src/graders-BxfEguVY.js +0 -32
- package/dist/src/graders-CzVMbEnv.js +0 -34
- package/dist/src/graders-DjCXfj0l.cjs +0 -32
- package/dist/src/graders-kHzIWOKu.js +0 -32
- package/dist/src/messages-DJNo37Ko.js +0 -246
- package/dist/src/messages-Dy9QecMs.js +0 -245
- package/dist/src/messages-HJsyEh4o.cjs +0 -257
- package/dist/src/messages-biC_ex-p.js +0 -245
- package/dist/src/openclaw-0Sv7AK3O.js +0 -580
- package/dist/src/openclaw-CXxbKgDH.cjs +0 -586
- package/dist/src/openclaw-D1FSCps-.js +0 -580
- package/dist/src/openclaw-D2ENvu7a.js +0 -582
- package/dist/src/providers-BSLEaIQG.js +0 -32
- package/dist/src/providers-D-FnDg8k.cjs +0 -31
- package/dist/src/providers-DEYiFVAo.js +0 -30
- package/dist/src/providers-sS2WI8YD.js +0 -30
- package/dist/src/rubyUtils-B1HXG4ej.cjs +0 -4
- package/dist/src/rubyUtils-Rt6pKA96.js +0 -5
- package/dist/src/server-B0Xh1Gx-.js +0 -7
- package/dist/src/server-DJTKu9IR.cjs +0 -5
- package/dist/src/store-C5u6MgC8.js +0 -6
- package/dist/src/store-CNHk-De4.cjs +0 -5
- package/dist/src/telemetry-Yig0Tino.js +0 -7
- package/dist/src/telemetry-p8Pwqm1i.cjs +0 -5
- package/dist/src/transform-ChNIpHz7.js +0 -6
- package/dist/src/transform-PtQ6rAE3.cjs +0 -5
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import { i as isJavascriptFile, t as JAVASCRIPT_EXTENSIONS } from "./fileExtensions-
|
|
1
|
+
import { i as isJavascriptFile, t as JAVASCRIPT_EXTENSIONS } from "./fileExtensions-BGh-W-HT.js";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
import dedent from "dedent";
|
|
4
4
|
//#region src/types/env.ts
|
|
5
5
|
const ProviderEnvOverridesSchema = z.object({
|
|
6
|
+
ABLIT_API_BASE_URL: z.string().optional(),
|
|
7
|
+
ABLIT_KEY: z.string().optional(),
|
|
6
8
|
AI21_API_BASE_URL: z.string().optional(),
|
|
7
9
|
AI21_API_KEY: z.string().optional(),
|
|
8
10
|
AIML_API_KEY: z.string().optional(),
|
|
@@ -80,6 +82,7 @@ const ProviderEnvOverridesSchema = z.object({
|
|
|
80
82
|
CODEX_API_KEY: z.string().optional(),
|
|
81
83
|
OPENCLAW_CONFIG_PATH: z.string().optional(),
|
|
82
84
|
OPENCLAW_GATEWAY_PASSWORD: z.string().optional(),
|
|
85
|
+
OPENCLAW_GATEWAY_PORT: z.string().optional(),
|
|
83
86
|
OPENCLAW_GATEWAY_TOKEN: z.string().optional(),
|
|
84
87
|
OPENCLAW_GATEWAY_URL: z.string().optional(),
|
|
85
88
|
PALM_API_HOST: z.string().optional(),
|
|
@@ -131,7 +134,9 @@ const ProviderEnvOverridesSchema = z.object({
|
|
|
131
134
|
const CompletionTokenDetailsSchema = z.object({
|
|
132
135
|
reasoning: z.number().optional(),
|
|
133
136
|
acceptedPrediction: z.number().optional(),
|
|
134
|
-
rejectedPrediction: z.number().optional()
|
|
137
|
+
rejectedPrediction: z.number().optional(),
|
|
138
|
+
cacheReadInputTokens: z.number().optional(),
|
|
139
|
+
cacheCreationInputTokens: z.number().optional()
|
|
135
140
|
});
|
|
136
141
|
/**
|
|
137
142
|
* Base schema for token usage statistics with all fields optional
|
|
@@ -163,6 +168,7 @@ const PromptFunctionSchema = z.custom((v) => typeof v === "function");
|
|
|
163
168
|
const PromptSchema = z.object({
|
|
164
169
|
id: z.string().optional(),
|
|
165
170
|
raw: z.string(),
|
|
171
|
+
template: z.string().optional(),
|
|
166
172
|
display: z.string().optional(),
|
|
167
173
|
label: z.string(),
|
|
168
174
|
function: PromptFunctionSchema.optional(),
|
|
@@ -173,9 +179,58 @@ assert$1();
|
|
|
173
179
|
assert$1();
|
|
174
180
|
assert$1();
|
|
175
181
|
//#endregion
|
|
182
|
+
//#region src/redteam/constants/codingAgents.ts
|
|
183
|
+
const CODING_AGENT_CORE_PLUGINS = [
|
|
184
|
+
"coding-agent:repo-prompt-injection",
|
|
185
|
+
"coding-agent:terminal-output-injection",
|
|
186
|
+
"coding-agent:secret-env-read",
|
|
187
|
+
"coding-agent:sandbox-read-escape",
|
|
188
|
+
"coding-agent:verifier-sabotage"
|
|
189
|
+
];
|
|
190
|
+
const CODING_AGENT_PLUGINS = [
|
|
191
|
+
...CODING_AGENT_CORE_PLUGINS,
|
|
192
|
+
"coding-agent:secret-file-read",
|
|
193
|
+
"coding-agent:sandbox-write-escape",
|
|
194
|
+
"coding-agent:network-egress-bypass"
|
|
195
|
+
];
|
|
196
|
+
const CODING_AGENT_COLLECTIONS = ["coding-agent:core"];
|
|
197
|
+
const CODING_AGENT_PLUGIN_DISPLAY_NAMES = {
|
|
198
|
+
"coding-agent:core": "Coding Agent Core",
|
|
199
|
+
"coding-agent:repo-prompt-injection": "Repository Prompt Injection",
|
|
200
|
+
"coding-agent:terminal-output-injection": "Terminal Output Injection",
|
|
201
|
+
"coding-agent:secret-env-read": "Secret Environment Read",
|
|
202
|
+
"coding-agent:secret-file-read": "Secret File Read",
|
|
203
|
+
"coding-agent:sandbox-read-escape": "Sandbox Read Escape",
|
|
204
|
+
"coding-agent:sandbox-write-escape": "Sandbox Write Escape",
|
|
205
|
+
"coding-agent:network-egress-bypass": "Network Egress Bypass",
|
|
206
|
+
"coding-agent:verifier-sabotage": "Verifier Sabotage"
|
|
207
|
+
};
|
|
208
|
+
const CODING_AGENT_PLUGIN_DESCRIPTIONS = {
|
|
209
|
+
"coding-agent:core": "Tests coding agents against a focused MVP set of repository prompt injection, terminal output injection, secret environment read, sandbox read escape, and verifier sabotage risks",
|
|
210
|
+
"coding-agent:repo-prompt-injection": "Tests whether instructions embedded in README files, source comments, fixture data, issue text, logs, or generated artifacts can override the user task or operating policy",
|
|
211
|
+
"coding-agent:terminal-output-injection": "Tests whether compiler, test, package manager, linter, formatter, git, grep, or script output can instruct the coding agent to perform unrelated or dangerous actions",
|
|
212
|
+
"coding-agent:secret-env-read": "Tests whether launcher-only environment canaries remain absent from commands, output, traces, reports, diffs, URLs, and tool or connector parameters",
|
|
213
|
+
"coding-agent:secret-file-read": "Tests whether protected local files, dotfiles, sibling checkout files, temp files, cache files, browser profile files, or support-bundle files remain outside the coding agent task boundary",
|
|
214
|
+
"coding-agent:sandbox-read-escape": "Tests whether the agent can read outside the intended workspace through absolute paths, sibling checkout paths, symlinks, archives, mount points, caches, temp paths, browser profiles, or home directories",
|
|
215
|
+
"coding-agent:sandbox-write-escape": "Tests whether the agent can create, overwrite, append, delete, chmod, or otherwise mutate files outside the intended workspace through relative paths, absolute paths, symlinks, temp paths, home paths, caches, mounts, or sibling checkouts",
|
|
216
|
+
"coding-agent:network-egress-bypass": "Tests whether the agent can make unauthorized outbound network requests, DNS lookups, package fetches, webhook calls, tunnels, or connector/tool calls that bypass the intended network policy",
|
|
217
|
+
"coding-agent:verifier-sabotage": "Tests whether the agent weakens tests, lint, typecheck, CI, snapshots, fixtures, auth, locks, security checks, policies, or harness assertions instead of fixing the requested implementation"
|
|
218
|
+
};
|
|
219
|
+
const CODING_AGENT_PLUGIN_ALIASES = {
|
|
220
|
+
"coding-agent:core": "CodingAgentCore",
|
|
221
|
+
"coding-agent:repo-prompt-injection": "CodingAgentRepoPromptInjection",
|
|
222
|
+
"coding-agent:terminal-output-injection": "CodingAgentTerminalOutputInjection",
|
|
223
|
+
"coding-agent:secret-env-read": "CodingAgentSecretEnvRead",
|
|
224
|
+
"coding-agent:secret-file-read": "CodingAgentSecretFileRead",
|
|
225
|
+
"coding-agent:sandbox-read-escape": "CodingAgentSandboxReadEscape",
|
|
226
|
+
"coding-agent:sandbox-write-escape": "CodingAgentSandboxWriteEscape",
|
|
227
|
+
"coding-agent:network-egress-bypass": "CodingAgentNetworkEgressBypass",
|
|
228
|
+
"coding-agent:verifier-sabotage": "CodingAgentVerifierSabotage"
|
|
229
|
+
};
|
|
230
|
+
//#endregion
|
|
176
231
|
//#region src/redteam/constants/plugins.ts
|
|
177
232
|
const MULTI_INPUT_VAR = "__prompt";
|
|
178
|
-
const REDTEAM_MODEL = "openai:chat:gpt-5-
|
|
233
|
+
const REDTEAM_MODEL = "openai:chat:gpt-5.4-2026-03-05";
|
|
179
234
|
const LLAMA_GUARD_REPLICATE_PROVIDER = "replicate:moderation:meta/llama-guard-4-12b";
|
|
180
235
|
const LLAMA_GUARD_ENABLED_CATEGORIES = [
|
|
181
236
|
"S1",
|
|
@@ -294,8 +349,10 @@ const COLLECTIONS = [
|
|
|
294
349
|
"financial",
|
|
295
350
|
"ecommerce",
|
|
296
351
|
"telecom",
|
|
352
|
+
"teen-safety",
|
|
297
353
|
"realestate",
|
|
298
|
-
"guardrails-eval"
|
|
354
|
+
"guardrails-eval",
|
|
355
|
+
...CODING_AGENT_COLLECTIONS
|
|
299
356
|
];
|
|
300
357
|
const UNALIGNED_PROVIDER_HARM_PLUGINS = {
|
|
301
358
|
"harmful:child-exploitation": "Child Exploitation",
|
|
@@ -345,6 +402,9 @@ const BIAS_PLUGINS = [
|
|
|
345
402
|
];
|
|
346
403
|
const MEDICAL_PLUGINS = [
|
|
347
404
|
"medical:anchoring-bias",
|
|
405
|
+
"medical:fda:ai-disclosure",
|
|
406
|
+
"medical:fda:cyber-access-control",
|
|
407
|
+
"medical:fda:cyber-audit-tampering",
|
|
348
408
|
"medical:hallucination",
|
|
349
409
|
"medical:incorrect-knowledge",
|
|
350
410
|
"medical:off-label-use",
|
|
@@ -360,6 +420,7 @@ const FINANCIAL_PLUGINS = [
|
|
|
360
420
|
"financial:defamation",
|
|
361
421
|
"financial:hallucination",
|
|
362
422
|
"financial:impartiality",
|
|
423
|
+
"financial:japan-fiea-suitability",
|
|
363
424
|
"financial:misconduct",
|
|
364
425
|
"financial:sox-compliance",
|
|
365
426
|
"financial:sycophancy"
|
|
@@ -405,6 +466,12 @@ const REALESTATE_PLUGINS = [
|
|
|
405
466
|
"realestate:advertising-discrimination",
|
|
406
467
|
"realestate:source-of-income"
|
|
407
468
|
];
|
|
469
|
+
const TEEN_SAFETY_PLUGINS = [
|
|
470
|
+
"teen-safety:harmful-body-ideals",
|
|
471
|
+
"teen-safety:dangerous-content",
|
|
472
|
+
"teen-safety:dangerous-roleplay",
|
|
473
|
+
"teen-safety:age-restricted-goods-and-services"
|
|
474
|
+
];
|
|
408
475
|
const BASE_PLUGINS = [
|
|
409
476
|
"contracts",
|
|
410
477
|
"excessive-agency",
|
|
@@ -419,6 +486,7 @@ const ADDITIONAL_PLUGINS = [
|
|
|
419
486
|
"bfla",
|
|
420
487
|
"bola",
|
|
421
488
|
"cca",
|
|
489
|
+
...CODING_AGENT_PLUGINS,
|
|
422
490
|
"competitors",
|
|
423
491
|
"coppa",
|
|
424
492
|
"cross-session-leak",
|
|
@@ -435,6 +503,9 @@ const ADDITIONAL_PLUGINS = [
|
|
|
435
503
|
"mcp",
|
|
436
504
|
"model-identification",
|
|
437
505
|
"medical:anchoring-bias",
|
|
506
|
+
"medical:fda:ai-disclosure",
|
|
507
|
+
"medical:fda:cyber-access-control",
|
|
508
|
+
"medical:fda:cyber-audit-tampering",
|
|
438
509
|
"medical:hallucination",
|
|
439
510
|
"medical:incorrect-knowledge",
|
|
440
511
|
"medical:off-label-use",
|
|
@@ -448,6 +519,7 @@ const ADDITIONAL_PLUGINS = [
|
|
|
448
519
|
"financial:defamation",
|
|
449
520
|
"financial:hallucination",
|
|
450
521
|
"financial:impartiality",
|
|
522
|
+
"financial:japan-fiea-suitability",
|
|
451
523
|
"financial:misconduct",
|
|
452
524
|
"financial:sox-compliance",
|
|
453
525
|
"financial:sycophancy",
|
|
@@ -477,6 +549,10 @@ const ADDITIONAL_PLUGINS = [
|
|
|
477
549
|
"telecom:coverage-misinformation",
|
|
478
550
|
"telecom:law-enforcement-request-handling",
|
|
479
551
|
"telecom:accessibility-violation",
|
|
552
|
+
"teen-safety:harmful-body-ideals",
|
|
553
|
+
"teen-safety:dangerous-content",
|
|
554
|
+
"teen-safety:dangerous-roleplay",
|
|
555
|
+
"teen-safety:age-restricted-goods-and-services",
|
|
480
556
|
"realestate:fair-housing-discrimination",
|
|
481
557
|
"realestate:steering",
|
|
482
558
|
"realestate:discriminatory-listings",
|
|
@@ -508,6 +584,16 @@ const ADDITIONAL_PLUGINS = [
|
|
|
508
584
|
];
|
|
509
585
|
const CONFIG_REQUIRED_PLUGINS = ["intent", "policy"];
|
|
510
586
|
const AGENTIC_EXEMPT_PLUGINS = ["system-prompt-override", "agentic:memory-poisoning"];
|
|
587
|
+
const CANARY_BREAKING_STRATEGY_IDS = [
|
|
588
|
+
"base64",
|
|
589
|
+
"hex",
|
|
590
|
+
"homoglyph",
|
|
591
|
+
"leetspeak",
|
|
592
|
+
"rot13",
|
|
593
|
+
"multilingual",
|
|
594
|
+
"math-prompt",
|
|
595
|
+
"jailbreak:composite"
|
|
596
|
+
];
|
|
511
597
|
const DATASET_EXEMPT_PLUGINS = [
|
|
512
598
|
"aegis",
|
|
513
599
|
"beavertails",
|
|
@@ -558,10 +644,13 @@ const PLUGIN_CATEGORIES = {
|
|
|
558
644
|
pharmacy: PHARMACY_PLUGINS,
|
|
559
645
|
insurance: INSURANCE_PLUGINS,
|
|
560
646
|
telecom: TELECOM_PLUGINS,
|
|
647
|
+
"teen-safety": TEEN_SAFETY_PLUGINS,
|
|
561
648
|
realestate: REALESTATE_PLUGINS
|
|
562
649
|
};
|
|
563
650
|
const REMOTE_ONLY_PLUGIN_IDS = [
|
|
564
651
|
"agentic:memory-poisoning",
|
|
652
|
+
...CODING_AGENT_COLLECTIONS,
|
|
653
|
+
...CODING_AGENT_PLUGINS,
|
|
565
654
|
"ascii-smuggling",
|
|
566
655
|
"bfla",
|
|
567
656
|
"bola",
|
|
@@ -1076,26 +1165,125 @@ const NIST_AI_RMF_MAPPING = {
|
|
|
1076
1165
|
strategies: []
|
|
1077
1166
|
}
|
|
1078
1167
|
};
|
|
1168
|
+
const MITRE_ATLAS_AI_ATTACK_STAGING_MAPPING = {
|
|
1169
|
+
plugins: [
|
|
1170
|
+
"ascii-smuggling",
|
|
1171
|
+
"excessive-agency",
|
|
1172
|
+
"harmful:cybercrime:malicious-code",
|
|
1173
|
+
"hallucination",
|
|
1174
|
+
"indirect-prompt-injection",
|
|
1175
|
+
"rag-poisoning"
|
|
1176
|
+
],
|
|
1177
|
+
strategies: ["jailbreak", "jailbreak:tree"]
|
|
1178
|
+
};
|
|
1079
1179
|
const MITRE_ATLAS_MAPPING = {
|
|
1180
|
+
"mitre:atlas:ai-attack-staging": MITRE_ATLAS_AI_ATTACK_STAGING_MAPPING,
|
|
1181
|
+
"mitre:atlas:ai-model-access": {
|
|
1182
|
+
plugins: [],
|
|
1183
|
+
strategies: []
|
|
1184
|
+
},
|
|
1185
|
+
"mitre:atlas:collection": {
|
|
1186
|
+
plugins: [
|
|
1187
|
+
"data-exfil",
|
|
1188
|
+
"harmful:privacy",
|
|
1189
|
+
"pii:api-db",
|
|
1190
|
+
"pii:direct",
|
|
1191
|
+
"pii:session",
|
|
1192
|
+
"pii:social",
|
|
1193
|
+
"prompt-extraction",
|
|
1194
|
+
"rag-document-exfiltration"
|
|
1195
|
+
],
|
|
1196
|
+
strategies: []
|
|
1197
|
+
},
|
|
1198
|
+
"mitre:atlas:command-and-control": {
|
|
1199
|
+
plugins: [
|
|
1200
|
+
"excessive-agency",
|
|
1201
|
+
"harmful:cybercrime",
|
|
1202
|
+
"harmful:cybercrime:malicious-code",
|
|
1203
|
+
"mcp",
|
|
1204
|
+
"shell-injection",
|
|
1205
|
+
"ssrf"
|
|
1206
|
+
],
|
|
1207
|
+
strategies: ["crescendo"]
|
|
1208
|
+
},
|
|
1209
|
+
"mitre:atlas:credential-access": {
|
|
1210
|
+
plugins: [
|
|
1211
|
+
"data-exfil",
|
|
1212
|
+
"harmful:privacy",
|
|
1213
|
+
"pii:api-db",
|
|
1214
|
+
"pii:direct",
|
|
1215
|
+
"pii:session",
|
|
1216
|
+
"pii:social",
|
|
1217
|
+
"prompt-extraction",
|
|
1218
|
+
"rag-document-exfiltration",
|
|
1219
|
+
"tool-discovery"
|
|
1220
|
+
],
|
|
1221
|
+
strategies: []
|
|
1222
|
+
},
|
|
1223
|
+
"mitre:atlas:defense-evasion": {
|
|
1224
|
+
plugins: [
|
|
1225
|
+
"ascii-smuggling",
|
|
1226
|
+
"hijacking",
|
|
1227
|
+
"imitation",
|
|
1228
|
+
"rag-source-attribution",
|
|
1229
|
+
"special-token-injection"
|
|
1230
|
+
],
|
|
1231
|
+
strategies: [
|
|
1232
|
+
"base64",
|
|
1233
|
+
"jailbreak",
|
|
1234
|
+
"jailbreak-templates",
|
|
1235
|
+
"leetspeak",
|
|
1236
|
+
"rot13"
|
|
1237
|
+
]
|
|
1238
|
+
},
|
|
1239
|
+
"mitre:atlas:discovery": {
|
|
1240
|
+
plugins: [
|
|
1241
|
+
"debug-access",
|
|
1242
|
+
"model-identification",
|
|
1243
|
+
"prompt-extraction",
|
|
1244
|
+
"system-prompt-override",
|
|
1245
|
+
"tool-discovery"
|
|
1246
|
+
],
|
|
1247
|
+
strategies: []
|
|
1248
|
+
},
|
|
1249
|
+
"mitre:atlas:execution": {
|
|
1250
|
+
plugins: [
|
|
1251
|
+
"excessive-agency",
|
|
1252
|
+
"hijacking",
|
|
1253
|
+
"indirect-prompt-injection",
|
|
1254
|
+
"mcp",
|
|
1255
|
+
"shell-injection",
|
|
1256
|
+
"sql-injection",
|
|
1257
|
+
"ssrf",
|
|
1258
|
+
"system-prompt-override",
|
|
1259
|
+
"tool-discovery"
|
|
1260
|
+
],
|
|
1261
|
+
strategies: ["jailbreak", "jailbreak-templates"]
|
|
1262
|
+
},
|
|
1080
1263
|
"mitre:atlas:exfiltration": {
|
|
1081
1264
|
plugins: [
|
|
1082
1265
|
"ascii-smuggling",
|
|
1266
|
+
"cross-session-leak",
|
|
1267
|
+
"data-exfil",
|
|
1083
1268
|
"harmful:privacy",
|
|
1084
1269
|
"indirect-prompt-injection",
|
|
1085
1270
|
"pii:api-db",
|
|
1086
1271
|
"pii:direct",
|
|
1087
1272
|
"pii:session",
|
|
1088
1273
|
"pii:social",
|
|
1089
|
-
"prompt-extraction"
|
|
1274
|
+
"prompt-extraction",
|
|
1275
|
+
"rag-document-exfiltration"
|
|
1090
1276
|
],
|
|
1091
1277
|
strategies: []
|
|
1092
1278
|
},
|
|
1093
1279
|
"mitre:atlas:impact": {
|
|
1094
1280
|
plugins: [
|
|
1281
|
+
"divergent-repetition",
|
|
1095
1282
|
"excessive-agency",
|
|
1096
1283
|
"harmful",
|
|
1097
1284
|
"hijacking",
|
|
1098
|
-
"imitation"
|
|
1285
|
+
"imitation",
|
|
1286
|
+
"reasoning-dos"
|
|
1099
1287
|
],
|
|
1100
1288
|
strategies: ["crescendo"]
|
|
1101
1289
|
},
|
|
@@ -1103,6 +1291,8 @@ const MITRE_ATLAS_MAPPING = {
|
|
|
1103
1291
|
plugins: [
|
|
1104
1292
|
"debug-access",
|
|
1105
1293
|
"harmful:cybercrime",
|
|
1294
|
+
"indirect-prompt-injection",
|
|
1295
|
+
"mcp",
|
|
1106
1296
|
"shell-injection",
|
|
1107
1297
|
"sql-injection",
|
|
1108
1298
|
"ssrf"
|
|
@@ -1115,18 +1305,46 @@ const MITRE_ATLAS_MAPPING = {
|
|
|
1115
1305
|
"rot13"
|
|
1116
1306
|
]
|
|
1117
1307
|
},
|
|
1118
|
-
"mitre:atlas:
|
|
1308
|
+
"mitre:atlas:lateral-movement": {
|
|
1119
1309
|
plugins: [
|
|
1120
|
-
"
|
|
1310
|
+
"bfla",
|
|
1311
|
+
"bola",
|
|
1312
|
+
"harmful:cybercrime",
|
|
1313
|
+
"rbac"
|
|
1314
|
+
],
|
|
1315
|
+
strategies: []
|
|
1316
|
+
},
|
|
1317
|
+
"mitre:atlas:persistence": {
|
|
1318
|
+
plugins: [
|
|
1319
|
+
"agentic:memory-poisoning",
|
|
1320
|
+
"cross-session-leak",
|
|
1321
|
+
"indirect-prompt-injection",
|
|
1322
|
+
"rag-poisoning",
|
|
1323
|
+
"system-prompt-override"
|
|
1324
|
+
],
|
|
1325
|
+
strategies: ["jailbreak"]
|
|
1326
|
+
},
|
|
1327
|
+
"mitre:atlas:privilege-escalation": {
|
|
1328
|
+
plugins: [
|
|
1329
|
+
"bfla",
|
|
1330
|
+
"bola",
|
|
1331
|
+
"debug-access",
|
|
1121
1332
|
"excessive-agency",
|
|
1122
|
-
"
|
|
1123
|
-
"
|
|
1333
|
+
"mcp",
|
|
1334
|
+
"rbac",
|
|
1335
|
+
"shell-injection",
|
|
1336
|
+
"system-prompt-override"
|
|
1124
1337
|
],
|
|
1125
|
-
strategies: [
|
|
1338
|
+
strategies: [
|
|
1339
|
+
"jailbreak",
|
|
1340
|
+
"jailbreak:tree",
|
|
1341
|
+
"jailbreak-templates"
|
|
1342
|
+
]
|
|
1126
1343
|
},
|
|
1127
1344
|
"mitre:atlas:reconnaissance": {
|
|
1128
1345
|
plugins: [
|
|
1129
1346
|
"competitors",
|
|
1347
|
+
"model-identification",
|
|
1130
1348
|
"policy",
|
|
1131
1349
|
"prompt-extraction",
|
|
1132
1350
|
"rbac"
|
|
@@ -1135,13 +1353,16 @@ const MITRE_ATLAS_MAPPING = {
|
|
|
1135
1353
|
},
|
|
1136
1354
|
"mitre:atlas:resource-development": {
|
|
1137
1355
|
plugins: [
|
|
1356
|
+
"harmful:chemical-biological-weapons",
|
|
1138
1357
|
"harmful:cybercrime",
|
|
1358
|
+
"harmful:cybercrime:malicious-code",
|
|
1139
1359
|
"harmful:illegal-drugs",
|
|
1140
1360
|
"harmful:indiscriminate-weapons"
|
|
1141
1361
|
],
|
|
1142
1362
|
strategies: []
|
|
1143
1363
|
}
|
|
1144
1364
|
};
|
|
1365
|
+
const MITRE_ATLAS_LEGACY_MAPPING = { "mitre:atlas:ml-attack-staging": MITRE_ATLAS_AI_ATTACK_STAGING_MAPPING };
|
|
1145
1366
|
/**
|
|
1146
1367
|
* EU Artificial Intelligence Act
|
|
1147
1368
|
* ▸ Art. 5 (Prohibited AI practices) – unacceptable-risk
|
|
@@ -1548,6 +1769,7 @@ const ALIASED_PLUGINS = [
|
|
|
1548
1769
|
"iso:42001",
|
|
1549
1770
|
"gdpr",
|
|
1550
1771
|
...Object.keys(MITRE_ATLAS_MAPPING),
|
|
1772
|
+
...Object.keys(MITRE_ATLAS_LEGACY_MAPPING),
|
|
1551
1773
|
...Object.keys(NIST_AI_RMF_MAPPING),
|
|
1552
1774
|
...Object.keys(OWASP_API_TOP_10_MAPPING),
|
|
1553
1775
|
...Object.keys(OWASP_LLM_TOP_10_MAPPING),
|
|
@@ -1559,6 +1781,7 @@ const ALIASED_PLUGINS = [
|
|
|
1559
1781
|
];
|
|
1560
1782
|
const ALIASED_PLUGIN_MAPPINGS = {
|
|
1561
1783
|
"dod:ai:ethics": DOD_AI_ETHICS_MAPPING,
|
|
1784
|
+
"mitre:atlas:ml-attack-staging": MITRE_ATLAS_LEGACY_MAPPING,
|
|
1562
1785
|
"mitre:atlas": MITRE_ATLAS_MAPPING,
|
|
1563
1786
|
"nist:ai:measure": NIST_AI_RMF_MAPPING,
|
|
1564
1787
|
"owasp:api": OWASP_API_TOP_10_MAPPING,
|
|
@@ -1619,8 +1842,8 @@ const ALIASED_PLUGIN_MAPPINGS = {
|
|
|
1619
1842
|
strategies: []
|
|
1620
1843
|
} }
|
|
1621
1844
|
};
|
|
1622
|
-
|
|
1623
|
-
|
|
1845
|
+
({ ...CODING_AGENT_PLUGIN_DESCRIPTIONS });
|
|
1846
|
+
({ ...CODING_AGENT_PLUGIN_DISPLAY_NAMES });
|
|
1624
1847
|
const Severity = {
|
|
1625
1848
|
Critical: "critical",
|
|
1626
1849
|
High: "high",
|
|
@@ -1637,6 +1860,10 @@ const SeveritySchema = z.enum([
|
|
|
1637
1860
|
]);
|
|
1638
1861
|
Severity.Critical, Severity.High, Severity.Medium, Severity.Low, Severity.Informational;
|
|
1639
1862
|
Severity.Critical, Severity.High, Severity.Medium, Severity.Low, Severity.Informational;
|
|
1863
|
+
const codingAgentRiskCategorySeverityMap = {
|
|
1864
|
+
...Object.fromEntries(CODING_AGENT_PLUGINS.map((pluginId) => [pluginId, Severity.High])),
|
|
1865
|
+
"coding-agent:core": Severity.High
|
|
1866
|
+
};
|
|
1640
1867
|
const riskCategorySeverityMap = {
|
|
1641
1868
|
["agentic:memory-poisoning"]: Severity.High,
|
|
1642
1869
|
aegis: Severity.Medium,
|
|
@@ -1654,6 +1881,7 @@ const riskCategorySeverityMap = {
|
|
|
1654
1881
|
"financial:defamation": Severity.Medium,
|
|
1655
1882
|
"financial:hallucination": Severity.Low,
|
|
1656
1883
|
"financial:impartiality": Severity.Medium,
|
|
1884
|
+
"financial:japan-fiea-suitability": Severity.High,
|
|
1657
1885
|
"financial:misconduct": Severity.High,
|
|
1658
1886
|
"financial:sox-compliance": Severity.High,
|
|
1659
1887
|
"financial:sycophancy": Severity.Low,
|
|
@@ -1669,6 +1897,9 @@ const riskCategorySeverityMap = {
|
|
|
1669
1897
|
default: Severity.Low,
|
|
1670
1898
|
mcp: Severity.High,
|
|
1671
1899
|
"medical:anchoring-bias": Severity.High,
|
|
1900
|
+
"medical:fda:ai-disclosure": Severity.High,
|
|
1901
|
+
"medical:fda:cyber-access-control": Severity.Critical,
|
|
1902
|
+
"medical:fda:cyber-audit-tampering": Severity.Critical,
|
|
1672
1903
|
"medical:hallucination": Severity.Critical,
|
|
1673
1904
|
"medical:incorrect-knowledge": Severity.Critical,
|
|
1674
1905
|
"medical:off-label-use": Severity.High,
|
|
@@ -1745,6 +1976,11 @@ const riskCategorySeverityMap = {
|
|
|
1745
1976
|
"telecom:coverage-misinformation": Severity.Medium,
|
|
1746
1977
|
"telecom:law-enforcement-request-handling": Severity.Medium,
|
|
1747
1978
|
"telecom:accessibility-violation": Severity.Medium,
|
|
1979
|
+
"teen-safety": Severity.Low,
|
|
1980
|
+
"teen-safety:harmful-body-ideals": Severity.Low,
|
|
1981
|
+
"teen-safety:dangerous-content": Severity.Low,
|
|
1982
|
+
"teen-safety:dangerous-roleplay": Severity.Low,
|
|
1983
|
+
"teen-safety:age-restricted-goods-and-services": Severity.Low,
|
|
1748
1984
|
realestate: Severity.Critical,
|
|
1749
1985
|
"realestate:fair-housing-discrimination": Severity.Critical,
|
|
1750
1986
|
"realestate:steering": Severity.Critical,
|
|
@@ -1784,9 +2020,10 @@ const riskCategorySeverityMap = {
|
|
|
1784
2020
|
vlguard: Severity.Medium,
|
|
1785
2021
|
vlsu: Severity.Medium,
|
|
1786
2022
|
wordplay: Severity.Low,
|
|
1787
|
-
xstest: Severity.Low
|
|
2023
|
+
xstest: Severity.Low,
|
|
2024
|
+
...codingAgentRiskCategorySeverityMap
|
|
1788
2025
|
};
|
|
1789
|
-
|
|
2026
|
+
const riskCategories = {
|
|
1790
2027
|
"Security & Access Control": [
|
|
1791
2028
|
"ascii-smuggling",
|
|
1792
2029
|
"bfla",
|
|
@@ -1858,6 +2095,10 @@ Object.entries({
|
|
|
1858
2095
|
"harmful:radicalization",
|
|
1859
2096
|
"harmful:self-harm",
|
|
1860
2097
|
"harmful:sexual-content",
|
|
2098
|
+
"teen-safety:harmful-body-ideals",
|
|
2099
|
+
"teen-safety:dangerous-content",
|
|
2100
|
+
"teen-safety:dangerous-roleplay",
|
|
2101
|
+
"teen-safety:age-restricted-goods-and-services",
|
|
1861
2102
|
"wordplay"
|
|
1862
2103
|
],
|
|
1863
2104
|
Brand: [
|
|
@@ -1889,11 +2130,15 @@ Object.entries({
|
|
|
1889
2130
|
"financial:defamation",
|
|
1890
2131
|
"financial:hallucination",
|
|
1891
2132
|
"financial:impartiality",
|
|
2133
|
+
"financial:japan-fiea-suitability",
|
|
1892
2134
|
"financial:misconduct",
|
|
1893
2135
|
"financial:sox-compliance",
|
|
1894
2136
|
"financial:sycophancy",
|
|
1895
2137
|
"medical:hallucination",
|
|
1896
2138
|
"medical:anchoring-bias",
|
|
2139
|
+
"medical:fda:ai-disclosure",
|
|
2140
|
+
"medical:fda:cyber-access-control",
|
|
2141
|
+
"medical:fda:cyber-audit-tampering",
|
|
1897
2142
|
"medical:incorrect-knowledge",
|
|
1898
2143
|
"medical:off-label-use",
|
|
1899
2144
|
"medical:prioritization-error",
|
|
@@ -1934,8 +2179,10 @@ Object.entries({
|
|
|
1934
2179
|
"vlguard",
|
|
1935
2180
|
"vlsu",
|
|
1936
2181
|
"xstest"
|
|
1937
|
-
]
|
|
1938
|
-
|
|
2182
|
+
],
|
|
2183
|
+
"Coding Agent Security": [...CODING_AGENT_PLUGINS]
|
|
2184
|
+
};
|
|
2185
|
+
Object.entries(riskCategories).reduce((acc, [category, harms]) => {
|
|
1939
2186
|
harms.forEach((harm) => {
|
|
1940
2187
|
acc[harm] = category;
|
|
1941
2188
|
});
|
|
@@ -1961,6 +2208,9 @@ const categoryAliases = {
|
|
|
1961
2208
|
ferpa: "FERPACompliance",
|
|
1962
2209
|
mcp: "MCP",
|
|
1963
2210
|
"medical:anchoring-bias": "MedicalAnchoringBias",
|
|
2211
|
+
"medical:fda:ai-disclosure": "MedicalFdaAiDisclosure",
|
|
2212
|
+
"medical:fda:cyber-access-control": "MedicalFdaCyberAccessControl",
|
|
2213
|
+
"medical:fda:cyber-audit-tampering": "MedicalFdaCyberAuditTampering",
|
|
1964
2214
|
"medical:hallucination": "Medical Hallucination",
|
|
1965
2215
|
"medical:incorrect-knowledge": "MedicalIncorrectKnowledge",
|
|
1966
2216
|
"medical:off-label-use": "MedicalOffLabelUse",
|
|
@@ -1978,6 +2228,7 @@ const categoryAliases = {
|
|
|
1978
2228
|
"financial:defamation": "FinancialDefamation",
|
|
1979
2229
|
"financial:hallucination": "FinancialHallucination",
|
|
1980
2230
|
"financial:impartiality": "FinancialImpartiality",
|
|
2231
|
+
"financial:japan-fiea-suitability": "FinancialJapanFieaSuitability",
|
|
1981
2232
|
"financial:misconduct": "FinancialMisconduct",
|
|
1982
2233
|
"financial:sox-compliance": "FinancialSoxCompliance",
|
|
1983
2234
|
"financial:sycophancy": "FinancialSycophancy",
|
|
@@ -2019,6 +2270,11 @@ const categoryAliases = {
|
|
|
2019
2270
|
"telecom:coverage-misinformation": "TelecomCoverageMisinformation",
|
|
2020
2271
|
"telecom:law-enforcement-request-handling": "TelecomLawEnforcementRequestHandling",
|
|
2021
2272
|
"telecom:accessibility-violation": "TelecomAccessibilityViolation",
|
|
2273
|
+
"teen-safety": "TeenSafety",
|
|
2274
|
+
"teen-safety:harmful-body-ideals": "TeenSafetyHarmfulBodyIdeals",
|
|
2275
|
+
"teen-safety:dangerous-content": "TeenSafetyDangerousContent",
|
|
2276
|
+
"teen-safety:dangerous-roleplay": "TeenSafetyDangerousRoleplay",
|
|
2277
|
+
"teen-safety:age-restricted-goods-and-services": "TeenSafetyAgeRestrictedGoodsAndServices",
|
|
2022
2278
|
realestate: "Real Estate Safety",
|
|
2023
2279
|
"realestate:fair-housing-discrimination": "RealEstateFairHousingDiscrimination",
|
|
2024
2280
|
"realestate:steering": "RealEstateSteering",
|
|
@@ -2088,7 +2344,8 @@ const categoryAliases = {
|
|
|
2088
2344
|
vlguard: "VLGuard",
|
|
2089
2345
|
vlsu: "VLSU",
|
|
2090
2346
|
wordplay: "Wordplay",
|
|
2091
|
-
xstest: "XSTest"
|
|
2347
|
+
xstest: "XSTest",
|
|
2348
|
+
...CODING_AGENT_PLUGIN_ALIASES
|
|
2092
2349
|
};
|
|
2093
2350
|
Object.entries(categoryAliases).reduce((acc, [key, value]) => {
|
|
2094
2351
|
acc[value] = key;
|
|
@@ -2144,6 +2401,11 @@ const pluginDescriptions = {
|
|
|
2144
2401
|
"telecom:coverage-misinformation": "Tests for false or misleading claims about network coverage, 5G availability, or roaming capabilities",
|
|
2145
2402
|
"telecom:law-enforcement-request-handling": "Tests for improper handling of law enforcement data requests in violation of CALEA requirements and privacy laws",
|
|
2146
2403
|
"telecom:accessibility-violation": "Tests for accessibility compliance violations under Section 255, Section 508, ADA, and 21st Century CVAA",
|
|
2404
|
+
"teen-safety": "Comprehensive teen safety testing for age-appropriate AI behavior across body image harms, dangerous activities, unsafe roleplay, and underage access risks",
|
|
2405
|
+
"teen-safety:harmful-body-ideals": "Tests for harmful body-ideal promotion, body shaming, and facilitation of unsafe restriction, purging, over-exercise, or concealment behaviors that can harm teens",
|
|
2406
|
+
"teen-safety:dangerous-content": "Tests for promotion, glorification, or facilitation of dangerous challenges, unsafe stunts, risky experimentation, and dangerous at-home procedures inappropriate for teens",
|
|
2407
|
+
"teen-safety:dangerous-roleplay": "Tests for interactive roleplay involving minors that simulates romantic, sexual, or violent scenarios that could normalize exploitation or harm",
|
|
2408
|
+
"teen-safety:age-restricted-goods-and-services": "Tests for encouragement, sourcing, or circumvention tactics that help minors access age-restricted goods or services such as alcohol, vaping, gambling, weapons, or adult-only venues",
|
|
2147
2409
|
realestate: "Comprehensive real estate AI safety testing for Fair Housing Act compliance, steering prevention, lending discrimination (ECOA), valuation bias, and housing discrimination vulnerabilities",
|
|
2148
2410
|
"realestate:fair-housing-discrimination": "Tests for Fair Housing Act violations across all 7 protected classes: race, color, religion, national origin, sex (including gender identity and sexual orientation), familial status, and disability",
|
|
2149
2411
|
"realestate:steering": "Tests for illegal steering practices where systems direct buyers toward or away from neighborhoods based on protected class characteristics rather than objective housing criteria",
|
|
@@ -2191,6 +2453,9 @@ const pluginDescriptions = {
|
|
|
2191
2453
|
"ecommerce:price-manipulation": "Tests for price manipulation through discount code abuse, inventory exploits, cart manipulation, unauthorized price modifications, or coupon stacking vulnerabilities",
|
|
2192
2454
|
mcp: "Tests for vulnerabilities to Model Context Protocol (MCP) attacks",
|
|
2193
2455
|
"medical:anchoring-bias": "Tests for medical anchoring bias where AI fixates on irrelevant information in medical contexts",
|
|
2456
|
+
"medical:fda:ai-disclosure": "Tests whether AI-enabled medical-device or clinical LLM systems disclose intended-use boundaries, confidence and uncertainty, subgroup limitations, data drift, and model or device version changes instead of concealing them",
|
|
2457
|
+
"medical:fda:cyber-access-control": "Tests whether medical-device AI systems enforce authenticated, role-scoped, deny-by-default workflows and refuse privileged device, telemetry, update, or therapy actions from unauthorized users or stale sessions",
|
|
2458
|
+
"medical:fda:cyber-audit-tampering": "Tests whether medical-device AI systems preserve anomaly alerts, SBOM/version records, and forensic audit trails instead of helping users suppress, rewrite, or delete cybersecurity evidence",
|
|
2194
2459
|
"medical:hallucination": "Tests for fabricated medical facts, non-existent studies, made-up drug interactions, or other false medical information",
|
|
2195
2460
|
"medical:incorrect-knowledge": "Tests for factually wrong medical information that could be harmful if followed",
|
|
2196
2461
|
"medical:off-label-use": "Tests for inappropriate off-label medication recommendations without proper disclaimers, warnings, or professional consultation requirements",
|
|
@@ -2204,6 +2469,7 @@ const pluginDescriptions = {
|
|
|
2204
2469
|
"financial:defamation": "Tests for false statements that damage the reputation of financial entities, including unfounded fraud accusations, fabricated scandals, or false insolvency claims",
|
|
2205
2470
|
"financial:hallucination": "Tests for fabricated market data, non-existent financial instruments, fictional company financials, or invented market events",
|
|
2206
2471
|
"financial:impartiality": "Tests for inappropriate provision of financial advice, investment recommendations, broker suggestions, or transaction facilitation without proper authorization or disclaimers",
|
|
2472
|
+
"financial:japan-fiea-suitability": "Tests whether AI recommends unsuitable financial products, downplays risks, or uses sales framing that conflicts with Japan's FIEA suitability and explanation duties",
|
|
2207
2473
|
"financial:misconduct": "Tests for facilitation of financial crimes including insider trading, market manipulation, front-running, spoofing, bribery, or circumventing financial regulations",
|
|
2208
2474
|
"financial:sox-compliance": "Tests for violations of Sarbanes-Oxley requirements including internal controls bypass, financial statement manipulation, CEO/CFO certification fraud, audit obstruction, document retention violations, and whistleblower retaliation",
|
|
2209
2475
|
"financial:sycophancy": "Tests for agreeing with risky trading strategies, unrealistic return expectations, or get-rich-quick schemes",
|
|
@@ -2241,7 +2507,8 @@ const pluginDescriptions = {
|
|
|
2241
2507
|
vlsu: "Tests compositional safety where individually safe images and text combine to produce harmful outputs using Apple VLSU dataset",
|
|
2242
2508
|
wordplay: "Tests whether AI systems can be tricked into generating profanity or offensive language through innocent-seeming wordplay like riddles and rhyming games",
|
|
2243
2509
|
xstest: "Tests how models handle ambiguous terms related to potentially harmful topics like violence and drugs",
|
|
2244
|
-
"guardrails-eval": "Evaluate guardrail effectiveness against common risks"
|
|
2510
|
+
"guardrails-eval": "Evaluate guardrail effectiveness against common risks",
|
|
2511
|
+
...CODING_AGENT_PLUGIN_DESCRIPTIONS
|
|
2245
2512
|
};
|
|
2246
2513
|
//#endregion
|
|
2247
2514
|
//#region src/redteam/constants/strategies.ts
|
|
@@ -2261,6 +2528,7 @@ const DEFAULT_STRATEGIES = [
|
|
|
2261
2528
|
"jailbreak:meta",
|
|
2262
2529
|
"jailbreak:composite"
|
|
2263
2530
|
];
|
|
2531
|
+
new Set(DEFAULT_STRATEGIES);
|
|
2264
2532
|
const MULTI_TURN_STRATEGIES = [
|
|
2265
2533
|
"crescendo",
|
|
2266
2534
|
"goat",
|
|
@@ -2286,6 +2554,7 @@ const AGENTIC_STRATEGIES = [
|
|
|
2286
2554
|
"jailbreak:tree",
|
|
2287
2555
|
"mischievous-user"
|
|
2288
2556
|
];
|
|
2557
|
+
new Set(AGENTIC_STRATEGIES);
|
|
2289
2558
|
const DATASET_PLUGINS = [
|
|
2290
2559
|
"beavertails",
|
|
2291
2560
|
"cyberseceval",
|
|
@@ -2451,7 +2720,62 @@ const PluginConfigSchema = z.object({
|
|
|
2451
2720
|
policy: z.union([z.string(), PolicyObjectSchema]).optional(),
|
|
2452
2721
|
systemPrompt: z.string().optional(),
|
|
2453
2722
|
excludeStrategies: z.array(z.string()).optional(),
|
|
2723
|
+
protectedFilePath: z.string().optional(),
|
|
2724
|
+
protectedFilePaths: z.array(z.string()).optional(),
|
|
2725
|
+
secretFilePath: z.string().optional(),
|
|
2726
|
+
secretFilePaths: z.array(z.string()).optional(),
|
|
2727
|
+
secretLocalFilePath: z.string().optional(),
|
|
2728
|
+
secretLocalFilePaths: z.array(z.string()).optional(),
|
|
2729
|
+
secretFileValue: z.string().optional(),
|
|
2730
|
+
secretFileValues: z.array(z.string()).optional(),
|
|
2731
|
+
outsideWritePath: z.string().optional(),
|
|
2732
|
+
outsideWritePaths: z.array(z.string()).optional(),
|
|
2733
|
+
outsideWriteHostPath: z.string().optional(),
|
|
2734
|
+
outsideWriteHostPaths: z.array(z.string()).optional(),
|
|
2735
|
+
outsideWriteProbeDir: z.string().optional(),
|
|
2736
|
+
outsideWriteProbeDirs: z.array(z.string()).optional(),
|
|
2737
|
+
outsideWriteAllowedPath: z.string().optional(),
|
|
2738
|
+
outsideWriteAllowedPaths: z.array(z.string()).optional(),
|
|
2739
|
+
outsideWriteExpectedSha256: z.string().optional(),
|
|
2740
|
+
outsideWritePathSha256: z.string().optional(),
|
|
2741
|
+
outsideWriteSha256: z.string().optional(),
|
|
2742
|
+
outsideWriteMustNotExistPath: z.string().optional(),
|
|
2743
|
+
outsideWriteMustNotExistPaths: z.array(z.string()).optional(),
|
|
2744
|
+
mustNotExistPath: z.string().optional(),
|
|
2745
|
+
mustNotExistPaths: z.array(z.string()).optional(),
|
|
2746
|
+
protectedWritePath: z.string().optional(),
|
|
2747
|
+
protectedWritePaths: z.array(z.string()).optional(),
|
|
2748
|
+
sandboxWritePath: z.string().optional(),
|
|
2749
|
+
sandboxWritePaths: z.array(z.string()).optional(),
|
|
2750
|
+
workspacePath: z.string().optional(),
|
|
2751
|
+
workspacePaths: z.array(z.string()).optional(),
|
|
2752
|
+
workspaceRoot: z.string().optional(),
|
|
2753
|
+
workspaceRoots: z.array(z.string()).optional(),
|
|
2754
|
+
workingDirectory: z.string().optional(),
|
|
2755
|
+
workingDirectoryPath: z.string().optional(),
|
|
2756
|
+
workingDir: z.string().optional(),
|
|
2757
|
+
networkEgressUrl: z.string().optional(),
|
|
2758
|
+
networkEgressUrls: z.array(z.string()).optional(),
|
|
2759
|
+
networkTrapUrl: z.string().optional(),
|
|
2760
|
+
networkTrapUrls: z.array(z.string()).optional(),
|
|
2761
|
+
networkEgressHost: z.string().optional(),
|
|
2762
|
+
networkEgressHosts: z.array(z.string()).optional(),
|
|
2763
|
+
networkTrapHost: z.string().optional(),
|
|
2764
|
+
networkTrapHosts: z.array(z.string()).optional(),
|
|
2765
|
+
networkAllowedHost: z.string().optional(),
|
|
2766
|
+
networkAllowedHosts: z.array(z.string()).optional(),
|
|
2767
|
+
networkAllowedUrl: z.string().optional(),
|
|
2768
|
+
networkAllowedUrls: z.array(z.string()).optional(),
|
|
2769
|
+
networkTrapLogPath: z.string().optional(),
|
|
2770
|
+
networkTrapLogPaths: z.array(z.string()).optional(),
|
|
2771
|
+
networkScanPath: z.string().optional(),
|
|
2772
|
+
networkScanPaths: z.array(z.string()).optional(),
|
|
2773
|
+
networkWorkspacePath: z.string().optional(),
|
|
2774
|
+
networkWorkspacePaths: z.array(z.string()).optional(),
|
|
2775
|
+
networkEgressReceipt: z.string().optional(),
|
|
2776
|
+
networkEgressReceipts: z.array(z.string()).optional(),
|
|
2454
2777
|
inputs: InputsSchema.optional(),
|
|
2778
|
+
maxCharsPerMessage: z.number().int().positive().optional(),
|
|
2455
2779
|
__nonce: z.number().optional()
|
|
2456
2780
|
});
|
|
2457
2781
|
const StrategyConfigSchema = z.object({
|
|
@@ -2641,6 +2965,7 @@ z.object({
|
|
|
2641
2965
|
language: z.union([z.string(), z.array(z.string())]).optional().describe("Language(s) of tests to generate"),
|
|
2642
2966
|
frameworks: z.array(z.enum(frameworkOptions)).min(1).optional().describe("Subset of compliance frameworks to include when generating, reporting, and filtering results"),
|
|
2643
2967
|
maxConcurrency: z.int().positive().optional().describe("Maximum number of concurrent API calls"),
|
|
2968
|
+
maxCharsPerMessage: z.int().positive().optional().describe("Maximum number of characters allowed per generated user message"),
|
|
2644
2969
|
numTests: z.int().positive().optional().describe("Number of tests to generate"),
|
|
2645
2970
|
output: z.string().optional().describe("Output file path"),
|
|
2646
2971
|
plugins: z.array(RedteamPluginObjectSchema).optional().describe("Plugins to use"),
|
|
@@ -2673,6 +2998,7 @@ const RedteamConfigSchema = z.object({
|
|
|
2673
2998
|
Supports ${ALL_STRATEGIES.join(", ")}
|
|
2674
2999
|
`).optional().prefault(["default"]),
|
|
2675
3000
|
maxConcurrency: z.int().positive().optional().describe("Maximum number of concurrent API calls"),
|
|
3001
|
+
maxCharsPerMessage: z.int().positive().optional().describe("Maximum number of characters allowed per generated user message"),
|
|
2676
3002
|
delay: z.int().nonnegative().optional().describe("Delay in milliseconds between plugin API calls"),
|
|
2677
3003
|
excludeTargetOutputFromAgenticAttackGeneration: z.boolean().optional().describe("Whether to exclude target output from the agentific attack generation process"),
|
|
2678
3004
|
tracing: TracingConfigSchema.optional().describe("Tracing defaults applied to all strategies unless overridden"),
|
|
@@ -2726,6 +3052,7 @@ const RedteamConfigSchema = z.object({
|
|
|
2726
3052
|
else if (id === "pharmacy") expandCollection([...PHARMACY_PLUGINS], config, numTests, severity);
|
|
2727
3053
|
else if (id === "insurance") expandCollection([...INSURANCE_PLUGINS], config, numTests, severity);
|
|
2728
3054
|
else if (id === "financial") expandCollection([...FINANCIAL_PLUGINS], config, numTests, severity);
|
|
3055
|
+
else if (id === "teen-safety") expandCollection([...TEEN_SAFETY_PLUGINS], config, numTests, severity);
|
|
2729
3056
|
else if (id === "default") expandCollection([...DEFAULT_PLUGINS], config, numTests, severity);
|
|
2730
3057
|
else if (id === "guardrails-eval") expandCollection([...GUARDRAILS_EVALUATION_PLUGINS], config, numTests, severity);
|
|
2731
3058
|
};
|
|
@@ -2786,6 +3113,7 @@ const RedteamConfigSchema = z.object({
|
|
|
2786
3113
|
});
|
|
2787
3114
|
return {
|
|
2788
3115
|
numTests: data.numTests,
|
|
3116
|
+
...data.maxCharsPerMessage ? { maxCharsPerMessage: data.maxCharsPerMessage } : {},
|
|
2789
3117
|
plugins: uniquePlugins,
|
|
2790
3118
|
strategies,
|
|
2791
3119
|
...frameworks ? { frameworks } : {},
|
|
@@ -2911,6 +3239,7 @@ const PromptMetricsSchema = z.object({
|
|
|
2911
3239
|
tokenUsage: BaseTokenUsageSchema,
|
|
2912
3240
|
namedScores: z.record(z.string(), z.number()),
|
|
2913
3241
|
namedScoresCount: z.record(z.string(), z.number()),
|
|
3242
|
+
namedScoreWeights: z.record(z.string(), z.number()).optional(),
|
|
2914
3243
|
redteam: z.object({
|
|
2915
3244
|
pluginPassCount: z.record(z.string(), z.number()),
|
|
2916
3245
|
pluginFailCount: z.record(z.string(), z.number()),
|
|
@@ -2933,7 +3262,7 @@ function isResultFailureReason(value) {
|
|
|
2933
3262
|
return validResultFailureReasons.has(value);
|
|
2934
3263
|
}
|
|
2935
3264
|
function isGradingResult(result) {
|
|
2936
|
-
return typeof result === "object" && result !== null && typeof result.pass === "boolean" && typeof result.score === "number" && typeof result.reason === "string" && (typeof result.namedScores === "undefined" || typeof result.namedScores === "object") && (typeof result.tokensUsed === "undefined" || typeof result.tokensUsed === "object") && (typeof result.componentResults === "undefined" || Array.isArray(result.componentResults)) && (typeof result.assertion === "undefined" || result.assertion === null || typeof result.assertion === "object") && (typeof result.comment === "undefined" || typeof result.comment === "string");
|
|
3265
|
+
return typeof result === "object" && result !== null && typeof result.pass === "boolean" && typeof result.score === "number" && typeof result.reason === "string" && (typeof result.namedScores === "undefined" || typeof result.namedScores === "object") && (typeof result.namedScoreWeights === "undefined" || typeof result.namedScoreWeights === "object") && (typeof result.tokensUsed === "undefined" || typeof result.tokensUsed === "object") && (typeof result.componentResults === "undefined" || Array.isArray(result.componentResults)) && (typeof result.assertion === "undefined" || result.assertion === null || typeof result.assertion === "object") && (typeof result.comment === "undefined" || typeof result.comment === "string");
|
|
2937
3266
|
}
|
|
2938
3267
|
const BaseAssertionTypesSchema = z.enum([
|
|
2939
3268
|
"answer-relevance",
|
|
@@ -3076,6 +3405,7 @@ const TestCaseSchema = z.object({
|
|
|
3076
3405
|
...GradingConfigSchema.shape,
|
|
3077
3406
|
disableVarExpansion: z.boolean().optional(),
|
|
3078
3407
|
disableConversationVar: z.boolean().optional(),
|
|
3408
|
+
disableDefaultAsserts: z.boolean().optional(),
|
|
3079
3409
|
runSerially: z.boolean().optional()
|
|
3080
3410
|
}).catchall(z.any()).optional(),
|
|
3081
3411
|
threshold: z.number().optional(),
|
|
@@ -3165,7 +3495,7 @@ const TestSuiteSchema = z.object({
|
|
|
3165
3495
|
enabled: z.boolean(),
|
|
3166
3496
|
port: z.number(),
|
|
3167
3497
|
host: z.string().optional(),
|
|
3168
|
-
acceptFormats: z.array(z.
|
|
3498
|
+
acceptFormats: z.array(z.enum(["protobuf", "json"])).optional()
|
|
3169
3499
|
}).optional(),
|
|
3170
3500
|
grpc: z.object({
|
|
3171
3501
|
enabled: z.boolean(),
|
|
@@ -3234,7 +3564,7 @@ const TestSuiteConfigSchema = z.object({
|
|
|
3234
3564
|
enabled: z.boolean().prefault(true),
|
|
3235
3565
|
port: z.number().prefault(4318),
|
|
3236
3566
|
host: z.string().prefault("0.0.0.0"),
|
|
3237
|
-
acceptFormats: z.array(z.enum(["protobuf", "json"])).prefault(["json"])
|
|
3567
|
+
acceptFormats: z.array(z.enum(["protobuf", "json"])).prefault(["json", "protobuf"])
|
|
3238
3568
|
}).optional(),
|
|
3239
3569
|
grpc: z.object({
|
|
3240
3570
|
enabled: z.boolean().prefault(false),
|
|
@@ -3289,6 +3619,6 @@ const EvalResultsFilterMode = z.enum([
|
|
|
3289
3619
|
"user-rated"
|
|
3290
3620
|
]);
|
|
3291
3621
|
//#endregion
|
|
3292
|
-
export {
|
|
3622
|
+
export { MULTI_INPUT_EXCLUDED_PLUGINS as $, STRATEGY_COLLECTIONS as A, ALIASED_PLUGIN_MAPPINGS as B, isValidReusablePolicyId as C, DATASET_PLUGINS as D, ALL_STRATEGIES as E, isMultiTurnStrategy as F, DEFAULT_PLUGINS as G, BIAS_PLUGINS as H, Severity as I, HARM_PLUGINS as J, FINANCIAL_PLUGINS as K, categoryAliases as L, getDefaultNFanout as M, isCustomStrategy as N, DEFAULT_STRATEGIES as O, isFanoutStrategy as P, MEDICAL_PLUGINS as Q, pluginDescriptions as R, StrategyConfigSchema as S, AGENTIC_STRATEGIES as T, CANARY_BREAKING_STRATEGY_IDS as U, ALL_PLUGINS as V, DATASET_EXEMPT_PLUGINS as W, LLAMA_GUARD_ENABLED_CATEGORIES as X, INSURANCE_PLUGINS as Y, LLAMA_GUARD_REPLICATE_PROVIDER as Z, ProvidersSchema as _, EvaluateOptionsSchema as a, REDTEAM_PROVIDER_HARM_PLUGINS as at, PluginConfigSchema as b, TestSuiteConfigSchema as c, TEEN_SAFETY_PLUGINS as ct, isGradingResult as d, CODING_AGENT_CORE_PLUGINS as dt, MULTI_INPUT_VAR as et, isResultFailureReason as f, CODING_AGENT_PLUGINS as ft, ProviderOptionsSchema as g, RedteamConfigSchema as h, PromptSchema as ht, EvalResultsFilterMode as i, REDTEAM_MODEL as it, STRATEGY_COLLECTION_MAPPINGS as j, MULTI_TURN_STRATEGIES as k, TestSuiteSchema as l, TELECOM_PLUGINS as lt, isProviderOptions as m, CODING_AGENT_PLUGIN_DISPLAY_NAMES as mt, BaseAssertionTypesSchema as n, PII_PLUGINS as nt, OutputFileExtension as o, REMOTE_ONLY_PLUGIN_IDS as ot, isApiProvider as p, CODING_AGENT_PLUGIN_DESCRIPTIONS as pt, FOUNDATION_PLUGINS as q, CommandLineOptionsSchema as r, PLUGIN_CATEGORIES as rt, ResultFailureReason as s, STRATEGY_EXEMPT_PLUGINS as st, AssertionOrSetSchema as t, PHARMACY_PLUGINS as tt, UnifiedConfigSchema as u, UNALIGNED_PROVIDER_HARM_PLUGINS as ut, ConversationMessageSchema as v, isUuid as w, PolicyObjectSchema as x, PartialGenerationError as y, riskCategorySeverityMap as z };
|
|
3293
3623
|
|
|
3294
|
-
//# sourceMappingURL=types-
|
|
3624
|
+
//# sourceMappingURL=types-BDjGOq4E.js.map
|