promptfoo 0.120.27 → 0.121.2
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-8WOe2nT6.js → ListApp-Du7YVwj5.js} +2 -4
- package/dist/src/accounts-B0pgC1oV.js +206 -0
- package/dist/src/{accounts-DVINui-2.js → accounts-Bm2D8Db9.js} +39 -34
- package/dist/src/{accounts-CPDRAMND.js → accounts-CiBLOnA7.js} +38 -33
- package/dist/src/{accounts-Fl2J3_Fu.cjs → accounts-gtkH-5KX.cjs} +77 -78
- package/dist/src/{agentic-utils-D922n6mm.js → agentic-utils-DS1g3GLF.js} +9 -10
- package/dist/src/{agents-BcsN_BgB.js → agents-9qiOy0ho.js} +16 -12
- package/dist/src/{agents-BXLmVsxR.js → agents-CBr9A01V.js} +37 -37
- package/dist/src/{agents-pMfppv9Z.js → agents-CmvBq8LV.js} +16 -18
- package/dist/src/{agents-hqgSV-3o.js → agents-D__IdAlg.js} +39 -40
- package/dist/src/{agents-BO2n8Z0d.cjs → agents-DbRtpYxR.cjs} +37 -40
- package/dist/src/{agents-BdUTAwi-.js → agents-DgF2zDag.js} +37 -42
- package/dist/src/{agents-DgJf2-ez.cjs → agents-Di9DKPzn.cjs} +16 -17
- package/dist/src/{agents-DNvSH78i.js → agents-cLXA8a_8.js} +17 -19
- package/dist/src/{aimlapi-DtgPI0nE.js → aimlapi-B4rcnZgv.js} +15 -17
- package/dist/src/{aimlapi-BE_Tg9Fl.cjs → aimlapi-BvlNH0gr.cjs} +15 -16
- package/dist/src/{aimlapi-DOib86oE.js → aimlapi-CnkC2HqE.js} +16 -18
- package/dist/src/{aimlapi-DTPACCB1.js → aimlapi-DHJU_kcV.js} +15 -4
- package/dist/src/app/assets/index-4LKxG2CG.js +439 -0
- package/dist/src/app/assets/{index-NCn4eVBv.css → index-C3zcsZFQ.css} +1 -1
- package/dist/src/app/assets/vendor-charts-BnDWwBlI.js +36 -0
- package/dist/src/app/index.html +3 -3
- package/dist/src/app/tsconfig.app.tsbuildinfo +1 -1
- package/dist/src/{audio-BnRUGAm_.js → audio-Bkv46et0.js} +6 -5
- package/dist/src/{audio-Cwo68yZS.cjs → audio-CGMyULza.cjs} +6 -7
- package/dist/src/{audio-MSRki4JU.js → audio-ClI_AFre.js} +6 -8
- package/dist/src/{audio-BRYU0BFo.js → audio-Dz3z7s3J.js} +7 -9
- package/dist/src/{base-pGVmXNl4.cjs → base-CGrhspbK.cjs} +36 -38
- package/dist/src/{base-h961VXYk.js → base-CpjcHe4e.js} +11 -13
- package/dist/src/base-DLKtKMFh.js +193 -0
- package/dist/src/{base-XB2tDJrB.js → base-Dy1V8--Z.js} +11 -13
- package/dist/src/blobs-BDbfYdrJ.js +236 -0
- package/dist/src/{blobs-CR5C4Ihh.js → blobs-CBO20krR.js} +9 -12
- package/dist/src/{blobs-BM_e6hCa.js → blobs-CMHN0Qcz.js} +9 -12
- package/dist/src/{blobs-B-KQAFhX.cjs → blobs-D23XLin-.cjs} +34 -37
- package/dist/src/{cache-jsiwsAJv.js → cache-BVeDlD87.js} +132 -117
- package/dist/src/{cache-CIpsoBZR.js → cache-C4Nxf52C.js} +132 -118
- package/dist/src/cache-CeUpFm3M.cjs +5 -0
- package/dist/src/{cache-BTVYfbka.cjs → cache-Dh5WtQps.cjs} +182 -168
- package/dist/src/cache-i1P6crbO.js +756 -0
- package/dist/src/cache-n-RCJ-hL.js +6 -0
- package/dist/src/{chat-BcPjZXIp.js → chat-BiKyneZl.js} +45 -46
- package/dist/src/{chat-D31K7C4u.cjs → chat-C1Qst7jL.cjs} +20 -21
- package/dist/src/{chat-B84t99NW.js → chat-C2jrdPMx.js} +20 -9
- package/dist/src/{chat-BE44YOc6.cjs → chat-CgF-J-Jj.cjs} +65 -66
- package/dist/src/{chat-DwWifjxi.js → chat-CzkrVDfz.js} +20 -22
- package/dist/src/chat-DJIw17u0.js +766 -0
- package/dist/src/{chat-CcUCysjU.js → chat-DqxYYtWA.js} +45 -46
- package/dist/src/{chat-DZM2GUHO.js → chat-qmatte1u.js} +21 -23
- package/dist/src/{chatkit-D67HS_0b.js → chatkit-65VXf5SR.js} +58 -58
- package/dist/src/{chatkit-DAB_qfzI.js → chatkit-Be-Q-a9F.js} +58 -60
- package/dist/src/{chatkit-Biqb_wsD.js → chatkit-BxFvW8KY.js} +58 -60
- package/dist/src/{chatkit-PGG4ZYIn.cjs → chatkit-DKyPi1Gs.cjs} +58 -60
- package/dist/src/chunk-DEq-mXcV.js +15 -0
- package/dist/src/chunk-DRamLcfz.js +16 -0
- package/dist/src/{claude-agent-sdk-SVM6AdBu.js → claude-agent-sdk-Apiy0iaz.js} +31 -31
- package/dist/src/{claude-agent-sdk-C-IOTPfo.js → claude-agent-sdk-D2bJee9S.js} +31 -29
- package/dist/src/{claude-agent-sdk-C9SiaQub.cjs → claude-agent-sdk-D9Z5Pr9X.cjs} +31 -28
- package/dist/src/{claude-agent-sdk-CiluSyW1.js → claude-agent-sdk-DfCoW0E6.js} +33 -20
- package/dist/src/cloud-BBh91EUK.js +4 -0
- package/dist/src/{cloud-CZ-q9Ier.js → cloud-C0dlstV_.js} +7 -9
- package/dist/src/{cloudflare-ai-BahKHyhh.js → cloudflare-ai-8TDxHR0x.js} +16 -18
- package/dist/src/{cloudflare-ai-v_qZD6_q.js → cloudflare-ai-BxAGvfju.js} +17 -19
- package/dist/src/{cloudflare-ai-Dfahv5SY.cjs → cloudflare-ai-CknbZ5LJ.cjs} +16 -17
- package/dist/src/{cloudflare-ai-Dxyt50Nl.js → cloudflare-ai-g7PB6VHR.js} +16 -4
- package/dist/src/{cloudflare-gateway-Bi_FpOFy.js → cloudflare-gateway-B9HWA5wf.js} +23 -23
- package/dist/src/{cloudflare-gateway-BPWoZIzJ.cjs → cloudflare-gateway-BSnDmHYo.cjs} +21 -22
- package/dist/src/{cloudflare-gateway-C0guUNwk.js → cloudflare-gateway-CKDb4dJ8.js} +26 -14
- package/dist/src/{cloudflare-gateway-btS7h1OZ.js → cloudflare-gateway-CP9QEWYS.js} +21 -25
- package/dist/src/{codex-sdk-DSxAnbfT.js → codex-sdk-C6UMlxwV.js} +28 -29
- package/dist/src/{codex-sdk-IYVi9fuM.js → codex-sdk-DUwKWezN.js} +28 -27
- package/dist/src/{codex-sdk-DulY0ZRq.js → codex-sdk-GGAw0qbD.js} +28 -29
- package/dist/src/{codex-sdk-DFKMtAyf.cjs → codex-sdk-fAO0c3yA.cjs} +28 -29
- package/dist/src/{cometapi-DzrR3SR_.js → cometapi-BL9yvj_f.js} +16 -4
- package/dist/src/{cometapi-DIO64tf4.cjs → cometapi-C4xSqeID.cjs} +21 -22
- package/dist/src/{cometapi-C9EEpJzT.js → cometapi-CUQq3H_a.js} +21 -24
- package/dist/src/{cometapi-DkNBMk0G.js → cometapi-DFNiKmSz.js} +17 -19
- package/dist/src/{completion-CG29bfKX.js → completion-5MzrpJxT.js} +11 -13
- package/dist/src/{completion-CCRT4kX1.cjs → completion-CM6oK8PS.cjs} +21 -23
- package/dist/src/{completion-Bgf1VJoq.js → completion-DZ083F31.js} +11 -13
- package/dist/src/completion-qRoZAYRB.js +120 -0
- package/dist/src/{createHash-Dw_iLu31.js → createHash-CTQmL3G2.js} +2 -3
- package/dist/src/{createHash-CYQy4YeL.cjs → createHash-CfZSc0b4.cjs} +13 -14
- package/dist/src/{createHash-CJcfskIZ.js → createHash-Da8fMwqB.js} +2 -3
- package/dist/src/createHash-DmPQkvBh.js +15 -0
- package/dist/src/{docker-D-ayp2FW.js → docker-Bb5dcxr8.js} +18 -20
- package/dist/src/{docker-B81N0t4e.js → docker-BvfL2BrW.js} +19 -21
- package/dist/src/{docker-DNcLR4Ig.cjs → docker-DcF2pRrj.cjs} +18 -19
- package/dist/src/{docker-egERKxCF.js → docker-ExVyLp0S.js} +18 -7
- package/dist/src/entrypoint.js +2 -3
- package/dist/src/{errors-DnGCbnx8.js → errors-P6ll7XSJ.js} +2 -2
- package/dist/src/{esm-B9dPm_BF.js → esm-C03C-mv3.js} +17 -20
- package/dist/src/{esm-D2pZ87fL.js → esm-CaIwzWR5.js} +18 -21
- package/dist/src/esm-Cd1AjG1D.js +379 -0
- package/dist/src/{esm-Ct-Joyue.cjs → esm-CnNt7sI4.cjs} +47 -49
- package/dist/src/eval-B3r2CVXr.js +15 -0
- package/dist/src/{eval-C-Nr6wX_.js → eval-Dg2nG4v2.js} +47 -54
- package/dist/src/evalResult-5xwYnECe.js +12 -0
- package/dist/src/evalResult-71lY93Kj.cjs +10 -0
- package/dist/src/{evalResult-DXMWJ3sx.js → evalResult-BBRNtX4I.js} +10 -11
- package/dist/src/{evalResult-4BzI2tmj.js → evalResult-BDMqrapS.js} +16 -12
- package/dist/src/evalResult-Dx5P5cIv.js +10 -0
- package/dist/src/{evalResult-CX8wQecI.cjs → evalResult-fuaI8HkH.cjs} +20 -21
- package/dist/src/{evaluator-8aGyV12L.js → evaluator-BhoWwp5b.js} +211 -235
- package/dist/src/evaluator-Jx6bRZV6.js +36 -0
- package/dist/src/{extractor-V5x_m1i0.js → extractor-C0EVHewb.js} +22 -24
- package/dist/src/extractor-D25qpmGX.js +374 -0
- package/dist/src/{extractor-CD5yKL-G.js → extractor-DReVID0K.js} +22 -24
- package/dist/src/{extractor-C031XmTA.cjs → extractor-pYLLi3wS.cjs} +37 -39
- package/dist/src/{fetch-BmbD-v1L.cjs → fetch-BPkYtG8K.cjs} +244 -277
- package/dist/src/fetch-BxNb_Lp3.js +5 -0
- package/dist/src/{fetch-D3OHf-lV.js → fetch-Cwxnd8zz.js} +36 -44
- package/dist/src/{fetch-CXZI9RRr.js → fetch-Dxpd4_sr.js} +23 -35
- package/dist/src/fetch-HaqdX7U1.js +780 -0
- package/dist/src/{fileExtensions-ePDqouxn.js → fileExtensions-DnqA1y9x.js} +2 -2
- package/dist/src/{fileExtensions-BpuMmaFL.js → fileExtensions-Ds-foDzt.js} +2 -2
- package/dist/src/fileExtensions-LcDYkU4v.js +85 -0
- package/dist/src/{fileExtensions-DkJYkWUy.cjs → fileExtensions-bYh77CN8.cjs} +27 -28
- package/dist/src/{formatDuration-CdevI3An.js → formatDuration-DgBVMN65.js} +2 -2
- package/dist/src/{genaiTracer-Ce19n68P.js → genaiTracer-70Z8BIuV.js} +2 -3
- package/dist/src/{genaiTracer-CqNnnXrE.js → genaiTracer-C1rxGO8Q.js} +2 -3
- package/dist/src/genaiTracer-D3fD9dNV.js +256 -0
- package/dist/src/{genaiTracer-Dres3qrN.cjs → genaiTracer-DN4dQywX.cjs} +13 -14
- package/dist/src/{graders--1y2u9HO.js → graders-BTeBGqjJ.js} +349 -397
- package/dist/src/graders-B_pgMLS2.js +34 -0
- package/dist/src/{graders-DTeBrzWp.js → graders-Bj_Odv7c.js} +349 -397
- package/dist/src/graders-DErokPDO.cjs +32 -0
- package/dist/src/graders-DP7KFFo-.js +13466 -0
- package/dist/src/graders-DR_uNe54.js +32 -0
- package/dist/src/{graders-DohM2dir.cjs → graders-DU49_J8Y.cjs} +684 -732
- package/dist/src/graders-w3176Wz-.js +32 -0
- package/dist/src/{image-B0U4Hqll.js → image-B02ogr_b.js} +7 -9
- package/dist/src/{image-DmE-niFE.js → image-B0h9VEMc.js} +6 -5
- package/dist/src/{image-CuKHuccK.cjs → image-BLmROtN3.cjs} +29 -30
- package/dist/src/{image-DNEIf_aI.js → image-Bb4vWQLM.js} +6 -8
- package/dist/src/{image-DpKl2F15.cjs → image-C1madmKh.cjs} +6 -7
- package/dist/src/{image-C3wHC9_h.js → image-CHfWvljl.js} +9 -10
- package/dist/src/{image-O1u4bCFg.js → image-DS-o-0ph.js} +9 -10
- package/dist/src/image-Dpxa1Jt6.js +257 -0
- package/dist/src/index.cjs +615 -695
- package/dist/src/index.d.cts +271 -7
- package/dist/src/index.d.ts +271 -3
- package/dist/src/index.js +580 -664
- package/dist/src/{interactiveCheck-Bxj1Swex.js → interactiveCheck-BgLZUIt3.js} +7 -8
- package/dist/src/{invariant-DT20jrBd.js → invariant-BtWWVVhl.js} +2 -2
- package/dist/src/{invariant-1pAf2CD1.js → invariant-Ddh24eXh.js} +2 -2
- package/dist/src/{invariant-CKcJAQ6M.cjs → invariant-kfQ8Bu82.cjs} +7 -8
- package/dist/src/invariant-vgHWClmd.js +25 -0
- package/dist/src/{knowledgeBase-CEzQobWX.js → knowledgeBase-B3OoKIej.js} +14 -9
- package/dist/src/{knowledgeBase-Be_zyW4L.js → knowledgeBase-CYTLHOt1.js} +16 -16
- package/dist/src/{knowledgeBase-BZ41IFwq.js → knowledgeBase-D33Ty2l6.js} +14 -18
- package/dist/src/{knowledgeBase-D-5BMXlr.cjs → knowledgeBase-DOO_BM9b.cjs} +14 -15
- package/dist/src/{litellm-DnbRJ2if.js → litellm-AaeZcZQF.js} +18 -19
- package/dist/src/{litellm-hUSNM_M2.cjs → litellm-I_hbp_dc.cjs} +17 -17
- package/dist/src/{litellm-CRDqPhNI.js → litellm-NbjknEh6.js} +17 -18
- package/dist/src/{litellm-9vR8zpfU.js → litellm-TrljxD9G.js} +17 -5
- package/dist/src/{logger-CG1uZPbQ.js → logger-CT3IKMKA.js} +10 -29
- package/dist/src/{logger-B7sBeGa0.cjs → logger-Cp1GPUjj.cjs} +152 -180
- package/dist/src/logger-DLcq4dWf.js +713 -0
- package/dist/src/{logger-LSBxlt7a.js → logger-KkObSCzq.js} +13 -31
- package/dist/src/{luma-ray-4blv9iZ2.js → luma-ray-BS2_tY8L.js} +22 -21
- package/dist/src/{luma-ray-drvgdpP9.js → luma-ray-DDsjcgZZ.js} +20 -13
- package/dist/src/{luma-ray-Hm3d6VJE.cjs → luma-ray-Due0n7di.cjs} +20 -21
- package/dist/src/{luma-ray-B2__8lYH.js → luma-ray-f6I2fft-.js} +20 -23
- package/dist/src/main.js +1170 -1321
- package/dist/src/{messages-Uee41Mj5.js → messages-BS17jdMx.js} +22 -24
- package/dist/src/{messages-XhiwCbi4.cjs → messages-Bs1kC7P4.cjs} +32 -34
- package/dist/src/{messages-CGPPidQr.js → messages-D0lx5qK7.js} +22 -24
- package/dist/src/messages-ZJk778GH.js +240 -0
- package/dist/src/{meteor-BYykdXrV.js → meteor-44VjEACX.js} +3 -4
- package/dist/src/{meteor-CsopaHrH.js → meteor-D-SotUw9.js} +3 -4
- package/dist/src/{meteor-e-E-2vVl.cjs → meteor-DLZZ3osF.cjs} +3 -4
- package/dist/src/{meteor-C8lGP6P4.js → meteor-DUiCJRC-.js} +3 -4
- package/dist/src/{modelslab-yKz-ZNB4.js → modelslab-Bmni6skY.js} +17 -10
- package/dist/src/{modelslab-E9gO-bYd.js → modelslab-Bx9IrZfS.js} +18 -20
- package/dist/src/{modelslab-lUVW0cmB.cjs → modelslab-CoUX6Jc_.cjs} +17 -18
- package/dist/src/{modelslab-ClBkr8_9.js → modelslab-DRb74SP4.js} +17 -19
- package/dist/src/{nova-reel-Dk8jNpId.js → nova-reel-BfPq-0Yk.js} +20 -13
- package/dist/src/{nova-reel-D8CuO6QH.cjs → nova-reel-C_QM18Xn.cjs} +20 -21
- package/dist/src/{nova-reel-u2eF2Cxm.js → nova-reel-D_W1tjMH.js} +22 -21
- package/dist/src/{nova-reel-P9bwvtYX.js → nova-reel-bgjxilYW.js} +20 -23
- package/dist/src/{nova-sonic-CK2rAiKi.js → nova-sonic-CFb5GYhg.js} +30 -26
- package/dist/src/{nova-sonic-BaqWlkds.js → nova-sonic-DIGQNR07.js} +30 -31
- package/dist/src/{nova-sonic-yZapPLv7.js → nova-sonic-De1HW5fD.js} +31 -32
- package/dist/src/{nova-sonic-Ds1C-dpm.cjs → nova-sonic-zfcljeRp.cjs} +30 -31
- package/dist/src/{openai-DUFopMrH.cjs → openai-Cuif0GEt.cjs} +8 -9
- package/dist/src/{openai-PblZ3jUE.js → openai-DElQ-fPX.js} +3 -4
- package/dist/src/{openai-CcN1B8Sb.js → openai-DhbB7eWK.js} +3 -4
- package/dist/src/openai-j-sE2O7r.js +44 -0
- package/dist/src/{openclaw-B6qqDr_u.cjs → openclaw-CSugPYAr.cjs} +188 -130
- package/dist/src/{openclaw-A-3_loM7.js → openclaw-DiSz3I5L.js} +180 -109
- package/dist/src/{openclaw-a3lylB-V.js → openclaw-DuvJKEW5.js} +178 -124
- package/dist/src/{openclaw-COn6QzDi.js → openclaw-tiVYRtr-.js} +178 -122
- package/dist/src/opencode-sdk-0j6rTWNb.js +562 -0
- package/dist/src/opencode-sdk-B3CWY9h_.js +560 -0
- package/dist/src/opencode-sdk-BL764Jdi.cjs +564 -0
- package/dist/src/opencode-sdk-C2y6UkP2.js +560 -0
- package/dist/src/{otlpReceiver-oyf5wLGC.js → otlpReceiver-C99PPb48.js} +53 -51
- package/dist/src/{otlpReceiver-lXsYVbpj.cjs → otlpReceiver-CGq6LspY.cjs} +53 -55
- package/dist/src/{otlpReceiver-94URx7UW.js → otlpReceiver-CdNBdbsk.js} +53 -55
- package/dist/src/{otlpReceiver-BmmTiMjA.js → otlpReceiver-D89fR-rC.js} +53 -55
- package/dist/src/{providerRegistry-Cq_JK_CJ.js → providerRegistry-B0RUOLI_.js} +7 -8
- package/dist/src/{providerRegistry-DSSHjMKf.js → providerRegistry-CD8MEar9.js} +7 -8
- package/dist/src/{providerRegistry-CvHEVJad.cjs → providerRegistry-Civky8Ar.cjs} +12 -13
- package/dist/src/providerRegistry-DM8rZYol.js +45 -0
- package/dist/src/providers-B7V0njNs.js +32 -0
- package/dist/src/providers-BEwbhv0X.js +30 -0
- package/dist/src/{providers-Iil64vk9.js → providers-BlqUifFg.js} +1543 -1676
- package/dist/src/providers-CH3C7zf7.js +30 -0
- package/dist/src/{providers-DHbjzW2e.cjs → providers-CgKOSgTR.cjs} +1896 -2029
- package/dist/src/providers-D8lF1sqW.js +33246 -0
- package/dist/src/{providers-BnFpbY_s.js → providers-Dk_6ocUX.js} +1536 -1669
- package/dist/src/providers-zyB6k_38.cjs +31 -0
- package/dist/src/{pythonUtils-CcT5LH1M.js → pythonUtils-C3py6GC1.js} +18 -19
- package/dist/src/{pythonUtils-DBbuI3QJ.cjs → pythonUtils-CTU3Y3lw.cjs} +42 -43
- package/dist/src/{pythonUtils-hZ8LeQLv.js → pythonUtils-D5nxkQ0P.js} +18 -19
- package/dist/src/pythonUtils-D6fwaDSg.js +249 -0
- package/dist/src/{quiverai-BuI0tE39.js → quiverai-BbOUOn2L.js} +8 -7
- package/dist/src/{quiverai-DCGSZt4U.js → quiverai-CIaELU_m.js} +8 -10
- package/dist/src/{quiverai-DiMVJQDz.cjs → quiverai-PdShCPox.cjs} +8 -9
- package/dist/src/{quiverai-fQNkExW4.js → quiverai-uH-dcTIr.js} +9 -11
- package/dist/src/{render-Dj1smHEb.js → render-Drod8m7K.js} +4 -5
- package/dist/src/responses-CB2jwoAr.js +660 -0
- package/dist/src/{responses-ghR3IOfy.cjs → responses-D8SBTL64.cjs} +39 -42
- package/dist/src/{responses-DOAFFENS.js → responses-DIR9Ud3j.js} +24 -27
- package/dist/src/{responses-CxzoQoBe.js → responses-WNGNYe3K.js} +24 -27
- package/dist/src/rubyUtils-BUHu6PhO.js +5 -0
- package/dist/src/{rubyUtils-CwbGmgYN.js → rubyUtils-BUVePouc.js} +27 -20
- package/dist/src/rubyUtils-BcuGX77l.js +222 -0
- package/dist/src/{rubyUtils-DudlFZed.js → rubyUtils-Boc4HZzX.js} +18 -19
- package/dist/src/rubyUtils-CP42kMvq.cjs +4 -0
- package/dist/src/{rubyUtils-C8MhKGHb.cjs → rubyUtils-DhCAlxZr.cjs} +48 -50
- package/dist/src/{sagemaker-gmskuyre.js → sagemaker-CNBxx5CJ.js} +75 -70
- package/dist/src/{sagemaker-CcxhlOAR.js → sagemaker-CemTFp2h.js} +75 -79
- package/dist/src/{sagemaker-77zbJ2Q2.cjs → sagemaker-Cl28mZU2.cjs} +75 -76
- package/dist/src/{sagemaker-DuM71dVU.js → sagemaker-YSyBXQQh.js} +77 -77
- package/dist/src/{scanner-DJYiSXQj.js → scanner-BsBlNXNn.js} +100 -121
- package/dist/src/server/index.js +5520 -67427
- package/dist/src/{server-B5v33lvE.cjs → server-C_7Ax-hA.cjs} +57 -67
- package/dist/src/{server-BJ4m4f1D.js → server-CqzrVGpF.js} +26 -29
- package/dist/src/server-CuxBbeSY.js +229 -0
- package/dist/src/server-DA4Cyrrq.js +7 -0
- package/dist/src/server-Dulb-4-K.cjs +5 -0
- package/dist/src/{server-RV_i_YX5.js → server-VWgWb00X.js} +19 -24
- package/dist/src/{signal-BW33JuId.js → signal-4U3mfRvL.js} +9 -11
- package/dist/src/{slack-DEURelTy.cjs → slack-BmVAVGaK.cjs} +7 -8
- package/dist/src/{slack-BQYeW9L3.js → slack-DCUPTzS2.js} +8 -8
- package/dist/src/{slack-BB6yuZzp.js → slack-DOdy_kyv.js} +7 -8
- package/dist/src/{slack-2pRrhhgJ.js → slack-DXMKtA-f.js} +7 -9
- package/dist/src/store-CXGFv4aR.js +228 -0
- package/dist/src/store-CXS-Q_91.js +6 -0
- package/dist/src/{store-D7CgQzAR.cjs → store-DLlFCC4h.cjs} +44 -45
- package/dist/src/{store-DJNsD1iC.js → store-DXilxTl-.js} +40 -36
- package/dist/src/{store-s3SftUwF.js → store-Dim__MDd.js} +34 -35
- package/dist/src/store-eYkaKMwq.cjs +5 -0
- package/dist/src/{tables-DfTsNN7X.js → tables-6YKwjN9-.js} +19 -21
- package/dist/src/tables-DLJPUdUE.js +288 -0
- package/dist/src/{tables-BKTmd6u7.cjs → tables-DPi7wKeM.cjs} +89 -91
- package/dist/src/{tables-DMegD0Xf.js → tables-gftXzE9I.js} +21 -23
- package/dist/src/telemetry-BpMfhthR.cjs +5 -0
- package/dist/src/{telemetry--WAdAfVi.js → telemetry-CMrFgtPB.js} +11 -13
- package/dist/src/telemetry-Cps3mIU-.js +171 -0
- package/dist/src/{telemetry-DQgVBCAb.cjs → telemetry-DaX14Chu.cjs} +21 -24
- package/dist/src/{telemetry-BedSm-bZ.js → telemetry-Dthj_BbD.js} +17 -14
- package/dist/src/telemetry-Dw38hanS.js +7 -0
- package/dist/src/{text-oiSbwSOI.js → text-B_UCRPp2.js} +2 -2
- package/dist/src/{text-oKzCBnK6.cjs → text-CW1cyrwj.cjs} +12 -13
- package/dist/src/{text-B_IrO4GZ.js → text-Db-Wt2u2.js} +2 -2
- package/dist/src/text-TIv0QYnd.js +22 -0
- package/dist/src/{tokenUsageUtils-FZd5O_4A.js → tokenUsageUtils-BDGe-iyI.js} +2 -2
- package/dist/src/{tokenUsageUtils-DmZSD2eU.js → tokenUsageUtils-DflFMjS0.js} +2 -2
- package/dist/src/tokenUsageUtils-NYT-WKS6.js +138 -0
- package/dist/src/{tokenUsageUtils-CXhxVj72.cjs → tokenUsageUtils-bVa1ga6f.cjs} +32 -33
- package/dist/src/{transcription-mYS9vd5v.js → transcription-BNYURcXg.js} +14 -7
- package/dist/src/{transcription-X2-B4vkX.js → transcription-B_OdaHp7.js} +14 -16
- package/dist/src/{transcription-BO1AHegO.cjs → transcription-NLVG9MT1.cjs} +14 -15
- package/dist/src/{transcription-lzBLiTFJ.js → transcription-s6A-bNrZ.js} +15 -17
- package/dist/src/{transform-B1Hi5lWS.cjs → transform-CzK1Q0zl.cjs} +24 -26
- package/dist/src/{transform-DeGlxb0D.js → transform-D5HsjduX.js} +39 -47
- package/dist/src/{transform-CYDILYDe.js → transform-DECvGmzp.js} +15 -13
- package/dist/src/transform-DTGDnAzW.js +6 -0
- package/dist/src/{transform-BEgStbHK.js → transform-DilY9wbS.js} +10 -12
- package/dist/src/{transform-D5PjiWiZ.cjs → transform-DuHvhZpj.cjs} +179 -187
- package/dist/src/transform-aa6tmVpZ.js +216 -0
- package/dist/src/transform-m3qNw4KP.cjs +5 -0
- package/dist/src/transform-uAytVuyX.js +1506 -0
- package/dist/src/{transform-Dfl89yi4.js → transform-vNucnNr0.js} +39 -47
- package/dist/src/{transformersAvailability-SZnTS3pJ.js → transformersAvailability-CEVM2GNQ.js} +2 -2
- package/dist/src/{transformersAvailability-D-glmEy7.cjs → transformersAvailability-CwayUSlh.cjs} +2 -3
- package/dist/src/{transformersAvailability-CjeFXhuJ.js → transformersAvailability-D6c6ROpT.js} +2 -2
- package/dist/src/{types-DWNf48sT.cjs → types-C_7nyzr1.cjs} +538 -574
- package/dist/src/{types-CXQduE9o.js → types-Cbd8uOMq.js} +68 -100
- package/dist/src/types-CzW2QFyi.js +3288 -0
- package/dist/src/{types-C5hEkb-x.js → types-DmyIJ-sR.js} +63 -99
- package/dist/src/{util-CoQjmE3u.js → util-B3xGByQh.js} +4 -5
- package/dist/src/{util-aLhtl3fe.cjs → util-B9vlHIIh.cjs} +208 -223
- package/dist/src/{util-Du96oyYS.js → util-BHGHw5G1.js} +4 -5
- package/dist/src/{util-DQ984syk.js → util-BRYkYPTd.js} +36 -51
- package/dist/src/{util-D9eLdGfa.js → util-BV4XUC0n.js} +5 -6
- package/dist/src/util-Bv6uGDfH.js +293 -0
- package/dist/src/{util-1wWM599Z.cjs → util-BzMcevZc.cjs} +50 -51
- package/dist/src/{util-_h4pVqrz.js → util-C1CeHl-P.js} +36 -51
- package/dist/src/{util-Bm_-UMD_.js → util-CMy69ZgQ.js} +5 -6
- package/dist/src/{util-CyUdMzV0.cjs → util-DGNOS1db.cjs} +34 -35
- package/dist/src/util-Dnmk2mBQ.js +599 -0
- package/dist/src/util-ZzmqNPlg.js +1426 -0
- package/dist/src/{utils-BjLy-Q72.cjs → utils-Cz9qXqII.cjs} +29 -32
- package/dist/src/{utils-CFMn2yHW.js → utils-XiOAgly5.js} +4 -7
- package/dist/src/utils-dLokC-eR.js +94 -0
- package/dist/src/{utils-DvWMzuMx.js → utils-f2-Moju7.js} +4 -7
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +38 -38
- package/dist/src/app/assets/index-B2D0bCSI.js +0 -439
- package/dist/src/app/assets/vendor-charts-CCl15Imd.js +0 -36
- package/dist/src/cache-ChPcurj7.js +0 -6
- package/dist/src/cache-VVu_W-yg.js +0 -8
- package/dist/src/cache-YLNCFEM2.cjs +0 -6
- package/dist/src/chunk-DHDDz29n.js +0 -22
- package/dist/src/chunk-FhC4c-0y.js +0 -21
- package/dist/src/cloud-BndfXy4H.js +0 -5
- package/dist/src/eval-BhHvMY82.js +0 -17
- package/dist/src/evalResult-Dq2gFNQY.js +0 -12
- package/dist/src/evalResult-nmcP5VKH.cjs +0 -12
- package/dist/src/evalResult-trqZjVYh.js +0 -14
- package/dist/src/evaluator-CnfPstzT.js +0 -39
- package/dist/src/fetch-IDPDue6F.cjs +0 -4
- package/dist/src/fetch-hKJ-It8q.js +0 -6
- package/dist/src/fetch-ouKnrWK-.js +0 -4
- package/dist/src/graders-CQn7WUsd.cjs +0 -34
- package/dist/src/graders-DC6QAbpW.js +0 -35
- package/dist/src/graders-DUWz3Y7j.js +0 -37
- package/dist/src/opencode-sdk-4bL9n-Gk.js +0 -382
- package/dist/src/opencode-sdk-BfC2zWcR.js +0 -376
- package/dist/src/opencode-sdk-DMJyuwMg.js +0 -380
- package/dist/src/opencode-sdk-Da-9adza.cjs +0 -383
- package/dist/src/providers-CsXB2Ix-.js +0 -35
- package/dist/src/providers-DO8ltjLC.js +0 -33
- package/dist/src/providers-Dtq-xnXd.cjs +0 -33
- package/dist/src/rubyUtils-BUbcND2f.js +0 -6
- package/dist/src/rubyUtils-Cr55X_KE.js +0 -5
- package/dist/src/rubyUtils-DlIiqoYo.cjs +0 -5
- package/dist/src/server-C2eQH4Gu.js +0 -6
- package/dist/src/server-CXWycu7H.cjs +0 -6
- package/dist/src/server-Q6OGlxxT.js +0 -8
- package/dist/src/store-B3EDO9Q3.js +0 -7
- package/dist/src/store-Dl9F8aw5.js +0 -6
- package/dist/src/store-SnrGrlt9.cjs +0 -6
- package/dist/src/telemetry-BGhiPZtl.js +0 -8
- package/dist/src/telemetry-CFfiYan6.cjs +0 -6
- package/dist/src/telemetry-DHzEduxX.js +0 -6
- package/dist/src/transform-C1x1ZlMQ.cjs +0 -6
- package/dist/src/transform-DYHjFmQu.js +0 -8
- package/dist/src/transform-rmwJT5JQ.js +0 -7
- package/dist/src/transformersAvailability-eJooj0gX.js +0 -35
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { C as getEnvString, O as
|
|
3
|
-
import { S as transformTools, f as REQUEST_TIMEOUT_MS, x as transformToolChoice, y as parseChatPrompt } from "./fetch-
|
|
4
|
-
import { a as fetchWithCache } from "./cache-
|
|
5
|
-
import { i as isJavascriptFile } from "./fileExtensions-
|
|
6
|
-
import { g as maybeLoadToolsFromExternalFile, h as maybeLoadResponseFormatFromExternalFile, m as maybeLoadFromExternalFileWithVars, x as renderVarsInObject } from "./util-
|
|
7
|
-
import { r as importModule } from "./esm-
|
|
8
|
-
import { n as withGenAISpan } from "./genaiTracer-
|
|
9
|
-
import { C as applyQueryParams, D as renderAuthVars, E as getOAuthTokenWithExpiry,
|
|
10
|
-
import { t as OpenAiGenericProvider } from "./openai-
|
|
11
|
-
import { a as calculateOpenAICost, c as getTokenUsage, t as OPENAI_CHAT_MODELS } from "./util-
|
|
2
|
+
import { C as getEnvString, O as state, S as getEnvInt, b as getEnvBool, o as logger, x as getEnvFloat } from "./logger-KkObSCzq.js";
|
|
3
|
+
import { S as transformTools, f as REQUEST_TIMEOUT_MS, x as transformToolChoice, y as parseChatPrompt } from "./fetch-Dxpd4_sr.js";
|
|
4
|
+
import { a as fetchWithCache } from "./cache-BVeDlD87.js";
|
|
5
|
+
import { i as isJavascriptFile } from "./fileExtensions-Ds-foDzt.js";
|
|
6
|
+
import { g as maybeLoadToolsFromExternalFile, h as maybeLoadResponseFormatFromExternalFile, m as maybeLoadFromExternalFileWithVars, x as renderVarsInObject } from "./util-C1CeHl-P.js";
|
|
7
|
+
import { r as importModule } from "./esm-C03C-mv3.js";
|
|
8
|
+
import { n as withGenAISpan } from "./genaiTracer-C1rxGO8Q.js";
|
|
9
|
+
import { C as applyQueryParams, D as renderAuthVars, E as getOAuthTokenWithExpiry, T as getAuthQueryParams, i as transformMCPToolsToOpenAi, w as getAuthHeaders } from "./transform-D5HsjduX.js";
|
|
10
|
+
import { t as OpenAiGenericProvider } from "./openai-DhbB7eWK.js";
|
|
11
|
+
import { a as calculateOpenAICost, c as getTokenUsage, t as OPENAI_CHAT_MODELS } from "./util-CMy69ZgQ.js";
|
|
12
12
|
import path from "path";
|
|
13
13
|
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
|
|
14
|
-
|
|
15
14
|
//#region src/util/finishReason.ts
|
|
16
15
|
/**
|
|
17
16
|
* Mapping of provider-specific finish/stop reasons to standardized OpenAI-compatible values.
|
|
@@ -80,7 +79,6 @@ function normalizeFinishReason(raw) {
|
|
|
80
79
|
const key = trimmed.toLowerCase();
|
|
81
80
|
return FINISH_REASON_MAP[key] ?? key;
|
|
82
81
|
}
|
|
83
|
-
|
|
84
82
|
//#endregion
|
|
85
83
|
//#region src/providers/mcp/client.ts
|
|
86
84
|
/**
|
|
@@ -129,7 +127,7 @@ var MCPClient = class {
|
|
|
129
127
|
if (!this.config.enabled) return;
|
|
130
128
|
const servers = this.config.servers || (this.config.server ? [this.config.server] : []);
|
|
131
129
|
for (const server of servers) {
|
|
132
|
-
|
|
130
|
+
logger.info(`connecting to server ${server.name || server.url || server.path || "default"}`);
|
|
133
131
|
await this.connectToServer(server);
|
|
134
132
|
}
|
|
135
133
|
}
|
|
@@ -168,7 +166,7 @@ var MCPClient = class {
|
|
|
168
166
|
let authHeaders = {};
|
|
169
167
|
if (renderedServer.auth?.type === "oauth") {
|
|
170
168
|
const oauthAuth = renderedServer.auth;
|
|
171
|
-
|
|
169
|
+
logger.debug("[MCP] Fetching OAuth token");
|
|
172
170
|
const { accessToken, expiresAt } = await getOAuthTokenWithExpiry(oauthAuth, server.url);
|
|
173
171
|
authHeaders = { Authorization: `Bearer ${accessToken}` };
|
|
174
172
|
this.oauthConfigs.set(serverKey, {
|
|
@@ -191,18 +189,18 @@ var MCPClient = class {
|
|
|
191
189
|
const { StreamableHTTPClientTransport } = await import("@modelcontextprotocol/sdk/client/streamableHttp.js");
|
|
192
190
|
transport = new StreamableHTTPClientTransport(new URL(serverUrl), hasOptions ? transportOptions : void 0);
|
|
193
191
|
await client.connect(transport, requestOptions);
|
|
194
|
-
|
|
192
|
+
logger.debug("Connected using Streamable HTTP transport");
|
|
195
193
|
} catch (error) {
|
|
196
|
-
|
|
194
|
+
logger.debug(`Failed to connect to MCP server with Streamable HTTP transport ${serverKey}: ${error}`);
|
|
197
195
|
const { SSEClientTransport } = await import("@modelcontextprotocol/sdk/client/sse.js");
|
|
198
196
|
transport = new SSEClientTransport(new URL(serverUrl), hasOptions ? transportOptions : void 0);
|
|
199
197
|
await client.connect(transport, requestOptions);
|
|
200
|
-
|
|
198
|
+
logger.debug("Connected using SSE transport");
|
|
201
199
|
}
|
|
202
200
|
} else throw new Error("Either command+args or path or url must be specified for MCP server");
|
|
203
201
|
if (this.config.pingOnConnect) try {
|
|
204
202
|
await client.ping(requestOptions);
|
|
205
|
-
|
|
203
|
+
logger.debug(`MCP server ${serverKey} ping successful`);
|
|
206
204
|
} catch (pingError) {
|
|
207
205
|
const pingErrorMessage = pingError instanceof Error ? pingError.message : String(pingError);
|
|
208
206
|
throw new Error(`MCP server ${serverKey} ping failed: ${pingErrorMessage}`);
|
|
@@ -221,7 +219,7 @@ var MCPClient = class {
|
|
|
221
219
|
if (this.isVerboseEnabled) console.log(`Connected to MCP server ${serverKey} with tools:`, filteredTools.map((tool) => tool.name));
|
|
222
220
|
} catch (error) {
|
|
223
221
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
224
|
-
if (this.isDebugEnabled)
|
|
222
|
+
if (this.isDebugEnabled) logger.error(`Failed to connect to MCP server ${serverKey}: ${errorMessage}`);
|
|
225
223
|
throw new Error(`Failed to connect to MCP server ${serverKey}: ${errorMessage}`);
|
|
226
224
|
}
|
|
227
225
|
}
|
|
@@ -237,23 +235,23 @@ var MCPClient = class {
|
|
|
237
235
|
if (!oauthConfig) return;
|
|
238
236
|
const now = Date.now();
|
|
239
237
|
const expiresAt = this.tokenExpiresAt.get(serverKey);
|
|
240
|
-
if (expiresAt && now +
|
|
241
|
-
|
|
238
|
+
if (expiresAt && now + 6e4 < expiresAt) {
|
|
239
|
+
logger.debug(`[MCP] Token for ${serverKey} still valid, no refresh needed`);
|
|
242
240
|
return;
|
|
243
241
|
}
|
|
244
242
|
const existingRefresh = this.tokenRefreshPromise.get(serverKey);
|
|
245
243
|
if (existingRefresh) {
|
|
246
|
-
|
|
244
|
+
logger.debug(`[MCP] Token refresh already in progress for ${serverKey}, waiting...`);
|
|
247
245
|
try {
|
|
248
246
|
await existingRefresh;
|
|
249
247
|
const newExpiresAt = this.tokenExpiresAt.get(serverKey);
|
|
250
|
-
if (newExpiresAt && Date.now() +
|
|
251
|
-
|
|
248
|
+
if (newExpiresAt && Date.now() + 6e4 < newExpiresAt) return;
|
|
249
|
+
logger.debug(`[MCP] Token expired while waiting for ${serverKey}, refreshing again...`);
|
|
252
250
|
} catch {
|
|
253
|
-
|
|
251
|
+
logger.debug(`[MCP] Previous token refresh failed for ${serverKey}, retrying...`);
|
|
254
252
|
}
|
|
255
253
|
}
|
|
256
|
-
|
|
254
|
+
logger.debug(`[MCP] Proactively refreshing OAuth token for server ${serverKey}`);
|
|
257
255
|
const refreshPromise = this.performTokenRefresh(serverKey, oauthConfig);
|
|
258
256
|
this.tokenRefreshPromise.set(serverKey, refreshPromise);
|
|
259
257
|
try {
|
|
@@ -273,7 +271,7 @@ var MCPClient = class {
|
|
|
273
271
|
this.clients.delete(serverKey);
|
|
274
272
|
this.transports.delete(serverKey);
|
|
275
273
|
await this.connectToServer(oauthConfig.serverConfig);
|
|
276
|
-
|
|
274
|
+
logger.debug(`[MCP] Successfully refreshed OAuth token for server ${serverKey}`);
|
|
277
275
|
}
|
|
278
276
|
async callTool(name, args) {
|
|
279
277
|
const requestOptions = getEffectiveRequestOptions(this.config);
|
|
@@ -301,7 +299,7 @@ var MCPClient = class {
|
|
|
301
299
|
const isAuthError = errorMessage.includes("401") || errorMessage.includes("Unauthorized") || errorMessage.includes("authorization_endpoint") || errorMessage.includes("token");
|
|
302
300
|
const oauthConfig = this.oauthConfigs.get(serverKey);
|
|
303
301
|
if (!retried && isAuthError && oauthConfig) {
|
|
304
|
-
|
|
302
|
+
logger.debug(`[MCP] Auth error for ${serverKey}, attempting reactive token refresh`);
|
|
305
303
|
retried = true;
|
|
306
304
|
try {
|
|
307
305
|
await this.performTokenRefresh(serverKey, oauthConfig);
|
|
@@ -312,10 +310,10 @@ var MCPClient = class {
|
|
|
312
310
|
}
|
|
313
311
|
} catch (refreshError) {
|
|
314
312
|
const refreshErrorMsg = refreshError instanceof Error ? refreshError.message : String(refreshError);
|
|
315
|
-
|
|
313
|
+
logger.error(`[MCP] Token refresh failed for ${serverKey}: ${refreshErrorMsg}`);
|
|
316
314
|
}
|
|
317
315
|
}
|
|
318
|
-
if (this.isDebugEnabled)
|
|
316
|
+
if (this.isDebugEnabled) logger.error(`Error calling tool ${name}: ${errorMessage}`);
|
|
319
317
|
return {
|
|
320
318
|
content: "",
|
|
321
319
|
error: errorMessage
|
|
@@ -330,7 +328,7 @@ var MCPClient = class {
|
|
|
330
328
|
if (transport) await transport.close();
|
|
331
329
|
await client.close();
|
|
332
330
|
} catch (error) {
|
|
333
|
-
if (this.isDebugEnabled)
|
|
331
|
+
if (this.isDebugEnabled) logger.error(`Error during cleanup: ${error instanceof Error ? error.message : String(error)}`);
|
|
334
332
|
}
|
|
335
333
|
this.clients.clear();
|
|
336
334
|
this.transports.clear();
|
|
@@ -340,7 +338,6 @@ var MCPClient = class {
|
|
|
340
338
|
this.tokenRefreshPromise.clear();
|
|
341
339
|
}
|
|
342
340
|
};
|
|
343
|
-
|
|
344
341
|
//#endregion
|
|
345
342
|
//#region src/providers/openai/chat.ts
|
|
346
343
|
var OpenAiChatCompletionProvider = class OpenAiChatCompletionProvider extends OpenAiGenericProvider {
|
|
@@ -351,7 +348,7 @@ var OpenAiChatCompletionProvider = class OpenAiChatCompletionProvider extends Op
|
|
|
351
348
|
initializationPromise = null;
|
|
352
349
|
loadedFunctionCallbacks = {};
|
|
353
350
|
constructor(modelName, options = {}) {
|
|
354
|
-
if (!OpenAiChatCompletionProvider.OPENAI_CHAT_MODEL_NAMES.includes(modelName))
|
|
351
|
+
if (!OpenAiChatCompletionProvider.OPENAI_CHAT_MODEL_NAMES.includes(modelName)) logger.debug(`Using unknown chat model: ${modelName}`);
|
|
355
352
|
super(modelName, options);
|
|
356
353
|
this.config = options.config || {};
|
|
357
354
|
if (this.config.mcp?.enabled) this.initializationPromise = this.initializeMCP();
|
|
@@ -380,8 +377,8 @@ var OpenAiChatCompletionProvider = class OpenAiChatCompletionProvider extends Op
|
|
|
380
377
|
if (splits[0] && isJavascriptFile(splits[0])) [filePath, functionName] = splits;
|
|
381
378
|
}
|
|
382
379
|
try {
|
|
383
|
-
const resolvedPath = path.resolve(
|
|
384
|
-
|
|
380
|
+
const resolvedPath = path.resolve(state.basePath || "", filePath);
|
|
381
|
+
logger.debug(`Loading function from ${resolvedPath}${functionName ? `:${functionName}` : ""}`);
|
|
385
382
|
const requiredModule = await importModule(resolvedPath, functionName);
|
|
386
383
|
if (typeof requiredModule === "function") return requiredModule;
|
|
387
384
|
else if (requiredModule && typeof requiredModule === "object" && functionName && functionName in requiredModule) {
|
|
@@ -412,18 +409,18 @@ var OpenAiChatCompletionProvider = class OpenAiChatCompletionProvider extends Op
|
|
|
412
409
|
}
|
|
413
410
|
}
|
|
414
411
|
if (!callback) throw new Error(`No callback found for function '${functionName}'`);
|
|
415
|
-
|
|
412
|
+
logger.debug(`Executing function '${functionName}' with args: ${args}`);
|
|
416
413
|
const result = await callback(args);
|
|
417
414
|
if (result === void 0 || result === null) return "";
|
|
418
415
|
else if (typeof result === "object") try {
|
|
419
416
|
return JSON.stringify(result);
|
|
420
417
|
} catch (error) {
|
|
421
|
-
|
|
418
|
+
logger.warn(`Error stringifying result from function '${functionName}': ${error}`);
|
|
422
419
|
return String(result);
|
|
423
420
|
}
|
|
424
421
|
else return String(result);
|
|
425
422
|
} catch (error) {
|
|
426
|
-
|
|
423
|
+
logger.error(`Error executing function '${functionName}': ${error.message || String(error)}`);
|
|
427
424
|
throw error;
|
|
428
425
|
}
|
|
429
426
|
}
|
|
@@ -448,8 +445,10 @@ var OpenAiChatCompletionProvider = class OpenAiChatCompletionProvider extends Op
|
|
|
448
445
|
const isReasoningModel = this.isReasoningModel();
|
|
449
446
|
const isGPT5Model = this.isGPT5Model();
|
|
450
447
|
const maxCompletionTokens = isReasoningModel ? config.max_completion_tokens ?? getEnvInt("OPENAI_MAX_COMPLETION_TOKENS") : void 0;
|
|
451
|
-
const
|
|
452
|
-
const
|
|
448
|
+
const maxTokensDefault = config.omitDefaults ? getEnvString("OPENAI_MAX_TOKENS") !== void 0 ? getEnvInt("OPENAI_MAX_TOKENS") : void 0 : getEnvInt("OPENAI_MAX_TOKENS", 1024);
|
|
449
|
+
const maxTokens = isReasoningModel || isGPT5Model ? void 0 : config.max_tokens ?? maxTokensDefault;
|
|
450
|
+
const temperatureDefault = config.omitDefaults ? getEnvString("OPENAI_TEMPERATURE") !== void 0 ? getEnvFloat("OPENAI_TEMPERATURE") : void 0 : getEnvFloat("OPENAI_TEMPERATURE", 0);
|
|
451
|
+
const temperature = this.supportsTemperature() ? config.temperature ?? temperatureDefault : void 0;
|
|
453
452
|
const reasoningEffort = isReasoningModel ? renderVarsInObject(config.reasoning_effort, context?.vars) : void 0;
|
|
454
453
|
const mcpTools = this.mcpClient ? transformMCPToolsToOpenAi(this.mcpClient.getAllTools()) : [];
|
|
455
454
|
const fileTools = transformTools(config.tools ? await maybeLoadToolsFromExternalFile(config.tools, context?.vars) || [] : [], "openai");
|
|
@@ -583,7 +582,7 @@ var OpenAiChatCompletionProvider = class OpenAiChatCompletionProvider extends Op
|
|
|
583
582
|
};
|
|
584
583
|
}
|
|
585
584
|
} catch (err) {
|
|
586
|
-
|
|
585
|
+
logger.error(`API call error: ${String(err)}`);
|
|
587
586
|
await deleteFromCache?.();
|
|
588
587
|
return {
|
|
589
588
|
error: `API call error: ${String(err)}`,
|
|
@@ -639,7 +638,7 @@ var OpenAiChatCompletionProvider = class OpenAiChatCompletionProvider extends Op
|
|
|
639
638
|
if (config.response_format?.type === "json_schema" && typeof output === "string") try {
|
|
640
639
|
output = JSON.parse(output);
|
|
641
640
|
} catch (error) {
|
|
642
|
-
|
|
641
|
+
logger.error(`Failed to parse JSON output: ${error}`);
|
|
643
642
|
}
|
|
644
643
|
if (reasoning && (this.config.showThinking ?? true)) output = `Thinking: ${reasoning}\n\n${output}`;
|
|
645
644
|
const functionCalls = message.function_call ? [message.function_call] : message.tool_calls;
|
|
@@ -676,7 +675,7 @@ var OpenAiChatCompletionProvider = class OpenAiChatCompletionProvider extends Op
|
|
|
676
675
|
hasSuccessfulCallback = true;
|
|
677
676
|
continue;
|
|
678
677
|
} catch (error) {
|
|
679
|
-
|
|
678
|
+
logger.debug(`MCP tool execution failed for ${functionName}: ${error}`);
|
|
680
679
|
results.push(`MCP Tool Error (${functionName}): ${error}`);
|
|
681
680
|
hasSuccessfulCallback = true;
|
|
682
681
|
continue;
|
|
@@ -687,7 +686,7 @@ var OpenAiChatCompletionProvider = class OpenAiChatCompletionProvider extends Op
|
|
|
687
686
|
results.push(functionResult);
|
|
688
687
|
hasSuccessfulCallback = true;
|
|
689
688
|
} catch (error) {
|
|
690
|
-
|
|
689
|
+
logger.debug(`Function callback failed for ${functionName} with error ${error}, falling back to original output`);
|
|
691
690
|
hasSuccessfulCallback = false;
|
|
692
691
|
break;
|
|
693
692
|
}
|
|
@@ -762,7 +761,7 @@ var OpenAiChatCompletionProvider = class OpenAiChatCompletionProvider extends Op
|
|
|
762
761
|
}
|
|
763
762
|
}
|
|
764
763
|
};
|
|
765
|
-
|
|
766
764
|
//#endregion
|
|
767
765
|
export { normalizeFinishReason as i, MCPClient as n, FINISH_REASON_MAP as r, OpenAiChatCompletionProvider as t };
|
|
768
|
-
|
|
766
|
+
|
|
767
|
+
//# sourceMappingURL=chat-BiKyneZl.js.map
|
|
@@ -1,17 +1,16 @@
|
|
|
1
|
-
const require_logger = require(
|
|
2
|
-
const require_invariant = require(
|
|
3
|
-
require(
|
|
4
|
-
require(
|
|
5
|
-
require(
|
|
6
|
-
require(
|
|
7
|
-
require(
|
|
8
|
-
require(
|
|
9
|
-
require(
|
|
10
|
-
const require_chat = require(
|
|
11
|
-
require(
|
|
12
|
-
require(
|
|
13
|
-
require(
|
|
14
|
-
|
|
1
|
+
const require_logger = require("./logger-Cp1GPUjj.cjs");
|
|
2
|
+
const require_invariant = require("./invariant-kfQ8Bu82.cjs");
|
|
3
|
+
require("./esm-CnNt7sI4.cjs");
|
|
4
|
+
require("./pythonUtils-CTU3Y3lw.cjs");
|
|
5
|
+
require("./types-C_7nyzr1.cjs");
|
|
6
|
+
require("./util-B9vlHIIh.cjs");
|
|
7
|
+
require("./fetch-BPkYtG8K.cjs");
|
|
8
|
+
require("./cache-Dh5WtQps.cjs");
|
|
9
|
+
require("./genaiTracer-DN4dQywX.cjs");
|
|
10
|
+
const require_chat = require("./chat-CgF-J-Jj.cjs");
|
|
11
|
+
require("./transform-DuHvhZpj.cjs");
|
|
12
|
+
require("./openai-Cuif0GEt.cjs");
|
|
13
|
+
require("./util-BzMcevZc.cjs");
|
|
15
14
|
//#region src/providers/hyperbolic/chat.ts
|
|
16
15
|
const HYPERBOLIC_CHAT_MODELS = [
|
|
17
16
|
{
|
|
@@ -200,7 +199,7 @@ function calculateHyperbolicCost(modelName, config, promptTokens, completionToke
|
|
|
200
199
|
const outputCost = config.cost ?? model.cost.output;
|
|
201
200
|
const inputCostTotal = inputCost * promptTokens;
|
|
202
201
|
const outputCostTotal = outputCost * completionTokens;
|
|
203
|
-
require_logger.
|
|
202
|
+
require_logger.logger.debug(`Hyperbolic cost calculation for ${modelName}: promptTokens=${promptTokens}, completionTokens=${completionTokens}, reasoningTokens=${reasoningTokens || "N/A"}, inputCost=${inputCostTotal}, outputCost=${outputCostTotal}`);
|
|
204
203
|
return inputCostTotal + outputCostTotal;
|
|
205
204
|
}
|
|
206
205
|
var HyperbolicProvider = class extends require_chat.OpenAiChatCompletionProvider {
|
|
@@ -257,11 +256,11 @@ var HyperbolicProvider = class extends require_chat.OpenAiChatCompletionProvider
|
|
|
257
256
|
acceptedPrediction: acceptedPredictions,
|
|
258
257
|
rejectedPrediction: rejectedPredictions
|
|
259
258
|
};
|
|
260
|
-
require_logger.
|
|
259
|
+
require_logger.logger.debug(`Hyperbolic reasoning token details for ${this.modelName}: reasoning=${reasoningTokens}, accepted=${acceptedPredictions}, rejected=${rejectedPredictions}`);
|
|
261
260
|
}
|
|
262
261
|
}
|
|
263
262
|
} catch (err) {
|
|
264
|
-
require_logger.
|
|
263
|
+
require_logger.logger.error(`Failed to parse raw response JSON: ${err}`);
|
|
265
264
|
}
|
|
266
265
|
else if (typeof response.raw === "object" && response.raw !== null) {
|
|
267
266
|
const rawData = response.raw;
|
|
@@ -275,7 +274,7 @@ var HyperbolicProvider = class extends require_chat.OpenAiChatCompletionProvider
|
|
|
275
274
|
acceptedPrediction: acceptedPredictions,
|
|
276
275
|
rejectedPrediction: rejectedPredictions
|
|
277
276
|
};
|
|
278
|
-
require_logger.
|
|
277
|
+
require_logger.logger.debug(`Hyperbolic reasoning token details for ${this.modelName}: reasoning=${reasoningTokens}, accepted=${acceptedPredictions}, rejected=${rejectedPredictions}`);
|
|
279
278
|
}
|
|
280
279
|
}
|
|
281
280
|
}
|
|
@@ -284,7 +283,7 @@ var HyperbolicProvider = class extends require_chat.OpenAiChatCompletionProvider
|
|
|
284
283
|
response.cost = calculateHyperbolicCost(this.modelName, this.config || {}, response.tokenUsage.prompt, response.tokenUsage.completion, reasoningTokens);
|
|
285
284
|
}
|
|
286
285
|
} catch (err) {
|
|
287
|
-
require_logger.
|
|
286
|
+
require_logger.logger.error(`Error processing Hyperbolic response: ${err}`);
|
|
288
287
|
}
|
|
289
288
|
return response;
|
|
290
289
|
}
|
|
@@ -294,7 +293,7 @@ function createHyperbolicProvider(providerPath, options = {}) {
|
|
|
294
293
|
require_invariant.invariant(modelName, "Model name is required");
|
|
295
294
|
return new HyperbolicProvider(modelName, options);
|
|
296
295
|
}
|
|
297
|
-
|
|
298
296
|
//#endregion
|
|
299
297
|
exports.createHyperbolicProvider = createHyperbolicProvider;
|
|
300
|
-
|
|
298
|
+
|
|
299
|
+
//# sourceMappingURL=chat-C1Qst7jL.cjs.map
|
|
@@ -1,5 +1,16 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { i as logger } from "./logger-DLcq4dWf.js";
|
|
2
|
+
import "./fetch-HaqdX7U1.js";
|
|
3
|
+
import { t as invariant } from "./invariant-vgHWClmd.js";
|
|
4
|
+
import "./esm-CaIwzWR5.js";
|
|
5
|
+
import "./types-CzW2QFyi.js";
|
|
6
|
+
import "./cache-i1P6crbO.js";
|
|
7
|
+
import "./genaiTracer-70Z8BIuV.js";
|
|
8
|
+
import "./pythonUtils-D6fwaDSg.js";
|
|
9
|
+
import "./util-ZzmqNPlg.js";
|
|
10
|
+
import { t as OpenAiChatCompletionProvider } from "./chat-DJIw17u0.js";
|
|
11
|
+
import "./transform-uAytVuyX.js";
|
|
12
|
+
import "./openai-j-sE2O7r.js";
|
|
13
|
+
import "./util-BV4XUC0n.js";
|
|
3
14
|
//#region src/providers/hyperbolic/chat.ts
|
|
4
15
|
const HYPERBOLIC_CHAT_MODELS = [
|
|
5
16
|
{
|
|
@@ -188,7 +199,7 @@ function calculateHyperbolicCost(modelName, config, promptTokens, completionToke
|
|
|
188
199
|
const outputCost = config.cost ?? model.cost.output;
|
|
189
200
|
const inputCostTotal = inputCost * promptTokens;
|
|
190
201
|
const outputCostTotal = outputCost * completionTokens;
|
|
191
|
-
|
|
202
|
+
logger.debug(`Hyperbolic cost calculation for ${modelName}: promptTokens=${promptTokens}, completionTokens=${completionTokens}, reasoningTokens=${reasoningTokens || "N/A"}, inputCost=${inputCostTotal}, outputCost=${outputCostTotal}`);
|
|
192
203
|
return inputCostTotal + outputCostTotal;
|
|
193
204
|
}
|
|
194
205
|
var HyperbolicProvider = class extends OpenAiChatCompletionProvider {
|
|
@@ -245,11 +256,11 @@ var HyperbolicProvider = class extends OpenAiChatCompletionProvider {
|
|
|
245
256
|
acceptedPrediction: acceptedPredictions,
|
|
246
257
|
rejectedPrediction: rejectedPredictions
|
|
247
258
|
};
|
|
248
|
-
|
|
259
|
+
logger.debug(`Hyperbolic reasoning token details for ${this.modelName}: reasoning=${reasoningTokens}, accepted=${acceptedPredictions}, rejected=${rejectedPredictions}`);
|
|
249
260
|
}
|
|
250
261
|
}
|
|
251
262
|
} catch (err) {
|
|
252
|
-
|
|
263
|
+
logger.error(`Failed to parse raw response JSON: ${err}`);
|
|
253
264
|
}
|
|
254
265
|
else if (typeof response.raw === "object" && response.raw !== null) {
|
|
255
266
|
const rawData = response.raw;
|
|
@@ -263,7 +274,7 @@ var HyperbolicProvider = class extends OpenAiChatCompletionProvider {
|
|
|
263
274
|
acceptedPrediction: acceptedPredictions,
|
|
264
275
|
rejectedPrediction: rejectedPredictions
|
|
265
276
|
};
|
|
266
|
-
|
|
277
|
+
logger.debug(`Hyperbolic reasoning token details for ${this.modelName}: reasoning=${reasoningTokens}, accepted=${acceptedPredictions}, rejected=${rejectedPredictions}`);
|
|
267
278
|
}
|
|
268
279
|
}
|
|
269
280
|
}
|
|
@@ -272,7 +283,7 @@ var HyperbolicProvider = class extends OpenAiChatCompletionProvider {
|
|
|
272
283
|
response.cost = calculateHyperbolicCost(this.modelName, this.config || {}, response.tokenUsage.prompt, response.tokenUsage.completion, reasoningTokens);
|
|
273
284
|
}
|
|
274
285
|
} catch (err) {
|
|
275
|
-
|
|
286
|
+
logger.error(`Error processing Hyperbolic response: ${err}`);
|
|
276
287
|
}
|
|
277
288
|
return response;
|
|
278
289
|
}
|
|
@@ -282,7 +293,7 @@ function createHyperbolicProvider(providerPath, options = {}) {
|
|
|
282
293
|
invariant(modelName, "Model name is required");
|
|
283
294
|
return new HyperbolicProvider(modelName, options);
|
|
284
295
|
}
|
|
285
|
-
|
|
286
296
|
//#endregion
|
|
287
297
|
export { createHyperbolicProvider };
|
|
288
|
-
|
|
298
|
+
|
|
299
|
+
//# sourceMappingURL=chat-C2jrdPMx.js.map
|