@sleep2agi/agent-network-dashboard 0.5.3-preview.212 → 0.5.3-preview.214
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/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +3 -3
- package/.next/diagnostics/route-bundle-stats.json +5 -5
- package/.next/fallback-build-manifest.json +3 -3
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +2 -2
- package/.next/server/app/_not-found.rsc +2 -2
- package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/admin/page_client-reference-manifest.js +1 -1
- package/.next/server/app/admin.html +2 -2
- package/.next/server/app/admin.rsc +2 -2
- package/.next/server/app/admin.segments/_full.segment.rsc +2 -2
- package/.next/server/app/admin.segments/_head.segment.rsc +1 -1
- package/.next/server/app/admin.segments/_index.segment.rsc +2 -2
- package/.next/server/app/admin.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/admin.segments/admin/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/admin.segments/admin.segment.rsc +1 -1
- package/.next/server/app/index.html +2 -2
- package/.next/server/app/index.rsc +3 -3
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/login.html +2 -2
- package/.next/server/app/login.rsc +3 -3
- package/.next/server/app/login.segments/_full.segment.rsc +3 -3
- package/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/.next/server/app/login.segments/_index.segment.rsc +2 -2
- package/.next/server/app/login.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/.next/server/app/logs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/logs.html +2 -2
- package/.next/server/app/logs.rsc +2 -2
- package/.next/server/app/logs.segments/_full.segment.rsc +2 -2
- package/.next/server/app/logs.segments/_head.segment.rsc +1 -1
- package/.next/server/app/logs.segments/_index.segment.rsc +2 -2
- package/.next/server/app/logs.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/logs.segments/logs/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/logs.segments/logs.segment.rsc +1 -1
- package/.next/server/app/messages/page_client-reference-manifest.js +1 -1
- package/.next/server/app/messages.html +2 -2
- package/.next/server/app/messages.rsc +2 -2
- package/.next/server/app/messages.segments/_full.segment.rsc +2 -2
- package/.next/server/app/messages.segments/_head.segment.rsc +1 -1
- package/.next/server/app/messages.segments/_index.segment.rsc +2 -2
- package/.next/server/app/messages.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/messages.segments/messages/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/messages.segments/messages.segment.rsc +1 -1
- package/.next/server/app/node/page_client-reference-manifest.js +1 -1
- package/.next/server/app/node.html +2 -2
- package/.next/server/app/node.rsc +2 -2
- package/.next/server/app/node.segments/_full.segment.rsc +2 -2
- package/.next/server/app/node.segments/_head.segment.rsc +1 -1
- package/.next/server/app/node.segments/_index.segment.rsc +2 -2
- package/.next/server/app/node.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/node.segments/node/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/node.segments/node.segment.rsc +1 -1
- package/.next/server/app/nodes/page_client-reference-manifest.js +1 -1
- package/.next/server/app/nodes.html +2 -2
- package/.next/server/app/nodes.rsc +2 -2
- package/.next/server/app/nodes.segments/_full.segment.rsc +2 -2
- package/.next/server/app/nodes.segments/_head.segment.rsc +1 -1
- package/.next/server/app/nodes.segments/_index.segment.rsc +2 -2
- package/.next/server/app/nodes.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/nodes.segments/nodes/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/nodes.segments/nodes.segment.rsc +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/server-logs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/server-logs.html +2 -2
- package/.next/server/app/server-logs.rsc +2 -2
- package/.next/server/app/server-logs.segments/_full.segment.rsc +2 -2
- package/.next/server/app/server-logs.segments/_head.segment.rsc +1 -1
- package/.next/server/app/server-logs.segments/_index.segment.rsc +2 -2
- package/.next/server/app/server-logs.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/server-logs.segments/server-logs/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/server-logs.segments/server-logs.segment.rsc +1 -1
- package/.next/server/app/settings/networks/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/networks.html +2 -2
- package/.next/server/app/settings/networks.rsc +2 -2
- package/.next/server/app/settings/networks.segments/_full.segment.rsc +2 -2
- package/.next/server/app/settings/networks.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings/networks.segments/_index.segment.rsc +2 -2
- package/.next/server/app/settings/networks.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/networks.segments/settings/networks/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/settings/networks.segments/settings/networks.segment.rsc +1 -1
- package/.next/server/app/settings/networks.segments/settings.segment.rsc +1 -1
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/tokens/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/tokens.html +2 -2
- package/.next/server/app/settings/tokens.rsc +2 -2
- package/.next/server/app/settings/tokens.segments/_full.segment.rsc +2 -2
- package/.next/server/app/settings/tokens.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/_index.segment.rsc +2 -2
- package/.next/server/app/settings/tokens.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/tokens.segments/settings/tokens/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/settings/tokens.segment.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/settings.segment.rsc +1 -1
- package/.next/server/app/settings.html +2 -2
- package/.next/server/app/settings.rsc +3 -3
- package/.next/server/app/settings.segments/_full.segment.rsc +3 -3
- package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings.segments/_index.segment.rsc +2 -2
- package/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings.segments/settings.segment.rsc +1 -1
- package/.next/server/app/tasks/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/tasks/page_client-reference-manifest.js +1 -1
- package/.next/server/app/tasks.html +2 -2
- package/.next/server/app/tasks.rsc +2 -2
- package/.next/server/app/tasks.segments/_full.segment.rsc +2 -2
- package/.next/server/app/tasks.segments/_head.segment.rsc +1 -1
- package/.next/server/app/tasks.segments/_index.segment.rsc +2 -2
- package/.next/server/app/tasks.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/tasks.segments/tasks/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/tasks.segments/tasks.segment.rsc +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0sv~g.o._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0sv~g.o._.js.map +1 -1
- package/.next/server/chunks/ssr/agent-network-dashboard_09kk21a._.js +2 -2
- package/.next/server/chunks/ssr/agent-network-dashboard_09kk21a._.js.map +1 -1
- package/.next/server/chunks/ssr/agent-network-dashboard_app_01jhlxz._.js +1 -1
- package/.next/server/chunks/ssr/agent-network-dashboard_app_01jhlxz._.js.map +1 -1
- package/.next/server/chunks/ssr/agent-network-dashboard_app_09d29my._.js +1 -1
- package/.next/server/chunks/ssr/agent-network-dashboard_app_09d29my._.js.map +1 -1
- package/.next/server/middleware-build-manifest.js +3 -3
- package/.next/server/pages/404.html +2 -2
- package/.next/server/pages/500.html +1 -1
- package/.next/static/chunks/{054p1--pwg60t.js → 01.zusi543vcw.js} +2 -2
- package/.next/static/chunks/{0zj09tmygg8m~.css → 015ne37-~usss.css} +1 -1
- package/.next/static/chunks/{0f8..rye42edf.js → 0jsvl5gxdwa~8.js} +1 -1
- package/.next/static/chunks/{0b0-7zxsflbws.js → 0l_pwq.exga6r.js} +1 -1
- package/.next/static/chunks/{0apd6mdrbto5c.js → 166bgo-m9uv~c.js} +1 -1
- package/.next/trace +2 -2
- package/.next/trace-build +1 -1
- package/app/components/TopoGraph.tsx +53 -2
- package/app/globals.css +35 -0
- package/package.json +1 -1
- package/scripts/topo-kicker-breath-test.mjs +100 -0
- package/scripts/topo-recent-panel-title-breath-test.mjs +91 -0
- /package/.next/static/{V7Zd44BGBcU5vm1jUUEX7 → RxCI2kR5jsmE7yMSsEgbS}/_buildManifest.js +0 -0
- /package/.next/static/{V7Zd44BGBcU5vm1jUUEX7 → RxCI2kR5jsmE7yMSsEgbS}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{V7Zd44BGBcU5vm1jUUEX7 → RxCI2kR5jsmE7yMSsEgbS}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,59276,e=>{"use strict";var s=e.i(12629),a=e.i(11449);let t=async e=>{let s=await fetch(e);if(401===s.status)throw window.location.assign("/login"),Error("unauthorized");return s.json()},r={refreshInterval:5e3,dedupingInterval:3e3};function n(e,s){if(!s)return e;let a=e.includes("?")?"&":"?";return`${e}${a}network_id=${encodeURIComponent(s)}`}e.s(["useAnetConfig",0,function(){let{data:e}=(0,s.default)("/api/anet/config",t,{refreshInterval:3e4});return{config:e||null}},"useHealth",0,function(){let{data:e,error:a}=(0,s.default)("/api/hub/health",t,r);return{health:e||null,error:a}},"useLicense",0,function(){let{data:e,error:a}=(0,s.default)("/api/hub/license",t,{refreshInterval:6e4});return{license:e?.ok?e:null,error:a}},"useMessages",0,function(e=100){let{networkId:l}=(0,a.useNetworkId)(),{data:i,error:c,isLoading:d}=(0,s.default)(n(`/api/hub/messages?limit=${e}`,l),t,r);return{messages:i?.messages||[],error:c,isLoading:d}},"useSessions",0,function(){let{networkId:e}=(0,a.useNetworkId)(),{data:l,error:i,isLoading:c}=(0,s.default)(n("/api/hub/status",e),t,r);return{sessions:l?.sessions||[],hint:l?._hint,error:i,isLoading:c}},"useStats",0,function(){let{networkId:e}=(0,a.useNetworkId)(),{data:l,error:i}=(0,s.default)(n("/api/hub/stats",e),t,r);return{stats:l?.ok?l:null,error:i}},"useTasks",0,function(e){let{networkId:l}=(0,a.useNetworkId)(),i=new URLSearchParams({limit:"100",...e}).toString(),{data:c,error:d,isLoading:o}=(0,s.default)(n(`/api/hub/tasks?${i}`,l),t,r);return{tasks:c?.tasks||[],count:c?.count??0,source:c?.source,error:d,isLoading:o}}])},70286,e=>{"use strict";e.s(["DASHBOARD_VERSION",0,"0.5.3-preview.211"],70286)},65610,e=>{"use strict";var s=e.i(22381),a=e.i(23910),t=e.i(56839),r=e.i(59276),n=e.i(70286);e.s(["default",0,function(){let{config:e}=(0,r.useAnetConfig)(),{health:l}=(0,r.useHealth)(),{license:i}=(0,r.useLicense)(),[c,d]=(0,a.useState)(""),[o,x]=(0,a.useState)(""),[m,h]=(0,a.useState)(""),[g,u]=(0,a.useState)(""),[p,N]=(0,a.useState)(""),b="flex flex-col gap-1 sm:flex-row sm:items-start sm:justify-between",j="break-all sm:max-w-[320px] sm:text-right";return(0,s.jsxs)("div",{className:"min-h-screen bg-[#0a0a1a] text-gray-100 p-4 sm:p-6 font-mono",children:[(0,s.jsx)("h1",{className:"text-2xl font-bold text-white mb-3 lg:ml-0 ml-10",children:"Settings"}),(0,s.jsx)("nav",{className:"mb-8 flex flex-wrap gap-1 text-xs",children:[{href:"#connection",label:"Connection"},{href:"#account",label:"Account"},{href:"#resources",label:"Resources"}].map(e=>(0,s.jsx)("a",{href:e.href,className:"rounded-md px-2.5 py-1 text-gray-500 hover:text-cyan-300 hover:bg-cyan-500/10 transition-colors",children:e.label},e.href))}),(0,s.jsxs)("div",{className:"max-w-2xl space-y-10",children:[(0,s.jsxs)("div",{id:"connection",className:"space-y-4 scroll-mt-6",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 px-1",children:[(0,s.jsx)("div",{className:"text-[11px] uppercase tracking-[0.14em] text-gray-400 font-semibold",children:"Connection"}),(0,s.jsx)("div",{className:"flex-1 h-px bg-[#2a2a4a]"})]}),(0,s.jsxs)("section",{className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300 mb-4",children:"CommHub Connection"}),(0,s.jsxs)("div",{className:"space-y-3 text-sm",children:[(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500 shrink-0",children:"Hub URL"}),(0,s.jsx)("span",{className:`text-cyan-300 ${j}`,children:e?.hub||"not configured"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Config Source"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:e?.source==="file"?"Local file (~/.anet/config.json)":e?.source==="runtime-env"?"Vercel env vars":"Missing"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Auth Token"}),(0,s.jsx)("span",{className:`${e?.tokenConfigured?"text-green-400":"text-red-400"} ${j}`,children:e?.tokenConfigured?`Configured (${e.tokenPreview})`:"Not configured"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Server Auth"}),(0,s.jsx)("span",{className:`${l?.auth==="enabled"?"text-green-400":"text-yellow-400"} sm:text-right`,children:l?.auth||"--"})]}),e?.error&&(0,s.jsx)("div",{className:"border-t border-[#2a2a4a] pt-3 text-xs text-gray-600",children:e.error})]})]}),(0,s.jsxs)("section",{className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300 mb-4",children:"Server Info"}),(0,s.jsxs)("div",{className:"space-y-3 text-sm",children:[(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Version"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:l?.version||"--"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Sessions"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:l?.sessions??"--"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsxs)("span",{className:"text-gray-500",children:["SSE streams ",(0,s.jsx)("span",{className:"text-gray-600",children:"· server"})]}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:l?.sse_connections??"--"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Uptime"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:l?.uptime?`${Math.floor(l.uptime/3600)}h ${Math.floor(l.uptime%3600/60)}m`:"--"})]})]})]}),(0,s.jsxs)("section",{className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300 mb-4",children:"Dashboard"}),(0,s.jsxs)("div",{className:"space-y-3 text-sm",children:[(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Version"}),(0,s.jsx)("span",{className:`text-gray-300 font-mono ${j}`,title:"From package.json @sleep2agi/agent-network-dashboard",children:n.DASHBOARD_VERSION})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Data Layer"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:"SWR (5s refresh, 3s dedup)"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Pages"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:"Overview, Tasks, Nodes, Messages, Networks, Audit, Server Logs, Admin, Settings"})]})]})]})]}),(0,s.jsxs)("div",{id:"account",className:"space-y-4 scroll-mt-6",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 px-1",children:[(0,s.jsx)("div",{className:"text-[11px] uppercase tracking-[0.14em] text-gray-400 font-semibold",children:"Account"}),(0,s.jsx)("div",{className:"flex-1 h-px bg-[#2a2a4a]"})]}),(0,s.jsxs)("section",{className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5",children:[(0,s.jsxs)("h2",{className:"text-sm font-semibold text-gray-300 mb-4 flex items-center gap-2",children:["License",i?.license&&(0,s.jsxs)("span",{className:`inline-flex items-center gap-1.5 text-[10px] font-medium px-2 py-0.5 rounded-full border ${"pro"===i.license.type?"text-green-300 bg-green-500/10 border-green-500/30":i.license.days_left<=7?"text-red-300 bg-red-500/10 border-red-500/30":"text-amber-300 bg-amber-500/10 border-amber-500/30"}`,children:[(0,s.jsx)("span",{"aria-hidden":!0,className:"w-1.5 h-1.5 rounded-full bg-current"}),i.license.type,i.license.days_left?` \xb7 ${i.license.days_left}d left`:""]})]}),i?.license?(0,s.jsxs)("div",{className:"space-y-3 text-sm",children:[i.license.days_left<=7&&(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-red-400 font-medium",children:"⚠ Expiring soon"}),(0,s.jsxs)("span",{className:"text-red-400",children:[i.license.days_left," days left"]})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Expires"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:i.license.expires_at})]}),i.limits&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Max Agents"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:i.limits.max_agents})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Max Networks"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:i.limits.max_networks})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Tasks/Day"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:i.limits.max_tasks_day})]})]}),(0,s.jsxs)("div",{className:"pt-3 border-t border-[#2a2a4a]",children:[(0,s.jsxs)("div",{className:"flex gap-2",children:[(0,s.jsx)("input",{type:"text",value:c,onChange:e=>d(e.target.value),placeholder:"anet-XXXX-XXXX-XXXX-XXXX",className:"flex-1 bg-[#0a0a15] border border-[#2a2a4a] rounded px-3 py-2 text-xs text-white placeholder-gray-600 focus:outline-none"}),(0,s.jsx)("button",{onClick:async()=>{if(!c.trim())return;let e=await fetch("/api/hub/license",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:c})}),s=await e.json();x(s.ok?`Activated: ${s.type}`:`Failed: ${s.error}`),s.ok&&d(""),setTimeout(()=>x(""),5e3)},className:"px-3 py-2 bg-cyan-600 hover:bg-cyan-500 text-white text-xs rounded transition-colors",children:"Activate"})]}),o&&(0,s.jsx)("div",{className:`mt-2 text-xs ${o.startsWith("Failed")?"text-red-400":"text-green-400"}`,children:o})]})]}):(0,s.jsx)("div",{className:"text-xs text-gray-600",children:"License info not available"})]}),(0,s.jsxs)("section",{className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300 mb-4",children:"Change Password"}),(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsx)("input",{type:"password",value:m,onChange:e=>h(e.target.value),placeholder:"Current password",className:"w-full bg-[#0a0a15] border border-[#2a2a4a] rounded-lg px-3 py-2 text-sm text-white placeholder-gray-600 focus:border-cyan-500/50 focus:outline-none"}),(0,s.jsx)("input",{type:"password",value:g,onChange:e=>u(e.target.value),placeholder:"New password",className:"w-full bg-[#0a0a15] border border-[#2a2a4a] rounded-lg px-3 py-2 text-sm text-white placeholder-gray-600 focus:border-cyan-500/50 focus:outline-none"}),(0,s.jsx)("button",{onClick:async()=>{if(!m||!g)return;let e=sessionStorage.getItem("anet_v3_auth");if(!e)return void N("Not logged in with V3 auth");let{token:s}=JSON.parse(e),a=await fetch("/api/hub/auth",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"change_password",token:s,current_password:m,new_password:g})}),t=await a.json();if(N(t.ok?"Password changed":`Failed: ${t.error}`),t.ok){if(t.token){let s=JSON.parse(e);sessionStorage.setItem("anet_v3_auth",JSON.stringify({...s,token:t.token}))}h(""),u("")}setTimeout(()=>N(""),5e3)},disabled:!m||!g,className:"px-4 py-2 bg-cyan-600 hover:bg-cyan-500 disabled:bg-gray-800 disabled:text-gray-600 text-white text-sm rounded-lg transition-colors",children:"Change Password"})]}),p&&(0,s.jsx)("div",{className:`mt-2 text-xs ${p.startsWith("Failed")?"text-red-400":"text-green-400"}`,children:p})]}),(0,s.jsxs)("section",{className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300 mb-4",children:"Sign out"}),(0,s.jsx)("p",{className:"text-xs text-gray-500 mb-3",children:"Signing out clears your dashboard session cookie. You'll return to the login page."}),(0,s.jsx)("button",{onClick:async()=>{await fetch("/api/auth/logout",{method:"POST"}).catch(()=>{}),window.location.assign("/login")},className:"px-4 py-2 bg-transparent hover:bg-[#1a1a2a] text-gray-300 text-sm rounded-lg border border-[#2a2a4a] hover:border-[#3a3a5a] transition-colors",children:"Sign out"})]})]}),(0,s.jsxs)("div",{id:"resources",className:"space-y-4 scroll-mt-6",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 px-1",children:[(0,s.jsx)("div",{className:"text-[11px] uppercase tracking-[0.14em] text-gray-400 font-semibold",children:"Resources"}),(0,s.jsx)("div",{className:"flex-1 h-px bg-[#2a2a4a]"})]}),(0,s.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[(0,s.jsxs)(t.default,{href:"/settings/tokens",className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5 hover:border-cyan-500/30 transition-colors",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300",children:"API Tokens"}),(0,s.jsx)("p",{className:"text-xs text-gray-500 mt-2",children:"Create and manage tokens for CLI access."}),(0,s.jsx)("span",{className:"text-xs text-cyan-400 mt-3 inline-block",children:"Manage →"})]}),(0,s.jsxs)(t.default,{href:"/settings/networks",className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5 hover:border-cyan-500/30 transition-colors",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300",children:"Networks"}),(0,s.jsx)("p",{className:"text-xs text-gray-500 mt-2",children:"Create, manage, and delete agent networks."}),(0,s.jsx)("span",{className:"text-xs text-cyan-400 mt-3 inline-block",children:"Manage →"})]})]})]})]})]})}])}]);
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,59276,e=>{"use strict";var s=e.i(12629),a=e.i(11449);let t=async e=>{let s=await fetch(e);if(401===s.status)throw window.location.assign("/login"),Error("unauthorized");return s.json()},r={refreshInterval:5e3,dedupingInterval:3e3};function n(e,s){if(!s)return e;let a=e.includes("?")?"&":"?";return`${e}${a}network_id=${encodeURIComponent(s)}`}e.s(["useAnetConfig",0,function(){let{data:e}=(0,s.default)("/api/anet/config",t,{refreshInterval:3e4});return{config:e||null}},"useHealth",0,function(){let{data:e,error:a}=(0,s.default)("/api/hub/health",t,r);return{health:e||null,error:a}},"useLicense",0,function(){let{data:e,error:a}=(0,s.default)("/api/hub/license",t,{refreshInterval:6e4});return{license:e?.ok?e:null,error:a}},"useMessages",0,function(e=100){let{networkId:l}=(0,a.useNetworkId)(),{data:i,error:c,isLoading:d}=(0,s.default)(n(`/api/hub/messages?limit=${e}`,l),t,r);return{messages:i?.messages||[],error:c,isLoading:d}},"useSessions",0,function(){let{networkId:e}=(0,a.useNetworkId)(),{data:l,error:i,isLoading:c}=(0,s.default)(n("/api/hub/status",e),t,r);return{sessions:l?.sessions||[],hint:l?._hint,error:i,isLoading:c}},"useStats",0,function(){let{networkId:e}=(0,a.useNetworkId)(),{data:l,error:i}=(0,s.default)(n("/api/hub/stats",e),t,r);return{stats:l?.ok?l:null,error:i}},"useTasks",0,function(e){let{networkId:l}=(0,a.useNetworkId)(),i=new URLSearchParams({limit:"100",...e}).toString(),{data:c,error:d,isLoading:o}=(0,s.default)(n(`/api/hub/tasks?${i}`,l),t,r);return{tasks:c?.tasks||[],count:c?.count??0,source:c?.source,error:d,isLoading:o}}])},70286,e=>{"use strict";e.s(["DASHBOARD_VERSION",0,"0.5.3-preview.213"],70286)},65610,e=>{"use strict";var s=e.i(22381),a=e.i(23910),t=e.i(56839),r=e.i(59276),n=e.i(70286);e.s(["default",0,function(){let{config:e}=(0,r.useAnetConfig)(),{health:l}=(0,r.useHealth)(),{license:i}=(0,r.useLicense)(),[c,d]=(0,a.useState)(""),[o,x]=(0,a.useState)(""),[m,h]=(0,a.useState)(""),[g,u]=(0,a.useState)(""),[p,N]=(0,a.useState)(""),b="flex flex-col gap-1 sm:flex-row sm:items-start sm:justify-between",j="break-all sm:max-w-[320px] sm:text-right";return(0,s.jsxs)("div",{className:"min-h-screen bg-[#0a0a1a] text-gray-100 p-4 sm:p-6 font-mono",children:[(0,s.jsx)("h1",{className:"text-2xl font-bold text-white mb-3 lg:ml-0 ml-10",children:"Settings"}),(0,s.jsx)("nav",{className:"mb-8 flex flex-wrap gap-1 text-xs",children:[{href:"#connection",label:"Connection"},{href:"#account",label:"Account"},{href:"#resources",label:"Resources"}].map(e=>(0,s.jsx)("a",{href:e.href,className:"rounded-md px-2.5 py-1 text-gray-500 hover:text-cyan-300 hover:bg-cyan-500/10 transition-colors",children:e.label},e.href))}),(0,s.jsxs)("div",{className:"max-w-2xl space-y-10",children:[(0,s.jsxs)("div",{id:"connection",className:"space-y-4 scroll-mt-6",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 px-1",children:[(0,s.jsx)("div",{className:"text-[11px] uppercase tracking-[0.14em] text-gray-400 font-semibold",children:"Connection"}),(0,s.jsx)("div",{className:"flex-1 h-px bg-[#2a2a4a]"})]}),(0,s.jsxs)("section",{className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300 mb-4",children:"CommHub Connection"}),(0,s.jsxs)("div",{className:"space-y-3 text-sm",children:[(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500 shrink-0",children:"Hub URL"}),(0,s.jsx)("span",{className:`text-cyan-300 ${j}`,children:e?.hub||"not configured"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Config Source"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:e?.source==="file"?"Local file (~/.anet/config.json)":e?.source==="runtime-env"?"Vercel env vars":"Missing"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Auth Token"}),(0,s.jsx)("span",{className:`${e?.tokenConfigured?"text-green-400":"text-red-400"} ${j}`,children:e?.tokenConfigured?`Configured (${e.tokenPreview})`:"Not configured"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Server Auth"}),(0,s.jsx)("span",{className:`${l?.auth==="enabled"?"text-green-400":"text-yellow-400"} sm:text-right`,children:l?.auth||"--"})]}),e?.error&&(0,s.jsx)("div",{className:"border-t border-[#2a2a4a] pt-3 text-xs text-gray-600",children:e.error})]})]}),(0,s.jsxs)("section",{className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300 mb-4",children:"Server Info"}),(0,s.jsxs)("div",{className:"space-y-3 text-sm",children:[(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Version"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:l?.version||"--"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Sessions"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:l?.sessions??"--"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsxs)("span",{className:"text-gray-500",children:["SSE streams ",(0,s.jsx)("span",{className:"text-gray-600",children:"· server"})]}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:l?.sse_connections??"--"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Uptime"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:l?.uptime?`${Math.floor(l.uptime/3600)}h ${Math.floor(l.uptime%3600/60)}m`:"--"})]})]})]}),(0,s.jsxs)("section",{className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300 mb-4",children:"Dashboard"}),(0,s.jsxs)("div",{className:"space-y-3 text-sm",children:[(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Version"}),(0,s.jsx)("span",{className:`text-gray-300 font-mono ${j}`,title:"From package.json @sleep2agi/agent-network-dashboard",children:n.DASHBOARD_VERSION})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Data Layer"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:"SWR (5s refresh, 3s dedup)"})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Pages"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:"Overview, Tasks, Nodes, Messages, Networks, Audit, Server Logs, Admin, Settings"})]})]})]})]}),(0,s.jsxs)("div",{id:"account",className:"space-y-4 scroll-mt-6",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 px-1",children:[(0,s.jsx)("div",{className:"text-[11px] uppercase tracking-[0.14em] text-gray-400 font-semibold",children:"Account"}),(0,s.jsx)("div",{className:"flex-1 h-px bg-[#2a2a4a]"})]}),(0,s.jsxs)("section",{className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5",children:[(0,s.jsxs)("h2",{className:"text-sm font-semibold text-gray-300 mb-4 flex items-center gap-2",children:["License",i?.license&&(0,s.jsxs)("span",{className:`inline-flex items-center gap-1.5 text-[10px] font-medium px-2 py-0.5 rounded-full border ${"pro"===i.license.type?"text-green-300 bg-green-500/10 border-green-500/30":i.license.days_left<=7?"text-red-300 bg-red-500/10 border-red-500/30":"text-amber-300 bg-amber-500/10 border-amber-500/30"}`,children:[(0,s.jsx)("span",{"aria-hidden":!0,className:"w-1.5 h-1.5 rounded-full bg-current"}),i.license.type,i.license.days_left?` \xb7 ${i.license.days_left}d left`:""]})]}),i?.license?(0,s.jsxs)("div",{className:"space-y-3 text-sm",children:[i.license.days_left<=7&&(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-red-400 font-medium",children:"⚠ Expiring soon"}),(0,s.jsxs)("span",{className:"text-red-400",children:[i.license.days_left," days left"]})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Expires"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:i.license.expires_at})]}),i.limits&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Max Agents"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:i.limits.max_agents})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Max Networks"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:i.limits.max_networks})]}),(0,s.jsxs)("div",{className:b,children:[(0,s.jsx)("span",{className:"text-gray-500",children:"Tasks/Day"}),(0,s.jsx)("span",{className:`text-gray-300 ${j}`,children:i.limits.max_tasks_day})]})]}),(0,s.jsxs)("div",{className:"pt-3 border-t border-[#2a2a4a]",children:[(0,s.jsxs)("div",{className:"flex gap-2",children:[(0,s.jsx)("input",{type:"text",value:c,onChange:e=>d(e.target.value),placeholder:"anet-XXXX-XXXX-XXXX-XXXX",className:"flex-1 bg-[#0a0a15] border border-[#2a2a4a] rounded px-3 py-2 text-xs text-white placeholder-gray-600 focus:outline-none"}),(0,s.jsx)("button",{onClick:async()=>{if(!c.trim())return;let e=await fetch("/api/hub/license",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:c})}),s=await e.json();x(s.ok?`Activated: ${s.type}`:`Failed: ${s.error}`),s.ok&&d(""),setTimeout(()=>x(""),5e3)},className:"px-3 py-2 bg-cyan-600 hover:bg-cyan-500 text-white text-xs rounded transition-colors",children:"Activate"})]}),o&&(0,s.jsx)("div",{className:`mt-2 text-xs ${o.startsWith("Failed")?"text-red-400":"text-green-400"}`,children:o})]})]}):(0,s.jsx)("div",{className:"text-xs text-gray-600",children:"License info not available"})]}),(0,s.jsxs)("section",{className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300 mb-4",children:"Change Password"}),(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsx)("input",{type:"password",value:m,onChange:e=>h(e.target.value),placeholder:"Current password",className:"w-full bg-[#0a0a15] border border-[#2a2a4a] rounded-lg px-3 py-2 text-sm text-white placeholder-gray-600 focus:border-cyan-500/50 focus:outline-none"}),(0,s.jsx)("input",{type:"password",value:g,onChange:e=>u(e.target.value),placeholder:"New password",className:"w-full bg-[#0a0a15] border border-[#2a2a4a] rounded-lg px-3 py-2 text-sm text-white placeholder-gray-600 focus:border-cyan-500/50 focus:outline-none"}),(0,s.jsx)("button",{onClick:async()=>{if(!m||!g)return;let e=sessionStorage.getItem("anet_v3_auth");if(!e)return void N("Not logged in with V3 auth");let{token:s}=JSON.parse(e),a=await fetch("/api/hub/auth",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"change_password",token:s,current_password:m,new_password:g})}),t=await a.json();if(N(t.ok?"Password changed":`Failed: ${t.error}`),t.ok){if(t.token){let s=JSON.parse(e);sessionStorage.setItem("anet_v3_auth",JSON.stringify({...s,token:t.token}))}h(""),u("")}setTimeout(()=>N(""),5e3)},disabled:!m||!g,className:"px-4 py-2 bg-cyan-600 hover:bg-cyan-500 disabled:bg-gray-800 disabled:text-gray-600 text-white text-sm rounded-lg transition-colors",children:"Change Password"})]}),p&&(0,s.jsx)("div",{className:`mt-2 text-xs ${p.startsWith("Failed")?"text-red-400":"text-green-400"}`,children:p})]}),(0,s.jsxs)("section",{className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300 mb-4",children:"Sign out"}),(0,s.jsx)("p",{className:"text-xs text-gray-500 mb-3",children:"Signing out clears your dashboard session cookie. You'll return to the login page."}),(0,s.jsx)("button",{onClick:async()=>{await fetch("/api/auth/logout",{method:"POST"}).catch(()=>{}),window.location.assign("/login")},className:"px-4 py-2 bg-transparent hover:bg-[#1a1a2a] text-gray-300 text-sm rounded-lg border border-[#2a2a4a] hover:border-[#3a3a5a] transition-colors",children:"Sign out"})]})]}),(0,s.jsxs)("div",{id:"resources",className:"space-y-4 scroll-mt-6",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 px-1",children:[(0,s.jsx)("div",{className:"text-[11px] uppercase tracking-[0.14em] text-gray-400 font-semibold",children:"Resources"}),(0,s.jsx)("div",{className:"flex-1 h-px bg-[#2a2a4a]"})]}),(0,s.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[(0,s.jsxs)(t.default,{href:"/settings/tokens",className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5 hover:border-cyan-500/30 transition-colors",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300",children:"API Tokens"}),(0,s.jsx)("p",{className:"text-xs text-gray-500 mt-2",children:"Create and manage tokens for CLI access."}),(0,s.jsx)("span",{className:"text-xs text-cyan-400 mt-3 inline-block",children:"Manage →"})]}),(0,s.jsxs)(t.default,{href:"/settings/networks",className:"bg-[#111128] border border-[#2a2a4a] rounded-xl p-5 hover:border-cyan-500/30 transition-colors",children:[(0,s.jsx)("h2",{className:"text-sm font-semibold text-gray-300",children:"Networks"}),(0,s.jsx)("p",{className:"text-xs text-gray-500 mt-2",children:"Create, manage, and delete agent networks."}),(0,s.jsx)("span",{className:"text-xs text-cyan-400 mt-3 inline-block",children:"Manage →"})]})]})]})]})]})}])}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,98025,e=>{"use strict";e.s(["SESSION_STATUS_CHIP_CLASS",0,{working:"bg-green-500/10 text-green-300 border-green-500/20",idle:"bg-blue-500/10 text-blue-300 border-blue-500/20",blocked:"bg-yellow-500/10 text-yellow-300 border-yellow-500/20",error:"bg-red-500/10 text-red-300 border-red-500/20",offline:"bg-gray-500/10 text-gray-500 border-gray-500/20"},"SESSION_STATUS_TEXT_CLASS",0,{working:"text-green-400",idle:"text-blue-400",blocked:"text-yellow-400",error:"text-red-400",offline:"text-gray-500"},"STATUS_BAR_CLASS",0,{created:"bg-gray-500",delivered:"bg-blue-500",acked:"bg-cyan-500",running:"bg-green-500",replied:"bg-purple-500",closed:"bg-gray-600",failed:"bg-red-500",cancelled:"bg-yellow-500",expired:"bg-orange-500"},"STATUS_CHIP_CLASS",0,{created:"bg-gray-500/10 text-gray-400 border-gray-500/20",delivered:"bg-blue-500/10 text-blue-300 border-blue-500/20",acked:"bg-cyan-500/10 text-cyan-300 border-cyan-500/20",running:"bg-green-500/10 text-green-300 border-green-500/20",replied:"bg-purple-500/10 text-purple-300 border-purple-500/20",closed:"bg-gray-500/10 text-gray-500 border-gray-500/20",failed:"bg-red-500/10 text-red-300 border-red-500/20",cancelled:"bg-yellow-500/10 text-yellow-300 border-yellow-500/20",expired:"bg-orange-500/10 text-orange-300 border-orange-500/20"},"STATUS_DOT_HEX",0,{created:"#9ca3af",delivered:"#60a5fa",acked:"#22d3ee",running:"#4ade80",replied:"#a78bfa",closed:"#6b7280",failed:"#f87171",cancelled:"#facc15",expired:"#fb923c"},"TASK_STATUSES",0,["created","delivered","acked","running","replied","closed","failed","cancelled","expired"]])},3479,59746,e=>{"use strict";function t(e){if(!e)return null;let t=Date.parse(e.includes("T")?e:e.replace(" ","T")+"Z");return Number.isFinite(t)?t:null}function r(e){let r=t(e);if(null===r)return null;let s=Math.floor((Date.now()-r)/1e3);return s<0?"just now":s<60?`${s}s ago`:s<3600?`${Math.floor(s/60)}m ago`:s<86400?`${Math.floor(s/3600)}h ago`:`${Math.floor(s/86400)}d ago`}e.s(["parseHubTime",0,t,"relativeAgo",0,r],59746),e.s(["formatUptime",0,function(e){let t=Math.floor(e/3600),r=Math.floor(e%3600/60);return t>0?`${t}h ${r}m`:`${r}m`},"previewContent",0,function(e){return e&&e.replace(/!\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/\[([^\]]+)\]\([^)]*\)/g,"$1").replace(/`([^`]+)`/g,"$1").replace(/\s+/g," ").trim()||"--"},"timeAgo",0,function(e){return r(e)??"--"}],3479)},46228,e=>{"use strict";var t=e.i(22381);let r=[180,200,220,270,300,330,30,90];function s(e){let t=0;for(let r=0;r<e.length;r++)t=31*t+e.charCodeAt(r)>>>0;let s=r[t%r.length];return{bg:`hsl(${s} 55% 22%)`,ring:`hsl(${s} 60% 45%)`,text:`hsl(${s} 80% 78%)`}}function n(e){return e?(e.trim().match(/[\p{L}\p{N}]/u)?.[0]||e.trim()[0]||"·").toUpperCase():"·"}e.s(["AliasAvatar",0,function({alias:e,size:r=28,className:i=""}){let a=s(e),l=Math.max(9,Math.round(.42*r));return(0,t.jsx)("span",{className:`anet-alias-avatar inline-flex items-center justify-center rounded-full border shrink-0 font-semibold ${i}`,style:{width:r,height:r,fontSize:l,backgroundColor:a.bg,borderColor:a.ring,color:a.text},title:e,"aria-hidden":!0,children:n(e)})},"aliasAvatarColors",0,s,"aliasInitial",0,n])},76161,e=>{"use strict";var t=e.i(22381),r=e.i(23910),s=e.i(56839);let n={nodes:{title:"No agents in this network",sub:"Agent sessions will appear here once they connect to the CommHub."},tasks:{title:"No tasks yet",sub:"Tasks will appear here when agents send them via CommHub."},messages:{title:"No messages",sub:"Messages between agents will appear here."},logs:{title:"No audit logs",sub:"Events will appear here when users register, login, or perform actions."},tokens:{title:"No API tokens",sub:"Create one to authenticate CLI tools and external integrations."},networks:{title:"No networks found",sub:"Create one or sign in with V3 auth to see your networks."},generic:{title:"Nothing here yet",sub:"Data will appear here once available."}};function i({variant:e,size:r}){let s={width:r,height:r},n={fill:"none",stroke:"currentColor",strokeWidth:1.25,strokeLinecap:"round",strokeLinejoin:"round"};switch(e){case"nodes":return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("circle",{cx:"32",cy:"14",r:"4"}),(0,t.jsx)("circle",{cx:"14",cy:"44",r:"4"}),(0,t.jsx)("circle",{cx:"50",cy:"44",r:"4"}),(0,t.jsx)("line",{x1:"32",y1:"18",x2:"14",y2:"40",strokeDasharray:"3 3",opacity:"0.6"}),(0,t.jsx)("line",{x1:"32",y1:"18",x2:"50",y2:"40",strokeDasharray:"3 3",opacity:"0.6"}),(0,t.jsx)("line",{x1:"18",y1:"44",x2:"46",y2:"44",strokeDasharray:"3 3",opacity:"0.6"})]})});case"tasks":return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("rect",{x:"14",y:"14",width:"36",height:"6",rx:"1.5"}),(0,t.jsx)("rect",{x:"14",y:"26",width:"36",height:"6",rx:"1.5",opacity:"0.6"}),(0,t.jsx)("rect",{x:"14",y:"38",width:"36",height:"6",rx:"1.5",opacity:"0.35"})]})});case"messages":return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("path",{d:"M14 18 h36 a3 3 0 0 1 3 3 v18 a3 3 0 0 1 -3 3 h-18 l-8 6 v-6 h-10 a3 3 0 0 1 -3 -3 v-18 a3 3 0 0 1 3 -3 z"}),(0,t.jsx)("line",{x1:"22",y1:"28",x2:"42",y2:"28",opacity:"0.5"}),(0,t.jsx)("line",{x1:"22",y1:"34",x2:"36",y2:"34",opacity:"0.5"})]})});case"logs":return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("path",{d:"M18 12 h22 l8 8 v32 a2 2 0 0 1 -2 2 h-28 a2 2 0 0 1 -2 -2 v-38 a2 2 0 0 1 2 -2 z"}),(0,t.jsx)("path",{d:"M40 12 v8 h8",opacity:"0.6"}),(0,t.jsx)("line",{x1:"24",y1:"32",x2:"40",y2:"32",opacity:"0.55"}),(0,t.jsx)("line",{x1:"24",y1:"38",x2:"40",y2:"38",opacity:"0.4"}),(0,t.jsx)("line",{x1:"24",y1:"44",x2:"34",y2:"44",opacity:"0.25"})]})});case"tokens":return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("circle",{cx:"22",cy:"32",r:"8"}),(0,t.jsx)("line",{x1:"30",y1:"32",x2:"54",y2:"32"}),(0,t.jsx)("line",{x1:"44",y1:"32",x2:"44",y2:"38"}),(0,t.jsx)("line",{x1:"50",y1:"32",x2:"50",y2:"40"})]})});case"networks":return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("circle",{cx:"32",cy:"32",r:"18"}),(0,t.jsx)("ellipse",{cx:"32",cy:"32",rx:"18",ry:"9",opacity:"0.55"}),(0,t.jsx)("line",{x1:"14",y1:"32",x2:"50",y2:"32",opacity:"0.55"}),(0,t.jsx)("line",{x1:"32",y1:"14",x2:"32",y2:"50",opacity:"0.55"})]})});default:return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("circle",{cx:"32",cy:"32",r:"14",strokeDasharray:"3 3",opacity:"0.6"}),(0,t.jsx)("circle",{cx:"32",cy:"32",r:"3"})]})})}}function a({variant:e="generic",title:r,sub:l,cta:o,compact:c=!1}){let d=n[e],x=r??d.title,h=l??d.sub;return(0,t.jsxs)("div",{className:`text-center ${c?"py-8":"py-16"} px-4`,role:"status",children:[(0,t.jsx)("div",{className:"anet-empty-glyph inline-flex items-center justify-center mb-4 text-gray-500","aria-hidden":!0,children:(0,t.jsx)(i,{variant:e,size:c?40:56})}),(0,t.jsx)("h3",{className:`font-medium text-gray-300 ${c?"text-sm":"text-base"}`,children:x}),h&&(0,t.jsx)("p",{className:`text-gray-500 ${c?"text-xs mt-1.5":"text-sm mt-2"} max-w-md mx-auto leading-relaxed`,children:h}),o&&(0,t.jsx)("div",{className:"mt-4",children:o.href?(0,t.jsxs)(s.default,{href:o.href,className:"inline-flex items-center gap-1.5 text-sm font-medium text-cyan-400 hover:text-cyan-300",children:[o.label,(0,t.jsx)("span",{"aria-hidden":!0,children:"→"})]}):(0,t.jsxs)("button",{onClick:o.onClick,className:"inline-flex items-center gap-1.5 text-sm font-medium text-cyan-400 hover:text-cyan-300",children:[o.label,(0,t.jsx)("span",{"aria-hidden":!0,children:"→"})]})})]})}function l({children:e}){return(0,t.jsx)("div",{className:"max-w-2xl mx-auto rounded-xl border border-[#2a2a4a] bg-[#111128] shadow-lg shadow-black/20",children:e})}function o({cmd:e}){let[s,n]=(0,r.useState)(!1),i=async()=>{try{await navigator.clipboard.writeText(e),n(!0),setTimeout(()=>n(!1),1800)}catch{}};return(0,t.jsxs)("div",{className:"anet-empty-cmd flex items-center gap-2 bg-[#0a0a15] border border-[#2a2a4a] rounded-lg pl-4 pr-1.5 py-1.5 text-xs sm:text-sm",children:[(0,t.jsx)("code",{className:"text-cyan-300 font-mono select-all",children:e}),(0,t.jsx)("button",{type:"button",onClick:i,"aria-label":s?"Copied":"Copy command",className:"shrink-0 rounded-md px-2 py-1.5 text-[11px] text-gray-500 hover:text-gray-200 hover:bg-[#1a1a2a] transition-colors",children:s?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-green-400",children:[(0,t.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("path",{d:"M20 6 9 17l-5-5"})}),"Copied"]}):(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"}),(0,t.jsx)("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"})]}),"Copy"]})})]})}e.s(["EmptyState",0,a,"NodesEmptyState",0,function({hint:e,taskHistoryCount:r=0}){return e?.global_count?(0,t.jsx)(l,{children:(0,t.jsx)(a,{variant:"nodes",title:"No agents in this network",sub:`Server has ${e.global_count} nodes globally, but none are registered to the current network. Switch network or contact admin.`})}):r>0?(0,t.jsx)(l,{children:(0,t.jsx)(a,{variant:"nodes",title:"No agents online",sub:`Every agent in this network is currently offline. ${r.toLocaleString()} task${1===r?"":"s"} in history — they may have finished their work or disconnected.`,cta:{label:"View task history",href:"/tasks"}})}):(0,t.jsx)(l,{children:(0,t.jsxs)("div",{className:"text-center py-16 px-4",role:"status",children:[(0,t.jsx)("div",{className:"anet-empty-glyph inline-flex items-center justify-center mb-4 text-gray-500","aria-hidden":!0,children:(0,t.jsx)("svg",{viewBox:"0 0 64 64",width:56,height:56,children:(0,t.jsxs)("g",{stroke:"currentColor",strokeWidth:"1.5",fill:"none",children:[(0,t.jsx)("rect",{x:"10",y:"20",width:"44",height:"28",rx:"2"}),(0,t.jsx)("rect",{x:"20",y:"32",width:"6",height:"8",opacity:"0.5"}),(0,t.jsx)("rect",{x:"32",y:"32",width:"6",height:"8",opacity:"0.5"}),(0,t.jsx)("rect",{x:"44",y:"32",width:"4",height:"8",opacity:"0.5"}),(0,t.jsx)("line",{x1:"10",y1:"26",x2:"54",y2:"26",opacity:"0.4"}),(0,t.jsx)("circle",{cx:"14",cy:"23",r:"0.8",fill:"currentColor"})]})})}),(0,t.jsx)("h3",{className:"font-medium text-gray-300 text-base",children:"Spin up your first agent"}),(0,t.jsx)("p",{className:"text-gray-500 text-sm mt-2 max-w-md mx-auto leading-relaxed",children:"Run this in a fresh terminal to register an agent with this CommHub:"}),(0,t.jsx)("div",{className:"mt-4 inline-block",children:(0,t.jsx)(o,{cmd:"npx --yes @sleep2agi/agent-network init"})}),(0,t.jsx)("div",{className:"mt-3",children:(0,t.jsxs)("a",{href:"https://anet.sh",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1.5 text-xs font-medium text-gray-500 hover:text-cyan-300",children:["Full quickstart guide",(0,t.jsx)("span",{"aria-hidden":!0,children:"→"})]})})]})})}])},59276,e=>{"use strict";var t=e.i(12629),r=e.i(11449);let s=async e=>{let t=await fetch(e);if(401===t.status)throw window.location.assign("/login"),Error("unauthorized");return t.json()},n={refreshInterval:5e3,dedupingInterval:3e3};function i(e,t){if(!t)return e;let r=e.includes("?")?"&":"?";return`${e}${r}network_id=${encodeURIComponent(t)}`}e.s(["useAnetConfig",0,function(){let{data:e}=(0,t.default)("/api/anet/config",s,{refreshInterval:3e4});return{config:e||null}},"useHealth",0,function(){let{data:e,error:r}=(0,t.default)("/api/hub/health",s,n);return{health:e||null,error:r}},"useLicense",0,function(){let{data:e,error:r}=(0,t.default)("/api/hub/license",s,{refreshInterval:6e4});return{license:e?.ok?e:null,error:r}},"useMessages",0,function(e=100){let{networkId:a}=(0,r.useNetworkId)(),{data:l,error:o,isLoading:c}=(0,t.default)(i(`/api/hub/messages?limit=${e}`,a),s,n);return{messages:l?.messages||[],error:o,isLoading:c}},"useSessions",0,function(){let{networkId:e}=(0,r.useNetworkId)(),{data:a,error:l,isLoading:o}=(0,t.default)(i("/api/hub/status",e),s,n);return{sessions:a?.sessions||[],hint:a?._hint,error:l,isLoading:o}},"useStats",0,function(){let{networkId:e}=(0,r.useNetworkId)(),{data:a,error:l}=(0,t.default)(i("/api/hub/stats",e),s,n);return{stats:a?.ok?a:null,error:l}},"useTasks",0,function(e){let{networkId:a}=(0,r.useNetworkId)(),l=new URLSearchParams({limit:"100",...e}).toString(),{data:o,error:c,isLoading:d}=(0,t.default)(i(`/api/hub/tasks?${l}`,a),s,n);return{tasks:o?.tasks||[],count:o?.count??0,source:o?.source,error:c,isLoading:d}}])},70286,e=>{"use strict";e.s(["DASHBOARD_VERSION",0,"0.5.3-preview.211"],70286)}]);
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,98025,e=>{"use strict";e.s(["SESSION_STATUS_CHIP_CLASS",0,{working:"bg-green-500/10 text-green-300 border-green-500/20",idle:"bg-blue-500/10 text-blue-300 border-blue-500/20",blocked:"bg-yellow-500/10 text-yellow-300 border-yellow-500/20",error:"bg-red-500/10 text-red-300 border-red-500/20",offline:"bg-gray-500/10 text-gray-500 border-gray-500/20"},"SESSION_STATUS_TEXT_CLASS",0,{working:"text-green-400",idle:"text-blue-400",blocked:"text-yellow-400",error:"text-red-400",offline:"text-gray-500"},"STATUS_BAR_CLASS",0,{created:"bg-gray-500",delivered:"bg-blue-500",acked:"bg-cyan-500",running:"bg-green-500",replied:"bg-purple-500",closed:"bg-gray-600",failed:"bg-red-500",cancelled:"bg-yellow-500",expired:"bg-orange-500"},"STATUS_CHIP_CLASS",0,{created:"bg-gray-500/10 text-gray-400 border-gray-500/20",delivered:"bg-blue-500/10 text-blue-300 border-blue-500/20",acked:"bg-cyan-500/10 text-cyan-300 border-cyan-500/20",running:"bg-green-500/10 text-green-300 border-green-500/20",replied:"bg-purple-500/10 text-purple-300 border-purple-500/20",closed:"bg-gray-500/10 text-gray-500 border-gray-500/20",failed:"bg-red-500/10 text-red-300 border-red-500/20",cancelled:"bg-yellow-500/10 text-yellow-300 border-yellow-500/20",expired:"bg-orange-500/10 text-orange-300 border-orange-500/20"},"STATUS_DOT_HEX",0,{created:"#9ca3af",delivered:"#60a5fa",acked:"#22d3ee",running:"#4ade80",replied:"#a78bfa",closed:"#6b7280",failed:"#f87171",cancelled:"#facc15",expired:"#fb923c"},"TASK_STATUSES",0,["created","delivered","acked","running","replied","closed","failed","cancelled","expired"]])},3479,59746,e=>{"use strict";function t(e){if(!e)return null;let t=Date.parse(e.includes("T")?e:e.replace(" ","T")+"Z");return Number.isFinite(t)?t:null}function r(e){let r=t(e);if(null===r)return null;let s=Math.floor((Date.now()-r)/1e3);return s<0?"just now":s<60?`${s}s ago`:s<3600?`${Math.floor(s/60)}m ago`:s<86400?`${Math.floor(s/3600)}h ago`:`${Math.floor(s/86400)}d ago`}e.s(["parseHubTime",0,t,"relativeAgo",0,r],59746),e.s(["formatUptime",0,function(e){let t=Math.floor(e/3600),r=Math.floor(e%3600/60);return t>0?`${t}h ${r}m`:`${r}m`},"previewContent",0,function(e){return e&&e.replace(/!\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/\[([^\]]+)\]\([^)]*\)/g,"$1").replace(/`([^`]+)`/g,"$1").replace(/\s+/g," ").trim()||"--"},"timeAgo",0,function(e){return r(e)??"--"}],3479)},46228,e=>{"use strict";var t=e.i(22381);let r=[180,200,220,270,300,330,30,90];function s(e){let t=0;for(let r=0;r<e.length;r++)t=31*t+e.charCodeAt(r)>>>0;let s=r[t%r.length];return{bg:`hsl(${s} 55% 22%)`,ring:`hsl(${s} 60% 45%)`,text:`hsl(${s} 80% 78%)`}}function n(e){return e?(e.trim().match(/[\p{L}\p{N}]/u)?.[0]||e.trim()[0]||"·").toUpperCase():"·"}e.s(["AliasAvatar",0,function({alias:e,size:r=28,className:i=""}){let a=s(e),l=Math.max(9,Math.round(.42*r));return(0,t.jsx)("span",{className:`anet-alias-avatar inline-flex items-center justify-center rounded-full border shrink-0 font-semibold ${i}`,style:{width:r,height:r,fontSize:l,backgroundColor:a.bg,borderColor:a.ring,color:a.text},title:e,"aria-hidden":!0,children:n(e)})},"aliasAvatarColors",0,s,"aliasInitial",0,n])},76161,e=>{"use strict";var t=e.i(22381),r=e.i(23910),s=e.i(56839);let n={nodes:{title:"No agents in this network",sub:"Agent sessions will appear here once they connect to the CommHub."},tasks:{title:"No tasks yet",sub:"Tasks will appear here when agents send them via CommHub."},messages:{title:"No messages",sub:"Messages between agents will appear here."},logs:{title:"No audit logs",sub:"Events will appear here when users register, login, or perform actions."},tokens:{title:"No API tokens",sub:"Create one to authenticate CLI tools and external integrations."},networks:{title:"No networks found",sub:"Create one or sign in with V3 auth to see your networks."},generic:{title:"Nothing here yet",sub:"Data will appear here once available."}};function i({variant:e,size:r}){let s={width:r,height:r},n={fill:"none",stroke:"currentColor",strokeWidth:1.25,strokeLinecap:"round",strokeLinejoin:"round"};switch(e){case"nodes":return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("circle",{cx:"32",cy:"14",r:"4"}),(0,t.jsx)("circle",{cx:"14",cy:"44",r:"4"}),(0,t.jsx)("circle",{cx:"50",cy:"44",r:"4"}),(0,t.jsx)("line",{x1:"32",y1:"18",x2:"14",y2:"40",strokeDasharray:"3 3",opacity:"0.6"}),(0,t.jsx)("line",{x1:"32",y1:"18",x2:"50",y2:"40",strokeDasharray:"3 3",opacity:"0.6"}),(0,t.jsx)("line",{x1:"18",y1:"44",x2:"46",y2:"44",strokeDasharray:"3 3",opacity:"0.6"})]})});case"tasks":return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("rect",{x:"14",y:"14",width:"36",height:"6",rx:"1.5"}),(0,t.jsx)("rect",{x:"14",y:"26",width:"36",height:"6",rx:"1.5",opacity:"0.6"}),(0,t.jsx)("rect",{x:"14",y:"38",width:"36",height:"6",rx:"1.5",opacity:"0.35"})]})});case"messages":return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("path",{d:"M14 18 h36 a3 3 0 0 1 3 3 v18 a3 3 0 0 1 -3 3 h-18 l-8 6 v-6 h-10 a3 3 0 0 1 -3 -3 v-18 a3 3 0 0 1 3 -3 z"}),(0,t.jsx)("line",{x1:"22",y1:"28",x2:"42",y2:"28",opacity:"0.5"}),(0,t.jsx)("line",{x1:"22",y1:"34",x2:"36",y2:"34",opacity:"0.5"})]})});case"logs":return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("path",{d:"M18 12 h22 l8 8 v32 a2 2 0 0 1 -2 2 h-28 a2 2 0 0 1 -2 -2 v-38 a2 2 0 0 1 2 -2 z"}),(0,t.jsx)("path",{d:"M40 12 v8 h8",opacity:"0.6"}),(0,t.jsx)("line",{x1:"24",y1:"32",x2:"40",y2:"32",opacity:"0.55"}),(0,t.jsx)("line",{x1:"24",y1:"38",x2:"40",y2:"38",opacity:"0.4"}),(0,t.jsx)("line",{x1:"24",y1:"44",x2:"34",y2:"44",opacity:"0.25"})]})});case"tokens":return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("circle",{cx:"22",cy:"32",r:"8"}),(0,t.jsx)("line",{x1:"30",y1:"32",x2:"54",y2:"32"}),(0,t.jsx)("line",{x1:"44",y1:"32",x2:"44",y2:"38"}),(0,t.jsx)("line",{x1:"50",y1:"32",x2:"50",y2:"40"})]})});case"networks":return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("circle",{cx:"32",cy:"32",r:"18"}),(0,t.jsx)("ellipse",{cx:"32",cy:"32",rx:"18",ry:"9",opacity:"0.55"}),(0,t.jsx)("line",{x1:"14",y1:"32",x2:"50",y2:"32",opacity:"0.55"}),(0,t.jsx)("line",{x1:"32",y1:"14",x2:"32",y2:"50",opacity:"0.55"})]})});default:return(0,t.jsx)("svg",{viewBox:"0 0 64 64",...s,children:(0,t.jsxs)("g",{...n,children:[(0,t.jsx)("circle",{cx:"32",cy:"32",r:"14",strokeDasharray:"3 3",opacity:"0.6"}),(0,t.jsx)("circle",{cx:"32",cy:"32",r:"3"})]})})}}function a({variant:e="generic",title:r,sub:l,cta:o,compact:c=!1}){let d=n[e],x=r??d.title,h=l??d.sub;return(0,t.jsxs)("div",{className:`text-center ${c?"py-8":"py-16"} px-4`,role:"status",children:[(0,t.jsx)("div",{className:"anet-empty-glyph inline-flex items-center justify-center mb-4 text-gray-500","aria-hidden":!0,children:(0,t.jsx)(i,{variant:e,size:c?40:56})}),(0,t.jsx)("h3",{className:`font-medium text-gray-300 ${c?"text-sm":"text-base"}`,children:x}),h&&(0,t.jsx)("p",{className:`text-gray-500 ${c?"text-xs mt-1.5":"text-sm mt-2"} max-w-md mx-auto leading-relaxed`,children:h}),o&&(0,t.jsx)("div",{className:"mt-4",children:o.href?(0,t.jsxs)(s.default,{href:o.href,className:"inline-flex items-center gap-1.5 text-sm font-medium text-cyan-400 hover:text-cyan-300",children:[o.label,(0,t.jsx)("span",{"aria-hidden":!0,children:"→"})]}):(0,t.jsxs)("button",{onClick:o.onClick,className:"inline-flex items-center gap-1.5 text-sm font-medium text-cyan-400 hover:text-cyan-300",children:[o.label,(0,t.jsx)("span",{"aria-hidden":!0,children:"→"})]})})]})}function l({children:e}){return(0,t.jsx)("div",{className:"max-w-2xl mx-auto rounded-xl border border-[#2a2a4a] bg-[#111128] shadow-lg shadow-black/20",children:e})}function o({cmd:e}){let[s,n]=(0,r.useState)(!1),i=async()=>{try{await navigator.clipboard.writeText(e),n(!0),setTimeout(()=>n(!1),1800)}catch{}};return(0,t.jsxs)("div",{className:"anet-empty-cmd flex items-center gap-2 bg-[#0a0a15] border border-[#2a2a4a] rounded-lg pl-4 pr-1.5 py-1.5 text-xs sm:text-sm",children:[(0,t.jsx)("code",{className:"text-cyan-300 font-mono select-all",children:e}),(0,t.jsx)("button",{type:"button",onClick:i,"aria-label":s?"Copied":"Copy command",className:"shrink-0 rounded-md px-2 py-1.5 text-[11px] text-gray-500 hover:text-gray-200 hover:bg-[#1a1a2a] transition-colors",children:s?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-green-400",children:[(0,t.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("path",{d:"M20 6 9 17l-5-5"})}),"Copied"]}):(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"}),(0,t.jsx)("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"})]}),"Copy"]})})]})}e.s(["EmptyState",0,a,"NodesEmptyState",0,function({hint:e,taskHistoryCount:r=0}){return e?.global_count?(0,t.jsx)(l,{children:(0,t.jsx)(a,{variant:"nodes",title:"No agents in this network",sub:`Server has ${e.global_count} nodes globally, but none are registered to the current network. Switch network or contact admin.`})}):r>0?(0,t.jsx)(l,{children:(0,t.jsx)(a,{variant:"nodes",title:"No agents online",sub:`Every agent in this network is currently offline. ${r.toLocaleString()} task${1===r?"":"s"} in history — they may have finished their work or disconnected.`,cta:{label:"View task history",href:"/tasks"}})}):(0,t.jsx)(l,{children:(0,t.jsxs)("div",{className:"text-center py-16 px-4",role:"status",children:[(0,t.jsx)("div",{className:"anet-empty-glyph inline-flex items-center justify-center mb-4 text-gray-500","aria-hidden":!0,children:(0,t.jsx)("svg",{viewBox:"0 0 64 64",width:56,height:56,children:(0,t.jsxs)("g",{stroke:"currentColor",strokeWidth:"1.5",fill:"none",children:[(0,t.jsx)("rect",{x:"10",y:"20",width:"44",height:"28",rx:"2"}),(0,t.jsx)("rect",{x:"20",y:"32",width:"6",height:"8",opacity:"0.5"}),(0,t.jsx)("rect",{x:"32",y:"32",width:"6",height:"8",opacity:"0.5"}),(0,t.jsx)("rect",{x:"44",y:"32",width:"4",height:"8",opacity:"0.5"}),(0,t.jsx)("line",{x1:"10",y1:"26",x2:"54",y2:"26",opacity:"0.4"}),(0,t.jsx)("circle",{cx:"14",cy:"23",r:"0.8",fill:"currentColor"})]})})}),(0,t.jsx)("h3",{className:"font-medium text-gray-300 text-base",children:"Spin up your first agent"}),(0,t.jsx)("p",{className:"text-gray-500 text-sm mt-2 max-w-md mx-auto leading-relaxed",children:"Run this in a fresh terminal to register an agent with this CommHub:"}),(0,t.jsx)("div",{className:"mt-4 inline-block",children:(0,t.jsx)(o,{cmd:"npx --yes @sleep2agi/agent-network init"})}),(0,t.jsx)("div",{className:"mt-3",children:(0,t.jsxs)("a",{href:"https://anet.sh",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1.5 text-xs font-medium text-gray-500 hover:text-cyan-300",children:["Full quickstart guide",(0,t.jsx)("span",{"aria-hidden":!0,children:"→"})]})})]})})}])},59276,e=>{"use strict";var t=e.i(12629),r=e.i(11449);let s=async e=>{let t=await fetch(e);if(401===t.status)throw window.location.assign("/login"),Error("unauthorized");return t.json()},n={refreshInterval:5e3,dedupingInterval:3e3};function i(e,t){if(!t)return e;let r=e.includes("?")?"&":"?";return`${e}${r}network_id=${encodeURIComponent(t)}`}e.s(["useAnetConfig",0,function(){let{data:e}=(0,t.default)("/api/anet/config",s,{refreshInterval:3e4});return{config:e||null}},"useHealth",0,function(){let{data:e,error:r}=(0,t.default)("/api/hub/health",s,n);return{health:e||null,error:r}},"useLicense",0,function(){let{data:e,error:r}=(0,t.default)("/api/hub/license",s,{refreshInterval:6e4});return{license:e?.ok?e:null,error:r}},"useMessages",0,function(e=100){let{networkId:a}=(0,r.useNetworkId)(),{data:l,error:o,isLoading:c}=(0,t.default)(i(`/api/hub/messages?limit=${e}`,a),s,n);return{messages:l?.messages||[],error:o,isLoading:c}},"useSessions",0,function(){let{networkId:e}=(0,r.useNetworkId)(),{data:a,error:l,isLoading:o}=(0,t.default)(i("/api/hub/status",e),s,n);return{sessions:a?.sessions||[],hint:a?._hint,error:l,isLoading:o}},"useStats",0,function(){let{networkId:e}=(0,r.useNetworkId)(),{data:a,error:l}=(0,t.default)(i("/api/hub/stats",e),s,n);return{stats:a?.ok?a:null,error:l}},"useTasks",0,function(e){let{networkId:a}=(0,r.useNetworkId)(),l=new URLSearchParams({limit:"100",...e}).toString(),{data:o,error:c,isLoading:d}=(0,t.default)(i(`/api/hub/tasks?${l}`,a),s,n);return{tasks:o?.tasks||[],count:o?.count??0,source:o?.source,error:c,isLoading:d}}])},70286,e=>{"use strict";e.s(["DASHBOARD_VERSION",0,"0.5.3-preview.213"],70286)}]);
|
package/.next/trace
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
[{"name":"generate-buildid","duration":324,"timestamp":394873646422,"id":4,"parentId":1,"tags":{},"startTime":1779202845893,"traceId":"663c734bfb8b5033"},{"name":"load-custom-routes","duration":506,"timestamp":394873646899,"id":5,"parentId":1,"tags":{},"startTime":1779202845893,"traceId":"663c734bfb8b5033"},{"name":"create-dist-dir","duration":719,"timestamp":394873647451,"id":6,"parentId":1,"tags":{},"startTime":1779202845894,"traceId":"663c734bfb8b5033"},{"name":"clean","duration":34455,"timestamp":394873648822,"id":7,"parentId":1,"tags":{},"startTime":1779202845895,"traceId":"663c734bfb8b5033"},{"name":"discover-routes","duration":24301,"timestamp":394873772492,"id":8,"parentId":1,"tags":{},"startTime":1779202846019,"traceId":"663c734bfb8b5033"},{"name":"create-root-mapping","duration":124,"timestamp":394873796856,"id":9,"parentId":1,"tags":{},"startTime":1779202846043,"traceId":"663c734bfb8b5033"},{"name":"generate-route-types","duration":19479,"timestamp":394873799939,"id":10,"parentId":1,"tags":{},"startTime":1779202846046,"traceId":"663c734bfb8b5033"},{"name":"public-dir-conflict-check","duration":99,"timestamp":394873819508,"id":11,"parentId":1,"tags":{},"startTime":1779202846066,"traceId":"663c734bfb8b5033"},{"name":"generate-routes-manifest","duration":4920,"timestamp":394873819732,"id":12,"parentId":1,"tags":{},"startTime":1779202846066,"traceId":"663c734bfb8b5033"},{"name":"run-turbopack","duration":6100801,"timestamp":394873830114,"id":14,"parentId":1,"tags":{},"startTime":1779202846076,"traceId":"663c734bfb8b5033"},{"name":"turbopack-build-events","duration":114,"timestamp":394874135053,"id":15,"parentId":1,"tags":{},"startTime":1779202846381,"traceId":"663c734bfb8b5033"},{"name":"run-typescript","duration":10401599,"timestamp":394879938839,"id":16,"parentId":1,"tags":{},"startTime":1779202852185,"traceId":"663c734bfb8b5033"},{"name":"generate-required-server-files","duration":3169,"timestamp":394890341850,"id":18,"parentId":1,"tags":{},"startTime":1779202862588,"traceId":"663c734bfb8b5033"},{"name":"check-static-error-page","duration":15207,"timestamp":394890537611,"id":20,"parentId":19,"tags":{},"startTime":1779202862784,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":472395,"timestamp":394890557882,"id":65,"parentId":22,"tags":{},"startTime":1779202862804,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":490236,"timestamp":394890540221,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1779202862786,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":608376,"timestamp":394890558780,"id":71,"parentId":30,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":623284,"timestamp":394890543977,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1779202862790,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":632152,"timestamp":394890558846,"id":72,"parentId":32,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":646801,"timestamp":394890544303,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1779202862791,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":642965,"timestamp":394890558254,"id":68,"parentId":27,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":657624,"timestamp":394890543720,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1779202862790,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":648034,"timestamp":394890559108,"id":74,"parentId":34,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":662759,"timestamp":394890544476,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1779202862791,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":652614,"timestamp":394890558353,"id":69,"parentId":28,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":667248,"timestamp":394890543804,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1779202862790,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":677381,"timestamp":394890559024,"id":73,"parentId":33,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":692089,"timestamp":394890544399,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1779202862791,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":686084,"timestamp":394890559177,"id":77,"parentId":37,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":699816,"timestamp":394890545517,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1779202862792,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":690068,"timestamp":394890559136,"id":75,"parentId":35,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":704709,"timestamp":394890544562,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1779202862791,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":690938,"timestamp":394890559193,"id":78,"parentId":38,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":704301,"timestamp":394890545877,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1779202862792,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":697687,"timestamp":394890559151,"id":76,"parentId":36,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":711576,"timestamp":394890545318,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1779202862792,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":698025,"timestamp":394890559214,"id":80,"parentId":40,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":711176,"timestamp":394890546108,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1779202862792,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":702582,"timestamp":394890559238,"id":82,"parentId":44,"tags":{},"startTime":1779202862806,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":714928,"timestamp":394890546939,"id":44,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1779202862793,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":706676,"timestamp":394890559246,"id":83,"parentId":45,"tags":{},"startTime":1779202862806,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":718890,"timestamp":394890547075,"id":45,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1779202862793,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":714604,"timestamp":394890559259,"id":84,"parentId":46,"tags":{},"startTime":1779202862806,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":726731,"timestamp":394890547179,"id":46,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1779202862793,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":722242,"timestamp":394890558029,"id":66,"parentId":25,"tags":{},"startTime":1779202862804,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":736884,"timestamp":394890543450,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1779202862790,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":722055,"timestamp":394890558631,"id":70,"parentId":29,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":736866,"timestamp":394890543883,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1779202862790,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":721657,"timestamp":394890559271,"id":85,"parentId":47,"tags":{},"startTime":1779202862806,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":731436,"timestamp":394890549530,"id":47,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1779202862796,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":724004,"timestamp":394890559206,"id":79,"parentId":39,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":737262,"timestamp":394890545995,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1779202862792,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":729568,"timestamp":394890559306,"id":88,"parentId":50,"tags":{},"startTime":1779202862806,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":739132,"timestamp":394890549791,"id":50,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1779202862796,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":730721,"timestamp":394890559317,"id":89,"parentId":51,"tags":{},"startTime":1779202862806,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":740251,"timestamp":394890549841,"id":51,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1779202862796,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":731441,"timestamp":394890559226,"id":81,"parentId":42,"tags":{},"startTime":1779202862805,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":744226,"timestamp":394890546499,"id":42,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/health"},"startTime":1779202862793,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":721068,"timestamp":394890573126,"id":91,"parentId":31,"tags":{},"startTime":1779202862819,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":751284,"timestamp":394890544085,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1779202862790,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":726438,"timestamp":394890569270,"id":90,"parentId":24,"tags":{},"startTime":1779202862816,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":755034,"timestamp":394890540781,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1779202862787,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":722534,"timestamp":394890573994,"id":92,"parentId":41,"tags":{},"startTime":1779202862820,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":750367,"timestamp":394890546204,"id":41,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/agents"},"startTime":1779202862792,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":724559,"timestamp":394890575348,"id":93,"parentId":43,"tags":{},"startTime":1779202862822,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":753316,"timestamp":394890546631,"id":43,"parentId":19,"tags":{"page":"/api/hub/servers"},"startTime":1779202862793,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":743004,"timestamp":394890558148,"id":67,"parentId":26,"tags":{},"startTime":1779202862804,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":757583,"timestamp":394890543619,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1779202862790,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":744250,"timestamp":394890559286,"id":86,"parentId":48,"tags":{},"startTime":1779202862806,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":753932,"timestamp":394890549647,"id":48,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1779202862796,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":760556,"timestamp":394890557489,"id":64,"parentId":21,"tags":{},"startTime":1779202862804,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":779226,"timestamp":394890538889,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1779202862785,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":761205,"timestamp":394890559294,"id":87,"parentId":49,"tags":{},"startTime":1779202862806,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":770825,"timestamp":394890549732,"id":49,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1779202862796,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":783065,"timestamp":394890578334,"id":99,"parentId":56,"tags":{},"startTime":1779202862825,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":810776,"timestamp":394890550702,"id":56,"parentId":19,"tags":{"page":"/nodes"},"startTime":1779202862797,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":787854,"timestamp":394890578280,"id":95,"parentId":52,"tags":{},"startTime":1779202862825,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":816024,"timestamp":394890550190,"id":52,"parentId":19,"tags":{"page":"/login"},"startTime":1779202862796,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":794186,"timestamp":394890578492,"id":102,"parentId":61,"tags":{},"startTime":1779202862825,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":820447,"timestamp":394890552325,"id":61,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1779202862799,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":801058,"timestamp":394890578250,"id":94,"parentId":23,"tags":{},"startTime":1779202862825,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":838865,"timestamp":394890540528,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1779202862787,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":805449,"timestamp":394890578506,"id":103,"parentId":62,"tags":{},"startTime":1779202862825,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":831565,"timestamp":394890552473,"id":62,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1779202862799,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":807431,"timestamp":394890578320,"id":98,"parentId":55,"tags":{},"startTime":1779202862825,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":835259,"timestamp":394890550566,"id":55,"parentId":19,"tags":{"page":"/node"},"startTime":1779202862797,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":809022,"timestamp":394890578516,"id":104,"parentId":63,"tags":{},"startTime":1779202862825,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":834990,"timestamp":394890552597,"id":63,"parentId":19,"tags":{"page":"/tasks"},"startTime":1779202862799,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":811934,"timestamp":394890578296,"id":96,"parentId":53,"tags":{},"startTime":1779202862825,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":839962,"timestamp":394890550317,"id":53,"parentId":19,"tags":{"page":"/logs"},"startTime":1779202862797,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":811916,"timestamp":394890578471,"id":101,"parentId":59,"tags":{},"startTime":1779202862825,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":838757,"timestamp":394890551731,"id":59,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1779202862798,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":798364,"timestamp":394890594471,"id":105,"parentId":60,"tags":{},"startTime":1779202862841,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":840996,"timestamp":394890551889,"id":60,"parentId":19,"tags":{"page":"/settings"},"startTime":1779202862798,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":789211,"timestamp":394890612573,"id":106,"parentId":57,"tags":{},"startTime":1779202862859,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":850937,"timestamp":394890550893,"id":57,"parentId":19,"tags":{"page":"/"},"startTime":1779202862797,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":825198,"timestamp":394890578343,"id":100,"parentId":58,"tags":{},"startTime":1779202862825,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":852039,"timestamp":394890551539,"id":58,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1779202862798,"traceId":"663c734bfb8b5033"},{"name":"is-page-static","duration":829450,"timestamp":394890578306,"id":97,"parentId":54,"tags":{},"startTime":1779202862825,"traceId":"663c734bfb8b5033"},{"name":"check-page","duration":857364,"timestamp":394890550431,"id":54,"parentId":19,"tags":{"page":"/messages"},"startTime":1779202862797,"traceId":"663c734bfb8b5033"},{"name":"static-check","duration":871347,"timestamp":394890536504,"id":19,"parentId":1,"tags":{},"startTime":1779202862783,"traceId":"663c734bfb8b5033"}]
|
|
2
|
-
[{"name":"write-routes-manifest","duration":
|
|
1
|
+
[{"name":"generate-buildid","duration":278,"timestamp":396082487427,"id":4,"parentId":1,"tags":{},"startTime":1779204054734,"traceId":"86d0a2be9fcbfb47"},{"name":"load-custom-routes","duration":499,"timestamp":396082487871,"id":5,"parentId":1,"tags":{},"startTime":1779204054734,"traceId":"86d0a2be9fcbfb47"},{"name":"create-dist-dir","duration":731,"timestamp":396082488415,"id":6,"parentId":1,"tags":{},"startTime":1779204054735,"traceId":"86d0a2be9fcbfb47"},{"name":"clean","duration":36211,"timestamp":396082489912,"id":7,"parentId":1,"tags":{},"startTime":1779204054736,"traceId":"86d0a2be9fcbfb47"},{"name":"discover-routes","duration":30865,"timestamp":396082612495,"id":8,"parentId":1,"tags":{},"startTime":1779204054859,"traceId":"86d0a2be9fcbfb47"},{"name":"create-root-mapping","duration":154,"timestamp":396082643437,"id":9,"parentId":1,"tags":{},"startTime":1779204054890,"traceId":"86d0a2be9fcbfb47"},{"name":"generate-route-types","duration":22607,"timestamp":396082646369,"id":10,"parentId":1,"tags":{},"startTime":1779204054893,"traceId":"86d0a2be9fcbfb47"},{"name":"public-dir-conflict-check","duration":114,"timestamp":396082669103,"id":11,"parentId":1,"tags":{},"startTime":1779204054915,"traceId":"86d0a2be9fcbfb47"},{"name":"generate-routes-manifest","duration":5182,"timestamp":396082669362,"id":12,"parentId":1,"tags":{},"startTime":1779204054916,"traceId":"86d0a2be9fcbfb47"},{"name":"run-turbopack","duration":6479079,"timestamp":396082680698,"id":14,"parentId":1,"tags":{},"startTime":1779204054927,"traceId":"86d0a2be9fcbfb47"},{"name":"turbopack-build-events","duration":101,"timestamp":396082983541,"id":15,"parentId":1,"tags":{},"startTime":1779204055230,"traceId":"86d0a2be9fcbfb47"},{"name":"run-typescript","duration":10240721,"timestamp":396089170868,"id":16,"parentId":1,"tags":{},"startTime":1779204061417,"traceId":"86d0a2be9fcbfb47"},{"name":"generate-required-server-files","duration":3303,"timestamp":396099413294,"id":18,"parentId":1,"tags":{},"startTime":1779204071660,"traceId":"86d0a2be9fcbfb47"},{"name":"check-static-error-page","duration":14351,"timestamp":396099685907,"id":20,"parentId":19,"tags":{},"startTime":1779204071932,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":483313,"timestamp":396099704520,"id":65,"parentId":22,"tags":{},"startTime":1779204071951,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":501159,"timestamp":396099690057,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1779204071936,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":623821,"timestamp":396099705652,"id":71,"parentId":30,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":635941,"timestamp":396099693650,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1779204071940,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":626791,"timestamp":396099704076,"id":64,"parentId":21,"tags":{},"startTime":1779204071950,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":642708,"timestamp":396099688230,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1779204071935,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":632085,"timestamp":396099705713,"id":72,"parentId":32,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":643942,"timestamp":396099693921,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1779204071940,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":638590,"timestamp":396099704917,"id":67,"parentId":26,"tags":{},"startTime":1779204071951,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":650286,"timestamp":396099693295,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1779204071940,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":644065,"timestamp":396099705971,"id":75,"parentId":35,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":655896,"timestamp":396099694201,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1779204071940,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":647828,"timestamp":396099705191,"id":69,"parentId":28,"tags":{},"startTime":1779204071951,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":659608,"timestamp":396099693476,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1779204071940,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":658689,"timestamp":396099705947,"id":74,"parentId":34,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":670569,"timestamp":396099694123,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1779204071940,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":660258,"timestamp":396099704790,"id":66,"parentId":25,"tags":{},"startTime":1779204071951,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":671935,"timestamp":396099693159,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1779204071939,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":663140,"timestamp":396099706042,"id":77,"parentId":37,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":674551,"timestamp":396099694676,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1779204071941,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":664416,"timestamp":396099705062,"id":68,"parentId":27,"tags":{},"startTime":1779204071951,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":676134,"timestamp":396099693388,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1779204071940,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":669421,"timestamp":396099706081,"id":80,"parentId":40,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":680663,"timestamp":396099694894,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1779204071941,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":678494,"timestamp":396099706056,"id":78,"parentId":38,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":689848,"timestamp":396099694766,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1779204071941,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":678856,"timestamp":396099706093,"id":81,"parentId":42,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":689868,"timestamp":396099695168,"id":42,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/health"},"startTime":1779204071941,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":681727,"timestamp":396099706115,"id":83,"parentId":45,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":692260,"timestamp":396099695627,"id":45,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1779204071942,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":685881,"timestamp":396099706139,"id":85,"parentId":47,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":696311,"timestamp":396099695765,"id":47,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1779204071942,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":689111,"timestamp":396099705994,"id":76,"parentId":36,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":700599,"timestamp":396099694558,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1779204071941,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":690504,"timestamp":396099706152,"id":86,"parentId":48,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":699501,"timestamp":396099697211,"id":48,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1779204071943,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":690741,"timestamp":396099706102,"id":82,"parentId":44,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":701346,"timestamp":396099695529,"id":44,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1779204071942,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":695526,"timestamp":396099706128,"id":84,"parentId":46,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":706011,"timestamp":396099695688,"id":46,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1779204071942,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":696654,"timestamp":396099706175,"id":88,"parentId":50,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":705404,"timestamp":396099697469,"id":50,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1779204071944,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":690721,"timestamp":396099720354,"id":91,"parentId":31,"tags":{},"startTime":1779204071967,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":717404,"timestamp":396099693725,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1779204071940,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":709853,"timestamp":396099706163,"id":87,"parentId":49,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":718685,"timestamp":396099697389,"id":49,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1779204071944,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":698395,"timestamp":396099718969,"id":90,"parentId":24,"tags":{},"startTime":1779204071965,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":726241,"timestamp":396099691169,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1779204071937,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":698734,"timestamp":396099721253,"id":92,"parentId":41,"tags":{},"startTime":1779204071968,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":725113,"timestamp":396099694953,"id":41,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/agents"},"startTime":1779204071941,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":695599,"timestamp":396099725758,"id":93,"parentId":43,"tags":{},"startTime":1779204071972,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":726131,"timestamp":396099695269,"id":43,"parentId":19,"tags":{"page":"/api/hub/servers"},"startTime":1779204071942,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":715687,"timestamp":396099706069,"id":79,"parentId":39,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":726976,"timestamp":396099694830,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1779204071941,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":720175,"timestamp":396099706183,"id":89,"parentId":51,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":728896,"timestamp":396099697521,"id":51,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1779204071944,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":722535,"timestamp":396099705485,"id":70,"parentId":29,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":734519,"timestamp":396099693554,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1779204071940,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":728950,"timestamp":396099705872,"id":73,"parentId":33,"tags":{},"startTime":1779204071952,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":740844,"timestamp":396099694035,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1779204071940,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":720065,"timestamp":396099728446,"id":100,"parentId":58,"tags":{},"startTime":1779204071975,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":749688,"timestamp":396099698895,"id":58,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1779204071945,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":732230,"timestamp":396099728562,"id":101,"parentId":59,"tags":{},"startTime":1779204071975,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":761808,"timestamp":396099699055,"id":59,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1779204071945,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":743779,"timestamp":396099728586,"id":102,"parentId":61,"tags":{},"startTime":1779204071975,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":772811,"timestamp":396099699653,"id":61,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1779204071946,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":755678,"timestamp":396099728398,"id":96,"parentId":53,"tags":{},"startTime":1779204071975,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":786259,"timestamp":396099697892,"id":53,"parentId":19,"tags":{"page":"/logs"},"startTime":1779204071944,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":758674,"timestamp":396099728605,"id":103,"parentId":62,"tags":{},"startTime":1779204071975,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":787542,"timestamp":396099699808,"id":62,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1779204071946,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":763726,"timestamp":396099728383,"id":95,"parentId":52,"tags":{},"startTime":1779204071975,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":794387,"timestamp":396099697796,"id":52,"parentId":19,"tags":{"page":"/login"},"startTime":1779204071944,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":763855,"timestamp":396099728615,"id":104,"parentId":63,"tags":{},"startTime":1779204071975,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":792545,"timestamp":396099699968,"id":63,"parentId":19,"tags":{"page":"/tasks"},"startTime":1779204071946,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":752089,"timestamp":396099743295,"id":105,"parentId":60,"tags":{},"startTime":1779204071990,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":796208,"timestamp":396099699224,"id":60,"parentId":19,"tags":{"page":"/settings"},"startTime":1779204071945,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":768773,"timestamp":396099728335,"id":94,"parentId":23,"tags":{},"startTime":1779204071975,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":806226,"timestamp":396099690926,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1779204071937,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":770265,"timestamp":396099728422,"id":98,"parentId":55,"tags":{},"startTime":1779204071975,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":800547,"timestamp":396099698188,"id":55,"parentId":19,"tags":{"page":"/node"},"startTime":1779204071944,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":717387,"timestamp":396099782204,"id":106,"parentId":57,"tags":{},"startTime":1779204072028,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":801094,"timestamp":396099698531,"id":57,"parentId":19,"tags":{"page":"/"},"startTime":1779204071945,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":772902,"timestamp":396099728408,"id":97,"parentId":54,"tags":{},"startTime":1779204071975,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":803373,"timestamp":396099697992,"id":54,"parentId":19,"tags":{"page":"/messages"},"startTime":1779204071944,"traceId":"86d0a2be9fcbfb47"},{"name":"is-page-static","duration":796667,"timestamp":396099728436,"id":99,"parentId":56,"tags":{},"startTime":1779204071975,"traceId":"86d0a2be9fcbfb47"},{"name":"check-page","duration":826813,"timestamp":396099698362,"id":56,"parentId":19,"tags":{"page":"/nodes"},"startTime":1779204071945,"traceId":"86d0a2be9fcbfb47"},{"name":"static-check","duration":840697,"timestamp":396099684525,"id":19,"parentId":1,"tags":{},"startTime":1779204071931,"traceId":"86d0a2be9fcbfb47"}]
|
|
2
|
+
[{"name":"write-routes-manifest","duration":504,"timestamp":396100535856,"id":108,"parentId":1,"tags":{},"startTime":1779204072782,"traceId":"86d0a2be9fcbfb47"},{"name":"load-dotenv","duration":49,"timestamp":396100546714,"id":111,"parentId":110,"tags":{},"startTime":1779204072793,"traceId":"86d0a2be9fcbfb47"},{"name":"run-export-path-map","duration":609,"timestamp":396100549893,"id":112,"parentId":110,"tags":{},"startTime":1779204072796,"traceId":"86d0a2be9fcbfb47"},{"name":"next-export","duration":674385,"timestamp":396100545502,"id":110,"parentId":1,"tags":{},"startTime":1779204072792,"traceId":"86d0a2be9fcbfb47"},{"name":"move-exported-app-not-found-","duration":515,"timestamp":396101223153,"id":113,"parentId":109,"tags":{},"startTime":1779204073469,"traceId":"86d0a2be9fcbfb47"},{"name":"move-exported-app-global-error-","duration":384,"timestamp":396101223761,"id":114,"parentId":109,"tags":{},"startTime":1779204073470,"traceId":"86d0a2be9fcbfb47"},{"name":"static-generation","duration":686426,"timestamp":396100539892,"id":109,"parentId":1,"tags":{},"startTime":1779204072786,"traceId":"86d0a2be9fcbfb47"},{"name":"write-routes-manifest","duration":409,"timestamp":396101226558,"id":115,"parentId":1,"tags":{},"startTime":1779204073473,"traceId":"86d0a2be9fcbfb47"},{"name":"print-tree-view","duration":4838,"timestamp":396101245820,"id":116,"parentId":1,"tags":{},"startTime":1779204073492,"traceId":"86d0a2be9fcbfb47"},{"name":"write-route-bundle-stats","duration":13672,"timestamp":396101250701,"id":117,"parentId":1,"tags":{},"startTime":1779204073497,"traceId":"86d0a2be9fcbfb47"},{"name":"telemetry-flush","duration":23953,"timestamp":396101264409,"id":118,"parentId":1,"tags":{},"startTime":1779204073511,"traceId":"86d0a2be9fcbfb47"},{"name":"next-build","duration":18854430,"timestamp":396082433973,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1779204054680,"traceId":"86d0a2be9fcbfb47"}]
|
package/.next/trace-build
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"name":"run-turbopack","duration":
|
|
1
|
+
[{"name":"run-turbopack","duration":6479079,"timestamp":396082680698,"id":14,"parentId":1,"tags":{},"startTime":1779204054927,"traceId":"86d0a2be9fcbfb47"},{"name":"turbopack-build-events","duration":101,"timestamp":396082983541,"id":15,"parentId":1,"tags":{},"startTime":1779204055230,"traceId":"86d0a2be9fcbfb47"},{"name":"run-typescript","duration":10240721,"timestamp":396089170868,"id":16,"parentId":1,"tags":{},"startTime":1779204061417,"traceId":"86d0a2be9fcbfb47"},{"name":"static-check","duration":840697,"timestamp":396099684525,"id":19,"parentId":1,"tags":{},"startTime":1779204071931,"traceId":"86d0a2be9fcbfb47"},{"name":"static-generation","duration":686426,"timestamp":396100539892,"id":109,"parentId":1,"tags":{},"startTime":1779204072786,"traceId":"86d0a2be9fcbfb47"},{"name":"telemetry-flush","duration":23953,"timestamp":396101264409,"id":118,"parentId":1,"tags":{},"startTime":1779204073511,"traceId":"86d0a2be9fcbfb47"},{"name":"next-build","duration":18854430,"timestamp":396082433973,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1779204054680,"traceId":"86d0a2be9fcbfb47"}]
|
|
@@ -2043,7 +2043,28 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
|
|
|
2043
2043
|
independent gesture vocabularies.
|
|
2044
2044
|
data-topo-section-kicker-hover-tracking + -hover-color
|
|
2045
2045
|
attrs expose the landing values for tests. */}
|
|
2046
|
-
|
|
2046
|
+
{/* Round 699 / Loop: kicker gains a slow at-rest breathing
|
|
2047
|
+
fade — opacity 0.78 ↔ 1 at 6s ease-in-out infinite, via
|
|
2048
|
+
`.anet-topo-kicker-breath` (globals.css). Pre-R699 the
|
|
2049
|
+
kicker sat at a fixed alpha; the H2 below has a live
|
|
2050
|
+
breathing pulse cycle (`anet-current-step-pulse-kf` family
|
|
2051
|
+
cousins exist) but the kicker eyebrow itself was static.
|
|
2052
|
+
R699 adds a 6s respiration — visible but never agitating.
|
|
2053
|
+
When hovered, the group-hover:text-gray-400 (R685 halo +
|
|
2054
|
+
R555 tracking-expand) takes over, so the breath only
|
|
2055
|
+
registers at rest. prefers-reduced-motion neutralizes the
|
|
2056
|
+
keyframe (animation: none) inside the CSS class.
|
|
2057
|
+
|
|
2058
|
+
Geometry-safe: pure opacity animation, no transform / size /
|
|
2059
|
+
filter blur change → bounding box stable → topo-overlap-test
|
|
2060
|
+
unaffected at both grid + ring. First respiratory anchor
|
|
2061
|
+
on the title-block — sibling to the chip-row gesture grammar
|
|
2062
|
+
(R697/R698 wrapper halos) but operating on a different
|
|
2063
|
+
axis (rest-state aliveness vs hover gesture).
|
|
2064
|
+
|
|
2065
|
+
data-topo-section-kicker-breath="6s" attr surfaces the
|
|
2066
|
+
cadence for tests. */}
|
|
2067
|
+
<div className="anet-topo-kicker-breath text-xs uppercase text-gray-500 group-hover:text-gray-400 tracking-widest group-hover:tracking-[0.13em] transition-[letter-spacing,color] duration-200 ease-out leading-tight font-medium" data-topo-section-kicker data-topo-section-kicker-hover-tracking="0.13em" data-topo-section-kicker-hover-color="text-gray-400" data-topo-section-kicker-halo-layers="2" data-topo-section-kicker-breath="6s">Network Topology</div>
|
|
2047
2068
|
{/* Round 286 / Loop: title 'Command mesh' adopts tracking-tight
|
|
2048
2069
|
(-0.025em) to complement R285 kicker tracking-widest. Wide
|
|
2049
2070
|
eyebrow + tight headline is the conventional editorial
|
|
@@ -12422,7 +12443,37 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
|
|
|
12422
12443
|
panels now have brightness in their active signature
|
|
12423
12444
|
at BOTH chrome tiers (title + row text), completing
|
|
12424
12445
|
the panel paint-axis cascade. */}
|
|
12425
|
-
|
|
12446
|
+
{/* Round 700 / Loop (milestone) — recent panel title gains
|
|
12447
|
+
at-rest SVG opacity breath, paired with R699 kicker breath.
|
|
12448
|
+
The respiratory rolodex (each surface a distinct cadence,
|
|
12449
|
+
cleanly factored):
|
|
12450
|
+
row hot 3 s (recent-row hot pip)
|
|
12451
|
+
hub idle 4 s
|
|
12452
|
+
brand logo 5 s
|
|
12453
|
+
watermark 6 s (canvas bottom-left text)
|
|
12454
|
+
kicker eyebrow 6 s (R699 — Network Topology)
|
|
12455
|
+
recent panel title 8 s (R700 — this round)
|
|
12456
|
+
crescent moon 7 s
|
|
12457
|
+
The new 8 s tier sits between watermark/kicker (6 s) and
|
|
12458
|
+
hub idle (4 s) at the slow end — recent panel title is a
|
|
12459
|
+
section-grade label, so a calm, longer breath fits its
|
|
12460
|
+
"section is alive" semantics. The pinned-state filter
|
|
12461
|
+
glow (activeEdgeKey true) takes precedence: when a row
|
|
12462
|
+
inside the panel is pinned, the breath GATES OFF and the
|
|
12463
|
+
R550 glow + R482 fw-800 + R345 ls-0.4 active triplet
|
|
12464
|
+
holds steady. So the breath only registers at rest —
|
|
12465
|
+
same pattern as R699 kicker (group-hover overrides).
|
|
12466
|
+
|
|
12467
|
+
Implementation: conditional SVG `<animate>` child element,
|
|
12468
|
+
same pattern as the R519 brand watermark breath at 6 s
|
|
12469
|
+
(line ~15320). `<animate>` is paint-only (opacity);
|
|
12470
|
+
bounding box stays fixed; topo-overlap-test untouched.
|
|
12471
|
+
reducedMotion gate already standard across the family —
|
|
12472
|
+
guard inline. data-recent-panel-title-breath attr
|
|
12473
|
+
surfaces the gate state for tests. */}
|
|
12474
|
+
<text x="13" y="21" fill={pal.legendHeadline} fontSize="12" fontFamily="monospace" fontWeight={activeEdgeKey ? '800' : '700'} letterSpacing={hoveredPanel === 'recent' ? '0.4' : '0.3'} style={{ transition: 'fill 200ms ease-out, letter-spacing 200ms ease-out, font-weight 200ms ease-out, filter 200ms ease-out', filter: activeEdgeKey ? `drop-shadow(0 0 2px ${pal.legendAccent}80) drop-shadow(0 0 4px ${pal.legendAccent}40) brightness(1.15)` : undefined }} data-recent-panel-title data-recent-panel-title-fw={activeEdgeKey ? '800' : '700'} data-recent-panel-title-active={activeEdgeKey ? 'true' : 'false'} data-recent-panel-title-glow={activeEdgeKey ? 'true' : 'false'} data-recent-panel-title-brightness={activeEdgeKey ? '1.15' : '1'} data-recent-panel-title-breath={!reducedMotion && !activeEdgeKey ? '8s' : 'off'}>recent signal{!reducedMotion && !activeEdgeKey && (
|
|
12475
|
+
<animate attributeName="opacity" values="0.78;1;0.78" dur="8s" repeatCount="indefinite" />
|
|
12476
|
+
)}</text>
|
|
12426
12477
|
{/* R96: header count now matches what the rows show. Pre-R96
|
|
12427
12478
|
this read "X msgs" off the raw messages array, but the
|
|
12428
12479
|
rows below render DEDUPED flowLinks — so a fleet with 10
|
package/app/globals.css
CHANGED
|
@@ -1261,6 +1261,41 @@ body {
|
|
|
1261
1261
|
filter 200ms ease-out;
|
|
1262
1262
|
}
|
|
1263
1263
|
|
|
1264
|
+
/* ─────────────────────────────────────────────────────────────────────
|
|
1265
|
+
Round 699 — kicker "Network Topology" at-rest breathing fade.
|
|
1266
|
+
|
|
1267
|
+
The H2 below ("Command mesh") already had its hover halo via the R684
|
|
1268
|
+
descendant rule; the kicker eyebrow above had R685 hover halo + R555
|
|
1269
|
+
tracking-expand, but at REST it sat at a fixed alpha — static, no
|
|
1270
|
+
sign of life. R699 adds a slow respiratory cycle (opacity 0.78 ↔ 1
|
|
1271
|
+
at 6 s ease-in-out infinite) on `.anet-topo-kicker-breath`.
|
|
1272
|
+
|
|
1273
|
+
6 s is deliberately ~3× slower than the sidebar brand-pulse (1.6 s)
|
|
1274
|
+
and the recent-hot pulse (3 s) — kicker isn't signaling urgency, just
|
|
1275
|
+
"this section is alive". Group-hover overrides via R555/R685 take
|
|
1276
|
+
precedence the moment user enters the title-block, so the breath
|
|
1277
|
+
never competes with the gesture vocabulary.
|
|
1278
|
+
|
|
1279
|
+
Pure opacity: no transform / no filter blur / no size change → text
|
|
1280
|
+
bounding box stable → topo-overlap-test grid + ring untouched. Pairs
|
|
1281
|
+
sequentially with `anet-brand-pulse-kf` (1.6 s, brand status) and
|
|
1282
|
+
`anet-recent-hot-pulse-kf` (3 s, recent-signal heat) as the third
|
|
1283
|
+
distinct respiratory rhythm in the topo canvas.
|
|
1284
|
+
|
|
1285
|
+
prefers-reduced-motion: reduce → animation: none (kicker freezes at
|
|
1286
|
+
resting alpha = 1, sibling to other R29-family motion guards).
|
|
1287
|
+
───────────────────────────────────────────────────────────────────── */
|
|
1288
|
+
@keyframes anet-topo-kicker-breath-kf {
|
|
1289
|
+
0%, 100% { opacity: 1; }
|
|
1290
|
+
50% { opacity: 0.78; }
|
|
1291
|
+
}
|
|
1292
|
+
.anet-topo-kicker-breath {
|
|
1293
|
+
animation: anet-topo-kicker-breath-kf 6s ease-in-out infinite;
|
|
1294
|
+
}
|
|
1295
|
+
@media (prefers-reduced-motion: reduce) {
|
|
1296
|
+
.anet-topo-kicker-breath { animation: none; }
|
|
1297
|
+
}
|
|
1298
|
+
|
|
1264
1299
|
/* ─────────────────────────────────────────────────────────────────────
|
|
1265
1300
|
Round 29 — prefers-reduced-motion a11y sweep
|
|
1266
1301
|
|
package/package.json
CHANGED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/* Round 699 — kicker "Network Topology" gains at-rest breathing fade.
|
|
2
|
+
* Pre-R699 the kicker eyebrow sat at fixed alpha (text-gray-500 token)
|
|
3
|
+
* — static, no sign of life. R699 adds a 6s opacity 0.78↔1 cycle via
|
|
4
|
+
* `.anet-topo-kicker-breath` (globals.css). Pure opacity → geometry
|
|
5
|
+
* stable → topo-overlap-test unaffected.
|
|
6
|
+
*
|
|
7
|
+
* Source assertions:
|
|
8
|
+
* - globals.css @keyframes anet-topo-kicker-breath-kf with 0/100% 1, 50% 0.78
|
|
9
|
+
* - globals.css .anet-topo-kicker-breath rule with 6s ease-in-out infinite
|
|
10
|
+
* - globals.css prefers-reduced-motion guard: animation: none
|
|
11
|
+
* - TopoGraph.tsx kicker element has class anet-topo-kicker-breath
|
|
12
|
+
* - TopoGraph.tsx kicker element has data-topo-section-kicker-breath="6s"
|
|
13
|
+
*
|
|
14
|
+
* Runtime assertions:
|
|
15
|
+
* - kicker element present
|
|
16
|
+
* - kicker has anet-topo-kicker-breath class
|
|
17
|
+
* - computed animation-name reflects the keyframe (or 'none' under reduced-motion)
|
|
18
|
+
* - computed animation-duration is 6s
|
|
19
|
+
*/
|
|
20
|
+
import { chromium } from 'playwright';
|
|
21
|
+
import { readFileSync } from 'node:fs';
|
|
22
|
+
|
|
23
|
+
const TOKEN = JSON.parse(readFileSync('/home/vansin/.anet/config.json', 'utf8')).token;
|
|
24
|
+
const fresh = new Date(Date.now() - 60 * 1000).toISOString();
|
|
25
|
+
|
|
26
|
+
const browser = await chromium.launch({ headless: true });
|
|
27
|
+
const ctx = await browser.newContext({ viewport: { width: 1500, height: 1200 } });
|
|
28
|
+
await ctx.addCookies([{ name: 'anet_dashboard_session', value: `v3:${TOKEN}`, domain: '127.0.0.1', path: '/' }]);
|
|
29
|
+
await ctx.addInitScript(() => {
|
|
30
|
+
try {
|
|
31
|
+
localStorage.setItem('anet-theme', 'cyber');
|
|
32
|
+
localStorage.setItem('anet-topo-layout', 'ring');
|
|
33
|
+
sessionStorage.setItem('anet_v3_auth', '1');
|
|
34
|
+
} catch {}
|
|
35
|
+
});
|
|
36
|
+
await ctx.route('**/api/hub/status*', async (route) => {
|
|
37
|
+
const r = await route.fetch();
|
|
38
|
+
const b = await r.json();
|
|
39
|
+
const nid = (b.sessions || [])[0]?.network_id || 'default';
|
|
40
|
+
const mk = (alias) => ({
|
|
41
|
+
alias, status: 'idle', model: 'claude-opus-4', runtime: 'claude-code-cli',
|
|
42
|
+
network_id: nid, project_dir: null,
|
|
43
|
+
created_at: fresh, updated_at: fresh, last_seen_at: fresh,
|
|
44
|
+
});
|
|
45
|
+
await route.fulfill({ response: r, json: { ...b, sessions: [mk('a·1'), mk('a·2')] } });
|
|
46
|
+
});
|
|
47
|
+
await ctx.route('**/api/hub/messages*', (r) => r.fulfill({ json: { messages: [] } }));
|
|
48
|
+
await ctx.route('**/api/hub/tasks*', (r) => r.fulfill({ json: { tasks: [] } }));
|
|
49
|
+
const page = await ctx.newPage();
|
|
50
|
+
await page.goto('http://127.0.0.1:3000/', { waitUntil: 'networkidle' });
|
|
51
|
+
await page.waitForSelector('[data-topo-section-kicker]', { timeout: 15000, state: 'attached' });
|
|
52
|
+
await page.waitForTimeout(300);
|
|
53
|
+
|
|
54
|
+
const runtimeState = await page.evaluate(() => {
|
|
55
|
+
const k = document.querySelector('[data-topo-section-kicker]');
|
|
56
|
+
if (!k) return null;
|
|
57
|
+
const cs = getComputedStyle(k);
|
|
58
|
+
return {
|
|
59
|
+
has_class: k.classList.contains('anet-topo-kicker-breath'),
|
|
60
|
+
breath_attr: k.getAttribute('data-topo-section-kicker-breath'),
|
|
61
|
+
anim_name: cs.animationName,
|
|
62
|
+
anim_duration: cs.animationDuration,
|
|
63
|
+
anim_iter: cs.animationIterationCount,
|
|
64
|
+
};
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
await browser.close();
|
|
68
|
+
|
|
69
|
+
const cssSrc = readFileSync('/home/vansin/agent-network-dashboard/app/globals.css', 'utf8');
|
|
70
|
+
const tsxSrc = readFileSync('/home/vansin/agent-network-dashboard/app/components/TopoGraph.tsx', 'utf8');
|
|
71
|
+
|
|
72
|
+
const cssKeyframes = /@keyframes anet-topo-kicker-breath-kf\s*\{[\s\S]*?0%, 100%\s*\{\s*opacity:\s*1;\s*\}[\s\S]*?50%\s*\{\s*opacity:\s*0\.78;/.test(cssSrc);
|
|
73
|
+
const cssRule = /\.anet-topo-kicker-breath\s*\{[\s\S]*?animation:\s*anet-topo-kicker-breath-kf\s+6s\s+ease-in-out\s+infinite/.test(cssSrc);
|
|
74
|
+
const cssReducedMotion = /prefers-reduced-motion:\s*reduce\s*\)\s*\{\s*\.anet-topo-kicker-breath\s*\{\s*animation:\s*none/.test(cssSrc);
|
|
75
|
+
const tsxClass = /anet-topo-kicker-breath text-xs uppercase/.test(tsxSrc);
|
|
76
|
+
const tsxAttr = /data-topo-section-kicker-breath="6s"/.test(tsxSrc);
|
|
77
|
+
|
|
78
|
+
// Runtime animation may be 'none' under prefers-reduced-motion. In default
|
|
79
|
+
// headless playwright, motion is allowed by default, so the keyframe should
|
|
80
|
+
// be active (anim_name === 'anet-topo-kicker-breath-kf').
|
|
81
|
+
const runtimeAnim = runtimeState?.anim_name === 'anet-topo-kicker-breath-kf' || runtimeState?.anim_name === 'none';
|
|
82
|
+
const runtimeDuration = runtimeState?.anim_duration === '6s' || runtimeState?.anim_name === 'none';
|
|
83
|
+
|
|
84
|
+
const results = {
|
|
85
|
+
kicker_present: !!runtimeState,
|
|
86
|
+
has_breath_class: runtimeState?.has_class === true,
|
|
87
|
+
breath_attr_6s: runtimeState?.breath_attr === '6s',
|
|
88
|
+
runtime_anim_ok: runtimeAnim,
|
|
89
|
+
runtime_duration_ok: runtimeDuration,
|
|
90
|
+
css_keyframes: cssKeyframes,
|
|
91
|
+
css_rule: cssRule,
|
|
92
|
+
css_reduced_motion: cssReducedMotion,
|
|
93
|
+
tsx_class: tsxClass,
|
|
94
|
+
tsx_breath_attr: tsxAttr,
|
|
95
|
+
};
|
|
96
|
+
const ok = Object.values(results).every(Boolean);
|
|
97
|
+
console.log(`${ok ? '✅' : '❌'} R699 kicker at-rest breathing fade (3rd respiratory rhythm — 6s eyebrow):`,
|
|
98
|
+
JSON.stringify(results, null, 2),
|
|
99
|
+
`\n runtime: ${JSON.stringify(runtimeState)}`);
|
|
100
|
+
process.exit(ok ? 0 : 1);
|