@sleep2agi/agent-network-dashboard 0.5.3-preview.152 → 0.5.3-preview.154

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/diagnostics/route-bundle-stats.json +5 -5
  4. package/.next/fallback-build-manifest.json +3 -3
  5. package/.next/server/app/_global-error.html +1 -1
  6. package/.next/server/app/_global-error.rsc +1 -1
  7. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  12. package/.next/server/app/_not-found.html +1 -1
  13. package/.next/server/app/_not-found.rsc +1 -1
  14. package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  15. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  16. package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  17. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  18. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  19. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  20. package/.next/server/app/admin.html +1 -1
  21. package/.next/server/app/admin.rsc +1 -1
  22. package/.next/server/app/admin.segments/_full.segment.rsc +1 -1
  23. package/.next/server/app/admin.segments/_head.segment.rsc +1 -1
  24. package/.next/server/app/admin.segments/_index.segment.rsc +1 -1
  25. package/.next/server/app/admin.segments/_tree.segment.rsc +1 -1
  26. package/.next/server/app/admin.segments/admin/__PAGE__.segment.rsc +1 -1
  27. package/.next/server/app/admin.segments/admin.segment.rsc +1 -1
  28. package/.next/server/app/index.html +2 -2
  29. package/.next/server/app/index.rsc +2 -2
  30. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  31. package/.next/server/app/index.segments/_full.segment.rsc +2 -2
  32. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  33. package/.next/server/app/index.segments/_index.segment.rsc +1 -1
  34. package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  35. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  36. package/.next/server/app/login.html +2 -2
  37. package/.next/server/app/login.rsc +2 -2
  38. package/.next/server/app/login.segments/_full.segment.rsc +2 -2
  39. package/.next/server/app/login.segments/_head.segment.rsc +1 -1
  40. package/.next/server/app/login.segments/_index.segment.rsc +1 -1
  41. package/.next/server/app/login.segments/_tree.segment.rsc +1 -1
  42. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  43. package/.next/server/app/login.segments/login.segment.rsc +1 -1
  44. package/.next/server/app/logs.html +1 -1
  45. package/.next/server/app/logs.rsc +1 -1
  46. package/.next/server/app/logs.segments/_full.segment.rsc +1 -1
  47. package/.next/server/app/logs.segments/_head.segment.rsc +1 -1
  48. package/.next/server/app/logs.segments/_index.segment.rsc +1 -1
  49. package/.next/server/app/logs.segments/_tree.segment.rsc +1 -1
  50. package/.next/server/app/logs.segments/logs/__PAGE__.segment.rsc +1 -1
  51. package/.next/server/app/logs.segments/logs.segment.rsc +1 -1
  52. package/.next/server/app/messages.html +1 -1
  53. package/.next/server/app/messages.rsc +1 -1
  54. package/.next/server/app/messages.segments/_full.segment.rsc +1 -1
  55. package/.next/server/app/messages.segments/_head.segment.rsc +1 -1
  56. package/.next/server/app/messages.segments/_index.segment.rsc +1 -1
  57. package/.next/server/app/messages.segments/_tree.segment.rsc +1 -1
  58. package/.next/server/app/messages.segments/messages/__PAGE__.segment.rsc +1 -1
  59. package/.next/server/app/messages.segments/messages.segment.rsc +1 -1
  60. package/.next/server/app/node.html +1 -1
  61. package/.next/server/app/node.rsc +1 -1
  62. package/.next/server/app/node.segments/_full.segment.rsc +1 -1
  63. package/.next/server/app/node.segments/_head.segment.rsc +1 -1
  64. package/.next/server/app/node.segments/_index.segment.rsc +1 -1
  65. package/.next/server/app/node.segments/_tree.segment.rsc +1 -1
  66. package/.next/server/app/node.segments/node/__PAGE__.segment.rsc +1 -1
  67. package/.next/server/app/node.segments/node.segment.rsc +1 -1
  68. package/.next/server/app/nodes.html +1 -1
  69. package/.next/server/app/nodes.rsc +1 -1
  70. package/.next/server/app/nodes.segments/_full.segment.rsc +1 -1
  71. package/.next/server/app/nodes.segments/_head.segment.rsc +1 -1
  72. package/.next/server/app/nodes.segments/_index.segment.rsc +1 -1
  73. package/.next/server/app/nodes.segments/_tree.segment.rsc +1 -1
  74. package/.next/server/app/nodes.segments/nodes/__PAGE__.segment.rsc +1 -1
  75. package/.next/server/app/nodes.segments/nodes.segment.rsc +1 -1
  76. package/.next/server/app/page_client-reference-manifest.js +1 -1
  77. package/.next/server/app/server-logs.html +1 -1
  78. package/.next/server/app/server-logs.rsc +1 -1
  79. package/.next/server/app/server-logs.segments/_full.segment.rsc +1 -1
  80. package/.next/server/app/server-logs.segments/_head.segment.rsc +1 -1
  81. package/.next/server/app/server-logs.segments/_index.segment.rsc +1 -1
  82. package/.next/server/app/server-logs.segments/_tree.segment.rsc +1 -1
  83. package/.next/server/app/server-logs.segments/server-logs/__PAGE__.segment.rsc +1 -1
  84. package/.next/server/app/server-logs.segments/server-logs.segment.rsc +1 -1
  85. package/.next/server/app/settings/networks.html +1 -1
  86. package/.next/server/app/settings/networks.rsc +1 -1
  87. package/.next/server/app/settings/networks.segments/_full.segment.rsc +1 -1
  88. package/.next/server/app/settings/networks.segments/_head.segment.rsc +1 -1
  89. package/.next/server/app/settings/networks.segments/_index.segment.rsc +1 -1
  90. package/.next/server/app/settings/networks.segments/_tree.segment.rsc +1 -1
  91. package/.next/server/app/settings/networks.segments/settings/networks/__PAGE__.segment.rsc +1 -1
  92. package/.next/server/app/settings/networks.segments/settings/networks.segment.rsc +1 -1
  93. package/.next/server/app/settings/networks.segments/settings.segment.rsc +1 -1
  94. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  95. package/.next/server/app/settings/tokens.html +1 -1
  96. package/.next/server/app/settings/tokens.rsc +1 -1
  97. package/.next/server/app/settings/tokens.segments/_full.segment.rsc +1 -1
  98. package/.next/server/app/settings/tokens.segments/_head.segment.rsc +1 -1
  99. package/.next/server/app/settings/tokens.segments/_index.segment.rsc +1 -1
  100. package/.next/server/app/settings/tokens.segments/_tree.segment.rsc +1 -1
  101. package/.next/server/app/settings/tokens.segments/settings/tokens/__PAGE__.segment.rsc +1 -1
  102. package/.next/server/app/settings/tokens.segments/settings/tokens.segment.rsc +1 -1
  103. package/.next/server/app/settings/tokens.segments/settings.segment.rsc +1 -1
  104. package/.next/server/app/settings.html +2 -2
  105. package/.next/server/app/settings.rsc +2 -2
  106. package/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  107. package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  108. package/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  109. package/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  110. package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +2 -2
  111. package/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  112. package/.next/server/app/tasks.html +1 -1
  113. package/.next/server/app/tasks.rsc +1 -1
  114. package/.next/server/app/tasks.segments/_full.segment.rsc +1 -1
  115. package/.next/server/app/tasks.segments/_head.segment.rsc +1 -1
  116. package/.next/server/app/tasks.segments/_index.segment.rsc +1 -1
  117. package/.next/server/app/tasks.segments/_tree.segment.rsc +1 -1
  118. package/.next/server/app/tasks.segments/tasks/__PAGE__.segment.rsc +1 -1
  119. package/.next/server/app/tasks.segments/tasks.segment.rsc +1 -1
  120. package/.next/server/chunks/ssr/[root-of-the-server]__0sv~g.o._.js +1 -1
  121. package/.next/server/chunks/ssr/[root-of-the-server]__0sv~g.o._.js.map +1 -1
  122. package/.next/server/chunks/ssr/agent-network-dashboard_09kk21a._.js +1 -1
  123. package/.next/server/chunks/ssr/agent-network-dashboard_09kk21a._.js.map +1 -1
  124. package/.next/server/chunks/ssr/agent-network-dashboard_app_01jhlxz._.js +1 -1
  125. package/.next/server/chunks/ssr/agent-network-dashboard_app_01jhlxz._.js.map +1 -1
  126. package/.next/server/chunks/ssr/agent-network-dashboard_app_09d29my._.js +1 -1
  127. package/.next/server/chunks/ssr/agent-network-dashboard_app_09d29my._.js.map +1 -1
  128. package/.next/server/middleware-build-manifest.js +3 -3
  129. package/.next/server/pages/404.html +1 -1
  130. package/.next/server/pages/500.html +1 -1
  131. package/.next/static/chunks/{036jugd~o8l1c.js → 06pyawcqjwmc6.js} +1 -1
  132. package/.next/static/chunks/{0ld_dmd49l5hq.js → 0782jdyt.1_08.js} +1 -1
  133. package/.next/static/chunks/{00m4asberxvr7.js → 0me-85ctkkmuu.js} +1 -1
  134. package/.next/static/chunks/{0.-6oys~f95fe.js → 13hb-60p4ibzg.js} +1 -1
  135. package/.next/trace +2 -2
  136. package/.next/trace-build +1 -1
  137. package/app/components/TopoGraph.tsx +93 -2
  138. package/package.json +1 -1
  139. package/scripts/topo-chat-ring-r-breath-test.mjs +121 -0
  140. package/scripts/topo-endpoint-ring-flow-halo-test.mjs +107 -0
  141. /package/.next/static/{zNLqQ2k6ryD1jsQHN60IJ → MHzMBbgm9fOF5nteNsABb}/_buildManifest.js +0 -0
  142. /package/.next/static/{zNLqQ2k6ryD1jsQHN60IJ → MHzMBbgm9fOF5nteNsABb}/_clientMiddlewareManifest.js +0 -0
  143. /package/.next/static/{zNLqQ2k6ryD1jsQHN60IJ → MHzMBbgm9fOF5nteNsABb}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,70286,e=>{"use strict";e.s(["DASHBOARD_VERSION",0,"0.5.3-preview.152"],70286)},48941,e=>{"use strict";var t=e.i(22381),r=e.i(23910),a=e.i(70286);e.s(["default",0,function(){let[e,s]=(0,r.useState)("login"),[n,o]=(0,r.useState)(""),[i,l]=(0,r.useState)(""),[c,d]=(0,r.useState)(!1),[x,g]=(0,r.useState)(""),[h,m]=(0,r.useState)(!1),u=async t=>{t.preventDefault(),m(!0),g("");try{let t=await fetch("/api/auth/v3",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:e,username:n,password:i})}),r=await t.json();if(r.ok){r.token&&sessionStorage.setItem("anet_v3_auth",JSON.stringify({user:r.user,token:r.token,networks:r.networks||[],currentNetwork:r.network_id||r.networks?.[0]?.network_id||""})),window.location.assign("/");return}g(r.error||"Login failed")}catch{g("Connection failed")}m(!1)};return(0,t.jsxs)("main",{className:"min-h-screen bg-[#0a0a1a] text-gray-100 font-mono flex items-center justify-center relative overflow-hidden px-4 py-10 sm:py-16",children:[(0,t.jsx)("div",{className:"absolute inset-0 pointer-events-none anet-login-bg","aria-hidden":!0}),(0,t.jsxs)("div",{className:"relative w-full max-w-sm",children:[(0,t.jsxs)("div",{className:"text-center mb-7",children:[(0,t.jsx)("div",{className:"inline-flex items-center justify-center w-16 h-16 mb-4 rounded-2xl bg-[#111128] border border-[#2a2a4a] anet-login-mark",children:(0,t.jsxs)("svg",{className:"w-9 h-9",viewBox:"0 0 32 32","aria-hidden":!0,children:[(0,t.jsx)("circle",{cx:"16",cy:"16",r:"10",fill:"none",stroke:"currentColor",strokeWidth:"1.5",opacity:"0.25",className:"text-cyan-400 anet-login-mark-ring"}),(0,t.jsx)("line",{x1:"16",y1:"10",x2:"10",y2:"20",stroke:"currentColor",strokeWidth:"1",opacity:"0.5",className:"text-cyan-400 anet-login-mark-edge"}),(0,t.jsx)("line",{x1:"16",y1:"10",x2:"22",y2:"20",stroke:"currentColor",strokeWidth:"1",opacity:"0.5",className:"text-cyan-400 anet-login-mark-edge"}),(0,t.jsx)("line",{x1:"10",y1:"20",x2:"22",y2:"20",stroke:"currentColor",strokeWidth:"1",opacity:"0.5",className:"text-cyan-400 anet-login-mark-edge"}),(0,t.jsx)("circle",{cx:"16",cy:"10",r:"3",fill:"currentColor",className:"text-cyan-400 anet-login-mark-node-a"}),(0,t.jsx)("circle",{cx:"10",cy:"20",r:"3",fill:"currentColor",className:"text-green-400 anet-login-mark-node-b"}),(0,t.jsx)("circle",{cx:"22",cy:"20",r:"3",fill:"currentColor",className:"text-violet-400 anet-login-mark-node-c"})]})}),(0,t.jsx)("h1",{className:"text-[22px] sm:text-2xl font-semibold text-white tracking-tight",children:"Agent Network"}),(0,t.jsx)("p",{className:"text-[13px] text-gray-500 mt-1.5 leading-snug",children:"login"===e?(0,t.jsxs)(t.Fragment,{children:["Welcome back · ",(0,t.jsx)("span",{className:"text-gray-600",children:"Tasks · Mesh · Messages"})]}):(0,t.jsxs)(t.Fragment,{children:["Create your account · ",(0,t.jsx)("span",{className:"text-gray-600",children:"Free preview · no credit card"})]})})]}),(0,t.jsx)("div",{className:"flex rounded-lg border border-[#2a2a4a] bg-[#111128] p-1 mb-4",children:["login","register"].map(r=>(0,t.jsx)("button",{type:"button",onClick:()=>{s(r),g("")},className:`flex-1 rounded-md px-3 py-2 text-sm transition-colors ${e===r?"bg-cyan-500/10 text-cyan-300":"text-gray-500 hover:text-gray-200"}`,children:"login"===r?"Sign in":"Register"},r))}),(0,t.jsxs)("form",{onSubmit:u,className:"border border-[#2a2a4a] bg-[#111128]/80 backdrop-blur-sm rounded-xl p-6 shadow-2xl shadow-black/30",children:[(0,t.jsx)("label",{htmlFor:"username",className:"block text-xs text-gray-500 mb-2 uppercase tracking-wider",children:"Username"}),(0,t.jsx)("input",{id:"username",type:"text",value:n,onChange:e=>o(e.target.value),autoFocus:!0,placeholder:"Enter username",className:"w-full bg-[#0a0a15] border border-[#2a2a4a] rounded-lg px-4 py-3 text-sm text-white placeholder-gray-600 focus:border-cyan-500/50 focus:ring-1 focus:ring-cyan-500/20 focus:outline-none transition-all mb-4"}),(0,t.jsx)("label",{htmlFor:"password",className:"block text-xs text-gray-500 mb-2 uppercase tracking-wider",children:"Password"}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("input",{id:"password",type:c?"text":"password",value:i,onChange:e=>l(e.target.value),placeholder:"Enter password",className:"w-full bg-[#0a0a15] border border-[#2a2a4a] rounded-lg px-4 pr-11 py-3 text-sm text-white placeholder-gray-600 focus:border-cyan-500/50 focus:ring-1 focus:ring-cyan-500/20 focus:outline-none transition-all"}),(0,t.jsx)("button",{type:"button",onClick:()=>d(e=>!e),tabIndex:-1,"aria-label":c?"Hide password":"Show password",className:"absolute inset-y-0 right-0 flex items-center px-3 text-gray-600 hover:text-gray-300 transition-colors",children:c?(0,t.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24"}),(0,t.jsx)("line",{x1:"1",y1:"1",x2:"23",y2:"23"})]}):(0,t.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"}),(0,t.jsx)("circle",{cx:"12",cy:"12",r:"3"})]})})]}),x&&(0,t.jsx)("div",{className:"mt-3 text-sm text-red-300 bg-red-500/5 border border-red-500/10 rounded-lg px-3 py-2",children:x}),(0,t.jsxs)("button",{type:"submit",disabled:h||!i||!n.trim(),className:"mt-5 w-full flex items-center justify-center gap-2 px-4 py-3 bg-gradient-to-r from-cyan-600 to-blue-600 hover:from-cyan-500 hover:to-blue-500 disabled:from-gray-800 disabled:to-gray-800 disabled:text-gray-600 text-white text-sm font-medium rounded-lg transition-all shadow-lg shadow-cyan-500/10 hover:shadow-cyan-500/20 disabled:shadow-none",children:[h&&(0,t.jsxs)("svg",{"aria-hidden":!0,className:"w-4 h-4 animate-spin",viewBox:"0 0 24 24",fill:"none",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"3",opacity:"0.25"}),(0,t.jsx)("path",{d:"M4 12a8 8 0 018-8",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round"})]}),(0,t.jsx)("span",{children:h?"login"===e?"Signing in…":"Registering…":"login"===e?"Sign in":"Create account"})]})]}),(0,t.jsxs)("p",{className:"text-center text-[11px] text-gray-700 mt-6",children:["Sleep2AGI · Apache-2.0 · ",(0,t.jsx)("a",{href:"https://anet.sh",className:"hover:text-gray-500 transition-colors",children:"anet.sh"}),(0,t.jsx)("span",{className:"mx-1 text-gray-800",children:"·"}),(0,t.jsxs)("span",{className:"font-mono",title:"@sleep2agi/agent-network-dashboard",children:["v",a.DASHBOARD_VERSION]})]})]})]})}])}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,70286,e=>{"use strict";e.s(["DASHBOARD_VERSION",0,"0.5.3-preview.154"],70286)},48941,e=>{"use strict";var t=e.i(22381),r=e.i(23910),a=e.i(70286);e.s(["default",0,function(){let[e,s]=(0,r.useState)("login"),[n,o]=(0,r.useState)(""),[i,l]=(0,r.useState)(""),[c,d]=(0,r.useState)(!1),[x,g]=(0,r.useState)(""),[h,m]=(0,r.useState)(!1),u=async t=>{t.preventDefault(),m(!0),g("");try{let t=await fetch("/api/auth/v3",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:e,username:n,password:i})}),r=await t.json();if(r.ok){r.token&&sessionStorage.setItem("anet_v3_auth",JSON.stringify({user:r.user,token:r.token,networks:r.networks||[],currentNetwork:r.network_id||r.networks?.[0]?.network_id||""})),window.location.assign("/");return}g(r.error||"Login failed")}catch{g("Connection failed")}m(!1)};return(0,t.jsxs)("main",{className:"min-h-screen bg-[#0a0a1a] text-gray-100 font-mono flex items-center justify-center relative overflow-hidden px-4 py-10 sm:py-16",children:[(0,t.jsx)("div",{className:"absolute inset-0 pointer-events-none anet-login-bg","aria-hidden":!0}),(0,t.jsxs)("div",{className:"relative w-full max-w-sm",children:[(0,t.jsxs)("div",{className:"text-center mb-7",children:[(0,t.jsx)("div",{className:"inline-flex items-center justify-center w-16 h-16 mb-4 rounded-2xl bg-[#111128] border border-[#2a2a4a] anet-login-mark",children:(0,t.jsxs)("svg",{className:"w-9 h-9",viewBox:"0 0 32 32","aria-hidden":!0,children:[(0,t.jsx)("circle",{cx:"16",cy:"16",r:"10",fill:"none",stroke:"currentColor",strokeWidth:"1.5",opacity:"0.25",className:"text-cyan-400 anet-login-mark-ring"}),(0,t.jsx)("line",{x1:"16",y1:"10",x2:"10",y2:"20",stroke:"currentColor",strokeWidth:"1",opacity:"0.5",className:"text-cyan-400 anet-login-mark-edge"}),(0,t.jsx)("line",{x1:"16",y1:"10",x2:"22",y2:"20",stroke:"currentColor",strokeWidth:"1",opacity:"0.5",className:"text-cyan-400 anet-login-mark-edge"}),(0,t.jsx)("line",{x1:"10",y1:"20",x2:"22",y2:"20",stroke:"currentColor",strokeWidth:"1",opacity:"0.5",className:"text-cyan-400 anet-login-mark-edge"}),(0,t.jsx)("circle",{cx:"16",cy:"10",r:"3",fill:"currentColor",className:"text-cyan-400 anet-login-mark-node-a"}),(0,t.jsx)("circle",{cx:"10",cy:"20",r:"3",fill:"currentColor",className:"text-green-400 anet-login-mark-node-b"}),(0,t.jsx)("circle",{cx:"22",cy:"20",r:"3",fill:"currentColor",className:"text-violet-400 anet-login-mark-node-c"})]})}),(0,t.jsx)("h1",{className:"text-[22px] sm:text-2xl font-semibold text-white tracking-tight",children:"Agent Network"}),(0,t.jsx)("p",{className:"text-[13px] text-gray-500 mt-1.5 leading-snug",children:"login"===e?(0,t.jsxs)(t.Fragment,{children:["Welcome back · ",(0,t.jsx)("span",{className:"text-gray-600",children:"Tasks · Mesh · Messages"})]}):(0,t.jsxs)(t.Fragment,{children:["Create your account · ",(0,t.jsx)("span",{className:"text-gray-600",children:"Free preview · no credit card"})]})})]}),(0,t.jsx)("div",{className:"flex rounded-lg border border-[#2a2a4a] bg-[#111128] p-1 mb-4",children:["login","register"].map(r=>(0,t.jsx)("button",{type:"button",onClick:()=>{s(r),g("")},className:`flex-1 rounded-md px-3 py-2 text-sm transition-colors ${e===r?"bg-cyan-500/10 text-cyan-300":"text-gray-500 hover:text-gray-200"}`,children:"login"===r?"Sign in":"Register"},r))}),(0,t.jsxs)("form",{onSubmit:u,className:"border border-[#2a2a4a] bg-[#111128]/80 backdrop-blur-sm rounded-xl p-6 shadow-2xl shadow-black/30",children:[(0,t.jsx)("label",{htmlFor:"username",className:"block text-xs text-gray-500 mb-2 uppercase tracking-wider",children:"Username"}),(0,t.jsx)("input",{id:"username",type:"text",value:n,onChange:e=>o(e.target.value),autoFocus:!0,placeholder:"Enter username",className:"w-full bg-[#0a0a15] border border-[#2a2a4a] rounded-lg px-4 py-3 text-sm text-white placeholder-gray-600 focus:border-cyan-500/50 focus:ring-1 focus:ring-cyan-500/20 focus:outline-none transition-all mb-4"}),(0,t.jsx)("label",{htmlFor:"password",className:"block text-xs text-gray-500 mb-2 uppercase tracking-wider",children:"Password"}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("input",{id:"password",type:c?"text":"password",value:i,onChange:e=>l(e.target.value),placeholder:"Enter password",className:"w-full bg-[#0a0a15] border border-[#2a2a4a] rounded-lg px-4 pr-11 py-3 text-sm text-white placeholder-gray-600 focus:border-cyan-500/50 focus:ring-1 focus:ring-cyan-500/20 focus:outline-none transition-all"}),(0,t.jsx)("button",{type:"button",onClick:()=>d(e=>!e),tabIndex:-1,"aria-label":c?"Hide password":"Show password",className:"absolute inset-y-0 right-0 flex items-center px-3 text-gray-600 hover:text-gray-300 transition-colors",children:c?(0,t.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24"}),(0,t.jsx)("line",{x1:"1",y1:"1",x2:"23",y2:"23"})]}):(0,t.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"}),(0,t.jsx)("circle",{cx:"12",cy:"12",r:"3"})]})})]}),x&&(0,t.jsx)("div",{className:"mt-3 text-sm text-red-300 bg-red-500/5 border border-red-500/10 rounded-lg px-3 py-2",children:x}),(0,t.jsxs)("button",{type:"submit",disabled:h||!i||!n.trim(),className:"mt-5 w-full flex items-center justify-center gap-2 px-4 py-3 bg-gradient-to-r from-cyan-600 to-blue-600 hover:from-cyan-500 hover:to-blue-500 disabled:from-gray-800 disabled:to-gray-800 disabled:text-gray-600 text-white text-sm font-medium rounded-lg transition-all shadow-lg shadow-cyan-500/10 hover:shadow-cyan-500/20 disabled:shadow-none",children:[h&&(0,t.jsxs)("svg",{"aria-hidden":!0,className:"w-4 h-4 animate-spin",viewBox:"0 0 24 24",fill:"none",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"3",opacity:"0.25"}),(0,t.jsx)("path",{d:"M4 12a8 8 0 018-8",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round"})]}),(0,t.jsx)("span",{children:h?"login"===e?"Signing in…":"Registering…":"login"===e?"Sign in":"Create account"})]})]}),(0,t.jsxs)("p",{className:"text-center text-[11px] text-gray-700 mt-6",children:["Sleep2AGI · Apache-2.0 · ",(0,t.jsx)("a",{href:"https://anet.sh",className:"hover:text-gray-500 transition-colors",children:"anet.sh"}),(0,t.jsx)("span",{className:"mx-1 text-gray-800",children:"·"}),(0,t.jsxs)("span",{className:"font-mono",title:"@sleep2agi/agent-network-dashboard",children:["v",a.DASHBOARD_VERSION]})]})]})]})}])}]);
package/.next/trace CHANGED
@@ -1,2 +1,2 @@
1
- [{"name":"generate-buildid","duration":274,"timestamp":247262585266,"id":4,"parentId":1,"tags":{},"startTime":1779055234832,"traceId":"ed54710afc013dcd"},{"name":"load-custom-routes","duration":503,"timestamp":247262585680,"id":5,"parentId":1,"tags":{},"startTime":1779055234832,"traceId":"ed54710afc013dcd"},{"name":"create-dist-dir","duration":677,"timestamp":247262586228,"id":6,"parentId":1,"tags":{},"startTime":1779055234833,"traceId":"ed54710afc013dcd"},{"name":"clean","duration":32040,"timestamp":247262587585,"id":7,"parentId":1,"tags":{},"startTime":1779055234834,"traceId":"ed54710afc013dcd"},{"name":"discover-routes","duration":27421,"timestamp":247262702953,"id":8,"parentId":1,"tags":{},"startTime":1779055234949,"traceId":"ed54710afc013dcd"},{"name":"create-root-mapping","duration":138,"timestamp":247262730431,"id":9,"parentId":1,"tags":{},"startTime":1779055234977,"traceId":"ed54710afc013dcd"},{"name":"generate-route-types","duration":19377,"timestamp":247262733176,"id":10,"parentId":1,"tags":{},"startTime":1779055234979,"traceId":"ed54710afc013dcd"},{"name":"public-dir-conflict-check","duration":113,"timestamp":247262752631,"id":11,"parentId":1,"tags":{},"startTime":1779055234999,"traceId":"ed54710afc013dcd"},{"name":"generate-routes-manifest","duration":4877,"timestamp":247262752851,"id":12,"parentId":1,"tags":{},"startTime":1779055234999,"traceId":"ed54710afc013dcd"},{"name":"run-turbopack","duration":5862083,"timestamp":247262763371,"id":14,"parentId":1,"tags":{},"startTime":1779055235010,"traceId":"ed54710afc013dcd"},{"name":"turbopack-build-events","duration":72,"timestamp":247263054887,"id":15,"parentId":1,"tags":{},"startTime":1779055235301,"traceId":"ed54710afc013dcd"},{"name":"run-typescript","duration":9693213,"timestamp":247268637660,"id":16,"parentId":1,"tags":{},"startTime":1779055240884,"traceId":"ed54710afc013dcd"},{"name":"generate-required-server-files","duration":2430,"timestamp":247278332033,"id":18,"parentId":1,"tags":{},"startTime":1779055250578,"traceId":"ed54710afc013dcd"},{"name":"check-static-error-page","duration":14680,"timestamp":247278492793,"id":20,"parentId":19,"tags":{},"startTime":1779055250739,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":499488,"timestamp":247278511639,"id":65,"parentId":22,"tags":{},"startTime":1779055250758,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":515319,"timestamp":247278495972,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1779055250742,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":513661,"timestamp":247278511945,"id":69,"parentId":28,"tags":{},"startTime":1779055250758,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":526258,"timestamp":247278499434,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1779055250746,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":537146,"timestamp":247278512266,"id":72,"parentId":32,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":549414,"timestamp":247278500077,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1779055250746,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":565910,"timestamp":247278512364,"id":73,"parentId":33,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":578151,"timestamp":247278500219,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1779055250746,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":574679,"timestamp":247278512420,"id":74,"parentId":34,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":586848,"timestamp":247278500337,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1779055250747,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":578605,"timestamp":247278512439,"id":75,"parentId":35,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":590593,"timestamp":247278500532,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1779055250747,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":583146,"timestamp":247278512449,"id":76,"parentId":36,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":594560,"timestamp":247278501098,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1779055250747,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":588037,"timestamp":247278512467,"id":77,"parentId":37,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":599284,"timestamp":247278501280,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1779055250748,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":592480,"timestamp":247278512478,"id":78,"parentId":38,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":603637,"timestamp":247278501394,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1779055250748,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":599718,"timestamp":247278512487,"id":79,"parentId":39,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":610747,"timestamp":247278501508,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1779055250748,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":604988,"timestamp":247278512492,"id":80,"parentId":40,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":615934,"timestamp":247278501600,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1779055250748,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":620035,"timestamp":247278512501,"id":81,"parentId":42,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":630707,"timestamp":247278501909,"id":42,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/health"},"startTime":1779055250748,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":622042,"timestamp":247278511803,"id":67,"parentId":26,"tags":{},"startTime":1779055250758,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":634717,"timestamp":247278499192,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1779055250745,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":627041,"timestamp":247278511347,"id":64,"parentId":21,"tags":{},"startTime":1779055250758,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":644067,"timestamp":247278494384,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1779055250741,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":626659,"timestamp":247278512511,"id":82,"parentId":44,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":636894,"timestamp":247278502327,"id":44,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1779055250749,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":626875,"timestamp":247278512517,"id":83,"parentId":45,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":635579,"timestamp":247278503852,"id":45,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1779055250750,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":633694,"timestamp":247278512134,"id":70,"parentId":29,"tags":{},"startTime":1779055250758,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":646341,"timestamp":247278499554,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1779055250746,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":633536,"timestamp":247278512534,"id":85,"parentId":47,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":641971,"timestamp":247278504133,"id":47,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1779055250750,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":644079,"timestamp":247278512547,"id":87,"parentId":49,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":652400,"timestamp":247278504272,"id":49,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1779055250751,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":644274,"timestamp":247278512556,"id":88,"parentId":50,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":652556,"timestamp":247278504322,"id":50,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1779055250751,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":643572,"timestamp":247278520068,"id":90,"parentId":24,"tags":{},"startTime":1779055250766,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":667139,"timestamp":247278496549,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1779055250743,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":653649,"timestamp":247278512542,"id":86,"parentId":48,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":662037,"timestamp":247278504198,"id":48,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1779055250750,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":648758,"timestamp":247278521192,"id":91,"parentId":31,"tags":{},"startTime":1779055250767,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":670167,"timestamp":247278499824,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1779055250746,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":660836,"timestamp":247278511732,"id":66,"parentId":25,"tags":{},"startTime":1779055250758,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":673592,"timestamp":247278499024,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1779055250745,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":648580,"timestamp":247278526791,"id":93,"parentId":43,"tags":{},"startTime":1779055250773,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":673356,"timestamp":247278502058,"id":43,"parentId":19,"tags":{"page":"/api/hub/servers"},"startTime":1779055250748,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":675589,"timestamp":247278512227,"id":71,"parentId":30,"tags":{},"startTime":1779055250758,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":688181,"timestamp":247278499707,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1779055250746,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":663701,"timestamp":247278525317,"id":92,"parentId":41,"tags":{},"startTime":1779055250772,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":687401,"timestamp":247278501670,"id":41,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/agents"},"startTime":1779055250748,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":678651,"timestamp":247278511884,"id":68,"parentId":27,"tags":{},"startTime":1779055250758,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":691271,"timestamp":247278499306,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1779055250746,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":686268,"timestamp":247278512564,"id":89,"parentId":51,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":694527,"timestamp":247278504367,"id":51,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1779055250751,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":733948,"timestamp":247278512525,"id":84,"parentId":46,"tags":{},"startTime":1779055250759,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":742556,"timestamp":247278503992,"id":46,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1779055250750,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":697499,"timestamp":247278550175,"id":96,"parentId":53,"tags":{},"startTime":1779055250796,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":742967,"timestamp":247278504768,"id":53,"parentId":19,"tags":{"page":"/logs"},"startTime":1779055250751,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":705217,"timestamp":247278550348,"id":101,"parentId":59,"tags":{},"startTime":1779055250797,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":749650,"timestamp":247278505976,"id":59,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1779055250752,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":705901,"timestamp":247278550162,"id":95,"parentId":52,"tags":{},"startTime":1779055250796,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":751464,"timestamp":247278504667,"id":52,"parentId":19,"tags":{"page":"/login"},"startTime":1779055250751,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":706107,"timestamp":247278550190,"id":97,"parentId":54,"tags":{},"startTime":1779055250796,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":751458,"timestamp":247278504874,"id":54,"parentId":19,"tags":{"page":"/messages"},"startTime":1779055250751,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":706364,"timestamp":247278550226,"id":100,"parentId":58,"tags":{},"startTime":1779055250796,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":750867,"timestamp":247278505768,"id":58,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1779055250752,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":713952,"timestamp":247278550425,"id":105,"parentId":60,"tags":{},"startTime":1779055250797,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":758236,"timestamp":247278506182,"id":60,"parentId":19,"tags":{"page":"/settings"},"startTime":1779055250752,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":714129,"timestamp":247278550369,"id":102,"parentId":61,"tags":{},"startTime":1779055250797,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":757892,"timestamp":247278506632,"id":61,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1779055250753,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":714841,"timestamp":247278550411,"id":104,"parentId":63,"tags":{},"startTime":1779055250797,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":758339,"timestamp":247278506957,"id":63,"parentId":19,"tags":{"page":"/tasks"},"startTime":1779055250753,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":716719,"timestamp":247278550379,"id":103,"parentId":62,"tags":{},"startTime":1779055250797,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":760348,"timestamp":247278506786,"id":62,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1779055250753,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":708568,"timestamp":247278564104,"id":106,"parentId":57,"tags":{},"startTime":1779055250810,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":767330,"timestamp":247278505378,"id":57,"parentId":19,"tags":{"page":"/"},"startTime":1779055250752,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":728114,"timestamp":247278550217,"id":99,"parentId":56,"tags":{},"startTime":1779055250796,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":773188,"timestamp":247278505176,"id":56,"parentId":19,"tags":{"page":"/nodes"},"startTime":1779055250751,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":736470,"timestamp":247278550118,"id":94,"parentId":23,"tags":{},"startTime":1779055250796,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":790334,"timestamp":247278496287,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1779055250743,"traceId":"ed54710afc013dcd"},{"name":"is-page-static","duration":755188,"timestamp":247278550204,"id":98,"parentId":55,"tags":{},"startTime":1779055250796,"traceId":"ed54710afc013dcd"},{"name":"check-page","duration":800401,"timestamp":247278505030,"id":55,"parentId":19,"tags":{"page":"/node"},"startTime":1779055250751,"traceId":"ed54710afc013dcd"},{"name":"static-check","duration":813820,"timestamp":247278491648,"id":19,"parentId":1,"tags":{},"startTime":1779055250738,"traceId":"ed54710afc013dcd"}]
2
- [{"name":"write-routes-manifest","duration":629,"timestamp":247279315760,"id":108,"parentId":1,"tags":{},"startTime":1779055251562,"traceId":"ed54710afc013dcd"},{"name":"load-dotenv","duration":58,"timestamp":247279328422,"id":111,"parentId":110,"tags":{},"startTime":1779055251575,"traceId":"ed54710afc013dcd"},{"name":"run-export-path-map","duration":808,"timestamp":247279331589,"id":112,"parentId":110,"tags":{},"startTime":1779055251578,"traceId":"ed54710afc013dcd"},{"name":"next-export","duration":560024,"timestamp":247279326567,"id":110,"parentId":1,"tags":{},"startTime":1779055251573,"traceId":"ed54710afc013dcd"},{"name":"move-exported-app-not-found-","duration":542,"timestamp":247279889558,"id":113,"parentId":109,"tags":{},"startTime":1779055252136,"traceId":"ed54710afc013dcd"},{"name":"move-exported-app-global-error-","duration":443,"timestamp":247279890194,"id":114,"parentId":109,"tags":{},"startTime":1779055252136,"traceId":"ed54710afc013dcd"},{"name":"static-generation","duration":572776,"timestamp":247279320240,"id":109,"parentId":1,"tags":{},"startTime":1779055251567,"traceId":"ed54710afc013dcd"},{"name":"write-routes-manifest","duration":401,"timestamp":247279893256,"id":115,"parentId":1,"tags":{},"startTime":1779055252140,"traceId":"ed54710afc013dcd"},{"name":"print-tree-view","duration":4725,"timestamp":247279901449,"id":116,"parentId":1,"tags":{},"startTime":1779055252148,"traceId":"ed54710afc013dcd"},{"name":"write-route-bundle-stats","duration":17369,"timestamp":247279906206,"id":117,"parentId":1,"tags":{},"startTime":1779055252152,"traceId":"ed54710afc013dcd"},{"name":"telemetry-flush","duration":22155,"timestamp":247279923605,"id":118,"parentId":1,"tags":{},"startTime":1779055252170,"traceId":"ed54710afc013dcd"},{"name":"next-build","duration":17412037,"timestamp":247262533758,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1779055234780,"traceId":"ed54710afc013dcd"}]
1
+ [{"name":"generate-buildid","duration":285,"timestamp":247995606021,"id":4,"parentId":1,"tags":{},"startTime":1779055967852,"traceId":"ffaa17295a86809b"},{"name":"load-custom-routes","duration":480,"timestamp":247995606455,"id":5,"parentId":1,"tags":{},"startTime":1779055967853,"traceId":"ffaa17295a86809b"},{"name":"create-dist-dir","duration":775,"timestamp":247995606981,"id":6,"parentId":1,"tags":{},"startTime":1779055967853,"traceId":"ffaa17295a86809b"},{"name":"clean","duration":37226,"timestamp":247995608593,"id":7,"parentId":1,"tags":{},"startTime":1779055967855,"traceId":"ffaa17295a86809b"},{"name":"discover-routes","duration":8505,"timestamp":247995727622,"id":8,"parentId":1,"tags":{},"startTime":1779055967974,"traceId":"ffaa17295a86809b"},{"name":"create-root-mapping","duration":120,"timestamp":247995736187,"id":9,"parentId":1,"tags":{},"startTime":1779055967982,"traceId":"ffaa17295a86809b"},{"name":"generate-route-types","duration":20063,"timestamp":247995739070,"id":10,"parentId":1,"tags":{},"startTime":1779055967985,"traceId":"ffaa17295a86809b"},{"name":"public-dir-conflict-check","duration":123,"timestamp":247995759221,"id":11,"parentId":1,"tags":{},"startTime":1779055968006,"traceId":"ffaa17295a86809b"},{"name":"generate-routes-manifest","duration":4689,"timestamp":247995759466,"id":12,"parentId":1,"tags":{},"startTime":1779055968006,"traceId":"ffaa17295a86809b"},{"name":"run-turbopack","duration":6582573,"timestamp":247995770748,"id":14,"parentId":1,"tags":{},"startTime":1779055968017,"traceId":"ffaa17295a86809b"},{"name":"turbopack-build-events","duration":99,"timestamp":247996074414,"id":15,"parentId":1,"tags":{},"startTime":1779055968321,"traceId":"ffaa17295a86809b"},{"name":"run-typescript","duration":10097203,"timestamp":248002369500,"id":16,"parentId":1,"tags":{},"startTime":1779055974616,"traceId":"ffaa17295a86809b"},{"name":"generate-required-server-files","duration":2498,"timestamp":248012468062,"id":18,"parentId":1,"tags":{},"startTime":1779055984714,"traceId":"ffaa17295a86809b"},{"name":"check-static-error-page","duration":12561,"timestamp":248012663510,"id":20,"parentId":19,"tags":{},"startTime":1779055984910,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":475561,"timestamp":248012679832,"id":65,"parentId":22,"tags":{},"startTime":1779055984926,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":489648,"timestamp":248012665896,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1779055984912,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":644115,"timestamp":248012680036,"id":67,"parentId":26,"tags":{},"startTime":1779055984926,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":655522,"timestamp":248012668738,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1779055984915,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":649949,"timestamp":248012680569,"id":72,"parentId":32,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":661165,"timestamp":248012669422,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1779055984916,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":660856,"timestamp":248012680117,"id":68,"parentId":27,"tags":{},"startTime":1779055984926,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":672237,"timestamp":248012668819,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1779055984915,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":665471,"timestamp":248012680780,"id":74,"parentId":34,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":676729,"timestamp":248012669591,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1779055984916,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":682202,"timestamp":248012680709,"id":73,"parentId":33,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":693734,"timestamp":248012669517,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1779055984916,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":684163,"timestamp":248012679950,"id":66,"parentId":25,"tags":{},"startTime":1779055984926,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":695586,"timestamp":248012668595,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1779055984915,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":700273,"timestamp":248012680823,"id":76,"parentId":36,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":711101,"timestamp":248012670066,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1779055984916,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":707541,"timestamp":248012680801,"id":75,"parentId":35,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":718746,"timestamp":248012669671,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1779055984916,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":711492,"timestamp":248012680878,"id":78,"parentId":38,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":722070,"timestamp":248012670356,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1779055984917,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":713822,"timestamp":248012680864,"id":77,"parentId":37,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":724483,"timestamp":248012670252,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1779055984917,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":715939,"timestamp":248012680891,"id":79,"parentId":39,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":726462,"timestamp":248012670423,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1779055984917,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":720986,"timestamp":248012680928,"id":82,"parentId":44,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":730920,"timestamp":248012671047,"id":44,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1779055984917,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":721961,"timestamp":248012680903,"id":80,"parentId":40,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":732420,"timestamp":248012670488,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1779055984917,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":729684,"timestamp":248012680948,"id":83,"parentId":45,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":739538,"timestamp":248012671139,"id":45,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1779055984917,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":732576,"timestamp":248012680962,"id":84,"parentId":46,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":742381,"timestamp":248012671203,"id":46,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1779055984917,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":737839,"timestamp":248012680974,"id":85,"parentId":47,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":747611,"timestamp":248012671276,"id":47,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1779055984918,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":739017,"timestamp":248012680917,"id":81,"parentId":42,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":749724,"timestamp":248012670729,"id":42,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/health"},"startTime":1779055984917,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":741164,"timestamp":248012680987,"id":86,"parentId":48,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":749649,"timestamp":248012672548,"id":48,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1779055984919,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":745198,"timestamp":248012680509,"id":71,"parentId":30,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":756623,"timestamp":248012669132,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1779055984915,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":744875,"timestamp":248012681025,"id":88,"parentId":50,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":753159,"timestamp":248012672767,"id":50,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1779055984919,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":746524,"timestamp":248012681016,"id":87,"parentId":49,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":754886,"timestamp":248012672698,"id":49,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1779055984919,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":754785,"timestamp":248012681037,"id":89,"parentId":51,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":763066,"timestamp":248012672823,"id":51,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1779055984919,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":748265,"timestamp":248012689321,"id":91,"parentId":31,"tags":{},"startTime":1779055984936,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":768406,"timestamp":248012669225,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1779055984915,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":739959,"timestamp":248012697838,"id":93,"parentId":43,"tags":{},"startTime":1779055984944,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":767015,"timestamp":248012670816,"id":43,"parentId":19,"tags":{"page":"/api/hub/servers"},"startTime":1779055984917,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":749737,"timestamp":248012688236,"id":90,"parentId":24,"tags":{},"startTime":1779055984935,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":771712,"timestamp":248012666319,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1779055984913,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":759985,"timestamp":248012694306,"id":92,"parentId":41,"tags":{},"startTime":1779055984941,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":783800,"timestamp":248012670552,"id":41,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/agents"},"startTime":1779055984917,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":795844,"timestamp":248012680190,"id":69,"parentId":28,"tags":{},"startTime":1779055984926,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":807193,"timestamp":248012668908,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1779055984915,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":799274,"timestamp":248012700223,"id":94,"parentId":23,"tags":{},"startTime":1779055984946,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":833429,"timestamp":248012666135,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1779055984912,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":811443,"timestamp":248012700300,"id":99,"parentId":56,"tags":{},"startTime":1779055984947,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":837975,"timestamp":248012673836,"id":56,"parentId":19,"tags":{"page":"/nodes"},"startTime":1779055984920,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":816841,"timestamp":248012700252,"id":95,"parentId":52,"tags":{},"startTime":1779055984947,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":844005,"timestamp":248012673156,"id":52,"parentId":19,"tags":{"page":"/login"},"startTime":1779055984919,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":819390,"timestamp":248012700309,"id":100,"parentId":58,"tags":{},"startTime":1779055984947,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":845030,"timestamp":248012674721,"id":58,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1779055984921,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":823703,"timestamp":248012700275,"id":97,"parentId":54,"tags":{},"startTime":1779055984947,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":850629,"timestamp":248012673435,"id":54,"parentId":19,"tags":{"page":"/messages"},"startTime":1779055984920,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":824802,"timestamp":248012700412,"id":101,"parentId":59,"tags":{},"startTime":1779055984947,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":850334,"timestamp":248012674927,"id":59,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1779055984921,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":829669,"timestamp":248012700430,"id":102,"parentId":61,"tags":{},"startTime":1779055984947,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":854660,"timestamp":248012675493,"id":61,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1779055984922,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":830165,"timestamp":248012700438,"id":103,"parentId":62,"tags":{},"startTime":1779055984947,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":854992,"timestamp":248012675644,"id":62,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1779055984922,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":832789,"timestamp":248012700452,"id":104,"parentId":63,"tags":{},"startTime":1779055984947,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":857492,"timestamp":248012675788,"id":63,"parentId":19,"tags":{"page":"/tasks"},"startTime":1779055984922,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":835183,"timestamp":248012700262,"id":96,"parentId":53,"tags":{},"startTime":1779055984947,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":862219,"timestamp":248012673273,"id":53,"parentId":19,"tags":{"page":"/logs"},"startTime":1779055984920,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":786879,"timestamp":248012749356,"id":106,"parentId":57,"tags":{},"startTime":1779055984996,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":862105,"timestamp":248012674171,"id":57,"parentId":19,"tags":{"page":"/"},"startTime":1779055984920,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":814992,"timestamp":248012727053,"id":105,"parentId":60,"tags":{},"startTime":1779055984973,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":866994,"timestamp":248012675104,"id":60,"parentId":19,"tags":{"page":"/settings"},"startTime":1779055984921,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":853065,"timestamp":248012700287,"id":98,"parentId":55,"tags":{},"startTime":1779055984947,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":879763,"timestamp":248012673636,"id":55,"parentId":19,"tags":{"page":"/node"},"startTime":1779055984920,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":878088,"timestamp":248012680375,"id":70,"parentId":29,"tags":{},"startTime":1779055984927,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":889537,"timestamp":248012668983,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1779055984915,"traceId":"ffaa17295a86809b"},{"name":"is-page-static","duration":909138,"timestamp":248012679540,"id":64,"parentId":21,"tags":{},"startTime":1779055984926,"traceId":"ffaa17295a86809b"},{"name":"check-page","duration":924052,"timestamp":248012664706,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1779055984911,"traceId":"ffaa17295a86809b"},{"name":"static-check","duration":926149,"timestamp":248012662666,"id":19,"parentId":1,"tags":{},"startTime":1779055984909,"traceId":"ffaa17295a86809b"}]
2
+ [{"name":"write-routes-manifest","duration":932,"timestamp":248013603295,"id":108,"parentId":1,"tags":{},"startTime":1779055985850,"traceId":"ffaa17295a86809b"},{"name":"load-dotenv","duration":61,"timestamp":248013616187,"id":111,"parentId":110,"tags":{},"startTime":1779055985862,"traceId":"ffaa17295a86809b"},{"name":"run-export-path-map","duration":949,"timestamp":248013619804,"id":112,"parentId":110,"tags":{},"startTime":1779055985866,"traceId":"ffaa17295a86809b"},{"name":"next-export","duration":598593,"timestamp":248013614188,"id":110,"parentId":1,"tags":{},"startTime":1779055985860,"traceId":"ffaa17295a86809b"},{"name":"move-exported-app-not-found-","duration":680,"timestamp":248014217185,"id":113,"parentId":109,"tags":{},"startTime":1779055986463,"traceId":"ffaa17295a86809b"},{"name":"move-exported-app-global-error-","duration":635,"timestamp":248014217968,"id":114,"parentId":109,"tags":{},"startTime":1779055986464,"traceId":"ffaa17295a86809b"},{"name":"static-generation","duration":612288,"timestamp":248013608392,"id":109,"parentId":1,"tags":{},"startTime":1779055985855,"traceId":"ffaa17295a86809b"},{"name":"write-routes-manifest","duration":442,"timestamp":248014220923,"id":115,"parentId":1,"tags":{},"startTime":1779055986467,"traceId":"ffaa17295a86809b"},{"name":"print-tree-view","duration":5498,"timestamp":248014232739,"id":116,"parentId":1,"tags":{},"startTime":1779055986479,"traceId":"ffaa17295a86809b"},{"name":"write-route-bundle-stats","duration":18394,"timestamp":248014238285,"id":117,"parentId":1,"tags":{},"startTime":1779055986485,"traceId":"ffaa17295a86809b"},{"name":"telemetry-flush","duration":29450,"timestamp":248014256717,"id":118,"parentId":1,"tags":{},"startTime":1779055986503,"traceId":"ffaa17295a86809b"},{"name":"next-build","duration":18734286,"timestamp":247995551928,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1779055967798,"traceId":"ffaa17295a86809b"}]
package/.next/trace-build CHANGED
@@ -1 +1 @@
1
- [{"name":"run-turbopack","duration":5862083,"timestamp":247262763371,"id":14,"parentId":1,"tags":{},"startTime":1779055235010,"traceId":"ed54710afc013dcd"},{"name":"turbopack-build-events","duration":72,"timestamp":247263054887,"id":15,"parentId":1,"tags":{},"startTime":1779055235301,"traceId":"ed54710afc013dcd"},{"name":"run-typescript","duration":9693213,"timestamp":247268637660,"id":16,"parentId":1,"tags":{},"startTime":1779055240884,"traceId":"ed54710afc013dcd"},{"name":"static-check","duration":813820,"timestamp":247278491648,"id":19,"parentId":1,"tags":{},"startTime":1779055250738,"traceId":"ed54710afc013dcd"},{"name":"static-generation","duration":572776,"timestamp":247279320240,"id":109,"parentId":1,"tags":{},"startTime":1779055251567,"traceId":"ed54710afc013dcd"},{"name":"telemetry-flush","duration":22155,"timestamp":247279923605,"id":118,"parentId":1,"tags":{},"startTime":1779055252170,"traceId":"ed54710afc013dcd"},{"name":"next-build","duration":17412037,"timestamp":247262533758,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1779055234780,"traceId":"ed54710afc013dcd"}]
1
+ [{"name":"run-turbopack","duration":6582573,"timestamp":247995770748,"id":14,"parentId":1,"tags":{},"startTime":1779055968017,"traceId":"ffaa17295a86809b"},{"name":"turbopack-build-events","duration":99,"timestamp":247996074414,"id":15,"parentId":1,"tags":{},"startTime":1779055968321,"traceId":"ffaa17295a86809b"},{"name":"run-typescript","duration":10097203,"timestamp":248002369500,"id":16,"parentId":1,"tags":{},"startTime":1779055974616,"traceId":"ffaa17295a86809b"},{"name":"static-check","duration":926149,"timestamp":248012662666,"id":19,"parentId":1,"tags":{},"startTime":1779055984909,"traceId":"ffaa17295a86809b"},{"name":"static-generation","duration":612288,"timestamp":248013608392,"id":109,"parentId":1,"tags":{},"startTime":1779055985855,"traceId":"ffaa17295a86809b"},{"name":"telemetry-flush","duration":29450,"timestamp":248014256717,"id":118,"parentId":1,"tags":{},"startTime":1779055986503,"traceId":"ffaa17295a86809b"},{"name":"next-build","duration":18734286,"timestamp":247995551928,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1779055967798,"traceId":"ffaa17295a86809b"}]
@@ -9138,6 +9138,41 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
9138
9138
  data-chat-target-ring-sw-breath attr exposes the
9139
9139
  new gate for tests. */
9140
9140
  data-chat-target-ring-sw-breath={!reducedMotion && isChat ? 'on' : 'off'}
9141
+ /* Round 640 / Loop — chat-target ring gains a THIRD
9142
+ breath axis: radius. Pre-R640 R120 ran the opacity
9143
+ breath (paint) and R630 layered a stroke-width
9144
+ breath (line weight) — 2 axes. R640 stacks an r
9145
+ breath `radius+14 ↔ radius+14.5` over the same
9146
+ 3s cadence, all three SMIL animates running in
9147
+ lockstep through the same fragment gate.
9148
+ Now the ring's 呼吸感 spans THREE concentric
9149
+ axes synchronized at 3s ease-out spline:
9150
+ opacity paint (R120)
9151
+ stroke-wd line (R630, +10% amplitude)
9152
+ radius bbox (R640, +3.6% amplitude) ← this
9153
+ The ring breathes paint + weight + size together
9154
+ as one organic gesture — the most complete
9155
+ 呼吸感 surface on the canvas now.
9156
+ Amplitude 0.5px is conservative: peak r =
9157
+ radius+14.5 stays under any neighbouring ring
9158
+ tier boundary. In ring layout (R72 tiered radii
9159
+ single 220 / dual 175+260 / triple 145/215/285
9160
+ / offline 325+) tier spacing is ≥50px, so
9161
+ +0.5px breath has no overlap risk. In grid
9162
+ layout the chat-target ring's box is one node-
9163
+ wide; the cluster box around it is much wider.
9164
+ Gated `!reducedMotion && isChat` like the
9165
+ existing breath axes — three-axis SMIL only
9166
+ runs for the active chat target; reduced-motion
9167
+ users see no extra motion.
9168
+ R51 sentinel safety: r is not a sentinel
9169
+ attribute (selector targets stroke-width). The
9170
+ ring's bbox grows by ±0.5px during peak but
9171
+ only when chat is open; topo-overlap-test runs
9172
+ without chat open so bbox stays at radius+14.
9173
+ data-chat-target-ring-r-breath attr exposes the
9174
+ new gate for tests. */
9175
+ data-chat-target-ring-r-breath={!reducedMotion && isChat ? 'on' : 'off'}
9141
9176
  >
9142
9177
  {!reducedMotion && isChat && (
9143
9178
  <>
@@ -9153,6 +9188,12 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
9153
9188
  dur="3s"
9154
9189
  repeatCount="indefinite"
9155
9190
  />
9191
+ <animate
9192
+ attributeName="r"
9193
+ values={`${radius + 14};${radius + 14.5};${radius + 14}`}
9194
+ dur="3s"
9195
+ repeatCount="indefinite"
9196
+ />
9156
9197
  </>
9157
9198
  )}
9158
9199
  </circle>
@@ -9578,6 +9619,47 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
9578
9619
  data-edge-endpoint-ring-stroke-width={isEndpoint ? 2.4 : 1.6}
9579
9620
  data-edge-endpoint-ring-radius={endpointR}
9580
9621
  data-edge-endpoint-ring-brightness={isEndpoint ? '1.15' : '1'}
9622
+ /* Round 639 / Loop — endpoint emphasis ring filter
9623
+ gains a stroke-tinted drop-shadow halo on
9624
+ isEndpoint. Sibling to R637 (chat-target ring,
9625
+ status.primary stroke) + R638 (status ring,
9626
+ status.primary stroke). R639 applies the same
9627
+ chromatic-identity pattern to the third per-node
9628
+ ring whose stroke colour is non-trivial:
9629
+ `pal.flowEdge` (cyber cyan ↔ light emerald).
9630
+ Pre-R639 the endpoint ring's hover filter was
9631
+ plain `brightness(1.15)` — no chromatic halo
9632
+ to telegraph "this is an edge endpoint" on the
9633
+ paint axis. The brightness lift made the cyan
9634
+ stroke read brighter but the surface lacked
9635
+ the ambient glow that R637 + R638 added to
9636
+ their respective ring tiers.
9637
+ R639 prepends `drop-shadow(0 0 2px
9638
+ ${pal.flowEdge}40)` so:
9639
+ cyber endpoint → cyan halo around cyan stroke
9640
+ light endpoint → emerald halo around emerald stroke
9641
+ halo always matches the existing stroke color
9642
+ since `pal.flowEdge` is the only colour source.
9643
+ 2px blur matches R638's status-ring halo (both
9644
+ rings sit at small radii: status at r=radius,
9645
+ endpoint at r=radius+7-8); R637's 3px is for
9646
+ the outermost r+14 chat-target ring.
9647
+ 0x40 alpha (~25 %) matches R637 + R638 so all
9648
+ three identity rings present a uniform halo
9649
+ intensity vocabulary.
9650
+ R51 sentinel safety: ring strokeWidth oscillates
9651
+ between 1.6 (rest) and 2.4 (hover) — neither
9652
+ matches reserved {1.5, 3}. Filter is paint-only,
9653
+ no bbox change. transition list already includes
9654
+ 'filter 180ms ease-out'.
9655
+ Chromatic identity completion family at the per-
9656
+ node ring surface (3 anchors now):
9657
+ R637 chat-target ring (status.primary, r+14)
9658
+ R638 status ring (status.primary, r=radius)
9659
+ R639 endpoint ring (pal.flowEdge, r+7→r+8) ← this
9660
+ data-edge-endpoint-ring-halo-color attr exposes
9661
+ the resolved halo color for tests. */
9662
+ data-edge-endpoint-ring-halo-color={isEndpoint ? pal.flowEdge : 'none'}
9581
9663
  style={{
9582
9664
  pointerEvents: 'none',
9583
9665
  r: `${endpointR}px`,
@@ -9606,8 +9688,17 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
9606
9688
  the endpoint ring has no rest-time filter
9607
9689
  attribute. Inline style.filter undefined at
9608
9690
  rest (no flicker; opacity=0 already hides
9609
- the ring). */
9610
- filter: isEndpoint ? 'brightness(1.15)' : undefined,
9691
+ the ring).
9692
+
9693
+ R639 prepends `drop-shadow(0 0 2px
9694
+ ${pal.flowEdge}40)` to the filter chain so
9695
+ the halo color matches the stroke color —
9696
+ completes the chromatic identity at the
9697
+ endpoint-ring surface (3rd anchor in
9698
+ chromatic-identity family). */
9699
+ filter: isEndpoint
9700
+ ? `drop-shadow(0 0 2px ${pal.flowEdge}40) brightness(1.15)`
9701
+ : undefined,
9611
9702
  transition: 'opacity 180ms ease-out, stroke-width 180ms ease-out, r 180ms ease-out, filter 180ms ease-out',
9612
9703
  } as React.CSSProperties}
9613
9704
  />
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sleep2agi/agent-network-dashboard",
3
- "version": "0.5.3-preview.152",
3
+ "version": "0.5.3-preview.154",
4
4
  "description": "Agent Network Dashboard \u2014 Web UI for managing AI Agent networks",
5
5
  "scripts": {
6
6
  "dev": "next dev",
@@ -0,0 +1,121 @@
1
+ /* Round 640 — chat-target ring gains a THIRD breath axis: radius.
2
+ * r=radius+14 ↔ radius+14.5 over 3s, in lockstep with R120 opacity
3
+ * + R630 stroke-width breaths. Three concurrent SMIL animates run
4
+ * through the same fragment gate.
5
+ *
6
+ * Test phases:
7
+ * 1. mock 2 idle nodes
8
+ * 2. rest (no chat): chat-target ring exists, no <animate>
9
+ * children; r-breath attr 'off'
10
+ * 3. click a node to open chat → ring becomes chat target →
11
+ * 3 <animate> children: opacity, stroke-width, r — all
12
+ * dur='3s', repeatCount='indefinite'
13
+ * 4. r animate values = `${radius+14};${radius+14.5};${radius+14}`
14
+ * 5. source: new <animate attributeName="r"> sibling inside the
15
+ * same fragment gate
16
+ */
17
+ import { chromium } from 'playwright';
18
+ import { readFileSync } from 'node:fs';
19
+
20
+ const TOKEN = JSON.parse(readFileSync('/home/vansin/.anet/config.json', 'utf8')).token;
21
+ const fresh = new Date(Date.now() - 60 * 1000).toISOString();
22
+
23
+ const browser = await chromium.launch({ headless: true });
24
+ const ctx = await browser.newContext({ viewport: { width: 1500, height: 1200 } });
25
+ await ctx.addCookies([{ name: 'anet_dashboard_session', value: `v3:${TOKEN}`, domain: '127.0.0.1', path: '/' }]);
26
+ await ctx.addInitScript(() => {
27
+ try {
28
+ localStorage.setItem('anet-theme', 'cyber');
29
+ localStorage.setItem('anet-topo-layout', 'ring');
30
+ sessionStorage.setItem('anet_v3_auth', '1');
31
+ } catch {}
32
+ });
33
+ await ctx.route('**/api/hub/status*', async (route) => {
34
+ const r = await route.fetch();
35
+ const b = await r.json();
36
+ const nid = (b.sessions || [])[0]?.network_id || 'default';
37
+ const mk = (alias) => ({
38
+ alias, status: 'idle', model: 'claude-opus-4', runtime: 'claude-code-cli',
39
+ network_id: nid, project_dir: null,
40
+ created_at: fresh, updated_at: fresh, last_seen_at: fresh,
41
+ });
42
+ await route.fulfill({ response: r, json: { ...b, sessions: [mk('a·1'), mk('a·2')] } });
43
+ });
44
+ await ctx.route('**/api/hub/messages*', (r) => r.fulfill({ json: { messages: [] } }));
45
+ await ctx.route('**/api/hub/tasks*', (r) => r.fulfill({ json: { tasks: [] } }));
46
+ const page = await ctx.newPage();
47
+ await page.goto('http://127.0.0.1:3000/', { waitUntil: 'networkidle' });
48
+ await page.waitForSelector('[data-chat-target-ring]', { timeout: 15000, state: 'attached' });
49
+ await page.waitForTimeout(500);
50
+
51
+ const rest = await page.evaluate(() => {
52
+ const el = document.querySelector('[data-chat-target-ring]');
53
+ if (!el) return null;
54
+ return {
55
+ rBreath: el.getAttribute('data-chat-target-ring-r-breath'),
56
+ active: el.getAttribute('data-chat-target-active'),
57
+ animateCount: el.querySelectorAll('animate').length,
58
+ };
59
+ });
60
+
61
+ // Open chat with a·1
62
+ await page.click('[data-node="a·1"]', { force: true });
63
+ await page.waitForTimeout(400);
64
+
65
+ const active = await page.evaluate(() => {
66
+ const node = document.querySelector('[data-node="a·1"]');
67
+ if (!node) return null;
68
+ const ring = node.querySelector('[data-chat-target-ring]');
69
+ if (!ring) return null;
70
+ const animates = Array.from(ring.querySelectorAll('animate'));
71
+ return {
72
+ rBreath: ring.getAttribute('data-chat-target-ring-r-breath'),
73
+ swBreath: ring.getAttribute('data-chat-target-ring-sw-breath'),
74
+ breath: ring.getAttribute('data-chat-target-breath'),
75
+ active: ring.getAttribute('data-chat-target-active'),
76
+ rAttr: ring.getAttribute('r'),
77
+ animateCount: animates.length,
78
+ animateAttrs: animates.map(a => ({
79
+ attr: a.getAttribute('attributeName'),
80
+ dur: a.getAttribute('dur'),
81
+ vals: a.getAttribute('values'),
82
+ rep: a.getAttribute('repeatCount'),
83
+ })),
84
+ };
85
+ });
86
+
87
+ await browser.close();
88
+
89
+ const src = readFileSync('/home/vansin/agent-network-dashboard/app/components/TopoGraph.tsx', 'utf8');
90
+ const sourceRAnimate = /<animate\s+attributeName="r"\s+values=\{`\$\{radius \+ 14\};\$\{radius \+ 14\.5\};\$\{radius \+ 14\}`\}\s+dur="3s"\s+repeatCount="indefinite"\s*\/>/.test(src);
91
+ const sourceRBreathAttr = /data-chat-target-ring-r-breath=\{!reducedMotion && isChat \? 'on' : 'off'\}/.test(src);
92
+
93
+ const rAnimate = active?.animateAttrs?.find(a => a.attr === 'r');
94
+ const opAnimate = active?.animateAttrs?.find(a => a.attr === 'opacity');
95
+ const swAnimate = active?.animateAttrs?.find(a => a.attr === 'stroke-width');
96
+
97
+ const results = {
98
+ rest_ring_present: !!rest,
99
+ rest_r_breath_off: rest?.rBreath === 'off',
100
+ rest_no_animate: rest?.animateCount === 0,
101
+ active_ring_present: !!active,
102
+ active_r_breath_on: active?.rBreath === 'on',
103
+ active_sw_breath_on: active?.swBreath === 'on',
104
+ active_breath_on: active?.breath === 'on',
105
+ active_animate_count_3: active?.animateCount === 3,
106
+ active_has_r: rAnimate != null,
107
+ active_has_opacity: opAnimate != null,
108
+ active_has_stroke_width: swAnimate != null,
109
+ active_r_dur_3s: rAnimate?.dur === '3s',
110
+ active_r_rep_indef: rAnimate?.rep === 'indefinite',
111
+ // r animate values include radius+14 + radius+14.5 (radius is per-node-tier-dependent)
112
+ active_r_values_format: /^[\d.]+;[\d.]+;[\d.]+$/.test(rAnimate?.vals || ''),
113
+ source_r_animate: sourceRAnimate,
114
+ source_r_breath_attr: sourceRBreathAttr,
115
+ };
116
+ const ok = Object.values(results).every(Boolean);
117
+ console.log(`${ok ? '✅' : '❌'} R640 chat-target ring radius breath (3-axis 呼吸感: opacity + sw + r):`,
118
+ JSON.stringify(results, null, 2),
119
+ `\n rest: ${JSON.stringify(rest)}`,
120
+ `\n active: ${JSON.stringify(active)}`);
121
+ process.exit(ok ? 0 : 1);
@@ -0,0 +1,107 @@
1
+ /* Round 639 — endpoint emphasis ring filter gains a stroke-tinted
2
+ * drop-shadow halo on isEndpoint. Halo color matches pal.flowEdge
3
+ * stroke (cyber cyan / light emerald). 3rd anchor in chromatic-
4
+ * identity family at the per-node ring surface.
5
+ *
6
+ * Test phases:
7
+ * 1. mock 2 nodes + 1 message → 1 edge, hover edge to trigger
8
+ * hoveredEdgeEndpoints → endpoint ring opacity > 0
9
+ * 2. rest (no edge hover): all endpoint rings halo-color='none',
10
+ * endpoint-active='false'
11
+ * 3. hover edge → 2 endpoint rings turn active; halo-color
12
+ * matches pal.flowEdge (cyber: #67e8f9, light: #10b981);
13
+ * computed filter contains drop-shadow + brightness
14
+ * 4. source: filter expression uses ${pal.flowEdge}40 in drop-shadow
15
+ */
16
+ import { chromium } from 'playwright';
17
+ import { readFileSync } from 'node:fs';
18
+
19
+ const TOKEN = JSON.parse(readFileSync('/home/vansin/.anet/config.json', 'utf8')).token;
20
+ const fresh = new Date(Date.now() - 60 * 1000).toISOString();
21
+
22
+ const browser = await chromium.launch({ headless: true });
23
+ const ctx = await browser.newContext({ viewport: { width: 1500, height: 1200 } });
24
+ await ctx.addCookies([{ name: 'anet_dashboard_session', value: `v3:${TOKEN}`, domain: '127.0.0.1', path: '/' }]);
25
+ await ctx.addInitScript(() => {
26
+ try {
27
+ localStorage.setItem('anet-theme', 'cyber');
28
+ localStorage.setItem('anet-topo-layout', 'ring');
29
+ sessionStorage.setItem('anet_v3_auth', '1');
30
+ } catch {}
31
+ });
32
+ await ctx.route('**/api/hub/status*', async (route) => {
33
+ const r = await route.fetch();
34
+ const b = await r.json();
35
+ const nid = (b.sessions || [])[0]?.network_id || 'default';
36
+ const mk = (alias) => ({
37
+ alias, status: 'idle', model: 'claude-opus-4', runtime: 'claude-code-cli',
38
+ network_id: nid, project_dir: null,
39
+ created_at: fresh, updated_at: fresh, last_seen_at: fresh,
40
+ });
41
+ await route.fulfill({ response: r, json: { ...b, sessions: [mk('a·1'), mk('a·2')] } });
42
+ });
43
+ // 3 messages → edge badge becomes visible + clickable (R215 threshold)
44
+ await ctx.route('**/api/hub/messages*', (r) => r.fulfill({ json: { messages: [
45
+ { from_alias: 'a·1', to_alias: 'a·2', content: 'one', created_at: fresh },
46
+ { from_alias: 'a·1', to_alias: 'a·2', content: 'two', created_at: fresh },
47
+ { from_alias: 'a·1', to_alias: 'a·2', content: 'three', created_at: fresh },
48
+ ] } }));
49
+ await ctx.route('**/api/hub/tasks*', (r) => r.fulfill({ json: { tasks: [] } }));
50
+ const page = await ctx.newPage();
51
+ await page.goto('http://127.0.0.1:3000/', { waitUntil: 'networkidle' });
52
+ await page.waitForSelector('[data-edge-endpoint-ring]', { timeout: 15000, state: 'attached' });
53
+ await page.waitForTimeout(500);
54
+
55
+ // rest: collect endpoint ring halo colors (should all be 'none')
56
+ const restRings = await page.evaluate(() => {
57
+ return Array.from(document.querySelectorAll('[data-edge-endpoint-ring]')).map(el => ({
58
+ haloColor: el.getAttribute('data-edge-endpoint-ring-halo-color'),
59
+ active: el.getAttribute('data-edge-endpoint-active'),
60
+ }));
61
+ });
62
+
63
+ // Pin the edge by clicking the recent-row tint rect (R116 lets
64
+ // recent-row click pin activeEdgeKey → hoveredEdgeEndpoints fires).
65
+ await page.click('[data-recent-row-tint-brightness]', { force: true });
66
+ await page.waitForTimeout(400);
67
+
68
+ const activeState = await page.evaluate(() => {
69
+ return Array.from(document.querySelectorAll('[data-edge-endpoint-ring]')).map(el => {
70
+ const cs = getComputedStyle(el);
71
+ return {
72
+ haloColor: el.getAttribute('data-edge-endpoint-ring-halo-color'),
73
+ active: el.getAttribute('data-edge-endpoint-active'),
74
+ brightness:el.getAttribute('data-edge-endpoint-ring-brightness'),
75
+ filter: cs.filter,
76
+ };
77
+ });
78
+ });
79
+
80
+ await browser.close();
81
+
82
+ const src = readFileSync('/home/vansin/agent-network-dashboard/app/components/TopoGraph.tsx', 'utf8');
83
+ const sourceFilter = /`drop-shadow\(0 0 2px \$\{pal\.flowEdge\}40\) brightness\(1\.15\)`/.test(src);
84
+ const sourceHaloAttr = /data-edge-endpoint-ring-halo-color=\{isEndpoint \? pal\.flowEdge : 'none'\}/.test(src);
85
+
86
+ const restAllNone = restRings.every(r => r.haloColor === 'none' && r.active === 'false');
87
+ const activeRings = activeState.filter(s => s.active === 'true');
88
+ const activeAllHaloMatch = activeRings.length > 0
89
+ && activeRings.every(s => /^#[0-9a-f]{6,8}$/i.test(s.haloColor || '')
90
+ && /drop-shadow/.test(s.filter || '')
91
+ && /brightness/.test(s.filter || ''));
92
+
93
+ const results = {
94
+ rings_present: restRings.length >= 2,
95
+ rest_all_none: restAllNone,
96
+ active_at_least_two: activeRings.length >= 2,
97
+ active_brightness_1_15: activeRings.every(s => s.brightness === '1.15'),
98
+ active_halo_match: activeAllHaloMatch,
99
+ source_filter: sourceFilter,
100
+ source_halo_attr: sourceHaloAttr,
101
+ };
102
+ const ok = Object.values(results).every(Boolean);
103
+ console.log(`${ok ? '✅' : '❌'} R639 endpoint emphasis ring stroke-tinted halo (chromatic identity 3rd anchor):`,
104
+ JSON.stringify(results, null, 2),
105
+ `\n rest: ${JSON.stringify(restRings)}`,
106
+ `\n active: ${JSON.stringify(activeState)}`);
107
+ process.exit(ok ? 0 : 1);