promptfoo 0.120.26 → 0.121.1
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/drizzle/0023_wooden_mandrill.sql +2 -0
- package/dist/drizzle/meta/0023_snapshot.json +1496 -0
- package/dist/drizzle/meta/_journal.json +7 -0
- package/dist/src/{ListApp-D3DG0F8h.js → ListApp-Du7YVwj5.js} +2 -4
- package/dist/src/accounts-BgNJDBE6.js +206 -0
- package/dist/src/{accounts-BzEY8H3v.cjs → accounts-Bx-x3bmW.cjs} +99 -80
- package/dist/src/{accounts-DHHiXsy6.js → accounts-CMqkzrVf.js} +61 -36
- package/dist/src/{accounts-R3gfCR_g.js → accounts-xrUGFA6n.js} +60 -35
- package/dist/src/{agentic-utils-D6_gzOUF.js → agentic-utils-BKIN5PKu.js} +9 -10
- package/dist/src/{agents-CwM7re15.cjs → agents-B0f4HICh.cjs} +37 -40
- package/dist/src/{agents-Cnph5GLD.js → agents-C-dDThPK.js} +37 -37
- package/dist/src/{agents-C7BiinFI.cjs → agents-CErsqg5U.cjs} +19 -27
- package/dist/src/{agents-v4cW_ZgC.js → agents-CVIn-Utx.js} +19 -22
- package/dist/src/{agents-GiUianme.js → agents-CXknwsFX.js} +37 -40
- package/dist/src/{agents-DETIQHqF.js → agents-DeH4Gu94.js} +21 -28
- package/dist/src/{agents-DYIT-hQy.js → agents-Dy2YpZpa.js} +38 -41
- package/dist/src/{agents-Cao4i7AX.js → agents-aF4-T121.js} +19 -30
- package/dist/src/{aimlapi-DMF6v_vb.js → aimlapi-BAGZDo5G.js} +16 -18
- package/dist/src/{aimlapi-CMJpKK-B.js → aimlapi-BNfTBexL.js} +15 -17
- package/dist/src/{aimlapi-DtSf1ykJ.js → aimlapi-DHRKlBEA.js} +15 -4
- package/dist/src/{aimlapi-DoGLcQW_.cjs → aimlapi-tg0Gkcvr.cjs} +15 -16
- package/dist/src/app/assets/index-BFCZg7hQ.js +439 -0
- package/dist/src/app/assets/index-NCn4eVBv.css +1 -0
- package/dist/src/app/assets/{vendor-charts-CYyo8R8v.js → vendor-charts-CCl15Imd.js} +1 -1
- package/dist/src/app/assets/{vendor-markdown-DSmzq4Jh.js → vendor-markdown-0tekx3KX.js} +1 -1
- package/dist/src/app/index.html +4 -34
- package/dist/src/{audio-DUH4q0Xq.js → audio-BRODU0UK.js} +7 -9
- package/dist/src/{audio-BWjyvHn9.cjs → audio-BWeaWovU.cjs} +6 -7
- package/dist/src/{audio-U580w8jM.js → audio-CHQ4r-RV.js} +6 -5
- package/dist/src/{audio-BrJBFN2b.js → audio-tf_NBjlC.js} +6 -8
- package/dist/src/base-B0tcrnq_.js +193 -0
- package/dist/src/base-B4QJRyFS.js +194 -0
- package/dist/src/base-DBtwl2FR.cjs +222 -0
- package/dist/src/base-fEDN28WM.js +193 -0
- package/dist/src/{blobs-kt8v3UyH.js → blobs-BAU-dXan.js} +9 -12
- package/dist/src/{blobs-C9J2mVgo.js → blobs-Bpg5rH6i.js} +9 -12
- package/dist/src/{blobs-673H0jCl.cjs → blobs-DvS-O6be.cjs} +34 -37
- package/dist/src/blobs-qTYm-1PY.js +236 -0
- package/dist/src/{cache-BLLayYEN.js → cache-8XhNqPKW.js} +64 -67
- package/dist/src/cache-Bbn1Nyrd.cjs +5 -0
- package/dist/src/cache-BwsMSda7.js +6 -0
- package/dist/src/{cache-mIszOnuz.js → cache-CG0SlR1d.js} +64 -66
- package/dist/src/{cache-7xULbvt3.cjs → cache-COish3-W.cjs} +114 -117
- package/dist/src/cache-D3eqDYGU.js +739 -0
- package/dist/src/{chat-Fl6TZJRS.cjs → chat-2K608PeQ.cjs} +20 -21
- package/dist/src/chat-BKm79wib.js +764 -0
- package/dist/src/{chat-XPN9YHhr.js → chat-CM_kyI8B.js} +20 -9
- package/dist/src/{chat-DIywASPG.js → chat-CRWNNq73.js} +49 -49
- package/dist/src/{chat-C8Ei4f87.js → chat-CznLWr_D.js} +49 -49
- package/dist/src/{chat-CgyGj2hC.js → chat-DHMH-N64.js} +20 -22
- package/dist/src/{chat-C4zqjObh.cjs → chat-DaqekjFr.cjs} +69 -69
- package/dist/src/{chat-Cpz3O-Xl.js → chat-DxysjBvt.js} +21 -23
- package/dist/src/{chatkit-Dpxrq4eD.js → chatkit-65VXf5SR.js} +58 -58
- package/dist/src/{chatkit-DIrJX8xk.js → chatkit-Be-Q-a9F.js} +58 -60
- package/dist/src/{chatkit-DEls11hE.js → chatkit-BxFvW8KY.js} +58 -60
- package/dist/src/{chatkit-e25Ziu17.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-6-xTaLwM.js → claude-agent-sdk-BLTu0WBO.js} +45 -31
- package/dist/src/{claude-agent-sdk-BzxF6NIJ.cjs → claude-agent-sdk-CJH22shf.cjs} +44 -29
- package/dist/src/{claude-agent-sdk-CmkTnKGH.js → claude-agent-sdk-D6_k9FKA.js} +45 -33
- package/dist/src/{claude-agent-sdk-rXCBLK_o.js → claude-agent-sdk-Dy5lT-Tx.js} +46 -21
- package/dist/src/{cloud-BMbRVJFw.js → cloud-Bc9526yV.js} +32 -12
- package/dist/src/cloud-DmE0EwsY.js +4 -0
- package/dist/src/{cloudflare-ai-CUg4BTcj.js → cloudflare-ai-C9r2sRhw.js} +16 -18
- package/dist/src/{cloudflare-ai-Z9X219gp.js → cloudflare-ai-CWWJCRim.js} +16 -4
- package/dist/src/{cloudflare-ai-BAQ0u_dg.cjs → cloudflare-ai-ClWSdor4.cjs} +16 -17
- package/dist/src/{cloudflare-ai-CobxMTR4.js → cloudflare-ai-ICsOuD-z.js} +17 -19
- package/dist/src/{cloudflare-gateway-C0sgfr_z.cjs → cloudflare-gateway-C2_-KG5o.cjs} +21 -22
- package/dist/src/{cloudflare-gateway-_itGuXry.js → cloudflare-gateway-D6O7AlYb.js} +23 -23
- package/dist/src/{cloudflare-gateway-D2_yi-Fh.js → cloudflare-gateway-D6xFc5pa.js} +21 -25
- package/dist/src/{cloudflare-gateway-Djf3F3_H.js → cloudflare-gateway-pXGHxJ47.js} +26 -14
- package/dist/src/{codex-sdk-ibXwdglL.js → codex-sdk-C6UMlxwV.js} +49 -32
- package/dist/src/{codex-sdk-BASDNkIl.js → codex-sdk-DUwKWezN.js} +49 -30
- package/dist/src/{codex-sdk-dSnGdgIp.js → codex-sdk-GGAw0qbD.js} +49 -32
- package/dist/src/{codex-sdk-wTEpMM_X.cjs → codex-sdk-fAO0c3yA.cjs} +49 -32
- package/dist/src/{cometapi-B01btbfb.js → cometapi-BasUi7-_.js} +17 -19
- package/dist/src/{cometapi-DHUAH6nK.js → cometapi-Bbjp5V4x.js} +16 -4
- package/dist/src/{cometapi-ChAaRjg5.js → cometapi-DkXrKi5z.js} +21 -24
- package/dist/src/{cometapi-JbvOJSCO.cjs → cometapi-vY6aDZgo.cjs} +21 -22
- package/dist/src/{completion-D9_MDlnd.js → completion-6Mx_iXxK.js} +11 -13
- package/dist/src/{completion-BBJ6zmG3.js → completion-C5rtR_9P.js} +11 -13
- package/dist/src/{completion-DDyL3Cb2.cjs → completion-CDOouNzq.cjs} +21 -23
- package/dist/src/completion-C_P3ypkJ.js +120 -0
- package/dist/src/createHash-CTQmL3G2.js +15 -0
- package/dist/src/createHash-CfZSc0b4.cjs +27 -0
- package/dist/src/createHash-Da8fMwqB.js +16 -0
- package/dist/src/createHash-DmPQkvBh.js +15 -0
- package/dist/src/{docker-JAAubMw3.js → docker-5KcG-_86.js} +18 -20
- package/dist/src/{docker-Ckw-j7Rr.cjs → docker-BwsKwxFs.cjs} +18 -19
- package/dist/src/{docker-vnOg96gi.js → docker-CZnqU1XV.js} +18 -7
- package/dist/src/{docker-BuButc4D.js → docker-DzxyDPIj.js} +19 -21
- package/dist/src/entrypoint.js +2 -3
- package/dist/src/{errors-DnGCbnx8.js → errors-P6ll7XSJ.js} +2 -2
- package/dist/src/{esm-CYhseqj4.js → esm-C03C-mv3.js} +17 -20
- package/dist/src/{esm-rDtG_2rg.js → esm-CaIwzWR5.js} +18 -21
- package/dist/src/esm-Cd1AjG1D.js +379 -0
- package/dist/src/{esm-BQkx5roy.cjs → esm-CnNt7sI4.cjs} +47 -49
- package/dist/src/eval-17JizQIv.js +15 -0
- package/dist/src/{eval-CYrbG57o.js → eval-DmFyWU7i.js} +49 -55
- package/dist/src/{evalResult-COsVttMA.js → evalResult-CDQiuUuf.js} +16 -12
- package/dist/src/{evalResult-6JaUIStC.js → evalResult-CTG2AHOS.js} +10 -11
- package/dist/src/evalResult-Cqj8pldJ.js +12 -0
- package/dist/src/{evalResult-DlRfu_Rq.cjs → evalResult-Dap2CekP.cjs} +20 -21
- package/dist/src/evalResult-DvcJAWJU.cjs +10 -0
- package/dist/src/evalResult-Hftn-S_i.js +10 -0
- package/dist/src/evaluator-B2CFNt-P.js +36 -0
- package/dist/src/{evaluator-3EJCMTs0.js → evaluator-DPFRbFIL.js} +210 -232
- package/dist/src/{extractor-LSYjrhK0.js → extractor-CFG6bcWJ.js} +23 -38
- package/dist/src/{extractor-DbhlYEeo.cjs → extractor-DX36oYEv.cjs} +37 -64
- package/dist/src/{extractor-Hs7la_19.js → extractor-M67RUtg6.js} +23 -38
- package/dist/src/extractor-YMU_Gvt8.js +374 -0
- package/dist/src/fetch-4M3YRaqL.js +780 -0
- package/dist/src/{fetch-18MuNu9i.js → fetch-60Gzydls.js} +60 -46
- package/dist/src/{fetch-SRsE6Ctl.js → fetch-BMv0O527.js} +41 -35
- package/dist/src/{fetch-ZMn_oemb.cjs → fetch-BxUk8odA.cjs} +268 -279
- package/dist/src/fetch-KV5kNASw.js +5 -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-Doo0xq-z.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-CQlpZkrp.cjs → genaiTracer-DN4dQywX.cjs} +13 -14
- package/dist/src/graders-Bu0H9nXi.js +32 -0
- package/dist/src/{graders-BaMCwIKp.js → graders-CHO8EPM4.js} +385 -417
- package/dist/src/graders-Cfhkvx-e.js +34 -0
- package/dist/src/{graders-QsALpIdy.js → graders-CpdqD9PI.js} +385 -417
- package/dist/src/graders-DClJVpGP.cjs +32 -0
- package/dist/src/{graders-DzUUnUjC.cjs → graders-DOXycdlG.cjs} +721 -753
- package/dist/src/graders-DcnJsrMO.js +32 -0
- package/dist/src/graders-R9rYUM0d.js +13466 -0
- package/dist/src/{image-BiEVdpdP.js → image-BmEZqVmk.js} +57 -18
- package/dist/src/{image-mhAGP07h.js → image-CBBVXWuT.js} +57 -18
- package/dist/src/{image-D10zEe1f.cjs → image-CDLQOcqT.cjs} +6 -7
- package/dist/src/{image-COCWy5dX.js → image-DJEvKveK.js} +6 -5
- package/dist/src/{image-C3BjJUAU.cjs → image-DTedmQPg.cjs} +77 -32
- package/dist/src/{image-DB4sHxdJ.js → image-gvmivTEe.js} +7 -9
- package/dist/src/image-pAX56tPG.js +257 -0
- package/dist/src/{image-BXt_7u0v.js → image-tL5hIOFh.js} +6 -8
- package/dist/src/index.cjs +696 -693
- package/dist/src/index.d.cts +113 -10
- package/dist/src/index.d.ts +113 -6
- package/dist/src/index.js +657 -658
- package/dist/src/{interactiveCheck-DU-MAhp5.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-DotRBzUE.js → knowledgeBase-CLJybhnF.js} +19 -34
- package/dist/src/{knowledgeBase-XJQ0Qyez.js → knowledgeBase-CoU-UQBg.js} +17 -41
- package/dist/src/{knowledgeBase-CMvMlLZR.js → knowledgeBase-DjWPVqSb.js} +17 -43
- package/dist/src/{knowledgeBase-Bnb00xKs.cjs → knowledgeBase-wkxuRFhA.cjs} +17 -40
- package/dist/src/{litellm-CHrRmPAe.js → litellm-B9Hysuri.js} +16 -18
- package/dist/src/{litellm-CrLJrPIm.js → litellm-CTfa0hqi.js} +15 -17
- package/dist/src/{litellm-BrnZhMcL.cjs → litellm-NYpQ8RQu.cjs} +15 -16
- package/dist/src/{litellm-BECdjOTx.js → litellm-ePxtr9F1.js} +15 -4
- package/dist/src/{logger-w8Ozp0Td.js → logger-CT3IKMKA.js} +24 -41
- package/dist/src/{logger-BdZ-IqBc.cjs → logger-Cp1GPUjj.cjs} +166 -192
- package/dist/src/logger-DLcq4dWf.js +713 -0
- package/dist/src/{logger-BotXmWKW.js → logger-KkObSCzq.js} +27 -43
- package/dist/src/{luma-ray-C0RkI3lt.cjs → luma-ray-B0GGNRc1.cjs} +20 -21
- package/dist/src/{luma-ray-C-w6EsJm.js → luma-ray-BE2mOt6N.js} +20 -13
- package/dist/src/{luma-ray-BOeX-h0M.js → luma-ray-BW9IRGIc.js} +22 -21
- package/dist/src/{luma-ray-DgKLS0BF.js → luma-ray-Cm1KZBhs.js} +20 -23
- package/dist/src/main.js +1985 -2055
- package/dist/src/{messages-DXV3Qh8_.cjs → messages-1JrJs91T.cjs} +35 -34
- package/dist/src/{messages-D61tPFQo.js → messages-1x9atZmP.js} +25 -24
- package/dist/src/{messages-CDZYGNlS.js → messages-BLbWdsyt.js} +25 -24
- package/dist/src/messages-D8EA0oDc.js +240 -0
- package/dist/src/{meteor-P2rUE-Uz.js → meteor-44VjEACX.js} +3 -4
- package/dist/src/{meteor-SLNTgmXm.js → meteor-D-SotUw9.js} +3 -4
- package/dist/src/{meteor-odmwVbyG.cjs → meteor-DLZZ3osF.cjs} +3 -4
- package/dist/src/{meteor-Dj8cTkU_.js → meteor-DUiCJRC-.js} +3 -4
- package/dist/src/modelslab-C1OLRmVX.js +166 -0
- package/dist/src/modelslab-CqXBy3U8.js +168 -0
- package/dist/src/modelslab-DcOSFwKh.cjs +166 -0
- package/dist/src/modelslab-X5-4LroM.js +166 -0
- package/dist/src/{nova-reel-C2LFfVTf.js → nova-reel-BgS1ZWuK.js} +20 -13
- package/dist/src/{nova-reel-DtCjbD5O.js → nova-reel-D2ZkOSyr.js} +22 -21
- package/dist/src/{nova-reel-D9FXq3Mt.cjs → nova-reel-D9xfaMBs.cjs} +20 -21
- package/dist/src/{nova-reel-Bk5npr2q.js → nova-reel-DihqLeol.js} +20 -23
- package/dist/src/{nova-sonic-BoRSY_U6.cjs → nova-sonic-DVu3mMIy.cjs} +30 -31
- package/dist/src/{nova-sonic-D_qERM-K.js → nova-sonic-DezhVUYT.js} +30 -26
- package/dist/src/{nova-sonic-CgaWLDM1.js → nova-sonic-P-CdUMlV.js} +30 -31
- package/dist/src/{nova-sonic-BXRfQyF-.js → nova-sonic-Q3BOJeig.js} +31 -32
- package/dist/src/{openai-Bigwjgo1.cjs → openai-Cuif0GEt.cjs} +8 -9
- package/dist/src/{openai-Dz3surb_.js → openai-DElQ-fPX.js} +3 -4
- package/dist/src/{openai-CT5fwbve.js → openai-DhbB7eWK.js} +3 -4
- package/dist/src/openai-j-sE2O7r.js +44 -0
- package/dist/src/{openclaw-dHLcXUWZ.js → openclaw-BiSZPL7J.js} +20 -14
- package/dist/src/{openclaw-CpPrXwf6.js → openclaw-Bv1DINsX.js} +20 -27
- package/dist/src/{openclaw-B6XY2kUf.js → openclaw-D1D_ej1z.js} +21 -28
- package/dist/src/{openclaw-DDSfq5fp.cjs → openclaw-DAfWQn-o.cjs} +33 -39
- package/dist/src/opencode-sdk-C7m-wRfI.js +560 -0
- package/dist/src/opencode-sdk-CfaLN8PY.cjs +564 -0
- package/dist/src/opencode-sdk-D95s6SnR.js +562 -0
- package/dist/src/opencode-sdk-DxUPkLT7.js +560 -0
- package/dist/src/{otlpReceiver-DmRb0NBj.js → otlpReceiver--AIRW_S4.js} +53 -51
- package/dist/src/{otlpReceiver-Dg817agV.js → otlpReceiver-Bn5wGB1v.js} +53 -55
- package/dist/src/{otlpReceiver-B6Xo4KZM.cjs → otlpReceiver-Diec4cln.cjs} +53 -55
- package/dist/src/{otlpReceiver-BO0rbDzh.js → otlpReceiver-g3ByGaXs.js} +53 -55
- package/dist/src/{providerRegistry-Xf0qdqGQ.js → providerRegistry-B0RUOLI_.js} +7 -8
- package/dist/src/{providerRegistry-wCWd7sKQ.js → providerRegistry-CD8MEar9.js} +7 -8
- package/dist/src/{providerRegistry-lc7a7utN.cjs → providerRegistry-Civky8Ar.cjs} +12 -13
- package/dist/src/providerRegistry-DM8rZYol.js +45 -0
- package/dist/src/providers-B3HvufyI.js +33246 -0
- package/dist/src/{providers-BiNq_Iyc.js → providers-BKRJTjBz.js} +1743 -1795
- package/dist/src/providers-C1rOSHiR.js +32 -0
- package/dist/src/{providers-BlEhY5mi.js → providers-CFLy1_ji.js} +1750 -1802
- package/dist/src/{providers-BNKVY53V.cjs → providers-CFu-TZl-.cjs} +2111 -2163
- package/dist/src/providers-CxmDwEFf.cjs +31 -0
- package/dist/src/providers-Dodakqr0.js +30 -0
- package/dist/src/providers-GIQ2TcsA.js +30 -0
- package/dist/src/{pythonUtils-r1uBuA0n.js → pythonUtils-C3py6GC1.js} +18 -19
- package/dist/src/{pythonUtils-DZ6EbdY4.cjs → pythonUtils-CTU3Y3lw.cjs} +42 -43
- package/dist/src/{pythonUtils-vMlk9Qp5.js → pythonUtils-D5nxkQ0P.js} +18 -19
- package/dist/src/pythonUtils-D6fwaDSg.js +249 -0
- package/dist/src/quiverai-C2jVwbH1.js +213 -0
- package/dist/src/quiverai-CI6gYJVI.js +213 -0
- package/dist/src/quiverai-CLkWkyZc.cjs +213 -0
- package/dist/src/quiverai-MHSxbmmZ.js +215 -0
- package/dist/src/{render-CAZvKKkB.js → render-Drod8m7K.js} +4 -5
- package/dist/src/{responses-DLLjADw5.js → responses-BKqJmhhc.js} +34 -27
- package/dist/src/{responses-TsdODUpm.js → responses-CGw0DCzh.js} +34 -27
- package/dist/src/responses-jxdehPkC.js +660 -0
- package/dist/src/{responses-zOtKtnY_.cjs → responses-tD4Bd4dc.cjs} +49 -42
- package/dist/src/rubyUtils-BUHu6PhO.js +5 -0
- package/dist/src/{rubyUtils-Cs35SDYa.js → rubyUtils-BUVePouc.js} +27 -20
- package/dist/src/rubyUtils-BcuGX77l.js +222 -0
- package/dist/src/{rubyUtils-BtjlqyXt.js → rubyUtils-Boc4HZzX.js} +18 -19
- package/dist/src/rubyUtils-CP42kMvq.cjs +4 -0
- package/dist/src/{rubyUtils-DCVaJ3mc.cjs → rubyUtils-DhCAlxZr.cjs} +48 -50
- package/dist/src/{sagemaker-Du4LIR97.js → sagemaker-BK4Zb993.js} +75 -70
- package/dist/src/{sagemaker-CLdUAv5z.js → sagemaker-BfiWTmvn.js} +77 -77
- package/dist/src/{sagemaker-DwNnEVYt.cjs → sagemaker-CcQHM1jV.cjs} +75 -76
- package/dist/src/{sagemaker-BcgLu0U4.js → sagemaker-D2Q1c-sD.js} +75 -79
- package/dist/src/{scanner-Dyw21Wg_.js → scanner-J8CA3LsV.js} +149 -122
- package/dist/src/server/index.js +5620 -67302
- package/dist/src/{server-CgUQ25qW.cjs → server-B0PPuDw-.cjs} +57 -67
- package/dist/src/server-B1vi21hA.js +7 -0
- package/dist/src/{server-CbMTRQkg.js → server-BC7XJFgr.js} +19 -24
- package/dist/src/server-Cm9Kai_h.cjs +5 -0
- package/dist/src/{server-DWmZLfCy.js → server-DbFphssR.js} +26 -29
- package/dist/src/server-OAs3nBRT.js +229 -0
- package/dist/src/{signal-Bl32q42d.js → signal-BOTbd53Z.js} +9 -11
- package/dist/src/{slack-BtMkB6xP.cjs → slack-BmVAVGaK.cjs} +7 -8
- package/dist/src/{slack-OZYxoVON.js → slack-DCUPTzS2.js} +8 -8
- package/dist/src/{slack-DPqj42Ts.js → slack-DOdy_kyv.js} +7 -8
- package/dist/src/{slack-BfdBx2tO.js → slack-DXMKtA-f.js} +7 -9
- package/dist/src/store-BNmZ1KAz.cjs +5 -0
- package/dist/src/{store-BqwfFEyF.cjs → store-BSc-TF2w.cjs} +44 -45
- package/dist/src/store-BltJg2cd.js +6 -0
- package/dist/src/{store-D4gdn9ih.js → store-D1tv90v3.js} +34 -35
- package/dist/src/{store-2ocbYY9D.js → store-DQLEjuEO.js} +40 -36
- package/dist/src/store-Ub2vaGJ1.js +228 -0
- package/dist/src/{tables-D-NSwNIb.js → tables-5EvT_Bwn.js} +23 -23
- package/dist/src/{tables-B9E1kRp-.cjs → tables-C7K-XKWp.cjs} +93 -93
- package/dist/src/{tables-C7TT2XVn.js → tables-D36WTqKX.js} +25 -25
- package/dist/src/tables-xKANLRBD.js +288 -0
- package/dist/src/telemetry-5BCRNBbe.cjs +5 -0
- package/dist/src/{telemetry-DZ_7PaVq.js → telemetry-C15ziL8u.js} +17 -14
- package/dist/src/{telemetry-BXyVqyAg.js → telemetry-C2YDkUQH.js} +11 -13
- package/dist/src/{telemetry-D0_yFdtU.cjs → telemetry-CbrnxHp_.cjs} +21 -24
- package/dist/src/telemetry-D4W5hboe.js +7 -0
- package/dist/src/telemetry-DMb2Mpfm.js +171 -0
- package/dist/src/{text-Dm78AVGG.js → text-B_UCRPp2.js} +2 -2
- package/dist/src/{text-DF2hMKdg.cjs → text-CW1cyrwj.cjs} +12 -13
- package/dist/src/{text-DgMr_tiM.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-FNIz3YOe.cjs → transcription-CL78qbOU.cjs} +14 -15
- package/dist/src/{transcription-C-M81iDA.js → transcription-DAtxHhAM.js} +14 -7
- package/dist/src/{transcription-CYuY5sFO.js → transcription-LNZTNUUL.js} +14 -16
- package/dist/src/{transcription-Ch7S-LWw.js → transcription-QHh3AH6Z.js} +15 -17
- package/dist/src/{transform-CoP2bJ7P.js → transform-Cgi24fJ7.js} +94 -66
- package/dist/src/{transform-Kd6u-oNm.cjs → transform-CzK1Q0zl.cjs} +24 -26
- package/dist/src/{transform-D8dILpfZ.js → transform-DECvGmzp.js} +15 -13
- package/dist/src/{transform-DMaxQwDx.js → transform-DGLazrMm.js} +94 -66
- package/dist/src/transform-DGxXocjk.js +1506 -0
- package/dist/src/{transform-ivxEY4f7.cjs → transform-DOcQeLld.cjs} +234 -206
- package/dist/src/transform-DTGDnAzW.js +6 -0
- package/dist/src/{transform-CqTFr7KR.js → transform-DilY9wbS.js} +10 -12
- package/dist/src/transform-aa6tmVpZ.js +216 -0
- package/dist/src/transform-m3qNw4KP.cjs +5 -0
- package/dist/src/{transformersAvailability-DEU2naS1.js → transformersAvailability-CEVM2GNQ.js} +2 -2
- package/dist/src/{transformersAvailability-Bkep3ka7.cjs → transformersAvailability-CwayUSlh.cjs} +2 -3
- package/dist/src/{transformersAvailability-DwmezkVe.js → transformersAvailability-D6c6ROpT.js} +2 -2
- package/dist/src/{types-t52w-XsS.js → types-CH3Ge2sE.js} +103 -92
- package/dist/src/{types-DMVjYLpx.js → types-CLKiCBW3.js} +98 -91
- package/dist/src/types-CN_TZ2GJ.js +3260 -0
- package/dist/src/{types-BIfttHrT.cjs → types-LJ0r3wbR.cjs} +573 -566
- package/dist/src/util-5cB-L7U3.js +1430 -0
- package/dist/src/util-6-GqIvzS.js +599 -0
- package/dist/src/{util-vjscpUzy.js → util-B7T3SiBS.js} +5 -6
- package/dist/src/{util-Cl0zfT3V.js → util-Betm42rL.js} +44 -17
- package/dist/src/{util-CUEt0Vum.js → util-C-PPYSMq.js} +44 -17
- package/dist/src/{util-DkFTvieG.cjs → util-CchiqXh_.cjs} +35 -36
- package/dist/src/{util-mJ58qbbw.js → util-DaWTWKBK.js} +5 -6
- package/dist/src/{util-C08Kns6-.cjs → util-Db0a0AFH.cjs} +89 -62
- package/dist/src/{util-DiCePfDu.js → util-Dlz_Wvgm.js} +102 -53
- package/dist/src/{util-BSh4a_Q8.js → util-YT5HPZaS.js} +102 -53
- package/dist/src/{util-DUYOvxAy.cjs → util-Yz-1aEhW.cjs} +274 -219
- package/dist/src/util-ZZH-3QZz.js +293 -0
- package/dist/src/{utils-DFaZa6Rf.cjs → utils-Cz9qXqII.cjs} +32 -35
- package/dist/src/{utils-CVzb4YiI.js → utils-XiOAgly5.js} +4 -7
- package/dist/src/utils-dLokC-eR.js +94 -0
- package/dist/src/{utils-JaY9veb5.js → utils-f2-Moju7.js} +4 -7
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +59 -53
- package/dist/src/app/assets/index-BOgkICuY.css +0 -1
- package/dist/src/app/assets/index-CSgqn_Vd.js +0 -428
- package/dist/src/app/tsconfig.app.tsbuildinfo +0 -1
- package/dist/src/base-BaXmtXYp.js +0 -107
- package/dist/src/base-Dtp8b4_N.js +0 -106
- package/dist/src/base-f71xxWai.cjs +0 -111
- package/dist/src/cache-BUPcq0Ad.js +0 -6
- package/dist/src/cache-CVfRb-HD.cjs +0 -6
- package/dist/src/cache-O4EuX2JV.js +0 -8
- package/dist/src/chunk-DHDDz29n.js +0 -22
- package/dist/src/chunk-FhC4c-0y.js +0 -21
- package/dist/src/cloud-CZ4hytdm.js +0 -5
- package/dist/src/eval-CKHWqG9f.js +0 -16
- package/dist/src/evalResult-CxTP-LMm.cjs +0 -11
- package/dist/src/evalResult-CzLURDcP.js +0 -13
- package/dist/src/evalResult-DyttNQ_G.js +0 -11
- package/dist/src/evaluator-0PvfeBYh.js +0 -38
- package/dist/src/fetch-Bi0o-fdp.js +0 -4
- package/dist/src/fetch-CMptBDVg.cjs +0 -4
- package/dist/src/fetch-DAZkv3gV.js +0 -6
- package/dist/src/graders-BCytzXrb.js +0 -34
- package/dist/src/graders-CGZQShfJ.cjs +0 -33
- package/dist/src/graders-spkuVC-E.js +0 -36
- package/dist/src/opencode-sdk-CImWVqy9.js +0 -382
- package/dist/src/opencode-sdk-CuCztr4P.js +0 -380
- package/dist/src/opencode-sdk-DhcfRbBH.js +0 -376
- package/dist/src/opencode-sdk-mqF-Oj3f.cjs +0 -383
- package/dist/src/providers-BMZZmPBJ.cjs +0 -32
- package/dist/src/providers-CQQrNaJk.js +0 -32
- package/dist/src/providers-Ck8HyrC-.js +0 -34
- package/dist/src/quiverai-BNfIwKCO.cjs +0 -54
- package/dist/src/quiverai-BQigKdIH.js +0 -57
- package/dist/src/quiverai-Bfy2WnE2.js +0 -55
- package/dist/src/quiverai-CedIP0PJ.js +0 -43
- package/dist/src/rubyUtils-D7--T12C.js +0 -6
- package/dist/src/rubyUtils-DRRiMFV2.js +0 -5
- package/dist/src/rubyUtils-vb8OYFC-.cjs +0 -5
- package/dist/src/server-BUbS0Qfh.js +0 -6
- package/dist/src/server-XpGXFHkS.cjs +0 -6
- package/dist/src/server-gfOx5Zrk.js +0 -8
- package/dist/src/store-5u2yriTV.js +0 -7
- package/dist/src/store-D_lq_8oQ.js +0 -6
- package/dist/src/store-m5KT6Ly7.cjs +0 -6
- package/dist/src/telemetry-5RHFoCJh.js +0 -6
- package/dist/src/telemetry-Do8wMnA-.js +0 -8
- package/dist/src/telemetry-LojxPoFq.cjs +0 -6
- package/dist/src/transform-8eGmaH-7.js +0 -7
- package/dist/src/transform-BRVvWaG4.cjs +0 -6
- package/dist/src/transform-GybT0X0u.js +0 -8
- package/dist/src/transformersAvailability-DkAWaK5B.js +0 -35
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { i as logger } from "./logger-CT3IKMKA.js";
|
|
2
|
+
import { t as OpenAiGenericProvider } from "./openai-DElQ-fPX.js";
|
|
3
|
+
import { t as providerRegistry } from "./providerRegistry-CD8MEar9.js";
|
|
2
4
|
import * as http$1 from "http";
|
|
3
5
|
import { chromium } from "playwright";
|
|
4
|
-
|
|
5
6
|
//#region src/providers/openai/chatkit-pool.ts
|
|
6
7
|
/**
|
|
7
8
|
* ChatKit Browser Pool
|
|
@@ -81,7 +82,7 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
81
82
|
} });
|
|
82
83
|
} else if (config) {
|
|
83
84
|
const existing = ChatKitBrowserPool.instance.config;
|
|
84
|
-
if (config.maxConcurrency !== void 0 && config.maxConcurrency !== existing.maxConcurrency || config.headless !== void 0 && config.headless !== existing.headless)
|
|
85
|
+
if (config.maxConcurrency !== void 0 && config.maxConcurrency !== existing.maxConcurrency || config.headless !== void 0 && config.headless !== existing.headless) logger.warn("[ChatKitPool] Pool already exists with different config, ignoring new config", {
|
|
85
86
|
existing: {
|
|
86
87
|
maxConcurrency: existing.maxConcurrency,
|
|
87
88
|
headless: existing.headless
|
|
@@ -100,7 +101,7 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
100
101
|
static resetInstance() {
|
|
101
102
|
if (ChatKitBrowserPool.instance) {
|
|
102
103
|
ChatKitBrowserPool.instance.shutdown().catch((err) => {
|
|
103
|
-
|
|
104
|
+
logger.debug("[ChatKitPool] Error during shutdown:", { error: String(err) });
|
|
104
105
|
});
|
|
105
106
|
ChatKitBrowserPool.instance = null;
|
|
106
107
|
}
|
|
@@ -118,7 +119,7 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
118
119
|
setTemplate(templateKey, html) {
|
|
119
120
|
if (this.templates.get(templateKey) !== html) {
|
|
120
121
|
this.templates.set(templateKey, html);
|
|
121
|
-
|
|
122
|
+
logger.debug("[ChatKitPool] Registered template", { templateKey });
|
|
122
123
|
for (const page of this.pages) if (page.templateKey === templateKey) page.ready = false;
|
|
123
124
|
}
|
|
124
125
|
}
|
|
@@ -133,7 +134,7 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
133
134
|
this.initPromise = null;
|
|
134
135
|
}
|
|
135
136
|
async doInitialize() {
|
|
136
|
-
|
|
137
|
+
logger.debug("[ChatKitPool] Initializing browser pool", { maxConcurrency: this.config.maxConcurrency });
|
|
137
138
|
this.server = http$1.createServer((req, res) => {
|
|
138
139
|
const pathParts = new URL(req.url || "/", `http://localhost`).pathname.split("/").filter(Boolean);
|
|
139
140
|
if (pathParts[0] === "template" && pathParts[1]) {
|
|
@@ -155,7 +156,7 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
155
156
|
this.server.listen(this.config.serverPort, () => {
|
|
156
157
|
const address = this.server.address();
|
|
157
158
|
this.serverPort = typeof address === "object" ? address?.port || 0 : 0;
|
|
158
|
-
|
|
159
|
+
logger.debug("[ChatKitPool] Server started", { port: this.serverPort });
|
|
159
160
|
resolve();
|
|
160
161
|
});
|
|
161
162
|
});
|
|
@@ -166,7 +167,7 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
166
167
|
throw error;
|
|
167
168
|
}
|
|
168
169
|
this.initialized = true;
|
|
169
|
-
|
|
170
|
+
logger.debug("[ChatKitPool] Browser pool initialized");
|
|
170
171
|
}
|
|
171
172
|
/**
|
|
172
173
|
* Acquire a page from the pool for a specific template.
|
|
@@ -180,7 +181,7 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
180
181
|
const available = this.pages.find((p) => !p.inUse && p.ready && p.templateKey === templateKey);
|
|
181
182
|
if (available) {
|
|
182
183
|
available.inUse = true;
|
|
183
|
-
|
|
184
|
+
logger.debug("[ChatKitPool] Acquired existing page", {
|
|
184
185
|
templateKey,
|
|
185
186
|
poolSize: this.pages.length
|
|
186
187
|
});
|
|
@@ -190,7 +191,7 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
190
191
|
if (needsRefresh) {
|
|
191
192
|
await this.refreshPooledPage(needsRefresh);
|
|
192
193
|
needsRefresh.inUse = true;
|
|
193
|
-
|
|
194
|
+
logger.debug("[ChatKitPool] Acquired and refreshed page", {
|
|
194
195
|
templateKey,
|
|
195
196
|
poolSize: this.pages.length
|
|
196
197
|
});
|
|
@@ -200,13 +201,13 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
200
201
|
const pooledPage = await this.createPooledPage(templateKey);
|
|
201
202
|
pooledPage.inUse = true;
|
|
202
203
|
this.pages.push(pooledPage);
|
|
203
|
-
|
|
204
|
+
logger.debug("[ChatKitPool] Created new page", {
|
|
204
205
|
templateKey,
|
|
205
206
|
poolSize: this.pages.length
|
|
206
207
|
});
|
|
207
208
|
return pooledPage;
|
|
208
209
|
}
|
|
209
|
-
|
|
210
|
+
logger.debug("[ChatKitPool] Waiting for available page", {
|
|
210
211
|
templateKey,
|
|
211
212
|
poolSize: this.pages.length,
|
|
212
213
|
waiting: this.waitQueue.length + 1
|
|
@@ -235,7 +236,7 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
235
236
|
try {
|
|
236
237
|
await this.refreshPooledPage(pooledPage);
|
|
237
238
|
} catch (error) {
|
|
238
|
-
|
|
239
|
+
logger.warn("[ChatKitPool] Failed to reset page, recreating", { error });
|
|
239
240
|
const index = this.pages.indexOf(pooledPage);
|
|
240
241
|
if (index >= 0) this.pages.splice(index, 1);
|
|
241
242
|
try {
|
|
@@ -246,7 +247,7 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
246
247
|
this.pages.push(newPage);
|
|
247
248
|
pooledPage = newPage;
|
|
248
249
|
} catch (createError) {
|
|
249
|
-
|
|
250
|
+
logger.warn("[ChatKitPool] Failed to create replacement page", { error: createError });
|
|
250
251
|
await this.tryServeWaiters();
|
|
251
252
|
this.scheduleIdleShutdown();
|
|
252
253
|
return;
|
|
@@ -276,13 +277,13 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
276
277
|
newPage.inUse = true;
|
|
277
278
|
this.pages.push(newPage);
|
|
278
279
|
waiter.resolve(newPage);
|
|
279
|
-
|
|
280
|
+
logger.debug("[ChatKitPool] Created page for waiting request", {
|
|
280
281
|
templateKey: waiter.templateKey,
|
|
281
282
|
poolSize: this.pages.length,
|
|
282
283
|
remainingWaiters: this.waitQueue.length
|
|
283
284
|
});
|
|
284
285
|
} catch (error) {
|
|
285
|
-
|
|
286
|
+
logger.warn("[ChatKitPool] Failed to create page for waiter", {
|
|
286
287
|
templateKey: waiter.templateKey,
|
|
287
288
|
error
|
|
288
289
|
});
|
|
@@ -297,12 +298,12 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
297
298
|
scheduleIdleShutdown() {
|
|
298
299
|
this.cancelIdleTimer();
|
|
299
300
|
if (this.pages.filter((p) => p.inUse).length === 0 && this.waitQueue.length === 0 && this.pages.length > 0) {
|
|
300
|
-
|
|
301
|
+
logger.debug("[ChatKitPool] Pool idle, scheduling shutdown", { delay: IDLE_SHUTDOWN_DELAY_MS });
|
|
301
302
|
this.idleTimer = setTimeout(() => {
|
|
302
303
|
if (this.pages.filter((p) => p.inUse).length === 0 && this.waitQueue.length === 0) {
|
|
303
|
-
|
|
304
|
+
logger.debug("[ChatKitPool] Auto-shutting down idle pool");
|
|
304
305
|
this.shutdown().catch((err) => {
|
|
305
|
-
|
|
306
|
+
logger.debug("[ChatKitPool] Error during idle shutdown", { error: String(err) });
|
|
306
307
|
});
|
|
307
308
|
ChatKitBrowserPool.instance = null;
|
|
308
309
|
}
|
|
@@ -349,7 +350,7 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
349
350
|
}
|
|
350
351
|
}
|
|
351
352
|
async refreshPooledPage(pooledPage) {
|
|
352
|
-
|
|
353
|
+
logger.debug("[ChatKitPool] Refreshing page", { timeout: PAGE_REFRESH_TIMEOUT_MS });
|
|
353
354
|
await pooledPage.page.reload({ waitUntil: "domcontentloaded" });
|
|
354
355
|
await pooledPage.page.waitForFunction(() => window.__state?.ready === true, { timeout: PAGE_REFRESH_TIMEOUT_MS });
|
|
355
356
|
pooledPage.ready = true;
|
|
@@ -369,10 +370,10 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
369
370
|
* Shutdown the pool and release all resources
|
|
370
371
|
*/
|
|
371
372
|
async shutdown() {
|
|
372
|
-
|
|
373
|
+
logger.debug("[ChatKitPool] Shutting down");
|
|
373
374
|
this.cancelIdleTimer();
|
|
374
375
|
if (this.waitQueue.length > 0) {
|
|
375
|
-
|
|
376
|
+
logger.debug("[ChatKitPool] Clearing pending waiters", { count: this.waitQueue.length });
|
|
376
377
|
this.waitQueue = [];
|
|
377
378
|
}
|
|
378
379
|
for (const pooledPage of this.pages) try {
|
|
@@ -391,10 +392,9 @@ var ChatKitBrowserPool = class ChatKitBrowserPool {
|
|
|
391
392
|
}
|
|
392
393
|
this.initialized = false;
|
|
393
394
|
this.templates.clear();
|
|
394
|
-
|
|
395
|
+
logger.debug("[ChatKitPool] Shutdown complete");
|
|
395
396
|
}
|
|
396
397
|
};
|
|
397
|
-
|
|
398
398
|
//#endregion
|
|
399
399
|
//#region src/providers/openai/chatkit.ts
|
|
400
400
|
/**
|
|
@@ -713,25 +713,25 @@ async function extractResponseFromFrame(page, maxRetries = 3) {
|
|
|
713
713
|
if (result.text && result.text.length > 0) {
|
|
714
714
|
const trimmed = result.text.trim();
|
|
715
715
|
if (trimmed === "ApproveReject" || trimmed === "Approve" || trimmed === "Reject") {
|
|
716
|
-
|
|
716
|
+
logger.debug("[ChatKitProvider] Skipping approval button text", { text: trimmed });
|
|
717
717
|
continue;
|
|
718
718
|
}
|
|
719
719
|
const cleaned = cleanAssistantResponse(result.text);
|
|
720
720
|
if (cleaned.length > 0) {
|
|
721
|
-
|
|
721
|
+
logger.debug("[ChatKitProvider] Extracted response", {
|
|
722
722
|
source: result.source,
|
|
723
723
|
length: cleaned.length,
|
|
724
724
|
preview: cleaned.substring(0, 100)
|
|
725
725
|
});
|
|
726
726
|
return cleaned;
|
|
727
727
|
}
|
|
728
|
-
|
|
728
|
+
logger.debug("[ChatKitProvider] No assistant content found after cleaning", {
|
|
729
729
|
originalLength: result.text.length,
|
|
730
730
|
source: result.source
|
|
731
731
|
});
|
|
732
732
|
}
|
|
733
733
|
} catch (e) {
|
|
734
|
-
|
|
734
|
+
logger.debug("[ChatKitProvider] Could not access frame", {
|
|
735
735
|
url,
|
|
736
736
|
error: e,
|
|
737
737
|
attempt
|
|
@@ -748,7 +748,7 @@ async function extractResponseFromFrame(page, maxRetries = 3) {
|
|
|
748
748
|
*/
|
|
749
749
|
async function getIframeContent(page) {
|
|
750
750
|
const frames = page.frames();
|
|
751
|
-
|
|
751
|
+
logger.debug("[ChatKitProvider] Checking frames", {
|
|
752
752
|
frameCount: frames.length,
|
|
753
753
|
frameUrls: frames.map((f) => f.url())
|
|
754
754
|
});
|
|
@@ -764,11 +764,11 @@ async function waitForContentStabilization(page, timeout, startTime) {
|
|
|
764
764
|
let lastChangeTime = Date.now();
|
|
765
765
|
const pollStartTime = Date.now();
|
|
766
766
|
let capturedAssistantResponse = "";
|
|
767
|
-
|
|
767
|
+
logger.debug("[ChatKitProvider] Starting content stabilization polling");
|
|
768
768
|
while (Date.now() - pollStartTime < timeout) {
|
|
769
769
|
const state = await page.evaluate(() => window.__state);
|
|
770
770
|
const pollElapsed = Date.now() - pollStartTime;
|
|
771
|
-
if (pollElapsed % 5e3 < CONTENT_POLL_MS)
|
|
771
|
+
if (pollElapsed % 5e3 < CONTENT_POLL_MS) logger.debug("[ChatKitProvider] Polling state", {
|
|
772
772
|
pollElapsedMs: pollElapsed,
|
|
773
773
|
responding: state.responding,
|
|
774
774
|
responseCount: state.responses?.length,
|
|
@@ -777,7 +777,7 @@ async function waitForContentStabilization(page, timeout, startTime) {
|
|
|
777
777
|
});
|
|
778
778
|
const currentContent = await getIframeContent(page) || "";
|
|
779
779
|
if (currentContent !== lastContent) {
|
|
780
|
-
|
|
780
|
+
logger.debug("[ChatKitProvider] Content changed", {
|
|
781
781
|
previousLength: lastContent.length,
|
|
782
782
|
newLength: currentContent.length,
|
|
783
783
|
preview: currentContent.substring(Math.max(0, currentContent.length - 200))
|
|
@@ -789,13 +789,13 @@ async function waitForContentStabilization(page, timeout, startTime) {
|
|
|
789
789
|
const timeSinceLastChange = Date.now() - lastChangeTime;
|
|
790
790
|
const assistantMatch = currentContent.match(/The assistant said:\s*\n*([\s\S]*)/i);
|
|
791
791
|
const assistantResponse = assistantMatch ? assistantMatch[1].trim() : currentContent;
|
|
792
|
-
if (!assistantMatch && currentContent.length > 0)
|
|
792
|
+
if (!assistantMatch && currentContent.length > 0) logger.debug("[ChatKitProvider] Assistant pattern not found, using full content for length check", { contentLength: currentContent.length });
|
|
793
793
|
capturedAssistantResponse = assistantResponse;
|
|
794
794
|
const isShortResponse = assistantResponse.length < SHORT_RESPONSE_THRESHOLD;
|
|
795
795
|
const effectiveStabilizationMs = isShortResponse ? CONTENT_STABILIZATION_MS * 2 : CONTENT_STABILIZATION_MS;
|
|
796
796
|
const effectiveMinWaitMs = isShortResponse ? MIN_WORKFLOW_WAIT_MS * 2 : MIN_WORKFLOW_WAIT_MS;
|
|
797
797
|
if (!state.responding && timeSinceLastChange >= effectiveStabilizationMs && timeSinceStart >= effectiveMinWaitMs) {
|
|
798
|
-
|
|
798
|
+
logger.debug("[ChatKitProvider] Content stabilized", {
|
|
799
799
|
timeSinceStart,
|
|
800
800
|
timeSinceLastChange,
|
|
801
801
|
contentLength: currentContent.length,
|
|
@@ -810,7 +810,7 @@ async function waitForContentStabilization(page, timeout, startTime) {
|
|
|
810
810
|
}
|
|
811
811
|
await page.waitForTimeout(CONTENT_POLL_MS);
|
|
812
812
|
}
|
|
813
|
-
|
|
813
|
+
logger.debug("[ChatKitProvider] Content stabilization timeout reached");
|
|
814
814
|
return {
|
|
815
815
|
assistantResponse: capturedAssistantResponse,
|
|
816
816
|
fullContent: lastContent
|
|
@@ -833,7 +833,7 @@ async function handleApproval(page, action) {
|
|
|
833
833
|
const button = await frame.$(selector);
|
|
834
834
|
if (button) {
|
|
835
835
|
if (await button.isVisible()) {
|
|
836
|
-
|
|
836
|
+
logger.debug("[ChatKitProvider] Found approval button, clicking", {
|
|
837
837
|
action,
|
|
838
838
|
selector
|
|
839
839
|
});
|
|
@@ -851,12 +851,12 @@ async function handleApproval(page, action) {
|
|
|
851
851
|
}
|
|
852
852
|
return false;
|
|
853
853
|
}, buttonText)) {
|
|
854
|
-
|
|
854
|
+
logger.debug("[ChatKitProvider] Clicked approval button via evaluate", { action });
|
|
855
855
|
await page.waitForTimeout(APPROVAL_CLICK_DELAY_MS);
|
|
856
856
|
return true;
|
|
857
857
|
}
|
|
858
858
|
} catch (e) {
|
|
859
|
-
|
|
859
|
+
logger.debug("[ChatKitProvider] Error checking for approval buttons", { error: e });
|
|
860
860
|
}
|
|
861
861
|
return false;
|
|
862
862
|
}
|
|
@@ -871,7 +871,7 @@ async function processApprovals(page, approvalHandling, maxApprovals, timeout) {
|
|
|
871
871
|
await page.waitForTimeout(APPROVAL_PROCESS_DELAY_MS);
|
|
872
872
|
if (!await handleApproval(page, approvalHandling)) break;
|
|
873
873
|
approvalCount++;
|
|
874
|
-
|
|
874
|
+
logger.debug("[ChatKitProvider] Processed approval", {
|
|
875
875
|
count: approvalCount,
|
|
876
876
|
max: maxApprovals
|
|
877
877
|
});
|
|
@@ -931,7 +931,7 @@ var OpenAiChatKitProvider = class OpenAiChatKitProvider extends OpenAiGenericPro
|
|
|
931
931
|
if (!apiKey) throw new Error("OpenAI API key is required for ChatKit provider");
|
|
932
932
|
const workflowId = this.chatKitConfig.workflowId;
|
|
933
933
|
if (!workflowId) throw new Error("ChatKit workflowId is required");
|
|
934
|
-
|
|
934
|
+
logger.debug("[ChatKitProvider] Initializing", {
|
|
935
935
|
workflowId,
|
|
936
936
|
version: this.chatKitConfig.version
|
|
937
937
|
});
|
|
@@ -947,7 +947,7 @@ var OpenAiChatKitProvider = class OpenAiChatKitProvider extends OpenAiGenericPro
|
|
|
947
947
|
this.server.listen(this.chatKitConfig.serverPort, () => {
|
|
948
948
|
const address = this.server.address();
|
|
949
949
|
this.serverPort = typeof address === "object" ? address?.port || 0 : 0;
|
|
950
|
-
|
|
950
|
+
logger.debug("[ChatKitProvider] Server started", { port: this.serverPort });
|
|
951
951
|
resolve();
|
|
952
952
|
});
|
|
953
953
|
});
|
|
@@ -966,17 +966,17 @@ Original error: ${errorMessage}`);
|
|
|
966
966
|
this.page = await this.context.newPage();
|
|
967
967
|
this.page.on("console", (msg) => {
|
|
968
968
|
const type = msg.type();
|
|
969
|
-
if (type === "error" || type === "warning")
|
|
969
|
+
if (type === "error" || type === "warning") logger.debug("[ChatKitProvider] Browser console", {
|
|
970
970
|
type,
|
|
971
971
|
text: msg.text()
|
|
972
972
|
});
|
|
973
973
|
});
|
|
974
974
|
await this.page.goto(`http://localhost:${this.serverPort}`, { waitUntil: "domcontentloaded" });
|
|
975
|
-
|
|
975
|
+
logger.debug("[ChatKitProvider] Waiting for ChatKit ready");
|
|
976
976
|
await this.page.waitForFunction(() => window.__state?.ready === true, { timeout: CHATKIT_READY_TIMEOUT_MS });
|
|
977
977
|
this.initialized = true;
|
|
978
978
|
if (!this.chatKitConfig.usePool) providerRegistry.register(this);
|
|
979
|
-
|
|
979
|
+
logger.debug("[ChatKitProvider] Initialized successfully");
|
|
980
980
|
}
|
|
981
981
|
/**
|
|
982
982
|
* Shutdown method for providerRegistry cleanup
|
|
@@ -1008,7 +1008,7 @@ Original error: ${errorMessage}`);
|
|
|
1008
1008
|
*/
|
|
1009
1009
|
async callApi(prompt, _context, _callApiOptions) {
|
|
1010
1010
|
const usePool = this.chatKitConfig.usePool && !this.chatKitConfig.stateful;
|
|
1011
|
-
|
|
1011
|
+
logger.debug("[ChatKitProvider] Starting call", {
|
|
1012
1012
|
prompt: prompt.substring(0, 100),
|
|
1013
1013
|
workflowId: this.chatKitConfig.workflowId,
|
|
1014
1014
|
usePool,
|
|
@@ -1025,7 +1025,7 @@ Original error: ${errorMessage}`);
|
|
|
1025
1025
|
}
|
|
1026
1026
|
const responseCount = await this.page.evaluate(() => window.__state?.responses?.length || 0);
|
|
1027
1027
|
const isFollowUp = this.chatKitConfig.stateful && responseCount > 0;
|
|
1028
|
-
|
|
1028
|
+
logger.debug("[ChatKitProvider] Sending message", {
|
|
1029
1029
|
stateful: this.chatKitConfig.stateful,
|
|
1030
1030
|
isFollowUp,
|
|
1031
1031
|
responseCount
|
|
@@ -1039,21 +1039,21 @@ Original error: ${errorMessage}`);
|
|
|
1039
1039
|
text: prompt,
|
|
1040
1040
|
newThread: !isFollowUp
|
|
1041
1041
|
});
|
|
1042
|
-
|
|
1042
|
+
logger.debug("[ChatKitProvider] Waiting for response");
|
|
1043
1043
|
const expectedResponseCount = responseCount + 1;
|
|
1044
1044
|
await this.page.waitForFunction((expected) => window.__state?.responses?.length >= expected, expectedResponseCount, { timeout: this.chatKitConfig.timeout });
|
|
1045
1045
|
const stabilizationResult = await waitForContentStabilization(this.page, this.chatKitConfig.timeout ?? DEFAULT_TIMEOUT_MS, startTime);
|
|
1046
1046
|
const approvalsHandled = await processApprovals(this.page, this.chatKitConfig.approvalHandling ?? "auto-approve", this.chatKitConfig.maxApprovals ?? DEFAULT_MAX_APPROVALS, this.chatKitConfig.timeout ?? DEFAULT_TIMEOUT_MS);
|
|
1047
|
-
if (approvalsHandled > 0)
|
|
1047
|
+
if (approvalsHandled > 0) logger.debug("[ChatKitProvider] Processed approvals", { count: approvalsHandled });
|
|
1048
1048
|
let responseText = await extractResponseFromFrame(this.page);
|
|
1049
1049
|
if (!responseText && stabilizationResult.assistantResponse) {
|
|
1050
|
-
|
|
1050
|
+
logger.debug("[ChatKitProvider] Using fallback content from stabilization", { fallbackLength: stabilizationResult.assistantResponse.length });
|
|
1051
1051
|
responseText = cleanAssistantResponse(stabilizationResult.assistantResponse);
|
|
1052
1052
|
}
|
|
1053
1053
|
const threadId = await this.page.evaluate(() => window.__state.threadId);
|
|
1054
1054
|
const finalResponseCount = await this.page.evaluate(() => window.__state?.responses?.length || 0);
|
|
1055
1055
|
const latencyMs = Date.now() - startTime;
|
|
1056
|
-
|
|
1056
|
+
logger.debug("[ChatKitProvider] Response received", {
|
|
1057
1057
|
threadId,
|
|
1058
1058
|
textLength: responseText.length,
|
|
1059
1059
|
turnNumber: finalResponseCount,
|
|
@@ -1074,7 +1074,7 @@ Original error: ${errorMessage}`);
|
|
|
1074
1074
|
};
|
|
1075
1075
|
} catch (error) {
|
|
1076
1076
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
1077
|
-
|
|
1077
|
+
logger.error("[ChatKitProvider] Call failed", { error: errorMessage });
|
|
1078
1078
|
if (this.page) try {
|
|
1079
1079
|
const stateError = await this.page.evaluate(() => window.__state?.error);
|
|
1080
1080
|
if (stateError) return { error: `ChatKit workflow error: ${stateError}` };
|
|
@@ -1106,7 +1106,7 @@ Original error: ${errorMessage}`);
|
|
|
1106
1106
|
try {
|
|
1107
1107
|
pooledPage = await pool.acquirePage(templateKey);
|
|
1108
1108
|
const page = pooledPage.page;
|
|
1109
|
-
|
|
1109
|
+
logger.debug("[ChatKitProvider] Acquired page from pool", { stats: pool.getStats() });
|
|
1110
1110
|
await page.evaluate((text) => {
|
|
1111
1111
|
return window.__chatkit.sendUserMessage({
|
|
1112
1112
|
text,
|
|
@@ -1116,15 +1116,15 @@ Original error: ${errorMessage}`);
|
|
|
1116
1116
|
await page.waitForFunction(() => window.__state?.responses?.length > 0, { timeout: this.chatKitConfig.timeout });
|
|
1117
1117
|
const stabilizationResult = await waitForContentStabilization(page, this.chatKitConfig.timeout ?? DEFAULT_TIMEOUT_MS, startTime);
|
|
1118
1118
|
const approvalsHandled = await processApprovals(page, this.chatKitConfig.approvalHandling ?? "auto-approve", this.chatKitConfig.maxApprovals ?? DEFAULT_MAX_APPROVALS, this.chatKitConfig.timeout ?? DEFAULT_TIMEOUT_MS);
|
|
1119
|
-
if (approvalsHandled > 0)
|
|
1119
|
+
if (approvalsHandled > 0) logger.debug("[ChatKitProvider] Pool processed approvals", { count: approvalsHandled });
|
|
1120
1120
|
let responseText = await extractResponseFromFrame(page);
|
|
1121
1121
|
if (!responseText && stabilizationResult.assistantResponse) {
|
|
1122
|
-
|
|
1122
|
+
logger.debug("[ChatKitProvider] Pool using fallback content from stabilization", { fallbackLength: stabilizationResult.assistantResponse.length });
|
|
1123
1123
|
responseText = cleanAssistantResponse(stabilizationResult.assistantResponse);
|
|
1124
1124
|
}
|
|
1125
1125
|
const threadId = await page.evaluate(() => window.__state.threadId);
|
|
1126
1126
|
const latencyMs = Date.now() - startTime;
|
|
1127
|
-
|
|
1127
|
+
logger.debug("[ChatKitProvider] Pool response received", {
|
|
1128
1128
|
threadId,
|
|
1129
1129
|
textLength: responseText.length,
|
|
1130
1130
|
latencyMs
|
|
@@ -1143,7 +1143,7 @@ Original error: ${errorMessage}`);
|
|
|
1143
1143
|
};
|
|
1144
1144
|
} catch (error) {
|
|
1145
1145
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
1146
|
-
|
|
1146
|
+
logger.error("[ChatKitProvider] Pool call failed", { error: errorMessage });
|
|
1147
1147
|
if (errorMessage.includes("Timeout") || errorMessage.includes("timeout")) return { error: `ChatKit response timeout after ${this.chatKitConfig.timeout}ms. Try increasing timeout or reducing concurrency.` };
|
|
1148
1148
|
return { error: `ChatKit provider error: ${errorMessage}` };
|
|
1149
1149
|
} finally {
|
|
@@ -1151,7 +1151,7 @@ Original error: ${errorMessage}`);
|
|
|
1151
1151
|
}
|
|
1152
1152
|
}
|
|
1153
1153
|
};
|
|
1154
|
-
|
|
1155
1154
|
//#endregion
|
|
1156
1155
|
export { OpenAiChatKitProvider };
|
|
1157
|
-
|
|
1156
|
+
|
|
1157
|
+
//# sourceMappingURL=chatkit-65VXf5SR.js.map
|