@recombine-ai/platform 0.8.0-test.2 → 0.8.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/build/agent/experiment.d.ts +21 -0
- package/build/agent/experiment.d.ts.map +1 -0
- package/build/agent/experiment.js +29 -0
- package/build/agent/index.d.ts +2 -0
- package/build/agent/index.d.ts.map +1 -1
- package/build/agent/index.js +1 -0
- package/build/bosun/index.d.ts +1 -0
- package/build/bosun/index.d.ts.map +1 -1
- package/build/bosun/interfaces/agent.d.ts +1 -0
- package/build/bosun/interfaces/agent.d.ts.map +1 -1
- package/build/bosun/interfaces/project.d.ts +25 -0
- package/build/bosun/interfaces/project.d.ts.map +1 -0
- package/build/bosun/interfaces/project.js +1 -0
- package/build/bosun-app/backend/server.js +252 -60
- package/build/bosun-app/backend/server.js.map +2 -2
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{CR5IRTqC.js → AmpxVxY6.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/AmpxVxY6.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/AmpxVxY6.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{DjDpMqch.js → B-5g3xS8.js} +20 -20
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B-5g3xS8.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B-5g3xS8.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{BBk8_Xpk.js → B1MxGo6p.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B1MxGo6p.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B1MxGo6p.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BTw6JswM.js +1 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BTw6JswM.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BTw6JswM.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{joiJcRPz.js → BqH4VDQz.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BqH4VDQz.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BqH4VDQz.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CBW06aCF.js +1 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CBW06aCF.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CBW06aCF.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{C0rPkxmP.js → CVZT6n14.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CVZT6n14.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CVZT6n14.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{Diqx_kju.js → CXS28GEZ.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CXS28GEZ.js.br +1 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CXS28GEZ.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{ouMvMh56.js → CkstLsmI.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CkstLsmI.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CkstLsmI.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{C3cROXCy.js → CuwQtXBl.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CuwQtXBl.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CuwQtXBl.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{BEdAvgYp.js → D9YsE4-8.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/D9YsE4-8.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/D9YsE4-8.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DzqCKWaI.js +3 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DzqCKWaI.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DzqCKWaI.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Xf8YUGwh.js +1 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Xf8YUGwh.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Xf8YUGwh.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{DJnDF3d9.js → dL_jwANm.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/dL_jwANm.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/dL_jwANm.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/{app.DYrvpbQq.js → app.DaDBScXg.js} +2 -2
- package/build/bosun-app/frontend/client/_app/immutable/entry/app.DaDBScXg.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/app.DaDBScXg.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/start.CWqX8UwM.js +1 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/start.CWqX8UwM.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/start.CWqX8UwM.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{0.DXIuJQso.js → 0._S0yln6w.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/0._S0yln6w.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/0._S0yln6w.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{1.CsX5iplT.js → 1.BSNKOkyF.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/1.BSNKOkyF.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/1.BSNKOkyF.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/10.NIQt0c21.js +35 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/10.NIQt0c21.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/10.NIQt0c21.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{17.BIO8m3DR.js → 17.Bn1yI4kt.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/17.Bn1yI4kt.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/17.Bn1yI4kt.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/18.DAa7yKtf.js +11 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/18.DAa7yKtf.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/18.DAa7yKtf.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/2.DTjCxUv0.js +35 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/2.DTjCxUv0.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/2.DTjCxUv0.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/3.CzgpFcXZ.js +1 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/3.CzgpFcXZ.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/3.CzgpFcXZ.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{4.BzhaMuo5.js → 4.3i9fJNn9.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/4.3i9fJNn9.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/4.3i9fJNn9.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{5.BG8ylHWg.js → 5.C2R3wdz0.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/5.C2R3wdz0.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/5.C2R3wdz0.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{6.DkDEANSN.js → 6.CarWVMPM.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/6.CarWVMPM.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/6.CarWVMPM.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{8.3fEbISY6.js → 8.joumIYrl.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/8.joumIYrl.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/8.joumIYrl.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/9.BGKMyDx1.js +2 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/9.BGKMyDx1.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/9.BGKMyDx1.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/version.json +1 -1
- package/build/bosun-app/frontend/client/_app/version.json.br +0 -0
- package/build/bosun-app/frontend/client/_app/version.json.gz +0 -0
- package/build/bosun-app/frontend/handler.js +4 -4
- package/build/bosun-app/frontend/index.js +4 -4
- package/build/bosun-app/frontend/server/chunks/chunks/{ChatStepTrace.js-VTtwaKGp.js → ChatStepTrace.js-BY0y3Vbb.js} +3 -1
- package/build/bosun-app/frontend/server/chunks/chunks/ChatStepTrace.js-BY0y3Vbb.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/chunks/{internal.js-B7oaNMJQ.js → internal.js-ChM9druZ.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/chunks/{internal.js-B7oaNMJQ.js.map → internal.js-ChM9druZ.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/chunks/{source-selection.js-D5B8gfq2.js → source-selection.js-DFpObbhz.js} +3 -1
- package/build/bosun-app/frontend/server/chunks/chunks/source-selection.js-DFpObbhz.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/{_layout.svelte.js-B2wHKJV7.js → _layout.svelte.js-b9Q5TFEZ.js} +134 -24
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/_layout.svelte.js-b9Q5TFEZ.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/roleplay/{_page.svelte.js-DDcIjgZD.js → _page.svelte.js-Chv8ybaj.js} +10 -4
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/roleplay/_page.svelte.js-Chv8ybaj.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/tests/{_page.svelte.js-UVUg89-t.js → _page.svelte.js-Dkst1C_3.js} +3 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/tests/_page.svelte.js-Dkst1C_3.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_conversationId_/latency/{_page.svelte.js-SjAtxtA0.js → _page.svelte.js-DFZznMhQ.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_conversationId_/latency/{_page.svelte.js-SjAtxtA0.js.map → _page.svelte.js-DFZznMhQ.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_conversationId_/traces/{_page.svelte.js-DiZKDT2v.js → _page.svelte.js-Bxdn8vG5.js} +7 -3
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_conversationId_/traces/_page.svelte.js-Bxdn8vG5.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/{_layout.svelte.js-CfkCQ2Th.js → _layout.svelte.js-UAHBCAaS.js} +62 -10
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_layout.svelte.js-UAHBCAaS.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/{handler-D9QLNo8w.js → handler-KSixAuP8.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/{handler-D9QLNo8w.js.map → handler-KSixAuP8.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/{index.js-B0gyG8Jr.js → index.js-xzEg77OG.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/{index.js-B0gyG8Jr.js.map → index.js-xzEg77OG.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/{manifest.js-BJwjpIJ3.js → manifest.js-BW4X3pHs.js} +14 -14
- package/build/bosun-app/frontend/server/chunks/{manifest.js-BJwjpIJ3.js.map → manifest.js-BW4X3pHs.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{0.js-CzIAnGix.js → 0.js-B1rx1DOM.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/nodes/{0.js-CzIAnGix.js.map → 0.js-B1rx1DOM.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{1.js-dcMNeOrp.js → 1.js-h7GlMehw.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/nodes/{1.js-dcMNeOrp.js.map → 1.js-h7GlMehw.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{10.js-BJiZIzMv.js → 10.js-C6xRYZtL.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/nodes/{10.js-BJiZIzMv.js.map → 10.js-C6xRYZtL.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{17.js-D2Tp888g.js → 17.js-CavP10f9.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/nodes/{17.js-D2Tp888g.js.map → 17.js-CavP10f9.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{18.js-u_njdfH1.js → 18.js-DC7Bv1j_.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/nodes/{18.js-u_njdfH1.js.map → 18.js-DC7Bv1j_.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{2.js-CmkWii-m.js → 2.js-BhiMP7Sz.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/nodes/{2.js-CmkWii-m.js.map → 2.js-BhiMP7Sz.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{3.js-CEcqDZwI.js → 3.js-C7zctWo-.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/nodes/{3.js-CEcqDZwI.js.map → 3.js-C7zctWo-.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{4.js-DoWmHMTv.js → 4.js-5G8VLxJe.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/nodes/{4.js-DoWmHMTv.js.map → 4.js-5G8VLxJe.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{5.js-hFh1mvzS.js → 5.js-HO1CExm6.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/nodes/{5.js-hFh1mvzS.js.map → 5.js-HO1CExm6.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{6.js-C9qNqJg2.js → 6.js-CDW8tRHL.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/nodes/{6.js-C9qNqJg2.js.map → 6.js-CDW8tRHL.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{8.js-Btfm0qj5.js → 8.js-BjO10Jpo.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/nodes/{8.js-Btfm0qj5.js.map → 8.js-BjO10Jpo.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{9.js-Ca7GzK3u.js → 9.js-Csa_leV9.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/nodes/{9.js-Ca7GzK3u.js.map → 9.js-Csa_leV9.js.map} +1 -1
- package/build/call-control/call-control.d.ts.map +1 -1
- package/build/call-control/call-control.js +0 -2
- package/build/call-control/index.d.ts +0 -1
- package/build/call-control/index.d.ts.map +1 -1
- package/build/call-control/index.js +0 -1
- package/build/call-control/schemas.generated.d.ts +2 -1
- package/build/call-control/schemas.generated.d.ts.map +1 -1
- package/build/call-control/schemas.generated.js +4 -4
- package/build/call-control/types.d.ts +156 -3
- package/build/call-control/types.d.ts.map +1 -1
- package/build/call-control/types.js +3 -3
- package/build/engine/interfaces/other.d.ts +1 -1
- package/build/engine/interfaces/other.d.ts.map +1 -1
- package/build/telescope/api.d.ts.map +1 -1
- package/build/telescope/api.js +8 -2
- package/build/telescope/index.d.ts +1 -1
- package/build/telescope/index.d.ts.map +1 -1
- package/build/telescope/interfaces/conversation.d.ts +8 -0
- package/build/telescope/interfaces/conversation.d.ts.map +1 -1
- package/build/telescope/interfaces/event-tracer.d.ts +8 -0
- package/build/telescope/interfaces/event-tracer.d.ts.map +1 -1
- package/build/telescope/interfaces/storage.d.ts +2 -2
- package/build/telescope/interfaces/storage.d.ts.map +1 -1
- package/build/telescope/interfaces/telescope.d.ts +1 -0
- package/build/telescope/interfaces/telescope.d.ts.map +1 -1
- package/build/telescope/stub-storage.d.ts +2 -2
- package/build/telescope/stub-storage.d.ts.map +1 -1
- package/build/telescope/stub-storage.js +3 -8
- package/build/telescope/tracers/event-tracer.d.ts.map +1 -1
- package/build/telescope/tracers/event-tracer.js +5 -0
- package/build/text-agent-handlers/incoming-message.js +1 -1
- package/build/text-agent-handlers/index.d.ts +1 -0
- package/build/text-agent-handlers/index.d.ts.map +1 -1
- package/build/text-agent-handlers/index.js +1 -0
- package/build/text-agent-handlers/instrument.d.ts +1 -0
- package/build/text-agent-handlers/instrument.d.ts.map +1 -1
- package/build/text-agent-handlers/instrument.js +6 -2
- package/build/text-agent-handlers/jobs-handler.js +1 -1
- package/build/text-agent-handlers/jobs.d.ts +1 -0
- package/build/text-agent-handlers/jobs.d.ts.map +1 -1
- package/build/text-agent-handlers/message-acceptor.d.ts +4 -0
- package/build/text-agent-handlers/message-acceptor.d.ts.map +1 -1
- package/build/text-agent-handlers/message-acceptor.js +8 -2
- package/build/text-agent-handlers/ports.d.ts +2 -1
- package/build/text-agent-handlers/ports.d.ts.map +1 -1
- package/build/text-agent-handlers/ports.js +6 -5
- package/build/text-agent-handlers/variant-scheduler.d.ts +3 -0
- package/build/text-agent-handlers/variant-scheduler.d.ts.map +1 -0
- package/build/text-agent-handlers/variant-scheduler.js +9 -0
- package/build/voice-agent-api/index.d.ts +2 -0
- package/build/voice-agent-api/index.d.ts.map +1 -1
- package/build/voice-agent-api/index.js +1 -0
- package/build/voice-agent-api/route-resolver.d.ts +19 -0
- package/build/voice-agent-api/route-resolver.d.ts.map +1 -0
- package/build/voice-agent-api/route-resolver.js +57 -0
- package/build/voice-agent-api/voice-http.d.ts +8 -4
- package/build/voice-agent-api/voice-http.d.ts.map +1 -1
- package/build/voice-agent-api/voice-http.js +31 -32
- package/package.json +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B3N9vN4_.js +0 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B3N9vN4_.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B3N9vN4_.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BBk8_Xpk.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BBk8_Xpk.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BEdAvgYp.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BEdAvgYp.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BaP19BGR.js +0 -3
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BaP19BGR.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BaP19BGR.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Bwiy-Sk7.js +0 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Bwiy-Sk7.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Bwiy-Sk7.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/C0rPkxmP.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/C0rPkxmP.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/C3cROXCy.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/C3cROXCy.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CR5IRTqC.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CR5IRTqC.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/D89azUgT.js +0 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/D89azUgT.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/D89azUgT.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DJnDF3d9.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DJnDF3d9.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Diqx_kju.js.br +0 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Diqx_kju.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DjDpMqch.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DjDpMqch.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/joiJcRPz.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/joiJcRPz.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/ouMvMh56.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/ouMvMh56.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/app.DYrvpbQq.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/app.DYrvpbQq.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/start.ZRGJFDNa.js +0 -1
- package/build/bosun-app/frontend/client/_app/immutable/entry/start.ZRGJFDNa.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/start.ZRGJFDNa.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/0.DXIuJQso.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/0.DXIuJQso.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/1.CsX5iplT.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/1.CsX5iplT.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/10.D6gFo5CY.js +0 -35
- package/build/bosun-app/frontend/client/_app/immutable/nodes/10.D6gFo5CY.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/10.D6gFo5CY.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/17.BIO8m3DR.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/17.BIO8m3DR.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/18.D4L67K6t.js +0 -11
- package/build/bosun-app/frontend/client/_app/immutable/nodes/18.D4L67K6t.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/18.D4L67K6t.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/2.6RK8LtTD.js +0 -35
- package/build/bosun-app/frontend/client/_app/immutable/nodes/2.6RK8LtTD.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/2.6RK8LtTD.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/3.CbcbRLFb.js +0 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/3.CbcbRLFb.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/3.CbcbRLFb.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/4.BzhaMuo5.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/4.BzhaMuo5.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/5.BG8ylHWg.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/5.BG8ylHWg.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/6.DkDEANSN.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/6.DkDEANSN.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/8.3fEbISY6.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/8.3fEbISY6.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/9.CoX3jzbC.js +0 -2
- package/build/bosun-app/frontend/client/_app/immutable/nodes/9.CoX3jzbC.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/9.CoX3jzbC.js.gz +0 -0
- package/build/bosun-app/frontend/server/chunks/chunks/ChatStepTrace.js-VTtwaKGp.js.map +0 -1
- package/build/bosun-app/frontend/server/chunks/chunks/source-selection.js-D5B8gfq2.js.map +0 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/_layout.svelte.js-B2wHKJV7.js.map +0 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/roleplay/_page.svelte.js-DDcIjgZD.js.map +0 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/tests/_page.svelte.js-UVUg89-t.js.map +0 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_conversationId_/traces/_page.svelte.js-DiZKDT2v.js.map +0 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_layout.svelte.js-CfkCQ2Th.js.map +0 -1
- package/build/call-control/voice-agent-config.d.ts +0 -155
- package/build/call-control/voice-agent-config.d.ts.map +0 -1
- package/build/call-control/voice-agent-config.js +0 -53
|
@@ -34571,16 +34571,18 @@ function createAgents(dispatcher, statePersistence, contextPersistence) {
|
|
|
34571
34571
|
let basePath = "";
|
|
34572
34572
|
let currentAgent = "";
|
|
34573
34573
|
let currentRegion = null;
|
|
34574
|
+
let currentVariant = null;
|
|
34574
34575
|
let currentStateId = null;
|
|
34575
34576
|
let lastLoadedImportNonce = null;
|
|
34576
|
-
function getAgentCacheKey(agentId, region) {
|
|
34577
|
-
|
|
34577
|
+
function getAgentCacheKey(agentId, region, variant = null) {
|
|
34578
|
+
const key = region ? `${agentId}.${region}` : agentId;
|
|
34579
|
+
return variant ? `${key}.${variant}` : key;
|
|
34578
34580
|
}
|
|
34579
34581
|
async function getCurrentAgent() {
|
|
34580
34582
|
if (!currentAgent) {
|
|
34581
34583
|
currentAgent = Object.keys(factories)[0];
|
|
34582
34584
|
}
|
|
34583
|
-
const cacheKey = getAgentCacheKey(currentAgent, currentRegion);
|
|
34585
|
+
const cacheKey = getAgentCacheKey(currentAgent, currentRegion, currentVariant);
|
|
34584
34586
|
let agent = agents[cacheKey];
|
|
34585
34587
|
if (!agent) {
|
|
34586
34588
|
const factory = factories[currentAgent];
|
|
@@ -34594,6 +34596,7 @@ function createAgents(dispatcher, statePersistence, contextPersistence) {
|
|
|
34594
34596
|
...dispatcher,
|
|
34595
34597
|
agentId: cacheKey,
|
|
34596
34598
|
region: currentRegion,
|
|
34599
|
+
variantId: currentVariant,
|
|
34597
34600
|
contextPersistence,
|
|
34598
34601
|
statePersistence,
|
|
34599
34602
|
factory,
|
|
@@ -34623,12 +34626,12 @@ function createAgents(dispatcher, statePersistence, contextPersistence) {
|
|
|
34623
34626
|
await api.load();
|
|
34624
34627
|
const agentId = currentAgent || Object.keys(factories)[0];
|
|
34625
34628
|
if (!agentId) return;
|
|
34626
|
-
const cacheKey = getAgentCacheKey(agentId, currentRegion);
|
|
34629
|
+
const cacheKey = getAgentCacheKey(agentId, currentRegion, currentVariant);
|
|
34627
34630
|
delete agents[cacheKey];
|
|
34628
34631
|
delete agentStates[cacheKey];
|
|
34629
|
-
await api.select(agentId, currentStateId, currentRegion);
|
|
34632
|
+
await api.select(agentId, currentStateId, currentRegion, {}, currentVariant);
|
|
34630
34633
|
},
|
|
34631
|
-
select: async (agentId, stateId, region, promptOverrides = {}) => {
|
|
34634
|
+
select: async (agentId, stateId, region, promptOverrides = {}, variant) => {
|
|
34632
34635
|
console.log(
|
|
34633
34636
|
"createAgents, select; agents: ",
|
|
34634
34637
|
Object.keys(agents),
|
|
@@ -34637,6 +34640,7 @@ function createAgents(dispatcher, statePersistence, contextPersistence) {
|
|
|
34637
34640
|
);
|
|
34638
34641
|
currentAgent = agentId;
|
|
34639
34642
|
currentRegion = region || null;
|
|
34643
|
+
currentVariant = variant || null;
|
|
34640
34644
|
const agent = await getCurrentAgent();
|
|
34641
34645
|
agent.setPromptOverrides({});
|
|
34642
34646
|
await dispatcher.sendAgentSelected({
|
|
@@ -34695,8 +34699,8 @@ function createAgents(dispatcher, statePersistence, contextPersistence) {
|
|
|
34695
34699
|
handleMessage: async (message) => {
|
|
34696
34700
|
currentStateId = await (await getCurrentAgent()).handleMessage(message);
|
|
34697
34701
|
},
|
|
34698
|
-
hangup: async (agentId, region) => {
|
|
34699
|
-
const cacheKey = getAgentCacheKey(agentId, region);
|
|
34702
|
+
hangup: async (agentId, region, variant = null) => {
|
|
34703
|
+
const cacheKey = getAgentCacheKey(agentId, region, variant);
|
|
34700
34704
|
const agent = agents[cacheKey];
|
|
34701
34705
|
if (!agent) {
|
|
34702
34706
|
throw new Error(`Cannot hangup: cannot find agent: ${cacheKey}`);
|
|
@@ -34807,6 +34811,7 @@ async function loadAgent(props) {
|
|
|
34807
34811
|
stepTracer,
|
|
34808
34812
|
stepRegistry,
|
|
34809
34813
|
logger,
|
|
34814
|
+
variantId: props.variantId ?? void 0,
|
|
34810
34815
|
apiCallTracer,
|
|
34811
34816
|
conversationalTracer,
|
|
34812
34817
|
scheduler,
|
|
@@ -35316,7 +35321,8 @@ async function oldServer(ws) {
|
|
|
35316
35321
|
msg.event.agent,
|
|
35317
35322
|
msg.event.state,
|
|
35318
35323
|
msg.event.region,
|
|
35319
|
-
msg.event.promptOverrides
|
|
35324
|
+
msg.event.promptOverrides,
|
|
35325
|
+
msg.event.variant
|
|
35320
35326
|
);
|
|
35321
35327
|
break;
|
|
35322
35328
|
case "prompt-overrides-updated":
|
|
@@ -35338,7 +35344,11 @@ async function oldServer(ws) {
|
|
|
35338
35344
|
await agents.selectStep(msg.event.step);
|
|
35339
35345
|
break;
|
|
35340
35346
|
case "hangup":
|
|
35341
|
-
await agents.hangup(
|
|
35347
|
+
await agents.hangup(
|
|
35348
|
+
msg.event.agentId,
|
|
35349
|
+
msg.event.region,
|
|
35350
|
+
msg.event.variant ?? null
|
|
35351
|
+
);
|
|
35342
35352
|
break;
|
|
35343
35353
|
default:
|
|
35344
35354
|
console.error(`Unknown event type: ${msg.event.type}`);
|
|
@@ -46164,7 +46174,7 @@ import { createContext as createContext3 } from "@recombine-ai/platform/bosun";
|
|
|
46164
46174
|
import "@recombine-ai/platform/engine";
|
|
46165
46175
|
import "@recombine-ai/platform/telescope";
|
|
46166
46176
|
async function generateReplyVariants(props) {
|
|
46167
|
-
const { agentId, region, states, count, context, promptOverrides = {} } = props;
|
|
46177
|
+
const { agentId, region, variantId, states, count, context, promptOverrides = {} } = props;
|
|
46168
46178
|
if (!Number.isFinite(count) || count <= 0) return [];
|
|
46169
46179
|
const targetState = states.at(-1);
|
|
46170
46180
|
if (!targetState) throw new Error("No saved roleplay state found for variants");
|
|
@@ -46187,6 +46197,7 @@ async function generateReplyVariants(props) {
|
|
|
46187
46197
|
index,
|
|
46188
46198
|
factory,
|
|
46189
46199
|
region,
|
|
46200
|
+
variantId,
|
|
46190
46201
|
context,
|
|
46191
46202
|
prevState,
|
|
46192
46203
|
statesById,
|
|
@@ -46257,7 +46268,17 @@ function createVariantState(prev, index) {
|
|
|
46257
46268
|
};
|
|
46258
46269
|
}
|
|
46259
46270
|
async function generateSingleReplyVariant(props) {
|
|
46260
|
-
const {
|
|
46271
|
+
const {
|
|
46272
|
+
index,
|
|
46273
|
+
factory,
|
|
46274
|
+
region,
|
|
46275
|
+
variantId,
|
|
46276
|
+
context,
|
|
46277
|
+
prevState,
|
|
46278
|
+
statesById,
|
|
46279
|
+
message,
|
|
46280
|
+
promptOverrides
|
|
46281
|
+
} = props;
|
|
46261
46282
|
const state = createVariantState(prevState?.id ?? null, index);
|
|
46262
46283
|
const scheduleSeed = clone3(prevState?.schedule ?? {});
|
|
46263
46284
|
const log = (entry) => {
|
|
@@ -46316,6 +46337,7 @@ async function generateSingleReplyVariant(props) {
|
|
|
46316
46337
|
stepTracer,
|
|
46317
46338
|
stepRegistry,
|
|
46318
46339
|
logger,
|
|
46340
|
+
variantId,
|
|
46319
46341
|
apiCallTracer,
|
|
46320
46342
|
conversationalTracer,
|
|
46321
46343
|
scheduler,
|
|
@@ -46432,10 +46454,16 @@ function createRolePlayRouter(t3) {
|
|
|
46432
46454
|
external_exports.object({
|
|
46433
46455
|
agentId: AgentIdSchema,
|
|
46434
46456
|
step: external_exports.string().trim().min(1).max(512),
|
|
46435
|
-
prompt: external_exports.string().max(1e6)
|
|
46457
|
+
prompt: external_exports.string().max(1e6),
|
|
46458
|
+
variant: external_exports.string().trim().min(1).max(128).nullable().optional()
|
|
46436
46459
|
})
|
|
46437
46460
|
).mutation(async ({ input }) => {
|
|
46438
|
-
await persistPromptUpdate(
|
|
46461
|
+
await persistPromptUpdate(
|
|
46462
|
+
input.agentId,
|
|
46463
|
+
input.step,
|
|
46464
|
+
input.prompt,
|
|
46465
|
+
input.variant ?? void 0
|
|
46466
|
+
);
|
|
46439
46467
|
return { ok: true };
|
|
46440
46468
|
}),
|
|
46441
46469
|
suggestPromptEdit: t3.procedure.input(
|
|
@@ -46443,10 +46471,16 @@ function createRolePlayRouter(t3) {
|
|
|
46443
46471
|
agentId: AgentIdSchema,
|
|
46444
46472
|
step: external_exports.string().trim().min(1).max(512),
|
|
46445
46473
|
request: external_exports.string().trim().min(1).max(1e5),
|
|
46446
|
-
progressId: external_exports.string().uuid()
|
|
46474
|
+
progressId: external_exports.string().uuid(),
|
|
46475
|
+
variant: external_exports.string().trim().min(1).max(128).nullable().optional()
|
|
46447
46476
|
})
|
|
46448
46477
|
).mutation(async ({ input }) => {
|
|
46449
|
-
const
|
|
46478
|
+
const variantId = input.variant ?? void 0;
|
|
46479
|
+
const originalPrompt = await readEditablePrompt(
|
|
46480
|
+
input.agentId,
|
|
46481
|
+
input.step,
|
|
46482
|
+
variantId
|
|
46483
|
+
);
|
|
46450
46484
|
const suggestedPrompt = await suggestPromptEdit({
|
|
46451
46485
|
request: input.request,
|
|
46452
46486
|
originalPrompt,
|
|
@@ -46456,6 +46490,7 @@ function createRolePlayRouter(t3) {
|
|
|
46456
46490
|
const proposal = createPromptEditProposal({
|
|
46457
46491
|
agentId: input.agentId,
|
|
46458
46492
|
step: input.step,
|
|
46493
|
+
variantId,
|
|
46459
46494
|
originalPrompt,
|
|
46460
46495
|
suggestedPrompt
|
|
46461
46496
|
});
|
|
@@ -46466,7 +46501,12 @@ function createRolePlayRouter(t3) {
|
|
|
46466
46501
|
acceptPromptEdit: t3.procedure.input(external_exports.object({ id: external_exports.string().uuid() })).mutation(async ({ input }) => {
|
|
46467
46502
|
const proposal = getPromptEditProposal(input.id);
|
|
46468
46503
|
if (!proposal) throw new Error("This prompt suggestion is no longer available");
|
|
46469
|
-
await persistPromptUpdate(
|
|
46504
|
+
await persistPromptUpdate(
|
|
46505
|
+
proposal.agentId,
|
|
46506
|
+
proposal.step,
|
|
46507
|
+
proposal.suggestedPrompt,
|
|
46508
|
+
proposal.variantId
|
|
46509
|
+
);
|
|
46470
46510
|
deletePromptEditProposal(proposal.id);
|
|
46471
46511
|
return { ok: true, prompt: proposal.suggestedPrompt };
|
|
46472
46512
|
}),
|
|
@@ -46475,10 +46515,16 @@ function createRolePlayRouter(t3) {
|
|
|
46475
46515
|
external_exports.object({
|
|
46476
46516
|
agentId: AgentIdSchema,
|
|
46477
46517
|
step: external_exports.string().trim().min(1).max(512),
|
|
46478
|
-
schema: external_exports.string().max(1e6)
|
|
46518
|
+
schema: external_exports.string().max(1e6),
|
|
46519
|
+
variant: external_exports.string().trim().min(1).max(128).nullable().optional()
|
|
46479
46520
|
})
|
|
46480
46521
|
).mutation(async ({ input }) => {
|
|
46481
|
-
await persistSchemaUpdate(
|
|
46522
|
+
await persistSchemaUpdate(
|
|
46523
|
+
input.agentId,
|
|
46524
|
+
input.step,
|
|
46525
|
+
input.schema,
|
|
46526
|
+
input.variant ?? void 0
|
|
46527
|
+
);
|
|
46482
46528
|
bumpImportNonce();
|
|
46483
46529
|
return {
|
|
46484
46530
|
ok: true,
|
|
@@ -46488,10 +46534,15 @@ function createRolePlayRouter(t3) {
|
|
|
46488
46534
|
userMessageHistory: t3.procedure.input(
|
|
46489
46535
|
external_exports.object({
|
|
46490
46536
|
agentId: AgentIdSchema,
|
|
46491
|
-
region: external_exports.string().trim().min(1).max(128).nullable().optional()
|
|
46537
|
+
region: external_exports.string().trim().min(1).max(128).nullable().optional(),
|
|
46538
|
+
variant: external_exports.string().trim().min(1).max(128).nullable().optional()
|
|
46492
46539
|
})
|
|
46493
46540
|
).query(async ({ input }) => {
|
|
46494
|
-
const stateKey = resolveAgentStateKey(
|
|
46541
|
+
const stateKey = resolveAgentStateKey(
|
|
46542
|
+
input.agentId,
|
|
46543
|
+
input.region ?? null,
|
|
46544
|
+
input.variant ?? null
|
|
46545
|
+
);
|
|
46495
46546
|
const filePath = resolveAgentHistoryFile(stateKey);
|
|
46496
46547
|
const states = await loadJsonArray(filePath);
|
|
46497
46548
|
const byText = /* @__PURE__ */ new Map();
|
|
@@ -46527,18 +46578,24 @@ function createRolePlayRouter(t3) {
|
|
|
46527
46578
|
external_exports.object({
|
|
46528
46579
|
agentId: AgentIdSchema,
|
|
46529
46580
|
region: external_exports.string().trim().min(1).max(128).nullable().optional(),
|
|
46581
|
+
variant: external_exports.string().trim().min(1).max(128).nullable().optional(),
|
|
46530
46582
|
context: external_exports.record(external_exports.string(), external_exports.unknown()).nullable().optional(),
|
|
46531
46583
|
promptOverrides: external_exports.record(external_exports.string(), external_exports.string().max(1e6)).optional(),
|
|
46532
46584
|
count: external_exports.number().int().min(1).max(9).default(9)
|
|
46533
46585
|
})
|
|
46534
46586
|
).mutation(async ({ input }) => {
|
|
46535
|
-
const stateKey = resolveAgentStateKey(
|
|
46587
|
+
const stateKey = resolveAgentStateKey(
|
|
46588
|
+
input.agentId,
|
|
46589
|
+
input.region ?? null,
|
|
46590
|
+
input.variant ?? null
|
|
46591
|
+
);
|
|
46536
46592
|
const rawStates = await fsStatePersistence.load(stateKey);
|
|
46537
46593
|
const states = Array.isArray(rawStates) ? rawStates : [];
|
|
46538
46594
|
const context = input.context ?? (await fsContextPersistence.load("default") || {});
|
|
46539
46595
|
const variants = await generateReplyVariants({
|
|
46540
46596
|
agentId: input.agentId,
|
|
46541
46597
|
region: input.region ?? null,
|
|
46598
|
+
variantId: input.variant ?? void 0,
|
|
46542
46599
|
states,
|
|
46543
46600
|
count: input.count,
|
|
46544
46601
|
context,
|
|
@@ -46557,13 +46614,18 @@ function createRolePlayRouter(t3) {
|
|
|
46557
46614
|
external_exports.object({
|
|
46558
46615
|
agentId: AgentIdSchema,
|
|
46559
46616
|
region: external_exports.string().trim().min(1).max(128).nullable().optional(),
|
|
46617
|
+
variant: external_exports.string().trim().min(1).max(128).nullable().optional(),
|
|
46560
46618
|
state: external_exports.object({
|
|
46561
46619
|
history: external_exports.unknown(),
|
|
46562
46620
|
schedule: external_exports.unknown()
|
|
46563
46621
|
})
|
|
46564
46622
|
})
|
|
46565
46623
|
).mutation(async ({ input }) => {
|
|
46566
|
-
const stateKey = resolveAgentStateKey(
|
|
46624
|
+
const stateKey = resolveAgentStateKey(
|
|
46625
|
+
input.agentId,
|
|
46626
|
+
input.region ?? null,
|
|
46627
|
+
input.variant ?? null
|
|
46628
|
+
);
|
|
46567
46629
|
const rawStates = await fsStatePersistence.load(stateKey);
|
|
46568
46630
|
const states = Array.isArray(rawStates) ? rawStates : [];
|
|
46569
46631
|
const latestState = states.at(-1);
|
|
@@ -46588,8 +46650,9 @@ function createRolePlayRouter(t3) {
|
|
|
46588
46650
|
})
|
|
46589
46651
|
});
|
|
46590
46652
|
}
|
|
46591
|
-
function resolveAgentStateKey(agentId, region) {
|
|
46592
|
-
|
|
46653
|
+
function resolveAgentStateKey(agentId, region, variant) {
|
|
46654
|
+
const key = region ? `${agentId}.${region}` : agentId;
|
|
46655
|
+
return variant ? `${key}.${variant}` : key;
|
|
46593
46656
|
}
|
|
46594
46657
|
function resolveAgentHistoryFile(agentId) {
|
|
46595
46658
|
const baseDir = getProjectDataDir("history");
|
|
@@ -46614,23 +46677,23 @@ async function loadJsonArray(filePath) {
|
|
|
46614
46677
|
}
|
|
46615
46678
|
var noop2 = () => void 0;
|
|
46616
46679
|
var noopAsync = () => Promise.resolve();
|
|
46617
|
-
async function persistPromptUpdate(agentId, stepName, prompt) {
|
|
46618
|
-
const { basePath, steps } = await loadAgentSteps(agentId);
|
|
46680
|
+
async function persistPromptUpdate(agentId, stepName, prompt, variantId) {
|
|
46681
|
+
const { basePath, steps } = await loadAgentSteps(agentId, variantId);
|
|
46619
46682
|
const targetStep = steps.find((step) => step?.name === stepName);
|
|
46620
46683
|
if (!targetStep || targetStep?.prompt?.type !== "file") return;
|
|
46621
46684
|
const promptPath = path12.resolve(basePath, targetStep.prompt.path);
|
|
46622
46685
|
await fs6.promises.writeFile(promptPath, prompt, "utf-8");
|
|
46623
46686
|
}
|
|
46624
|
-
async function readEditablePrompt(agentId, stepName) {
|
|
46625
|
-
const { steps } = await loadAgentSteps(agentId);
|
|
46687
|
+
async function readEditablePrompt(agentId, stepName, variantId) {
|
|
46688
|
+
const { steps } = await loadAgentSteps(agentId, variantId);
|
|
46626
46689
|
const targetStep = steps.find((step) => step?.name === stepName);
|
|
46627
46690
|
if (!targetStep || targetStep?.prompt?.type !== "file") {
|
|
46628
46691
|
throw new Error(`Step '${stepName}' does not have an editable file prompt`);
|
|
46629
46692
|
}
|
|
46630
46693
|
return targetStep.prompt.content();
|
|
46631
46694
|
}
|
|
46632
|
-
async function persistSchemaUpdate(agentId, stepName, schema2) {
|
|
46633
|
-
const { basePath, steps } = await loadAgentSteps(agentId);
|
|
46695
|
+
async function persistSchemaUpdate(agentId, stepName, schema2, variantId) {
|
|
46696
|
+
const { basePath, steps } = await loadAgentSteps(agentId, variantId);
|
|
46634
46697
|
const targetStep = steps.find((step) => step?.name === stepName);
|
|
46635
46698
|
if (!targetStep || targetStep?.prompt?.type !== "file" || !targetStep.schema) {
|
|
46636
46699
|
throw new Error(`Step '${stepName}' does not have an editable file schema`);
|
|
@@ -46640,7 +46703,7 @@ async function persistSchemaUpdate(agentId, stepName, schema2) {
|
|
|
46640
46703
|
await fs6.promises.access(schemaPath);
|
|
46641
46704
|
await validateAndReplaceSchemaFile(schemaPath, schema2);
|
|
46642
46705
|
}
|
|
46643
|
-
async function loadAgentSteps(agentId) {
|
|
46706
|
+
async function loadAgentSteps(agentId, variantId) {
|
|
46644
46707
|
const { factory, basePath } = await getAgentFactory(agentId);
|
|
46645
46708
|
const ctx = createContext4({});
|
|
46646
46709
|
const steps = [];
|
|
@@ -46652,6 +46715,7 @@ async function loadAgentSteps(agentId) {
|
|
|
46652
46715
|
};
|
|
46653
46716
|
await factory({
|
|
46654
46717
|
ctx,
|
|
46718
|
+
variantId,
|
|
46655
46719
|
getMessages: () => [],
|
|
46656
46720
|
logger: asLogger(console),
|
|
46657
46721
|
scheduler: {
|
|
@@ -46882,6 +46946,7 @@ async function loadAgents(props) {
|
|
|
46882
46946
|
const {
|
|
46883
46947
|
agentId,
|
|
46884
46948
|
region,
|
|
46949
|
+
variantId,
|
|
46885
46950
|
getMessages,
|
|
46886
46951
|
sendMessage,
|
|
46887
46952
|
stepTracer,
|
|
@@ -46942,6 +47007,7 @@ async function loadAgents(props) {
|
|
|
46942
47007
|
stepTracer,
|
|
46943
47008
|
stepRegistry,
|
|
46944
47009
|
logger,
|
|
47010
|
+
variantId,
|
|
46945
47011
|
scheduler,
|
|
46946
47012
|
getMessages: () => history,
|
|
46947
47013
|
async sendMessage(message) {
|
|
@@ -47346,6 +47412,7 @@ var RecombineAgentProvider = class {
|
|
|
47346
47412
|
await loadAgents({
|
|
47347
47413
|
agentId: vars.agentId,
|
|
47348
47414
|
region: vars.region,
|
|
47415
|
+
variantId: vars.variantId,
|
|
47349
47416
|
getMessages: () => conv,
|
|
47350
47417
|
sendMessage: async (message) => {
|
|
47351
47418
|
const m2 = typeof message === "string" ? { sender: "agent", text: message } : message;
|
|
@@ -47574,6 +47641,7 @@ async function runPromptTests(suite, selection, requestedConfig, opts) {
|
|
|
47574
47641
|
agentId: suite.agentId,
|
|
47575
47642
|
testId: String(test.id ?? ""),
|
|
47576
47643
|
...suite.region ? { region: suite.region } : {},
|
|
47644
|
+
...suite.variantId ? { variantId: suite.variantId } : {},
|
|
47577
47645
|
context: test.context,
|
|
47578
47646
|
step: test.step,
|
|
47579
47647
|
promptOverrides: opts?.promptOverrides ?? {},
|
|
@@ -48254,53 +48322,101 @@ function envTextOrDefault2(key, defaultValue) {
|
|
|
48254
48322
|
}
|
|
48255
48323
|
|
|
48256
48324
|
// ../bosun-app/src/backend/tests/router.ts
|
|
48257
|
-
async function resolveSuiteSelection(agentId, region) {
|
|
48325
|
+
async function resolveSuiteSelection(agentId, region, variant) {
|
|
48326
|
+
const variantId = variant || void 0;
|
|
48258
48327
|
const bosunApi = await getProjectBosunApi();
|
|
48259
48328
|
const meta3 = bosunApi ? await bosunApi.getAgentMeta(agentId) : null;
|
|
48260
48329
|
const isRegionScoped = meta3?.testScope === "region";
|
|
48261
|
-
if (!isRegionScoped) return { suiteKey: agentId, agentId };
|
|
48330
|
+
if (!isRegionScoped) return { suiteKey: agentId, agentId, variantId };
|
|
48262
48331
|
if (!bosunApi) {
|
|
48263
48332
|
throw new Error(`Project does not export bosunApi, cannot resolve suite for '${agentId}'.`);
|
|
48264
48333
|
}
|
|
48265
|
-
const resolved = await bosunApi.resolveTestSuite({ agentId, region });
|
|
48334
|
+
const resolved = await bosunApi.resolveTestSuite({ agentId, region, variantId });
|
|
48266
48335
|
return {
|
|
48267
48336
|
suiteKey: resolved.suiteKey,
|
|
48268
48337
|
agentId,
|
|
48269
|
-
region: resolved.resolvedRegion ?? void 0
|
|
48338
|
+
region: resolved.resolvedRegion ?? void 0,
|
|
48339
|
+
variantId
|
|
48270
48340
|
};
|
|
48271
48341
|
}
|
|
48272
48342
|
function createTestsRouter(t3) {
|
|
48273
48343
|
return t3.router({
|
|
48274
|
-
list: t3.procedure.input(
|
|
48275
|
-
|
|
48344
|
+
list: t3.procedure.input(
|
|
48345
|
+
external_exports.object({
|
|
48346
|
+
agent: external_exports.string(),
|
|
48347
|
+
region: external_exports.string().nullish(),
|
|
48348
|
+
variant: external_exports.string().nullish()
|
|
48349
|
+
})
|
|
48350
|
+
).query(async ({ input }) => {
|
|
48351
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48352
|
+
input.agent,
|
|
48353
|
+
input.region,
|
|
48354
|
+
input.variant
|
|
48355
|
+
);
|
|
48276
48356
|
return loadTests(suiteKey);
|
|
48277
48357
|
}),
|
|
48278
|
-
latestResult: t3.procedure.input(
|
|
48279
|
-
|
|
48358
|
+
latestResult: t3.procedure.input(
|
|
48359
|
+
external_exports.object({
|
|
48360
|
+
agent: external_exports.string(),
|
|
48361
|
+
region: external_exports.string().nullish(),
|
|
48362
|
+
variant: external_exports.string().nullish()
|
|
48363
|
+
})
|
|
48364
|
+
).query(async ({ input }) => {
|
|
48365
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48366
|
+
input.agent,
|
|
48367
|
+
input.region,
|
|
48368
|
+
input.variant
|
|
48369
|
+
);
|
|
48280
48370
|
return loadLatestResultsByTest(suiteKey);
|
|
48281
48371
|
}),
|
|
48282
|
-
runProgress: t3.procedure.input(
|
|
48283
|
-
|
|
48372
|
+
runProgress: t3.procedure.input(
|
|
48373
|
+
external_exports.object({
|
|
48374
|
+
agent: external_exports.string(),
|
|
48375
|
+
region: external_exports.string().nullish(),
|
|
48376
|
+
variant: external_exports.string().nullish()
|
|
48377
|
+
})
|
|
48378
|
+
).query(async ({ input }) => {
|
|
48379
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48380
|
+
input.agent,
|
|
48381
|
+
input.region,
|
|
48382
|
+
input.variant
|
|
48383
|
+
);
|
|
48284
48384
|
return getPromptTestsProgress(suiteKey);
|
|
48285
48385
|
}),
|
|
48286
|
-
historyList: t3.procedure.input(
|
|
48287
|
-
|
|
48386
|
+
historyList: t3.procedure.input(
|
|
48387
|
+
external_exports.object({
|
|
48388
|
+
agent: external_exports.string(),
|
|
48389
|
+
region: external_exports.string().nullish(),
|
|
48390
|
+
variant: external_exports.string().nullish()
|
|
48391
|
+
})
|
|
48392
|
+
).query(async ({ input }) => {
|
|
48393
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48394
|
+
input.agent,
|
|
48395
|
+
input.region,
|
|
48396
|
+
input.variant
|
|
48397
|
+
);
|
|
48288
48398
|
return listRunHistory(suiteKey);
|
|
48289
48399
|
}),
|
|
48290
48400
|
historyRun: t3.procedure.input(
|
|
48291
48401
|
external_exports.object({
|
|
48292
48402
|
agent: external_exports.string(),
|
|
48293
48403
|
region: external_exports.string().nullish(),
|
|
48404
|
+
variant: external_exports.string().nullish(),
|
|
48294
48405
|
timestamp: external_exports.string()
|
|
48295
48406
|
})
|
|
48296
48407
|
).query(async ({ input }) => {
|
|
48297
|
-
const { suiteKey } = await resolveSuiteSelection(
|
|
48408
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48409
|
+
input.agent,
|
|
48410
|
+
input.region,
|
|
48411
|
+
input.variant
|
|
48412
|
+
);
|
|
48298
48413
|
return getRunHistory(suiteKey, input.timestamp);
|
|
48299
48414
|
}),
|
|
48300
48415
|
resultEntry: t3.procedure.input(
|
|
48301
48416
|
external_exports.object({
|
|
48302
48417
|
agent: external_exports.string(),
|
|
48303
48418
|
region: external_exports.string().nullish(),
|
|
48419
|
+
variant: external_exports.string().nullish(),
|
|
48304
48420
|
testId: external_exports.string(),
|
|
48305
48421
|
// TODO resultKey should be keyof of ResultEntry
|
|
48306
48422
|
resultKey: external_exports.string(),
|
|
@@ -48308,7 +48424,11 @@ function createTestsRouter(t3) {
|
|
|
48308
48424
|
timestamp: external_exports.string().optional()
|
|
48309
48425
|
})
|
|
48310
48426
|
).query(async ({ input }) => {
|
|
48311
|
-
const { suiteKey } = await resolveSuiteSelection(
|
|
48427
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48428
|
+
input.agent,
|
|
48429
|
+
input.region,
|
|
48430
|
+
input.variant
|
|
48431
|
+
);
|
|
48312
48432
|
return getResultEntry(
|
|
48313
48433
|
suiteKey,
|
|
48314
48434
|
input.testId,
|
|
@@ -48321,12 +48441,17 @@ function createTestsRouter(t3) {
|
|
|
48321
48441
|
external_exports.object({
|
|
48322
48442
|
agent: external_exports.string(),
|
|
48323
48443
|
region: external_exports.string().nullish(),
|
|
48444
|
+
variant: external_exports.string().nullish(),
|
|
48324
48445
|
testId: external_exports.string(),
|
|
48325
48446
|
index: external_exports.number().int().nonnegative(),
|
|
48326
48447
|
timestamp: external_exports.string().optional()
|
|
48327
48448
|
})
|
|
48328
48449
|
).mutation(async ({ input }) => {
|
|
48329
|
-
const { suiteKey } = await resolveSuiteSelection(
|
|
48450
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48451
|
+
input.agent,
|
|
48452
|
+
input.region,
|
|
48453
|
+
input.variant
|
|
48454
|
+
);
|
|
48330
48455
|
return analyzeRunQuotes({
|
|
48331
48456
|
agent: suiteKey,
|
|
48332
48457
|
testId: input.testId,
|
|
@@ -48343,28 +48468,48 @@ function createTestsRouter(t3) {
|
|
|
48343
48468
|
).mutation(async ({ input }) => {
|
|
48344
48469
|
return findPromptIssues(input);
|
|
48345
48470
|
}),
|
|
48346
|
-
suite: t3.procedure.input(
|
|
48347
|
-
|
|
48471
|
+
suite: t3.procedure.input(
|
|
48472
|
+
external_exports.object({
|
|
48473
|
+
agent: external_exports.string(),
|
|
48474
|
+
region: external_exports.string().nullish(),
|
|
48475
|
+
variant: external_exports.string().nullish()
|
|
48476
|
+
})
|
|
48477
|
+
).query(async ({ input }) => {
|
|
48478
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48479
|
+
input.agent,
|
|
48480
|
+
input.region,
|
|
48481
|
+
input.variant
|
|
48482
|
+
);
|
|
48348
48483
|
return readSuite(suiteKey);
|
|
48349
48484
|
}),
|
|
48350
48485
|
addTest: t3.procedure.input(
|
|
48351
48486
|
external_exports.object({
|
|
48352
48487
|
agent: external_exports.string(),
|
|
48353
48488
|
region: external_exports.string().nullish(),
|
|
48489
|
+
variant: external_exports.string().nullish(),
|
|
48354
48490
|
seed: TestRowSchema.omit({ id: true, order: true }).partial()
|
|
48355
48491
|
})
|
|
48356
48492
|
).mutation(async ({ input }) => {
|
|
48357
|
-
const { suiteKey } = await resolveSuiteSelection(
|
|
48493
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48494
|
+
input.agent,
|
|
48495
|
+
input.region,
|
|
48496
|
+
input.variant
|
|
48497
|
+
);
|
|
48358
48498
|
return addTest(suiteKey, input.seed);
|
|
48359
48499
|
}),
|
|
48360
48500
|
createPiiSanitizedTestDraft: t3.procedure.input(
|
|
48361
48501
|
external_exports.object({
|
|
48362
48502
|
agent: external_exports.string(),
|
|
48363
48503
|
region: external_exports.string().nullish(),
|
|
48504
|
+
variant: external_exports.string().nullish(),
|
|
48364
48505
|
seed: TraceTestSeedSchema
|
|
48365
48506
|
})
|
|
48366
48507
|
).mutation(async ({ input }) => {
|
|
48367
|
-
const { suiteKey } = await resolveSuiteSelection(
|
|
48508
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48509
|
+
input.agent,
|
|
48510
|
+
input.region,
|
|
48511
|
+
input.variant
|
|
48512
|
+
);
|
|
48368
48513
|
try {
|
|
48369
48514
|
const draft = await createPiiSanitizedTestDraft({ suiteKey, seed: input.seed });
|
|
48370
48515
|
return { status: "ready", ...draft };
|
|
@@ -48381,11 +48526,16 @@ function createTestsRouter(t3) {
|
|
|
48381
48526
|
external_exports.object({
|
|
48382
48527
|
agent: external_exports.string(),
|
|
48383
48528
|
region: external_exports.string().nullish(),
|
|
48529
|
+
variant: external_exports.string().nullish(),
|
|
48384
48530
|
draftId: external_exports.string().uuid(),
|
|
48385
48531
|
reviewed: TraceTestReviewContentSchema
|
|
48386
48532
|
})
|
|
48387
48533
|
).mutation(async ({ input }) => {
|
|
48388
|
-
const { suiteKey } = await resolveSuiteSelection(
|
|
48534
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48535
|
+
input.agent,
|
|
48536
|
+
input.region,
|
|
48537
|
+
input.variant
|
|
48538
|
+
);
|
|
48389
48539
|
return createTestFromPiiSanitizedTestDraft({
|
|
48390
48540
|
suiteKey,
|
|
48391
48541
|
draftId: input.draftId,
|
|
@@ -48396,17 +48546,23 @@ function createTestsRouter(t3) {
|
|
|
48396
48546
|
external_exports.object({
|
|
48397
48547
|
agent: external_exports.string(),
|
|
48398
48548
|
region: external_exports.string().nullish(),
|
|
48549
|
+
variant: external_exports.string().nullish(),
|
|
48399
48550
|
id: external_exports.string(),
|
|
48400
48551
|
patch: TestRowSchema.omit({ id: true, order: true }).partial()
|
|
48401
48552
|
})
|
|
48402
48553
|
).mutation(async ({ input }) => {
|
|
48403
|
-
const { suiteKey } = await resolveSuiteSelection(
|
|
48554
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48555
|
+
input.agent,
|
|
48556
|
+
input.region,
|
|
48557
|
+
input.variant
|
|
48558
|
+
);
|
|
48404
48559
|
return patchTest(suiteKey, input.id, input.patch);
|
|
48405
48560
|
}),
|
|
48406
48561
|
patchTestsBatch: t3.procedure.input(
|
|
48407
48562
|
external_exports.object({
|
|
48408
48563
|
agent: external_exports.string(),
|
|
48409
48564
|
region: external_exports.string().nullish(),
|
|
48565
|
+
variant: external_exports.string().nullish(),
|
|
48410
48566
|
updates: external_exports.array(
|
|
48411
48567
|
external_exports.object({
|
|
48412
48568
|
id: external_exports.string(),
|
|
@@ -48415,21 +48571,41 @@ function createTestsRouter(t3) {
|
|
|
48415
48571
|
)
|
|
48416
48572
|
})
|
|
48417
48573
|
).mutation(async ({ input }) => {
|
|
48418
|
-
const { suiteKey } = await resolveSuiteSelection(
|
|
48574
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48575
|
+
input.agent,
|
|
48576
|
+
input.region,
|
|
48577
|
+
input.variant
|
|
48578
|
+
);
|
|
48419
48579
|
return patchTestsBatch(suiteKey, input.updates);
|
|
48420
48580
|
}),
|
|
48421
|
-
deleteTest: t3.procedure.input(
|
|
48422
|
-
|
|
48581
|
+
deleteTest: t3.procedure.input(
|
|
48582
|
+
external_exports.object({
|
|
48583
|
+
agent: external_exports.string(),
|
|
48584
|
+
region: external_exports.string().nullish(),
|
|
48585
|
+
variant: external_exports.string().nullish(),
|
|
48586
|
+
id: external_exports.string()
|
|
48587
|
+
})
|
|
48588
|
+
).mutation(async ({ input }) => {
|
|
48589
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48590
|
+
input.agent,
|
|
48591
|
+
input.region,
|
|
48592
|
+
input.variant
|
|
48593
|
+
);
|
|
48423
48594
|
return deleteTest(suiteKey, input.id);
|
|
48424
48595
|
}),
|
|
48425
48596
|
reorder: t3.procedure.input(
|
|
48426
48597
|
external_exports.object({
|
|
48427
48598
|
agent: external_exports.string(),
|
|
48428
48599
|
region: external_exports.string().nullish(),
|
|
48600
|
+
variant: external_exports.string().nullish(),
|
|
48429
48601
|
order: external_exports.array(external_exports.string())
|
|
48430
48602
|
})
|
|
48431
48603
|
).mutation(async ({ input }) => {
|
|
48432
|
-
const { suiteKey } = await resolveSuiteSelection(
|
|
48604
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48605
|
+
input.agent,
|
|
48606
|
+
input.region,
|
|
48607
|
+
input.variant
|
|
48608
|
+
);
|
|
48433
48609
|
return reorderTests(suiteKey, input.order);
|
|
48434
48610
|
}),
|
|
48435
48611
|
runTests: t3.procedure.input(
|
|
@@ -48437,6 +48613,7 @@ function createTestsRouter(t3) {
|
|
|
48437
48613
|
external_exports.object({
|
|
48438
48614
|
agent: external_exports.string(),
|
|
48439
48615
|
region: external_exports.string().nullish(),
|
|
48616
|
+
variant: external_exports.string().nullish(),
|
|
48440
48617
|
step: external_exports.string(),
|
|
48441
48618
|
scope: external_exports.enum(["pinned", "all"]).optional(),
|
|
48442
48619
|
promptOverrides: external_exports.record(external_exports.string(), external_exports.string().max(1e6)).optional(),
|
|
@@ -48446,6 +48623,7 @@ function createTestsRouter(t3) {
|
|
|
48446
48623
|
external_exports.object({
|
|
48447
48624
|
agent: external_exports.string(),
|
|
48448
48625
|
region: external_exports.string().nullish(),
|
|
48626
|
+
variant: external_exports.string().nullish(),
|
|
48449
48627
|
testId: external_exports.string(),
|
|
48450
48628
|
promptOverrides: external_exports.record(external_exports.string(), external_exports.string().max(1e6)).optional(),
|
|
48451
48629
|
repeats: external_exports.number().int().min(1).max(500),
|
|
@@ -48453,7 +48631,11 @@ function createTestsRouter(t3) {
|
|
|
48453
48631
|
}).strict()
|
|
48454
48632
|
])
|
|
48455
48633
|
).mutation(async ({ input }) => {
|
|
48456
|
-
const selection = await resolveSuiteSelection(
|
|
48634
|
+
const selection = await resolveSuiteSelection(
|
|
48635
|
+
input.agent,
|
|
48636
|
+
input.region,
|
|
48637
|
+
input.variant
|
|
48638
|
+
);
|
|
48457
48639
|
const runConfig = { repeats: input.repeats, concurrency: input.concurrency };
|
|
48458
48640
|
if ("testId" in input) {
|
|
48459
48641
|
return runPromptTestsManaged(
|
|
@@ -48473,8 +48655,18 @@ function createTestsRouter(t3) {
|
|
|
48473
48655
|
input.promptOverrides
|
|
48474
48656
|
);
|
|
48475
48657
|
}),
|
|
48476
|
-
cancelRun: t3.procedure.input(
|
|
48477
|
-
|
|
48658
|
+
cancelRun: t3.procedure.input(
|
|
48659
|
+
external_exports.object({
|
|
48660
|
+
agent: external_exports.string(),
|
|
48661
|
+
region: external_exports.string().nullish(),
|
|
48662
|
+
variant: external_exports.string().nullish()
|
|
48663
|
+
})
|
|
48664
|
+
).mutation(async ({ input }) => {
|
|
48665
|
+
const { suiteKey } = await resolveSuiteSelection(
|
|
48666
|
+
input.agent,
|
|
48667
|
+
input.region,
|
|
48668
|
+
input.variant
|
|
48669
|
+
);
|
|
48478
48670
|
return cancelPromptTests(suiteKey);
|
|
48479
48671
|
})
|
|
48480
48672
|
});
|