signetai 0.108.6 → 0.108.7

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.
Files changed (59) hide show
  1. package/dashboard/_app/immutable/chunks/{CMP1NIpg.js → BCMYelBr.js} +1 -1
  2. package/dashboard/_app/immutable/chunks/{DZmHIE24.js → BFO8ST24.js} +1 -1
  3. package/dashboard/_app/immutable/chunks/{CN_vMFVi.js → BH-ip_x8.js} +1 -1
  4. package/dashboard/_app/immutable/chunks/{zEsrB-36.js → BITl5ybM.js} +1 -1
  5. package/dashboard/_app/immutable/chunks/{DTHoa0Gg.js → BTFgr4CE.js} +1 -1
  6. package/dashboard/_app/immutable/chunks/{Dpk-QNbu.js → Bbquapis.js} +1 -1
  7. package/dashboard/_app/immutable/chunks/{8fHeMlOf.js → BkjSZJ1N.js} +1 -1
  8. package/dashboard/_app/immutable/chunks/{Yf1dWQ8c.js → BpCJiynO.js} +1 -1
  9. package/dashboard/_app/immutable/chunks/{C8TJNT57.js → Bu6HHQFy.js} +1 -1
  10. package/dashboard/_app/immutable/chunks/{B-lnGW9j.js → BwZKr45t.js} +1 -1
  11. package/dashboard/_app/immutable/chunks/{C4Dakd7K.js → C6ind_Vx.js} +1 -1
  12. package/dashboard/_app/immutable/chunks/{C8rLAWAs.js → C918l4uN.js} +3 -3
  13. package/dashboard/_app/immutable/chunks/CE4bVOxP.js +1 -0
  14. package/dashboard/_app/immutable/chunks/{C3oTAE_Q.js → Cc209wSO.js} +1 -1
  15. package/dashboard/_app/immutable/chunks/{B0grovJ_.js → Chzwd9Uv.js} +2 -2
  16. package/dashboard/_app/immutable/chunks/{yir9EDXz.js → CmYPsvNp.js} +1 -1
  17. package/dashboard/_app/immutable/chunks/{DNflQleE.js → Co_ScpRR.js} +1 -1
  18. package/dashboard/_app/immutable/chunks/{k6981xzs.js → CuTuwsHS.js} +1 -1
  19. package/dashboard/_app/immutable/chunks/{CQXVOS95.js → D1_t0YSy.js} +1 -1
  20. package/dashboard/_app/immutable/chunks/{nCg6DKMp.js → D23eh3Fr.js} +1 -1
  21. package/dashboard/_app/immutable/chunks/{DgZE0v9e.js → D4C32oaj.js} +1 -1
  22. package/dashboard/_app/immutable/chunks/{rlFAbnTr.js → D70Xzjfp.js} +1 -1
  23. package/dashboard/_app/immutable/chunks/{Dfr9I4lK.js → DLSC6XXv.js} +1 -1
  24. package/dashboard/_app/immutable/chunks/{Dr6fKKtn.js → DQo-Xzrk.js} +1 -1
  25. package/dashboard/_app/immutable/chunks/{DdhMwGTV.js → DWgZqH11.js} +1 -1
  26. package/dashboard/_app/immutable/chunks/{Ce0YIWtK.js → DXUOmFGN.js} +1 -1
  27. package/dashboard/_app/immutable/chunks/{D6tT_IzP.js → DZT_u_yU.js} +1 -1
  28. package/dashboard/_app/immutable/chunks/{CjfQ5L_u.js → D_7-Khno.js} +1 -1
  29. package/dashboard/_app/immutable/chunks/{VKWX_BaO.js → DdWBP95H.js} +1 -1
  30. package/dashboard/_app/immutable/chunks/{D1V8J8vf.js → DjBvo8Df.js} +2 -2
  31. package/dashboard/_app/immutable/chunks/{tDm-QYML.js → DnUHRx94.js} +1 -1
  32. package/dashboard/_app/immutable/chunks/{CwFHpHtF.js → DqpHzmxr.js} +1 -1
  33. package/dashboard/_app/immutable/chunks/{CAX9GfAb.js → Ds7vaJtc.js} +1 -1
  34. package/dashboard/_app/immutable/chunks/{i7iOs8Zb.js → DuduwGP4.js} +1 -1
  35. package/dashboard/_app/immutable/chunks/{1WbSf-tO.js → Dy4tzYUc.js} +1 -1
  36. package/dashboard/_app/immutable/chunks/{bgVphF3u.js → Dz3UGwnU.js} +1 -1
  37. package/dashboard/_app/immutable/chunks/{B7yjM9FM.js → DzSBHc70.js} +1 -1
  38. package/dashboard/_app/immutable/chunks/{DVK27fi3.js → E_gtZyP8.js} +1 -1
  39. package/dashboard/_app/immutable/chunks/{Cy_LwDE4.js → IKUe2wbE.js} +1 -1
  40. package/dashboard/_app/immutable/chunks/{CUUcyUFg.js → JWHcfZPf.js} +1 -1
  41. package/dashboard/_app/immutable/chunks/{DJZF8sWj.js → Kl87eko-.js} +1 -1
  42. package/dashboard/_app/immutable/chunks/{BDRKtfM-.js → LUTzkwcK.js} +1 -1
  43. package/dashboard/_app/immutable/chunks/{WHquYIMq.js → Ljk2fJek.js} +1 -1
  44. package/dashboard/_app/immutable/chunks/{z-SM9l_p.js → NqcLnbqk.js} +1 -1
  45. package/dashboard/_app/immutable/chunks/{DHp_N3MO.js → XayUTxde.js} +1 -1
  46. package/dashboard/_app/immutable/chunks/{Ds2EjqlB.js → ic33Qyz3.js} +1 -1
  47. package/dashboard/_app/immutable/chunks/{DUS-uTfy.js → sKgVFKDN.js} +1 -1
  48. package/dashboard/_app/immutable/chunks/{CtXE9xP_.js → xty9zeSp.js} +1 -1
  49. package/dashboard/_app/immutable/entry/{app.DuVexZiv.js → app.DgQlXttW.js} +2 -2
  50. package/dashboard/_app/immutable/entry/start.efSPMp8V.js +1 -0
  51. package/dashboard/_app/immutable/nodes/{1.Ckt8tSkc.js → 1.BYDObWu_.js} +1 -1
  52. package/dashboard/_app/immutable/nodes/2.CdzsWZ2t.js +1 -0
  53. package/dashboard/_app/version.json +1 -1
  54. package/dashboard/index.html +6 -6
  55. package/dist/cli.js +486 -207
  56. package/package.json +1 -1
  57. package/dashboard/_app/immutable/chunks/CshmuARP.js +0 -1
  58. package/dashboard/_app/immutable/entry/start.D71JJAsT.js +0 -1
  59. package/dashboard/_app/immutable/nodes/2.8nPnryqI.js +0 -1
@@ -1,3 +1,3 @@
1
- import{e as Bt,p as rt,c as Xe,f as K,h as Oe,k as O,i as e,b as l,w as _e,t as n,x as ve,y as _,z as f,j as a,l as r,A as Ae,B as Be,K as yt,d as at,u as C,ae as Gt,m as D,D as v,af as ue,Q as Xt,v as x,O as _t,o as U,P as Kt,N as Mt,q as vr,s as ur,a9 as Ut,F as fr}from"./KKQFryJf.js";import{o as gr,aB as mr,$ as pr,a0 as xr,a1 as hr,a3 as br,a2 as _r,aC as yr,t as Ve,aD as wr,f as kr,n as Sr,E as Cr,B as tt,aE as Pr,aF as $r}from"./C8rLAWAs.js";import{P as Er}from"./DK3bAoxY.js";import{T as Tr}from"./CyB1_UBK.js";import{B as Dt}from"./B-lnGW9j.js";import{S as Jt}from"./DTHoa0Gg.js";import{P as Mr,a as Dr,b as Lr}from"./CtXE9xP_.js";import{w as Tt,s as Qt}from"./Bc-tUO5p.js";const De={harness:"#4dabf7",daemon:"#ff922b",pipeline:"#da77f2",db:"#ffd43b",search:"#da77f2",files:"#20c997",configs:"#4dabf7",llm:"#fcc419"},Fe={harness:"AI Harness",daemon:"Signet Daemon",pipeline:"Pipeline Workers",db:"memories.db",search:"Hybrid Recall",files:"~/.agents/",configs:"Harness Configs",llm:"LLM Provider"},Or={harness:{x:20,y:20,w:240,h:120,label:Fe.harness,color:De.harness},daemon:{x:300,y:20,w:340,h:280,label:Fe.daemon,color:De.daemon},pipeline:{x:20,y:360,w:620,h:140,label:Fe.pipeline,color:De.pipeline},db:{x:680,y:160,w:200,h:200,label:Fe.db,color:De.db},search:{x:920,y:160,w:200,h:140,label:Fe.search,color:De.search},files:{x:680,y:400,w:200,h:100,label:Fe.files,color:De.files},configs:{x:920,y:400,w:200,h:100,label:Fe.configs,color:De.configs},llm:{x:680,y:540,w:200,h:80,label:Fe.llm,color:De.llm}},ot=[{id:"harness",label:"AI Client",group:"harness",x:40,y:55,w:200,h:50,logCategories:["hooks","session-tracker"],icon:"terminal",description:"Claude Code / OpenCode / OpenClaw — sends session hooks"},{id:"hooks",label:"Hook Handlers",group:"daemon",x:320,y:50,w:140,h:40,logCategories:["hooks"],icon:"webhook",description:"Session lifecycle hooks (start, submit, remember, recall, end)"},{id:"mutex",label:"Session Mutex",group:"daemon",x:320,y:110,w:140,h:40,logCategories:["session-tracker"],icon:"lock",description:"Plugin vs legacy runtime path enforcement"},{id:"queue",label:"Job Queues",group:"daemon",x:320,y:170,w:140,h:40,logCategories:["pipeline"],diagnosticDomain:"queue",icon:"layers",description:"memory_jobs + summary_jobs durable queues"},{id:"watcher",label:"File Watcher",group:"daemon",x:490,y:110,w:130,h:40,logCategories:["watcher"],icon:"eye",description:"Chokidar file change detection on ~/.agents/"},{id:"sync",label:"Harness Sync",group:"daemon",x:490,y:170,w:130,h:40,logCategories:["sync"],diagnosticDomain:"connector",icon:"refresh-cw",description:"Generate CLAUDE.md, AGENTS.md from identity files"},{id:"extraction",label:"Extraction",group:"pipeline",x:40,y:395,w:110,h:40,logCategories:["pipeline"],diagnosticDomain:"queue",icon:"cpu",description:"LLM extracts facts + entities (2s poll)"},{id:"summary",label:"Summary",group:"pipeline",x:165,y:395,w:100,h:40,logCategories:["summary-worker"],icon:"file-text",description:"Session-end transcript summarizer (5s poll)"},{id:"document",label:"Document",group:"pipeline",x:280,y:395,w:100,h:40,logCategories:["document-worker"],icon:"file-plus",description:"Chunk + embed documents (10s poll)"},{id:"retention",label:"Retention",group:"pipeline",x:395,y:395,w:100,h:40,logCategories:["retention"],diagnosticDomain:"mutation",icon:"trash-2",description:"Purge expired data (6h interval)"},{id:"maintenance",label:"Maintenance",group:"pipeline",x:510,y:395,w:110,h:40,logCategories:["maintenance"],icon:"wrench",description:"Self-repair + diagnostics (30min interval)"},{id:"database",label:"SQLite",group:"db",x:710,y:220,w:140,h:80,logCategories:["memory","embedding"],diagnosticDomain:"storage",icon:"database",description:"memories, embeddings, entities, relations, history"},{id:"search",label:"Hybrid Recall",group:"search",x:940,y:200,w:160,h:60,logCategories:["memory"],diagnosticDomain:"index",icon:"search",description:"BM25 + vector similarity + graph boost"},{id:"files",label:"Identity Files",group:"files",x:710,y:430,w:140,h:40,logCategories:["sync"],icon:"folder",description:"AGENTS.md, SOUL.md, IDENTITY.md, USER.md, MEMORY.md"},{id:"configs",label:"CLAUDE.md",group:"configs",x:950,y:430,w:140,h:40,logCategories:["harness"],icon:"file-code",description:"Generated harness config files"},{id:"llm",label:"LLM Provider",group:"llm",x:710,y:560,w:140,h:40,logCategories:["llm"],diagnosticDomain:"provider",icon:"brain",description:"llama.cpp qwen3.5:4b (or configured provider)"}],Ht=new Map(ot.map(g=>[g.id,g])),Ar=[{from:"harness",to:"hooks",label:"POST"},{from:"hooks",to:"mutex"},{from:"hooks",to:"queue",label:"enqueue"},{from:"queue",to:"extraction"},{from:"queue",to:"summary"},{from:"queue",to:"document"},{from:"extraction",to:"database",label:"write"},{from:"summary",to:"database"},{from:"document",to:"database"},{from:"retention",to:"database"},{from:"maintenance",to:"database"},{from:"extraction",to:"llm"},{from:"summary",to:"llm"},{from:"database",to:"search"},{from:"search",to:"harness",dashed:!0,label:"recall"},{from:"watcher",to:"sync"},{from:"files",to:"watcher"},{from:"sync",to:"configs"},{from:"files",to:"sync"},{from:"summary",to:"files",label:".md"},{from:"configs",to:"harness",dashed:!0,label:"next session"}];function Nr(){return{health:"unknown",score:0,lastActivity:null,pulseCount:0,queueDepth:0,processingRate:0,errorCount:0,recentLogs:[],metrics:{}}}const zt=new Map;for(const g of ot)for(const o of g.logCategories){const d=zt.get(o);d?d.push(g.id):zt.set(o,[g.id])}const Wt=20;function Ir(){const g={};for(const o of ot)g[o.id]=Nr();return g}const Zt=50,y=Bt({nodes:Ir(),mode:"unknown",connected:!1,lastPoll:null,selectedNodeId:null,feed:[]});let be=null;function er(){be&&(be.close(),be=null),be=new EventSource(`${gr}/api/logs/stream`),be.onopen=()=>{y.connected=!0},be.onmessage=g=>{try{const o=JSON.parse(g.data);if(o.type==="connected"){y.connected=!0;return}const d=[...y.feed,o];y.feed=d.length>Zt?d.slice(-Zt):d;const m=zt.get(o.category);if(!m)return;for(const i of m){const P=y.nodes[i];if(!P)continue;P.pulseCount+=1,P.lastActivity=o.timestamp;const L=[...P.recentLogs,o];P.recentLogs=L.length>Wt?L.slice(-Wt):L,o.level==="error"&&(P.errorCount+=1)}}catch{}},be.onerror=()=>{y.connected=!1,be?.close(),be=null,setTimeout(()=>{be||er()},3e3)}}function Rr(){y.connected=!1,be?.close(),be=null}let wt=null;function jr(g){return g>=.8?"healthy":g>=.5?"degraded":g>0?"unhealthy":"unknown"}function qr(g){for(const o of ot){if(!o.diagnosticDomain)continue;const d=g[o.diagnosticDomain];if(!d)continue;const m=y.nodes[o.id];if(!m)continue;const i=typeof d.score=="number"?d.score:0;m.score=i,m.health=jr(i),m.metrics=d}}function Fr(g){const o=y.nodes.queue;if(o){const i=g.memory,P=g.summary;o.queueDepth=i.pending+i.leased+P.pending+P.leased,o.metrics={memory:i,summary:P}}const d=y.nodes.extraction;d&&(d.queueDepth=g.memory.pending);const m=y.nodes.summary;m&&(m.queueDepth=g.summary.pending)}async function Yt(){try{const g=await mr();if(!g)return!1;if(y.mode=g.mode,y.lastPoll=new Date().toISOString(),g.diagnostics&&qr(g.diagnostics),g.queues&&Fr(g.queues),g.workers)for(const[o,d]of Object.entries(g.workers)){const m=y.nodes[o];m&&d.running&&m.health==="unknown"&&(m.health="healthy",m.score=1)}if(g.errorSummary)for(const[o,d]of Object.entries(g.errorSummary)){const m=o==="extraction"||o==="decision"?"extraction":o==="embedding"||o==="mutation"?"database":o==="connector"?"sync":null;if(m){const i=y.nodes[m];i&&(i.errorCount=d)}}return!0}catch{return!1}}function Br(g=5e3){wt||(Yt(),wt=setInterval(()=>{Yt()},g))}function Gr(){wt&&(clearInterval(wt),wt=null)}function tr(g){y.selectedNodeId=g}var Hr=D(" <!>",1),zr=D("<!> <!>",1),Yr=D('<div class="flex justify-between px-2"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-bright)]"> </span></div>'),Xr=D('<div class="text-[var(--sig-text-muted)] mt-1"> </div> <!>',1),Vr=D('<div class="flex justify-between"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-bright)]"> </span></div>'),Ur=D('<section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]">Queue Details</h4> <div class="space-y-1 text-[11px] font-[family-name:var(--font-mono)]"></div></section>'),Qr=D('<section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-1 font-[family-name:var(--font-display)]">Last Activity</h4> <span class="text-[11px] text-[var(--sig-text)] font-[family-name:var(--font-mono)]"> </span></section>'),Wr=D('<div class="flex gap-2 py-1 px-1 text-[10px] font-[family-name:var(--font-mono)] hover:bg-[var(--sig-surface-raised)] rounded"><span class="text-[var(--sig-text-muted)] shrink-0 w-[52px]"> </span> <span> </span> <span class="text-[var(--sig-text)] truncate"> </span></div>'),Zr=D('<div class="text-[10px] text-[var(--sig-text-muted)] italic py-2">No recent activity</div>'),Kr=D('<!> <div class="mt-4 space-y-4 overflow-y-auto pr-2" style="max-height: calc(100vh - 140px);"><section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]">Metrics</h4> <div class="grid grid-cols-3 gap-2"><div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Score</div> <div class="text-[15px] text-[var(--sig-text-bright)] font-[family-name:var(--font-mono)]"> </div></div> <div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Queue</div> <div class="text-[15px] text-[var(--sig-text-bright)] font-[family-name:var(--font-mono)]"> </div></div> <div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Errors</div> <div> </div></div></div></section> <!> <!> <section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]"> </h4> <div class="space-y-px max-h-[300px] overflow-y-auto"><!> <!></div></section></div>',1);function Jr(g,o){rt(o,!0);const d=C(()=>y.selectedNodeId),m=C(()=>e(d)?Ht.get(e(d))??null:null),i=C(()=>e(d)?y.nodes[e(d)]??null:null),P=C(()=>e(d)!==null);function L($){$||tr(null)}function I($){try{return new Date($).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return $}}function E($){switch($){case"error":return"text-[#e06c75]";case"warn":return"text-[#e5c07b]";case"debug":return"text-[#6b6b76]";default:return"text-[var(--sig-text)]"}}const M=C(()=>{if(!e(i)?.metrics)return null;const $=e(i).metrics;return $.memory||$.summary||typeof $.depth=="number"?$:null});var R=Xe(),T=K(R);Oe(T,()=>br,($,A)=>{A($,{get open(){return e(P)},onOpenChange:L,children:(F,J)=>{var Y=Xe(),h=K(Y);Oe(h,()=>pr,(k,S)=>{S(k,{side:"right",class:"w-[380px] bg-[var(--sig-bg)] border-l border-[var(--sig-border)]",children:(N,ee)=>{var G=Xe(),j=K(G);{var c=w=>{var B=Kr(),q=K(B);Oe(q,()=>xr,(V,Q)=>{Q(V,{children:(oe,Pe)=>{var ye=zr(),ie=K(ye);Oe(ie,()=>hr,(le,he)=>{he(le,{class:"flex items-center gap-2 font-[family-name:var(--font-display)] text-[var(--sig-text-bright)]",children:($e,Ie)=>{_e();var ge=Hr(),se=K(ge),me=n(se);{let Ee=C(()=>e(i).health==="healthy"?"border-[#4a7a5e] text-[#4a7a5e]":e(i).health==="degraded"?"border-[#b8860b] text-[#b8860b]":e(i).health==="unhealthy"?"border-[#8a4a48] text-[#8a4a48]":"border-[var(--sig-border)] text-[var(--sig-text-muted)]");Dt(me,{variant:"outline",get class(){return`text-[9px] px-1.5 py-0 font-[family-name:var(--font-mono)]
1
+ import{e as Bt,p as rt,c as Xe,f as K,h as Oe,k as O,i as e,b as l,w as _e,t as n,x as ve,y as _,z as f,j as a,l as r,A as Ae,B as Be,K as yt,d as at,u as C,ae as Gt,m as D,D as v,af as ue,Q as Xt,v as x,O as _t,o as U,P as Kt,N as Mt,q as vr,s as ur,a9 as Ut,F as fr}from"./KKQFryJf.js";import{o as gr,aB as mr,$ as pr,a0 as xr,a1 as hr,a3 as br,a2 as _r,aC as yr,t as Ve,aD as wr,f as kr,n as Sr,E as Cr,B as tt,aE as Pr,aF as $r}from"./C918l4uN.js";import{P as Er}from"./DK3bAoxY.js";import{T as Tr}from"./CyB1_UBK.js";import{B as Dt}from"./BwZKr45t.js";import{S as Jt}from"./BTFgr4CE.js";import{P as Mr,a as Dr,b as Lr}from"./xty9zeSp.js";import{w as Tt,s as Qt}from"./Bc-tUO5p.js";const De={harness:"#4dabf7",daemon:"#ff922b",pipeline:"#da77f2",db:"#ffd43b",search:"#da77f2",files:"#20c997",configs:"#4dabf7",llm:"#fcc419"},Fe={harness:"AI Harness",daemon:"Signet Daemon",pipeline:"Pipeline Workers",db:"memories.db",search:"Hybrid Recall",files:"~/.agents/",configs:"Harness Configs",llm:"LLM Provider"},Or={harness:{x:20,y:20,w:240,h:120,label:Fe.harness,color:De.harness},daemon:{x:300,y:20,w:340,h:280,label:Fe.daemon,color:De.daemon},pipeline:{x:20,y:360,w:620,h:140,label:Fe.pipeline,color:De.pipeline},db:{x:680,y:160,w:200,h:200,label:Fe.db,color:De.db},search:{x:920,y:160,w:200,h:140,label:Fe.search,color:De.search},files:{x:680,y:400,w:200,h:100,label:Fe.files,color:De.files},configs:{x:920,y:400,w:200,h:100,label:Fe.configs,color:De.configs},llm:{x:680,y:540,w:200,h:80,label:Fe.llm,color:De.llm}},ot=[{id:"harness",label:"AI Client",group:"harness",x:40,y:55,w:200,h:50,logCategories:["hooks","session-tracker"],icon:"terminal",description:"Claude Code / OpenCode / OpenClaw — sends session hooks"},{id:"hooks",label:"Hook Handlers",group:"daemon",x:320,y:50,w:140,h:40,logCategories:["hooks"],icon:"webhook",description:"Session lifecycle hooks (start, submit, remember, recall, end)"},{id:"mutex",label:"Session Mutex",group:"daemon",x:320,y:110,w:140,h:40,logCategories:["session-tracker"],icon:"lock",description:"Plugin vs legacy runtime path enforcement"},{id:"queue",label:"Job Queues",group:"daemon",x:320,y:170,w:140,h:40,logCategories:["pipeline"],diagnosticDomain:"queue",icon:"layers",description:"memory_jobs + summary_jobs durable queues"},{id:"watcher",label:"File Watcher",group:"daemon",x:490,y:110,w:130,h:40,logCategories:["watcher"],icon:"eye",description:"Chokidar file change detection on ~/.agents/"},{id:"sync",label:"Harness Sync",group:"daemon",x:490,y:170,w:130,h:40,logCategories:["sync"],diagnosticDomain:"connector",icon:"refresh-cw",description:"Generate CLAUDE.md, AGENTS.md from identity files"},{id:"extraction",label:"Extraction",group:"pipeline",x:40,y:395,w:110,h:40,logCategories:["pipeline"],diagnosticDomain:"queue",icon:"cpu",description:"LLM extracts facts + entities (2s poll)"},{id:"summary",label:"Summary",group:"pipeline",x:165,y:395,w:100,h:40,logCategories:["summary-worker"],icon:"file-text",description:"Session-end transcript summarizer (5s poll)"},{id:"document",label:"Document",group:"pipeline",x:280,y:395,w:100,h:40,logCategories:["document-worker"],icon:"file-plus",description:"Chunk + embed documents (10s poll)"},{id:"retention",label:"Retention",group:"pipeline",x:395,y:395,w:100,h:40,logCategories:["retention"],diagnosticDomain:"mutation",icon:"trash-2",description:"Purge expired data (6h interval)"},{id:"maintenance",label:"Maintenance",group:"pipeline",x:510,y:395,w:110,h:40,logCategories:["maintenance"],icon:"wrench",description:"Self-repair + diagnostics (30min interval)"},{id:"database",label:"SQLite",group:"db",x:710,y:220,w:140,h:80,logCategories:["memory","embedding"],diagnosticDomain:"storage",icon:"database",description:"memories, embeddings, entities, relations, history"},{id:"search",label:"Hybrid Recall",group:"search",x:940,y:200,w:160,h:60,logCategories:["memory"],diagnosticDomain:"index",icon:"search",description:"BM25 + vector similarity + graph boost"},{id:"files",label:"Identity Files",group:"files",x:710,y:430,w:140,h:40,logCategories:["sync"],icon:"folder",description:"AGENTS.md, SOUL.md, IDENTITY.md, USER.md, MEMORY.md"},{id:"configs",label:"CLAUDE.md",group:"configs",x:950,y:430,w:140,h:40,logCategories:["harness"],icon:"file-code",description:"Generated harness config files"},{id:"llm",label:"LLM Provider",group:"llm",x:710,y:560,w:140,h:40,logCategories:["llm"],diagnosticDomain:"provider",icon:"brain",description:"llama.cpp qwen3.5:4b (or configured provider)"}],Ht=new Map(ot.map(g=>[g.id,g])),Ar=[{from:"harness",to:"hooks",label:"POST"},{from:"hooks",to:"mutex"},{from:"hooks",to:"queue",label:"enqueue"},{from:"queue",to:"extraction"},{from:"queue",to:"summary"},{from:"queue",to:"document"},{from:"extraction",to:"database",label:"write"},{from:"summary",to:"database"},{from:"document",to:"database"},{from:"retention",to:"database"},{from:"maintenance",to:"database"},{from:"extraction",to:"llm"},{from:"summary",to:"llm"},{from:"database",to:"search"},{from:"search",to:"harness",dashed:!0,label:"recall"},{from:"watcher",to:"sync"},{from:"files",to:"watcher"},{from:"sync",to:"configs"},{from:"files",to:"sync"},{from:"summary",to:"files",label:".md"},{from:"configs",to:"harness",dashed:!0,label:"next session"}];function Nr(){return{health:"unknown",score:0,lastActivity:null,pulseCount:0,queueDepth:0,processingRate:0,errorCount:0,recentLogs:[],metrics:{}}}const zt=new Map;for(const g of ot)for(const o of g.logCategories){const d=zt.get(o);d?d.push(g.id):zt.set(o,[g.id])}const Wt=20;function Ir(){const g={};for(const o of ot)g[o.id]=Nr();return g}const Zt=50,y=Bt({nodes:Ir(),mode:"unknown",connected:!1,lastPoll:null,selectedNodeId:null,feed:[]});let be=null;function er(){be&&(be.close(),be=null),be=new EventSource(`${gr}/api/logs/stream`),be.onopen=()=>{y.connected=!0},be.onmessage=g=>{try{const o=JSON.parse(g.data);if(o.type==="connected"){y.connected=!0;return}const d=[...y.feed,o];y.feed=d.length>Zt?d.slice(-Zt):d;const m=zt.get(o.category);if(!m)return;for(const i of m){const P=y.nodes[i];if(!P)continue;P.pulseCount+=1,P.lastActivity=o.timestamp;const L=[...P.recentLogs,o];P.recentLogs=L.length>Wt?L.slice(-Wt):L,o.level==="error"&&(P.errorCount+=1)}}catch{}},be.onerror=()=>{y.connected=!1,be?.close(),be=null,setTimeout(()=>{be||er()},3e3)}}function Rr(){y.connected=!1,be?.close(),be=null}let wt=null;function jr(g){return g>=.8?"healthy":g>=.5?"degraded":g>0?"unhealthy":"unknown"}function qr(g){for(const o of ot){if(!o.diagnosticDomain)continue;const d=g[o.diagnosticDomain];if(!d)continue;const m=y.nodes[o.id];if(!m)continue;const i=typeof d.score=="number"?d.score:0;m.score=i,m.health=jr(i),m.metrics=d}}function Fr(g){const o=y.nodes.queue;if(o){const i=g.memory,P=g.summary;o.queueDepth=i.pending+i.leased+P.pending+P.leased,o.metrics={memory:i,summary:P}}const d=y.nodes.extraction;d&&(d.queueDepth=g.memory.pending);const m=y.nodes.summary;m&&(m.queueDepth=g.summary.pending)}async function Yt(){try{const g=await mr();if(!g)return!1;if(y.mode=g.mode,y.lastPoll=new Date().toISOString(),g.diagnostics&&qr(g.diagnostics),g.queues&&Fr(g.queues),g.workers)for(const[o,d]of Object.entries(g.workers)){const m=y.nodes[o];m&&d.running&&m.health==="unknown"&&(m.health="healthy",m.score=1)}if(g.errorSummary)for(const[o,d]of Object.entries(g.errorSummary)){const m=o==="extraction"||o==="decision"?"extraction":o==="embedding"||o==="mutation"?"database":o==="connector"?"sync":null;if(m){const i=y.nodes[m];i&&(i.errorCount=d)}}return!0}catch{return!1}}function Br(g=5e3){wt||(Yt(),wt=setInterval(()=>{Yt()},g))}function Gr(){wt&&(clearInterval(wt),wt=null)}function tr(g){y.selectedNodeId=g}var Hr=D(" <!>",1),zr=D("<!> <!>",1),Yr=D('<div class="flex justify-between px-2"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-bright)]"> </span></div>'),Xr=D('<div class="text-[var(--sig-text-muted)] mt-1"> </div> <!>',1),Vr=D('<div class="flex justify-between"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-bright)]"> </span></div>'),Ur=D('<section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]">Queue Details</h4> <div class="space-y-1 text-[11px] font-[family-name:var(--font-mono)]"></div></section>'),Qr=D('<section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-1 font-[family-name:var(--font-display)]">Last Activity</h4> <span class="text-[11px] text-[var(--sig-text)] font-[family-name:var(--font-mono)]"> </span></section>'),Wr=D('<div class="flex gap-2 py-1 px-1 text-[10px] font-[family-name:var(--font-mono)] hover:bg-[var(--sig-surface-raised)] rounded"><span class="text-[var(--sig-text-muted)] shrink-0 w-[52px]"> </span> <span> </span> <span class="text-[var(--sig-text)] truncate"> </span></div>'),Zr=D('<div class="text-[10px] text-[var(--sig-text-muted)] italic py-2">No recent activity</div>'),Kr=D('<!> <div class="mt-4 space-y-4 overflow-y-auto pr-2" style="max-height: calc(100vh - 140px);"><section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]">Metrics</h4> <div class="grid grid-cols-3 gap-2"><div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Score</div> <div class="text-[15px] text-[var(--sig-text-bright)] font-[family-name:var(--font-mono)]"> </div></div> <div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Queue</div> <div class="text-[15px] text-[var(--sig-text-bright)] font-[family-name:var(--font-mono)]"> </div></div> <div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Errors</div> <div> </div></div></div></section> <!> <!> <section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]"> </h4> <div class="space-y-px max-h-[300px] overflow-y-auto"><!> <!></div></section></div>',1);function Jr(g,o){rt(o,!0);const d=C(()=>y.selectedNodeId),m=C(()=>e(d)?Ht.get(e(d))??null:null),i=C(()=>e(d)?y.nodes[e(d)]??null:null),P=C(()=>e(d)!==null);function L($){$||tr(null)}function I($){try{return new Date($).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return $}}function E($){switch($){case"error":return"text-[#e06c75]";case"warn":return"text-[#e5c07b]";case"debug":return"text-[#6b6b76]";default:return"text-[var(--sig-text)]"}}const M=C(()=>{if(!e(i)?.metrics)return null;const $=e(i).metrics;return $.memory||$.summary||typeof $.depth=="number"?$:null});var R=Xe(),T=K(R);Oe(T,()=>br,($,A)=>{A($,{get open(){return e(P)},onOpenChange:L,children:(F,J)=>{var Y=Xe(),h=K(Y);Oe(h,()=>pr,(k,S)=>{S(k,{side:"right",class:"w-[380px] bg-[var(--sig-bg)] border-l border-[var(--sig-border)]",children:(N,ee)=>{var G=Xe(),j=K(G);{var c=w=>{var B=Kr(),q=K(B);Oe(q,()=>xr,(V,Q)=>{Q(V,{children:(oe,Pe)=>{var ye=zr(),ie=K(ye);Oe(ie,()=>hr,(le,he)=>{he(le,{class:"flex items-center gap-2 font-[family-name:var(--font-display)] text-[var(--sig-text-bright)]",children:($e,Ie)=>{_e();var ge=Hr(),se=K(ge),me=n(se);{let Ee=C(()=>e(i).health==="healthy"?"border-[#4a7a5e] text-[#4a7a5e]":e(i).health==="degraded"?"border-[#b8860b] text-[#b8860b]":e(i).health==="unhealthy"?"border-[#8a4a48] text-[#8a4a48]":"border-[var(--sig-border)] text-[var(--sig-text-muted)]");Dt(me,{variant:"outline",get class(){return`text-[9px] px-1.5 py-0 font-[family-name:var(--font-mono)]
2
2
  ${e(Ee)??""}`},children:(Le,Re)=>{_e();var Qe=ve();_(()=>f(Qe,e(i).health)),l(Le,Qe)},$$slots:{default:!0}})}_(()=>f(se,`${e(m).label??""} `)),l($e,ge)},$$slots:{default:!0}})});var Ne=n(ie,2);{var fe=le=>{var he=Xe(),$e=K(he);Oe($e,()=>_r,(Ie,ge)=>{ge(Ie,{class:"text-[11px] text-[var(--sig-text-muted)] font-[family-name:var(--font-mono)]",children:(se,me)=>{_e();var Ee=ve();_(()=>f(Ee,e(m).description)),l(se,Ee)},$$slots:{default:!0}})}),l(le,he)};O(Ne,le=>{e(m).description&&le(fe)})}l(oe,ye)},$$slots:{default:!0}})});var te=n(q,2),b=a(te),p=n(a(b),2),X=a(p),re=n(a(X),2),Ge=a(re,!0);r(re),r(X);var ae=n(X,2),xe=n(a(ae),2),Ce=a(xe,!0);r(xe),r(ae);var st=n(ae,2),He=n(a(st),2);let Ue;var nt=a(He,!0);r(He),r(st),r(p),r(b);var it=n(b,2);{var kt=V=>{var Q=Ur(),oe=n(a(Q),2);Ae(oe,21,()=>Object.entries(e(M)),yt,(Pe,ye)=>{var ie=C(()=>Gt(e(ye),2));let Ne=()=>e(ie)[0],fe=()=>e(ie)[1];var le=Xe(),he=K(le);{var $e=ge=>{var se=Xr(),me=K(se),Ee=a(me,!0);r(me);var Le=n(me,2);Ae(Le,17,()=>Object.entries(fe()),yt,(Re,Qe)=>{var We=C(()=>Gt(e(Qe),2));let St=()=>e(We)[0],It=()=>e(We)[1];var Ze=Yr(),ft=a(Ze),Ke=a(ft,!0);r(ft);var gt=n(ft,2),Rt=a(gt,!0);r(gt),r(Ze),_(()=>{f(Ke,St()),f(Rt,It())}),l(Re,Ze)}),_(()=>f(Ee,Ne())),l(ge,se)},Ie=ge=>{var se=Vr(),me=a(se),Ee=a(me,!0);r(me);var Le=n(me,2),Re=a(Le,!0);r(Le),r(se),_(()=>{f(Ee,Ne()),f(Re,fe())}),l(ge,se)};O(he,ge=>{typeof fe()=="object"&&fe()!==null?ge($e):ge(Ie,-1)})}l(Pe,le)}),r(oe),r(Q),l(V,Q)};O(it,V=>{e(M)&&V(kt)})}var lt=n(it,2);{var Lt=V=>{var Q=Qr(),oe=n(a(Q),2),Pe=a(oe,!0);r(oe),r(Q),_(ye=>f(Pe,ye),[()=>I(e(i).lastActivity)]),l(V,Q)};O(lt,V=>{e(i).lastActivity&&V(Lt)})}var dt=n(lt,2),ct=a(dt),Ot=a(ct);r(ct);var vt=n(ct,2),ut=a(vt);Ae(ut,17,()=>e(i).recentLogs,yt,(V,Q)=>{var oe=Wr(),Pe=a(oe),ye=a(Pe,!0);r(Pe);var ie=n(Pe,2),Ne=a(ie,!0);r(ie);var fe=n(ie,2),le=a(fe,!0);r(fe),r(oe),_((he,$e)=>{f(ye,he),Be(ie,1,`${$e??""} shrink-0 w-[34px] uppercase`),f(Ne,e(Q).level),f(le,e(Q).message)},[()=>I(e(Q).timestamp),()=>E(e(Q).level)]),l(V,oe)});var At=n(ut,2);{var Nt=V=>{var Q=Zr();l(V,Q)};O(At,V=>{e(i).recentLogs.length===0&&V(Nt)})}r(vt),r(dt),r(te),_(V=>{f(Ge,V),f(Ce,e(i).queueDepth),Ue=Be(He,1,"text-[15px] font-[family-name:var(--font-mono)]",null,Ue,{"text-[#8a4a48]":e(i).errorCount>0,"text-[var(--sig-text-bright)]":e(i).errorCount===0}),f(nt,e(i).errorCount),f(Ot,`Recent Logs (${e(i).recentLogs.length??""})`)},[()=>e(i).score>0?(e(i).score*100).toFixed(0)+"%":"--"]),l(w,B)};O(j,w=>{e(m)&&e(i)&&w(c)})}l(N,G)},$$slots:{default:!0}})}),l(F,Y)},$$slots:{default:!0}})}),l(g,R),at()}var ea=ue('<path fill="none" stroke-width="4" opacity="0.15" class="edge-glow svelte-kl8ook"></path>'),ta=ue('<circle r="2" opacity="0.6" class="svelte-kl8ook"><animateMotion repeatCount="indefinite" begin="0.5s" class="svelte-kl8ook"></animateMotion></circle>'),ra=ue('<circle class="svelte-kl8ook"><animateMotion repeatCount="indefinite" class="svelte-kl8ook"></animateMotion></circle><!>',1),aa=ue('<text text-anchor="middle" font-size="9" font-family="var(--font-mono)" class="svelte-kl8ook"> </text>'),oa=ue('<g class="pipeline-edge svelte-kl8ook"><path fill="none"></path><!><!><!></g>');function sa(g,o){rt(o,!0);const d=C(()=>Ht.get(o.edge.from)),m=C(()=>Ht.get(o.edge.to)),i=C(()=>e(d)?De[e(d).group]:"#6b6b76"),P=C(()=>{if(!e(d)||!e(m))return"";const h=e(d).x+e(d).w/2,k=e(d).y+e(d).h/2,S=e(m).x+e(m).w/2,N=e(m).y+e(m).h/2,ee=(h+S)/2,G=(k+N)/2,j=Math.abs(S-h),c=Math.abs(N-k);return j>c?`M ${h} ${k} Q ${ee} ${k}, ${ee} ${G} Q ${ee} ${N}, ${S} ${N}`:`M ${h} ${k} Q ${h} ${G}, ${ee} ${G} Q ${S} ${G}, ${S} ${N}`}),L=C(()=>!e(d)||!e(m)?{x:0,y:0}:{x:(e(d).x+e(d).w/2+e(m).x+e(m).w/2)/2,y:(e(d).y+e(d).h/2+e(m).y+e(m).h/2)/2-8}),I=C(()=>o.active?"1s":"3s");var E=oa(),M=a(E);let R;var T=n(M);{var $=h=>{var k=ea();_(()=>{v(k,"d",e(P)),v(k,"stroke",e(i))}),l(h,k)};O(T,h=>{o.active&&!o.edge.dashed&&h($)})}var A=n(T);{var F=h=>{var k=ra(),S=K(k),N=a(S);r(S);var ee=n(S);{var G=j=>{var c=ta(),w=a(c);r(c),_(()=>{v(c,"fill",e(i)),v(w,"dur",e(I)),v(w,"path",e(P))}),l(j,c)};O(ee,j=>{o.active&&j(G)})}_(()=>{v(S,"r",o.active?3.5:2),v(S,"fill",o.active?e(i):"var(--sig-border)"),v(S,"opacity",o.active?1:.3),v(N,"dur",e(I)),v(N,"path",e(P))}),l(h,k)};O(A,h=>{o.edge.dashed||h(F)})}var J=n(A);{var Y=h=>{var k=aa(),S=a(k,!0);r(k),_(()=>{v(k,"x",e(L).x),v(k,"y",e(L).y),v(k,"fill",o.active?e(i):"var(--sig-text-muted)"),v(k,"opacity",o.active?.9:.45),f(S,o.edge.label)}),l(h,k)};O(J,h=>{o.edge.label&&h(Y)})}r(E),_(()=>{v(M,"d",e(P)),v(M,"stroke",o.active?e(i):"var(--sig-border)"),v(M,"stroke-width",o.active?1.5:.8),v(M,"stroke-dasharray",o.edge.dashed?"6 4":"none"),v(M,"opacity",o.active?.8:.25),R=Be(M,0,"svelte-kl8ook",null,R,{"edge-active":o.active})}),l(g,E),at()}var na=ue('<rect class="glow-bg svelte-1tib701" x="-6" y="-6" rx="10" ry="10" opacity="0.12"></rect>'),ia=ue('<rect class="pulse-ring svelte-1tib701" x="-4" y="-4" rx="10" ry="10" fill="none"></rect>'),la=ue('<rect class="flash-overlay svelte-1tib701" rx="6" ry="6"></rect>'),da=ue('<animate attributeName="opacity" values="1;0.4;1" dur="1.5s" repeatCount="indefinite" class="svelte-1tib701"></animate>'),ca=ue('<g class="svelte-1tib701"><rect x="-12" y="-7" width="24" height="14" rx="7" opacity="0.95" class="svelte-1tib701"></rect><text x="0" y="1" text-anchor="middle" dominant-baseline="middle" fill="#fff" font-size="9" font-weight="600" font-family="var(--font-mono)" class="svelte-1tib701"> </text></g>'),va=ue('<g transform="translate(8, -6)" class="svelte-1tib701"><rect x="-12" y="-7" width="24" height="14" rx="7" fill="#ef4444" opacity="0.95" class="svelte-1tib701"></rect><text x="0" y="1" text-anchor="middle" dominant-baseline="middle" fill="#fff" font-size="9" font-weight="600" font-family="var(--font-mono)" class="svelte-1tib701"> </text></g>'),ua=ue('<g style="cursor: pointer"><!><!><rect class="node-rect svelte-1tib701" rx="6" ry="6"></rect><!><circle cx="10" class="svelte-1tib701"><!></circle><text text-anchor="middle" dominant-baseline="middle" font-size="11" font-family="var(--font-mono)" class="svelte-1tib701"> </text><!><!></g>');function fa(g,o){rt(o,!0);const d=C(()=>De[o.def.group]),m={healthy:"#4ade80",degraded:"#fbbf24",unhealthy:"#f87171",unknown:"#6b6b76"},i=C(()=>m[o.nodeState.health]),P=C(()=>o.nodeState.health==="unknown"?`${e(d)}88`:e(i));let L=U(0),I=U(!1),E=U(!1),M=null;Xt(()=>{if(o.nodeState.pulseCount>e(L)){x(L,o.nodeState.pulseCount,!0),x(I,!0);const b=setTimeout(()=>{x(I,!1)},1200);return x(E,!0),M&&clearTimeout(M),M=setTimeout(()=>{x(E,!1)},3e3),()=>{clearTimeout(b),M&&clearTimeout(M)}}});function R(){o.onselectnode(o.def.id)}var T=ua();let $;var A=a(T);{var F=b=>{var p=na();_(()=>{v(p,"width",o.def.w+12),v(p,"height",o.def.h+12),v(p,"fill",e(d))}),l(b,p)};O(A,b=>{e(E)&&b(F)})}var J=n(A);{var Y=b=>{var p=ia();_(()=>{v(p,"width",o.def.w+8),v(p,"height",o.def.h+8),v(p,"stroke",e(d))}),l(b,p)};O(J,b=>{e(I)&&b(Y)})}var h=n(J),k=n(h);{var S=b=>{var p=la();_(()=>{v(p,"width",o.def.w),v(p,"height",o.def.h),v(p,"fill",e(d))}),l(b,p)};O(k,b=>{e(I)&&b(S)})}var N=n(k),ee=a(N);{var G=b=>{var p=da();l(b,p)};O(ee,b=>{e(E)&&b(G)})}r(N);var j=n(N),c=a(j,!0);r(j);var w=n(j);{var B=b=>{var p=ca(),X=a(p),re=n(X),Ge=a(re,!0);r(re),r(p),_(()=>{v(p,"transform",`translate(${o.def.w-8}, -6)`),v(X,"fill",e(d)),f(Ge,o.nodeState.queueDepth)}),l(b,p)};O(w,b=>{o.nodeState.queueDepth>0&&b(B)})}var q=n(w);{var te=b=>{var p=va(),X=n(a(p)),re=a(X,!0);r(X),r(p),_(()=>f(re,o.nodeState.errorCount)),l(b,p)};O(q,b=>{o.nodeState.errorCount>0&&b(te)})}r(T),_(()=>{$=Be(T,0,"pipeline-node svelte-1tib701",null,$,{"pipeline-node--selected":o.selected,"pipeline-node--active":e(E)}),v(T,"transform",`translate(${o.def.x??""}, ${o.def.y??""})`),v(h,"width",o.def.w),v(h,"height",o.def.h),v(h,"fill",e(E)?e(d)+"18":"var(--sig-surface-raised)"),v(h,"stroke",e(E)?e(d):e(P)),v(h,"stroke-width",o.selected?2.5:e(E)?1.5:1),v(N,"cy",o.def.h/2),v(N,"r",e(E)?4:3),v(N,"fill",e(E)?e(d):e(i)),v(N,"opacity",e(E)?1:.7),v(j,"x",o.def.w/2),v(j,"y",o.def.h/2+1),v(j,"fill",e(E)?e(d):"var(--sig-text-bright)"),v(j,"font-weight",e(E)?"600":"400"),f(c,o.def.label)}),_t("click",T,R),l(g,T),at()}Kt(["click"]);var ga=ue('<g><rect rx="8" ry="8" fill-opacity="0.06" stroke-opacity="0.25" stroke-width="1" stroke-dasharray="4 3"></rect><text font-size="9" font-family="var(--font-mono)" opacity="0.6" letter-spacing="0.08em"> </text></g>'),ma=ue('<svg viewBox="0 0 1160 650" preserveAspectRatio="xMidYMid meet" class="w-full h-full select-none" xmlns="http://www.w3.org/2000/svg" role="application" aria-label="Pipeline graph. Use mouse wheel to zoom, drag background to pan, double-click to reset."><defs><filter id="glow" x="-50%" y="-50%" width="200%" height="200%"><feGaussianBlur stdDeviation="3" result="blur"></feGaussianBlur><feMerge><feMergeNode in="blur"></feMergeNode><feMergeNode in="SourceGraphic"></feMergeNode></feMerge></filter><marker id="arrow" viewBox="0 0 10 10" refX="10" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="var(--sig-border-strong)"></path></marker></defs><g><!><!><!></g></svg>');function pa(g,o){rt(o,!0);const d=Object.entries(Or),m=.7,i=2.4,P=.12;let L=U(1),I=U(0),E=U(0),M=U(!1),R=U(0),T=U(0);function $(c){const w=y.nodes[c];return w?.lastActivity?Date.now()-new Date(w.lastActivity).getTime()<5e3:!1}function A(c){return Math.min(i,Math.max(m,c))}function F(){x(L,1),x(I,0),x(E,0)}function J(c){c.preventDefault();const w=c.currentTarget;if(!(w instanceof SVGSVGElement))return;const B=w.getBoundingClientRect(),q=c.clientX-B.left,te=c.clientY-B.top,b=c.deltaY<0?1:-1,p=A(e(L)+b*P);if(p===e(L))return;const X=(q-e(I))/e(L),re=(te-e(E))/e(L);x(L,p,!0),x(I,q-X*p),x(E,te-re*p)}function Y(c){if(c.button!==0||c.target!==c.currentTarget)return;const w=c.currentTarget;w instanceof SVGSVGElement&&w.setPointerCapture(c.pointerId),x(M,!0),x(R,c.clientX,!0),x(T,c.clientY,!0)}function h(c){if(!e(M))return;const w=c.clientX-e(R),B=c.clientY-e(T);x(R,c.clientX,!0),x(T,c.clientY,!0),x(I,e(I)+w),x(E,e(E)+B)}function k(c){if(!e(M))return;const w=c.currentTarget;w instanceof SVGSVGElement&&w.releasePointerCapture(c.pointerId),x(M,!1)}var S=ma(),N=n(a(S)),ee=a(N);Ae(ee,17,()=>d,yt,(c,w)=>{var B=C(()=>Gt(e(w),2));let q=()=>e(B)[1];var te=ga(),b=a(te),p=n(b),X=a(p,!0);r(p),r(te),_(re=>{v(b,"x",q().x),v(b,"y",q().y),v(b,"width",q().w),v(b,"height",q().h),v(b,"fill",q().color),v(b,"stroke",q().color),v(p,"x",q().x+8),v(p,"y",q().y+14),v(p,"fill",q().color),f(X,re)},[()=>q().label.toUpperCase()]),l(c,te)});var G=n(ee);Ae(G,17,()=>Ar,c=>c.from+"-"+c.to,(c,w)=>{{let B=C(()=>$(e(w).from));sa(c,{get edge(){return e(w)},get active(){return e(B)}})}});var j=n(G);Ae(j,17,()=>ot,c=>c.id,(c,w)=>{{let B=C(()=>y.selectedNodeId===e(w).id);fa(c,{get def(){return e(w)},get nodeState(){return y.nodes[e(w).id]},get selected(){return e(B)},get onselectnode(){return o.onselectnode}})}}),r(N),r(S),_(()=>v(N,"transform",`translate(${e(I)} ${e(E)}) scale(${e(L)})`)),Mt("wheel",S,J),_t("pointerdown",S,Y),_t("pointermove",S,h),_t("pointerup",S,k),Mt("pointercancel",S,k),Mt("pointerleave",S,k),_t("dblclick",S,F),l(g,S),at()}Kt(["pointerdown","pointermove","pointerup","dblclick"]);var xa=D('<div class="border-t border-[var(--sig-border)]"></div>'),ha=D('<!> <div class="flex items-center justify-between px-3 py-2 gap-3"><div class="flex items-center gap-3 min-w-0"><span class="font-mono text-[var(--font-size-sm)] text-[var(--sig-text)] truncate"> </span> <!> <span class="sig-meta text-[var(--sig-text-muted)] shrink-0"> </span></div> <div class="flex items-center gap-2 shrink-0"><span> </span> <!></div></div>',1),ba=D('<div class="mb-4"><div class="flex items-center gap-2 mb-2"><span class="sig-heading">ACTIVE SESSIONS</span> <!></div> <div class="rounded-md border border-[var(--sig-border)]" style="background: var(--sig-surface)"></div></div>');function _a(g,o){rt(o,!0);let d=U(Bt([])),m=U(!0),i=U(Bt(new Set));async function P(){try{const T=await yr();x(d,[...T.sessions],!0)}catch{Ve("Failed to load sessions","error")}finally{x(m,!1)}}async function L(T,$){if(!e(i).has(T.key)){x(i,new Set([...e(i),T.key]),!0);try{const A=await wr(T.key,$);A?x(d,e(d).map(F=>F.key===T.key?{...F,bypassed:A.bypassed}:F),!0):Ve("Failed to toggle bypass","error")}finally{const A=new Set(e(i));A.delete(T.key),x(i,A,!0)}}}function I(T){const $=Date.now()-new Date(T).getTime();if(!Number.isFinite($)||$<0)return"just now";const A=Math.floor($/1e3);if(A<60)return`${A}s ago`;const F=Math.floor(A/60);if(F<60)return`${F}m ago`;const J=Math.floor(F/60);return J<24?`${J}h ago`:`${Math.floor(J/24)}d ago`}Xt(()=>{P();const T=setInterval(P,3e4);return()=>clearInterval(T)});var E=Xe(),M=K(E);{var R=T=>{var $=ba(),A=a($),F=n(a(A),2);Dt(F,{variant:"outline",class:"sig-badge px-1.5 py-0",children:(Y,h)=>{_e();var k=ve();_(()=>f(k,e(d).length)),l(Y,k)},$$slots:{default:!0}}),r(A);var J=n(A,2);Ae(J,23,()=>e(d),Y=>Y.key,(Y,h,k)=>{var S=ha(),N=K(S);{var ee=ae=>{var xe=xa();l(ae,xe)};O(N,ae=>{e(k)>0&&ae(ee)})}var G=n(N,2),j=a(G),c=a(j),w=a(c,!0);r(c);var B=n(c,2);Dt(B,{variant:"outline",class:"sig-badge px-1.5 py-0 shrink-0",children:(ae,xe)=>{_e();var Ce=ve();_(()=>f(Ce,e(h).runtimePath)),l(ae,Ce)},$$slots:{default:!0}});var q=n(B,2),te=a(q,!0);r(q),r(j);var b=n(j,2),p=a(b);let X;var re=a(p,!0);r(p);var Ge=n(p,2);{let ae=C(()=>e(i).has(e(h).key)),xe=C(()=>`Bypass session ${e(h).key}`);Jt(Ge,{get checked(){return e(h).bypassed},get disabled(){return e(ae)},onCheckedChange:Ce=>L(e(h),Ce),get"aria-label"(){return e(xe)}})}r(b),r(G),_((ae,xe)=>{v(c,"title",e(h).key),f(w,ae),f(te,xe),X=Be(p,1,"sig-meta",null,X,{"text-[var(--sig-text-muted)]":!e(h).bypassed,"text-[var(--sig-accent)]":e(h).bypassed}),f(re,e(h).bypassed?"bypassed":"active")},[()=>e(h).key.slice(0,12),()=>I(e(h).claimedAt)]),l(Y,S)}),r(J),r($),l(T,$)};O(M,T=>{!e(m)&&e(d).length>0&&T(R)})}l(g,E),at()}var ya=D('<span class="sig-eyebrow text-[#4ade80]"> </span>'),wa=D('<span class="sig-meta"> </span>'),ka=D('<span class="sig-meta text-[var(--sig-text-muted)]">pipeline disabled in config</span>'),Sa=D('<div class="flex flex-col gap-1"><!> <!></div>'),Ca=D("<!> <!>",1),Pa=D('<div class="flex items-start justify-between gap-2 border-b border-[var(--sig-border)]/30 pb-[1px]"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text)] break-all text-right normal-case"> </span></div>'),$a=D('<div class="mt-1 pl-[56px] sig-micro"> </div>'),Ea=D('<div class="mt-1 pl-[56px] sig-meta text-[#f87171] whitespace-pre-wrap break-words"> </div>'),Ta=D('<details class="mt-1 pl-[56px]"><summary class="cursor-pointer sig-micro">Raw payload</summary> <pre class="mt-1 p-2 border border-[var(--sig-border)] bg-[var(--sig-surface)] sig-micro text-[var(--sig-text)] whitespace-pre-wrap break-words normal-case"> </pre></details>'),Ma=D('<div class="mt-1 pl-[56px] inline-flex items-center gap-2 sig-micro"><span class="px-1 py-[1px] border border-[var(--sig-border)]"> </span> <span> </span></div> <div class="sig-eyebrow text-[var(--sig-text)] mt-0.5 pl-[56px] whitespace-pre-wrap break-words normal-case tracking-normal"> </div> <div class="mt-1 pl-[56px] grid grid-cols-1 md:grid-cols-2 gap-x-3 gap-y-1 sig-micro"></div> <!> <!> <!>',1),Da=D('<details class="mt-0.5 pl-[56px] group"><summary class="list-none cursor-pointer sig-eyebrow text-[var(--sig-text)] normal-case tracking-normal line-clamp-2 break-words [&amp;::-webkit-details-marker]:hidden"> </summary> <div class="mt-1 sig-eyebrow text-[var(--sig-text)] normal-case tracking-normal whitespace-pre-wrap break-words"> </div></details>'),La=D('<div class="sig-eyebrow text-[var(--sig-text)] normal-case tracking-normal mt-0.5 pl-[56px] whitespace-pre-wrap break-words"> </div>'),Oa=D('<span class="sig-micro pl-[56px]"> </span>'),Aa=D("<!> <!>",1),Na=D('<div class="feed-entry px-2 py-1.5 rounded hover:bg-[var(--sig-surface-raised)] transition-colors svelte-1kgvdra"><div class="flex items-center gap-1.5"><span class="sig-meta shrink-0 w-[48px]"> </span> <span class="inline-block w-1.5 h-1.5 rounded-full shrink-0"></span> <span class="sig-meta shrink-0"> </span></div> <!></div>'),Ia=D('<div class="flex items-center justify-center h-full sig-label italic">Waiting for events...</div>'),Ra=D('<div class="flex flex-col flex-1 min-h-0 overflow-hidden"><!> <div class="flex items-center justify-between px-4 py-2 border-b border-[var(--sig-border)] shrink-0"><div class="flex items-center gap-3"><div class="flex items-center gap-1.5"><span></span> <span class="sig-eyebrow"> </span></div> <!> <!></div> <div class="flex items-center gap-3"><!> <!></div></div> <div class="px-4 pt-2"><!></div> <div class="flex flex-1 min-h-0 flex-col lg:flex-row"><div class="flex-1 min-w-0 min-h-[46vh] lg:min-h-0 p-4 overflow-auto"><!></div> <div><div class="px-3 py-2 border-b border-[var(--sig-border)] space-y-2"><div class="flex items-center justify-between gap-2"><span class="sig-heading text-[10px]">Live Feed</span> <div class="flex items-center gap-2"><span class="sig-meta"> </span> <span> </span></div></div> <div class="flex items-center justify-between gap-2 min-w-0"><label class="inline-flex items-center gap-1.5 sig-eyebrow text-[var(--sig-text)] cursor-pointer min-w-0"><!> <span>Auto-scroll</span></label> <div class="hidden lg:flex items-center gap-1.5 shrink-0"><!> <!></div> <div class="lg:hidden shrink-0"><!></div></div></div> <div class="flex-1 overflow-y-auto px-1 py-1"><!> <!></div></div></div></div> <!>',1);function Xa(g,o){rt(o,!0);function d(t){tr(y.selectedNodeId===t?null:t)}let m=U(null),i=U(null),P=U(!0),L=U(!1),I=U(!1);const E=24;let M=U(!0),R=U(!0);const T=C(()=>e(L)?"lg:w-[420px]":"lg:w-[320px]"),$=C(()=>e(M)?"Latest":"Oldest"),A=C(()=>e(L)?"Expanded":"Compact");function F(t="smooth"){e(i)&&e(i).scrollTo({top:e(i).scrollHeight,behavior:t})}function J(){return e(i)?e(i).scrollHeight-e(i).scrollTop-e(i).clientHeight<=E:!0}function Y(){if(!(!e(i)||(x(R,J(),!0),!(e(i).scrollHeight-e(i).clientHeight>E)))){if(e(R)){x(M,!0);return}e(i).scrollTop<=E&&x(M,!1)}}function h(t){e(i)&&(e(M)?(x(P,!1),x(R,!1),x(M,!1),e(i).scrollTo({top:0,behavior:"smooth"})):(x(P,!0),x(R,!0),x(M,!0),F("auto")),t?.currentTarget instanceof HTMLElement&&t.currentTarget.blur(),x(I,!1))}function k(t){x(P,t,!0),Tt.pipeline.autoScroll=t,Qt(),t&&(x(R,!0),x(M,!0),requestAnimationFrame(()=>{F("auto"),Y()}))}function S(t){x(L,!e(L)),Tt.pipeline.feedExpanded=e(L),Qt(),t?.currentTarget instanceof HTMLElement&&t.currentTarget.blur(),x(I,!1)}async function N(){if(e(m))return;if(y.mode==="disabled"){Ve("Pipeline is disabled in config","warning");return}const t=y.mode==="paused"?"resume":"pause";x(m,t,!0);try{const s=t==="pause"?await Pr():await $r();if(!s.success){Ve(s.error??`Failed to ${t} pipeline`,"error");return}s.mode&&(y.mode=s.mode,y.lastPoll=new Date().toISOString());const u=await Yt();if(s.changed===!1){Ve(t==="pause"?"Pipeline already paused":"Pipeline already running");return}if(!u){Ve(`${t==="pause"?"Pipeline paused":"Pipeline resumed"}, but live status refresh failed`,"warning");return}Ve(t==="pause"?"Pipeline paused":"Pipeline resumed","success")}finally{x(m,null)}}function ee(t){if(!t)return"";const s=Object.keys(t);if(s.length===0)return"";const u=s.slice(0,4).join(", ");return s.length>4?`${u} +${s.length-4}`:u}Xt(()=>{if(y.feed.length,Y(),e(P)&&e(i)){if(!e(R))return;requestAnimationFrame(()=>{F("auto"),x(R,!0),x(M,!0),Y()})}}),vr(()=>(er(),Br(),x(P,Tt.pipeline.autoScroll,!0),x(L,Tt.pipeline.feedExpanded,!0),()=>{Rr(),Gr()}));const G={"controlled-write":"border-[#4ade80] text-[#4ade80]",shadow:"border-[#fbbf24] text-[#fbbf24]",frozen:"border-[#94a3b8] text-[#94a3b8]",paused:"border-[#60a5fa] text-[#60a5fa]",disabled:"border-[#f87171] text-[#f87171]",unknown:"border-[var(--sig-border)] text-[var(--sig-text-muted)]"},j=C(()=>G[y.mode]??G.unknown),c=C(()=>ot.filter(t=>{const s=y.nodes[t.id];return s?.lastActivity?Date.now()-new Date(s.lastActivity).getTime()<5e3:!1}).length);function w(t){try{return new Date(t).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return t}}const B={error:"#f87171",warn:"#fbbf24",info:"#4ade80",debug:"#6b6b76"},q={hooks:"#4dabf7","session-tracker":"#4dabf7",pipeline:"#da77f2","summary-worker":"#da77f2","document-worker":"#da77f2",retention:"#da77f2",maintenance:"#da77f2",memory:"#ffd43b",embedding:"#ffd43b",sync:"#ff922b",watcher:"#ff922b",harness:"#4dabf7",llm:"#fcc419"},te=["jobId","memoryId","sessionKey","project","attempt","maxRetries","mode","provider","model","facts","entities","proposals","added","updated","deleted","deduped","skippedLowConfidence","blockedDestructive","runId","taskId","path","port","pid","error"];function b(t){const s=Date.now()-new Date(t).getTime();if(!Number.isFinite(s)||s<0)return"just now";const u=Math.floor(s/1e3);if(u<60)return`${u}s ago`;const H=Math.floor(u/60);if(H<60)return`${H}m ago`;const z=Math.floor(H/60);return z<24?`${z}h ago`:`${Math.floor(z/24)}d ago`}function p(t){return t.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/^./,s=>s.toUpperCase())}function X(t){return t===null?"null":t===void 0?"undefined":typeof t=="string"?t:typeof t=="number"||typeof t=="boolean"?String(t):Array.isArray(t)?`[${t.length} items]`:typeof t=="object"?"{object}":String(t)}function re(t){const s=t.message.toLowerCase(),u=t.category.replace(/-/g," ");if(s.includes("job failed")){const H=t.data?.attempt;return typeof H=="number"?`${u} failed (attempt ${H})`:`${u} failed`}return s.includes("completed")?`${u} completed`:s.includes("started")||s.includes("starting")?`${u} started`:s.includes("enqueued")?`${u} queued`:s.includes("failed")?`${u} warning`:s.includes("file changed")?"watcher detected file change":`${u} event`}function Ge(t){const s=[{label:"Level",value:t.level},{label:"Category",value:t.category}];t.duration!==void 0&&s.push({label:"Duration",value:`${t.duration} ms`});const u=t.data;if(!u)return s;const H=new Set;for(const z of te)z in u&&(s.push({label:p(z),value:X(u[z])}),H.add(z));for(const z of Object.keys(u).sort())H.has(z)||s.push({label:p(z),value:X(u[z])});return s}function ae(t){const s={};if(t.data&&(s.data=t.data),t.error&&(s.error=t.error),Object.keys(s).length===0)return"";const u=JSON.stringify(s,null,2);if(!u)return"";const H=3200;return u.length<=H?u:`${u.slice(0,H)}
3
3
  ...truncated`}var xe=Ra(),Ce=K(xe),st=a(Ce);Er(st,{title:"Pipeline",children:(t,s)=>{Tr(t,{group:"engine",get tabs(){return Cr},get activeTab(){return Sr.activeTab},onselect:(u,H)=>kr(H)})}});var He=n(st,2),Ue=a(He),nt=a(Ue),it=a(nt);let kt;var lt=n(it,2),Lt=a(lt,!0);r(lt),r(nt);var dt=n(nt,2);Dt(dt,{variant:"outline",get class(){return`sig-badge px-1.5 py-0 ${e(j)??""}`},children:(t,s)=>{_e();var u=ve();_(()=>f(u,y.mode)),l(t,u)},$$slots:{default:!0}});var ct=n(dt,2);{var Ot=t=>{var s=ya(),u=a(s);r(s),_(()=>f(u,`${e(c)??""} active`)),l(t,s)};O(ct,t=>{e(c)>0&&t(Ot)})}r(Ue);var vt=n(Ue,2),ut=a(vt);{var At=t=>{var s=wa(),u=a(s);r(s),_(H=>f(u,`polled ${H??""}`),[()=>w(y.lastPoll)]),l(t,s)};O(ut,t=>{y.lastPoll&&t(At)})}var Nt=n(ut,2);{var V=t=>{var s=ka();l(t,s)},Q=t=>{{let s=C(()=>e(m)!==null);tt(t,{variant:"outline",size:"sm",class:"sig-meta uppercase tracking-[0.08em] px-2.5 py-[5px] h-auto hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]",get disabled(){return e(s)},onclick:N,children:(u,H)=>{var z=Xe(),je=K(z);{var mt=W=>{var Z=ve("Pausing...");l(W,Z)},ze=W=>{var Z=ve("Resuming...");l(W,Z)},Te=W=>{var Z=ve("Resume");l(W,Z)},we=W=>{var Z=ve("Pause");l(W,Z)};O(je,W=>{e(m)==="pause"?W(mt):e(m)==="resume"?W(ze,1):y.mode==="paused"?W(Te,2):W(we,-1)})}l(u,z)},$$slots:{default:!0}})}};O(Nt,t=>{y.mode==="disabled"?t(V):t(Q,-1)})}r(vt),r(He);var oe=n(He,2),Pe=a(oe);_a(Pe,{}),r(oe);var ye=n(oe,2),ie=a(ye),Ne=a(ie);pa(Ne,{onselectnode:d}),r(ie);var fe=n(ie,2),le=a(fe),he=a(le),$e=n(a(he),2),Ie=a($e),ge=a(Ie);r(Ie);var se=n(Ie,2);let me;var Ee=a(se,!0);r(se),r($e),r(he);var Le=n(he,2),Re=a(Le),Qe=a(Re);Oe(Qe,()=>Jt,(t,s)=>{s(t,{get checked(){return e(P)},onCheckedChange:u=>k(u),class:"scale-90"})}),_e(2),r(Re);var We=n(Re,2),St=a(We);tt(St,{variant:"outline",size:"sm",class:"sig-meta uppercase tracking-[0.08em] px-2 py-[3px] h-auto hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]",onclick:t=>h(t),children:(t,s)=>{_e();var u=ve();_(()=>f(u,e($))),l(t,u)},$$slots:{default:!0}});var It=n(St,2);tt(It,{variant:"outline",size:"sm",class:"sig-meta uppercase tracking-[0.08em] px-2 py-[3px] h-auto hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]",onclick:t=>S(t),children:(t,s)=>{_e();var u=ve();_(()=>f(u,e(A))),l(t,u)},$$slots:{default:!0}}),r(We);var Ze=n(We,2),ft=a(Ze);Oe(ft,()=>Lr,(t,s)=>{s(t,{get open(){return e(I)},set open(u){x(I,u,!0)},children:(u,H)=>{var z=Ca(),je=K(z);{const ze=(Te,we)=>{tt(Te,ur(()=>we?.().props,{variant:"outline",size:"sm",class:"sig-meta uppercase tracking-[0.08em] px-2 py-[3px] h-auto hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]",children:(Z,pt)=>{_e();var Je=ve("Feed actions");l(Z,Je)},$$slots:{default:!0}}))};Oe(je,()=>Mr,(Te,we)=>{we(Te,{child:ze,$$slots:{child:!0}})})}var mt=n(je,2);Oe(mt,()=>Dr,(ze,Te)=>{Te(ze,{align:"end",side:"bottom",class:"w-[170px] p-1 bg-[var(--sig-surface-raised)] border-[var(--sig-border-strong)] rounded-lg",children:(we,W)=>{var Z=Sa(),pt=a(Z);tt(pt,{variant:"outline",size:"sm",class:"w-full justify-start sig-eyebrow tracking-[0.08em] px-2 py-1 h-auto hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]",onclick:ke=>h(ke),children:(ke,jt)=>{_e();var Ye=ve();_(()=>f(Ye,e($))),l(ke,Ye)},$$slots:{default:!0}});var Je=n(pt,2);tt(Je,{variant:"outline",size:"sm",class:"w-full justify-start sig-eyebrow tracking-[0.08em] px-2 py-1 h-auto hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]",onclick:ke=>S(ke),children:(ke,jt)=>{_e();var Ye=ve();_(()=>f(Ye,e(A))),l(ke,Ye)},$$slots:{default:!0}}),r(Z),l(we,Z)},$$slots:{default:!0}})}),l(u,z)},$$slots:{default:!0}})}),r(Ze),r(Le),r(le);var Ke=n(le,2),gt=a(Ke);Ae(gt,19,()=>y.feed,(t,s)=>t.timestamp+"-"+s,(t,s)=>{const u=C(()=>q[e(s).category]??"var(--sig-text-muted)"),H=C(()=>B[e(s).level]??"#6b6b76"),z=C(()=>e(s).message.length>72),je=C(()=>ee(e(s).data)),mt=C(()=>re(e(s))),ze=C(()=>Ge(e(s))),Te=C(()=>ae(e(s)));var we=Na(),W=a(we),Z=a(W),pt=a(Z,!0);r(Z);var Je=n(Z,2),ke=n(Je,2),jt=a(ke,!0);r(ke),r(W);var Ye=n(W,2);{var or=qe=>{var xt=Ma(),et=K(xt),ht=a(et),qt=a(ht,!0);r(ht);var Ct=n(ht,2),Ft=a(Ct,!0);r(Ct),r(et);var de=n(et,2),pe=a(de,!0);r(de);var Se=n(de,2);Ae(Se,21,()=>e(ze),yt,(ne,ce)=>{var Me=Pa(),bt=a(Me),dr=a(bt,!0);r(bt);var Vt=n(bt,2),cr=a(Vt,!0);r(Vt),r(Me),_(()=>{f(dr,e(ce).label),f(cr,e(ce).value)}),l(ne,Me)}),r(Se);var Pt=n(Se,2);{var $t=ne=>{var ce=$a(),Me=a(ce);r(ce),_(()=>f(Me,`Data keys: ${e(je)??""}`)),l(ne,ce)};O(Pt,ne=>{e(je)&&ne($t)})}var Et=n(Pt,2);{var nr=ne=>{var ce=Ea(),Me=a(ce);r(ce),_(()=>f(Me,`${e(s).error.name??""}: ${e(s).error.message??""}`)),l(ne,ce)};O(Et,ne=>{e(s).error&&ne(nr)})}var ir=n(Et,2);{var lr=ne=>{var ce=Ta(),Me=n(a(ce),2),bt=a(Me,!0);r(Me),r(ce),_(()=>f(bt,e(Te))),l(ne,ce)};O(ir,ne=>{e(Te)&&ne(lr)})}_(ne=>{f(qt,e(mt)),f(Ft,ne),f(pe,e(s).message)},[()=>b(e(s).timestamp)]),l(qe,xt)},sr=qe=>{var xt=Aa(),et=K(xt);{var ht=de=>{var pe=Da(),Se=a(pe),Pt=a(Se,!0);r(Se);var $t=n(Se,2),Et=a($t,!0);r($t),r(pe),_(()=>{f(Pt,e(s).message),f(Et,e(s).message)}),l(de,pe)},qt=de=>{var pe=La(),Se=a(pe,!0);r(pe),_(()=>f(Se,e(s).message)),l(de,pe)};O(et,de=>{e(z)?de(ht):de(qt,-1)})}var Ct=n(et,2);{var Ft=de=>{var pe=Oa(),Se=a(pe);r(pe),_(()=>f(Se,`${e(s).duration??""}ms`)),l(de,pe)};O(Ct,de=>{e(s).duration&&de(Ft)})}l(qe,xt)};O(Ye,qe=>{e(L)?qe(or):qe(sr,-1)})}r(we),_(qe=>{f(pt,qe),Ut(Je,`background-color: ${e(H)??""}`),Ut(ke,`color: ${e(u)??""}`),f(jt,e(s).category)},[()=>w(e(s).timestamp)]),l(t,we)});var Rt=n(gt,2);{var rr=t=>{var s=Ia();l(t,s)};O(Rt,t=>{y.feed.length===0&&t(rr)})}r(Ke),fr(Ke,t=>x(i,t),()=>e(i)),r(fe),r(ye),r(Ce);var ar=n(Ce,2);Jr(ar,{}),_(()=>{kt=Be(it,1,"inline-block w-2 h-2 rounded-full",null,kt,{"bg-[#4ade80]":y.connected,"bg-[#f87171]":!y.connected,"animate-pulse":y.connected}),f(Lt,y.connected?"LIVE":"DISCONNECTED"),Be(fe,1,`w-full shrink-0 border-t lg:border-t-0 border-[var(--sig-border)] flex flex-col bg-[var(--sig-bg)] min-h-[220px] max-h-[40vh] lg:max-h-none ${e(T)}`,"svelte-1kgvdra"),f(ge,`${y.feed.length??""} events`),me=Be(se,1,"sig-meta",null,me,{"text-[#4ade80]":e(P)&&e(R),"text-[var(--sig-text-muted)]":!e(P)||!e(R)}),f(Ee,e(P)&&e(R)?"following":"paused")}),Mt("scroll",Ke,Y),l(g,xe),at()}export{Xa as default};
@@ -1,4 +1,4 @@
1
- import{p as Ae,o as k,e as xe,q as Ge,j as n,t as d,k as O,i as r,l as a,b as i,d as Oe,v as g,f as be,w as H,x as m,y as h,z as _,A as he,B as $e,m as x,u as Y,h as oe,s as qe,D as Le}from"./KKQFryJf.js";import{f as Ve,n as Je,E as Ke,g as Qe,a as Ue,B as q,r as We,t as p,b as Xe,s as Ye,d as Ze}from"./C8rLAWAs.js";import{P as er}from"./DK3bAoxY.js";import{T as rr}from"./CyB1_UBK.js";import{B as sr}from"./B-lnGW9j.js";import{P as tr,a as ar,b as nr}from"./CtXE9xP_.js";var ir=x('<div class="flex flex-1 items-center justify-center sig-label">Loading connectors...</div>'),or=x(`<div class="flex items-center gap-3 px-3 py-2.5
1
+ import{p as Ae,o as k,e as xe,q as Ge,j as n,t as d,k as O,i as r,l as a,b as i,d as Oe,v as g,f as be,w as H,x as m,y as h,z as _,A as he,B as $e,m as x,u as Y,h as oe,s as qe,D as Le}from"./KKQFryJf.js";import{f as Ve,n as Je,E as Ke,g as Qe,a as Ue,B as q,r as We,t as p,b as Xe,s as Ye,d as Ze}from"./C918l4uN.js";import{P as er}from"./DK3bAoxY.js";import{T as rr}from"./CyB1_UBK.js";import{B as sr}from"./BwZKr45t.js";import{P as tr,a as ar,b as nr}from"./xty9zeSp.js";var ir=x('<div class="flex flex-1 items-center justify-center sig-label">Loading connectors...</div>'),or=x(`<div class="flex items-center gap-3 px-3 py-2.5
2
2
  border border-[var(--sig-border)]
3
3
  bg-[var(--sig-surface-raised)]"><span></span> <div class="flex flex-col gap-0.5 min-w-0 flex-1"><span class="text-[12px] font-medium text-[var(--sig-text-bright)]
4
4
  font-[family-name:var(--font-display)] tracking-[0.04em]"> </span> <span class="sig-eyebrow truncate"> </span></div> <div class="flex flex-col items-end gap-0.5 shrink-0"><span> </span> <span class="sig-eyebrow"><!></span></div></div>`),lr=x(`<div class="flex items-center justify-center py-8
@@ -1 +1 @@
1
- import{p as n,s as l,c,f as d,a as i,n as m,b as f,d as h,r as u}from"./KKQFryJf.js";import{I as $}from"./C8rLAWAs.js";function z(e,a){n(a,!0);let o=u(a,["$$slots","$$events","$$legacy"]);const t=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"}]];$(e,l({name:"zap"},()=>o,{get iconNode(){return t},children:(r,_)=>{var s=c(),p=d(s);i(p,()=>a.children??m),f(r,s)},$$slots:{default:!0}})),h()}export{z as Z};
1
+ import{p as n,s as l,c,f as d,a as i,n as m,b as f,d as h,r as u}from"./KKQFryJf.js";import{I as $}from"./C918l4uN.js";function z(e,a){n(a,!0);let o=u(a,["$$slots","$$events","$$legacy"]);const t=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"}]];$(e,l({name:"zap"},()=>o,{get iconNode(){return t},children:(r,_)=>{var s=c(),p=d(s);i(p,()=>a.children??m),f(r,s)},$$slots:{default:!0}})),h()}export{z as Z};
@@ -1 +1 @@
1
- import{p as _,g as o,c as w,f as k,k as I,b as s,d as E,E as c,F as f,J as F,I as v,m as g,r as J}from"./KKQFryJf.js";import{c as b}from"./C8rLAWAs.js";var P=g("<input/>"),S=g("<input/>");function z(p,i){_(i,!0);let a=o(i,"ref",15,null),d=o(i,"value",15),m=o(i,"files",15),n=o(i,"data-slot",3,"input"),l=J(i,["$$slots","$$events","$$legacy","ref","value","type","files","class","data-slot"]);var u=w(),x=k(u);{var y=t=>{var e=P();c(e,r=>({"data-slot":n(),class:r,type:"file",...l}),[()=>b("selection:bg-primary dark:bg-input/30 selection:text-primary-foreground border-input ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 pt-1.5 text-sm font-medium shadow-xs transition-[color,box-shadow] outline-none disabled:cursor-not-allowed disabled:opacity-50","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",i.class)],void 0,void 0,void 0,!0),f(e,r=>a(r),()=>a()),F(e,m),v(e,d),s(t,e)},h=t=>{var e=S();c(e,r=>({"data-slot":n(),class:r,type:i.type,...l}),[()=>b("border-input bg-background selection:bg-primary dark:bg-input/30 selection:text-primary-foreground ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-md border px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",i.class)],void 0,void 0,void 0,!0),f(e,r=>a(r),()=>a()),v(e,d),s(t,e)};I(x,t=>{i.type==="file"?t(y):t(h,-1)})}s(p,u),E()}export{z as I};
1
+ import{p as _,g as o,c as w,f as k,k as I,b as s,d as E,E as c,F as f,J as F,I as v,m as g,r as J}from"./KKQFryJf.js";import{c as b}from"./C918l4uN.js";var P=g("<input/>"),S=g("<input/>");function z(p,i){_(i,!0);let a=o(i,"ref",15,null),d=o(i,"value",15),m=o(i,"files",15),n=o(i,"data-slot",3,"input"),l=J(i,["$$slots","$$events","$$legacy","ref","value","type","files","class","data-slot"]);var u=w(),x=k(u);{var y=t=>{var e=P();c(e,r=>({"data-slot":n(),class:r,type:"file",...l}),[()=>b("selection:bg-primary dark:bg-input/30 selection:text-primary-foreground border-input ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 pt-1.5 text-sm font-medium shadow-xs transition-[color,box-shadow] outline-none disabled:cursor-not-allowed disabled:opacity-50","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",i.class)],void 0,void 0,void 0,!0),f(e,r=>a(r),()=>a()),F(e,m),v(e,d),s(t,e)},h=t=>{var e=S();c(e,r=>({"data-slot":n(),class:r,type:i.type,...l}),[()=>b("border-input bg-background selection:bg-primary dark:bg-input/30 selection:text-primary-foreground ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-md border px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",i.class)],void 0,void 0,void 0,!0),f(e,r=>a(r),()=>a()),v(e,d),s(t,e)};I(x,t=>{i.type==="file"?t(y):t(h,-1)})}s(p,u),E()}export{z as I};
@@ -1 +1 @@
1
- import{p as $,g as c,c as d,f as o,h as i,S as y,s as P,G as z,i as l,b as u,u as h,d as G,r as j}from"./KKQFryJf.js";import{c as f}from"./C8rLAWAs.js";function C(g,e){$(e,!0);let a=c(e,"ref",15,null),r=c(e,"checked",15,!1),p=j(e,["$$slots","$$events","$$legacy","ref","class","checked"]);var s=d(),b=o(s);{let k=h(()=>f("data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 peer inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",e.class));i(b,()=>y,(m,v)=>{v(m,P({"data-slot":"switch",get class(){return l(k)}},()=>p,{get ref(){return a()},set ref(t){a(t)},get checked(){return r()},set checked(t){r(t)},children:(t,q)=>{var n=d(),w=o(n);{let x=h(()=>f("bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0"));i(w,()=>z,(_,S)=>{S(_,{"data-slot":"switch-thumb",get class(){return l(x)}})})}u(t,n)},$$slots:{default:!0}}))})}u(g,s),G()}export{C as S};
1
+ import{p as $,g as c,c as d,f as o,h as i,S as y,s as P,G as z,i as l,b as u,u as h,d as G,r as j}from"./KKQFryJf.js";import{c as f}from"./C918l4uN.js";function C(g,e){$(e,!0);let a=c(e,"ref",15,null),r=c(e,"checked",15,!1),p=j(e,["$$slots","$$events","$$legacy","ref","class","checked"]);var s=d(),b=o(s);{let k=h(()=>f("data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 peer inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",e.class));i(b,()=>y,(m,v)=>{v(m,P({"data-slot":"switch",get class(){return l(k)}},()=>p,{get ref(){return a()},set ref(t){a(t)},get checked(){return r()},set checked(t){r(t)},children:(t,q)=>{var n=d(),w=o(n);{let x=h(()=>f("bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0"));i(w,()=>z,(_,S)=>{S(_,{"data-slot":"switch-thumb",get class(){return l(x)}})})}u(t,n)},$$slots:{default:!0}}))})}u(g,s),G()}export{C as S};