promptfoo 0.121.5 → 0.121.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/{ListApp-BRUsT43Y.js → ListApp-DLmM02JS.js} +1 -1
- package/dist/src/{accounts-BIFntVWB.cjs → accounts-BVz5gHLK.cjs} +16 -10
- package/dist/src/{accounts-bnyHT7Ju.js → accounts-BWjqwsrf.js} +12 -7
- package/dist/src/{accounts-CLJHCDDb.js → accounts-D6IBfEE0.js} +13 -8
- package/dist/src/{accounts-CaLNYnf7.js → accounts-DAv_0iE7.js} +12 -7
- package/dist/src/{agentic-utils-B5krlibj.js → agentic-utils-BJKAkz2e.js} +2 -2
- package/dist/src/{agentic-utils-D2x0wGhB.cjs → agentic-utils-C-A92xhn.cjs} +8 -7
- package/dist/src/{agentic-utils-Ba67xmgs.js → agentic-utils-DmoS_S4B.js} +2 -2
- package/dist/src/{agentic-utils-BclbiXiq.js → agentic-utils-GdToujHu.js} +2 -2
- package/dist/src/{agents-BGqaTDnr.js → agents-2C8NN6I1.js} +20 -9
- package/dist/src/{agents-n6vPqV3i.js → agents-BMAiSR2o.js} +4 -4
- package/dist/src/{agents-BYdMl1UE.js → agents-C-PGaxwj.js} +20 -9
- package/dist/src/{agents-BV9yFpXX.js → agents-C98cz5pl.js} +20 -9
- package/dist/src/{agents-WULPVjbH.cjs → agents-DB8Ub2Ld.cjs} +7 -6
- package/dist/src/{agents-DhxWMCtH.js → agents-Dwshy2H8.js} +4 -4
- package/dist/src/{agents-emVcx3yh.js → agents-mlKjx-cK.js} +2 -2
- package/dist/src/{agents-DiWmQYH9.cjs → agents-n2ej-c4H.cjs} +21 -10
- package/dist/src/{aimlapi-DR4pgeiC.js → aimlapi-Bi-laUlp.js} +6 -6
- package/dist/src/{aimlapi-BzLjZI_m.cjs → aimlapi-D0OFV4Vj.cjs} +7 -7
- package/dist/src/{aimlapi-BxqK9HF_.js → aimlapi-WyUK0wYy.js} +6 -6
- package/dist/src/{aimlapi-uPGp0Zdo.js → aimlapi-v-63ZjEI.js} +6 -6
- package/dist/src/app/app/tsconfig.app.tsbuildinfo +1 -1
- package/dist/src/app/assets/Report-sCXUfaWo.js +1 -0
- package/dist/src/app/assets/index-BopgkZEh.js +388 -0
- package/dist/src/app/assets/index-yhM8y1PP.css +1 -0
- package/dist/src/app/assets/{scroll-timeline-D9IT_e8Z.js → scroll-timeline-RpeTwOvs.js} +1 -1
- package/dist/src/app/assets/sync-5gq6fmG4.js +4 -0
- package/dist/src/app/assets/vendor-charts-BL9OMNU7.js +36 -0
- package/dist/src/app/assets/{vendor-markdown-Ch00wnNI.js → vendor-markdown-BYsQqn7Z.js} +10 -10
- package/dist/src/app/assets/{vendor-react-CVvmk1UB.js → vendor-react-CqWgVW6T.js} +2 -2
- package/dist/src/app/assets/{vendor-utils-BnEYbx2Q.js → vendor-utils-BHPO71pu.js} +1 -1
- package/dist/src/app/index.html +6 -6
- package/dist/src/{audio-CScmnmEB.js → audio-DnEIHWZR.js} +3 -3
- package/dist/src/{audio-Da8U9IS5.js → audio-heR0mu0n.js} +3 -3
- package/dist/src/{audio-BvpTOArF.js → audio-wafFO1wn.js} +3 -3
- package/dist/src/{audio-C0vDeS0j.cjs → audio-x44tsxIo.cjs} +4 -4
- package/dist/src/authoritativeMarkupInjection-2G3Be6oL.cjs +74 -0
- package/dist/src/authoritativeMarkupInjection-81PPynHR.js +75 -0
- package/dist/src/authoritativeMarkupInjection-D9O70HPi.js +74 -0
- package/dist/src/authoritativeMarkupInjection-PxSf3Rh8.js +74 -0
- package/dist/src/{base-dYsl2hmL.js → base-0Gzzue9Z.js} +4 -3
- package/dist/src/{base-BOMaNEes.js → base-Bp4c52YZ.js} +4 -3
- package/dist/src/{base-BTux96b1.js → base-BuNn-YBX.js} +4 -3
- package/dist/src/{base-Tw6uhH8K.cjs → base-BzdS8tod.cjs} +5 -4
- package/dist/src/bestOfN-BHiOjeaq.js +136 -0
- package/dist/src/bestOfN-CdkNPPbX.js +136 -0
- package/dist/src/bestOfN-ClUSOhN0.js +137 -0
- package/dist/src/bestOfN-DWwXEg1h.cjs +140 -0
- package/dist/src/{blobs-B95F_7vE.cjs → blobs-B0977K1O.cjs} +7 -6
- package/dist/src/{blobs-D_gg8nbm.js → blobs-CeFdPn_T.js} +2 -2
- package/dist/src/{blobs-DjLby-uP.js → blobs-DODuTK-a.js} +2 -2
- package/dist/src/{blobs-BW4U31ue.js → blobs-Dwef1Ao1.js} +2 -2
- package/dist/src/cache-BKYi3kAA.js +3 -0
- package/dist/src/{cache-BI5BY7ey.js → cache-BR77mdIR.js} +127 -11
- package/dist/src/{cache-Cr-qWIbP.js → cache-CrioYnaa.js} +125 -10
- package/dist/src/{cache-Bzttsk0X.js → cache-DdriHsNX.js} +125 -10
- package/dist/src/{cache-DGg-yTZG.cjs → cache-h5MWOBZI.cjs} +135 -25
- package/dist/src/{chat-Cx_LkwvZ.js → chat-BBEnnpQk.js} +11 -11
- package/dist/src/{chat-DChSH_Es.js → chat-BSos6PvZ.js} +9 -9
- package/dist/src/{chat-aMQZw6R7.js → chat-Bnt7ieO0.js} +4 -4
- package/dist/src/{chat-vYqqv1gP.cjs → chat-DSyYuTYT.cjs} +14 -13
- package/dist/src/{chat-BLOdH60v.js → chat-DTdf-J5Q.js} +11 -11
- package/dist/src/{chat-DH97tVV9.cjs → chat-Dq3DomYU.cjs} +6 -6
- package/dist/src/{chat-DG2LkwLq.js → chat-g5QLeLOo.js} +4 -4
- package/dist/src/{chat-D9nudO9b.js → chat-mTTuUAYb.js} +4 -4
- package/dist/src/{chatkit-B8X34dQc.js → chatkit-B6DWi70Q.js} +3 -3
- package/dist/src/{chatkit-D44VyUyB.cjs → chatkit-BYveR48_.cjs} +6 -5
- package/dist/src/{chatkit-BXu42Qwt.js → chatkit-fARZwEfV.js} +3 -3
- package/dist/src/{chatkit-CbMRoeYw.js → chatkit-lb6FK02w.js} +1 -1
- package/dist/src/{claude-agent-sdk-DYv_AJ8u.js → claude-agent-sdk-BGUac_kS.js} +213 -66
- package/dist/src/{claude-agent-sdk-BjriSVRZ.js → claude-agent-sdk-BP__YGfK.js} +213 -66
- package/dist/src/{claude-agent-sdk-BzNZeZ0N.js → claude-agent-sdk-Ddgx5BIQ.js} +212 -65
- package/dist/src/{claude-agent-sdk-BRq0bbIK.cjs → claude-agent-sdk-n2XcEclh.cjs} +219 -71
- package/dist/src/cloud-DiWbUiVP.js +3 -0
- package/dist/src/{cloud-Da0bofJd.js → cloud-DqF5N1aJ.js} +2 -2
- package/dist/src/{cloudflare-ai-CXC4b1EU.js → cloudflare-ai-BGamMotN.js} +4 -4
- package/dist/src/{cloudflare-ai-DGOwgexC.js → cloudflare-ai-BwW8W-w7.js} +4 -4
- package/dist/src/{cloudflare-ai-DJv5qnyb.cjs → cloudflare-ai-DCRGnsyL.cjs} +6 -6
- package/dist/src/{cloudflare-ai-CyBoIs1Q.js → cloudflare-ai-sD26nP6V.js} +4 -4
- package/dist/src/{cloudflare-gateway-TJkVrZlB.js → cloudflare-gateway-2lnOT4qM.js} +3 -3
- package/dist/src/{cloudflare-gateway-D-dnkzCF.js → cloudflare-gateway-B1-8KNCt.js} +3 -3
- package/dist/src/{cloudflare-gateway-DKVjkDav.cjs → cloudflare-gateway-CCC1DFrC.cjs} +5 -5
- package/dist/src/{cloudflare-gateway-1sAoOyft.js → cloudflare-gateway-DOghiU6r.js} +3 -3
- package/dist/src/{codex-app-server-CCLjqCh9.js → codex-app-server-BWeWamEb.js} +19 -4
- package/dist/src/{codex-app-server-CCe0TiDc.js → codex-app-server-DyQB1P0p.js} +20 -5
- package/dist/src/{codex-app-server-VMRnjZ68.cjs → codex-app-server-R9u_G7W9.cjs} +27 -11
- package/dist/src/{codex-app-server-CPW1LFwh.js → codex-app-server-ZQRJSJjU.js} +20 -5
- package/dist/src/{codex-sdk-Bzb_TqX9.js → codex-sdk-B62H0fe7.js} +16 -5
- package/dist/src/{codex-sdk-Bd8UbO9q.cjs → codex-sdk-BRPUvJG8.cjs} +31 -12
- package/dist/src/{codex-sdk-BgEFQ70r.js → codex-sdk-Dio1zJBS.js} +18 -7
- package/dist/src/codex-sdk-DxukZs_K.js +3 -0
- package/dist/src/{codex-sdk-DfvDTN33.js → codex-sdk-iEmW1eS2.js} +18 -7
- package/dist/src/{cometapi-B5ImDlSm.js → cometapi--hh7dESS.js} +7 -7
- package/dist/src/{cometapi-CC7hWxmX.js → cometapi-C7yWNGqt.js} +7 -7
- package/dist/src/{cometapi-CCbpHkuF.js → cometapi-CSIi16a0.js} +7 -7
- package/dist/src/{cometapi-BgAkuYCw.cjs → cometapi-sZgBZtbU.cjs} +8 -8
- package/dist/src/{completion-DtQ72Bm3.cjs → completion-CWtqdn3z.cjs} +6 -6
- package/dist/src/{completion-Vq_ad618.js → completion-DT8cxo9T.js} +4 -4
- package/dist/src/{completion-2iuYVxwi.js → completion-DUScduXp.js} +5 -5
- package/dist/src/{completion-CrD6MQ93.js → completion-D_2IOAoS.js} +5 -5
- package/dist/src/constants-BjJV0cRr.js +6 -0
- package/dist/src/constants-DH5XYLKZ.js +7 -0
- package/dist/src/constants-DZGEFLsu.js +6 -0
- package/dist/src/constants-a2kYssQk.cjs +11 -0
- package/dist/src/{createHash-4gFQpDDv.js → createHash-BtbSX3mj.js} +1 -1
- package/dist/src/{createHash-Un4Q_huE.js → createHash-CGVzWdjj.js} +1 -1
- package/dist/src/{createHash-VvBIc-AW.cjs → createHash-CSiqnK5P.cjs} +2 -2
- package/dist/src/{createHash-DPpsZgFF.js → createHash-CgRvs4Fn.js} +1 -1
- package/dist/src/crescendo-B41TwUHM.js +722 -0
- package/dist/src/crescendo-Bfic7KC4.js +724 -0
- package/dist/src/crescendo-DXFB7rHP.cjs +725 -0
- package/dist/src/crescendo-DvvYxMLA.js +723 -0
- package/dist/src/custom-BdzuqFTN.js +619 -0
- package/dist/src/custom-Cf5Q6r-P.js +618 -0
- package/dist/src/custom-DLgufezC.js +620 -0
- package/dist/src/custom-LEXHCRe3.cjs +621 -0
- package/dist/src/{docker--3qzPa-6.js → docker-BOSO_6hK.js} +5 -5
- package/dist/src/{docker-D3AY-5F5.cjs → docker-D0h2vFrc.cjs} +6 -6
- package/dist/src/{docker-DCsCDvwM.js → docker-D2TWGyTP.js} +5 -5
- package/dist/src/{docker-Dorv4_Dg.js → docker-Vj_4_cPg.js} +5 -5
- package/dist/src/{embedding-BXhN5lCH.cjs → embedding-BQIApR18.cjs} +6 -6
- package/dist/src/{embedding-ChS1ivFS.js → embedding-CStK0TV6.js} +5 -5
- package/dist/src/{embedding-DNRvZwRN.js → embedding-CU78FMnw.js} +5 -5
- package/dist/src/{embedding-D_bI4NDq.js → embedding-CV8lmCnU.js} +4 -4
- package/dist/src/{errors-DFHe4L-n.js → errors-9PcUL8BC.js} +1 -1
- package/dist/src/{esm-B_rGuPTo.cjs → esm-BIKakvNa.cjs} +8 -7
- package/dist/src/{esm-BRkfNsYs.js → esm-BTK1W7lG.js} +1 -1
- package/dist/src/{esm-BX8fwlAO.js → esm-Bexx2PFc.js} +1 -1
- package/dist/src/{eval-DJ_4A-tr.js → eval-B3BaNBbO.js} +19 -19
- package/dist/src/{eval-BQPLBJbw.js → eval-DfR9885C.js} +1 -1
- package/dist/src/evalResult-BtZSUgQv.js +3 -0
- package/dist/src/{evalResult-D6P5I5il.js → evalResult-CcSqNl_Y.js} +17 -10
- package/dist/src/{evalResult-Cx-8OWkb.cjs → evalResult-DHXs-9TL.cjs} +29 -11
- package/dist/src/{evalResult-pSvGWFMo.js → evalResult-PGqEbasb.js} +18 -11
- package/dist/src/evaluator-B9LGbKI8.js +3 -0
- package/dist/src/{evaluator-D-UIbbYq.js → evaluator-n_dEb00o.js} +258 -132
- package/dist/src/evaluatorHelpers-CrRObe2z.js +510 -0
- package/dist/src/evaluatorHelpers-D06I9WFL.cjs +537 -0
- package/dist/src/evaluatorHelpers-D1_kwvyp.js +511 -0
- package/dist/src/{extractor-DxyiFhPk.js → extractor-BVkZtk4R.js} +5 -5
- package/dist/src/{extractor-BM3jRERL.js → extractor-D3Fv_Tdh.js} +5 -5
- package/dist/src/{extractor-YlZbUMsL.js → extractor-Jp53vs-6.js} +5 -5
- package/dist/src/{extractor-Dxr2J_wK.cjs → extractor-bV_NOoaz.cjs} +6 -6
- package/dist/src/{fetch-Y5qX_kST.js → fetch-BSSAcMxf.js} +90 -26
- package/dist/src/fetch-BodQTrMU.js +3 -0
- package/dist/src/{fetch-NuqXW1Xb.cjs → fetch-Cfm4EuOB.cjs} +115 -32
- package/dist/src/{fetch-B6ch2nU2.js → fetch-Cpf1U1nO.js} +86 -26
- package/dist/src/{fetch-D9xxyC1p.js → fetch-Doks14zQ.js} +90 -26
- package/dist/src/{fileExtensions-D9h-8Wxg.cjs → fileExtensions-BhdwzYaD.cjs} +24 -1
- package/dist/src/{fileExtensions-BGh-W-HT.js → fileExtensions-CXRfY3Ss.js} +12 -2
- package/dist/src/{fileExtensions-DysCsxNG.js → fileExtensions-D4GCJ67J.js} +12 -2
- package/dist/src/{formatDuration-Ch4A7G3o.js → formatDuration-CMVNrYvE.js} +1 -1
- package/dist/src/{genaiTracer-BokHC-MW.cjs → genaiTracer-14nugQQx.cjs} +14 -2
- package/dist/src/{genaiTracer-C3ZPQU60.js → genaiTracer-BPVvltoW.js} +2 -2
- package/dist/src/{genaiTracer-DxODqT9e.js → genaiTracer-D18lYzhB.js} +2 -2
- package/dist/src/{genaiTracer-CFny3gOy.js → genaiTracer-jJKYsnjc.js} +2 -2
- package/dist/src/goat-Ba7Gznzq.js +467 -0
- package/dist/src/goat-CJngS-WU.js +468 -0
- package/dist/src/goat-CwsbfQeu.js +466 -0
- package/dist/src/goat-DOMbozoX.cjs +470 -0
- package/dist/src/graders-B3D7kCcD.js +3 -0
- package/dist/src/{graders-CgPn32yp.js → graders-BQt1BaQe.js} +1019 -86
- package/dist/src/{graders-Bw1wk_21.cjs → graders-CBQ2s6gz.cjs} +1087 -130
- package/dist/src/{graders-CwrbifOo.js → graders-DaRU98zs.js} +1022 -84
- package/dist/src/{graders-BoUqsCEm.js → graders-KXzjnIim.js} +1024 -86
- package/dist/src/hydra-BU6GjYoQ.js +560 -0
- package/dist/src/hydra-BmXHxlyl.js +559 -0
- package/dist/src/hydra-CR0KyYDb.js +561 -0
- package/dist/src/hydra-RO9jBks7.cjs +560 -0
- package/dist/src/{image-BeWaInPF.js → image-BBmZdKO3.js} +3 -3
- package/dist/src/{image-qjO6FWPs.js → image-B_PFG7IG.js} +3 -3
- package/dist/src/image-BtODOZjh.js +442 -0
- package/dist/src/image-CYuNJIqd.js +442 -0
- package/dist/src/{image-D10dNAav.cjs → image-E00WFZkq.cjs} +4 -4
- package/dist/src/image-HK2Cfqb1.cjs +465 -0
- package/dist/src/{image-Dr_3I3nK.js → image-LGj8dTcr.js} +3 -3
- package/dist/src/image-YMKejC0r.js +443 -0
- package/dist/src/index.cjs +711 -339
- package/dist/src/index.d.cts +3159 -1611
- package/dist/src/index.d.ts +3158 -1610
- package/dist/src/index.js +605 -249
- package/dist/src/indirectWebPwn-B80dLlFC.js +260 -0
- package/dist/src/indirectWebPwn-BMTXXznx.js +386 -0
- package/dist/src/indirectWebPwn-BZFPV7Q9.js +385 -0
- package/dist/src/indirectWebPwn-BaEQEOIO.cjs +260 -0
- package/dist/src/indirectWebPwn-BzpyMnFS.js +259 -0
- package/dist/src/indirectWebPwn-CiWB-vVH.js +385 -0
- package/dist/src/indirectWebPwn-D7NA9Nsv.cjs +397 -0
- package/dist/src/indirectWebPwn-o_bEFMjP.js +259 -0
- package/dist/src/inputVariables-B0qUChbV.js +467 -0
- package/dist/src/inputVariables-DUGMb9Ka.js +464 -0
- package/dist/src/inputVariables-DXFdi7AI.js +468 -0
- package/dist/src/inputVariables-Dq9W-Z3a.cjs +475 -0
- package/dist/src/{interactiveCheck-CCICw2cy.js → interactiveCheck-C4QlIuoR.js} +1 -1
- package/dist/src/{invariant-kfQ8Bu82.cjs → invariant-QtnLD03y.cjs} +1 -1
- package/dist/src/iterative-B-l0syBV.js +501 -0
- package/dist/src/iterative-BACUeCCz.cjs +503 -0
- package/dist/src/iterative-CVwoExo8.js +502 -0
- package/dist/src/iterative-QDrGSyss.js +500 -0
- package/dist/src/iterativeImage-BQg2OwA6.js +413 -0
- package/dist/src/iterativeImage-Bwn0fM75.js +413 -0
- package/dist/src/iterativeImage-CcgVyASo.cjs +415 -0
- package/dist/src/iterativeImage-D_UbQXg4.js +414 -0
- package/dist/src/iterativeMeta-CIu-CHRS.js +405 -0
- package/dist/src/iterativeMeta-CN8CNjFA.js +406 -0
- package/dist/src/iterativeMeta-DN6BTjpq.js +404 -0
- package/dist/src/iterativeMeta-DlqY3BsS.cjs +405 -0
- package/dist/src/iterativeTree-CJ8a8G9T.js +820 -0
- package/dist/src/iterativeTree-DcuFXnjL.js +819 -0
- package/dist/src/iterativeTree-FrDDYAN0.js +818 -0
- package/dist/src/iterativeTree-LOgAi0nU.cjs +821 -0
- package/dist/src/{knowledgeBase-C8qOo26M.cjs → knowledgeBase-CdbcGBZF.cjs} +25 -11
- package/dist/src/{knowledgeBase-BBETc5-S.js → knowledgeBase-CjOXp6Lr.js} +23 -9
- package/dist/src/{knowledgeBase-Dr3Kib7F.js → knowledgeBase-DxAq4n4z.js} +24 -10
- package/dist/src/{knowledgeBase-CzAi2rUI.js → knowledgeBase-o_wTLzrt.js} +24 -10
- package/dist/src/{litellm-DRc4qWfc.js → litellm-B2gHwya_.js} +4 -4
- package/dist/src/{litellm-CaUmV7Mk.cjs → litellm-CPpdlO7n.cjs} +5 -5
- package/dist/src/{litellm-BLSiANhk.js → litellm-CYfgxLrM.js} +4 -4
- package/dist/src/{litellm-DQGo_juI.js → litellm-ojWBKU3C.js} +4 -4
- package/dist/src/{logger-COuQb2xB.cjs → logger-cfNpzI4o.cjs} +13 -55
- package/dist/src/{luma-ray-if-Ml4R9.cjs → luma-ray-BCCO9XXG.cjs} +9 -8
- package/dist/src/{luma-ray-B-tNZzqW.js → luma-ray-BPrdihAb.js} +5 -5
- package/dist/src/{luma-ray-CtS3OlGq.js → luma-ray-DP5N79lB.js} +5 -5
- package/dist/src/{luma-ray-PJJgUjOc.js → luma-ray-DTDyoAlM.js} +5 -5
- package/dist/src/main.js +727 -234
- package/dist/src/memoryPoisoning-B6N3us35.cjs +106 -0
- package/dist/src/memoryPoisoning-Bc_BK_k2.js +106 -0
- package/dist/src/memoryPoisoning-D375zwSX.js +107 -0
- package/dist/src/memoryPoisoning-DJA0YjJT.js +106 -0
- package/dist/src/{messages-CewuNcNS.js → messages-Bg29Nbit.js} +17 -9
- package/dist/src/{messages-BnsVHUnm.cjs → messages-BrZEnHsV.cjs} +24 -15
- package/dist/src/{messages-CI69Lasb.js → messages-CBulRaud.js} +18 -10
- package/dist/src/{messages-B9dSjrNf.js → messages-K9A8RxBM.js} +18 -10
- package/dist/src/{meteor-CeGo0Lu2.js → meteor--TZYICTI.js} +1 -1
- package/dist/src/{meteor-BBGcGeCa.cjs → meteor-CR226f7Z.cjs} +2 -2
- package/dist/src/{meteor-Wc_aUVvu.js → meteor-Cl_yd7rJ.js} +1 -1
- package/dist/src/{meteor-BKTM-7KS.js → meteor-Dce-_zGQ.js} +1 -1
- package/dist/src/mischievousUser-BDLwSGN0.js +46 -0
- package/dist/src/mischievousUser-Blx-OtT3.js +47 -0
- package/dist/src/mischievousUser-CHuTTvBg.js +46 -0
- package/dist/src/mischievousUser-CSUrH3fq.cjs +46 -0
- package/dist/src/{modelslab-zpz9JcK0.js → modelslab-BjEk7yCP.js} +6 -6
- package/dist/src/{modelslab-BCLOtfek.js → modelslab-CBCrdIBc.js} +6 -6
- package/dist/src/{modelslab-D73OnKSx.js → modelslab-CrGpXuhv.js} +6 -6
- package/dist/src/{modelslab-BkapYJhh.cjs → modelslab-Cvh0klQx.cjs} +7 -7
- package/dist/src/{nova-reel-B8F_TK5w.js → nova-reel-CUDDZcSA.js} +5 -5
- package/dist/src/{nova-reel-Bx0NFV2f.js → nova-reel-CyDESu5J.js} +5 -5
- package/dist/src/{nova-reel-DkT7tnoB.cjs → nova-reel-DH_Ksu6X.cjs} +9 -8
- package/dist/src/{nova-reel-CNGJTLtG.js → nova-reel-YQAqUYJY.js} +5 -5
- package/dist/src/{nova-sonic-BeTRaFOh.js → nova-sonic-BVFFB7JZ.js} +2 -2
- package/dist/src/{nova-sonic-YT426juD.cjs → nova-sonic-Bg3cxMMu.cjs} +5 -4
- package/dist/src/{nova-sonic-CL7Zqv0G.js → nova-sonic-BhmnRGyh.js} +3 -3
- package/dist/src/{nova-sonic-BaXRN1cr.js → nova-sonic-DxmK95c1.js} +3 -3
- package/dist/src/{openai-Cy1XLs0c.cjs → openai-C3uXv8wS.cjs} +2 -2
- package/dist/src/{openai-BT-JvDse.js → openai-CJrsh9n4.js} +1 -1
- package/dist/src/{openai-D4fxGvRx.js → openai-zgwBb4Ff.js} +1 -1
- package/dist/src/{openclaw-DUBZP3GL.cjs → openclaw-CHQaZi_-.cjs} +17 -15
- package/dist/src/{openclaw-DA8U4DsD.js → openclaw-CWOm2eOr.js} +9 -8
- package/dist/src/{openclaw-DObVgpjC.js → openclaw-Cdk9JKfY.js} +9 -8
- package/dist/src/{openclaw-Bq7RVR3k.js → openclaw-DhF8rUpI.js} +9 -8
- package/dist/src/{opencode-sdk-BB40Wir1.js → opencode-sdk-BRjiPV-g.js} +38 -3
- package/dist/src/{opencode-sdk-CeqiOcOU.cjs → opencode-sdk-CPFMw0ed.cjs} +45 -9
- package/dist/src/{opencode-sdk-BM1UAIv1.js → opencode-sdk-CaSOCsBA.js} +39 -4
- package/dist/src/{opencode-sdk-ChdK7F7z.js → opencode-sdk-CqkyG8De.js} +39 -4
- package/dist/src/{otlpReceiver-UYMQx3sy.js → otlpReceiver--gTpSagc.js} +119 -3
- package/dist/src/{otlpReceiver-C6thJRXi.js → otlpReceiver-B2eaKC8C.js} +118 -2
- package/dist/src/{otlpReceiver-CcdIikOu.js → otlpReceiver-BXjcRqAM.js} +119 -3
- package/dist/src/{otlpReceiver-DNSQj6bf.cjs → otlpReceiver-CvJdBGSc.cjs} +125 -7
- package/dist/src/packageParser--MWTSrPW.js +36 -0
- package/dist/src/packageParser-CgE-ziRo.js +35 -0
- package/dist/src/packageParser-QoCS1FMl.cjs +54 -0
- package/dist/src/packageParser-hwwSGnAZ.js +35 -0
- package/dist/src/processShim-BBxt7LKO.js +95 -0
- package/dist/src/processShim-BcGzU8fY.js +94 -0
- package/dist/src/processShim-C_z3aRvF.js +94 -0
- package/dist/src/processShim-DSY9BV2T.cjs +98 -0
- package/dist/src/promptLength-0qIHyhA5.js +71 -0
- package/dist/src/promptLength-4X-Wd8PG.js +72 -0
- package/dist/src/promptLength-B9nZEfO6.js +71 -0
- package/dist/src/promptLength-BbBbDHNj.cjs +94 -0
- package/dist/src/promptfoo-BU4_0J85.js +238 -0
- package/dist/src/promptfoo-CReYAtfb.js +237 -0
- package/dist/src/promptfoo-ClChwT74.cjs +292 -0
- package/dist/src/promptfoo-CqEpj6Sr.js +237 -0
- package/dist/src/prompts-BYMtqPCw.js +259 -0
- package/dist/src/prompts-C-bqE1Yp.js +260 -0
- package/dist/src/prompts-Cp_Qx5Ml.js +270 -0
- package/dist/src/prompts-DHhQsANy.js +259 -0
- package/dist/src/prompts-D_QpZ2Dm.js +271 -0
- package/dist/src/prompts-hNvWBD3z.cjs +284 -0
- package/dist/src/prompts-huDVH2CI.js +270 -0
- package/dist/src/prompts-p78Hul5i.cjs +289 -0
- package/dist/src/{providerRegistry-BESeALrr.cjs → providerRegistry-CZO_w7ue.cjs} +2 -2
- package/dist/src/{providerRegistry-DoACwqhD.js → providerRegistry-DHcFiVWX.js} +1 -1
- package/dist/src/{providerRegistry-PMsleEzs.js → providerRegistry-ReCd0sFa.js} +1 -1
- package/dist/src/{providers-DT-GtF2t.js → providers-B7TyByfj.js} +789 -11925
- package/dist/src/{providers-CJh7iriU.js → providers-BGc7tDtQ.js} +796 -11872
- package/dist/src/{providers-Ctcc592x.js → providers-CSOp-bCm.js} +1 -1
- package/dist/src/{providers-eDShy16E.cjs → providers-V6RBuieY.cjs} +837 -12138
- package/dist/src/{providers-DRrerKra.js → providers-iH3Sw1yo.js} +851 -11938
- package/dist/src/{pythonUtils-C4tltmIn.js → pythonUtils-CLCgQ9tt.js} +1 -1
- package/dist/src/{pythonUtils-DNqbnRdx.js → pythonUtils-CgYxeSmO.js} +2 -2
- package/dist/src/{pythonUtils-CoLaCwNY.cjs → pythonUtils-Cokhluq3.cjs} +7 -6
- package/dist/src/{pythonUtils-DMO68Jg7.js → pythonUtils-D0BYebvX.js} +2 -2
- package/dist/src/{quiverai-CPKhWgaT.js → quiverai-58BtRRet.js} +3 -3
- package/dist/src/{quiverai-Bk1KrvL6.js → quiverai-C1dYu5MW.js} +3 -3
- package/dist/src/{quiverai-BSS9a7wV.js → quiverai-CNMIpZQg.js} +3 -3
- package/dist/src/{quiverai-Bpx6MZ7T.cjs → quiverai-fmSfU43k.cjs} +4 -4
- package/dist/src/registry-6Jw6ebor.cjs +124 -0
- package/dist/src/registry-BTGk2ZkB.js +124 -0
- package/dist/src/registry-BTNqmP5o.js +125 -0
- package/dist/src/registry-NGnOG2xa.js +124 -0
- package/dist/src/{server-gyd6d4Hc.js → remoteGeneration--D6WjzUm.js} +15 -108
- package/dist/src/{server-BEECpeGG.cjs → remoteGeneration-BpIYlb_O.cjs} +30 -119
- package/dist/src/{server-ByxbqAcQ.js → remoteGeneration-CJC3E0aW.js} +15 -147
- package/dist/src/remoteGeneration-D6UjE2JT.js +218 -0
- package/dist/src/render-BNTrbmBw.cjs +384 -0
- package/dist/src/render-CSP99NLm.js +348 -0
- package/dist/src/render-DFfDeYUK.js +347 -0
- package/dist/src/{render-nj-UaPdn.js → render-DznWrxGO.js} +2 -2
- package/dist/src/render-_6ur1fhE.js +347 -0
- package/dist/src/resourceAttributes-D1jP3kL5.js +17 -0
- package/dist/src/resourceAttributes-DQbBB--2.js +16 -0
- package/dist/src/resourceAttributes-ephgOvdR.cjs +27 -0
- package/dist/src/resourceAttributes-v6-I67fn.js +16 -0
- package/dist/src/{responses-1ztiVYsx.js → responses-5Gf5HNOi.js} +11 -7
- package/dist/src/{responses-BiaBguAu.js → responses-BVi7xIdv.js} +13 -9
- package/dist/src/{responses-CF-ayauu.cjs → responses-CUARGrhY.cjs} +16 -11
- package/dist/src/{responses-B8haB-mD.js → responses-CrmWv6iz.js} +13 -9
- package/dist/src/rolldown-runtime-D_mwlA32.cjs +43 -0
- package/dist/src/rubyUtils-BYVlQ94c.js +3 -0
- package/dist/src/{rubyUtils-CIQFnVz4.js → rubyUtils-CXlFM2rR.js} +2 -2
- package/dist/src/{rubyUtils-BI0p46eZ.js → rubyUtils-CnlW8AYb.js} +2 -2
- package/dist/src/{rubyUtils-DoifqkiA.cjs → rubyUtils-CqUWBZAt.cjs} +16 -26
- package/dist/src/{rubyUtils-DGnoCYL2.js → rubyUtils-DdGojpfv.js} +1 -1
- package/dist/src/runtimeTransform-BJOpL9Yc.js +142 -0
- package/dist/src/runtimeTransform-Dgh_D7DU.js +143 -0
- package/dist/src/runtimeTransform-DigbjU1r.js +142 -0
- package/dist/src/runtimeTransform-ON3YYILw.cjs +147 -0
- package/dist/src/{sagemaker-ljtY12VM.cjs → sagemaker-BeVTKfrv.cjs} +65 -53
- package/dist/src/{sagemaker-BDLeW29y.js → sagemaker-BwbV5U7_.js} +61 -50
- package/dist/src/{sagemaker-C5T60MKf.js → sagemaker-ClAZ6Qwc.js} +61 -50
- package/dist/src/{sagemaker-ClS_NB07.js → sagemaker-DY2qrOpq.js} +61 -50
- package/dist/src/{scanner-nOCWNIXa.js → scanner-BS-iFIp3.js} +6 -6
- package/dist/src/server/index.js +4115 -420
- package/dist/src/server-BHOEL8p8.cjs +126 -0
- package/dist/src/server-CbiJppij.js +107 -0
- package/dist/src/server-D18AAlAc.js +3 -0
- package/dist/src/server-DLYjSFm2.js +182 -0
- package/dist/src/server-JQYD_Nws.js +146 -0
- package/dist/src/{fileExtensions-8CjoL7vB.js → shared-BoG7qLMv.js} +12 -2
- package/dist/src/shared-CRq0gGVf.js +1334 -0
- package/dist/src/shared-CSIGeGLl.js +1334 -0
- package/dist/src/shared-DNvim54U.js +1335 -0
- package/dist/src/shared-aHWko3P1.cjs +1436 -0
- package/dist/src/{signal-DTtUuU3l.js → signal-CSurUUyV.js} +2 -2
- package/dist/src/simulatedUser-C7sOFSF6.js +222 -0
- package/dist/src/simulatedUser-DH_7RzEQ.js +222 -0
- package/dist/src/simulatedUser-lgMMmniD.js +223 -0
- package/dist/src/simulatedUser-mnCUS9Bm.cjs +227 -0
- package/dist/src/{slack-Bamy_7te.js → slack-Bapo-7_8.js} +1 -1
- package/dist/src/{slack-BLlsDpfG.cjs → slack-DMC1QVEg.cjs} +3 -2
- package/dist/src/{slack-BPYLQLgb.js → slack-DTEFhrMn.js} +1 -1
- package/dist/src/{slack-4zZX1OKP.js → slack-k-_CP84Q.js} +1 -1
- package/dist/src/storage-95htjpLs.js +834 -0
- package/dist/src/storage-A4WnAeN3.cjs +911 -0
- package/dist/src/storage-B2Ql_oq4.js +822 -0
- package/dist/src/storage-EKVWZBNY.js +875 -0
- package/dist/src/{store-2K0kDi80.cjs → store-B2NDDooM.cjs} +60 -24
- package/dist/src/{store-CPh25336.js → store-DKd5592Q.js} +50 -19
- package/dist/src/{store-BPkzEyFM.js → store-HpopRVzl.js} +50 -19
- package/dist/src/store-IbiRIF3k.js +3 -0
- package/dist/src/strategies-CBI1brSy.js +2333 -0
- package/dist/src/strategies-CCcnEbFO.cjs +2360 -0
- package/dist/src/strategies-CD1gHeeQ.js +2331 -0
- package/dist/src/{tables-WgdUZ8Ck.js → tables-CRSXQ2Ke.js} +2 -2
- package/dist/src/{tables-BMSOS2Gg.js → tables-CxjU7bBd.js} +2 -2
- package/dist/src/{tables-CXbaZ9y1.cjs → tables-DBIJU0WE.cjs} +6 -5
- package/dist/src/{tables-NlvH23ky.js → tables-DafUHOeh.js} +2 -2
- package/dist/src/telemetry-BUm_krVX.js +3 -0
- package/dist/src/{telemetry--iqaGyaS.js → telemetry-BbpmrenM.js} +4 -4
- package/dist/src/{telemetry-CgdVGV8N.js → telemetry-C4bX-6Sr.js} +4 -4
- package/dist/src/{telemetry-CEQxGnMZ.cjs → telemetry-C_ImlCOk.cjs} +15 -9
- package/dist/src/{telemetry-DWdGHvEf.js → telemetry-DOE567Wj.js} +4 -4
- package/dist/src/{text-DDQP0tuQ.js → text-CZr46tp_.js} +1 -1
- package/dist/src/{text-D4lz-Jg_.js → text-Db-Wt2u2.js} +1 -1
- package/dist/src/{text-NWvfMfkF.js → text-DwYK5EBn.js} +1 -1
- package/dist/src/{text-BiNME7QG.cjs → text-nywWsRBM.cjs} +1 -1
- package/dist/src/{tokenUsageUtils-2wIvAhB3.js → tokenUsageUtils-CDet74yk.js} +1 -1
- package/dist/src/{tokenUsageUtils-4c780gFd.js → tokenUsageUtils-CmnQ0G2m.js} +1 -1
- package/dist/src/{tokenUsageUtils-C9odhsbW.cjs → tokenUsageUtils-_B-P8IAi.cjs} +1 -1
- package/dist/src/toolAttributes-BAjwcBf0.cjs +103 -0
- package/dist/src/toolAttributes-COVgDrBG.js +87 -0
- package/dist/src/toolAttributes-DJ9ZEKXD.js +86 -0
- package/dist/src/tracingOptions-BOP1FsRt.js +220 -0
- package/dist/src/tracingOptions-BvmDa_jH.js +219 -0
- package/dist/src/tracingOptions-DFBoE8O0.cjs +249 -0
- package/dist/src/tracingOptions-xhjOg2b1.js +221 -0
- package/dist/src/{transcription-D7Q0vJsh.js → transcription-BOXDoehT.js} +4 -4
- package/dist/src/{transcription-Bm2emLmJ.js → transcription-CpVdKc4P.js} +5 -5
- package/dist/src/{transcription-CZ4LG5hQ.cjs → transcription-D8kkPXg_.cjs} +9 -8
- package/dist/src/{transcription-84t4ALo2.js → transcription-Z94eV9LR.js} +5 -5
- package/dist/src/transform-BnSTnFlp.js +187 -0
- package/dist/src/transform-BnSXWmU_2.cjs +221 -0
- package/dist/src/{transform-DtooZqYY.js → transform-BufxPIQL.js} +8 -8
- package/dist/src/transform-CGt7Kt3y2.js +186 -0
- package/dist/src/transform-CrPGTsij.js +186 -0
- package/dist/src/{transform-Dg4LcO1Y.cjs → transform-DJkt81VY.cjs} +12 -11
- package/dist/src/{transform-B-b6Cq-q.js → transform-DtTfiGoh.js} +8 -8
- package/dist/src/{transform-_DpNB4qp.js → transform-Wp6s_5QE.js} +8 -8
- package/dist/src/{transformersAvailability-lvCCvuPT.js → transformersAvailability-0ThtPved.js} +1 -1
- package/dist/src/transformersAvailability-BYydDE5U.js +35 -0
- package/dist/src/{transformersAvailability-rJGPccjr.js → transformersAvailability-BvyU9vDD.js} +1 -1
- package/dist/src/{transformersAvailability-B22swDxr.cjs → transformersAvailability-BytPvKUW.cjs} +1 -1
- package/dist/src/{types-BVH9hjgW.js → types-BFevViUY.js} +113 -19
- package/dist/src/{types-BDjGOq4E.js → types-BJQBBPTP.js} +113 -19
- package/dist/src/{types-CgG2rKiW.cjs → types-CxJvaY2S.cjs} +211 -28
- package/dist/src/{types-DNRZVOue.js → types-D6glLbdF.js} +125 -26
- package/dist/src/{util-Dpmm_dAI.cjs → util-BHCAeuXx.cjs} +33 -7
- package/dist/src/{util-DFPeFkiV.js → util-CMrHV35u.js} +28 -8
- package/dist/src/{util-DvpHnLt0.cjs → util-COnzevXE.cjs} +29 -21
- package/dist/src/{util-BlFVL0UF.js → util-CYev3d-r.js} +22 -7
- package/dist/src/util-DGqkTb2-.js +327 -0
- package/dist/src/util-DNtUsus_.cjs +386 -0
- package/dist/src/{util-Dub0f_ej.js → util-DRfqa4xz.js} +17 -10
- package/dist/src/{util-BVXcTwXu.js → util-DTq3jq2z.js} +28 -8
- package/dist/src/{util-C-kmRosx.js → util-DeY58psG.js} +22 -7
- package/dist/src/util-DpV6KT5i.js +327 -0
- package/dist/src/{util-3pBZZb_H.js → util-DwNJzqOV.js} +45 -10
- package/dist/src/util-ETfU_sS9.js +328 -0
- package/dist/src/{util-A5_ZsQUn.cjs → util-NYQvo1C7.cjs} +25 -9
- package/dist/src/{util-DN0-b81k.js → util-X4KQgyVD.js} +28 -8
- package/dist/src/{util-BQOCAHQC.js → util-jZRrXe1P.js} +46 -11
- package/dist/src/{util-B9CNhyac.js → util-o2Qg5rZv.js} +22 -7
- package/dist/src/{utils-BUMN8orw.js → utils-B0lzitHZ.js} +2 -2
- package/dist/src/{utils-kt7lv30R.js → utils-BFOh20Gb.js} +2 -2
- package/dist/src/{utils-o8S5huU2.js → utils-BGY69tk_.js} +2 -2
- package/dist/src/{utils-DkVeShIB.cjs → utils-Ve6kuJsa.cjs} +3 -3
- package/dist/src/{version-CbuBKu2U.js → version-CHR-EFec.js} +2 -2
- package/dist/src/{version-CbpiUINz.js → version-F0YDgb7J.js} +2 -2
- package/dist/src/{version-D9zu9FWB.cjs → version-VzUqOBZk.cjs} +2 -2
- package/dist/src/{version-0frU0UTr.js → version-qVEN5qCm.js} +2 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +49 -23
- package/dist/src/app/assets/Report-vjzrbgce.js +0 -1
- package/dist/src/app/assets/index-B3NQ8HTd.js +0 -385
- package/dist/src/app/assets/index-Cli2yAXv.css +0 -1
- package/dist/src/app/assets/sync-IjzpWrOE.js +0 -4
- package/dist/src/app/assets/vendor-charts-BNdH8TCw.js +0 -36
- package/dist/src/cache-BRkhlH3k.cjs +0 -3
- package/dist/src/cache-BlC6aeJ0.js +0 -3
- package/dist/src/cloud-CoD5OacT.js +0 -3
- package/dist/src/codex-sdk-1jm_qPHf.js +0 -3
- package/dist/src/codex-sdk-Danroptg.cjs +0 -2
- package/dist/src/evalResult-BBJAHAtw.cjs +0 -2
- package/dist/src/evalResult-BBK58h2B.js +0 -3
- package/dist/src/evalResult-spPqh1G_.js +0 -2
- package/dist/src/evaluator-DgLKaZk8.js +0 -3
- package/dist/src/fetch-8viavNv8.js +0 -3
- package/dist/src/graders-C84JI-m5.js +0 -2
- package/dist/src/graders-CBbd0K0Q.cjs +0 -2
- package/dist/src/graders-CbQqpHSN.js +0 -3
- package/dist/src/graders-DS42d3ZG.js +0 -2
- package/dist/src/image-BmilRNqO.js +0 -258
- package/dist/src/image-CxJoa3aW.cjs +0 -280
- package/dist/src/image-DsGRlkh7.js +0 -257
- package/dist/src/image-a_SGUobh.js +0 -257
- package/dist/src/providers-BuyzKt7C.js +0 -2
- package/dist/src/providers-C7lNVBjX.cjs +0 -3
- package/dist/src/providers-CCE2COJi2.js +0 -2
- package/dist/src/render-7uNJ2V14.js +0 -135
- package/dist/src/render-DlscvAUJ.js +0 -135
- package/dist/src/render-eui5p5mL.js +0 -136
- package/dist/src/render-tG6ir9_g.cjs +0 -165
- package/dist/src/rubyUtils-4hjGxvju.js +0 -3
- package/dist/src/rubyUtils-CO-tuszQ.cjs +0 -2
- package/dist/src/server-ByiF3qlg.js +0 -386
- package/dist/src/server-C0XKRNB_.cjs +0 -2
- package/dist/src/server-C_15p79-.js +0 -3
- package/dist/src/store-2OXm_eBY.js +0 -240
- package/dist/src/store-BELqNwvz.js +0 -3
- package/dist/src/store-uQZ4AjPe.cjs +0 -2
- package/dist/src/telemetry-DjNoC_n3.cjs +0 -2
- package/dist/src/telemetry-ZdPZc0fm.js +0 -3
- package/dist/src/transform-BQt0BeAW.js +0 -3
- package/dist/src/transform-Bq5oqC0s.cjs +0 -2
- package/dist/src/transform-C9izGX54.cjs +0 -228
- package/dist/src/transform-CwbAZ84V.js +0 -216
- package/dist/src/transform-DzCF-wqV.js +0 -213
- package/dist/src/transform-eGiUAv86.js +0 -216
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { C as getConfigDirectoryPath, O as getEnvString, s as logger } from "./logger-BbY6ypFL.js";
|
|
3
|
-
import {
|
|
4
|
-
import { n as VERSION } from "./version-
|
|
5
|
-
import {
|
|
6
|
-
import { t as
|
|
7
|
-
import { t as
|
|
8
|
-
import {
|
|
3
|
+
import { _ as REQUEST_TIMEOUT_MS, n as fetchWithProxy } from "./fetch-Cpf1U1nO.js";
|
|
4
|
+
import { n as VERSION } from "./version-F0YDgb7J.js";
|
|
5
|
+
import { n as sha256 } from "./createHash-CgRvs4Fn.js";
|
|
6
|
+
import { t as OpenAiChatCompletionProvider } from "./chat-DTdf-J5Q.js";
|
|
7
|
+
import { t as OpenAiEmbeddingProvider } from "./embedding-CU78FMnw.js";
|
|
8
|
+
import { t as OpenAiResponsesProvider } from "./responses-CrmWv6iz.js";
|
|
9
9
|
import fs from "fs";
|
|
10
10
|
import path from "path";
|
|
11
11
|
import os from "os";
|
|
@@ -324,6 +324,7 @@ function resolveGatewayPortOverride(env) {
|
|
|
324
324
|
return Number.isInteger(parsedPort) && parsedPort > 0 && parsedPort <= 65535 ? parsedPort : void 0;
|
|
325
325
|
}
|
|
326
326
|
function toAuthSecret(kind, value) {
|
|
327
|
+
if (typeof value !== "string") return;
|
|
327
328
|
const trimmed = value?.trim();
|
|
328
329
|
return trimmed ? {
|
|
329
330
|
kind,
|
|
@@ -912,7 +913,7 @@ var OpenClawAgentProvider = class {
|
|
|
912
913
|
}
|
|
913
914
|
resolveScopesForDeviceToken(deviceToken) {
|
|
914
915
|
if (this.hasExplicitScopes) return this.scopes;
|
|
915
|
-
return
|
|
916
|
+
return normalizeScopes([...this.scopes, ...deviceToken.scopes || []]);
|
|
916
917
|
}
|
|
917
918
|
storeDeviceTokenFromHello(payload, authState) {
|
|
918
919
|
if (!authState?.deviceIdentity) return;
|
|
@@ -1198,4 +1199,4 @@ function createOpenClawProvider(providerPath, providerOptions = {}, env) {
|
|
|
1198
1199
|
//#endregion
|
|
1199
1200
|
export { createOpenClawProvider };
|
|
1200
1201
|
|
|
1201
|
-
//# sourceMappingURL=openclaw-
|
|
1202
|
+
//# sourceMappingURL=openclaw-CWOm2eOr.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { T as getEnvString, a as logger, x as getConfigDirectoryPath } from "./logger-Ct2S6Yx-.js";
|
|
2
|
-
import {
|
|
3
|
-
import { n as VERSION } from "./version-
|
|
4
|
-
import {
|
|
5
|
-
import { t as
|
|
6
|
-
import { t as
|
|
7
|
-
import {
|
|
2
|
+
import { p as REQUEST_TIMEOUT_MS, t as fetchWithProxy } from "./fetch-Doks14zQ.js";
|
|
3
|
+
import { n as VERSION } from "./version-qVEN5qCm.js";
|
|
4
|
+
import { n as sha256 } from "./createHash-BtbSX3mj.js";
|
|
5
|
+
import { t as OpenAiChatCompletionProvider } from "./chat-BBEnnpQk.js";
|
|
6
|
+
import { t as OpenAiEmbeddingProvider } from "./embedding-CStK0TV6.js";
|
|
7
|
+
import { t as OpenAiResponsesProvider } from "./responses-BVi7xIdv.js";
|
|
8
8
|
import fs from "fs";
|
|
9
9
|
import path from "path";
|
|
10
10
|
import os from "os";
|
|
@@ -323,6 +323,7 @@ function resolveGatewayPortOverride(env) {
|
|
|
323
323
|
return Number.isInteger(parsedPort) && parsedPort > 0 && parsedPort <= 65535 ? parsedPort : void 0;
|
|
324
324
|
}
|
|
325
325
|
function toAuthSecret(kind, value) {
|
|
326
|
+
if (typeof value !== "string") return;
|
|
326
327
|
const trimmed = value?.trim();
|
|
327
328
|
return trimmed ? {
|
|
328
329
|
kind,
|
|
@@ -911,7 +912,7 @@ var OpenClawAgentProvider = class {
|
|
|
911
912
|
}
|
|
912
913
|
resolveScopesForDeviceToken(deviceToken) {
|
|
913
914
|
if (this.hasExplicitScopes) return this.scopes;
|
|
914
|
-
return
|
|
915
|
+
return normalizeScopes([...this.scopes, ...deviceToken.scopes || []]);
|
|
915
916
|
}
|
|
916
917
|
storeDeviceTokenFromHello(payload, authState) {
|
|
917
918
|
if (!authState?.deviceIdentity) return;
|
|
@@ -1197,4 +1198,4 @@ function createOpenClawProvider(providerPath, providerOptions = {}, env) {
|
|
|
1197
1198
|
//#endregion
|
|
1198
1199
|
export { createOpenClawProvider };
|
|
1199
1200
|
|
|
1200
|
-
//# sourceMappingURL=openclaw-
|
|
1201
|
+
//# sourceMappingURL=openclaw-Cdk9JKfY.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { T as getEnvString, a as logger, x as getConfigDirectoryPath } from "./logger-KD8JjCRJ.js";
|
|
2
|
-
import {
|
|
3
|
-
import { n as VERSION } from "./version-
|
|
4
|
-
import { n as sha256 } from "./createHash-
|
|
5
|
-
import { t as OpenAiChatCompletionProvider } from "./chat-
|
|
6
|
-
import { t as OpenAiResponsesProvider } from "./responses-
|
|
7
|
-
import { t as OpenAiEmbeddingProvider } from "./embedding-
|
|
2
|
+
import { t as fetchWithProxy, v as REQUEST_TIMEOUT_MS } from "./fetch-BSSAcMxf.js";
|
|
3
|
+
import { n as VERSION } from "./version-CHR-EFec.js";
|
|
4
|
+
import { n as sha256 } from "./createHash-CGVzWdjj.js";
|
|
5
|
+
import { t as OpenAiChatCompletionProvider } from "./chat-BSos6PvZ.js";
|
|
6
|
+
import { t as OpenAiResponsesProvider } from "./responses-5Gf5HNOi.js";
|
|
7
|
+
import { t as OpenAiEmbeddingProvider } from "./embedding-CV8lmCnU.js";
|
|
8
8
|
import fs from "fs";
|
|
9
9
|
import path from "path";
|
|
10
10
|
import os from "os";
|
|
@@ -323,6 +323,7 @@ function resolveGatewayPortOverride(env) {
|
|
|
323
323
|
return Number.isInteger(parsedPort) && parsedPort > 0 && parsedPort <= 65535 ? parsedPort : void 0;
|
|
324
324
|
}
|
|
325
325
|
function toAuthSecret(kind, value) {
|
|
326
|
+
if (typeof value !== "string") return;
|
|
326
327
|
const trimmed = value?.trim();
|
|
327
328
|
return trimmed ? {
|
|
328
329
|
kind,
|
|
@@ -911,7 +912,7 @@ var OpenClawAgentProvider = class {
|
|
|
911
912
|
}
|
|
912
913
|
resolveScopesForDeviceToken(deviceToken) {
|
|
913
914
|
if (this.hasExplicitScopes) return this.scopes;
|
|
914
|
-
return
|
|
915
|
+
return normalizeScopes([...this.scopes, ...deviceToken.scopes || []]);
|
|
915
916
|
}
|
|
916
917
|
storeDeviceTokenFromHello(payload, authState) {
|
|
917
918
|
if (!authState?.deviceIdentity) return;
|
|
@@ -1197,4 +1198,4 @@ function createOpenClawProvider(providerPath, providerOptions = {}, env) {
|
|
|
1197
1198
|
//#endregion
|
|
1198
1199
|
export { createOpenClawProvider };
|
|
1199
1200
|
|
|
1200
|
-
//# sourceMappingURL=openclaw-
|
|
1201
|
+
//# sourceMappingURL=openclaw-DhF8rUpI.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { T as getEnvString, a as logger, k as state, t as getLogLevel } from "./logger-KD8JjCRJ.js";
|
|
2
2
|
import { r as importModule } from "./esm-B6whoAcf.js";
|
|
3
|
-
import { i as initializeAgenticCache, n as generateCacheKey, r as getCachedResponse, t as cacheResponse } from "./agentic-utils-
|
|
3
|
+
import { i as initializeAgenticCache, n as generateCacheKey, r as getCachedResponse, t as cacheResponse } from "./agentic-utils-GdToujHu.js";
|
|
4
4
|
import { createRequire } from "node:module";
|
|
5
5
|
import fs from "fs";
|
|
6
6
|
import path from "path";
|
|
@@ -57,6 +57,38 @@ function getSessionPath(sessionId) {
|
|
|
57
57
|
sessionID: sessionId
|
|
58
58
|
};
|
|
59
59
|
}
|
|
60
|
+
/**
|
|
61
|
+
* Convert the user-facing object-shaped permission config into the
|
|
62
|
+
* rule-array shape required by the v2 `session.create.permission` API.
|
|
63
|
+
*
|
|
64
|
+
* - `{ bash: 'allow' }` → `[{ permission: 'bash', pattern: '*', action: 'allow' }]`
|
|
65
|
+
* - `{ bash: { 'git *': 'allow', '*': 'ask' } }` → two rules with the
|
|
66
|
+
* corresponding glob pattern preserved per entry.
|
|
67
|
+
*
|
|
68
|
+
* Returns `undefined` when the config has no usable entries so callers can
|
|
69
|
+
* omit the field entirely.
|
|
70
|
+
*/
|
|
71
|
+
function convertPermissionConfigToRuleset(config) {
|
|
72
|
+
if (!config) return;
|
|
73
|
+
const rules = [];
|
|
74
|
+
for (const [tool, value] of Object.entries(config)) {
|
|
75
|
+
if (value === void 0) continue;
|
|
76
|
+
if (typeof value === "string") {
|
|
77
|
+
rules.push({
|
|
78
|
+
permission: tool,
|
|
79
|
+
pattern: "*",
|
|
80
|
+
action: value
|
|
81
|
+
});
|
|
82
|
+
continue;
|
|
83
|
+
}
|
|
84
|
+
if (value && typeof value === "object") for (const [pattern, action] of Object.entries(value)) rules.push({
|
|
85
|
+
permission: tool,
|
|
86
|
+
pattern,
|
|
87
|
+
action
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
return rules.length > 0 ? rules : void 0;
|
|
91
|
+
}
|
|
60
92
|
function tryParseJson(value) {
|
|
61
93
|
try {
|
|
62
94
|
return JSON.stringify(JSON.parse(value));
|
|
@@ -432,7 +464,10 @@ var OpenCodeSDKProvider = class {
|
|
|
432
464
|
buildCreateSessionParameters(config, sessionQuery) {
|
|
433
465
|
if (!this.opencodeModule) throw new Error("OpenCode SDK module is not loaded");
|
|
434
466
|
const createBody = { title: `promptfoo-${Date.now()}` };
|
|
435
|
-
if (config.permission && this.opencodeModule.apiVersion === "v2")
|
|
467
|
+
if (config.permission && this.opencodeModule.apiVersion === "v2") {
|
|
468
|
+
const ruleset = convertPermissionConfigToRuleset(config.permission);
|
|
469
|
+
if (ruleset) createBody.permission = ruleset;
|
|
470
|
+
}
|
|
436
471
|
if (this.opencodeModule.apiVersion === "v2") return {
|
|
437
472
|
...sessionQuery,
|
|
438
473
|
...createBody
|
|
@@ -555,4 +590,4 @@ var OpenCodeSDKProvider = class {
|
|
|
555
590
|
//#endregion
|
|
556
591
|
export { OpenCodeSDKProvider };
|
|
557
592
|
|
|
558
|
-
//# sourceMappingURL=opencode-sdk-
|
|
593
|
+
//# sourceMappingURL=opencode-sdk-BRjiPV-g.js.map
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
const
|
|
2
|
-
const
|
|
3
|
-
const
|
|
1
|
+
const require_rolldown_runtime = require("./rolldown-runtime-D_mwlA32.cjs");
|
|
2
|
+
const require_logger = require("./logger-cfNpzI4o.cjs");
|
|
3
|
+
const require_esm = require("./esm-BIKakvNa.cjs");
|
|
4
|
+
const require_agentic_utils = require("./agentic-utils-C-A92xhn.cjs");
|
|
4
5
|
let fs = require("fs");
|
|
5
|
-
fs =
|
|
6
|
+
fs = require_rolldown_runtime.__toESM(fs, 1);
|
|
6
7
|
let path = require("path");
|
|
7
|
-
path =
|
|
8
|
+
path = require_rolldown_runtime.__toESM(path, 1);
|
|
8
9
|
let os = require("os");
|
|
9
|
-
os =
|
|
10
|
+
os = require_rolldown_runtime.__toESM(os, 1);
|
|
10
11
|
let dedent = require("dedent");
|
|
11
|
-
dedent =
|
|
12
|
+
dedent = require_rolldown_runtime.__toESM(dedent, 1);
|
|
12
13
|
let node_module = require("node:module");
|
|
13
14
|
//#region src/providers/opencode-sdk.ts
|
|
14
15
|
/**
|
|
@@ -61,6 +62,38 @@ function getSessionPath(sessionId) {
|
|
|
61
62
|
sessionID: sessionId
|
|
62
63
|
};
|
|
63
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Convert the user-facing object-shaped permission config into the
|
|
67
|
+
* rule-array shape required by the v2 `session.create.permission` API.
|
|
68
|
+
*
|
|
69
|
+
* - `{ bash: 'allow' }` → `[{ permission: 'bash', pattern: '*', action: 'allow' }]`
|
|
70
|
+
* - `{ bash: { 'git *': 'allow', '*': 'ask' } }` → two rules with the
|
|
71
|
+
* corresponding glob pattern preserved per entry.
|
|
72
|
+
*
|
|
73
|
+
* Returns `undefined` when the config has no usable entries so callers can
|
|
74
|
+
* omit the field entirely.
|
|
75
|
+
*/
|
|
76
|
+
function convertPermissionConfigToRuleset(config) {
|
|
77
|
+
if (!config) return;
|
|
78
|
+
const rules = [];
|
|
79
|
+
for (const [tool, value] of Object.entries(config)) {
|
|
80
|
+
if (value === void 0) continue;
|
|
81
|
+
if (typeof value === "string") {
|
|
82
|
+
rules.push({
|
|
83
|
+
permission: tool,
|
|
84
|
+
pattern: "*",
|
|
85
|
+
action: value
|
|
86
|
+
});
|
|
87
|
+
continue;
|
|
88
|
+
}
|
|
89
|
+
if (value && typeof value === "object") for (const [pattern, action] of Object.entries(value)) rules.push({
|
|
90
|
+
permission: tool,
|
|
91
|
+
pattern,
|
|
92
|
+
action
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
return rules.length > 0 ? rules : void 0;
|
|
96
|
+
}
|
|
64
97
|
function tryParseJson(value) {
|
|
65
98
|
try {
|
|
66
99
|
return JSON.stringify(JSON.parse(value));
|
|
@@ -436,7 +469,10 @@ var OpenCodeSDKProvider = class {
|
|
|
436
469
|
buildCreateSessionParameters(config, sessionQuery) {
|
|
437
470
|
if (!this.opencodeModule) throw new Error("OpenCode SDK module is not loaded");
|
|
438
471
|
const createBody = { title: `promptfoo-${Date.now()}` };
|
|
439
|
-
if (config.permission && this.opencodeModule.apiVersion === "v2")
|
|
472
|
+
if (config.permission && this.opencodeModule.apiVersion === "v2") {
|
|
473
|
+
const ruleset = convertPermissionConfigToRuleset(config.permission);
|
|
474
|
+
if (ruleset) createBody.permission = ruleset;
|
|
475
|
+
}
|
|
440
476
|
if (this.opencodeModule.apiVersion === "v2") return {
|
|
441
477
|
...sessionQuery,
|
|
442
478
|
...createBody
|
|
@@ -559,4 +595,4 @@ var OpenCodeSDKProvider = class {
|
|
|
559
595
|
//#endregion
|
|
560
596
|
exports.OpenCodeSDKProvider = OpenCodeSDKProvider;
|
|
561
597
|
|
|
562
|
-
//# sourceMappingURL=opencode-sdk-
|
|
598
|
+
//# sourceMappingURL=opencode-sdk-CPFMw0ed.cjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { T as getEnvString, a as logger, k as state, t as getLogLevel } from "./logger-Ct2S6Yx-.js";
|
|
2
|
-
import { r as importModule } from "./esm-
|
|
3
|
-
import { i as initializeAgenticCache, n as generateCacheKey, r as getCachedResponse, t as cacheResponse } from "./agentic-utils-
|
|
2
|
+
import { r as importModule } from "./esm-BTK1W7lG.js";
|
|
3
|
+
import { i as initializeAgenticCache, n as generateCacheKey, r as getCachedResponse, t as cacheResponse } from "./agentic-utils-DmoS_S4B.js";
|
|
4
4
|
import { createRequire } from "node:module";
|
|
5
5
|
import fs from "fs";
|
|
6
6
|
import path from "path";
|
|
@@ -57,6 +57,38 @@ function getSessionPath(sessionId) {
|
|
|
57
57
|
sessionID: sessionId
|
|
58
58
|
};
|
|
59
59
|
}
|
|
60
|
+
/**
|
|
61
|
+
* Convert the user-facing object-shaped permission config into the
|
|
62
|
+
* rule-array shape required by the v2 `session.create.permission` API.
|
|
63
|
+
*
|
|
64
|
+
* - `{ bash: 'allow' }` → `[{ permission: 'bash', pattern: '*', action: 'allow' }]`
|
|
65
|
+
* - `{ bash: { 'git *': 'allow', '*': 'ask' } }` → two rules with the
|
|
66
|
+
* corresponding glob pattern preserved per entry.
|
|
67
|
+
*
|
|
68
|
+
* Returns `undefined` when the config has no usable entries so callers can
|
|
69
|
+
* omit the field entirely.
|
|
70
|
+
*/
|
|
71
|
+
function convertPermissionConfigToRuleset(config) {
|
|
72
|
+
if (!config) return;
|
|
73
|
+
const rules = [];
|
|
74
|
+
for (const [tool, value] of Object.entries(config)) {
|
|
75
|
+
if (value === void 0) continue;
|
|
76
|
+
if (typeof value === "string") {
|
|
77
|
+
rules.push({
|
|
78
|
+
permission: tool,
|
|
79
|
+
pattern: "*",
|
|
80
|
+
action: value
|
|
81
|
+
});
|
|
82
|
+
continue;
|
|
83
|
+
}
|
|
84
|
+
if (value && typeof value === "object") for (const [pattern, action] of Object.entries(value)) rules.push({
|
|
85
|
+
permission: tool,
|
|
86
|
+
pattern,
|
|
87
|
+
action
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
return rules.length > 0 ? rules : void 0;
|
|
91
|
+
}
|
|
60
92
|
function tryParseJson(value) {
|
|
61
93
|
try {
|
|
62
94
|
return JSON.stringify(JSON.parse(value));
|
|
@@ -432,7 +464,10 @@ var OpenCodeSDKProvider = class {
|
|
|
432
464
|
buildCreateSessionParameters(config, sessionQuery) {
|
|
433
465
|
if (!this.opencodeModule) throw new Error("OpenCode SDK module is not loaded");
|
|
434
466
|
const createBody = { title: `promptfoo-${Date.now()}` };
|
|
435
|
-
if (config.permission && this.opencodeModule.apiVersion === "v2")
|
|
467
|
+
if (config.permission && this.opencodeModule.apiVersion === "v2") {
|
|
468
|
+
const ruleset = convertPermissionConfigToRuleset(config.permission);
|
|
469
|
+
if (ruleset) createBody.permission = ruleset;
|
|
470
|
+
}
|
|
436
471
|
if (this.opencodeModule.apiVersion === "v2") return {
|
|
437
472
|
...sessionQuery,
|
|
438
473
|
...createBody
|
|
@@ -555,4 +590,4 @@ var OpenCodeSDKProvider = class {
|
|
|
555
590
|
//#endregion
|
|
556
591
|
export { OpenCodeSDKProvider };
|
|
557
592
|
|
|
558
|
-
//# sourceMappingURL=opencode-sdk-
|
|
593
|
+
//# sourceMappingURL=opencode-sdk-CaSOCsBA.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { N as state, O as getEnvString, n as getLogLevel, s as logger } from "./logger-BbY6ypFL.js";
|
|
3
|
-
import { r as importModule } from "./esm-
|
|
4
|
-
import { i as initializeAgenticCache, n as generateCacheKey, r as getCachedResponse, t as cacheResponse } from "./agentic-utils-
|
|
3
|
+
import { r as importModule } from "./esm-Bexx2PFc.js";
|
|
4
|
+
import { i as initializeAgenticCache, n as generateCacheKey, r as getCachedResponse, t as cacheResponse } from "./agentic-utils-BJKAkz2e.js";
|
|
5
5
|
import { createRequire } from "node:module";
|
|
6
6
|
import fs from "fs";
|
|
7
7
|
import path from "path";
|
|
@@ -58,6 +58,38 @@ function getSessionPath(sessionId) {
|
|
|
58
58
|
sessionID: sessionId
|
|
59
59
|
};
|
|
60
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Convert the user-facing object-shaped permission config into the
|
|
63
|
+
* rule-array shape required by the v2 `session.create.permission` API.
|
|
64
|
+
*
|
|
65
|
+
* - `{ bash: 'allow' }` → `[{ permission: 'bash', pattern: '*', action: 'allow' }]`
|
|
66
|
+
* - `{ bash: { 'git *': 'allow', '*': 'ask' } }` → two rules with the
|
|
67
|
+
* corresponding glob pattern preserved per entry.
|
|
68
|
+
*
|
|
69
|
+
* Returns `undefined` when the config has no usable entries so callers can
|
|
70
|
+
* omit the field entirely.
|
|
71
|
+
*/
|
|
72
|
+
function convertPermissionConfigToRuleset(config) {
|
|
73
|
+
if (!config) return;
|
|
74
|
+
const rules = [];
|
|
75
|
+
for (const [tool, value] of Object.entries(config)) {
|
|
76
|
+
if (value === void 0) continue;
|
|
77
|
+
if (typeof value === "string") {
|
|
78
|
+
rules.push({
|
|
79
|
+
permission: tool,
|
|
80
|
+
pattern: "*",
|
|
81
|
+
action: value
|
|
82
|
+
});
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
if (value && typeof value === "object") for (const [pattern, action] of Object.entries(value)) rules.push({
|
|
86
|
+
permission: tool,
|
|
87
|
+
pattern,
|
|
88
|
+
action
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
return rules.length > 0 ? rules : void 0;
|
|
92
|
+
}
|
|
61
93
|
function tryParseJson(value) {
|
|
62
94
|
try {
|
|
63
95
|
return JSON.stringify(JSON.parse(value));
|
|
@@ -433,7 +465,10 @@ var OpenCodeSDKProvider = class {
|
|
|
433
465
|
buildCreateSessionParameters(config, sessionQuery) {
|
|
434
466
|
if (!this.opencodeModule) throw new Error("OpenCode SDK module is not loaded");
|
|
435
467
|
const createBody = { title: `promptfoo-${Date.now()}` };
|
|
436
|
-
if (config.permission && this.opencodeModule.apiVersion === "v2")
|
|
468
|
+
if (config.permission && this.opencodeModule.apiVersion === "v2") {
|
|
469
|
+
const ruleset = convertPermissionConfigToRuleset(config.permission);
|
|
470
|
+
if (ruleset) createBody.permission = ruleset;
|
|
471
|
+
}
|
|
437
472
|
if (this.opencodeModule.apiVersion === "v2") return {
|
|
438
473
|
...sessionQuery,
|
|
439
474
|
...createBody
|
|
@@ -556,4 +591,4 @@ var OpenCodeSDKProvider = class {
|
|
|
556
591
|
//#endregion
|
|
557
592
|
export { OpenCodeSDKProvider };
|
|
558
593
|
|
|
559
|
-
//# sourceMappingURL=opencode-sdk-
|
|
594
|
+
//# sourceMappingURL=opencode-sdk-CqkyG8De.js.map
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { s as logger } from "./logger-BbY6ypFL.js";
|
|
3
|
-
import { t as getDirectory } from "./esm-
|
|
4
|
-
import { n as getTraceStore } from "./store-
|
|
3
|
+
import { t as getDirectory } from "./esm-Bexx2PFc.js";
|
|
4
|
+
import { n as getTraceStore } from "./store-DKd5592Q.js";
|
|
5
|
+
import { n as PROMPTFOO_RESOURCE_ATTR_TRACE_ID, t as PROMPTFOO_RESOURCE_ATTR_PARENT_SPAN_ID } from "./resourceAttributes-D1jP3kL5.js";
|
|
5
6
|
import path from "path";
|
|
7
|
+
import crypto from "node:crypto";
|
|
6
8
|
import express from "express";
|
|
7
9
|
import protobuf from "protobufjs";
|
|
8
10
|
//#region src/tracing/protobuf.ts
|
|
@@ -83,6 +85,33 @@ async function decodeExportTraceServiceRequest(data) {
|
|
|
83
85
|
}
|
|
84
86
|
//#endregion
|
|
85
87
|
//#region src/tracing/otlpReceiver.ts
|
|
88
|
+
const LOG_EVENT_NAME_DENYLIST = new Set(["claude_code.tracing"]);
|
|
89
|
+
const LOG_SPAN_DURATION_MS = 1;
|
|
90
|
+
const MAX_BODY_AS_NAME_LENGTH = 128;
|
|
91
|
+
const SEVERITY_NUMBER_ERROR = 17;
|
|
92
|
+
const MAX_LOG_BODY_ATTR_LENGTH = 8192;
|
|
93
|
+
function truncateLogBody(value) {
|
|
94
|
+
if (typeof value !== "string") return value;
|
|
95
|
+
if (value.length <= MAX_LOG_BODY_ATTR_LENGTH) return value;
|
|
96
|
+
return `${value.slice(0, MAX_LOG_BODY_ATTR_LENGTH - 15)}... [truncated]`;
|
|
97
|
+
}
|
|
98
|
+
const BASE64_ZERO_SPAN_ID = /^A{11,12}=?$/;
|
|
99
|
+
function isZeroSpanId(id) {
|
|
100
|
+
return /^0+$/.test(id) || BASE64_ZERO_SPAN_ID.test(id);
|
|
101
|
+
}
|
|
102
|
+
function randomSpanId() {
|
|
103
|
+
return crypto.randomBytes(8).toString("hex");
|
|
104
|
+
}
|
|
105
|
+
function getStringAttribute(attributes, key) {
|
|
106
|
+
const value = attributes[key];
|
|
107
|
+
return typeof value === "string" ? value : void 0;
|
|
108
|
+
}
|
|
109
|
+
function resolveLogSpanName(attributes, bodyValue) {
|
|
110
|
+
const eventName = attributes["event.name"] ?? attributes["claude_code.event.name"];
|
|
111
|
+
if (typeof eventName === "string" && eventName.length > 0) return eventName;
|
|
112
|
+
if (typeof bodyValue === "string" && bodyValue.length > 0 && bodyValue.length <= MAX_BODY_AS_NAME_LENGTH) return bodyValue;
|
|
113
|
+
return "otel.log";
|
|
114
|
+
}
|
|
86
115
|
const SPAN_KIND_MAP = {
|
|
87
116
|
0: "unspecified",
|
|
88
117
|
1: "internal",
|
|
@@ -141,6 +170,21 @@ var OTLPReceiver = class {
|
|
|
141
170
|
limit: "10mb",
|
|
142
171
|
type: (req) => this.acceptFormats.includes("protobuf") && getRequestFormat(req.headers["content-type"]) === "protobuf"
|
|
143
172
|
}));
|
|
173
|
+
this.app.use("/v1/logs", (req, res, next) => {
|
|
174
|
+
if (req.method !== "POST") {
|
|
175
|
+
next();
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
if (getRequestFormat(req.headers["content-type"]) !== "json") {
|
|
179
|
+
res.status(415).json({ error: "Only application/json is supported for /v1/logs" });
|
|
180
|
+
return;
|
|
181
|
+
}
|
|
182
|
+
next();
|
|
183
|
+
});
|
|
184
|
+
this.app.use("/v1/logs", express.json({
|
|
185
|
+
limit: "10mb",
|
|
186
|
+
type: (req) => getRequestFormat(req.headers["content-type"]) === "json"
|
|
187
|
+
}));
|
|
144
188
|
logger.debug("[OtlpReceiver] Middleware configured for accepted OTLP formats");
|
|
145
189
|
}
|
|
146
190
|
setupRoutes() {
|
|
@@ -164,6 +208,17 @@ var OTLPReceiver = class {
|
|
|
164
208
|
this.handleProcessingError(error, res);
|
|
165
209
|
}
|
|
166
210
|
});
|
|
211
|
+
this.app.post("/v1/logs", async (req, res) => {
|
|
212
|
+
logger.debug("[OtlpReceiver] Received logs request");
|
|
213
|
+
try {
|
|
214
|
+
const traces = this.parseOTLPLogsJSONRequest(req.body);
|
|
215
|
+
logger.debug(`[OtlpReceiver] Parsed ${traces.length} logs into span records`);
|
|
216
|
+
if (traces.length > 0) await this.persistTraces(this.groupTraces(traces));
|
|
217
|
+
res.status(200).json({ partialSuccess: {} });
|
|
218
|
+
} catch (error) {
|
|
219
|
+
this.handleProcessingError(error, res);
|
|
220
|
+
}
|
|
221
|
+
});
|
|
167
222
|
this.app.get("/health", (_req, res) => {
|
|
168
223
|
logger.debug("[OtlpReceiver] Health check requested");
|
|
169
224
|
res.status(200).json({ status: "ok" });
|
|
@@ -295,6 +350,67 @@ var OTLPReceiver = class {
|
|
|
295
350
|
}
|
|
296
351
|
return traces;
|
|
297
352
|
}
|
|
353
|
+
parseOTLPLogsJSONRequest(body) {
|
|
354
|
+
const traces = [];
|
|
355
|
+
const resourceLogs = body?.resourceLogs ?? [];
|
|
356
|
+
logger.debug(`[OtlpReceiver] Parsing logs request with ${resourceLogs.length} resource logs`);
|
|
357
|
+
for (const resourceLog of resourceLogs) {
|
|
358
|
+
const resourceAttributes = this.parseAttributes(resourceLog.resource?.attributes);
|
|
359
|
+
for (const scopeLog of resourceLog.scopeLogs ?? []) for (const log of scopeLog.logRecords ?? []) try {
|
|
360
|
+
const parsed = this.logRecordToParsedTrace(log, scopeLog, resourceAttributes);
|
|
361
|
+
if (parsed) traces.push(parsed);
|
|
362
|
+
} catch (err) {
|
|
363
|
+
logger.warn(`[OtlpReceiver] Skipping malformed log record in scope ${scopeLog.scope?.name ?? "(unknown)"}: ${err}`);
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
return traces;
|
|
367
|
+
}
|
|
368
|
+
logRecordToParsedTrace(log, scopeLog, resourceAttributes) {
|
|
369
|
+
const rawTraceId = log.traceId ?? getStringAttribute(resourceAttributes, "promptfoo.trace_id");
|
|
370
|
+
if (!rawTraceId) {
|
|
371
|
+
logger.debug(`[OtlpReceiver] Dropping log: no traceId and no ${PROMPTFOO_RESOURCE_ATTR_TRACE_ID} resource attribute (scope=${scopeLog.scope?.name ?? "unknown"}). Ensure TRACEPARENT is propagated or OTEL_RESOURCE_ATTRIBUTES is set by the provider.`);
|
|
372
|
+
return null;
|
|
373
|
+
}
|
|
374
|
+
const traceId = this.convertId(rawTraceId, 32);
|
|
375
|
+
if (traceId.length !== 32 || !/^[0-9a-f]+$/.test(traceId)) {
|
|
376
|
+
logger.debug(`[OtlpReceiver] Dropping log: invalid trace_id shape '${rawTraceId}'`);
|
|
377
|
+
return null;
|
|
378
|
+
}
|
|
379
|
+
const attributes = {
|
|
380
|
+
...resourceAttributes,
|
|
381
|
+
...this.parseAttributes(log.attributes),
|
|
382
|
+
"otel.scope.name": scopeLog.scope?.name,
|
|
383
|
+
"otel.scope.version": scopeLog.scope?.version,
|
|
384
|
+
"otel.log.severity_number": log.severityNumber,
|
|
385
|
+
"otel.log.severity_text": log.severityText
|
|
386
|
+
};
|
|
387
|
+
const bodyValue = log.body ? this.parseAttributeValue(log.body) : void 0;
|
|
388
|
+
const name = resolveLogSpanName(attributes, bodyValue);
|
|
389
|
+
if (LOG_EVENT_NAME_DENYLIST.has(name)) {
|
|
390
|
+
logger.debug(`[OtlpReceiver] Dropping log: event '${name}' is in the denylist`);
|
|
391
|
+
return null;
|
|
392
|
+
}
|
|
393
|
+
if (bodyValue !== void 0) attributes["otel.log.body"] = truncateLogBody(bodyValue);
|
|
394
|
+
const timeNano = log.timeUnixNano ?? log.observedTimeUnixNano;
|
|
395
|
+
const startTime = timeNano ? Number(timeNano) / 1e6 : Date.now();
|
|
396
|
+
const endTime = startTime + LOG_SPAN_DURATION_MS;
|
|
397
|
+
const rawParentSpanId = !!log.spanId && !isZeroSpanId(log.spanId) ? log.spanId : getStringAttribute(resourceAttributes, PROMPTFOO_RESOURCE_ATTR_PARENT_SPAN_ID);
|
|
398
|
+
const parentSpanId = rawParentSpanId ? this.convertId(rawParentSpanId, 16) : void 0;
|
|
399
|
+
const severityIsError = typeof log.severityNumber === "number" && log.severityNumber >= SEVERITY_NUMBER_ERROR;
|
|
400
|
+
return {
|
|
401
|
+
traceId,
|
|
402
|
+
span: {
|
|
403
|
+
spanId: randomSpanId(),
|
|
404
|
+
parentSpanId,
|
|
405
|
+
name,
|
|
406
|
+
startTime,
|
|
407
|
+
endTime,
|
|
408
|
+
attributes,
|
|
409
|
+
statusCode: 1,
|
|
410
|
+
statusMessage: severityIsError ? log.severityText : void 0
|
|
411
|
+
}
|
|
412
|
+
};
|
|
413
|
+
}
|
|
298
414
|
async parseOTLPProtobufRequest(body) {
|
|
299
415
|
const decoded = await decodeExportTraceServiceRequest(body);
|
|
300
416
|
logger.debug(`[OtlpReceiver] Parsing protobuf request with ${decoded.resourceSpans?.length || 0} resource spans`);
|
|
@@ -463,4 +579,4 @@ async function stopOTLPReceiver() {
|
|
|
463
579
|
//#endregion
|
|
464
580
|
export { startOTLPReceiver, stopOTLPReceiver };
|
|
465
581
|
|
|
466
|
-
//# sourceMappingURL=otlpReceiver
|
|
582
|
+
//# sourceMappingURL=otlpReceiver--gTpSagc.js.map
|