@recombine-ai/bosun 0.15.0 → 0.16.0
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/client/_app/immutable/assets/{0.b0jhAoSC.css → 0.FwR3B_mV.css} +1 -1
- package/build/client/_app/immutable/assets/0.FwR3B_mV.css.br +0 -0
- package/build/client/_app/immutable/assets/{0.b0jhAoSC.css.gz → 0.FwR3B_mV.css.gz} +0 -0
- package/build/client/_app/immutable/chunks/BD9x_mnu.js +1 -0
- package/build/client/_app/immutable/chunks/BD9x_mnu.js.br +0 -0
- package/build/client/_app/immutable/chunks/BD9x_mnu.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{lmnC3bvv.js → Bj8jfBTi.js} +1 -1
- package/build/client/_app/immutable/chunks/Bj8jfBTi.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bj8jfBTi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CX0Ekq8t.js +1 -0
- package/build/client/_app/immutable/chunks/CX0Ekq8t.js.br +0 -0
- package/build/client/_app/immutable/chunks/CX0Ekq8t.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{ChVBNPUb.js → CXESoUel.js} +1 -1
- package/build/client/_app/immutable/chunks/CXESoUel.js.br +0 -0
- package/build/client/_app/immutable/chunks/CXESoUel.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{E9rdsnHb.js → DCuEIs0S.js} +1 -1
- package/build/client/_app/immutable/chunks/DCuEIs0S.js.br +0 -0
- package/build/client/_app/immutable/chunks/DCuEIs0S.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DgGeUDDh.js +1 -0
- package/build/client/_app/immutable/chunks/DgGeUDDh.js.br +0 -0
- package/build/client/_app/immutable/chunks/DgGeUDDh.js.gz +0 -0
- package/build/client/_app/immutable/chunks/_U9sB4BM.js +3 -0
- package/build/client/_app/immutable/chunks/_U9sB4BM.js.br +0 -0
- package/build/client/_app/immutable/chunks/_U9sB4BM.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.BY5DP2K_.js → app.Du7JgOF0.js} +2 -2
- package/build/client/_app/immutable/entry/app.Du7JgOF0.js.br +0 -0
- package/build/client/_app/immutable/entry/app.Du7JgOF0.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.BssSvo4L.js +1 -0
- package/build/client/_app/immutable/entry/start.BssSvo4L.js.br +2 -0
- package/build/client/_app/immutable/entry/start.BssSvo4L.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{0.Cao0LJwW.js → 0.EJrjlOP2.js} +1 -1
- package/build/client/_app/immutable/nodes/0.EJrjlOP2.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.EJrjlOP2.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.Kjgu6yxL.js → 1.BX3yW9Ki.js} +1 -1
- package/build/client/_app/immutable/nodes/1.BX3yW9Ki.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.BX3yW9Ki.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.HnX8Jhtn.js +13 -0
- package/build/client/_app/immutable/nodes/10.HnX8Jhtn.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.HnX8Jhtn.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{17.COHkD98p.js → 17.DQQN2LTu.js} +3 -3
- package/build/client/_app/immutable/nodes/17.DQQN2LTu.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.DQQN2LTu.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{18.DQVit7Md.js → 18.Dx1VeGYs.js} +1 -1
- package/build/client/_app/immutable/nodes/18.Dx1VeGYs.js.br +0 -0
- package/build/client/_app/immutable/nodes/18.Dx1VeGYs.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{2.DVwYttKv.js → 2.BSZUitGm.js} +1 -1
- package/build/client/_app/immutable/nodes/2.BSZUitGm.js.br +0 -0
- package/build/client/_app/immutable/nodes/{2.DVwYttKv.js.gz → 2.BSZUitGm.js.gz} +0 -0
- package/build/client/_app/immutable/nodes/{3.BhmyTb3R.js → 3.D2P9M-PP.js} +1 -1
- package/build/client/_app/immutable/nodes/3.D2P9M-PP.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.D2P9M-PP.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{4.CxATX0ci.js → 4.Cx97sxk5.js} +1 -1
- package/build/client/_app/immutable/nodes/4.Cx97sxk5.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.Cx97sxk5.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.Dal1qxB1.js → 5.BAliV6Wc.js} +1 -1
- package/build/client/_app/immutable/nodes/5.BAliV6Wc.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BAliV6Wc.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{6.iAOxBhJw.js → 6.CmUnus-n.js} +1 -1
- package/build/client/_app/immutable/nodes/6.CmUnus-n.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.CmUnus-n.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{8.DFhKu3dp.js → 8.DLYtZXzs.js} +1 -1
- package/build/client/_app/immutable/nodes/8.DLYtZXzs.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.DLYtZXzs.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{9.DRIEv5m9.js → 9.DQ0jyQBU.js} +1 -1
- package/build/client/_app/immutable/nodes/9.DQ0jyQBU.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.DQ0jyQBU.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/server/chunks/{0-CIzAMtA3.js → 0-DB4bFp_f.js} +3 -3
- package/build/server/chunks/{0-CIzAMtA3.js.map → 0-DB4bFp_f.js.map} +1 -1
- package/build/server/chunks/{1-D1heuNbf.js → 1-kigiZghR.js} +2 -2
- package/build/server/chunks/{1-D1heuNbf.js.map → 1-kigiZghR.js.map} +1 -1
- package/build/server/chunks/{10-CjLtjXyZ.js → 10-C49_L5kn.js} +3 -3
- package/build/server/chunks/10-C49_L5kn.js.map +1 -0
- package/build/server/chunks/{17-DklEmmOx.js → 17-Dbb76ckK.js} +3 -3
- package/build/server/chunks/17-Dbb76ckK.js.map +1 -0
- package/build/server/chunks/18-CvqluQBN.js +9 -0
- package/build/server/chunks/18-CvqluQBN.js.map +1 -0
- package/build/server/chunks/{2-DCrAVYXs.js → 2-JGarRt-z.js} +4 -4
- package/build/server/chunks/2-JGarRt-z.js.map +1 -0
- package/build/server/chunks/{3-BpTqa4DU.js → 3-CnXV_OO3.js} +2 -2
- package/build/server/chunks/{3-BpTqa4DU.js.map → 3-CnXV_OO3.js.map} +1 -1
- package/build/server/chunks/{4-B7GjwQzI.js → 4-B-XLuotH.js} +2 -2
- package/build/server/chunks/{4-B7GjwQzI.js.map → 4-B-XLuotH.js.map} +1 -1
- package/build/server/chunks/{5-XjS__bcp.js → 5-Cumig7Am.js} +2 -2
- package/build/server/chunks/{5-XjS__bcp.js.map → 5-Cumig7Am.js.map} +1 -1
- package/build/server/chunks/{6-DWkWptmB.js → 6-Ez7v6PpX.js} +2 -2
- package/build/server/chunks/{6-DWkWptmB.js.map → 6-Ez7v6PpX.js.map} +1 -1
- package/build/server/chunks/{8-_swAx6gL.js → 8-COGeKy3N.js} +3 -3
- package/build/server/chunks/{8-_swAx6gL.js.map → 8-COGeKy3N.js.map} +1 -1
- package/build/server/chunks/9-DlMHnRdZ.js +9 -0
- package/build/server/chunks/9-DlMHnRdZ.js.map +1 -0
- package/build/server/chunks/Panel-D0IY1AzO.js +11 -0
- package/build/server/chunks/Panel-D0IY1AzO.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-PtdpfgwJ.js → _layout.svelte-Blfto3jh.js} +82 -12
- package/build/server/chunks/_layout.svelte-Blfto3jh.js.map +1 -0
- package/build/server/chunks/{_page.svelte-Cu8a_kUO.js → _page.svelte-B1erTzoN.js} +3 -2
- package/build/server/chunks/_page.svelte-B1erTzoN.js.map +1 -0
- package/build/server/chunks/{_page.svelte-BTKQMuSz.js → _page.svelte-DhhqK6z3.js} +12 -85
- package/build/server/chunks/_page.svelte-DhhqK6z3.js.map +1 -0
- package/build/server/chunks/{_page.svelte-C3gizoSD.js → _page.svelte-xf-0yXQM.js} +3 -2
- package/build/server/chunks/_page.svelte-xf-0yXQM.js.map +1 -0
- package/build/server/chunks/edit-workspace-context-biaZqjOf.js +6 -0
- package/build/server/chunks/edit-workspace-context-biaZqjOf.js.map +1 -0
- package/build/server/index.js +1 -1
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +13 -13
- package/build/server/manifest.js.map +1 -1
- package/package.json +1 -1
- package/src/backend/lib/project-api.ts +6 -0
- package/src/backend/roleplay/agents.ts +1 -1
- package/src/backend/tests/academy.ts +35 -39
- package/src/backend/tests/context-utils.ts +0 -12
- package/src/backend/tests/data.spec.ts +21 -14
- package/src/backend/tests/data.ts +21 -124
- package/src/backend/tests/pii-sanitized-test-drafts.spec.ts +6 -5
- package/src/backend/tests/pii-sanitized-test-drafts.ts +2 -2
- package/src/backend/tests/router.ts +26 -99
- package/src/backend/tests/suite.spec.ts +82 -34
- package/src/backend/tests/suite.ts +145 -84
- package/build/client/_app/immutable/assets/0.b0jhAoSC.css.br +0 -0
- package/build/client/_app/immutable/chunks/BTX1tKMW.js +0 -1
- package/build/client/_app/immutable/chunks/BTX1tKMW.js.br +0 -0
- package/build/client/_app/immutable/chunks/BTX1tKMW.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BVxLHCs8.js +0 -1
- package/build/client/_app/immutable/chunks/BVxLHCs8.js.br +0 -0
- package/build/client/_app/immutable/chunks/BVxLHCs8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/ChVBNPUb.js.br +0 -0
- package/build/client/_app/immutable/chunks/ChVBNPUb.js.gz +0 -0
- package/build/client/_app/immutable/chunks/E9rdsnHb.js.br +0 -0
- package/build/client/_app/immutable/chunks/E9rdsnHb.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Z1_c4us_.js +0 -3
- package/build/client/_app/immutable/chunks/Z1_c4us_.js.br +0 -0
- package/build/client/_app/immutable/chunks/Z1_c4us_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/lmnC3bvv.js.br +0 -0
- package/build/client/_app/immutable/chunks/lmnC3bvv.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.BY5DP2K_.js.br +0 -0
- package/build/client/_app/immutable/entry/app.BY5DP2K_.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.BeIIwvvV.js +0 -1
- package/build/client/_app/immutable/entry/start.BeIIwvvV.js.br +0 -0
- package/build/client/_app/immutable/entry/start.BeIIwvvV.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.Cao0LJwW.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.Cao0LJwW.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.Kjgu6yxL.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.Kjgu6yxL.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.yW2mHq85.js +0 -12
- package/build/client/_app/immutable/nodes/10.yW2mHq85.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.yW2mHq85.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.COHkD98p.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.COHkD98p.js.gz +0 -0
- package/build/client/_app/immutable/nodes/18.DQVit7Md.js.br +0 -0
- package/build/client/_app/immutable/nodes/18.DQVit7Md.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.DVwYttKv.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.BhmyTb3R.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.BhmyTb3R.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.CxATX0ci.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.CxATX0ci.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.Dal1qxB1.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.Dal1qxB1.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.iAOxBhJw.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.iAOxBhJw.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.DFhKu3dp.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.DFhKu3dp.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.DRIEv5m9.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.DRIEv5m9.js.gz +0 -0
- package/build/server/chunks/10-CjLtjXyZ.js.map +0 -1
- package/build/server/chunks/17-DklEmmOx.js.map +0 -1
- package/build/server/chunks/18-BJS-eRcz.js +0 -9
- package/build/server/chunks/18-BJS-eRcz.js.map +0 -1
- package/build/server/chunks/2-DCrAVYXs.js.map +0 -1
- package/build/server/chunks/9-NEe24O4u.js +0 -9
- package/build/server/chunks/9-NEe24O4u.js.map +0 -1
- package/build/server/chunks/ContextEditor-ngRBOJVc.js +0 -89
- package/build/server/chunks/ContextEditor-ngRBOJVc.js.map +0 -1
- package/build/server/chunks/_layout.svelte-PtdpfgwJ.js.map +0 -1
- package/build/server/chunks/_page.svelte-BTKQMuSz.js.map +0 -1
- package/build/server/chunks/_page.svelte-C3gizoSD.js.map +0 -1
- package/build/server/chunks/_page.svelte-Cu8a_kUO.js.map +0 -1
- package/build/server/chunks/edit-workspace-context-BEioXKWB.js +0 -12
- package/build/server/chunks/edit-workspace-context-BEioXKWB.js.map +0 -1
- package/src/backend/tests/config.ts +0 -30
- /package/build/client/_app/immutable/assets/{steps.CLTyHc88.css → Popper.CLTyHc88.css} +0 -0
- /package/build/client/_app/immutable/assets/{steps.CLTyHc88.css.br → Popper.CLTyHc88.css.br} +0 -0
- /package/build/client/_app/immutable/assets/{steps.CLTyHc88.css.gz → Popper.CLTyHc88.css.gz} +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DLQqXQ6R.js","./C1FmrZbK.js","../assets/editor.BMIWPGx3.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{d as At,b as be,a as o,f as w,t as U}from"./Ca197UDq.js";import{a as Dt,o as Bt}from"./C39ai1md.js";import{p as gt,f as Fe,c as i,j as e,s as d,r as s,t as D,y as a,a as xt,w as J,n as l,o as $,d as Pt,x as Vt}from"./CxLomzuE.js";import{s as F}from"./DJriQKD9.js";import{i as I}from"./Buo-57fF.js";import{s as ze,c as jt}from"./CAjPRvNs.js";import{M as ut}from"./CyvQWZoe.js";import{T as ft,a as ke}from"./BsDZe4N6.js";import{B as rt}from"./CVlsAO8k.js";import{I as Lt}from"./07xNIa59.js";import{a as Ze,R as Et}from"./B_K7D6rX.js";import{c as Rt}from"./D-B5X35l.js";import{p as we}from"./CPXdAKdv.js";import{t as Ct}from"./DCuEIs0S.js";import{i as at}from"./DgGeUDDh.js";import{c as Wt}from"./Bj8jfBTi.js";import{_ as Gt}from"./C1FmrZbK.js";import{b as Xt}from"./BLu86SbA.js";import{e as Yt,a as Kt}from"./BU7aeYn4.js";function Ot(f={}){const t=f.thresholdPx??4,M=f.dragCursor??"text";let L=0,k=0,C=!1,b=!1,u=null,h=null;function H(){b=!1,C=!1,u==null||u.style.removeProperty("cursor"),u=null,h==null||h.abort(),h=null}function X(p){if(typeof window>"u"||p.button!==0)return;h==null||h.abort(),h=null,u==null||u.style.removeProperty("cursor"),L=p.clientX,k=p.clientY,C=!1,b=!0,u=p.currentTarget instanceof HTMLElement?p.currentTarget:null;const R=new AbortController;h=R;const ge=te=>{if(!b||C)return;const xe=Math.abs(te.clientX-L),Pe=Math.abs(te.clientY-k);xe+Pe<t||(C=!0,u==null||u.style.setProperty("cursor",M))},oe=()=>{b=!1,u==null||u.style.removeProperty("cursor"),u=null,R.abort(),h===R&&(h=null)};window.addEventListener("pointermove",ge,{signal:R.signal}),window.addEventListener("pointerup",oe,{signal:R.signal}),window.addEventListener("pointercancel",oe,{signal:R.signal})}function ee(p){return p.detail>0&&C}return{onPointerDown:X,shouldSuppressClick:ee,cleanup:H}}var Qt=w('<span class="text-[13px] leading-none text-rc-gray-400"> </span>'),Zt=w('<div class="rounded-md border border-red-500 bg-red-950/40 p-3 font-mono text-sm text-red-200"> </div>'),$t=w("<!> <!>",1),er=w('<div class="flex flex-col gap-3"><!> <div class="flex flex-wrap items-center justify-between gap-2 text-sm text-rc-gray-200"><div class="flex flex-wrap items-center gap-x-4 gap-y-1"><div><span class="text-rc-gray-400">Timing:</span> </div> <div><span class="text-rc-gray-400">Response time:</span> </div> <div><span class="text-rc-gray-400">URL:</span> </div></div> <!></div> <div><!> <div class="mt-2 h-[55vh]"><!></div></div></div>'),tr=w('<button type="button" class="flex w-full cursor-pointer select-text items-baseline gap-2 truncate rounded-md bg-transparent px-2 py-1 text-left text-sm text-rc-gray-200 hover:bg-rc-gray-800/40"><!> <!> <span> </span></button> <!>',1);function mn(f,t){gt(t,!0);let M=J(!1),L=J("request");const k=Ot();Dt(k.cleanup);function C(P){try{if(typeof P=="string"){const S=P.trim();if(!S)return"";const re=JSON.parse(S);return JSON.stringify(re,null,2)}}catch{}try{return JSON.stringify(P??null,null,2)}catch{return String(P)}}function b(P){return new Date(P).toISOString()}function u(P){if(typeof P!="number"||!Number.isFinite(P))return null;const S=new Date(P);if(Number.isNaN(S.getTime()))return null;const re=String(S.getHours()).padStart(2,"0"),pe=String(S.getMinutes()).padStart(2,"0"),m=String(S.getSeconds()).padStart(2,"0");return`${re}:${pe}:${m}`}const h=l(()=>u(t.trace.createdAt)),H=l(()=>{if(t.trace.error!=null)return t.trace.error;if(!(t.trace.ok===!1||typeof t.trace.status=="number"&&t.trace.status>=400))return;const S=t.trace.response;return S&&typeof S=="object"&&"error"in S&&S.error!=null?S.error:{status:t.trace.status,ok:t.trace.ok}}),X=l(()=>e(H)!=null),ee=l(()=>`API: ${t.trace.operationName}`),p=l(()=>t.trace.operationName),R=l(()=>typeof t.trace.createdAt!="number"?"—":b(t.trace.createdAt));async function ge(){const P=C(t.trace);try{await navigator.clipboard.writeText(P)}catch(S){console.error("Failed to copy",S)}}const oe=l(()=>C({method:t.trace.method,path:t.trace.path,baseUrl:t.trace.baseUrl,request:t.trace.request})),te=l(()=>C({status:t.trace.status,ok:t.trace.ok,response:t.trace.response,error:e(H)})),xe=l(()=>e(H)!=null?C(e(H)):"");var Pe=tr(),O=Fe(Pe),Ve=i(O);{let P=l(()=>e(X)?"close":"checkmark"),S=l(()=>e(X)?"self-center text-red-400":"self-center text-rc-green-200");Lt(Ve,{get name(){return e(P)},width:18,height:18,get class(){return e(S)}})}var We=d(Ve,2);{var Ue=P=>{var S=Qt(),re=i(S,!0);s(S),D(()=>F(re,e(h))),o(P,S)};I(We,P=>{e(h)&&P(Ue)})}var Re=d(We,2),Oe=i(Re,!0);s(Re),s(O);var $e=d(O,2);{var et=P=>{ut(P,{get title(){return e(ee)},class:"!w-[85vw] !max-w-5xl",get open(){return e(M)},set open(re){a(M,re,!0)},children:re=>{var pe=er(),m=i(pe);{var N=_=>{var V=Zt(),B=i(V,!0);s(V),D(()=>F(B,e(xe))),o(_,V)};I(m,_=>{e(xe)&&_(N)})}var A=d(m,2),Y=i(A),ie=i(Y),ye=d(i(ie));s(ie);var se=d(ie,2),Ee=d(i(se));s(se);var le=d(se,2),he=d(i(le));s(le),s(Y);var Te=d(Y,2);rt(Te,{variant:"secondary",size:"small",onclick:ge,children:(_,V)=>{$();var B=U("Copy raw trace");o(_,B)},$$slots:{default:!0}}),s(A);var Me=d(A,2),He=i(Me);ft(He,{get value(){return e(L)},ariaLabel:"API trace tabs",onChange:({value:_})=>a(L,_,!0),children:(_,V)=>{var B=$t(),ue=Fe(B);ke(ue,{value:"request",class:"px-3",children:(Z,ve)=>{$();var q=U("Request");o(Z,q)},$$slots:{default:!0}});var fe=d(ue,2);ke(fe,{value:"response",class:"px-3",children:(Z,ve)=>{$();var q=U("Response");o(Z,q)},$$slots:{default:!0}}),o(_,B)},$$slots:{default:!0}});var qe=d(He,2),Ge=i(qe);{var v=_=>{Ze(_,{get value(){return e(oe)},language:"json",class:"h-full"})},E=_=>{Ze(_,{get value(){return e(te)},language:"json",class:"h-full"})};I(Ge,_=>{e(L)==="request"?_(v):_(E,-1)})}s(qe),s(Me),s(pe),D(_=>{F(ye,` ${e(R)??""}`),F(Ee,` ${_??""}`),F(he,` ${t.trace.path??""}`)},[()=>typeof t.trace.durationMs=="number"?`${Math.round(t.trace.durationMs)}ms`:"—"]),o(re,pe)},$$slots:{default:!0}})};I($e,P=>{e(M)&&P(et)})}D(()=>{ze(Re,1,jt(e(X)?"text-red-200":"")),F(Oe,e(p))}),be("pointerdown",O,function(...P){var S;(S=k.onPointerDown)==null||S.apply(this,P)}),be("click",O,P=>{k.shouldSuppressClick(P)||a(M,!0)}),o(f,Pe),xt()}At(["pointerdown","click"]);function rr(f){return mt(f)&&mt(f.context)?vt(f.context):vt(f)}function Jt(f){if(!(!mt(f)||!mt(f.mocks)))return vt(f.mocks)}function vt(f){return mt(f)?nr(f):{}}function mt(f){return!!f&&typeof f=="object"&&!Array.isArray(f)}function nr(f){try{return structuredClone(f)}catch{try{return JSON.parse(JSON.stringify(f))}catch{return f}}}function Ft(f){return!("operationName"in f)&&!("eventName"in f)}function ar(f){return Ft(f)&&at(f.name)}function or(f,t,M={}){if(t<0)return null;const L=k=>ar(k)?M.requireRenderedPrompt?typeof k.renderedPrompt=="string"&&k.renderedPrompt.trim().length>0:!0:!1;return[...f.slice(0,t)].reverse().find(L)??f.slice(t+1).find(L)??null}function ir(f,t){return t<=0?null:[...f.slice(0,t)].reverse().map(M=>{var L;return Ft(M)?(L=M.stringifiedConversation)==null?void 0:L.trim():""}).find(Boolean)??null}function sr({entries:f,trace:t,sourceStep:M,fallbackRuntimeContext:L,requireReceivedContext:k=!1}){const C=f.indexOf(t);if(C===-1)throw new Error("Could not locate the response in its trace history");const b=M??or(f,C);if(k&&typeof(b==null?void 0:b.receivedContext)>"u")throw new Error("The source step trace does not have receivedContext");const u=typeof(b==null?void 0:b.stringifiedConversation)=="string"&&b.stringifiedConversation.trim()?b.stringifiedConversation:ir(f,C)??"",h=(t.content??"").trim(),H=b&&typeof b.receivedContext<"u"?vt(b.receivedContext):rr(L),X=Jt(L);return{pinned:"TRUE",step:"main",evaluation_mode:"assertion",context_mode:"replace",assertion_type:"llm-rubric",assertion_value:"",conversation:u,expected_output:h,similarity_threshold:"60",timeout:"0",context:H,...typeof X<"u"?{mocks:X}:{}}}function lr(f,{fallbackConversation:t="",fallbackRuntimeContext:M}={}){var u;if(typeof f.receivedContext>"u")throw new Error("The source step trace does not have receivedContext");const L=(f.response??"").trim();if(!L)throw new Error("The source step trace does not have a response");const k=(u=f.stringifiedConversation)!=null&&u.trim()?f.stringifiedConversation:t??"",C=cr(L)?"json-deep-equal":"assertion",b=Jt(M);return{pinned:"TRUE",step:at(f.name)?"main":f.name,evaluation_mode:C,context_mode:"replace",assertion_type:"llm-rubric",assertion_value:"",conversation:k,expected_output:L,similarity_threshold:"60",timeout:"0",context:vt(f.receivedContext),...typeof b<"u"?{mocks:b}:{}}}function cr(f){try{const t=JSON.parse(f);return typeof t=="object"&&t!==null}catch{return!1}}var dr=w('<div><div class="h-full w-full"></div></div>');function kt(f,t){gt(t,!0);let M=we(t,"language",3,"plaintext"),L=we(t,"class",3,""),k=J(null),C=null,b=null,u=null,h=null,H=J(!1);Bt(()=>{if(!e(k))return;Yt();let p=!1;return Gt(()=>import("./DLQqXQ6R.js").then(R=>R.e),__vite__mapDeps([0,1,2]),import.meta.url).then(R=>{if(p)return;Kt(R),b=R,C=R.editor.createDiffEditor(e(k),{theme:"bosun-dark",readOnly:!1,originalEditable:!1,automaticLayout:!0,lineNumbers:"on",renderSideBySide:!0,renderIndicators:!0,ignoreTrimWhitespace:!1,diffWordWrap:"on",diffAlgorithm:"advanced",maxComputationTime:2e4,renderMarginRevertIcon:!1,renderGutterMenu:!1,minimap:{enabled:!1},scrollBeyondLastLine:!1,wordWrap:"on",overviewRulerBorder:!1,hideCursorInOverviewRuler:!0,matchBrackets:"never",bracketPairColorization:{enabled:!1},guides:{highlightActiveBracketPair:!1,bracketPairs:!1,bracketPairsHorizontal:!1},occurrencesHighlight:"off",selectionHighlight:!1,renderLineHighlight:"none"});const ge=R.editor.createModel(t.original??"",M()),oe=R.editor.createModel(t.modified??"",M());u={original:ge,modified:oe},C.setModel(u),h=oe.onDidChangeContent(()=>{var xe;const te=oe.getValue();te!==t.modified&&((xe=t.onChange)==null||xe.call(t,te))}),a(H,!0)}).catch(R=>{console.error("EditableMonacoDiff: failed to initialise",R)}),()=>{if(p=!0,h==null||h.dispose(),h=null,C){try{C.setModel(null)}catch{}C.dispose(),C=null}u==null||u.original.dispose(),u==null||u.modified.dispose(),u=null,b=null}}),Pt(()=>{if(!u||!e(H))return;const p=t.original??"",R=t.modified??"";u.original.getValue()!==p&&u.original.setValue(p),u.modified.getValue()!==R&&u.modified.setValue(R)}),Pt(()=>{if(!u||!e(H)||!b)return;const p=M()||"plaintext";u.original.getLanguageId()!==p&&b.editor.setModelLanguage(u.original,p),u.modified.getLanguageId()!==p&&b.editor.setModelLanguage(u.modified,p)});var X=dr(),ee=i(X);Xt(ee,p=>a(k,p),()=>e(k)),s(X),D(()=>ze(X,1,`overflow-hidden rounded-md border border-rc-gray-700 ${L()}`)),o(f,X),xt()}var ur=w('<div class="flex flex-1 items-center justify-center text-rc-gray-200">Removing personal data...</div>'),fr=w('<div class="flex flex-1 flex-col items-center justify-center gap-4"><div class="max-w-2xl text-center text-red-300"> </div> <!></div>'),vr=w('<div class="text-xs text-rc-gray-500"> </div>'),mr=w('<div class="rounded-md border border-amber-600 bg-amber-950/30 px-3 py-2 text-sm text-amber-200"> </div>'),gr=w("<!> <!> <!> <!>",1),xr=w('<div class="flex flex-wrap items-center justify-between gap-2 text-sm"><div class="text-rc-gray-200"><!></div> <!></div> <!> <div class="flex min-h-0 flex-1 flex-col"><!> <div class="mt-2 min-h-0 flex-1"><!></div></div>',1),hr=w('<div class="flex h-[70vh] min-h-[32rem] flex-col gap-3"><!></div>'),pr=w("<!> <!>",1);function Ht(f,t){gt(t,!0);let M=we(t,"open",15,!1),L=we(t,"region",3,null),k=J("idle"),C=J(""),b=J("conversation"),u=J(""),h=J(null),H=J(null),X=J(Vt([])),ee=J(""),p=J(""),R=J(""),ge=J("{}"),oe=J("{}"),te=null,xe=0;const Pe=l(()=>{var m;return typeof((m=e(H))==null?void 0:m.mocks)<"u"}),O=l(()=>e(X).reduce((m,N)=>m+N.paths.length,0)),Ve=l(()=>{var m;return((m=e(h))==null?void 0:m.conversation)??""}),We=l(()=>{var m;return((m=e(h))==null?void 0:m.expected_output)??""}),Ue=l(()=>{var m;return re(((m=e(h))==null?void 0:m.context)??{})}),Re=l(()=>{var m;return re(((m=e(h))==null?void 0:m.mocks)??{})});Pt(()=>{const m=M(),N=t.seed;!m||!N||te===N||(te=N,Oe(N))}),Pt(()=>{M()||(xe+=1,a(k,"idle"),a(C,""),te=null,a(u,""),a(h,null),a(H,null),a(X,[],!0),a(ee,""),a(b,"conversation"))});async function Oe(m){const N=++xe;a(k,"preparing"),a(C,""),a(h,m,!0),a(H,null),a(u,""),a(X,[],!0);try{const A=await Ct.tests.createPIISanitizedTestDraft.mutate({agent:t.agent,region:L(),seed:m});if(N!==xe)return;$e(A.draftId,A.seed,A.findings,A.model),a(k,"ready")}catch(A){if(N!==xe)return;console.error("Failed to prepare PII-sanitised test draft",A),a(C,pe(A,"Could not prepare a PII-sanitised test draft."),!0),a(k,"error")}}function $e(m,N,A,Y=e(ee)){a(u,m,!0),a(H,N,!0),a(X,A,!0),a(ee,Y,!0),a(p,N.conversation,!0),a(R,N.expected_output,!0),a(ge,re(N.context),!0),a(oe,re(N.mocks??{}),!0),e(b)==="mocks"&&typeof N.mocks>"u"&&a(b,"conversation")}async function et(){var N,A;if(!e(H)||!e(u)||e(k)!=="ready")return;const m=window.open("about:blank","_blank");m&&(m.opener=null),a(k,"creating"),a(C,"");try{const Y=P(),ie=await Ct.tests.createTestFromPIISanitizedTestDraft.mutate({agent:t.agent,region:L(),draftId:e(u),reviewed:Y}),ye=new URLSearchParams({step:ie.test.step||e(H).step||"main",test:ie.test.id});(N=L())!=null&&N.trim()&&ye.set("region",L().trim());const se=`/edit/${encodeURIComponent(t.agent)}/tests?${ye.toString()}`;m?m.location.replace(se):window.open(se,"_blank","noopener"),M(!1),(A=t.onCreated)==null||A.call(t,ie.test)}catch(Y){m==null||m.close(),console.error("Failed to create test from PII-sanitised draft",Y),a(C,pe(Y,"Could not create the test."),!0),a(k,"ready")}}function P(){const m=S(e(ge),"Context"),N=e(Pe)?S(e(oe),"Mocks"):void 0;return{conversation:e(p),expected_output:e(R),context:m,...typeof N>"u"?{}:{mocks:N}}}function S(m,N){let A;try{A=JSON.parse(m)}catch{throw new Error(`${N} must be valid JSON.`)}if(!A||typeof A!="object"||Array.isArray(A))throw new Error(`${N} must be a JSON object.`);return A}function re(m){return JSON.stringify(m??{},null,2)}function pe(m,N){return m instanceof Error&&m.message.trim()?m.message:N}ut(f,{title:"Review test before creating",class:"!w-[94vw] !max-w-[90rem]",get open(){return M()},set open(A){M(A)},children:A=>{var Y=hr(),ie=i(Y);{var ye=le=>{var he=ur();o(le,he)},se=le=>{var he=fr(),Te=i(he),Me=i(Te,!0);s(Te);var He=d(Te,2);rt(He,{variant:"secondary",onclick:()=>t.seed&&Oe(t.seed),children:(qe,Ge)=>{$();var v=U("Try again");o(qe,v)},$$slots:{default:!0}}),s(he),D(()=>F(Me,e(C))),o(le,he)},Ee=le=>{var he=xr(),Te=Fe(he),Me=i(Te),He=i(Me);{var qe=T=>{var z=U("No personal data replacements were proposed.");o(T,z)},Ge=T=>{var z=U();D(()=>F(z,`${e(O)??""} personal data ${e(O)===1?"replacement":"replacements"} proposed.`)),o(T,z)};I(He,T=>{e(O)===0?T(qe):T(Ge,-1)})}s(Me);var v=d(Me,2);{var E=T=>{var z=vr(),Ce=i(z);s(z),D(()=>F(Ce,`Model: ${e(ee)??""}`)),o(T,z)};I(v,T=>{e(ee)&&T(E)})}s(Te);var _=d(Te,2);{var V=T=>{var z=mr(),Ce=i(z,!0);s(z),D(()=>F(Ce,e(C))),o(T,z)};I(_,T=>{e(C)&&T(V)})}var B=d(_,2),ue=i(B);ft(ue,{get value(){return e(b)},ariaLabel:"PII-sanitised test draft fields",onChange:({value:T})=>a(b,T,!0),children:(T,z)=>{var Ce=gr(),De=Fe(Ce);ke(De,{value:"conversation",class:"px-3",children:(Q,Le)=>{$();var Se=U("Conversation");o(Q,Se)},$$slots:{default:!0}});var W=d(De,2);ke(W,{value:"expected_output",class:"px-3",children:(Q,Le)=>{$();var Se=U("Expected output");o(Q,Se)},$$slots:{default:!0}});var y=d(W,2);ke(y,{value:"context",class:"px-3",children:(Q,Le)=>{$();var Se=U("Context");o(Q,Se)},$$slots:{default:!0}});var K=d(y,2);{var ae=Q=>{ke(Q,{value:"mocks",class:"px-3",children:(Le,Se)=>{$();var tt=U("Mocks");o(Le,tt)},$$slots:{default:!0}})};I(K,Q=>{e(Pe)&&Q(ae)})}o(T,Ce)},$$slots:{default:!0}});var fe=d(ue,2),Z=i(fe);{var ve=T=>{kt(T,{get original(){return e(Ve)},get modified(){return e(p)},onChange:z=>a(p,z,!0),language:"plaintext",class:"h-full"})},q=T=>{kt(T,{get original(){return e(We)},get modified(){return e(R)},onChange:z=>a(R,z,!0),language:"plaintext",class:"h-full"})},ne=T=>{kt(T,{get original(){return e(Ue)},get modified(){return e(ge)},onChange:z=>a(ge,z,!0),language:"json",class:"h-full"})},Ae=T=>{kt(T,{get original(){return e(Re)},get modified(){return e(oe)},onChange:z=>a(oe,z,!0),language:"json",class:"h-full"})};I(Z,T=>{e(b)==="conversation"?T(ve):e(b)==="expected_output"?T(q,1):e(b)==="context"?T(ne,2):T(Ae,-1)})}s(fe),s(B),o(le,he)};I(ie,le=>{e(k)==="preparing"?le(ye):e(k)==="error"&&!e(H)?le(se,1):e(H)&&e(h)&&le(Ee,2)})}s(Y),o(A,Y)},footer:A=>{var Y=pr(),ie=Fe(Y);rt(ie,{variant:"secondary",onclick:()=>M(!1),children:(se,Ee)=>{$();var le=U("Cancel");o(se,le)},$$slots:{default:!0}});var ye=d(ie,2);{let se=l(()=>!e(H)||e(k)==="preparing"||e(k)==="creating");rt(ye,{get disabled(){return e(se)},onclick:et,children:(Ee,le)=>{$();var he=U();D(()=>F(he,e(k)==="creating"?"Creating…":"Create test")),o(Ee,he)},$$slots:{default:!0}})}o(A,Y)},$$slots:{default:!0,footer:!0}}),xt()}var _r=w('<span class="text-[13px] leading-none text-rc-gray-400"> </span>'),br=w('<span><span class="cursor-pointer" title="Show prompt-cache calc"> </span></span>'),yr=w("<span> </span>"),wr=w('<div class="mb-2 ml-7 max-w-[83%]"><button type="button" class="block w-full cursor-pointer overflow-hidden rounded-lg border border-rc-gray-110 bg-rc-gray-800 p-3 text-left hover:bg-rc-gray-700"><pre class="truncate whitespace-pre font-mono text-sm text-rc-gray-100"> </pre></button> <div class="mt-1 flex items-center"><button type="button" class="inline-flex items-center rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 disabled:cursor-not-allowed disabled:opacity-50"> </button></div></div>'),kr=w('<div class="rounded-md border border-red-500 bg-red-950/40 p-3 font-mono text-sm text-red-200"> </div>'),Pr=w("<!> <!> <!> <!> <!>",1),Cr=w('<div class="flex h-full flex-col gap-2"><div class="grid grid-cols-2 gap-2"><div class="flex items-center justify-start"><!></div> <div class="flex items-center justify-end"><!></div></div> <!></div>'),Sr=w('<div class="flex flex-col gap-3"><!> <div class="flex flex-wrap items-center gap-x-4 gap-y-1 text-sm text-rc-gray-200"><div><span class="text-rc-gray-400">Timing:</span> </div> <div><span class="text-rc-gray-400">Response time:</span> —</div> <div><span class="text-rc-gray-400">Model:</span> </div></div> <div><!> <div class="mt-2 h-[55vh]"><!></div></div></div>'),Tr=w("<!> <!>",1),Mr=w('<div class="flex h-[65vh] min-h-0 flex-col gap-2"><!> <div class="min-h-0 flex-1"><!></div></div>'),Nr=w('<div class="flex w-full select-text items-baseline gap-2 truncate rounded-md bg-transparent px-2 py-1 text-left text-sm text-rc-gray-200 hover:bg-rc-gray-800/40"><button type="button" class="flex min-w-0 cursor-pointer items-baseline gap-2 truncate bg-transparent p-0 text-left text-sm text-rc-gray-200"><!> <!> <span> </span></button> <!> <!></div> <!> <!> <!> <!>',1);function gn(f,t){gt(t,!0);let M=we(t,"region",3,null),L=we(t,"fallbackConversation",3,null),k=J(!1),C=J(!1),b=J("diff"),u=J("response"),h=J("idle"),H=J(!1),X=J(null);const ee=Ot();Dt(ee.cleanup);function p(r){return r&&typeof r.renderedPrompt=="string"?r.renderedPrompt:null}function R(r,n){if(r===n)return r.length;const c=Math.min(r.length,n.length);for(let g=0;g<c;g++)if(r.charCodeAt(g)!==n.charCodeAt(g))return g;return c}function ge(r,n){const c=Math.max(r.length,n.length);if(c===0)return 100;const g=R(r,n);return Math.floor(g/c*100)}function oe(r,n){const c=r.length,g=n.length,x=R(r,n),j=Math.max(c,g),de=j===0?100:Math.floor(x/j*100);return{currentLength:c,baselineLength:g,commonPrefixLength:x,denom:j,similarityPct:de}}function te(r,n){const x=r.slice(0,600),j=r.slice(Math.max(x.length,r.length-600)),de=Math.max(0,r.length-x.length-j.length);return{length:r.length,head:x,tail:j,omittedChars:de}}function xe(r){const n=r.llmUsage;return!n||typeof n.promptTokens!="number"||!Number.isFinite(n.promptTokens)||n.promptTokens<=0||typeof n.cachedPromptTokens!="number"||!Number.isFinite(n.cachedPromptTokens)||n.cachedPromptTokens<0?null:Math.max(0,Math.min(100,Math.floor(n.cachedPromptTokens/n.promptTokens*100)))}function Pe(r){const n=new WeakSet;try{return JSON.stringify(r,(c,g)=>{if(typeof g=="bigint")return g.toString();if(g instanceof Error)return{name:g.name,message:g.message,stack:g.stack};if(typeof g=="object"&&g!==null){if(n.has(g))return"[Circular]";n.add(g)}return g},2)??""}catch{return String(r)}}function O(r){if(r==null)return"";if(typeof r=="string"){const n=r.trim();if(!n)return"";try{return JSON.stringify(JSON.parse(n),null,2)}catch{return r}}return Pe(r)}function Ve(r){var Ne,je,_e;const n=O(r),c=n.split(`
|
|
3
|
+
`);if(c.length<=1)return n;const g=(Ne=c[0])==null?void 0:Ne.trim(),x=(je=c.slice(1).find(_t=>_t.trim()))==null?void 0:je.trim();if(!g||!x)return n;const j=g==="["?"]":"}";if(c.length===3&&((_e=c.at(-1))==null?void 0:_e.trim())===j)return`${g} ${x} ${j}`;const de=x.endsWith("{")?" }":x.endsWith("[")?" ]":"";return`${g} ${x} …${de} ${j}`}function We(r){return new Date(r).toISOString()}function Ue(r){if(typeof r!="number"||!Number.isFinite(r))return null;const n=new Date(r);if(Number.isNaN(n.getTime()))return null;const c=String(n.getHours()).padStart(2,"0"),g=String(n.getMinutes()).padStart(2,"0"),x=String(n.getSeconds()).padStart(2,"0");return`${c}:${g}:${x}`}const Re=l(()=>Ue(t.trace.createdAt)),Oe=l(()=>t.trace.error!=null),$e=l(()=>`AI: ${t.trace.name}`),et=l(()=>t.trace.name),P=l(()=>{if(!at(t.trace.name))return null;const r=p(t.trace),n=p(t.compareTrace);return r==null||n==null?null:ge(r,n)}),S=l(()=>at(t.trace.name)?xe(t.trace):null),re=90,pe=90,m=/<break\b[^>]*\/?>/i,N='<break /> tag disables streaming and increases latency. If pauses are not large enough, use "..." instead.';function A(r){return typeof r=="string"&&m.test(r)}const Y=l(()=>at(t.trace.name)?e(S)!=null?e(S)===0&&e(P)!=null&&e(P)>=pe?{text:"0% tokens cached. Cache miss",className:"text-red-200"}:e(S)>=re?{text:`${e(S)}% tokens cached`,className:"text-rc-gray-400"}:{text:`${e(S)}% tokens cached - move dynamic parts of prompt to the bottom`,className:"text-red-200"}:e(P)!=null?e(P)>=re?{text:`${e(P)}%`,className:"text-rc-gray-400"}:{text:`${e(P)}% cached - move dynamic parts of prompt to the bottom`,className:"text-red-200"}:null:null),ie=l(()=>A(t.trace.response)?{text:"LLM output has <break /> tags",className:"text-red-200"}:null),ye=l(()=>{var Ne;if(!at(t.trace.name))return null;const r=p(t.trace),n=p(t.compareTrace),c=r!=null&&n!=null?oe(r,n):null,g=t.trace.llmUsage??null,x=e(S),j=x===0&&(c==null?void 0:c.similarityPct)!=null&&c.similarityPct>=pe;return{version:1,labelSource:x!=null?"llmUsage":e(P)!=null?"promptSimilarityFallback":"none",thresholds:{okPct:re,cacheMissSimilarityPct:pe},inputs:{llmUsage:g,currentRenderedPrompt:r!=null?te(r):null,baselineRenderedPrompt:n!=null?te(n):null},computed:{cachedTokensPct:x,promptSimilarityPct:(c==null?void 0:c.similarityPct)??null,promptSimilarity:c,cacheMiss:j},decision:{text:((Ne=e(Y))==null?void 0:Ne.text)??null}}}),se=l(()=>e(ye)?Pe(e(ye)):"{}"),Ee=l(()=>p(t.compareTrace)??""),le=l(()=>p(t.trace)??""),he=l(()=>O(t.trace.response)),Te=l(()=>Ve(t.trace.response)),Me=l(()=>{if(typeof t.trace.response!="string"||!t.trace.response.trim())return!1;try{const r=JSON.parse(t.trace.response);return typeof r=="object"&&r!==null}catch{return!1}}),He=l(()=>{const r=t.trace.response;if(typeof r!="string")return"json";try{return JSON.parse(r),"json"}catch{return"text"}}),qe=l(()=>t.trace.stringifiedConversation??""),Ge=l(()=>O(t.trace.renderedPrompt)),v=l(()=>O(t.trace.receivedPrompt)),E=l(()=>O(t.trace.receivedContext)),_=l(()=>O(t.trace.schema)),V=l(()=>t.trace.error?Pe(t.trace.error):"");function B(r){return r==null?"":typeof r=="string"?r:Pe(r)}const ue=l(()=>B(t.trace.receivedPrompt)),fe=l(()=>B(t.trace.renderedPrompt));let Z=J(null),ve=J(null);async function q(r){try{const n=r==="raw"?e(ue):e(fe);await navigator.clipboard.writeText(n),a(Z,r,!0),e(ve)&&clearTimeout(e(ve)),a(ve,window.setTimeout(()=>{a(Z,null),a(ve,null)},2e3),!0)}catch(n){console.error("Failed to copy prompt",n)}}function ne(r,n){var g;const c=new URLSearchParams({step:t.trace.name,test:n});return(g=M())!=null&&g.trim()&&c.set("region",M().trim()),`/edit/${encodeURIComponent(r)}/tests?${c.toString()}`}async function Ae(){const r=(t.agentId||"").trim();if(!r||e(h)!=="idle")return;let n=null;try{const c=lr(t.trace,{fallbackConversation:L(),fallbackRuntimeContext:t.runtimeContext});if(t.testCreationMode==="pii-sanitized"){a(X,c,!0),a(H,!0);return}n=window.open("about:blank","_blank"),n&&(n.opener=null),a(h,"adding");const g=await Ct.tests.addTest.mutate({agent:r,region:M(),seed:c}),x=ne(r,g.id);n?n.location.replace(x):window.open(x,"_blank","noopener"),T()}catch(c){n==null||n.close(),console.error("Failed to add step test",c),a(h,"failed"),window.setTimeout(()=>a(h,"idle"),3e3)}}function T(){a(h,"added"),window.setTimeout(()=>a(h,"idle"),3e3)}var z=Nr(),Ce=Fe(z),De=i(Ce),W=i(De);{let r=l(()=>e(Oe)?"close":"checkmark"),n=l(()=>e(Oe)?"self-center text-red-400":"self-center text-rc-green-200");Lt(W,{get name(){return e(r)},width:18,height:18,get class(){return e(n)}})}var y=d(W,2);{var K=r=>{var n=_r(),c=i(n,!0);s(n),D(()=>F(c,e(Re))),o(r,n)};I(y,r=>{e(Re)&&r(K)})}var ae=d(y,2),Q=i(ae);s(ae),s(De);var Le=d(De,2);{var Se=r=>{var n=br(),c=i(n),g=i(c,!0);s(c),s(n),D(()=>{ze(n,1,`shrink-0 text-xs ${e(Y).className}`),F(g,e(Y).text)}),be("click",c,x=>{x.stopPropagation(),!ee.shouldSuppressClick(x)&&e(ye)&&(a(b,"diff"),a(C,!0))}),o(r,n)};I(Le,r=>{e(Y)!=null&&r(Se)})}var tt=d(Le,2);{var Xe=r=>{var n=yr();Rt(n,"title",N);var c=i(n,!0);s(n),D(()=>{ze(n,1,`shrink-0 text-xs ${e(ie).className}`),F(c,e(ie).text)}),o(r,n)};I(tt,r=>{e(ie)!=null&&r(Xe)})}s(Ce);var ht=d(Ce,2);{var St=r=>{var n=wr(),c=i(n),g=i(c),x=i(g,!0);s(g),s(c);var j=d(c,2),de=i(j),Ne=i(de,!0);s(de),s(j),s(n),D(je=>{F(x,e(Te)),de.disabled=je,F(Ne,e(h)==="adding"?"Adding…":e(h)==="added"?"Added":e(h)==="failed"?"Failed":"Add test")},[()=>{var je;return!((je=t.agentId)!=null&&je.trim())||typeof t.trace.receivedContext>"u"||e(h)!=="idle"||e(H)}]),be("click",c,()=>{a(u,"response"),a(k,!0)}),be("click",de,Ae),o(r,n)};I(ht,r=>{e(Me)&&r(St)})}var pt=d(ht,2);{var Tt=r=>{{let n=l(()=>(t.agentId||"").trim());Ht(r,{get agent(){return e(n)},get region(){return M()},get seed(){return e(X)},onCreated:T,get open(){return e(H)},set open(c){a(H,c,!0)}})}};I(pt,r=>{e(X)&&r(Tt)})}var me=d(pt,2);{var ce=r=>{ut(r,{get title(){return e($e)},class:"!w-[85vw] !max-w-5xl",get open(){return e(k)},set open(c){a(k,c,!0)},children:c=>{var g=Sr(),x=i(g);{var j=G=>{var Ye=kr(),Ke=i(Ye,!0);s(Ye),D(()=>F(Ke,e(V))),o(G,Ye)};I(x,G=>{e(V)&&G(j)})}var de=d(x,2),Ne=i(de),je=d(i(Ne));s(Ne);var _e=d(Ne,4),_t=d(i(_e));s(_e),s(de);var ot=d(de,2),it=i(ot);ft(it,{get value(){return e(u)},ariaLabel:"Step trace tabs",onChange:({value:G})=>a(u,G,!0),children:(G,Ye)=>{var Ke=Pr(),nt=Fe(Ke);ke(nt,{value:"response",class:"px-3",children:(Ie,Qe)=>{$();var Je=U("Response");o(Ie,Je)},$$slots:{default:!0}});var yt=d(nt,2);ke(yt,{value:"conversation",class:"px-3",children:(Ie,Qe)=>{$();var Je=U("Conversation");o(Ie,Je)},$$slots:{default:!0}});var ct=d(yt,2);ke(ct,{value:"prompt",class:"px-3",children:(Ie,Qe)=>{$();var Je=U("Prompt");o(Ie,Je)},$$slots:{default:!0}});var wt=d(ct,2);ke(wt,{value:"context",class:"px-3",children:(Ie,Qe)=>{$();var Je=U("Context");o(Ie,Je)},$$slots:{default:!0}});var It=d(wt,2);ke(It,{value:"schema",class:"px-3",children:(Ie,Qe)=>{$();var Je=U("Schema");o(Ie,Je)},$$slots:{default:!0}}),o(G,Ke)},$$slots:{default:!0}});var bt=d(it,2),st=i(bt);{var Nt=G=>{Ze(G,{get value(){return e(he)},get language(){return e(He)},class:"h-full"})},lt=G=>{Ze(G,{get value(){return e(qe)},language:"text",class:"h-full"})},qt=G=>{var Ye=Cr(),Ke=i(Ye),nt=i(Ke),yt=i(nt);{let Ie=l(()=>!e(ue).trim());rt(yt,{variant:"secondary",size:"small",get disabled(){return e(Ie)},onclick:()=>q("raw"),children:(Qe,Je)=>{$();var dt=U();D(()=>F(dt,e(Z)==="raw"?"Copied raw prompt":"Copy raw prompt")),o(Qe,dt)},$$slots:{default:!0}})}s(nt);var ct=d(nt,2),wt=i(ct);{let Ie=l(()=>!e(fe).trim());rt(wt,{variant:"secondary",size:"small",get disabled(){return e(Ie)},onclick:()=>q("rendered"),children:(Qe,Je)=>{$();var dt=U();D(()=>F(dt,e(Z)==="rendered"?"Copied rendered prompt":"Copy rendered prompt")),o(Qe,dt)},$$slots:{default:!0}})}s(ct),s(Ke);var It=d(Ke,2);Et(It,{get original(){return e(v)},get modified(){return e(Ge)},language:"markdown",class:"min-h-0 flex-1"}),s(Ye),o(G,Ye)},zt=G=>{Ze(G,{get value(){return e(E)},language:"json",class:"h-full"})},Ut=G=>{Ze(G,{get value(){return e(_)},language:"json",class:"h-full"})};I(st,G=>{e(u)==="response"?G(Nt):e(u)==="conversation"?G(lt,1):e(u)==="prompt"?G(qt,2):e(u)==="context"?G(zt,3):G(Ut,-1)})}s(bt),s(ot),s(g),D(G=>{F(je,` ${G??""}`),F(_t,` ${t.trace.model??"—"??""}`)},[()=>typeof t.trace.createdAt=="number"?We(t.trace.createdAt):"—"]),o(c,g)},$$slots:{default:!0}})};I(me,r=>{e(k)&&r(ce)})}var Be=d(me,2);{var Mt=r=>{ut(r,{title:"Prompt cache calc",class:"!w-[85vw] !max-w-5xl",get open(){return e(C)},set open(c){a(C,c,!0)},children:c=>{var g=Mr(),x=i(g);ft(x,{get value(){return e(b)},ariaLabel:"Prompt cache calc tabs",onChange:({value:_e})=>a(b,_e,!0),children:(_e,_t)=>{var ot=Tr(),it=Fe(ot);ke(it,{value:"diff",class:"px-3",children:(st,Nt)=>{$();var lt=U("Diff");o(st,lt)},$$slots:{default:!0}});var bt=d(it,2);ke(bt,{value:"raw",class:"px-3",children:(st,Nt)=>{$();var lt=U("Raw");o(st,lt)},$$slots:{default:!0}}),o(_e,ot)},$$slots:{default:!0}});var j=d(x,2),de=i(j);{var Ne=_e=>{Et(_e,{get original(){return e(Ee)},get modified(){return e(le)},language:"markdown",class:"h-full"})},je=_e=>{Ze(_e,{get value(){return e(se)},language:"json",class:"h-full"})};I(de,_e=>{e(b)==="diff"?_e(Ne):_e(je,-1)})}s(j),s(g),o(c,g)},$$slots:{default:!0}})};I(Be,r=>{e(C)&&r(Mt)})}D(()=>{ze(ae,1,jt(e(Oe)?"text-red-200":"")),F(Q,`AI: ${e(et)??""}`)}),be("pointerdown",De,function(...r){var n;(n=ee.onPointerDown)==null||n.apply(this,r)}),be("click",De,r=>{ee.shouldSuppressClick(r)||a(k,!0)}),o(f,z),xt()}At(["pointerdown","click"]);var Ir=w('<span class="text-[13px] leading-none text-rc-gray-400"> </span>'),Rr=w('<div class="min-w-0 break-words"> </div>'),Ar=w('<div class="min-w-0 break-words">Conversation hanged up.</div>'),Dr=w('<div class="flex w-full justify-center"><div role="button" tabindex="0"><div class="flex flex-wrap items-baseline gap-x-2 gap-y-0"><!> <!></div></div></div>'),Lr=w('<div class="mr-2 mt-1 flex h-5 w-5 shrink-0 items-center justify-center rounded-sm bg-rc-green-700 text-sm uppercase text-rc-gray-100 backdrop-blur-md"> </div>'),Or=w('<button type="button" title="Edit this message" class="mr-2 mt-1 shrink-0 self-start rounded p-1 text-rc-gray-500 opacity-80 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none"><!></button>'),Er=w('<div class="mt-1 text-right text-xs text-rc-gray-200/70"> </div>'),jr=w('<button type="button"><!></button>'),Jr=w('<button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-rc-gray-400">Analyze</button>'),Fr=w('<button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none">Regenerate</button>'),Hr=w('<button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none">See variants</button>'),qr=w('<div class="mt-1 flex flex-wrap items-center gap-x-2 gap-y-1"><!> <!> <!> <!></div>'),zr=w('<!> <!> <div><div role="button" tabindex="0" class="cursor-pointer select-text"><div><div> </div> <!></div></div> <!></div>',1),Ur=w('<div class="rounded-md border border-red-500 bg-red-950/40 p-3 font-mono text-sm text-red-200"> </div>'),Br=w("<!> <!>",1),Vr=w('<div class="whitespace-pre-wrap break-words rounded-md border border-rc-gray-650 bg-rc-gray-900/60 p-3 text-sm text-rc-gray-100"> </div>'),Wr=w('<div class="flex flex-col gap-3"><!> <div class="flex items-center justify-between gap-2 text-sm text-rc-gray-200"><div class="text-rc-gray-400"> </div> <!></div> <div><!> <div class="mt-2 h-[55vh] overflow-auto"><!></div></div></div>'),Gr=w("<div><!></div> <!> <!>",1);function xn(f,t){gt(t,!0);let M=we(t,"region",3,null),L=we(t,"allowAddTest",3,!0),k=we(t,"testSourceStep",3,void 0),C=we(t,"testEntries",3,void 0),b=we(t,"requireTestSourceStep",3,!1),u=we(t,"analyzeDisabled",3,!1),h=we(t,"showSeeVariants",3,!1),H=we(t,"variantSelectionState",3,"none"),X=we(t,"suppressActionRow",3,!1),ee=J(!1),p=J("idle"),R=J("content"),ge=J(!1),oe=J(null);const te=Ot();Dt(te.cleanup);function xe(v){return v?v.split("/").at(-1)??v:""}function Pe(v){const E=xe(v).trim().charAt(0);return E?E.toUpperCase():"?"}const O=l(()=>{var v;return t.trace.eventName==="finished-main-streaming-step"||t.trace.eventName==="sent-message"?"agent":t.trace.role==="system"||((v=t.trace)==null?void 0:v.bosunInputMessageSender)==="system"?"system":(t.trace.role==="user","user")}),Ve=l(()=>e(O)==="agent"?"max-w-[83%]":e(O)==="user"?"max-w-[90%] sm:max-w-[80%] md:max-w-[70%]":e(O)==="system"?"max-w-[90%] sm:max-w-[85%] md:max-w-[75%]":""),We=l(()=>{var v;return(e(O)==="user"||e(O)==="system")&&!!t.onRevert&&((v=t.trace)==null?void 0:v.bosunPrevStateId)!==void 0}),Ue=l(()=>t.trace.error!=null),Re=l(()=>H()==="source");function Oe(){a(ee,!0),a(R,"content")}function $e(v){var E;if(!te.shouldSuppressClick(v)){if(e(Re)){(E=t.onSelectInVariantMode)==null||E.call(t,t.trace);return}Oe()}}function et(v){if(typeof v!="number"||!Number.isFinite(v))return null;const E=new Date(v);if(Number.isNaN(E.getTime()))return null;const _=String(E.getHours()).padStart(2,"0"),V=String(E.getMinutes()).padStart(2,"0"),B=String(E.getSeconds()).padStart(2,"0");return`${_}:${V}:${B}`}const P=l(()=>{var v;return et((v=t.trace)==null?void 0:v.createdAt)});function S(v){try{return JSON.stringify(v??null,null,2)}catch{return String(v)}}async function re(){try{await navigator.clipboard.writeText(S(t.trace))}catch(v){console.error("Failed to copy",v)}}function pe(){return L()&&e(O)==="agent"&&t.trace.eventName!=="transfer-requested"&&(t.trace.eventName==="finished-main-streaming-step"||t.trace.eventName==="sent-message")}function m(){return!pe()||!(t.agentId&&t.agentId.trim())?!1:b()?!!k()&&typeof k().receivedContext<"u":!0}function N(){return e(O)==="agent"&&t.trace.eventName!=="transfer-requested"&&!!(t.agentId&&t.agentId.trim())&&(t.trace.eventName==="finished-main-streaming-step"||t.trace.eventName==="sent-message")}function A(){return N()}async function Y(){var E;let v=null;try{a(p,"idle");const _=(t.agentId||"").trim();if(!_)throw new Error("Agent id is not available; cannot add test");const V=sr({entries:C()??Wt,trace:t.trace,sourceStep:k(),fallbackRuntimeContext:t.context});if(t.testCreationMode==="pii-sanitized"){a(oe,V,!0),a(ge,!0);return}v=window.open("about:blank","_blank"),v&&(v.opener=null);const B=await Ct.tests.addTest.mutate({agent:_,region:M(),seed:V}),ue=new URLSearchParams({step:V.step||"main",test:B.id});(E=M())!=null&&E.trim()&&ue.set("region",M().trim());const fe=`/edit/${encodeURIComponent(_)}/tests?${ue.toString()}`;v?v.location.replace(fe):window.open(fe,"_blank","noopener"),ie()}catch(_){v==null||v.close(),console.error("Failed to add test",_),a(p,"error"),setTimeout(()=>a(p,"idle"),4e3)}}function ie(){a(p,"ok"),setTimeout(()=>a(p,"idle"),3e3)}var ye=Gr(),se=Fe(ye);let Ee;var le=i(se);{var he=v=>{var E=Dr(),_=i(E),V=i(_),B=i(V);{var ue=q=>{var ne=Ir(),Ae=i(ne,!0);s(ne),D(()=>F(Ae,e(P))),o(q,ne)};I(B,q=>{e(P)&&q(ue)})}var fe=d(B,2);{var Z=q=>{var ne=Rr(),Ae=i(ne);s(ne),D(()=>F(Ae,`Transfer requested: ${t.trace.content??""}`)),o(q,ne)},ve=q=>{var ne=Ar();o(q,ne)};I(fe,q=>{t.trace.eventName==="transfer-requested"?q(Z):q(ve,-1)})}s(V),s(_),s(E),D(()=>ze(_,1,`cursor-pointer select-text rounded-full border border-rc-gray-650 bg-rc-gray-800/40 px-4 py-2 text-sm text-rc-gray-100 ${e(Ue)?"border-red-500 bg-red-950/30 text-red-200":""}`)),be("pointerdown",_,function(...q){var ne;(ne=te.onPointerDown)==null||ne.apply(this,q)}),be("click",_,q=>{te.shouldSuppressClick(q)||Oe()}),o(v,E)},Te=v=>{var E=zr(),_=Fe(E);{var V=W=>{var y=Lr(),K=i(y,!0);s(y),D((ae,Q)=>{Rt(y,"title",ae),F(K,Q)},[()=>xe(t.agentId),()=>Pe(t.agentId)]),o(W,y)};I(_,W=>{e(O)==="agent"&&t.agentId&&W(V)})}var B=d(_,2);{var ue=W=>{var y=Or(),K=i(y);Lt(K,{name:"undo",width:16,height:16}),s(y),be("click",y,ae=>{var Q;ae.stopPropagation(),(Q=t.onRevert)==null||Q.call(t,t.trace)}),o(W,y)};I(B,W=>{e(We)&&W(ue)})}var fe=d(B,2),Z=i(fe),ve=i(Z),q=i(ve),ne=i(q,!0);s(q);var Ae=d(q,2);{var T=W=>{var y=Er(),K=i(y,!0);s(y),D(()=>F(K,e(P))),o(W,y)};I(Ae,W=>{e(P)&&W(T)})}s(ve),s(Z);var z=d(Z,2);{var Ce=W=>{var y=qr(),K=i(y);{var ae=me=>{var ce=jr(),Be=i(ce);{var Mt=x=>{var j=U("Added");o(x,j)},r=x=>{var j=U("Failed");o(x,j)},n=x=>{var j=U("Select agent to add test");o(x,j)},c=l(()=>!m()),g=x=>{var j=U("Add test");o(x,j)};I(Be,x=>{e(p)==="ok"?x(Mt):e(p)==="error"?x(r,1):e(c)?x(n,2):x(g,-1)})}s(ce),D((x,j,de)=>{ce.disabled=x,Rt(ce,"title",j),ze(ce,1,`inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 transition-colors focus:outline-none focus-visible:outline-none ${de??""}`)},[()=>!m()||e(p)!=="idle"||e(ge),()=>m()?void 0:"Select an agent in the sidebar before adding a test",()=>e(p)!=="idle"||!m()?"cursor-default text-rc-gray-400":"cursor-pointer text-rc-gray-400 hover:bg-rc-gray-900 hover:text-rc-gray-200"]),be("click",ce,x=>{x.stopPropagation(),Y()}),o(me,ce)},Q=l(()=>pe());I(K,me=>{e(Q)&&me(ae)})}var Le=d(K,2);{var Se=me=>{var ce=Jr();D(()=>ce.disabled=u()),be("click",ce,Be=>{Be.stopPropagation(),t.onAnalyze(t.trace)}),o(me,ce)},tt=l(()=>N()&&t.onAnalyze);I(Le,me=>{e(tt)&&me(Se)})}var Xe=d(Le,2);{var ht=me=>{var ce=Fr();be("click",ce,Be=>{Be.stopPropagation(),t.onRegenerate(t.trace)}),o(me,ce)},St=l(()=>A()&&t.onRegenerate);I(Xe,me=>{e(St)&&me(ht)})}var pt=d(Xe,2);{var Tt=me=>{var ce=Hr();be("click",ce,Be=>{Be.stopPropagation(),t.onSeeVariants(t.trace)}),o(me,ce)};I(pt,me=>{h()&&t.onSeeVariants&&me(Tt)})}s(y),o(W,y)},De=l(()=>!X()&&(N()||pe()||A()&&t.onRegenerate||h()));I(z,W=>{e(De)&&W(Ce)})}s(fe),D(()=>{ze(fe,1,`min-w-0 ${e(Ve)??""}`),ze(ve,1,`rounded-lg ${e(O)==="system"?"justify-between whitespace-pre-line break-words border border-emerald-500 text-emerald-500":e(Re)?"w-full whitespace-pre-line break-words border border-rc-green-450 bg-transparent backdrop-blur-md hover:bg-rc-green-700":e(O)!=="user"?"w-full whitespace-pre-line break-words bg-rc-green-700 backdrop-blur-md":"whitespace-pre-line break-words bg-rc-gray-700"} ${e(O)==="system"||e(Re)?"":"border-thin border-rc-gray-110"} p-2 pt-1 text-rc-gray-100 ${e(Ue)?"border-red-500 bg-red-950/30 text-red-200":""}`),F(ne,t.trace.content)}),be("pointerdown",Z,function(...W){var y;(y=te.onPointerDown)==null||y.apply(this,W)}),be("click",Z,$e),o(v,E)};I(le,v=>{t.trace.eventName==="transfer-requested"||t.trace.eventName==="hangup-requested"?v(he):v(Te,-1)})}s(se);var Me=d(se,2);{var He=v=>{{const E=V=>{var B=Wr(),ue=i(B);{var fe=y=>{var K=Ur(),ae=i(K,!0);s(K),D(Q=>F(ae,Q),[()=>S(t.trace.error)]),o(y,K)};I(ue,y=>{e(Ue)&&y(fe)})}var Z=d(ue,2),ve=i(Z),q=i(ve);s(ve);var ne=d(ve,2);rt(ne,{variant:"secondary",size:"small",onclick:re,children:(y,K)=>{$();var ae=U("Copy raw trace");o(y,ae)},$$slots:{default:!0}}),s(Z);var Ae=d(Z,2),T=i(Ae);ft(T,{get value(){return e(R)},ariaLabel:"Conversational trace tabs",onChange:({value:y})=>a(R,y,!0),children:(y,K)=>{var ae=Br(),Q=Fe(ae);ke(Q,{value:"content",class:"px-3",children:(Se,tt)=>{$();var Xe=U("Content");o(Se,Xe)},$$slots:{default:!0}});var Le=d(Q,2);ke(Le,{value:"raw",class:"px-3",children:(Se,tt)=>{$();var Xe=U("Raw");o(Se,Xe)},$$slots:{default:!0}}),o(y,ae)},$$slots:{default:!0}});var z=d(T,2),Ce=i(z);{var De=y=>{var K=Vr(),ae=i(K,!0);s(K),D(()=>F(ae,t.trace.content)),o(y,K)},W=y=>{{let K=l(()=>S(t.trace));Ze(y,{get value(){return e(K)},language:"json",class:"h-full"})}};I(Ce,y=>{e(R)==="content"?y(De):y(W,-1)})}s(z),s(Ae),s(B),D(()=>F(q,`${t.trace.role??""} • ${t.trace.medium??""}`)),o(V,B)};let _=l(()=>`Conversation: ${t.trace.eventName}`);ut(v,{get title(){return e(_)},class:"!w-[80vw] !max-w-4xl",get open(){return e(ee)},set open(V){a(ee,V,!0)},children:E,$$slots:{default:!0}})}};I(Me,v=>{e(ee)&&v(He)})}var qe=d(Me,2);{var Ge=v=>{{let E=l(()=>(t.agentId||"").trim());Ht(v,{get agent(){return e(E)},get region(){return M()},get seed(){return e(oe)},onCreated:ie,get open(){return e(ge)},set open(_){a(ge,_,!0)}})}};I(qe,v=>{e(oe)&&v(Ge)})}D(()=>Ee=ze(se,1,"group mb-2 flex w-full items-start",null,Ee,{"justify-end":e(O)==="user"||e(O)==="system"})),o(f,ye),xt()}At(["pointerdown","click"]);export{mn as C,gn as a,xn as b,or as c,vt as d,rr as e,ir as f,Jt as m};
|
|
Binary file
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.
|
|
2
|
-
var tt=e=>{throw TypeError(e)};var rt=(e,t,r)=>t.has(e)||tt("Cannot "+r);var n=(e,t,r)=>(rt(e,t,"read from private field"),r?r.call(e):t.get(e)),H=(e,t,r)=>t.has(e)?tt("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),J=(e,t,r,i)=>(rt(e,t,"write to private field"),i?i.call(e,r):t.set(e,r),r);import{_ as s}from"../chunks/C1FmrZbK.js";import{y as S,aE as Et,j as m,bp as Pt,av as yt,a4 as Ot,p as Rt,u as pt,d as It,T as At,f as g,s as Lt,a as Tt,w as K,n as p,c as bt,r as Dt,t as Vt}from"../chunks/CxLomzuE.js";import{h as xt,m as wt,u as jt,s as kt}from"../chunks/DJriQKD9.js";import{a as u,c as E,f as et,t as Ct}from"../chunks/Ca197UDq.js";import{o as St}from"../chunks/C39ai1md.js";import{i as j}from"../chunks/Buo-57fF.js";import{c as I}from"../chunks/Cyai3SOj.js";import{b as A}from"../chunks/BLu86SbA.js";import{p as k}from"../chunks/CPXdAKdv.js";const Mt=({url:e})=>{const t=e.pathname;if(t.startsWith("/view"))return t.replace(/^\/view(?=\/|$)/,"/traces")},ar={};function Gt(e){return class extends Wt{constructor(t){super({component:e,...t})}}}var P,c;class Wt{constructor(t){H(this,P);H(this,c);var L;var r=new Map,i=(o,a)=>{var h=Ot(a,!1,!1);return r.set(o,h),h};const d=new Proxy({...t.props||{},$$events:{}},{get(o,a){return m(r.get(a)??i(a,Reflect.get(o,a)))},has(o,a){return a===Et?!0:(m(r.get(a)??i(a,Reflect.get(o,a))),Reflect.has(o,a))},set(o,a,h){return S(r.get(a)??i(a,h),h),Reflect.set(o,a,h)}});J(this,c,(t.hydrate?xt:wt)(t.component,{target:t.target,anchor:t.anchor,props:d,context:t.context,intro:t.intro??!1,recover:t.recover,transformError:t.transformError})),(!((L=t==null?void 0:t.props)!=null&&L.$$host)||t.sync===!1)&&Pt(),J(this,P,d.$$events);for(const o of Object.keys(n(this,c)))o==="$set"||o==="$destroy"||o==="$on"||yt(this,o,{get(){return n(this,c)[o]},set(a){n(this,c)[o]=a},enumerable:!0});n(this,c).$set=o=>{Object.assign(d,o)},n(this,c).$destroy=()=>{jt(n(this,c))}}$set(t){n(this,c).$set(t)}$on(t,r){n(this,P)[t]=n(this,P)[t]||[];const i=(...d)=>r.call(this,...d);return n(this,P)[t].push(i),()=>{n(this,P)[t]=n(this,P)[t].filter(d=>d!==i)}}$destroy(){n(this,c).$destroy()}}P=new WeakMap,c=new WeakMap;var Yt=et('<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>'),qt=et("<!> <!>",1);function zt(e,t){Rt(t,!0);let r=k(t,"components",23,()=>[]),i=k(t,"data_0",3,null),d=k(t,"data_1",3,null),L=k(t,"data_2",3,null),o=k(t,"data_3",3,null);pt(()=>t.stores.page.set(t.page)),It(()=>{t.stores,t.page,t.constructors,r(),t.form,i(),d(),L(),o(),t.stores.page.notify()});let a=K(!1),h=K(!1),N=K(null);St(()=>{const _=t.stores.page.subscribe(()=>{m(a)&&(S(h,!0),At().then(()=>{S(N,document.title||"untitled page",!0)}))});return S(a,!0),_});const ot=p(()=>t.constructors[3]);var Q=qt(),U=g(Q);{var st=_=>{const y=p(()=>t.constructors[0]);var O=E(),V=g(O);I(V,()=>m(y),(R,T)=>{A(T(R,{get data(){return i()},get form(){return t.form},get params(){return t.page.params},children:(l,Ft)=>{var X=E(),_t=g(X);{var ut=b=>{const M=p(()=>t.constructors[1]);var x=E(),G=g(x);I(G,()=>m(M),(W,Y)=>{A(Y(W,{get data(){return d()},get form(){return t.form},get params(){return t.page.params},children:(f,Ht)=>{var Z=E(),dt=g(Z);{var lt=D=>{const q=p(()=>t.constructors[2]);var w=E(),z=g(w);I(z,()=>m(q),(B,F)=>{A(F(B,{get data(){return L()},get form(){return t.form},get params(){return t.page.params},children:(v,Jt)=>{var $=E(),vt=g($);I(vt,()=>m(ot),(gt,ht)=>{A(ht(gt,{get data(){return o()},get form(){return t.form},get params(){return t.page.params}}),C=>r()[3]=C,()=>{var C;return(C=r())==null?void 0:C[3]})}),u(v,$)},$$slots:{default:!0}}),v=>r()[2]=v,()=>{var v;return(v=r())==null?void 0:v[2]})}),u(D,w)},ft=D=>{const q=p(()=>t.constructors[2]);var w=E(),z=g(w);I(z,()=>m(q),(B,F)=>{A(F(B,{get data(){return L()},get form(){return t.form},get params(){return t.page.params}}),v=>r()[2]=v,()=>{var v;return(v=r())==null?void 0:v[2]})}),u(D,w)};j(dt,D=>{t.constructors[3]?D(lt):D(ft,-1)})}u(f,Z)},$$slots:{default:!0}}),f=>r()[1]=f,()=>{var f;return(f=r())==null?void 0:f[1]})}),u(b,x)},ct=b=>{const M=p(()=>t.constructors[1]);var x=E(),G=g(x);I(G,()=>m(M),(W,Y)=>{A(Y(W,{get data(){return d()},get form(){return t.form},get params(){return t.page.params}}),f=>r()[1]=f,()=>{var f;return(f=r())==null?void 0:f[1]})}),u(b,x)};j(_t,b=>{t.constructors[2]?b(ut):b(ct,-1)})}u(l,X)},$$slots:{default:!0}}),l=>r()[0]=l,()=>{var l;return(l=r())==null?void 0:l[0]})}),u(_,O)},nt=_=>{const y=p(()=>t.constructors[0]);var O=E(),V=g(O);I(V,()=>m(y),(R,T)=>{A(T(R,{get data(){return i()},get form(){return t.form},get params(){return t.page.params}}),l=>r()[0]=l,()=>{var l;return(l=r())==null?void 0:l[0]})}),u(_,O)};j(U,_=>{t.constructors[1]?_(st):_(nt,-1)})}var it=Lt(U,2);{var mt=_=>{var y=Yt(),O=bt(y);{var V=R=>{var T=Ct();Vt(()=>kt(T,m(N))),u(R,T)};j(O,R=>{m(h)&&R(V)})}Dt(y),u(_,y)};j(it,_=>{m(a)&&_(mt)})}u(e,Q),Tt()}const or=Gt(zt),sr=[()=>s(()=>import("../nodes/0.
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.EJrjlOP2.js","../chunks/Ca197UDq.js","../chunks/CxLomzuE.js","../chunks/C39ai1md.js","../chunks/DJriQKD9.js","../chunks/xC2C8d09.js","../chunks/Buo-57fF.js","../chunks/CJYOmGlC.js","../chunks/BDl2QuyN.js","../chunks/Cql_e8Of.js","../chunks/CXESoUel.js","../chunks/BD9x_mnu.js","../chunks/uLGP0py1.js","../chunks/OA8UcISh.js","../assets/0.FwR3B_mV.css","../nodes/1.BX3yW9Ki.js","../nodes/2.BSZUitGm.js","../chunks/CyvQWZoe.js","../chunks/Cyai3SOj.js","../chunks/CPXdAKdv.js","../chunks/D-B5X35l.js","../chunks/CAjPRvNs.js","../assets/Modal.tn0RQdqM.css","../chunks/BJTwdUYr.js","../chunks/BPNEONy5.js","../chunks/CzXNWL4m.js","../chunks/CVlsAO8k.js","../chunks/BLu86SbA.js","../chunks/Bj8jfBTi.js","../chunks/CX0Ekq8t.js","../assets/Popper.CLTyHc88.css","../assets/chat-content.Cabnnfyv.css","../chunks/07xNIa59.js","../chunks/BsDZe4N6.js","../assets/Tab.DlCfjMY1.css","../chunks/Dslf9OwW.js","../chunks/C1FmrZbK.js","../chunks/BU7aeYn4.js","../chunks/DCuEIs0S.js","../chunks/DgGeUDDh.js","../chunks/C7he4XPB.js","../assets/AgentSidebar.BL1i3rB_.css","../chunks/BNifnXkO.js","../chunks/BI42X8h_.js","../chunks/QpaC6J6s.js","../assets/2.DxwYfh1z.css","../nodes/3.D2P9M-PP.js","../chunks/iAhzu4tv.js","../chunks/nYD9wsyN.js","../assets/Input.CJ8KyccG.css","../chunks/ddC1NP9R.js","../chunks/JcG4w2gF.js","../assets/3.Dzh7_Q8n.css","../nodes/4.Cx97sxk5.js","../chunks/CaHl3dME.js","../nodes/5.BAliV6Wc.js","../assets/5.CZVw96CJ.css","../nodes/6.CmUnus-n.js","../nodes/7.7N4iPidV.js","../chunks/gULlE0tz.js","../nodes/8.DLYtZXzs.js","../nodes/9.DQ0jyQBU.js","../chunks/_U9sB4BM.js","../chunks/B_K7D6rX.js","../assets/9.DlSPCZj0.css","../nodes/10.HnX8Jhtn.js","../assets/10.DIVePEYf.css","../nodes/11.CsTD16Gn.js","../nodes/12.DYXd_leK.js","../nodes/13.DQMjAUKq.js","../nodes/14.C59tyoG0.js","../nodes/15.BFy4oAT6.js","../nodes/16.DRwcAQjb.js","../nodes/17.DQQN2LTu.js","../chunks/T0seCQS_.js","../nodes/18.Dx1VeGYs.js","../assets/18.C5apk4jm.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
var tt=e=>{throw TypeError(e)};var rt=(e,t,r)=>t.has(e)||tt("Cannot "+r);var n=(e,t,r)=>(rt(e,t,"read from private field"),r?r.call(e):t.get(e)),H=(e,t,r)=>t.has(e)?tt("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),J=(e,t,r,i)=>(rt(e,t,"write to private field"),i?i.call(e,r):t.set(e,r),r);import{_ as s}from"../chunks/C1FmrZbK.js";import{y as S,aE as Et,j as m,bp as Pt,av as yt,a4 as Ot,p as Rt,u as pt,d as It,T as At,f as g,s as Lt,a as Tt,w as K,n as p,c as bt,r as Dt,t as Vt}from"../chunks/CxLomzuE.js";import{h as xt,m as wt,u as jt,s as kt}from"../chunks/DJriQKD9.js";import{a as u,c as E,f as et,t as Ct}from"../chunks/Ca197UDq.js";import{o as St}from"../chunks/C39ai1md.js";import{i as j}from"../chunks/Buo-57fF.js";import{c as I}from"../chunks/Cyai3SOj.js";import{b as A}from"../chunks/BLu86SbA.js";import{p as k}from"../chunks/CPXdAKdv.js";const Mt=({url:e})=>{const t=e.pathname;if(t.startsWith("/view"))return t.replace(/^\/view(?=\/|$)/,"/traces")},ar={};function Gt(e){return class extends Wt{constructor(t){super({component:e,...t})}}}var P,c;class Wt{constructor(t){H(this,P);H(this,c);var L;var r=new Map,i=(o,a)=>{var h=Ot(a,!1,!1);return r.set(o,h),h};const d=new Proxy({...t.props||{},$$events:{}},{get(o,a){return m(r.get(a)??i(a,Reflect.get(o,a)))},has(o,a){return a===Et?!0:(m(r.get(a)??i(a,Reflect.get(o,a))),Reflect.has(o,a))},set(o,a,h){return S(r.get(a)??i(a,h),h),Reflect.set(o,a,h)}});J(this,c,(t.hydrate?xt:wt)(t.component,{target:t.target,anchor:t.anchor,props:d,context:t.context,intro:t.intro??!1,recover:t.recover,transformError:t.transformError})),(!((L=t==null?void 0:t.props)!=null&&L.$$host)||t.sync===!1)&&Pt(),J(this,P,d.$$events);for(const o of Object.keys(n(this,c)))o==="$set"||o==="$destroy"||o==="$on"||yt(this,o,{get(){return n(this,c)[o]},set(a){n(this,c)[o]=a},enumerable:!0});n(this,c).$set=o=>{Object.assign(d,o)},n(this,c).$destroy=()=>{jt(n(this,c))}}$set(t){n(this,c).$set(t)}$on(t,r){n(this,P)[t]=n(this,P)[t]||[];const i=(...d)=>r.call(this,...d);return n(this,P)[t].push(i),()=>{n(this,P)[t]=n(this,P)[t].filter(d=>d!==i)}}$destroy(){n(this,c).$destroy()}}P=new WeakMap,c=new WeakMap;var Yt=et('<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>'),qt=et("<!> <!>",1);function zt(e,t){Rt(t,!0);let r=k(t,"components",23,()=>[]),i=k(t,"data_0",3,null),d=k(t,"data_1",3,null),L=k(t,"data_2",3,null),o=k(t,"data_3",3,null);pt(()=>t.stores.page.set(t.page)),It(()=>{t.stores,t.page,t.constructors,r(),t.form,i(),d(),L(),o(),t.stores.page.notify()});let a=K(!1),h=K(!1),N=K(null);St(()=>{const _=t.stores.page.subscribe(()=>{m(a)&&(S(h,!0),At().then(()=>{S(N,document.title||"untitled page",!0)}))});return S(a,!0),_});const ot=p(()=>t.constructors[3]);var Q=qt(),U=g(Q);{var st=_=>{const y=p(()=>t.constructors[0]);var O=E(),V=g(O);I(V,()=>m(y),(R,T)=>{A(T(R,{get data(){return i()},get form(){return t.form},get params(){return t.page.params},children:(l,Ft)=>{var X=E(),_t=g(X);{var ut=b=>{const M=p(()=>t.constructors[1]);var x=E(),G=g(x);I(G,()=>m(M),(W,Y)=>{A(Y(W,{get data(){return d()},get form(){return t.form},get params(){return t.page.params},children:(f,Ht)=>{var Z=E(),dt=g(Z);{var lt=D=>{const q=p(()=>t.constructors[2]);var w=E(),z=g(w);I(z,()=>m(q),(B,F)=>{A(F(B,{get data(){return L()},get form(){return t.form},get params(){return t.page.params},children:(v,Jt)=>{var $=E(),vt=g($);I(vt,()=>m(ot),(gt,ht)=>{A(ht(gt,{get data(){return o()},get form(){return t.form},get params(){return t.page.params}}),C=>r()[3]=C,()=>{var C;return(C=r())==null?void 0:C[3]})}),u(v,$)},$$slots:{default:!0}}),v=>r()[2]=v,()=>{var v;return(v=r())==null?void 0:v[2]})}),u(D,w)},ft=D=>{const q=p(()=>t.constructors[2]);var w=E(),z=g(w);I(z,()=>m(q),(B,F)=>{A(F(B,{get data(){return L()},get form(){return t.form},get params(){return t.page.params}}),v=>r()[2]=v,()=>{var v;return(v=r())==null?void 0:v[2]})}),u(D,w)};j(dt,D=>{t.constructors[3]?D(lt):D(ft,-1)})}u(f,Z)},$$slots:{default:!0}}),f=>r()[1]=f,()=>{var f;return(f=r())==null?void 0:f[1]})}),u(b,x)},ct=b=>{const M=p(()=>t.constructors[1]);var x=E(),G=g(x);I(G,()=>m(M),(W,Y)=>{A(Y(W,{get data(){return d()},get form(){return t.form},get params(){return t.page.params}}),f=>r()[1]=f,()=>{var f;return(f=r())==null?void 0:f[1]})}),u(b,x)};j(_t,b=>{t.constructors[2]?b(ut):b(ct,-1)})}u(l,X)},$$slots:{default:!0}}),l=>r()[0]=l,()=>{var l;return(l=r())==null?void 0:l[0]})}),u(_,O)},nt=_=>{const y=p(()=>t.constructors[0]);var O=E(),V=g(O);I(V,()=>m(y),(R,T)=>{A(T(R,{get data(){return i()},get form(){return t.form},get params(){return t.page.params}}),l=>r()[0]=l,()=>{var l;return(l=r())==null?void 0:l[0]})}),u(_,O)};j(U,_=>{t.constructors[1]?_(st):_(nt,-1)})}var it=Lt(U,2);{var mt=_=>{var y=Yt(),O=bt(y);{var V=R=>{var T=Ct();Vt(()=>kt(T,m(N))),u(R,T)};j(O,R=>{m(h)&&R(V)})}Dt(y),u(_,y)};j(it,_=>{m(a)&&_(mt)})}u(e,Q),Tt()}const or=Gt(zt),sr=[()=>s(()=>import("../nodes/0.EJrjlOP2.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]),import.meta.url),()=>s(()=>import("../nodes/1.BX3yW9Ki.js"),__vite__mapDeps([15,1,2,4,5,10,11,12,13,3]),import.meta.url),()=>s(()=>import("../nodes/2.BSZUitGm.js"),__vite__mapDeps([16,1,2,3,4,5,6,7,17,8,18,19,12,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,11,13,10,38,39,40,41,9,42,43,44,45]),import.meta.url),()=>s(()=>import("../nodes/3.D2P9M-PP.js"),__vite__mapDeps([46,1,2,3,4,5,6,7,23,8,47,20,21,19,12,11,13,10,26,27,32,48,24,49,50,51,33,34,40,41,9,38,52]),import.meta.url),()=>s(()=>import("../nodes/4.Cx97sxk5.js"),__vite__mapDeps([53,1,2,8,7,11,12,13,3,10,33,20,5,21,19,27,34,54]),import.meta.url),()=>s(()=>import("../nodes/5.BAliV6Wc.js"),__vite__mapDeps([55,1,2,3,47,40,4,5,6,7,23,20,21,19,12,32,8,41,9,38,56]),import.meta.url),()=>s(()=>import("../nodes/6.CmUnus-n.js"),__vite__mapDeps([57,1,2,3,47,11,12,13,9,38,40,4,5,6,7,23,20,21,19,32,8,41,33,27,34,10]),import.meta.url),()=>s(()=>import("../nodes/7.7N4iPidV.js"),__vite__mapDeps([58,59,13]),import.meta.url),()=>s(()=>import("../nodes/8.DLYtZXzs.js"),__vite__mapDeps([60,36,1,2,3,4,5,6,7,27,25,8,21,37,38]),import.meta.url),()=>s(()=>import("../nodes/9.DQ0jyQBU.js"),__vite__mapDeps([61,1,2,6,7,26,8,20,5,21,27,19,12,28,3,29,30,31,4,23,32,38,25,62,17,18,22,33,34,63,36,37,39,48,24,49,44,64]),import.meta.url),()=>s(()=>import("../nodes/10.HnX8Jhtn.js"),__vite__mapDeps([65,1,2,3,4,5,6,7,17,8,18,19,12,20,21,22,23,47,24,25,26,27,35,36,37,48,49,33,34,32,10,11,13,38,63,39,66]),import.meta.url),()=>s(()=>import("../nodes/11.CsTD16Gn.js"),__vite__mapDeps([67,59,13]),import.meta.url),()=>s(()=>import("../nodes/12.DYXd_leK.js"),__vite__mapDeps([68,59,13]),import.meta.url),()=>s(()=>import("../nodes/13.DQMjAUKq.js"),__vite__mapDeps([69,59,13]),import.meta.url),()=>s(()=>import("../nodes/14.C59tyoG0.js"),__vite__mapDeps([70,59,13]),import.meta.url),()=>s(()=>import("../nodes/15.BFy4oAT6.js"),__vite__mapDeps([71,1,2,42,47]),import.meta.url),()=>s(()=>import("../nodes/16.DRwcAQjb.js"),__vite__mapDeps([72,59,13]),import.meta.url),()=>s(()=>import("../nodes/17.DQQN2LTu.js"),__vite__mapDeps([73,1,2,3,4,5,6,7,23,21,20,27,10,11,12,13,26,8,19,29,30,51,39,74,54]),import.meta.url),()=>s(()=>import("../nodes/18.Dx1VeGYs.js"),__vite__mapDeps([75,1,2,42,3,4,5,19,12,6,7,23,47,20,21,27,43,11,13,51,39,74,26,8,28,29,30,31,32,17,18,22,50,62,33,34,63,36,37,38,54,76]),import.meta.url)],nr=[],ir={"/":[5],"/edit":[6],"/edit/[agent]":[7,[2]],"/edit/[agent]/configure":[8,[2]],"/edit/[agent]/roleplay":[9,[2]],"/edit/[agent]/tests":[10,[2]],"/roleplay":[11],"/tests":[12],"/tests/[agent]":[13],"/traces":[14],"/traces/conversations":[15,[3]],"/traces/conversations/[conversationId]":[16,[3,4]],"/traces/conversations/[conversationId]/latency":[17,[3,4]],"/traces/conversations/[conversationId]/traces":[18,[3,4]]},at={handleError:({error:e})=>{console.error(e)},reroute:Mt||(()=>{}),transport:{}},Bt=Object.fromEntries(Object.entries(at.transport).map(([e,t])=>[e,t.decode])),mr=Object.fromEntries(Object.entries(at.transport).map(([e,t])=>[e,t.encode])),_r=!1,ur=(e,t)=>Bt[e](t);export{ur as decode,Bt as decoders,ir as dictionary,mr as encoders,_r as hash,at as hooks,ar as matchers,sr as nodes,or as root,nr as server_loads};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{l as o,a as r}from"../chunks/BD9x_mnu.js";export{o as load_css,r as start};
|
|
Binary file
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{a as m,f as u}from"../chunks/Ca197UDq.js";import{o as w}from"../chunks/C39ai1md.js";import{p as b,a as U,y as c,w as E,c as l,s as _,j as p,r as f,t as x}from"../chunks/CxLomzuE.js";import{s as j}from"../chunks/DJriQKD9.js";import{i as y}from"../chunks/Buo-57fF.js";import{s as L}from"../chunks/BDl2QuyN.js";import{s as R}from"../chunks/Cql_e8Of.js";import{p as k}from"../chunks/
|
|
1
|
+
import{a as m,f as u}from"../chunks/Ca197UDq.js";import{o as w}from"../chunks/C39ai1md.js";import{p as b,a as U,y as c,w as E,c as l,s as _,j as p,r as f,t as x}from"../chunks/CxLomzuE.js";import{s as j}from"../chunks/DJriQKD9.js";import{i as y}from"../chunks/Buo-57fF.js";import{s as L}from"../chunks/BDl2QuyN.js";import{s as R}from"../chunks/Cql_e8Of.js";import{p as k}from"../chunks/CXESoUel.js";import{g as C}from"../chunks/BD9x_mnu.js";var A=u(`<div class="
|
|
2
2
|
absolute bottom-0 right-0 z-50 m-4 rounded-sm border border-red-500 bg-red-50
|
|
3
3
|
px-4 py-2 text-red-800 focus:outline-none focus:ring-0"> </div>`),I=u('<main class="h-screen overflow-hidden bg-gray-600"><!> <!></main>');function F(h,i){b(i,!0);let t=E("");function s(r){c(t,r,!0),setTimeout(()=>{c(t,"")},5e3),console.error(r)}R({onAgentSelect:r=>{const e=new URLSearchParams(k.url.search).get("step");let o=`/edit/${encodeURIComponent(r)}/roleplay`;e&&(o+=`?step=${encodeURIComponent(e)}`),C(o)},onError:s}),w(()=>{const r=e=>{var o;console.error(e),s(`Uncaught error: ${((o=e.error)==null?void 0:o.message)||e.message||"Unknown error"}`)},n=e=>{var o;console.error(e),s(`Unhandled promise rejection: ${((o=e.reason)==null?void 0:o.message)||e.reason||"Unknown error"}`)};return window.addEventListener("error",r),window.addEventListener("unhandledrejection",n),()=>{window.removeEventListener("error",r),window.removeEventListener("unhandledrejection",n)}});var a=I(),d=l(a);L(d,()=>i.children);var g=_(d,2);{var v=r=>{var n=A(),e=l(n,!0);f(n),x(()=>j(e,p(t))),m(r,n)};y(g,r=>{p(t)&&r(v)})}f(a),m(h,a),U()}export{F as component};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as c,f as u}from"../chunks/Ca197UDq.js";import{p as v,f as l,t as _,a as g,c as e,r as o,s as x}from"../chunks/CxLomzuE.js";import{s as p}from"../chunks/DJriQKD9.js";import{p as m}from"../chunks/
|
|
1
|
+
import{a as c,f as u}from"../chunks/Ca197UDq.js";import{p as v,f as l,t as _,a as g,c as e,r as o,s as x}from"../chunks/CxLomzuE.js";import{s as p}from"../chunks/DJriQKD9.js";import{p as m}from"../chunks/CXESoUel.js";var d=u("<h1> </h1> <p> </p>",1);function q(f,i){v(i,!0);var t=d(),r=l(t),h=e(r,!0);o(r);var a=x(r,2),n=e(a,!0);o(a),_(()=>{var s;p(h,m.status),p(n,(s=m.error)==null?void 0:s.message)}),c(f,t),g()}export{q as component};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../chunks/DLQqXQ6R.js","../chunks/C1FmrZbK.js","../assets/editor.BMIWPGx3.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{c as hn,a as g,h as wa,f as C,d as Rs,b as He,t as tt}from"../chunks/Ca197UDq.js";import{o as As,a as yn}from"../chunks/C39ai1md.js";import{p as _n,y as i,f as Te,j as e,a as bn,w as L,n as S,bq as Sa,r as u,d as Er,t as J,x as Pt,c as f,s as m,o as Ne,T as ka}from"../chunks/CxLomzuE.js";import{s as q}from"../chunks/DJriQKD9.js";import{i as D}from"../chunks/Buo-57fF.js";import{M as Gr,k as as}from"../chunks/CyvQWZoe.js";import{e as or,i as os}from"../chunks/BJTwdUYr.js";import{h as Ta}from"../chunks/iAhzu4tv.js";import{a as is,s as On,c as Ut,r as wr,d as dn,b as Ia}from"../chunks/D-B5X35l.js";import{s as $e,c as Hr}from"../chunks/CAjPRvNs.js";import{b as Rn}from"../chunks/BPNEONy5.js";import{g as Ca,P as Pa}from"../chunks/CzXNWL4m.js";import{B as ut}from"../chunks/CVlsAO8k.js";import{P as La,C as ls}from"../chunks/Dslf9OwW.js";import{I as fn}from"../chunks/nYD9wsyN.js";import{T as js,a as Kr}from"../chunks/BsDZe4N6.js";import{h as Ea,I as Bt}from"../chunks/07xNIa59.js";import{r as $a,p as ir}from"../chunks/CPXdAKdv.js";import{p as cs}from"../chunks/CXESoUel.js";import{_ as us}from"../chunks/C1FmrZbK.js";import{b as Ra}from"../chunks/BLu86SbA.js";import{e as Aa,a as ja}from"../chunks/BU7aeYn4.js";import{t as je}from"../chunks/DCuEIs0S.js";import{R as Na,a as Vr}from"../chunks/B_K7D6rX.js";import{i as Sr}from"../chunks/DgGeUDDh.js";const Ns=/^[a-z0-9]+(-[a-z0-9]+)*$/,wn=(t,r,s,o="")=>{const n=t.split(":");if(t.slice(0,1)==="@"){if(n.length<2||n.length>3)return null;o=n.shift().slice(1)}if(n.length>3||!n.length)return null;if(n.length>1){const x=n.pop(),w=n.pop(),I={provider:n.length>0?n[0]:o,prefix:w,name:x};return r&&!gn(I)?null:I}const l=n[0],v=l.split("-");if(v.length>1){const x={provider:o,prefix:v.shift(),name:v.join("-")};return r&&!gn(x)?null:x}if(s&&o===""){const x={provider:o,prefix:"",name:l};return r&&!gn(x,s)?null:x}return null},gn=(t,r)=>t?!!((r&&t.prefix===""||t.prefix)&&t.name):!1;function Oa(t,r){const s=t.icons,o=t.aliases||Object.create(null),n=Object.create(null);function l(v){if(s[v])return n[v]=[];if(!(v in n)){n[v]=null;const x=o[v]&&o[v].parent,w=x&&l(x);w&&(n[v]=[x].concat(w))}return n[v]}return Object.keys(s).concat(Object.keys(o)).forEach(l),n}const Os=Object.freeze({left:0,top:0,width:16,height:16}),xn=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),Sn=Object.freeze({...Os,...xn}),Mn=Object.freeze({...Sn,body:"",hidden:!1});function Ma(t,r){const s={};!t.hFlip!=!r.hFlip&&(s.hFlip=!0),!t.vFlip!=!r.vFlip&&(s.vFlip=!0);const o=((t.rotate||0)+(r.rotate||0))%4;return o&&(s.rotate=o),s}function ds(t,r){const s=Ma(t,r);for(const o in Mn)o in xn?o in t&&!(o in s)&&(s[o]=xn[o]):o in r?s[o]=r[o]:o in t&&(s[o]=t[o]);return s}function Da(t,r,s){const o=t.icons,n=t.aliases||Object.create(null);let l={};function v(x){l=ds(o[x]||n[x],l)}return v(r),s.forEach(v),ds(t,l)}function Ms(t,r){const s=[];if(typeof t!="object"||typeof t.icons!="object")return s;t.not_found instanceof Array&&t.not_found.forEach(n=>{r(n,null),s.push(n)});const o=Oa(t);for(const n in o){const l=o[n];l&&(r(n,Da(t,n,l)),s.push(n))}return s}const qa={provider:"",aliases:{},not_found:{},...Os};function An(t,r){for(const s in r)if(s in t&&typeof t[s]!=typeof r[s])return!1;return!0}function Ds(t){if(typeof t!="object"||t===null)return null;const r=t;if(typeof r.prefix!="string"||!t.icons||typeof t.icons!="object"||!An(t,qa))return null;const s=r.icons;for(const n in s){const l=s[n];if(!n||typeof l.body!="string"||!An(l,Mn))return null}const o=r.aliases||Object.create(null);for(const n in o){const l=o[n],v=l.parent;if(!n||typeof v!="string"||!s[v]&&!o[v]||!An(l,Mn))return null}return r}const fs=Object.create(null);function Fa(t,r){return{provider:t,prefix:r,icons:Object.create(null),missing:new Set}}function $r(t,r){const s=fs[t]||(fs[t]=Object.create(null));return s[r]||(s[r]=Fa(t,r))}function qs(t,r){return Ds(r)?Ms(r,(s,o)=>{o?t.icons[s]=o:t.missing.add(s)}):[]}function za(t,r,s){try{if(typeof s.body=="string")return t.icons[r]={...s},!0}catch{}return!1}let Qr=!1;function Fs(t){return typeof t=="boolean"&&(Qr=t),Qr}function Ja(t){const r=typeof t=="string"?wn(t,!0,Qr):t;if(r){const s=$r(r.provider,r.prefix),o=r.name;return s.icons[o]||(s.missing.has(o)?null:void 0)}}function Ha(t,r){const s=wn(t,!0,Qr);if(!s)return!1;const o=$r(s.provider,s.prefix);return r?za(o,s.name,r):(o.missing.add(s.name),!0)}function Va(t,r){if(typeof t!="object")return!1;if(typeof r!="string"&&(r=t.provider||""),Qr&&!r&&!t.prefix){let n=!1;return Ds(t)&&(t.prefix="",Ms(t,(l,v)=>{Ha(l,v)&&(n=!0)})),n}const s=t.prefix;if(!gn({prefix:s,name:"a"}))return!1;const o=$r(r,s);return!!qs(o,t)}const zs=Object.freeze({width:null,height:null}),Js=Object.freeze({...zs,...xn}),Ua=/(-?[0-9.]*[0-9]+[0-9.]*)/g,Ba=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function vs(t,r,s){if(r===1)return t;if(s=s||100,typeof t=="number")return Math.ceil(t*r*s)/s;if(typeof t!="string")return t;const o=t.split(Ua);if(o===null||!o.length)return t;const n=[];let l=o.shift(),v=Ba.test(l);for(;;){if(v){const x=parseFloat(l);isNaN(x)?n.push(l):n.push(Math.ceil(x*r*s)/s)}else n.push(l);if(l=o.shift(),l===void 0)return n.join("");v=!v}}function Ga(t,r="defs"){let s="";const o=t.indexOf("<"+r);for(;o>=0;){const n=t.indexOf(">",o),l=t.indexOf("</"+r);if(n===-1||l===-1)break;const v=t.indexOf(">",l);if(v===-1)break;s+=t.slice(n+1,l).trim(),t=t.slice(0,o).trim()+t.slice(v+1)}return{defs:s,content:t}}function Ka(t,r){return t?"<defs>"+t+"</defs>"+r:r}function Qa(t,r,s){const o=Ga(t);return Ka(o.defs,r+o.content+s)}const Wa=t=>t==="unset"||t==="undefined"||t==="none";function Xa(t,r){const s={...Sn,...t},o={...Js,...r},n={left:s.left,top:s.top,width:s.width,height:s.height};let l=s.body;[s,o].forEach(A=>{const F=[],$=A.hFlip,P=A.vFlip;let j=A.rotate;$?P?j+=2:(F.push("translate("+(n.width+n.left).toString()+" "+(0-n.top).toString()+")"),F.push("scale(-1 1)"),n.top=n.left=0):P&&(F.push("translate("+(0-n.left).toString()+" "+(n.height+n.top).toString()+")"),F.push("scale(1 -1)"),n.top=n.left=0);let B;switch(j<0&&(j-=Math.floor(j/4)*4),j=j%4,j){case 1:B=n.height/2+n.top,F.unshift("rotate(90 "+B.toString()+" "+B.toString()+")");break;case 2:F.unshift("rotate(180 "+(n.width/2+n.left).toString()+" "+(n.height/2+n.top).toString()+")");break;case 3:B=n.width/2+n.left,F.unshift("rotate(-90 "+B.toString()+" "+B.toString()+")");break}j%2===1&&(n.left!==n.top&&(B=n.left,n.left=n.top,n.top=B),n.width!==n.height&&(B=n.width,n.width=n.height,n.height=B)),F.length&&(l=Qa(l,'<g transform="'+F.join(" ")+'">',"</g>"))});const v=o.width,x=o.height,w=n.width,I=n.height;let k,E;v===null?(E=x===null?"1em":x==="auto"?I:x,k=vs(E,w/I)):(k=v==="auto"?w:v,E=x===null?vs(k,I/w):x==="auto"?I:x);const R={},U=(A,F)=>{Wa(F)||(R[A]=F.toString())};U("width",k),U("height",E);const X=[n.left,n.top,w,I];return R.viewBox=X.join(" "),{attributes:R,viewBox:X,body:l}}const Ya=/\sid="(\S+)"/g,Za="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);let eo=0;function to(t,r=Za){const s=[];let o;for(;o=Ya.exec(t);)s.push(o[1]);if(!s.length)return t;const n="suffix"+(Math.random()*16777216|Date.now()).toString(16);return s.forEach(l=>{const v=typeof r=="function"?r(l):r+(eo++).toString(),x=l.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");t=t.replace(new RegExp('([#;"])('+x+')([")]|\\.[a-z])',"g"),"$1"+v+n+"$3")}),t=t.replace(new RegExp(n,"g"),""),t}const Dn=Object.create(null);function ro(t,r){Dn[t]=r}function qn(t){return Dn[t]||Dn[""]}function zn(t){let r;if(typeof t.resources=="string")r=[t.resources];else if(r=t.resources,!(r instanceof Array)||!r.length)return null;return{resources:r,path:t.path||"/",maxURL:t.maxURL||500,rotate:t.rotate||750,timeout:t.timeout||5e3,random:t.random===!0,index:t.index||0,dataAfterTimeout:t.dataAfterTimeout!==!1}}const Jn=Object.create(null),Ur=["https://api.simplesvg.com","https://api.unisvg.com"],mn=[];for(;Ur.length>0;)Ur.length===1||Math.random()>.5?mn.push(Ur.shift()):mn.push(Ur.pop());Jn[""]=zn({resources:["https://api.iconify.design"].concat(mn)});function no(t,r){const s=zn(r);return s===null?!1:(Jn[t]=s,!0)}function Hn(t){return Jn[t]}const so=()=>{let t;try{if(t=fetch,typeof t=="function")return t}catch{}};let ps=so();function ao(t,r){const s=Hn(t);if(!s)return 0;let o;if(!s.maxURL)o=0;else{let n=0;s.resources.forEach(v=>{n=Math.max(n,v.length)});const l=r+".json?icons=";o=s.maxURL-n-s.path.length-l.length}return o}function oo(t){return t===404}const io=(t,r,s)=>{const o=[],n=ao(t,r),l="icons";let v={type:l,provider:t,prefix:r,icons:[]},x=0;return s.forEach((w,I)=>{x+=w.length+1,x>=n&&I>0&&(o.push(v),v={type:l,provider:t,prefix:r,icons:[]},x=w.length),v.icons.push(w)}),o.push(v),o};function lo(t){if(typeof t=="string"){const r=Hn(t);if(r)return r.path}return"/"}const co=(t,r,s)=>{if(!ps){s("abort",424);return}let o=lo(r.provider);switch(r.type){case"icons":{const l=r.prefix,x=r.icons.join(","),w=new URLSearchParams({icons:x});o+=l+".json?"+w.toString();break}case"custom":{const l=r.uri;o+=l.slice(0,1)==="/"?l.slice(1):l;break}default:s("abort",400);return}let n=503;ps(t+o).then(l=>{const v=l.status;if(v!==200){setTimeout(()=>{s(oo(v)?"abort":"next",v)});return}return n=501,l.json()}).then(l=>{if(typeof l!="object"||l===null){setTimeout(()=>{l===404?s("abort",l):s("next",n)});return}setTimeout(()=>{s("success",l)})}).catch(()=>{s("next",n)})},uo={prepare:io,send:co};function Hs(t,r){t.forEach(s=>{const o=s.loaderCallbacks;o&&(s.loaderCallbacks=o.filter(n=>n.id!==r))})}function fo(t){t.pendingCallbacksFlag||(t.pendingCallbacksFlag=!0,setTimeout(()=>{t.pendingCallbacksFlag=!1;const r=t.loaderCallbacks?t.loaderCallbacks.slice(0):[];if(!r.length)return;let s=!1;const o=t.provider,n=t.prefix;r.forEach(l=>{const v=l.icons,x=v.pending.length;v.pending=v.pending.filter(w=>{if(w.prefix!==n)return!0;const I=w.name;if(t.icons[I])v.loaded.push({provider:o,prefix:n,name:I});else if(t.missing.has(I))v.missing.push({provider:o,prefix:n,name:I});else return s=!0,!0;return!1}),v.pending.length!==x&&(s||Hs([t],l.id),l.callback(v.loaded.slice(0),v.missing.slice(0),v.pending.slice(0),l.abort))})}))}let vo=0;function po(t,r,s){const o=vo++,n=Hs.bind(null,s,o);if(!r.pending.length)return n;const l={id:o,icons:r,callback:t,abort:n};return s.forEach(v=>{(v.loaderCallbacks||(v.loaderCallbacks=[])).push(l)}),n}function go(t){const r={loaded:[],missing:[],pending:[]},s=Object.create(null);t.sort((n,l)=>n.provider!==l.provider?n.provider.localeCompare(l.provider):n.prefix!==l.prefix?n.prefix.localeCompare(l.prefix):n.name.localeCompare(l.name));let o={provider:"",prefix:"",name:""};return t.forEach(n=>{if(o.name===n.name&&o.prefix===n.prefix&&o.provider===n.provider)return;o=n;const l=n.provider,v=n.prefix,x=n.name,w=s[l]||(s[l]=Object.create(null)),I=w[v]||(w[v]=$r(l,v));let k;x in I.icons?k=r.loaded:v===""||I.missing.has(x)?k=r.missing:k=r.pending;const E={provider:l,prefix:v,name:x};k.push(E)}),r}function mo(t,r=!0,s=!1){const o=[];return t.forEach(n=>{const l=typeof n=="string"?wn(n,r,s):n;l&&o.push(l)}),o}const ho={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function xo(t,r,s,o){const n=t.resources.length,l=t.random?Math.floor(Math.random()*n):t.index;let v;if(t.random){let N=t.resources.slice(0);for(v=[];N.length>1;){const K=Math.floor(Math.random()*N.length);v.push(N[K]),N=N.slice(0,K).concat(N.slice(K+1))}v=v.concat(N)}else v=t.resources.slice(l).concat(t.resources.slice(0,l));const x=Date.now();let w="pending",I=0,k,E=null,R=[],U=[];typeof o=="function"&&U.push(o);function X(){E&&(clearTimeout(E),E=null)}function A(){w==="pending"&&(w="aborted"),X(),R.forEach(N=>{N.status==="pending"&&(N.status="aborted")}),R=[]}function F(N,K){K&&(U=[]),typeof N=="function"&&U.push(N)}function $(){return{startTime:x,payload:r,status:w,queriesSent:I,queriesPending:R.length,subscribe:F,abort:A}}function P(){w="failed",U.forEach(N=>{N(void 0,k)})}function j(){R.forEach(N=>{N.status==="pending"&&(N.status="aborted")}),R=[]}function B(N,K,he){const Oe=K!=="success";switch(R=R.filter(we=>we!==N),w){case"pending":break;case"failed":if(Oe||!t.dataAfterTimeout)return;break;default:return}if(K==="abort"){k=he,P();return}if(Oe){k=he,R.length||(v.length?ve():P());return}if(X(),j(),!t.random){const we=t.resources.indexOf(N.resource);we!==-1&&we!==t.index&&(t.index=we)}w="completed",U.forEach(we=>{we(he)})}function ve(){if(w!=="pending")return;X();const N=v.shift();if(N===void 0){if(R.length){E=setTimeout(()=>{X(),w==="pending"&&(j(),P())},t.timeout);return}P();return}const K={status:"pending",resource:N,callback:(he,Oe)=>{B(K,he,Oe)}};R.push(K),I++,E=setTimeout(ve,t.rotate),s(N,r,K.callback)}return setTimeout(ve),$}function Vs(t){const r={...ho,...t};let s=[];function o(){s=s.filter(x=>x().status==="pending")}function n(x,w,I){const k=xo(r,x,w,(E,R)=>{o(),I&&I(E,R)});return s.push(k),k}function l(x){return s.find(w=>x(w))||null}return{query:n,find:l,setIndex:x=>{r.index=x},getIndex:()=>r.index,cleanup:o}}function gs(){}const jn=Object.create(null);function yo(t){if(!jn[t]){const r=Hn(t);if(!r)return;const s=Vs(r),o={config:r,redundancy:s};jn[t]=o}return jn[t]}function _o(t,r,s){let o,n;if(typeof t=="string"){const l=qn(t);if(!l)return s(void 0,424),gs;n=l.send;const v=yo(t);v&&(o=v.redundancy)}else{const l=zn(t);if(l){o=Vs(l);const v=t.resources?t.resources[0]:"",x=qn(v);x&&(n=x.send)}}return!o||!n?(s(void 0,424),gs):o.query(r,n,s)().abort}function ms(){}function bo(t){t.iconsLoaderFlag||(t.iconsLoaderFlag=!0,setTimeout(()=>{t.iconsLoaderFlag=!1,fo(t)}))}function wo(t){const r=[],s=[];return t.forEach(o=>{(o.match(Ns)?r:s).push(o)}),{valid:r,invalid:s}}function Br(t,r,s){function o(){const n=t.pendingIcons;r.forEach(l=>{n&&n.delete(l),t.icons[l]||t.missing.add(l)})}if(s&&typeof s=="object")try{if(!qs(t,s).length){o();return}}catch(n){console.error(n)}o(),bo(t)}function hs(t,r){t instanceof Promise?t.then(s=>{r(s)}).catch(()=>{r(null)}):r(t)}function So(t,r){t.iconsToLoad?t.iconsToLoad=t.iconsToLoad.concat(r).sort():t.iconsToLoad=r,t.iconsQueueFlag||(t.iconsQueueFlag=!0,setTimeout(()=>{t.iconsQueueFlag=!1;const{provider:s,prefix:o}=t,n=t.iconsToLoad;if(delete t.iconsToLoad,!n||!n.length)return;const l=t.loadIcon;if(t.loadIcons&&(n.length>1||!l)){hs(t.loadIcons(n,o,s),k=>{Br(t,n,k)});return}if(l){n.forEach(k=>{const E=l(k,o,s);hs(E,R=>{const U=R?{prefix:o,icons:{[k]:R}}:null;Br(t,[k],U)})});return}const{valid:v,invalid:x}=wo(n);if(x.length&&Br(t,x,null),!v.length)return;const w=o.match(Ns)?qn(s):null;if(!w){Br(t,v,null);return}w.prepare(s,o,v).forEach(k=>{_o(s,k,E=>{Br(t,k.icons,E)})})}))}const ko=(t,r)=>{const s=mo(t,!0,Fs()),o=go(s);if(!o.pending.length){let w=!0;return r&&setTimeout(()=>{w&&r(o.loaded,o.missing,o.pending,ms)}),()=>{w=!1}}const n=Object.create(null),l=[];let v,x;return o.pending.forEach(w=>{const{provider:I,prefix:k}=w;if(k===x&&I===v)return;v=I,x=k,l.push($r(I,k));const E=n[I]||(n[I]=Object.create(null));E[k]||(E[k]=[])}),o.pending.forEach(w=>{const{provider:I,prefix:k,name:E}=w,R=$r(I,k),U=R.pendingIcons||(R.pendingIcons=new Set);U.has(E)||(U.add(E),n[I][k].push(E))}),l.forEach(w=>{const I=n[w.provider][w.prefix];I.length&&So(w,I)}),r?po(r,o,l):ms};function To(t,r){const s={...t};for(const o in r){const n=r[o],l=typeof n;o in zs?(n===null||n&&(l==="string"||l==="number"))&&(s[o]=n):l===typeof s[o]&&(s[o]=o==="rotate"?n%4:n)}return s}const Io=/[\s,]+/;function Co(t,r){r.split(Io).forEach(s=>{switch(s.trim()){case"horizontal":t.hFlip=!0;break;case"vertical":t.vFlip=!0;break}})}function Po(t,r=0){const s=t.replace(/^-?[0-9.]*/,"");function o(n){for(;n<0;)n+=4;return n%4}if(s===""){const n=parseInt(t);return isNaN(n)?0:o(n)}else if(s!==t){let n=0;switch(s){case"%":n=25;break;case"deg":n=90}if(n){let l=parseFloat(t.slice(0,t.length-s.length));return isNaN(l)?0:(l=l/n,l%1===0?o(l):0)}}return r}function Lo(t,r){let s=t.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const o in r)s+=" "+o+'="'+r[o]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+s+">"+t+"</svg>"}function Eo(t){return t.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/\s+/g," ")}function $o(t){return"data:image/svg+xml,"+Eo(t)}function Ro(t){return'url("'+$o(t)+'")'}const xs={...Js,inline:!1},Ao={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},jo={display:"inline-block"},Fn={"background-color":"currentColor"},Us={"background-color":"transparent"},ys={image:"var(--svg)",repeat:"no-repeat",size:"100% 100%"},_s={"-webkit-mask":Fn,mask:Fn,background:Us};for(const t in _s){const r=_s[t];for(const s in ys)r[t+"-"+s]=ys[s]}function No(t){return t+(t.match(/^[-0-9.]+$/)?"px":"")}function Oo(t,r){const s=To(xs,r),o=r.mode||"svg",n=o==="svg"?{...Ao}:{};t.body.indexOf("xlink:")===-1&&delete n["xmlns:xlink"];let l=typeof r.style=="string"?r.style:"";for(let $ in r){const P=r[$];if(P!==void 0)switch($){case"icon":case"style":case"onLoad":case"mode":case"ssr":break;case"inline":case"hFlip":case"vFlip":s[$]=P===!0||P==="true"||P===1;break;case"flip":typeof P=="string"&&Co(s,P);break;case"color":l=l+(l.length>0&&l.trim().slice(-1)!==";"?";":"")+"color: "+P+"; ";break;case"rotate":typeof P=="string"?s[$]=Po(P):typeof P=="number"&&(s[$]=P);break;case"ariaHidden":case"aria-hidden":P!==!0&&P!=="true"&&delete n["aria-hidden"];break;default:if($.slice(0,3)==="on:")break;xs[$]===void 0&&(n[$]=P)}}const v=Xa(t,s),x=v.attributes;if(s.inline&&(l="vertical-align: -0.125em; "+l),o==="svg"){Object.assign(n,x),l!==""&&(n.style=l);let $=0,P=r.id;return typeof P=="string"&&(P=P.replace(/-/g,"_")),{svg:!0,attributes:n,body:to(v.body,P?()=>P+"ID"+$++:"iconifySvelte")}}const{body:w,width:I,height:k}=t,E=o==="mask"||(o==="bg"?!1:w.indexOf("currentColor")!==-1),R=Lo(w,{...x,width:I+"",height:k+""}),X={"--svg":Ro(R)},A=$=>{const P=x[$];P&&(X[$]=No(P))};A("width"),A("height"),Object.assign(X,jo,E?Fn:Us);let F="";for(const $ in X)F+=$+": "+X[$]+";";return n.style=F+l,{svg:!1,attributes:n}}Fs(!0);ro("",uo);if(typeof document<"u"&&typeof window<"u"){const t=window;if(t.IconifyPreload!==void 0){const r=t.IconifyPreload,s="Invalid IconifyPreload syntax.";typeof r=="object"&&r!==null&&(r instanceof Array?r:[r]).forEach(o=>{try{(typeof o!="object"||o===null||o instanceof Array||typeof o.icons!="object"||typeof o.prefix!="string"||!Va(o))&&console.error(s)}catch{console.error(s)}})}if(t.IconifyProviders!==void 0){const r=t.IconifyProviders;if(typeof r=="object"&&r!==null)for(let s in r){const o="IconifyProviders["+s+"] is invalid.";try{const n=r[s];if(typeof n!="object"||!n||n.resources===void 0)continue;no(s,n)||console.error(o)}catch{console.error(o)}}}}function Mo(t,r,s,o,n){function l(){r.loading&&(r.loading.abort(),r.loading=null)}if(typeof t=="object"&&t!==null&&typeof t.body=="string")return r.name="",l(),{data:{...Sn,...t}};let v;if(typeof t!="string"||(v=wn(t,!1,!0))===null)return l(),null;const x=Ja(v);if(!x)return s&&(!r.loading||r.loading.name!==t)&&(l(),r.name="",r.loading={name:t,abort:ko([v],o)}),null;l(),r.name!==t&&(r.name=t,n&&!r.destroyed&&setTimeout(()=>{n(t)}));const w=["iconify"];return v.prefix!==""&&w.push("iconify--"+v.prefix),v.provider!==""&&w.push("iconify--"+v.provider),{data:x,classes:w}}function Do(t,r){return t?Oo({...Sn,...t},r):null}var qo=new Set(["$$slots","$$events","$$legacy"]),Fo=wa("<svg></svg>"),zo=C("<span></span>");function Gt(t,r){_n(r,!0);const s={name:"",loading:null,destroyed:!1},o=$a(r,qo);let n=L(!1),l=L(0),v=S(()=>!!r.ssr||e(n)),x=S(()=>(e(l),Mo(r.icon,s,e(v),I,r.onload))),w=S(()=>{const U=e(x)?Do(e(x).data,o):null;return U&&e(x).classes&&(U.attributes.class=(typeof o.class=="string"?o.class+" ":"")+e(x).classes.join(" ")),U});function I(){Sa(l)}As(()=>{i(n,!0)}),yn(()=>{s.destroyed=!0,s.loading&&(s.loading.abort(),s.loading=null)});var k=hn(),E=Te(k);{var R=U=>{var X=hn(),A=Te(X);{var F=P=>{var j=Fo();is(j,()=>({...e(w).attributes})),Ea(j,()=>e(w).body,!0),u(j),g(P,j)},$=P=>{var j=zo();is(j,()=>({...e(w).attributes})),g(P,j)};D(A,P=>{e(w).svg?P(F):P($,-1)})}g(U,X)};D(E,U=>{e(w)&&U(R)})}g(t,k),bn()}var Jo=C('<div class="w-full"></div>');function bs(t,r){_n(r,!0);let s=L(null),o=null,n=[],l=null,v=!1,x,w=ir(r,"language",3,"plaintext"),I=ir(r,"height",3,120),k=ir(r,"readOnly",3,!1),E=[],R=L(!1);function U(A){e(R)||A.stopPropagation()}As(async()=>{var B,ve;if(!x)return;x.addEventListener("wheel",U,{capture:!0,passive:!0}),Aa();const A=await us(()=>import("../chunks/DLQqXQ6R.js").then(N=>N.e),__vite__mapDeps([0,1,2]),import.meta.url);if(v)return;l=A,ja(A);const F=w()==="json"?"json":w()==="markdown"?"markdown":"plaintext";i(s,A.editor.create(x,{value:r.value??"",language:F,theme:"bosun-dark",lineNumbers:"off",fontSize:14,fontFamily:'ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',automaticLayout:!0,minimap:{enabled:!1},wordBasedSuggestions:"off",wordWrap:"bounded",wordWrapColumn:75,wrappingStrategy:"advanced",scrollbar:{vertical:"hidden",horizontal:"hidden"},overviewRulerLanes:0,renderLineHighlight:"none",folding:!1,renderWhitespace:"none",padding:{top:4,bottom:4},readOnly:k(),domReadOnly:k(),matchBrackets:"never",bracketPairColorization:{enabled:!1},guides:{highlightActiveBracketPair:!1,bracketPairs:!1,bracketPairsHorizontal:!1},occurrencesHighlight:"off",selectionHighlight:!1,unicodeHighlight:{ambiguousCharacters:!1,nonBasicASCII:!1,invisibleCharacters:!1,includeStrings:!1,includeComments:!1},autoClosingQuotes:"never"}),!0);const $=e(s);if(!$)return;o=$.getModel(),n.push($.onDidFocusEditorText(()=>{i(R,!0)})),n.push($.onDidChangeModelContent(()=>{var N;try{const K=$.getValue();if(K===r.value)return;(N=r.onChange)==null||N.call(r,K)}catch(K){console.error("MiniEditor change error",K)}})),n.push($.onDidBlurEditorText(()=>{var N;i(R,!1);try{(N=r.onBlur)==null||N.call(r,$.getValue())}catch{}}));const P=(B=$.onDidFocusEditorWidget)==null?void 0:B.call($,()=>{i(R,!0)});P&&n.push(P);const j=(ve=$.onDidBlurEditorWidget)==null?void 0:ve.call($,()=>{var N;i(R,!1);try{(N=r.onBlur)==null||N.call(r,$.getValue())}catch{}});j&&n.push(j)}),yn(()=>{v=!0;try{x.removeEventListener("wheel",U,{capture:!0})}catch{}for(const F of n)try{F.dispose()}catch{}n=[];const A=o;o=null;try{if(e(s)){try{e(s).setModel(null)}catch{}e(s).dispose()}}finally{i(s,null)}try{A==null||A.dispose()}catch{}l=null}),Er(()=>{if(!e(s))return;const A=w()==="json"?"json":w()==="markdown"?"markdown":"plaintext",F=e(s).getModel();if(!F||F.getLanguageId()===A)return;let $=!1;return(l?Promise.resolve(l):us(()=>import("../chunks/DLQqXQ6R.js").then(j=>j.e),__vite__mapDeps([0,1,2]),import.meta.url)).then(j=>{if(!$)try{j.editor.setModelLanguage(F,A)}catch{}}),()=>{$=!0}}),Er(()=>{e(s)&&r.value!==e(s).getValue()&&e(s).setValue(r.value??"")}),Er(()=>{var A;(A=e(s))==null||A.updateOptions({readOnly:k(),domReadOnly:k()})}),Er(()=>{const A=r.highlights;if(!e(s)||!o||!l)return;const F=l,$=o.getLineCount(),P=[];for(const j of A??[]){const B=Math.max(1,Math.min($,Number(j.startLine)||1)),ve=Math.max(B,Math.min($,Number(j.endLine)||B)),N=o.getLineMaxColumn(ve);if(P.push({range:new F.Range(B,1,ve,N),options:{inlineClassName:j.className}}),j.className==="test-expected-output")for(let K=B;K<=ve;K++){const he=o.getLineContent(K),Oe=/<\/?[A-Za-z][^>]*?>/g;let we;for(;we=Oe.exec(he);){const dt=(we.index??0)+1,ft=Math.min(o.getLineMaxColumn(K),dt+String(we[0]??"").length);ft<=dt||P.push({range:new F.Range(K,dt,K,ft),options:{inlineClassName:"test-expected-output-tag"}})}}}E=e(s).deltaDecorations(E,P)});var X=Jo();Ra(X,A=>x=A,()=>x),J(()=>On(X,`height:${I()}px`)),g(t,X),bn()}var Ho=C('<button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-rc-gray-400">Analyze</button>'),Vo=C('<div><div class="mb-1 text-xs text-rc-gray-300"> </div> <div class="whitespace-pre-wrap break-words text-rc-gray-100"> </div></div>'),Uo=C('<div class="flex flex-col gap-3"></div>'),ws=C('<div class="p-2 text-rc-gray-300">Loading…</div>'),Ss=C('<div class="p-2 text-red-400"> </div>'),Bo=C('<div class="flex h-full flex-col gap-2"><div class="grid grid-cols-2 gap-2"><div class="flex items-center justify-start"><!></div> <div class="flex items-center justify-end"><!></div></div> <!></div>'),Go=C('<div class="h-[55vh]"><!></div>'),Ko=C("<!> <!> <!>",1),Qo=C('<!> <div class="mt-2 h-[55vh]"><!></div>',1),Wo=C('<div class="mt-1 flex flex-wrap items-center gap-x-2 gap-y-1"><button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-rc-gray-400"> </button> <!> <button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none">See variants</button> <button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none">Prompt</button> <button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none">Conversation</button> <button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none">Context</button> <button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none">Debug</button></div> <!> <!> <!>',1);function ks(t,r){_n(r,!0);let s=ir(r,"actionsDisabled",3,!1),o=ir(r,"actionsInert",3,!1),n=ir(r,"addTestDisabled",3,!1),l=ir(r,"showAnalyze",3,!0),v=ir(r,"analyzeDisabled",3,!1),x=L(!1),w=L(!1),I=L(!1),k=L("errors"),E=L("prompt"),R=L(null),U=L(null),X=L(null),A=L(null),F=L(null),$=L(null),P=L(null),j=L(Pt({prompt:!1,conversation:!1,context:!1,errors:!1,traces:!1,logs:!1})),B=L(Pt({prompt:null,conversation:null,context:null,errors:null,traces:null,logs:null})),ve=0,N=L(null),K=null,he=L("idle"),Oe=null;function we(T){try{return{raw:T,formatted:JSON.stringify(JSON.parse(T),null,2)}}catch{return{raw:T,formatted:T}}}async function dt(T){const ae=await je.tests.resultEntry.query({agent:T.agent,region:r.region,testId:T.id,resultKey:T.key,timestamp:T.timestamp,index:T.run});return we(ae)}function ft(T){return T==="prompt"?e(U)!==null&&e(R)!==null:T==="conversation"?e(X)!==null:T==="context"?e(A)!==null:T==="errors"?e(F)!==null:T==="traces"?e($)!==null:e(P)!==null}async function Me(T){if(ft(T)||e(j)[T])return;const ae=ve;i(j,{...e(j),[T]:!0},!0),i(B,{...e(B),[T]:null},!0);try{if(T==="prompt"){const[De,oe]=await Promise.all([dt(r.links.renderedPrompt),dt(r.links.receivedPrompt)]);if(ae!==ve)return;i(R,De,!0),i(U,oe,!0)}else{const De=T==="conversation"?r.links.conversation:T==="context"?r.links.context:T==="errors"?r.links.errors:T==="traces"?r.links.traces:r.links.logs,oe=await dt(De);if(ae!==ve)return;T==="conversation"?i(X,oe,!0):T==="context"?i(A,oe,!0):T==="errors"?i(F,oe,!0):T==="traces"?i($,oe,!0):i(P,oe,!0)}}catch(De){if(ae!==ve)return;console.error(De),i(B,{...e(B),[T]:"Failed to load content"},!0)}finally{ae===ve&&i(j,{...e(j),[T]:!1},!0)}}function Kt(){i(R,null),i(U,null),i(X,null),i(A,null),i(F,null),i($,null),i(P,null),i(j,{prompt:!1,conversation:!1,context:!1,errors:!1,traces:!1,logs:!1},!0),i(B,{prompt:null,conversation:null,context:null,errors:null,traces:null,logs:null},!0)}function Zt(){ve+=1,i(k,"errors"),Kt(),i(x,!0),Me("errors")}function Nt(T){ve+=1,i(E,T,!0),Kt(),i(w,!0),Me(T)}function _t(T){return T==="prompt"?"Prompt":T==="conversation"?"Conversation":"Context"}function lr(T){i(k,T,!0),Me(T)}async function er(){if(e(he)!=="adding"){i(he,"adding");try{await r.onAddTest(),i(he,"added")}catch(T){console.error("Failed to add test",T),i(he,"failed")}Oe&&clearTimeout(Oe),Oe=window.setTimeout(()=>{i(he,"idle"),Oe=null},2500)}}async function at(T){if(!(!e(U)||!e(R)))try{const ae=T==="raw"?e(U).raw:e(R).raw;await navigator.clipboard.writeText(ae),i(N,T,!0),K&&clearTimeout(K),K=window.setTimeout(()=>{i(N,null),K=null},2e3)}catch(ae){console.error("Failed to copy prompt",ae)}}yn(()=>{ve+=1,K&&clearTimeout(K),Oe&&clearTimeout(Oe)});var Wr=Wo(),Rr=Te(Wr),tr=f(Rr),Ar=f(tr,!0);u(tr);var cr=m(tr,2);{var Xr=T=>{var ae=Ho();J(()=>ae.disabled=v()),He("click",ae,function(...De){var oe;(oe=r.onAnalyze)==null||oe.apply(this,De)}),g(T,ae)};D(cr,T=>{l()&&T(Xr)})}var rr=m(cr,2),jr=m(rr,2),Nr=m(jr,2),Or=m(Nr,2),re=m(Or,2);u(Rr);var ur=m(Rr,2);{var Ve=T=>{{const ae=oe=>{var We=Uo();or(We,21,()=>r.variants,Xe=>Xe.index,(Xe,Re)=>{var Ye=Vo(),Ot=f(Ye),dr=f(Ot);u(Ot);var nr=m(Ot,2),ge=f(nr,!0);u(nr),u(Ye),J(()=>{$e(Ye,1,`rounded-lg border p-3 ${e(Re).index===r.runIndex?"border-rc-green-450":"border-rc-gray-650"} ${e(Re).success?"bg-rc-green-700/80":"bg-rc-gray-900/60"}`),q(dr,`Run ${e(Re).index??""}${e(Re).index===r.runIndex?" • selected":""}`),q(ge,e(Re).text||e(Re).errors||"—")}),g(Xe,Ye)}),u(We),g(oe,We)};let De=S(()=>`Variants — ${r.scenario||"Test"}`);Gr(T,{get title(){return e(De)},class:"!w-[80vw] !max-w-4xl",get open(){return e(I)},set open(oe){i(I,oe,!0)},children:ae,$$slots:{default:!0}})}};D(ur,T=>{e(I)&&T(Ve)})}var Yr=m(ur,2);{var kn=T=>{{const ae=oe=>{var We=Go(),Xe=f(We);{var Re=ge=>{var Q=ws();g(ge,Q)},Ye=ge=>{var Q=Ss(),H=f(Q,!0);u(Q),J(()=>q(H,e(B)[e(E)])),g(ge,Q)},Ot=ge=>{var Q=Bo(),H=f(Q),Ie=f(H),Lt=f(Ie);{let qe=S(()=>!e(U).raw.trim());ut(Lt,{variant:"secondary",size:"small",get disabled(){return e(qe)},onclick:()=>at("raw"),children:(Ze,bt)=>{Ne();var sr=tt();J(()=>q(sr,e(N)==="raw"?"Copied raw prompt":"Copy raw prompt")),g(Ze,sr)},$$slots:{default:!0}})}u(Ie);var Et=m(Ie,2),Ue=f(Et);{let qe=S(()=>!e(R).raw.trim());ut(Ue,{variant:"secondary",size:"small",get disabled(){return e(qe)},onclick:()=>at("rendered"),children:(Ze,bt)=>{Ne();var sr=tt();J(()=>q(sr,e(N)==="rendered"?"Copied rendered prompt":"Copy rendered prompt")),g(Ze,sr)},$$slots:{default:!0}})}u(Et),u(H);var Mt=m(H,2);Na(Mt,{get original(){return e(U).formatted},get modified(){return e(R).formatted},language:"markdown",class:"min-h-0 flex-1"}),u(Q),g(ge,Q)},dr=ge=>{{let Q=S(()=>e(X).formatted||"—");Vr(ge,{get value(){return e(Q)},language:"text",class:"h-full"})}},nr=ge=>{{let Q=S(()=>e(A).formatted||"—");Vr(ge,{get value(){return e(Q)},language:"json",class:"h-full"})}};D(Xe,ge=>{e(j)[e(E)]?ge(Re):e(B)[e(E)]?ge(Ye,1):e(E)==="prompt"&&e(U)&&e(R)?ge(Ot,2):e(E)==="conversation"&&e(X)?ge(dr,3):e(E)==="context"&&e(A)&&ge(nr,4)})}u(We),g(oe,We)};let De=S(()=>`${_t(e(E))} — ${r.scenario||"Test"} (run ${r.runIndex})`);Gr(T,{get title(){return e(De)},class:"!w-[85vw] !max-w-5xl",get open(){return e(w)},set open(oe){i(w,oe,!0)},children:ae,$$slots:{default:!0}})}};D(Yr,T=>{e(w)&&T(kn)})}var Zr=m(Yr,2);{var pe=T=>{{const ae=oe=>{var We=Qo(),Xe=Te(We);js(Xe,{get value(){return e(k)},ariaLabel:"Test run debug tabs",onChange:({value:H})=>lr(H),children:(H,Ie)=>{var Lt=Ko(),Et=Te(Lt);Kr(Et,{value:"errors",class:"px-3",children:(qe,Ze)=>{Ne();var bt=tt("Errors");g(qe,bt)},$$slots:{default:!0}});var Ue=m(Et,2);Kr(Ue,{value:"traces",class:"px-3",children:(qe,Ze)=>{Ne();var bt=tt("Traces");g(qe,bt)},$$slots:{default:!0}});var Mt=m(Ue,2);Kr(Mt,{value:"logs",class:"px-3",children:(qe,Ze)=>{Ne();var bt=tt("Logs");g(qe,bt)},$$slots:{default:!0}}),g(H,Lt)},$$slots:{default:!0}});var Re=m(Xe,2),Ye=f(Re);{var Ot=H=>{var Ie=ws();g(H,Ie)},dr=H=>{var Ie=Ss(),Lt=f(Ie,!0);u(Ie),J(()=>q(Lt,e(B)[e(k)])),g(H,Ie)},nr=H=>{{let Ie=S(()=>e(F).formatted||"—");Vr(H,{get value(){return e(Ie)},language:"text",class:"h-full"})}},ge=H=>{{let Ie=S(()=>e($).formatted||"—");Vr(H,{get value(){return e(Ie)},language:"json",class:"h-full"})}},Q=H=>{{let Ie=S(()=>e(P).formatted||"—");Vr(H,{get value(){return e(Ie)},language:"text",class:"h-full"})}};D(Ye,H=>{e(j)[e(k)]?H(Ot):e(B)[e(k)]?H(dr,1):e(k)==="errors"&&e(F)?H(nr,2):e(k)==="traces"&&e($)?H(ge,3):e(k)==="logs"&&e(P)&&H(Q,4)})}u(Re),g(oe,We)};let De=S(()=>`Debug — ${r.scenario||"Test"} (run ${r.runIndex})`);Gr(T,{get title(){return e(De)},class:"!w-[85vw] !max-w-5xl",get open(){return e(x)},set open(oe){i(x,oe,!0)},children:ae,$$slots:{default:!0}})}};D(Zr,T=>{e(x)&&T(pe)})}J(()=>{tr.inert=o(),tr.disabled=s()||n()||e(he)==="adding",q(Ar,e(he)==="adding"?"Adding…":e(he)==="added"?"Added":e(he)==="failed"?"Failed":"Add test")}),He("click",tr,er),He("click",rr,()=>i(I,!0)),He("click",jr,()=>Nt("prompt")),He("click",Nr,()=>Nt("conversation")),He("click",Or,()=>Nt("context")),He("click",re,Zt),g(t,Wr),bn()}Rs(["click"]);function Xo(t){const r=t<0?-1:1,s=Math.abs(t),o=.254829592,n=-.284496736,l=1.421413741,v=-1.453152027,x=1.061405429,I=1/(1+.3275911*s),k=1-((((x*I+v)*I+l)*I+n)*I+o)*I*Math.exp(-s*s);return r*k}function Yo(t){return .5*(1+Xo(t/Math.SQRT2))}function Bs(t,r,s,o){if(!Number.isFinite(t)||!Number.isFinite(r)||!Number.isFinite(s)||!Number.isFinite(o)||r<=0||o<=0)return null;const n=t/r,l=s/o,v=(t+s)/(r+o),x=Math.sqrt(v*(1-v)*(1/r+1/o));if(!Number.isFinite(x)||x<=0)return null;const w=(l-n)/x,I=2*(1-Yo(Math.abs(w)));return Math.max(0,Math.min(1,I))}function Gs(t){return t==="higher"?"significantly better":"significantly worse"}function vn(t,r){if(!t||t.isOld)return null;const s=t.total_runs;if(s<=0)return null;const o=t.previous,n=o&&o.total_runs>0?o.success_count/o.total_runs:null,l=t.successes/s,v=n===null||l>=n?"higher":"lower",x=(()=>{if(s<5||!o||o.total_runs<=0)return!1;const U=Bs(o.success_count,o.total_runs,t.successes,s);return U!==null&&U<.05})(),w=n===1&&l<1,I=n!==null&&n<1&&l===1,k=x?Gs(v):w?"Not 100% anymore":I?"100% now":void 0,E=Number.isFinite(r)&&r>0&&s<r;if(!E&&!k)return null;const R=E?Math.round(l*r):void 0;return{showExpected:E,expectedSuccesses:R,expectedRuns:r,significant:x,direction:v,comparisonLabel:k}}var Zo=C('<link rel="preload" href="/ui/arrow_tests.svg" as="image"/>'),Ts=C('<div class="p-2 text-gray-300">Loading…</div>'),Is=C('<div class="p-2 text-rc-red-600"> </div>'),ei=C('<div class="p-2 text-gray-400">No previous runs</div>'),ti=C('<div class="border-rc-red-700 rounded border bg-rc-gray-900 px-3 py-2 text-sm text-rc-red-600"> </div>'),ri=C('<button type="button"><div class="flex items-baseline justify-between gap-2"><span class="font-semibold text-rc-gray-100"> </span> <span class="text-sm text-rc-gray-400"> </span></div> <div class="mt-1 text-sm text-rc-gray-400"> </div> <div class="mt-2 flex items-center justify-between gap-2 text-sm"><span> </span> <span class="text-rc-gray-300"> </span></div></button>'),ni=C('<div class="flex flex-col gap-2"><!> <!></div>'),Cs=C('<div class="p-3 text-gray-400">—</div>'),pn=C('<span class="ml-2 text-rc-gray-400"> </span>'),si=C("<span> </span> <!>",1),Ps=C('<span class="text-rc-gray-500">—</span>'),Ls=C('<div class="mt-1 px-1 text-sm font-semibold text-rc-gray-300"><!></div>'),ai=C('<div class="flex items-center gap-2"><input class="rc-input w-44 svelte-rdft55" type="text" readonly=""/> <input class="rc-input min-w-0 flex-1 svelte-rdft55" type="text" placeholder="Assertion value" readonly=""/></div>'),Es=C('<div class="flex flex-col gap-2"><div> </div> <div><div class="flex items-center gap-0"><!> <span> </span></div> <!></div></div>'),oi=C('<div class="flex flex-wrap items-center gap-3"><div class="text-lg font-extrabold"><span> </span> <!></div></div> <div class="mt-3 flex flex-col gap-4"></div>',1),ii=C('<div class="flex flex-col gap-2 p-2"><input class="card-input-subtle pointer-events-none svelte-rdft55" type="text" placeholder="Author" readonly=""/> <!> <div class="flex flex-wrap items-center gap-3"><!> <!></div> <!></div> <div class="rounded-b border-t border-rc-gray-700 bg-rc-gray-980 p-2"><!></div>',1),li=C('<div class="border-b border-rc-gray-700 p-2"><div class="grid grid-cols-[2.25rem,1fr] gap-2"><div class="flex flex-col items-center gap-1 pt-1"><!></div> <div class="min-w-0"><div><div><div class="grid grid-cols-[1fr,2.25rem] items-center gap-2"><input class="card-input-title pointer-events-none svelte-rdft55" type="text" placeholder="Scenario" readonly=""/> <button class="icon-btn justify-self-end text-gray-300 hover:text-gray-100 svelte-rdft55"><!></button></div> <!></div> <!></div></div></div></div>'),$s=C('<div class="flex flex-col space-y-5"></div>'),ci=C('<div class="flex flex-col gap-3"><div class="flex flex-wrap items-center justify-between gap-3 border-b border-rc-gray-700 pb-3"><div class="flex flex-wrap items-center gap-3"><div class="flex items-center gap-2"><label class="text-rc-gray-300">Repeats</label> <!></div> <div class="flex items-center gap-2"><label class="text-rc-gray-300">Concurrency</label> <!></div> <span class="text-rc-gray-400"> </span></div></div> <div class="grid grid-cols-[2.25rem,1fr] items-center gap-2 border-b border-rc-gray-700 p-2"><div></div> <div class="flex flex-wrap items-center gap-x-4 gap-y-1 text-left text-rc-gray-300"><span> </span> <span> </span></div></div> <!></div>'),ui=C('<div class="grid min-h-[68vh] grid-cols-[18rem,minmax(0,1fr)] gap-4"><aside class="rc-scroll min-h-0 overflow-auto border-r border-rc-gray-700 pr-3"><!></aside> <section class="rc-scroll min-h-0 overflow-auto"><!></section></div>'),di=C('<pre class="whitespace-pre-wrap font-mono text-gray-200"> </pre>'),fi=C(`<p class="mt-2 text-red-200">Bosun found an old JSON/JSONL test suite. This version only supports one YAML file per
|
|
3
|
+
test and will not read, modify, or replace the legacy files.</p> <a target="_blank" rel="noreferrer" class="mt-4 inline-flex rounded bg-red-200 px-3 py-2 font-semibold text-red-950 hover:bg-red-100">Open migration guide</a>`,1),vi=C('<p class="mt-2 break-words text-red-200"> </p> <!>',1),pi=C('<div class="flex h-full items-start justify-center overflow-auto p-8"><div role="alert" class="w-full max-w-2xl rounded border border-red-500 bg-red-950/30 p-5 text-red-100"><h2 class="text-xl font-semibold"> </h2> <!></div></div>'),gi=C("<li> </li>"),mi=C('<div class="mx-2 mt-2 rounded border border-red-500 bg-red-950/30 px-3 py-2 text-sm text-red-200"><div class="font-semibold">Orphaned tests</div> <ul class="mt-1 list-disc pl-5"></ul></div>'),hi=C('<div class="mr-3 flex items-center gap-3"><span class="animate-pulse rounded bg-rc-green-200 px-3 py-1 text-white"> </span> <!></div>'),xi=C("<!> New test",1),yi=C('<div class="pointer-events-none absolute -left-28 top-full mt-4 inline-flex -translate-x-1/2 flex-col items-center"><div class="relative w-50vw max-w-2xl"><img src="/ui/arrow_tests.svg" alt="Arrow" class="block h-auto w-full object-contain"/> <span class="absolute inset-0 mt-48 flex items-center justify-center text-center text-4xl font-extrabold text-rc-gray-200">No tests yet.<br/>Add the first one</span></div></div>'),_i=C("<!> History",1),bi=C("<!> Collapse all",1),wi=C("<div></div>"),Si=C('<button aria-label="Pin/unpin all" title="Pin/unpin all"><!></button>'),Nn=C('<span><!><span class="ml-1"> </span></span>'),ki=C('<div class="translate-y-[5px]"><!></div>'),Ti=C('<button><!></button> <button title="Duplicate" class="icon-btn text-gray-300 hover:text-gray-100 disabled:cursor-not-allowed disabled:opacity-50 svelte-rdft55"><!></button> <button title="Delete" class="icon-btn text-gray-300 hover:text-gray-100 disabled:cursor-not-allowed disabled:opacity-50 svelte-rdft55"><!></button>',1),Ii=C("<span> </span> <!> <!>",1),Ci=C('<div class="rounded bg-rc-gray-930 px-2 py-2 text-sm text-rc-red-600"> </div>'),Pi=C("<option> </option>"),Li=C('<div class="flex items-center gap-2"><select class="rc-scroll rc-input w-36 svelte-rdft55" aria-label="Assertion Type"></select> <input class="rc-input min-w-0 flex-1 svelte-rdft55" type="text" placeholder="Assertion value"/></div>'),Ei=C('<div class="text-lg font-extrabold"><span> </span> <!> <!></div>'),$i=C('<div class="mt-3 flex flex-col gap-4"></div>'),Ri=C('<div class="flex flex-col gap-2 p-2"><!> <input class="card-input-subtle svelte-rdft55" type="text" placeholder="Author"/> <!> <div class="flex flex-wrap items-center gap-3"><!></div> <!></div> <div class="rounded-b border-t border-rc-gray-700 bg-rc-gray-980 p-2"><div class="flex flex-wrap items-center gap-3"><!> <!></div> <!></div>',1),Ai=C('<div class="border-b border-rc-gray-700 p-2"><div class="grid grid-cols-[2.25rem,1fr] gap-2"><div class="flex flex-col items-center gap-1"><!></div> <div class="min-w-0"><div><div><div class="grid grid-cols-[1fr,2.25rem] items-center gap-2"><input class="card-input-title svelte-rdft55" type="text" placeholder="Scenario"/> <button class="icon-btn justify-self-end text-gray-300 hover:text-gray-100 disabled:cursor-not-allowed disabled:opacity-50 svelte-rdft55"><!></button></div> <!></div> <!></div></div></div></div>'),ji=C("<!> <!>",1),Ni=C('<div class="flex min-h-0 flex-1 flex-col overflow-hidden p-3"><!> <div class="mt-3 min-h-0 flex-1 overflow-hidden"><!></div></div>'),Oi=C('<div class="rc-scroll min-h-0 flex-1 overflow-auto"><div class="grid grid-cols-[2.25rem,1fr] items-center gap-2 border-b border-rc-gray-700 p-2"><!> <div class="flex flex-wrap items-center gap-x-4 gap-y-1 text-left text-rc-gray-300"><span> </span> <span> </span> <span> </span> <!></div></div> <!></div> <!>',1),Mi=C('<div class="flex h-full min-h-0 flex-col"><!> <div class="flex flex-none items-center justify-between gap-3 p-2"><div class="flex flex-wrap items-center gap-3 pl-11"><div class="flex items-center gap-2"><label class="text-rc-gray-300">Repeats</label> <!></div> <div class="flex items-center gap-2"><label class="text-rc-gray-300">Concurrency</label> <!></div></div> <div class="flex flex-wrap items-center gap-3"><!> <div class="relative inline-flex items-center"><!> <!></div> <!></div></div> <div class="flex flex-none items-center justify-between gap-3 px-2 pb-2"><!> <!></div> <div class="min-h-0 flex-1 overflow-hidden"><!></div></div>'),Di=C("<!> <!> <!>",1);function ul(t,r){_n(r,!0);const{state:s,actions:o}=Ca(),n=S(()=>s.agentId),l=S(()=>s.region),v="BOSUN_LEGACY_TEST_SUITE:",x="https://github.com/recombine-ai/bosun/blob/main/TESTS_MIGRATION.md";function w(a){try{return structuredClone(a)}catch{try{return JSON.parse(JSON.stringify(a))}catch{return a}}}function I(a,c,d){return Math.max(c,Math.min(d,a))}let k=L(1),E=L(75),R=L(null);function U(a){if(typeof localStorage>"u")return{repeats:1,concurrency:75,expandedTestIds:[]};try{const c=JSON.parse(localStorage.getItem(a)||"{}");return{repeats:I(Number(c.repeats)||1,1,500),concurrency:I(Number(c.concurrency)||75,1,75),expandedTestIds:Array.isArray(c.expandedTestIds)?c.expandedTestIds.filter(d=>typeof d=="string"):[]}}catch{return{repeats:1,concurrency:75,expandedTestIds:[]}}}function X(){!e(R)||typeof localStorage>"u"||localStorage.setItem(e(R),JSON.stringify({repeats:e(k),concurrency:e(E),expandedTestIds:e(Ze)}))}let A=L(null),F=L("context"),$=L(Pt({})),P=L(Pt({})),j=L(!1),B=L(!1),ve=L(!1),N=L(""),K=L(null),he=L(!1),Oe=L(null),we=L(Pt([])),dt=L(!1),ft=L(null),Me=L(null),Kt=L(Pt({})),Zt=L(!1),Nt=L(null),_t=L(Pt([])),lr=0,er=0;const at=S(()=>e(Me)?e(Kt)[e(Me)]??null:null),Wr=S(()=>e(dt)&&e(we).length===0&&!e(ft)),Rr=S(()=>e(Zt)&&!e(at)),tr=S(()=>new Set(e(_t))),Ar=S(()=>e(at)?e(at).rows.map(a=>ea(e(at).timestamp,a)):[]),cr=S(()=>ta(e(Ar)));function Xr(a,c){i(N,a,!0),i(K,JSON.stringify(c??{},null,2),!0),i(ve,!0)}let rr=L(!1);async function jr(a,c,d){var b;if(e(rr))return;i(rr,!0);const p=o.openPopover("analyze"),h=`Analysis — ${a} (run ${c})`;try{const y=await je.tests.analyzeRun.mutate({agent:d.agent,region:e(l),testId:d.id,index:d.run,timestamp:d.timestamp});if(((b=s.edit.popover)==null?void 0:b.requestId)!==p)return;o.setHighlightQuotes(y.quotes);let O=null;try{O=JSON.stringify(y.raw,null,2)}catch{O=null}o.setPopoverReady(p,{title:h,quotes:y.quotes,rationales:y.rationales,parallelCalls:y.parallelCalls,raw:O})}catch(y){console.error(y);const O=typeof(y==null?void 0:y.message)=="string"?y.message:(()=>{try{return JSON.stringify(y)}catch{return String(y)}})();o.setPopoverError(p,O||"Failed to analyze this response",{raw:O})}finally{i(rr,!1)}}const Nr=[{value:"llm-rubric",label:"LLM"},{value:"answer-relevance",label:"Answer Relevance (LLM)"},{value:"context-faithfulness",label:"Context Faithfulness (LLM)"},{value:"context-recall",label:"Context Recall (LLM)"},{value:"context-relevance",label:"Context Relevance (LLM)"},{value:"model-graded-closedqa",label:"Model-Graded Closed QA"},{value:"model-graded-factuality",label:"Model-Graded Factuality"},{value:"moderation",label:"Moderation"},{value:"classifier",label:"Classifier"},{value:"g-eval",label:"G-Eval"},{value:"factuality",label:"Factuality"},{value:"conversation-relevance",label:"Conversation Relevance"},{value:"equals",label:"Equals"},{value:"contains",label:"Contains"},{value:"icontains",label:"Contains (case-insensitive)"},{value:"contains-all",label:"Contains All"},{value:"contains-any",label:"Contains Any"},{value:"icontains-all",label:"Contains All (iCase)"},{value:"icontains-any",label:"Contains Any (iCase)"},{value:"starts-with",label:"Starts With"},{value:"regex",label:"Regex"},{value:"levenshtein",label:"Levenshtein Distance"},{value:"is-refusal",label:"Is Refusal"},{value:"is-html",label:"Is HTML"},{value:"contains-html",label:"Contains HTML"},{value:"is-json",label:"Is JSON"},{value:"contains-json",label:"Contains JSON"},{value:"is-xml",label:"Is XML"},{value:"contains-xml",label:"Contains XML"},{value:"is-sql",label:"Is SQL"},{value:"contains-sql",label:"Contains SQL"},{value:"similar",label:"Semantic Similarity"},{value:"rouge-n",label:"ROUGE-N"},{value:"bleu",label:"BLEU"},{value:"gleu",label:"GLEU"},{value:"meteor",label:"METEOR"},{value:"perplexity",label:"Perplexity"},{value:"perplexity-score",label:"Perplexity Score"},{value:"latency",label:"Latency"},{value:"cost",label:"Cost"},{value:"finish-reason",label:"Finish Reason"},{value:"trace-error-spans",label:"Trace Error Spans"},{value:"trace-span-count",label:"Trace Span Count"},{value:"trace-span-duration",label:"Trace Span Duration"},{value:"is-valid-function-call",label:"Is Valid Function Call"},{value:"is-valid-openai-function-call",label:"Is Valid OpenAI Function Call"},{value:"is-valid-openai-tools-call",label:"Is Valid OpenAI Tools Call"},{value:"guardrails",label:"Guardrails"},{value:"javascript",label:"JavaScript (custom)"},{value:"python",label:"Python (custom)"},{value:"webhook",label:"Webhook (custom)"},{value:"pi",label:"Pi Scorer"}],Or=[...Nr,...Nr.map(a=>({value:`not-${a.value}`,label:`Not ${a.label}`}))];let re=L(Pt([]));const ur=S(()=>{var a;return((a=s.currentStep)==null?void 0:a.name)||"main"}),Ve=S(()=>e(re).filter(a=>a.step===e(ur)||Sr(a.step)&&Sr(e(ur)))),Yr=S(()=>new Set(s.steps.map(a=>a.name))),kn=S(()=>s.steps.some(a=>Sr(a.name))),Zr=S(()=>{if(!s.steps.length)return[];const a=new Map;for(const c of e(re))e(Yr).has(c.step)||e(kn)&&Sr(c.step)||a.set(c.step,(a.get(c.step)??0)+1);return[...a.entries()].map(([c,d])=>({step:c,count:d})).sort((c,d)=>c.step.localeCompare(d.step))});let pe=L(!1),T=L(null),ae=L(null),De=L(0),oe=L(0),We=L(1),Xe=L(Pt([])),Re=L(Pt([])),Ye=L(Pt([]));const Ot=S(()=>new Set(e(Xe))),dr=S(()=>new Set(e(Re))),nr=S(()=>new Set(e(Ye)));let ge=!1,Q=null,H=0,Ie=Promise.resolve();const Lt=new Set;let Et=L(0);const Ue=S(()=>e(Et)>0);let Mt=L(!1),qe=L(null),Ze=L(Pt([]));const bt=S(()=>new Set(e(Ze))),sr=S(()=>e(Ve).some(a=>e(bt).has(a.id)));function en(a){return Lt.add(a),i(Et,e(Et)+1),a.finally(()=>{Lt.delete(a),i(Et,e(Et)-1)}),a}function Vn(a,c,d){const p=Array.isArray(d.results)?d.results:[],h=p.reduce((b,y)=>b+(y!=null&&y.success?1:0),0);return{success_rate:d.success_rate,successes:h,total_runs:p.length,isOld:!!d.is_old,previous:d.previous&&typeof d.previous=="object"?{success_count:Number(d.previous.success_count??0),total_runs:Number(d.previous.total_runs??0),report_timestamp:String(d.previous.report_timestamp??"")}:void 0,runs:p.map((b,y)=>{const O=d.report_timestamp,M={agent:a,id:c,timestamp:O,run:y};return{index:y+1,success:!!b.success,text:String(b.result||""),evaluation:String(b.evaluation||""),errors:String(b.errors||""),links:{renderedPrompt:{...M,key:"rendered_prompt"},receivedPrompt:{...M,key:"received_prompt"},conversation:{...M,key:"stringified_conversation"},context:{...M,key:"received_context"},logs:{...M,key:"logs"},errors:{...M,key:"errors"},traces:{...M,key:"traces"}}}}).reverse()}}async function fr(){const a=(e(n)??"").trim();if(a){i(qe,null);try{const[{rows:c,settingsKey:d},p]=await Promise.all([je.tests.list.query({agent:a,region:e(l)}),je.tests.latestResult.query({agent:a,region:e(l)})]);if((e(n)??"").trim()!==a)return;i(R,d,!0);const h=U(d);i(k,h.repeats,!0),i(E,h.concurrency,!0),i(Ze,h.expandedTestIds,!0),i(re,c.map(b=>{const y=b.id,O=p[y];return{id:y,pinned:String(b.pinned).toUpperCase()==="TRUE",scenario:b.scenario||"",step:String(b.step||"main"),evaluation_mode:b.evaluation_mode==="json-deep-equal"?"json-deep-equal":"assertion",context_mode:b.context_mode==="replace"?"replace":"merge",author:b.author||"",assertion_type:b.assertion_type||"llm-rubric",assertion_value:b.assertion_value||"",conversation:b.conversation||"",expected_output:b.expected_output||"",conversation_ui:sn(b.conversation||"",b.expected_output||"",String(b.step??"main"),b.evaluation_mode==="json-deep-equal"),timeout:Number(b.timeout??0),similarity_threshold:Number(b.similarity_threshold??50),context:JSON.stringify(b.context),mocks:JSON.stringify(b.mocks||{}),hasMocks:typeof b.mocks<"u",result:O?Vn(a,y,O):void 0}}),!0)}catch(c){if(console.error(c),(e(n)??"").trim()!==a)return;const d=c instanceof Error?c.message:String(c);i(qe,{kind:d.includes(v)?"legacy":"other",message:d},!0),i(re,[],!0),i(k,1),i(E,75),i(Ze,[],!0)}finally{(e(n)??"").trim()===a&&i(Mt,!0)}}}async function tn(a){const c=(e(n)??"").trim();if(c&&!ge){ge=!0;try{const[d,p]=await Promise.all([je.tests.latestResult.query({agent:c,region:e(l)}),je.tests.runProgress.query({agent:c,region:e(l)})]);if(a!==H)return;p&&(i(Xe,p.plannedTestIds,!0),i(Re,p.runningTestIds,!0),i(Ye,p.completedTestIds,!0));const h=e(re).map(M=>{const ie=d[M.id];return{...M,result:ie?Vn(c,M.id,ie):void 0}});i(re,h,!0);const b=e(T),y=Math.max(1,Number(e(We))||1),O=h.reduce((M,ie)=>e(Ot).has(ie.id)&&ie.result&&!ie.result.isOld&&ie.result.total_runs>=y?M+1:M,0);i(De,O,!0)}catch(d){console.error(d)}finally{ge=!1}}}async function Ks(a){if(e(pe))return;i(pe,!0),i(T,a,!0),i(ae,null),i(oe,a==="all"?e(Ve).length:e(Ve).filter(d=>d.pinned).length,!0),i(De,0),i(We,Math.max(1,Number(e(k))||1),!0),i(Xe,e(Ve).filter(d=>a==="all"||d.pinned).map(d=>d.id),!0),i(Re,[],!0),i(Ye,[],!0),H+=1;const c=H;if(await Promise.all([Ie,...Lt]),c===H){Q&&clearInterval(Q),Q=setInterval(()=>tn(c),250),tn(c);try{await je.tests.runTests.mutate({agent:e(n),region:e(l),step:e(ur),scope:a,repeats:e(k),concurrency:e(E)})}catch(d){c===H&&console.error(d)}finally{if(c!==H)return;Q&&clearInterval(Q),Q=null;try{await fr()}finally{if(c!==H)return;i(pe,!1),i(T,null),i(ae,null),i(Xe,[],!0),i(Re,[],!0),i(Ye,[],!0)}}}}async function Qs(a){if(!e(n)||e(pe))return;i(pe,!0),i(T,"single"),i(ae,a,!0),i(oe,1),i(De,0),i(We,Math.max(1,Number(e(k))||1),!0),i(Xe,[a],!0),i(Re,[],!0),i(Ye,[],!0),H+=1;const c=H;if(await Promise.all([Ie,...Lt]),c===H){Q&&clearInterval(Q),Q=setInterval(()=>tn(c),250),tn(c);try{await je.tests.runTests.mutate({agent:e(n),region:e(l),testId:a,repeats:e(k),concurrency:e(E)})}catch(d){c===H&&console.error(d)}finally{if(c!==H)return;Q&&clearInterval(Q),Q=null;try{await fr()}finally{if(c!==H)return;i(pe,!1),i(T,null),i(ae,null),i(Xe,[],!0),i(Re,[],!0),i(Ye,[],!0)}}}}function Ws(){e(pe)&&(H+=1,Q&&clearInterval(Q),Q=null,i(pe,!1),i(T,null),i(ae,null),i(Xe,[],!0),i(Re,[],!0),i(Ye,[],!0),Ie=je.tests.cancelRun.mutate({agent:e(n),region:e(l)}).then(()=>{},()=>{}))}async function Xs(a){const c=a?"TRUE":"FALSE",d=e(Ve).filter(h=>h.pinned!==a).map(h=>h.id);if(d.length===0)return;const p=new Set(d);i(re,e(re).map(h=>p.has(h.id)?{...h,pinned:a}:h),!0);try{await en(je.tests.patchTestsBatch.mutate({agent:e(n),region:e(l),updates:d.map(h=>({id:h,patch:{pinned:c}}))}))}catch(h){console.error(h),await fr()}}let Tn=null,Un=null;Er(()=>{const a=(e(n)??"").trim(),c=(e(l)??"").trim(),d=s.availableRegions,p=Array.isArray(d)&&d.length>0;if(!a){Tn=null,i(R,null),i(qe,null),i(re,[],!0),i(Ze,[],!0),i(Mt,!1);return}if(p&&!c)return;const h=`${a}::${c}`;Tn!==h&&(Tn=h,i(R,null),i(qe,null),i(re,[],!0),i(Ze,[],!0),i(Mt,!1),fr())}),Er(()=>{const a=(cs.url.searchParams.get("test")||"").trim(),c=(cs.url.searchParams.get("step")||"").trim(),d=e(re).some(p=>p.id===a&&(!c||p.step===c));!a||!d||Un===a||(Un=a,(async()=>{var p;e(bt).has(a)||await kr(a,!0),await ka(),(p=document.querySelector(`[data-id="${CSS.escape(a)}"]`))==null||p.scrollIntoView({block:"start"})})().catch(console.error))});const rn=S(()=>e(Ve).filter(a=>a.pinned).length),Mr=S(()=>e(rn)>0),Ys=S(()=>e(Ve).length>0&&e(rn)===e(Ve).length),vt=S(()=>{let a=0,c=0,d=0,p=0,h=0,b=0,y=0,O=0;for(const ie of e(Ve)){const Z=ie.result;!Z||Z.isOld||Z.total_runs<=0||(c+=1,d+=Z.successes,p+=Z.total_runs,Z.successes===Z.total_runs&&(a+=1),Z.previous&&Z.previous.total_runs>0&&(h+=Z.previous.success_count,b+=Z.previous.total_runs,y+=Z.successes,O+=Z.total_runs))}const M=(()=>{if(O<5||b<=0)return null;const ie=Bs(h,b,y,O);if(ie===null||ie>=.05)return null;const Z=h/b;return{direction:y/O>=Z?"higher":"lower",previousAttemptsPassing:h,previousAttemptsTotal:b,currentAttemptsPassing:y,currentAttemptsTotal:O,pValue:ie}})();return{casesPassing:a,casesTotal:c,attemptsPassing:d,attemptsTotal:p,trend:M}});async function Zs(){var p,h;const a=(h=(p=s.currentStep)==null?void 0:p.schema)!=null&&h.trim()?"json-deep-equal":"assertion",c=await je.tests.addTest.mutate({agent:e(n),region:e(l),seed:{step:e(ur),evaluation_mode:a,...a==="json-deep-equal"?{expected_output:"{}"}:{}}}),d=In(c);i(re,[d,...e(re)],!0),kr(d.id,!0).catch(console.error)}function In(a){return{...a,step:String(a.step||"main"),evaluation_mode:a.evaluation_mode==="json-deep-equal"?"json-deep-equal":"assertion",context_mode:a.context_mode==="replace"?"replace":"merge",pinned:a.pinned==="TRUE",timeout:Number(a.timeout),similarity_threshold:Number(a.similarity_threshold),context:JSON.stringify(a.context),mocks:JSON.stringify(a.mocks||{}),hasMocks:typeof a.mocks<"u",conversation_ui:sn(a.conversation||"",a.expected_output||"",String(a.step||"main"),a.evaluation_mode==="json-deep-equal")}}function ea(a,c){const d=c.test,p=d.id,h=c.results,b=h.reduce((y,O)=>y+(O.success?1:0),0);return{id:p,pinned:d.pinned==="TRUE",scenario:d.scenario,step:d.step||"main",evaluation_mode:d.evaluation_mode==="json-deep-equal"?"json-deep-equal":"assertion",context_mode:d.context_mode==="replace"?"replace":"merge",author:d.author||"",assertion_type:d.assertion_type,assertion_value:d.assertion_value,conversation:d.conversation,expected_output:d.expected_output,conversation_ui:sn(d.conversation||"",d.expected_output||"",d.step||"main",d.evaluation_mode==="json-deep-equal"),timeout:Number(d.timeout),similarity_threshold:Number(d.similarity_threshold),context:JSON.stringify(d.context),mocks:JSON.stringify(d.mocks||{}),hasMocks:typeof d.mocks<"u",result:{success_rate:c.success_rate,successes:b,total_runs:h.length,isOld:!1,runs:h.map((y,O)=>{const M={agent:e(n),id:p,timestamp:a,run:O};return{index:O+1,success:y.success,text:y.result||"",evaluation:y.evaluation||"",errors:y.errors||"",links:{renderedPrompt:{...M,key:"rendered_prompt"},receivedPrompt:{...M,key:"received_prompt"},conversation:{...M,key:"stringified_conversation"},context:{...M,key:"received_context"},logs:{...M,key:"logs"},errors:{...M,key:"errors"},traces:{...M,key:"traces"}}}}).reverse()}}}function ta(a){let c=0,d=0,p=0,h=0;for(const b of a){const y=b.result;!y||y.total_runs<=0||(d+=1,p+=y.successes,h+=y.total_runs,y.successes===y.total_runs&&(c+=1))}return{casesPassing:c,casesTotal:d,attemptsPassing:p,attemptsTotal:h}}function ra(a){var c;return((c=Or.find(d=>d.value===a))==null?void 0:c.label)??a}function na(a){const c=new Date(a);return Number.isNaN(c.getTime())?a:c.toLocaleDateString(void 0,{month:"short",day:"numeric",year:"numeric"})}function sa(a){const c=new Date(a);return Number.isNaN(c.getTime())?"":c.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit"})}function Bn(a){return a==="all"?"All tests":"Pinned tests"}function aa(a){const c=new Set(e(_t));c.has(a)?c.delete(a):c.add(a),i(_t,Array.from(c),!0)}function Cn(a,c){return`${a.trim()}::${String(c??"").trim()}`}function vr(){const a=(e(n)??"").trim();return a?Cn(a,e(l)):null}function Gn(a){return a.rows.length===1?a.rows.map(c=>c.test.id):[]}function oa(){lr+=1,er+=1,i(Oe,null),i(we,[],!0),i(dt,!1),i(ft,null),i(Me,null),i(Kt,{},!0),i(Zt,!1),i(Nt,null),i(_t,[],!0)}async function ia(){const a=vr();a&&(e(Oe)!==a&&(oa(),i(dt,!0)),i(he,!0),await la({preserveCachedDetail:!0}))}async function la(a={}){var b;const c=(e(n)??"").trim();if(!c)return;const d=e(l),p=Cn(c,d),h=++lr;i(dt,!0),i(ft,null);try{const y=await je.tests.historyList.query({agent:c,region:d});if(h!==lr||vr()!==p)return;i(we,y,!0),i(Oe,p,!0);const O=e(Me)&&y.some(M=>M.timestamp===e(Me))?e(Me):((b=y[0])==null?void 0:b.timestamp)??null;O?await Kn(O,{preserveCachedDetail:a.preserveCachedDetail,requestKey:p}):(i(Me,null),i(Nt,null),i(Zt,!1),i(_t,[],!0))}catch(y){if(console.error(y),h!==lr||vr()!==p)return;i(ft,"Failed to load test history"),e(Oe)!==p&&(i(we,[],!0),i(Me,null),i(Kt,{},!0),i(_t,[],!0))}finally{h===lr&&vr()===p&&i(dt,!1)}}async function Kn(a,c={}){const d=(e(n)??"").trim();if(!d)return;const p=e(l),h=c.requestKey??Cn(d,p),b=e(Me)===a;i(Me,a,!0),i(Zt,!0),i(Nt,null);const y=e(Kt)[a];if(y&&c.preserveCachedDetail){er+=1,i(Zt,!1),b||i(_t,Gn(y),!0);return}const O=++er;y||i(_t,[],!0);try{const M=await je.tests.historyRun.query({agent:d,region:p,timestamp:a});if(O!==er||e(Me)!==a||vr()!==h)return;i(Kt,{...e(Kt),[a]:M},!0),i(_t,Gn(M),!0)}catch(M){if(console.error(M),O!==er||e(Me)!==a||vr()!==h)return;i(Nt,"Failed to load this test run"),i(_t,[],!0)}finally{O===er&&e(Me)===a&&vr()===h&&i(Zt,!1)}}function Qn(a){const{conversation_ui:c,hasMocks:d,mocks:p,result:h,...b}=a,y={...b,pinned:a.pinned?"TRUE":"FALSE",timeout:String(a.timeout??0),similarity_threshold:String(a.similarity_threshold??50),context:JSON.parse(a.context)};return d&&(y.mocks=JSON.parse(p)),y}async function ca(a,c){const d=Qn(a),p=await je.tests.addTest.mutate({agent:e(n),region:e(l),seed:d}),h=In(p),b=e(re).slice(),y=e(re).findIndex(O=>O.id===a.id);b.splice(y<0?c:y,0,h),i(re,b,!0),kr(h.id,!0).catch(console.error),await je.tests.reorder.mutate({agent:e(n),region:e(l),order:e(re).map(O=>O.id)})}async function Wn(a,c,d=0){const p=Qn(a);p.expected_output=c;const h=await je.tests.addTest.mutate({agent:e(n),region:e(l),seed:p}),b=In(h),y=e(re).slice();y.splice(d,0,b),i(re,y,!0),kr(b.id,!0).catch(console.error),await je.tests.reorder.mutate({agent:e(n),region:e(l),order:e(re).map(O=>O.id)})}function Xn(a){if(!a)return"";try{return a.replace(/^\s*\d+\s*[:.)-]?\s*(?:[❌✖️✔✅✗xX])?\s*/u,"")}catch{return a}}function nn(a){try{return a&&a.trim()?JSON.parse(a):{}}catch{return{}}}const Yn=a=>a.match(/^\s*(agent|assistant|user|system|step)\s*:\s*(.*)$/i);function Zn(a){return Sr(a)?"agent":"step"}function es(a){try{const c=JSON.parse(a),d=JSON.stringify(c,null,2);return typeof c!="object"||c===null||Array.isArray(c)?d:d.split(`
|
|
4
|
+
`).slice(1,-1).map(p=>p.startsWith(" ")?p.slice(2):p).join(`
|
|
5
|
+
`)}catch{return a}}function ts(a,c,d){const p=String(a||c||"—");return d?es(p):p}function ua(a,c,d){let p=String(a??"").trimEnd();if(!p)return"";d&&(p=es(p));const h=Zn(c)==="agent"?"Agent":"Step";return d?p?`${h}:
|
|
6
|
+
${p}`:`${h}:`:`${h}: ${p}`}function sn(a,c,d,p){const h=String(a??"").trimEnd(),b=ua(c,d,p);return b?h?`${h}
|
|
7
|
+
${b}`:b:h}function Pn(a,c){const d=String(a??""),p=d.split(/\r?\n/),h=[];let b=null;for(let xe=0;xe<p.length;xe++){const rt=Yn(p[xe]);if(!rt)continue;b&&h.push({...b,endLine:xe});const $t=String(rt[1]??"").toLowerCase();b={role:$t==="assistant"?"agent":$t,startLine:xe+1}}b&&h.push({...b,endLine:p.length});const y=h.at(-1),O=Zn(c.step);if(!((y==null?void 0:y.role)===O)||!y)return{valid:!1,expected:"",conversation:d.trimEnd()};const ie=p.slice(y.startLine-1,y.endLine),Z=ie[0]??"",Dt=Yn(Z),wt=[Dt?Dt[2]??"":"",...ie.slice(1)].join(`
|
|
8
|
+
`).trimEnd();let Qt=wt,W=!0;if(c.evaluation_mode==="json-deep-equal"){const xe=/^\s*[\[{]/.test(wt)?wt:`{
|
|
9
|
+
${wt}
|
|
10
|
+
}`;try{const rt=JSON.parse(xe);W=typeof rt=="object"&&rt!==null,Qt=W?JSON.stringify(rt,null,2):xe}catch{W=!1,Qt=xe}}const de=p.slice(0,y.startLine-1).join(`
|
|
11
|
+
`).trimEnd();return{valid:W,expected:Qt,conversation:de,highlight:{startLine:c.evaluation_mode==="json-deep-equal"?Math.min(y.endLine,y.startLine+1):y.startLine,endLine:y.endLine}}}function an(a){return a.total_runs>0&&a.successes<a.total_runs?"text-rc-red-600":"text-rc-gray-200"}async function pr(a,c){await je.tests.patchTest.mutate({agent:e(n),region:e(l),id:a,patch:c})}async function da(a){await je.tests.deleteTest.mutate({agent:e(n),region:e(l),id:a});try{await kr(a,!1)}catch(c){console.error(c)}await fr()}function kr(a,c){if(!(e(n)??"").trim())return Promise.resolve();const p=String(a??"").trim();if(!p)return Promise.resolve();const h=new Set(e(Ze)),b=h.has(p);if(c===b)return Promise.resolve();c?h.add(p):h.delete(p);const y=Array.from(h);return i(Ze,y,!0),X(),Promise.resolve()}function fa(a){kr(a,!e(bt).has(a)).catch(console.error)}function va(){return!(e(n)??"").trim()||!e(sr)||(i(Ze,[],!0),X()),Promise.resolve()}function pa(a){e(n)&&(i(A,a.id,!0),i(F,"context"),i($,w(nn(a.context)),!0),i(P,w(nn(a.mocks)),!0),i(j,!1),i(B,a.hasMocks,!0))}async function ga(){const a=e(A);if(!a||!e(n)){i(A,null),i(F,"context"),i(j,!1),i(B,!1);return}const c=w(e($)),d=w(e(P)),p=e(B)||e(j);i(A,null),i(F,"context"),i(j,!1),i(B,!1),i(re,e(re).map(h=>{if(h.id!==a)return h;const b={...h,context:JSON.stringify(c)};return p&&(b.mocks=JSON.stringify(d),b.hasMocks=!0),b}),!0);try{const h={context:c};p&&(h.mocks=d),await en(pr(a,h))}catch(h){console.error(h),await fr()}}yn(()=>{Q&&clearInterval(Q)});var rs=Di();Ta("rdft55",a=>{var c=Zo();g(a,c)});var ns=Te(rs);Gr(ns,{title:"Test history",class:"!w-[95vw] !max-w-[90rem]",get open(){return e(he)},set open(d){i(he,d,!0)},children:d=>{var p=ui(),h=f(p),b=f(h);{var y=W=>{var de=Ts();g(W,de)},O=W=>{var de=Is(),xe=f(de,!0);u(de),J(()=>q(xe,e(ft))),g(W,de)},M=W=>{var de=ei();g(W,de)},ie=W=>{var de=ni(),xe=f(de);{var rt=St=>{var Se=ti(),gr=f(Se,!0);u(Se),J(()=>q(gr,e(ft))),g(St,Se)};D(xe,St=>{e(ft)&&St(rt)})}var $t=m(xe,2);or($t,17,()=>e(we),St=>St.timestamp,(St,Se,gr,Dr)=>{var G=ri(),le=f(G),ke=f(le),me=f(ke,!0);u(ke);var Ce=m(ke,2),nt=f(Ce,!0);u(Ce),u(le);var qt=m(le,2),mr=f(qt);u(qt);var hr=m(qt,2),Ft=f(hr),kt=f(Ft,!0);u(Ft);var Tt=m(Ft,2),xr=f(Tt);u(Tt),u(hr),u(G),J((z,ar,zt)=>{$e(G,1,`w-full rounded border px-3 py-2 text-left transition-colors ${e(Me)===e(Se).timestamp?"border-rc-green-200 bg-rc-gray-930 text-rc-gray-100":"border-rc-gray-700 bg-rc-gray-900 text-rc-gray-300 hover:border-rc-gray-500 hover:bg-rc-gray-800"}`,"svelte-rdft55"),q(me,z),q(nt,ar),q(mr,`${e(Se).testCount??""}
|
|
12
|
+
${e(Se).testCount===1?"test":"tests"} · ${zt??""}`),$e(Ft,1,Hr(e(Se).passed?"text-rc-green-200":"text-rc-red-600")),q(kt,e(Se).passed?"Success":"Failure"),q(xr,`${e(Se).successRatePercent??""}% (${e(Se).successRate??""})`)},[()=>na(e(Se).timestamp),()=>sa(e(Se).timestamp),()=>Bn(e(Se).runScope)]),He("click",G,()=>void Kn(e(Se).timestamp,{preserveCachedDetail:!0})),g(St,G)}),u(de),g(W,de)};D(b,W=>{e(Wr)?W(y):e(ft)&&e(we).length===0?W(O,1):e(we).length===0?W(M,2):W(ie,-1)})}u(h);var Z=m(h,2),Dt=f(Z);{var Tr=W=>{var de=Ts();g(W,de)},wt=W=>{var de=Is(),xe=f(de,!0);u(de),J(()=>q(xe,e(Nt))),g(W,de)},Qt=W=>{var de=ci(),xe=f(de),rt=f(xe),$t=f(rt),St=m(f($t),2);fn(St,{type:"number",class:"w-16",get value(){return e(at).runConfig.repeats},disabled:!0}),u($t);var Se=m($t,2),gr=m(f(Se),2);fn(gr,{type:"number",class:"w-16",get value(){return e(at).runConfig.concurrency},disabled:!0}),u(Se);var Dr=m(Se,2),G=f(Dr,!0);u(Dr),u(rt),u(xe);var le=m(xe,2),ke=m(f(le),2),me=f(ke),Ce=f(me);u(me);var nt=m(me,2),qt=f(nt);u(nt),u(ke),u(le);var mr=m(le,2);{var hr=kt=>{var Tt=Cs();g(kt,Tt)},Ft=kt=>{var Tt=$s();or(Tt,21,()=>e(Ar),xr=>xr.id,(xr,z)=>{const ar=S(()=>Pn(e(z).conversation_ui,e(z))),zt=S(()=>e(tr).has(e(z).id));var Ir=li(),on=f(Ir),qr=f(on),Ln=f(qr);{let Ge=S(()=>`block ${e(z).pinned?"text-rc-green-200":"text-gray-400"}`),It=S(()=>e(z).pinned?"mdi:pin":"mdi:pin-outline");Gt(Ln,{get class(){return e(Ge)},get icon(){return e(It)},width:18,height:18})}u(qr);var ln=m(qr,2),Fr=f(ln),ce=f(Fr),ne=f(ce),et=f(ne);wr(et);var _=m(et,2),Rt=f(_);{let Ge=S(()=>e(zt)?"chevron-up":"chevron-down");Bt(Rt,{get name(){return e(Ge)},width:20,height:20,class:"block"})}u(_),u(ne);var Be=m(ne,2);{var pt=Ge=>{var It=Ls(),Fe=f(It);{var ot=Ae=>{const Pe=S(()=>vn(e(z).result,e(at).runConfig.repeats));var Ke=si(),gt=Te(Ke),lt=f(gt);u(gt);var Pr=m(gt,2);{var zr=Xt=>{var ye=pn(),mt=f(ye);u(ye),J(()=>q(mt,`(${e(Pe).expectedSuccesses??""}/${e(Pe).expectedRuns??""} expected)`)),g(Xt,ye)};D(Pr,Xt=>{var ye;(ye=e(Pe))!=null&&ye.showExpected&&Xt(zr)})}J(Xt=>{$e(gt,1,Xt,"svelte-rdft55"),q(lt,`${e(z).result.successes??""}/${e(z).result.total_runs??""}`)},[()=>Hr(an(e(z).result))]),g(Ae,Ke)},it=Ae=>{var Pe=Ps();g(Ae,Pe)};D(Fe,Ae=>{e(z).result?Ae(ot):Ae(it,-1)})}u(It),g(Ge,It)};D(Be,Ge=>{e(zt)||Ge(pt)})}u(ce);var Wt=m(ce,2);{var Cr=Ge=>{var It=ii(),Fe=Te(It),ot=f(Fe);wr(ot);var it=m(ot,2);{var Ae=ye=>{var mt=ai(),ee=f(mt);wr(ee);var Le=m(ee,2);wr(Le),u(mt),J(_e=>{dn(ee,_e),dn(Le,e(z).assertion_value)},[()=>ra(e(z).assertion_type)]),g(ye,mt)};D(it,ye=>{e(z).evaluation_mode!=="json-deep-equal"&&ye(Ae)})}var Pe=m(it,2),Ke=f(Pe);ut(Ke,{variant:"secondary",size:"small",onclick:()=>Xr(`Test context — ${e(z).scenario||"Test"}`,nn(e(z).context)),children:(ye,mt)=>{Ne();var ee=tt("View context");g(ye,ee)},$$slots:{default:!0}});var gt=m(Ke,2);ut(gt,{variant:"secondary",size:"small",onclick:()=>Xr(`Test mocks — ${e(z).scenario||"Test"}`,nn(e(z).mocks)),children:(ye,mt)=>{Ne();var ee=tt("View mocks");g(ye,ee)},$$slots:{default:!0}}),u(Pe);var lt=m(Pe,2);{let ye=S(()=>e(ar).highlight?[{startLine:e(ar).highlight.startLine,endLine:e(ar).highlight.endLine,className:e(z).evaluation_mode==="json-deep-equal"?"test-expected-json-output":"test-expected-output"}]:void 0);bs(lt,{get value(){return e(z).conversation_ui},get highlights(){return e(ye)},language:"markdown",height:220,readOnly:!0})}u(Fe);var Pr=m(Fe,2),zr=f(Pr);{var Xt=ye=>{const mt=S(()=>vn(e(z).result,e(at).runConfig.repeats));var ee=oi(),Le=Te(ee),_e=f(Le),ht=f(_e),ct=f(ht);u(ht);var Qe=m(ht,2);{var be=fe=>{var V=pn(),yr=f(V);u(V),J(()=>q(yr,`(${e(mt).expectedSuccesses??""}/${e(mt).expectedRuns??""} expected)`)),g(fe,V)};D(Qe,fe=>{var V;(V=e(mt))!=null&&V.showExpected&&fe(be)})}u(_e),u(Le);var At=m(Le,2);or(At,21,()=>e(z).result.runs,fe=>fe.index,(fe,V,yr,Jr)=>{var Yt=Es(),Jt=f(Yt),xt=f(Jt,!0);u(Jt);var Ee=m(Jt,2),Ht=f(Ee),_r=f(Ht);{var se=ze=>{Bt(ze,{name:"checkmark",width:20,height:20,class:"shrink-0 self-end"})},Y=ze=>{Bt(ze,{name:"close",width:18,height:18,class:"shrink-0 scale-110 self-start"})};D(_r,ze=>{e(V).success?ze(se):ze(Y,-1)})}var ue=m(_r,2),te=f(ue,!0);u(ue),u(Ht);var Ct=m(Ht,2);{let ze=S(()=>e(z).scenario||"Test"),st=S(()=>!e(V).text.trim()),jt=S(()=>e(z).evaluation_mode!=="json-deep-equal");ks(Ct,{get scenario(){return e(ze)},get runIndex(){return e(V).index},get links(){return e(V).links},get variants(){return e(z).result.runs},get region(){return e(l)},get actionsDisabled(){return e(pe)},get actionsInert(){return e(Ue)},get addTestDisabled(){return e(st)},get showAnalyze(){return e(jt)},get analyzeDisabled(){return e(rr)},onAddTest:()=>Wn(e(z),e(V).text,0),onAnalyze:()=>jr(e(z).scenario||"Test",e(V).index,e(V).links.renderedPrompt)})}u(Ee),u(Yt),J((ze,st)=>{$e(Jt,1,`w-full whitespace-pre-wrap break-words rounded-lg px-3 py-2 text-rc-gray-100 ${e(z).evaluation_mode==="json-deep-equal"?"font-mono text-sm leading-6":""} ${e(V).success?"bg-rc-green-700 backdrop-blur-md":""}`,"svelte-rdft55"),On(Jt,e(V).success?"":"background-color: rgb(156 80 80)"),q(xt,ze),$e(Ee,1,`flex w-full flex-col gap-x-4 whitespace-pre-wrap break-words ${e(V).success?"text-rc-green-200":"text-rc-red-800"}`,"svelte-rdft55"),q(te,st)},[()=>ts(e(V).text,e(V).errors,e(z).evaluation_mode==="json-deep-equal"),()=>e(V).success?"Pass":Xn(e(V).evaluation)||(e(V).errors||"").split(/\r?\n/)[0]||"Fail"]),g(fe,Yt)}),u(At),J(fe=>{$e(ht,1,fe,"svelte-rdft55"),q(ct,`${e(z).result.successes??""}/${e(z).result.total_runs??""}`)},[()=>Hr(an(e(z).result))]),g(ye,ee)};D(zr,ye=>{e(z).result&&ye(Xt)})}u(Pr),J(()=>dn(ot,e(z).author||"")),g(Ge,It)};D(Wt,Ge=>{e(zt)&&Ge(Cr)})}u(Fr),u(ln),u(on),u(Ir),J(()=>{Ut(Ir,"data-id",e(z).id),$e(Fr,1,`left-details-bg flex flex-col rounded border ${e(ar).valid?"border-rc-gray-700":"border-rc-red-600"}`,"svelte-rdft55"),$e(ce,1,`left-details-bg rounded-t px-2 pt-2 ${e(zt)?"border-b border-rc-gray-700 pb-1":"pb-2"}`,"svelte-rdft55"),dn(et,e(z).scenario),Ut(_,"aria-label",e(zt)?"Collapse test":"Expand test"),Ut(_,"title",e(zt)?"Collapse":"Expand")}),He("click",_,()=>aa(e(z).id)),g(xr,Ir)}),u(Tt),g(kt,Tt)};D(mr,kt=>{e(Ar).length===0?kt(hr):kt(Ft,-1)})}u(de),J(kt=>{q(G,kt),q(Ce,`${e(cr).casesPassing??""}/${e(cr).casesTotal??""} cases passing`),q(qt,`${e(cr).attemptsPassing??""}/${e(cr).attemptsTotal??""} attempts
|
|
13
|
+
passing`)},[()=>Bn(e(at).runScope)]),g(W,de)};D(Dt,W=>{e(Rr)?W(Tr):e(Nt)&&!e(at)?W(wt,1):e(at)&&W(Qt,2)})}u(Z),u(p),g(d,p)},footer:d=>{ut(d,{variant:"outlined",size:"small",onclick:()=>i(he,!1),children:(p,h)=>{Ne();var b=tt("Close");g(p,b)},$$slots:{default:!0}})},$$slots:{default:!0,footer:!0}});var ss=m(ns,2);Gr(ss,{get title(){return e(N)},class:"!w-[80vw] !max-w-5xl",get open(){return e(ve)},set open(d){i(ve,d,!0)},children:d=>{var p=di(),h=f(p,!0);u(p),J(()=>q(h,e(K)||"—")),g(d,p)},footer:d=>{ut(d,{variant:"outlined",size:"small",onclick:()=>i(ve,!1),children:(p,h)=>{Ne();var b=tt("Close");g(p,b)},$$slots:{default:!0}})},$$slots:{default:!0,footer:!0}});var ma=m(ss,2);{var ha=a=>{var c=pi(),d=f(c),p=f(d),h=f(p,!0);u(p);var b=m(p,2);{var y=M=>{var ie=fi(),Z=m(Te(ie),2);Ut(Z,"href",x),g(M,ie)},O=M=>{var ie=vi(),Z=Te(ie),Dt=f(Z,!0);u(Z);var Tr=m(Z,2);ut(Tr,{class:"mt-4",variant:"secondary",onclick:()=>void fr(),children:(wt,Qt)=>{Ne();var W=tt("Retry");g(wt,W)},$$slots:{default:!0}}),J(()=>q(Dt,e(qe).message)),g(M,ie)};D(b,M=>{e(qe).kind==="legacy"?M(y):M(O,-1)})}u(d),u(c),J(()=>q(h,e(qe).kind==="legacy"?"This test suite requires migration":"Tests could not be loaded")),g(a,c)},xa=a=>{var c=Mi(),d=f(c);{var p=G=>{var le=mi(),ke=m(f(le),2);or(ke,21,()=>e(Zr),os,(me,Ce)=>{var nt=gi(),qt=f(nt);u(nt),J(()=>q(qt,`${e(Ce).step??""} (${e(Ce).count??""})`)),g(me,nt)}),u(ke),u(le),g(G,le)};D(d,G=>{e(Zr).length>0&&G(p)})}var h=m(d,2),b=f(h),y=f(b),O=m(f(y),2);fn(O,{type:"number",min:"1",max:"500",class:"w-16",onchange:()=>{i(k,I(+e(k)||1,1,500),!0),X()},get value(){return e(k)},set value(G){i(k,G,!0)}}),u(y);var M=m(y,2),ie=m(f(M),2);fn(ie,{type:"number",min:"1",max:"75",class:"w-16",onchange:()=>{i(E,I(+e(E)||75,1,75),!0),X()},get value(){return e(E)},set value(G){i(E,G,!0)}}),u(M),u(b);var Z=m(b,2),Dt=f(Z);{var Tr=G=>{var le=hi(),ke=f(le),me=f(ke);u(ke);var Ce=m(ke,2);ut(Ce,{variant:"secondary",onclick:Ws,children:(nt,qt)=>{Ne();var mr=tt("Cancel");g(nt,mr)},$$slots:{default:!0}}),u(le),J(()=>q(me,`Running… ${e(De)??""}/${e(oe)??""}`)),g(G,le)};D(Dt,G=>{e(pe)&&G(Tr)})}var wt=m(Dt,2),Qt=f(wt);{let G=S(()=>e(pe)||!e(n));ut(Qt,{variant:"secondary",onclick:Zs,get inert(){return e(Ue)},get disabled(){return e(G)},class:"inline-flex items-center gap-1",children:(le,ke)=>{var me=xi(),Ce=Te(me);Gt(Ce,{icon:"mdi:plus-thick",width:18,height:18}),Ne(),g(le,me)},$$slots:{default:!0}})}var W=m(Qt,2);{var de=G=>{var le=yi();g(G,le)};D(W,G=>{e(Mt)&&e(Ve).length===0&&G(de)})}u(wt);var xe=m(wt,2);{let G=S(()=>e(pe)||e(Ve).length===0||e(Mr)&&e(rn)===0);ut(xe,{class:"inline-flex min-w-32 items-center justify-center gap-1 disabled:cursor-not-allowed disabled:opacity-50",get inert(){return e(Ue)},get disabled(){return e(G)},onclick:()=>Ks(e(Mr)?"pinned":"all"),children:(le,ke)=>{Ne();var me=tt();J(()=>q(me,`▶ ${e(Mr)?"Run pinned":"Run all"}`)),g(le,me)},$$slots:{default:!0}})}u(Z),u(h);var rt=m(h,2),$t=f(rt);{let G=S(()=>!e(n));ut($t,{variant:"secondary",class:"ml-11 inline-flex min-w-32 items-center justify-center gap-1",get disabled(){return e(G)},onclick:()=>void ia().catch(console.error),children:(le,ke)=>{var me=_i(),Ce=Te(me);Gt(Ce,{icon:"mdi:history",width:18,height:18}),Ne(),g(le,me)},$$slots:{default:!0}})}var St=m($t,2);{var Se=G=>{{let le=S(()=>!e(n));ut(G,{variant:"secondary",class:"inline-flex min-w-32 items-center justify-center gap-1",get inert(){return e(Ue)},get disabled(){return e(le)},onclick:()=>void va().catch(console.error),children:(ke,me)=>{var Ce=bi(),nt=Te(Ce);Bt(nt,{name:"chevron-up",width:16,height:16,class:"block"}),Ne(),g(ke,Ce)},$$slots:{default:!0}})}};D(St,G=>{e(sr)&&G(Se)})}u(rt);var gr=m(rt,2),Dr=f(gr);Pa(Dr,{class:"relative flex h-full min-w-0 flex-col overflow-hidden !rounded-none p-0",children:(G,le)=>{var ke=Oi(),me=Te(ke),Ce=f(me),nt=f(Ce);{var qt=ce=>{var ne=wi();g(ce,ne)},mr=ce=>{var ne=Si(),et=f(ne);{let _=S(()=>e(Mr)?"mdi:pin":"mdi:pin-outline");Gt(et,{class:"block",get icon(){return e(_)},width:18,height:18})}u(ne),J(()=>{$e(ne,1,`icon-btn justify-self-center ${e(Mr)?"text-rc-green-200":"text-gray-300 hover:text-gray-100"}`,"svelte-rdft55"),ne.inert=e(Ue),ne.disabled=e(pe)||e(Ve).length===0}),He("click",ne,async()=>{await Xs(!e(Ys))}),g(ce,ne)};D(nt,ce=>{e(pe)?ce(qt):ce(mr,-1)})}var hr=m(nt,2),Ft=f(hr),kt=f(Ft);u(Ft);var Tt=m(Ft,2),xr=f(Tt);u(Tt);var z=m(Tt,2),ar=f(z);u(z);var zt=m(z,2);{var Ir=ce=>{var ne=Nn(),et=f(ne);{let Be=S(()=>e(vt).trend.direction==="higher"?"chevron-up":"chevron-down");Bt(et,{get name(){return e(Be)},width:16,height:16,class:"inline-block align-text-bottom"})}var _=m(et),Rt=f(_,!0);u(_),u(ne),J((Be,pt)=>{$e(ne,1,`whitespace-nowrap font-semibold ${e(vt).trend.direction==="higher"?"text-rc-green-200":"text-rc-red-600"}`,"svelte-rdft55"),Ut(ne,"title",Be),q(Rt,pt)},[()=>`Previous ${e(vt).trend.previousAttemptsPassing}/${e(vt).trend.previousAttemptsTotal}, current ${e(vt).trend.currentAttemptsPassing}/${e(vt).trend.currentAttemptsTotal}, p=${e(vt).trend.pValue.toPrecision(2)}`,()=>Gs(e(vt).trend.direction)]),g(ce,ne)};D(zt,ce=>{e(vt).trend&&ce(Ir)})}u(hr),u(Ce);var on=m(Ce,2);{var qr=ce=>{var ne=Cs();g(ce,ne)},Ln=ce=>{var ne=$s();or(ne,23,()=>e(Ve),et=>et.id,(et,_,Rt)=>{const Be=S(()=>Pn(e(_).conversation_ui,e(_))),pt=S(()=>e(bt).has(e(_).id));var Wt=Ai(),Cr=f(Wt),Ge=f(Cr),It=f(Ge);{var Fe=ee=>{var Le=ki(),_e=f(Le);{var ht=V=>{Gt(V,{icon:"mdi:check",width:20,height:20,class:"text-rc-green-200"})},ct=S(()=>e(nr).has(e(_).id)),Qe=V=>{Gt(V,{icon:"mdi:play",width:20,height:20,class:"text-rc-green-200"})},be=S(()=>e(dr).has(e(_).id)),At=V=>{Gt(V,{icon:"mdi:play-outline",width:20,height:20,class:"text-rc-green-200"})},fe=S(()=>e(Ot).has(e(_).id));D(_e,V=>{e(ct)?V(ht):e(be)?V(Qe,1):e(fe)&&V(At,2)})}u(Le),g(ee,Le)},ot=ee=>{var Le=Ti(),_e=Te(Le),ht=f(_e);{let fe=S(()=>e(_).pinned?"mdi:pin":"mdi:pin-outline");Gt(ht,{class:"block",get icon(){return e(fe)},width:18,height:18})}u(_e);var ct=m(_e,2),Qe=f(ct);Gt(Qe,{icon:"mdi:content-copy",width:18,height:18}),u(ct);var be=m(ct,2),At=f(be);Gt(At,{icon:"mdi:trash-can-outline",width:18,height:18}),u(be),J(()=>{$e(_e,1,`icon-btn ${e(_).pinned?"text-rc-green-200":"text-gray-300 hover:text-gray-100"}`,"svelte-rdft55"),Ut(_e,"aria-label",e(_).pinned?"Unpin":"Pin"),Ut(_e,"title",e(_).pinned?"Unpin":"Pin"),_e.inert=e(Ue),_e.disabled=e(pe),ct.inert=e(Ue),ct.disabled=e(pe),be.inert=e(Ue),be.disabled=e(pe)}),He("click",_e,async()=>{const fe=!e(_).pinned;i(re,e(re).map(V=>V.id===e(_).id?{...V,pinned:fe}:V),!0),await en(pr(e(_).id,{pinned:fe?"TRUE":"FALSE"}))}),He("click",ct,()=>ca(e(_),e(Rt))),He("click",be,()=>da(e(_).id)),g(ee,Le)};D(It,ee=>{e(pe)?ee(Fe):ee(ot,-1)})}u(Ge);var it=m(Ge,2),Ae=f(it),Pe=f(Ae),Ke=f(Pe),gt=f(Ke);wr(gt);var lt=m(gt,2),Pr=f(lt);{let ee=S(()=>e(pt)?"chevron-up":"chevron-down");Bt(Pr,{get name(){return e(ee)},width:20,height:20,class:"block"})}u(lt),u(Ke);var zr=m(Ke,2);{var Xt=ee=>{var Le=Ls(),_e=f(Le);{var ht=Qe=>{const be=S(()=>vn(e(_).result,e(We)));var At=Ii(),fe=Te(At),V=f(fe);u(fe);var yr=m(fe,2);{var Jr=xt=>{var Ee=pn(),Ht=f(Ee);u(Ee),J(()=>q(Ht,`(${e(be).expectedSuccesses??""}/${e(be).expectedRuns??""} expected)`)),g(xt,Ee)};D(yr,xt=>{var Ee;(Ee=e(be))!=null&&Ee.showExpected&&xt(Jr)})}var Yt=m(yr,2);{var Jt=xt=>{var Ee=Nn(),Ht=f(Ee);{let Y=S(()=>e(be).direction==="higher"?"chevron-up":"chevron-down");Bt(Ht,{get name(){return e(Y)},width:16,height:16,class:"inline-block align-text-bottom"})}var _r=m(Ht),se=f(_r,!0);u(_r),u(Ee),J(()=>{$e(Ee,1,`ml-2 whitespace-nowrap font-semibold ${e(be).direction==="higher"?"text-rc-green-200":"text-rc-red-600"}`,"svelte-rdft55"),q(se,e(be).comparisonLabel)}),g(xt,Ee)};D(Yt,xt=>{var Ee;(Ee=e(be))!=null&&Ee.comparisonLabel&&xt(Jt)})}J(xt=>{$e(fe,1,xt,"svelte-rdft55"),q(V,`${e(_).result.successes??""}/${e(_).result.total_runs??""}`)},[()=>Hr(an(e(_).result))]),g(Qe,At)},ct=Qe=>{var be=Ps();g(Qe,be)};D(_e,Qe=>{e(_).result?Qe(ht):Qe(ct,-1)})}u(Le),g(ee,Le)};D(zr,ee=>{e(pt)||ee(Xt)})}u(Pe);var ye=m(Pe,2);{var mt=ee=>{var Le=Ri(),_e=Te(Le),ht=f(_e);{var ct=se=>{var Y=Ci(),ue=f(Y);u(Y),J(te=>q(ue,`Invalid test: expected must be the last ${te??""}`),[()=>Sr(e(_).step)?"“Agent: …” block":e(_).evaluation_mode==="json-deep-equal"?"“Step: …” block with valid JSON":"“Step: …” block"]),g(se,Y)};D(ht,se=>{e(Be).valid||se(ct)})}var Qe=m(ht,2);wr(Qe);var be=m(Qe,2);{var At=se=>{var Y=Li(),ue=f(Y);or(ue,21,()=>Or,os,(Ct,ze)=>{var st=Pi(),jt=f(st,!0);u(st);var Lr={};J(()=>{q(jt,e(ze).label),Lr!==(Lr=e(ze).value)&&(st.value=(st.__value=e(ze).value)??"")}),g(Ct,st)}),u(ue);var te=m(ue,2);wr(te),u(Y),He("change",ue,()=>pr(e(_).id,{assertion_type:e(_).assertion_type})),Ia(ue,()=>e(_).assertion_type,Ct=>e(_).assertion_type=Ct),He("change",te,()=>pr(e(_).id,{assertion_value:e(_).assertion_value})),Rn(te,()=>e(_).assertion_value,Ct=>e(_).assertion_value=Ct),g(se,Y)};D(be,se=>{e(_).evaluation_mode!=="json-deep-equal"&&se(At)})}var fe=m(be,2),V=f(fe);ut(V,{variant:"secondary",size:"small",get inert(){return e(Ue)},get disabled(){return e(pe)},onclick:()=>pa(e(_)),children:(se,Y)=>{Ne();var ue=tt("Edit context");g(se,ue)},$$slots:{default:!0}}),u(fe);var yr=m(fe,2);{let se=S(()=>e(Be).highlight?[{startLine:e(Be).highlight.startLine,endLine:e(Be).highlight.endLine,className:e(_).evaluation_mode==="json-deep-equal"?"test-expected-json-output":"test-expected-output"}]:void 0);bs(yr,{get value(){return e(_).conversation_ui},onChange:Y=>e(_).conversation_ui=Y,onBlur:async Y=>{if(!e(n))return;const ue=Pn(Y,e(_));e(_).conversation=ue.conversation,e(_).expected_output=ue.expected,ue.valid&&e(_).evaluation_mode==="json-deep-equal"&&(e(_).conversation_ui=sn(e(_).conversation,e(_).expected_output,e(_).step,!0)),await en(pr(e(_).id,{conversation:e(_).conversation,expected_output:e(_).expected_output}))},get highlights(){return e(se)},language:"markdown",height:220})}u(_e);var Jr=m(_e,2),Yt=f(Jr),Jt=f(Yt);{let se=S(()=>e(pe)||!e(Be).valid),Y=S(()=>e(Be).valid?"Run":`Expected must be the last ${Sr(e(_).step)?"Agent":"Step"} block${e(_).evaluation_mode==="json-deep-equal"?" with valid JSON":""}`);ut(Jt,{size:"small",get inert(){return e(Ue)},get disabled(){return e(se)},get title(){return e(Y)},onclick:()=>Qs(e(_).id),children:(ue,te)=>{Ne();var Ct=tt("▶ Run");g(ue,Ct)},$$slots:{default:!0}})}var xt=m(Jt,2);{var Ee=se=>{const Y=S(()=>vn(e(_).result,e(We)));var ue=Ei(),te=f(ue),Ct=f(te);u(te);var ze=m(te,2);{var st=yt=>{var Je=pn(),br=f(Je);u(Je),J(()=>q(br,`(${e(Y).expectedSuccesses??""}/${e(Y).expectedRuns??""} expected)`)),g(yt,Je)};D(ze,yt=>{var Je;(Je=e(Y))!=null&&Je.showExpected&&yt(st)})}var jt=m(ze,2);{var Lr=yt=>{var Je=Nn(),br=f(Je);{let un=S(()=>e(Y).direction==="higher"?"chevron-up":"chevron-down");Bt(br,{get name(){return e(un)},width:18,height:18,class:"inline-block align-text-bottom"})}var cn=m(br),En=f(cn,!0);u(cn),u(Je),J(()=>{$e(Je,1,`ml-2 whitespace-nowrap font-semibold ${e(Y).direction==="higher"?"text-rc-green-200":"text-rc-red-600"}`,"svelte-rdft55"),q(En,e(Y).comparisonLabel)}),g(yt,Je)};D(jt,yt=>{var Je;(Je=e(Y))!=null&&Je.comparisonLabel&&yt(Lr)})}u(ue),J(yt=>{$e(te,1,yt,"svelte-rdft55"),q(Ct,`${e(_).result.successes??""}/${e(_).result.total_runs??""}`)},[()=>Hr(an(e(_).result))]),g(se,ue)};D(xt,se=>{e(_).result&&se(Ee)})}u(Yt);var Ht=m(Yt,2);{var _r=se=>{var Y=$i();or(Y,21,()=>e(_).result.runs,ue=>ue.index,(ue,te,Ct,ze)=>{var st=Es(),jt=f(st),Lr=f(jt,!0);u(jt);var yt=m(jt,2),Je=f(yt),br=f(Je);{var cn=Vt=>{Bt(Vt,{name:"checkmark",width:20,height:20,class:"shrink-0 self-end"})},En=Vt=>{Bt(Vt,{name:"close",width:18,height:18,class:"shrink-0 scale-110 self-start"})};D(br,Vt=>{e(te).success?Vt(cn):Vt(En,-1)})}var un=m(br,2),ya=f(un,!0);u(un),u(Je);var _a=m(Je,2);{let Vt=S(()=>e(_).scenario||"Test"),$n=S(()=>!e(te).text.trim()),ba=S(()=>e(_).evaluation_mode!=="json-deep-equal");ks(_a,{get scenario(){return e(Vt)},get runIndex(){return e(te).index},get links(){return e(te).links},get variants(){return e(_).result.runs},get region(){return e(l)},get actionsDisabled(){return e(pe)},get actionsInert(){return e(Ue)},get addTestDisabled(){return e($n)},get showAnalyze(){return e(ba)},get analyzeDisabled(){return e(rr)},onAddTest:()=>Wn(e(_),e(te).text,e(Rt)),onAnalyze:()=>jr(e(_).scenario||"Test",e(te).index,e(te).links.renderedPrompt)})}u(yt),u(st),J((Vt,$n)=>{$e(jt,1,`w-full whitespace-pre-wrap break-words rounded-lg px-3 py-2 text-rc-gray-100 ${e(_).evaluation_mode==="json-deep-equal"?"font-mono text-sm leading-6":""} ${e(te).success?"bg-rc-green-700 backdrop-blur-md":""}`,"svelte-rdft55"),On(jt,e(te).success?"":"background-color: rgb(156 80 80)"),q(Lr,Vt),$e(yt,1,`flex w-full flex-col gap-x-4 whitespace-pre-wrap break-words ${e(te).success?"text-rc-green-200":"text-rc-red-800"}`,"svelte-rdft55"),q(ya,$n)},[()=>ts(e(te).text,e(te).errors,e(_).evaluation_mode==="json-deep-equal"),()=>e(te).success?"Pass":Xn(e(te).evaluation)||(e(te).errors||"").split(/\r?\n/)[0]||"Fail"]),g(ue,st)}),u(Y),g(se,Y)};D(Ht,se=>{e(_).result&&se(_r)})}u(Jr),He("change",Qe,()=>pr(e(_).id,{author:e(_).author||""})),Rn(Qe,()=>e(_).author,se=>e(_).author=se),g(ee,Le)};D(ye,ee=>{e(pt)&&ee(mt)})}u(Ae),u(it),u(Cr),u(Wt),J(()=>{Ut(Wt,"data-id",e(_).id),$e(Ae,1,`left-details-bg flex flex-col rounded border ${e(Be).valid?"border-rc-gray-700":"border-rc-red-600"}`,"svelte-rdft55"),$e(Pe,1,`left-details-bg sticky top-0 z-10 rounded-t px-2 pt-2 ${e(pt)?"border-b border-rc-gray-700 pb-1":"pb-2"}`,"svelte-rdft55"),Ut(lt,"aria-label",e(pt)?"Collapse test":"Expand test"),Ut(lt,"title",e(pt)?"Collapse":"Expand"),lt.inert=e(Ue)}),He("change",gt,()=>pr(e(_).id,{scenario:e(_).scenario})),Rn(gt,()=>e(_).scenario,ee=>e(_).scenario=ee),He("click",lt,()=>fa(e(_).id)),g(et,Wt)}),u(ne),g(ce,ne)};D(on,ce=>{e(Ve).length===0?ce(qr):ce(Ln,-1)})}u(me);var ln=m(me,2);{var Fr=ce=>{const ne=S(()=>e(re).find(et=>et.id===e(A)));{const et=Rt=>{var Be=Ni(),pt=f(Be);js(pt,{get value(){return e(F)},ariaLabel:"Test context tabs",onChange:({value:Fe})=>i(F,Fe,!0),children:(Fe,ot)=>{var it=ji(),Ae=Te(it);Kr(Ae,{value:"context",class:"px-3",children:(Ke,gt)=>{Ne();var lt=tt("Context");g(Ke,lt)},$$slots:{default:!0}});var Pe=m(Ae,2);Kr(Pe,{value:"mocks",class:"px-3",children:(Ke,gt)=>{Ne();var lt=tt("Mocks");g(Ke,lt)},$$slots:{default:!0}}),g(Fe,it)},$$slots:{default:!0}});var Wt=m(pt,2),Cr=f(Wt);{var Ge=Fe=>{var ot=hn(),it=Te(ot);as(it,()=>`${e(A)}:context`,Ae=>{{let Pe=S(()=>`editorState/context/${e(n)}/tests/${e(A)}`);ls(Ae,{class:"h-full min-h-0 border-thin border-rc-gray-650 shadow-inner-white-soft backdrop-blur-3xl",get context(){return e($)},suppressErrors:!0,defaultFormat:"yaml",hideHeader:!0,get editorStateKey(){return e(Pe)},onContextChanged:Ke=>i($,Ke,!0)})}}),g(Fe,ot)},It=Fe=>{var ot=hn(),it=Te(ot);as(it,()=>`${e(A)}:mocks`,Ae=>{{let Pe=S(()=>`editorState/mocks/${e(n)}/tests/${e(A)}`);ls(Ae,{class:"h-full min-h-0 border-thin border-rc-gray-650 shadow-inner-white-soft backdrop-blur-3xl",get context(){return e(P)},suppressErrors:!0,defaultFormat:"yaml",hideHeader:!0,get editorStateKey(){return e(Pe)},onContextChanged:Ke=>{i(P,Ke,!0),i(j,!0)}})}}),g(Fe,ot)};D(Cr,Fe=>{e(F)==="context"?Fe(Ge):Fe(It,-1)})}u(Wt),u(Be),g(Rt,Be)};let _=S(()=>{var Rt;return`Test context — ${((Rt=e(ne))==null?void 0:Rt.scenario)||"Test"}`});La(ce,{get title(){return e(_)},onClose:()=>void ga(),children:et})}};D(ln,ce=>{e(A)&&ce(Fr)})}J(()=>{q(kt,`Pinned: ${e(rn)??""}/${e(Ve).length??""}`),q(xr,`${e(vt).casesPassing??""}/${e(vt).casesTotal??""} cases passing`),q(ar,`${e(vt).attemptsPassing??""}/${e(vt).attemptsTotal??""} attempts passing`)}),g(G,ke)}}),u(gr),u(c),g(a,c)};D(ma,a=>{e(Mt)&&e(qe)?a(ha):e(Mt)&&a(xa,1)})}g(t,rs),bn()}Rs(["click","change"]);export{ul as component};
|
|
Binary file
|
|
Binary file
|