@sleep2agi/agent-network-dashboard 0.5.3-preview.234 → 0.5.3-preview.236
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/{0b7swqksmxx4d.js → 00blqs2oaaag1.js} +1 -1
- package/.next/static/chunks/{0r.u_oq5pe~z6.css → 0pe_uuf7xb81p.css} +1 -1
- package/.next/static/chunks/{05cc8e2y5~5z0.js → 11h~h3pfdl0fg.js} +1 -1
- package/.next/static/chunks/{0__rx-qgibs3h.js → 15w5c1nq63rq9.js} +1 -1
- package/.next/static/chunks/{0-l3_dnseuw3d.js → 16zkq380r_74..js} +2 -2
- package/.next/trace +2 -2
- package/.next/trace-build +1 -1
- package/app/components/TopoGraph.tsx +22 -2
- package/app/globals.css +76 -2
- package/package.json +1 -1
- package/scripts/topo-kicker-triple-axis-breath-test.mjs +118 -0
- package/scripts/topo-watermark-triple-axis-breath-test.mjs +124 -0
- /package/.next/static/{5ImJ7M0tzN5ebxpw_xGuQ → WYAuMkEsFDmtcHbTDRXKc}/_buildManifest.js +0 -0
- /package/.next/static/{5ImJ7M0tzN5ebxpw_xGuQ → WYAuMkEsFDmtcHbTDRXKc}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{5ImJ7M0tzN5ebxpw_xGuQ → WYAuMkEsFDmtcHbTDRXKc}/_ssgManifest.js +0 -0
package/.next/trace
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
[{"name":"generate-buildid","duration":289,"timestamp":410330564981,"id":4,"parentId":1,"tags":{},"startTime":1779218302811,"traceId":"8a4903b991f71bec"},{"name":"load-custom-routes","duration":449,"timestamp":410330565425,"id":5,"parentId":1,"tags":{},"startTime":1779218302812,"traceId":"8a4903b991f71bec"},{"name":"create-dist-dir","duration":850,"timestamp":410330565915,"id":6,"parentId":1,"tags":{},"startTime":1779218302812,"traceId":"8a4903b991f71bec"},{"name":"clean","duration":33259,"timestamp":410330567467,"id":7,"parentId":1,"tags":{},"startTime":1779218302814,"traceId":"8a4903b991f71bec"},{"name":"discover-routes","duration":11087,"timestamp":410330704383,"id":8,"parentId":1,"tags":{},"startTime":1779218302951,"traceId":"8a4903b991f71bec"},{"name":"create-root-mapping","duration":111,"timestamp":410330715534,"id":9,"parentId":1,"tags":{},"startTime":1779218302962,"traceId":"8a4903b991f71bec"},{"name":"generate-route-types","duration":33678,"timestamp":410330718681,"id":10,"parentId":1,"tags":{},"startTime":1779218302965,"traceId":"8a4903b991f71bec"},{"name":"public-dir-conflict-check","duration":107,"timestamp":410330752466,"id":11,"parentId":1,"tags":{},"startTime":1779218302999,"traceId":"8a4903b991f71bec"},{"name":"generate-routes-manifest","duration":5254,"timestamp":410330752696,"id":12,"parentId":1,"tags":{},"startTime":1779218302999,"traceId":"8a4903b991f71bec"},{"name":"run-turbopack","duration":6322435,"timestamp":410330763244,"id":14,"parentId":1,"tags":{},"startTime":1779218303010,"traceId":"8a4903b991f71bec"},{"name":"turbopack-build-events","duration":85,"timestamp":410331058264,"id":15,"parentId":1,"tags":{},"startTime":1779218303305,"traceId":"8a4903b991f71bec"},{"name":"run-typescript","duration":10073151,"timestamp":410337101899,"id":16,"parentId":1,"tags":{},"startTime":1779218309348,"traceId":"8a4903b991f71bec"},{"name":"generate-required-server-files","duration":3518,"timestamp":410347176712,"id":18,"parentId":1,"tags":{},"startTime":1779218319423,"traceId":"8a4903b991f71bec"},{"name":"check-static-error-page","duration":15116,"timestamp":410347376252,"id":20,"parentId":19,"tags":{},"startTime":1779218319623,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":476020,"timestamp":410347395239,"id":65,"parentId":22,"tags":{},"startTime":1779218319642,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":492020,"timestamp":410347379430,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1779218319626,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":584397,"timestamp":410347396146,"id":71,"parentId":30,"tags":{},"startTime":1779218319642,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":597442,"timestamp":410347383201,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1779218319629,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":589702,"timestamp":410347395602,"id":68,"parentId":27,"tags":{},"startTime":1779218319642,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":602615,"timestamp":410347382780,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1779218319629,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":590199,"timestamp":410347396206,"id":72,"parentId":32,"tags":{},"startTime":1779218319642,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":602850,"timestamp":410347383612,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1779218319630,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":598433,"timestamp":410347395715,"id":69,"parentId":28,"tags":{},"startTime":1779218319642,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":611319,"timestamp":410347382902,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1779218319629,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":601573,"timestamp":410347396385,"id":73,"parentId":33,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":614293,"timestamp":410347383741,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1779218319630,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":603112,"timestamp":410347396492,"id":75,"parentId":35,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":615696,"timestamp":410347383965,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1779218319630,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":607774,"timestamp":410347396512,"id":76,"parentId":36,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":619852,"timestamp":410347384477,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1779218319631,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":613812,"timestamp":410347396556,"id":78,"parentId":38,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":625611,"timestamp":410347384810,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1779218319631,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":617426,"timestamp":410347395501,"id":67,"parentId":26,"tags":{},"startTime":1779218319642,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":630320,"timestamp":410347382655,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1779218319629,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":622178,"timestamp":410347396583,"id":80,"parentId":40,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":633777,"timestamp":410347385029,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1779218319631,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":636219,"timestamp":410347396570,"id":79,"parentId":39,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":647942,"timestamp":410347384908,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1779218319631,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":639930,"timestamp":410347396465,"id":74,"parentId":34,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":652597,"timestamp":410347383854,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1779218319630,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":640084,"timestamp":410347396544,"id":77,"parentId":37,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":651989,"timestamp":410347384672,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1779218319631,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":641427,"timestamp":410347396607,"id":82,"parentId":44,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":652267,"timestamp":410347385810,"id":44,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1779218319632,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":646010,"timestamp":410347396646,"id":85,"parentId":47,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":655144,"timestamp":410347387556,"id":47,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1779218319634,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":647223,"timestamp":410347396621,"id":83,"parentId":45,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":657967,"timestamp":410347385934,"id":45,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1779218319632,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":649805,"timestamp":410347394842,"id":64,"parentId":21,"tags":{},"startTime":1779218319641,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":666861,"timestamp":410347377832,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1779218319624,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":650451,"timestamp":410347396658,"id":86,"parentId":48,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":659464,"timestamp":410347387689,"id":48,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1779218319634,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":656782,"timestamp":410347396672,"id":87,"parentId":49,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":665694,"timestamp":410347387809,"id":49,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1779218319634,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":656996,"timestamp":410347396694,"id":89,"parentId":51,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":665748,"timestamp":410347387983,"id":51,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1779218319634,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":646944,"timestamp":410347413692,"id":91,"parentId":31,"tags":{},"startTime":1779218319660,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":677361,"timestamp":410347383319,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1779218319630,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":666929,"timestamp":410347395980,"id":70,"parentId":29,"tags":{},"startTime":1779218319642,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":679906,"timestamp":410347383050,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1779218319629,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":653945,"timestamp":410347412330,"id":90,"parentId":24,"tags":{},"startTime":1779218319659,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":686374,"timestamp":410347379943,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1779218319626,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":652188,"timestamp":410347415987,"id":93,"parentId":43,"tags":{},"startTime":1779218319662,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":682708,"timestamp":410347385508,"id":43,"parentId":19,"tags":{"page":"/api/hub/servers"},"startTime":1779218319632,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":671855,"timestamp":410347396636,"id":84,"parentId":46,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":682484,"timestamp":410347386057,"id":46,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1779218319632,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":656820,"timestamp":410347414592,"id":92,"parentId":41,"tags":{},"startTime":1779218319661,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":686351,"timestamp":410347385127,"id":41,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/agents"},"startTime":1779218319631,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":684229,"timestamp":410347396597,"id":81,"parentId":42,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":695513,"timestamp":410347385365,"id":42,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/health"},"startTime":1779218319632,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":698043,"timestamp":410347395396,"id":66,"parentId":25,"tags":{},"startTime":1779218319642,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":711225,"timestamp":410347382479,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1779218319629,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":712973,"timestamp":410347418755,"id":96,"parentId":53,"tags":{},"startTime":1779218319665,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":743254,"timestamp":410347388559,"id":53,"parentId":19,"tags":{"page":"/logs"},"startTime":1779218319635,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":719751,"timestamp":410347418801,"id":100,"parentId":58,"tags":{},"startTime":1779218319665,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":748682,"timestamp":410347389955,"id":58,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1779218319636,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":720703,"timestamp":410347418709,"id":94,"parentId":23,"tags":{},"startTime":1779218319665,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":759757,"timestamp":410347379709,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1779218319626,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":724818,"timestamp":410347418778,"id":98,"parentId":55,"tags":{},"startTime":1779218319665,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":754749,"timestamp":410347388913,"id":55,"parentId":19,"tags":{"page":"/node"},"startTime":1779218319635,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":729172,"timestamp":410347418916,"id":101,"parentId":59,"tags":{},"startTime":1779218319665,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":757955,"timestamp":410347390189,"id":59,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1779218319636,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":729408,"timestamp":410347418937,"id":102,"parentId":61,"tags":{},"startTime":1779218319665,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":757584,"timestamp":410347390803,"id":61,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1779218319637,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":735729,"timestamp":410347418961,"id":104,"parentId":63,"tags":{},"startTime":1779218319665,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":763633,"timestamp":410347391115,"id":63,"parentId":19,"tags":{"page":"/tasks"},"startTime":1779218319637,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":729575,"timestamp":410347427881,"id":105,"parentId":60,"tags":{},"startTime":1779218319674,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":767119,"timestamp":410347390379,"id":60,"parentId":19,"tags":{"page":"/settings"},"startTime":1779218319637,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":738860,"timestamp":410347418947,"id":103,"parentId":62,"tags":{},"startTime":1779218319665,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":766895,"timestamp":410347390949,"id":62,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1779218319637,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":721471,"timestamp":410347441039,"id":106,"parentId":57,"tags":{},"startTime":1779218319687,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":773142,"timestamp":410347389403,"id":57,"parentId":19,"tags":{"page":"/"},"startTime":1779218319636,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":744627,"timestamp":410347418764,"id":97,"parentId":54,"tags":{},"startTime":1779218319665,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":774715,"timestamp":410347388719,"id":54,"parentId":19,"tags":{"page":"/messages"},"startTime":1779218319635,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":767765,"timestamp":410347396685,"id":88,"parentId":50,"tags":{},"startTime":1779218319643,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":776597,"timestamp":410347387895,"id":50,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1779218319634,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":763742,"timestamp":410347418740,"id":95,"parentId":52,"tags":{},"startTime":1779218319665,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":794133,"timestamp":410347388405,"id":52,"parentId":19,"tags":{"page":"/login"},"startTime":1779218319635,"traceId":"8a4903b991f71bec"},{"name":"is-page-static","duration":773601,"timestamp":410347418791,"id":99,"parentId":56,"tags":{},"startTime":1779218319665,"traceId":"8a4903b991f71bec"},{"name":"check-page","duration":803304,"timestamp":410347389137,"id":56,"parentId":19,"tags":{"page":"/nodes"},"startTime":1779218319635,"traceId":"8a4903b991f71bec"},{"name":"static-check","duration":817365,"timestamp":410347375117,"id":19,"parentId":1,"tags":{},"startTime":1779218319621,"traceId":"8a4903b991f71bec"}]
|
|
2
|
-
[{"name":"write-routes-manifest","duration":
|
|
1
|
+
[{"name":"generate-buildid","duration":317,"timestamp":411093025885,"id":4,"parentId":1,"tags":{},"startTime":1779219065272,"traceId":"604b55deb37e44d1"},{"name":"load-custom-routes","duration":512,"timestamp":411093026366,"id":5,"parentId":1,"tags":{},"startTime":1779219065273,"traceId":"604b55deb37e44d1"},{"name":"create-dist-dir","duration":758,"timestamp":411093026919,"id":6,"parentId":1,"tags":{},"startTime":1779219065273,"traceId":"604b55deb37e44d1"},{"name":"clean","duration":39316,"timestamp":411093028398,"id":7,"parentId":1,"tags":{},"startTime":1779219065275,"traceId":"604b55deb37e44d1"},{"name":"discover-routes","duration":11696,"timestamp":411093160737,"id":8,"parentId":1,"tags":{},"startTime":1779219065407,"traceId":"604b55deb37e44d1"},{"name":"create-root-mapping","duration":140,"timestamp":411093172508,"id":9,"parentId":1,"tags":{},"startTime":1779219065419,"traceId":"604b55deb37e44d1"},{"name":"generate-route-types","duration":39496,"timestamp":411093175196,"id":10,"parentId":1,"tags":{},"startTime":1779219065421,"traceId":"604b55deb37e44d1"},{"name":"public-dir-conflict-check","duration":101,"timestamp":411093214795,"id":11,"parentId":1,"tags":{},"startTime":1779219065461,"traceId":"604b55deb37e44d1"},{"name":"generate-routes-manifest","duration":5504,"timestamp":411093215023,"id":12,"parentId":1,"tags":{},"startTime":1779219065461,"traceId":"604b55deb37e44d1"},{"name":"run-turbopack","duration":7382412,"timestamp":411093226888,"id":14,"parentId":1,"tags":{},"startTime":1779219065473,"traceId":"604b55deb37e44d1"},{"name":"turbopack-build-events","duration":119,"timestamp":411093532702,"id":15,"parentId":1,"tags":{},"startTime":1779219065779,"traceId":"604b55deb37e44d1"},{"name":"run-typescript","duration":10710380,"timestamp":411100635374,"id":16,"parentId":1,"tags":{},"startTime":1779219072882,"traceId":"604b55deb37e44d1"},{"name":"generate-required-server-files","duration":2335,"timestamp":411111347022,"id":18,"parentId":1,"tags":{},"startTime":1779219083593,"traceId":"604b55deb37e44d1"},{"name":"check-static-error-page","duration":16824,"timestamp":411111547111,"id":20,"parentId":19,"tags":{},"startTime":1779219083793,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":497888,"timestamp":411111567781,"id":65,"parentId":22,"tags":{},"startTime":1779219083814,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":515331,"timestamp":411111550529,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1779219083797,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":579334,"timestamp":411111568195,"id":69,"parentId":28,"tags":{},"startTime":1779219083814,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":593312,"timestamp":411111554312,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1779219083801,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":594121,"timestamp":411111568710,"id":72,"parentId":32,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":607776,"timestamp":411111555140,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1779219083801,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":610836,"timestamp":411111568876,"id":73,"parentId":33,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":624440,"timestamp":411111555345,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1779219083802,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":625107,"timestamp":411111567958,"id":67,"parentId":26,"tags":{},"startTime":1779219083814,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":639130,"timestamp":411111554028,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1779219083800,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":624466,"timestamp":411111568955,"id":74,"parentId":34,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":637973,"timestamp":411111555497,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1779219083802,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":627713,"timestamp":411111568087,"id":68,"parentId":27,"tags":{},"startTime":1779219083814,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":641694,"timestamp":411111554166,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1779219083800,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":631120,"timestamp":411111569024,"id":76,"parentId":36,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":643995,"timestamp":411111556195,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1779219083802,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":634737,"timestamp":411111568481,"id":70,"parentId":29,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":648805,"timestamp":411111554466,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1779219083801,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":635504,"timestamp":411111569069,"id":78,"parentId":38,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":648042,"timestamp":411111556572,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1779219083803,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":642681,"timestamp":411111567875,"id":66,"parentId":25,"tags":{},"startTime":1779219083814,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":657895,"timestamp":411111553832,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1779219083800,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":642829,"timestamp":411111569082,"id":79,"parentId":39,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":655248,"timestamp":411111556693,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1779219083803,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":644645,"timestamp":411111567456,"id":64,"parentId":21,"tags":{},"startTime":1779219083814,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":663287,"timestamp":411111548839,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1779219083795,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":644448,"timestamp":411111569093,"id":80,"parentId":40,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":656773,"timestamp":411111556808,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1779219083803,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":648574,"timestamp":411111569141,"id":84,"parentId":46,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":659756,"timestamp":411111557999,"id":46,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1779219083804,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":654359,"timestamp":411111569152,"id":85,"parentId":47,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":665401,"timestamp":411111558157,"id":47,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1779219083804,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":660481,"timestamp":411111569165,"id":86,"parentId":48,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":670065,"timestamp":411111559639,"id":48,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1779219083806,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":670986,"timestamp":411111568985,"id":75,"parentId":35,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":684396,"timestamp":411111555644,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1779219083802,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":671128,"timestamp":411111569057,"id":77,"parentId":37,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":683794,"timestamp":411111556419,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1779219083803,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":689206,"timestamp":411111569113,"id":82,"parentId":44,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":700677,"timestamp":411111557726,"id":44,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1779219083804,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":689395,"timestamp":411111569178,"id":87,"parentId":49,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":698628,"timestamp":411111559977,"id":49,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1779219083806,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":689551,"timestamp":411111569187,"id":88,"parentId":50,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":698634,"timestamp":411111560130,"id":50,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1779219083806,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":689869,"timestamp":411111569199,"id":89,"parentId":51,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":698881,"timestamp":411111560244,"id":51,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1779219083807,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":692470,"timestamp":411111568640,"id":71,"parentId":30,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":706532,"timestamp":411111554647,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1779219083801,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":690108,"timestamp":411111576270,"id":93,"parentId":43,"tags":{},"startTime":1779219083823,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":709041,"timestamp":411111557387,"id":43,"parentId":19,"tags":{"page":"/api/hub/servers"},"startTime":1779219083804,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":693880,"timestamp":411111574909,"id":92,"parentId":41,"tags":{},"startTime":1779219083821,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":711924,"timestamp":411111556921,"id":41,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/agents"},"startTime":1779219083803,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":707220,"timestamp":411111573859,"id":91,"parentId":31,"tags":{},"startTime":1779219083820,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":726342,"timestamp":411111554798,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1779219083801,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":713167,"timestamp":411111569128,"id":83,"parentId":45,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":724490,"timestamp":411111557875,"id":45,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1779219083804,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":720379,"timestamp":411111569101,"id":81,"parentId":42,"tags":{},"startTime":1779219083815,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":732316,"timestamp":411111557219,"id":42,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/health"},"startTime":1779219083803,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":708677,"timestamp":411111582794,"id":98,"parentId":55,"tags":{},"startTime":1779219083829,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":730289,"timestamp":411111561278,"id":55,"parentId":19,"tags":{"page":"/node"},"startTime":1779219083808,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":720201,"timestamp":411111572680,"id":90,"parentId":24,"tags":{},"startTime":1779219083819,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":741841,"timestamp":411111551092,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1779219083797,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":733956,"timestamp":411111582816,"id":100,"parentId":58,"tags":{},"startTime":1779219083829,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":754426,"timestamp":411111562423,"id":58,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1779219083809,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":754451,"timestamp":411111582988,"id":102,"parentId":61,"tags":{},"startTime":1779219083829,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":774214,"timestamp":411111563319,"id":61,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1779219083810,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":755043,"timestamp":411111582766,"id":96,"parentId":53,"tags":{},"startTime":1779219083829,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":776997,"timestamp":411111560858,"id":53,"parentId":19,"tags":{"page":"/logs"},"startTime":1779219083807,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":756623,"timestamp":411111582754,"id":95,"parentId":52,"tags":{},"startTime":1779219083829,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":778769,"timestamp":411111560670,"id":52,"parentId":19,"tags":{"page":"/login"},"startTime":1779219083807,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":762806,"timestamp":411111583028,"id":104,"parentId":63,"tags":{},"startTime":1779219083829,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":782242,"timestamp":411111563650,"id":63,"parentId":19,"tags":{"page":"/tasks"},"startTime":1779219083810,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":747932,"timestamp":411111599223,"id":105,"parentId":57,"tags":{},"startTime":1779219083846,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":785420,"timestamp":411111561775,"id":57,"parentId":19,"tags":{"page":"/"},"startTime":1779219083808,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":770616,"timestamp":411111582999,"id":103,"parentId":62,"tags":{},"startTime":1779219083829,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":790161,"timestamp":411111563495,"id":62,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1779219083810,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":772678,"timestamp":411111582780,"id":97,"parentId":54,"tags":{},"startTime":1779219083829,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":794455,"timestamp":411111561048,"id":54,"parentId":19,"tags":{"page":"/messages"},"startTime":1779219083807,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":775101,"timestamp":411111582807,"id":99,"parentId":56,"tags":{},"startTime":1779219083829,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":796434,"timestamp":411111561517,"id":56,"parentId":19,"tags":{"page":"/nodes"},"startTime":1779219083808,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":749528,"timestamp":411111608965,"id":106,"parentId":60,"tags":{},"startTime":1779219083855,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":795688,"timestamp":411111562846,"id":60,"parentId":19,"tags":{"page":"/settings"},"startTime":1779219083809,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":776879,"timestamp":411111582722,"id":94,"parentId":23,"tags":{},"startTime":1779219083829,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":808837,"timestamp":411111550809,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1779219083797,"traceId":"604b55deb37e44d1"},{"name":"is-page-static","duration":791955,"timestamp":411111582964,"id":101,"parentId":59,"tags":{},"startTime":1779219083829,"traceId":"604b55deb37e44d1"},{"name":"check-page","duration":812322,"timestamp":411111562647,"id":59,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1779219083809,"traceId":"604b55deb37e44d1"},{"name":"static-check","duration":829154,"timestamp":411111545882,"id":19,"parentId":1,"tags":{},"startTime":1779219083792,"traceId":"604b55deb37e44d1"}]
|
|
2
|
+
[{"name":"write-routes-manifest","duration":539,"timestamp":411112387875,"id":108,"parentId":1,"tags":{},"startTime":1779219084634,"traceId":"604b55deb37e44d1"},{"name":"load-dotenv","duration":49,"timestamp":411112400519,"id":111,"parentId":110,"tags":{},"startTime":1779219084647,"traceId":"604b55deb37e44d1"},{"name":"run-export-path-map","duration":516,"timestamp":411112403342,"id":112,"parentId":110,"tags":{},"startTime":1779219084650,"traceId":"604b55deb37e44d1"},{"name":"next-export","duration":673042,"timestamp":411112399261,"id":110,"parentId":1,"tags":{},"startTime":1779219084646,"traceId":"604b55deb37e44d1"},{"name":"move-exported-app-not-found-","duration":724,"timestamp":411113075965,"id":113,"parentId":109,"tags":{},"startTime":1779219085322,"traceId":"604b55deb37e44d1"},{"name":"move-exported-app-global-error-","duration":611,"timestamp":411113076802,"id":114,"parentId":109,"tags":{},"startTime":1779219085323,"traceId":"604b55deb37e44d1"},{"name":"static-generation","duration":687099,"timestamp":411112393040,"id":109,"parentId":1,"tags":{},"startTime":1779219084639,"traceId":"604b55deb37e44d1"},{"name":"write-routes-manifest","duration":396,"timestamp":411113080409,"id":115,"parentId":1,"tags":{},"startTime":1779219085327,"traceId":"604b55deb37e44d1"},{"name":"print-tree-view","duration":4788,"timestamp":411113099827,"id":116,"parentId":1,"tags":{},"startTime":1779219085346,"traceId":"604b55deb37e44d1"},{"name":"write-route-bundle-stats","duration":15080,"timestamp":411113104662,"id":117,"parentId":1,"tags":{},"startTime":1779219085351,"traceId":"604b55deb37e44d1"},{"name":"telemetry-flush","duration":21637,"timestamp":411113119778,"id":118,"parentId":1,"tags":{},"startTime":1779219085366,"traceId":"604b55deb37e44d1"},{"name":"next-build","duration":20171551,"timestamp":411092969895,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1779219065216,"traceId":"604b55deb37e44d1"}]
|
package/.next/trace-build
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"name":"run-turbopack","duration":
|
|
1
|
+
[{"name":"run-turbopack","duration":7382412,"timestamp":411093226888,"id":14,"parentId":1,"tags":{},"startTime":1779219065473,"traceId":"604b55deb37e44d1"},{"name":"turbopack-build-events","duration":119,"timestamp":411093532702,"id":15,"parentId":1,"tags":{},"startTime":1779219065779,"traceId":"604b55deb37e44d1"},{"name":"run-typescript","duration":10710380,"timestamp":411100635374,"id":16,"parentId":1,"tags":{},"startTime":1779219072882,"traceId":"604b55deb37e44d1"},{"name":"static-check","duration":829154,"timestamp":411111545882,"id":19,"parentId":1,"tags":{},"startTime":1779219083792,"traceId":"604b55deb37e44d1"},{"name":"static-generation","duration":687099,"timestamp":411112393040,"id":109,"parentId":1,"tags":{},"startTime":1779219084639,"traceId":"604b55deb37e44d1"},{"name":"telemetry-flush","duration":21637,"timestamp":411113119778,"id":118,"parentId":1,"tags":{},"startTime":1779219085366,"traceId":"604b55deb37e44d1"},{"name":"next-build","duration":20171551,"timestamp":411092969895,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1779219065216,"traceId":"604b55deb37e44d1"}]
|
|
@@ -4921,11 +4921,20 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
|
|
|
4921
4921
|
produce full breath-family map (cadences + axes)
|
|
4922
4922
|
- Future rounds: when adding a new dual-axis to an
|
|
4923
4923
|
existing breath anchor, append to this list */
|
|
4924
|
+
/* Round 721 / Loop — kicker entry promoted from dual-axis to
|
|
4925
|
+
TRIPLE-axis. R699 opacity + R714 transform-scale joined
|
|
4926
|
+
by R721 text-shadow at the same 6 s cadence. The catalog
|
|
4927
|
+
attribute name stays "dual-axis-surfaces" for back-compat
|
|
4928
|
+
(consumers querying `*='"kicker"'` continue to work) but
|
|
4929
|
+
the axes array now lists 3 entries. R721 widens the test
|
|
4930
|
+
to allow axes.length 2..3 and to recognise "text-shadow"
|
|
4931
|
+
alongside the prior 2nd-axis taxonomy. Future polysemic
|
|
4932
|
+
surfaces (3+ axes) append in the same shape. */
|
|
4924
4933
|
data-topo-respiratory-dual-axis-surfaces={JSON.stringify([
|
|
4925
|
-
{ anchor: "kicker", cadence_s: 6, axes: ["opacity", "transform-scale"] },
|
|
4934
|
+
{ anchor: "kicker", cadence_s: 6, axes: ["opacity", "transform-scale", "text-shadow"] },
|
|
4926
4935
|
{ anchor: "zoom-level", cadence_s: 9, axes: ["opacity", "transform-scale"] },
|
|
4927
4936
|
{ anchor: "H2", cadence_s: 10, axes: ["opacity", "transform-scale"] },
|
|
4928
|
-
{ anchor: "watermark", cadence_s: 6, axes: ["opacity", "letter-spacing"] },
|
|
4937
|
+
{ anchor: "watermark", cadence_s: 6, axes: ["opacity", "letter-spacing", "text-shadow"] },
|
|
4929
4938
|
{ anchor: "recent", cadence_s: 8, axes: ["opacity", "font-size"] },
|
|
4930
4939
|
{ anchor: "legend", cadence_s: 8, axes: ["opacity", "font-size"] },
|
|
4931
4940
|
])}
|
|
@@ -15750,6 +15759,17 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
|
|
|
15750
15759
|
opacity="0.4"
|
|
15751
15760
|
data-topo-brand-watermark
|
|
15752
15761
|
data-topo-brand-watermark-breath={reducedMotion ? 'false' : 'true'}
|
|
15762
|
+
/* Round 722 / Loop — watermark promoted to 2ND triple-axis
|
|
15763
|
+
surface. CSS text-shadow axis joins the SMIL opacity (R519)
|
|
15764
|
+
+ SMIL letter-spacing (R712) axes — all 3 at 6 s in phase.
|
|
15765
|
+
Mirrors R721 kicker; together they form the "6 s triple-
|
|
15766
|
+
axis pair", the first multi-member triple-axis structural
|
|
15767
|
+
pattern in the family. Gated by reducedMotion at the JSX
|
|
15768
|
+
level (sibling to the SMIL <animate> children below) so
|
|
15769
|
+
the CSS animation has the same a11y guard. See globals.css
|
|
15770
|
+
R722 block for glow tuning rationale. */
|
|
15771
|
+
data-topo-brand-watermark-glow-breath={reducedMotion ? 'false' : '6s'}
|
|
15772
|
+
className={reducedMotion ? undefined : 'anet-topo-brand-watermark-glow-breath'}
|
|
15753
15773
|
style={{ pointerEvents: 'none', transition: 'fill 200ms ease-out' }}
|
|
15754
15774
|
>sleep2agi{!reducedMotion && (
|
|
15755
15775
|
<animate attributeName="opacity" values="0.32;0.48;0.32" dur="6s" repeatCount="indefinite" />
|
package/app/globals.css
CHANGED
|
@@ -1311,9 +1311,83 @@ body {
|
|
|
1311
1311
|
transform-origin defaults to center — kicker scales around its own
|
|
1312
1312
|
midpoint, no glyph drift. paint-only → flex parent stable → topo-
|
|
1313
1313
|
overlap-test untouched. prefers-reduced-motion: reduce neutralizes. */
|
|
1314
|
+
/* Round 722 — watermark text becomes the 2ND TRIPLE-axis surface,
|
|
1315
|
+
completing a "6 s triple-axis PAIR" with R721 kicker (both at the
|
|
1316
|
+
fastest dual-axis cadence, both with sparse hover signatures, both
|
|
1317
|
+
read-target text — symmetric structural mirror).
|
|
1318
|
+
|
|
1319
|
+
The watermark's prior axes:
|
|
1320
|
+
R519 SMIL opacity (6 s, 0.32 ↔ 0.48)
|
|
1321
|
+
R712 SMIL letter-spacing (6 s, 0.45 ↔ 0.55)
|
|
1322
|
+
R722 adds a 3rd CSS-animated axis on the SAME `<text>` element:
|
|
1323
|
+
R722 CSS text-shadow (6 s, none ↔ 0 0 8 px rgba(34, 211, 238, 0.20))
|
|
1324
|
+
|
|
1325
|
+
The SMIL animations (opacity + letter-spacing) drive SVG attributes
|
|
1326
|
+
in their own clock; the CSS animation drives `text-shadow` as a CSS
|
|
1327
|
+
property. SVG <text> in modern browsers honours both vocabularies
|
|
1328
|
+
on the same element — no conflict. The 6 s cadence shared across
|
|
1329
|
+
all 3 axes keeps them in phase: at the dimmest+tightest moment the
|
|
1330
|
+
glow appears; at the brightest+widest moment the glow is gone. One
|
|
1331
|
+
coherent inhale-exhale.
|
|
1332
|
+
|
|
1333
|
+
Glow tuning vs kicker (R721):
|
|
1334
|
+
kicker blur 6 px, alpha 0.30
|
|
1335
|
+
watermark blur 8 px, alpha 0.20
|
|
1336
|
+
The watermark text sits at canvas bottom-left at fontSize 11 with
|
|
1337
|
+
a base opacity of 0.4 (R282) — the glow needs more spread (8 vs 6)
|
|
1338
|
+
to register at that low base opacity, but less alpha (0.20 vs 0.30)
|
|
1339
|
+
to stay proportional to the wordmark's quieter visual register.
|
|
1340
|
+
|
|
1341
|
+
Gating: piggybacks on the existing R519 reducedMotion JSX gate
|
|
1342
|
+
(the entire <animate> tree only mounts when !reducedMotion). When
|
|
1343
|
+
reducedMotion is true the class is still applied but the @media
|
|
1344
|
+
(prefers-reduced-motion: reduce) below neutralises the CSS
|
|
1345
|
+
animation. Belt-and-suspenders. */
|
|
1346
|
+
@keyframes anet-topo-brand-watermark-glow-breath-kf {
|
|
1347
|
+
0%, 100% { text-shadow: none; }
|
|
1348
|
+
50% { text-shadow: 0 0 8px rgba(34, 211, 238, 0.20); }
|
|
1349
|
+
}
|
|
1350
|
+
.anet-topo-brand-watermark-glow-breath {
|
|
1351
|
+
animation: anet-topo-brand-watermark-glow-breath-kf 6s ease-in-out infinite;
|
|
1352
|
+
}
|
|
1353
|
+
@media (prefers-reduced-motion: reduce) {
|
|
1354
|
+
.anet-topo-brand-watermark-glow-breath { animation: none; }
|
|
1355
|
+
}
|
|
1356
|
+
|
|
1357
|
+
/* Round 721 — kicker becomes the family's first TRIPLE-axis breath
|
|
1358
|
+
surface. R699 opacity (6 s) + R714 transform-scale (6 s) joined by
|
|
1359
|
+
R721 text-shadow (6 s) — all 3 axes share the 6 s cadence in phase.
|
|
1360
|
+
|
|
1361
|
+
At rest peak (0%, 100%) the kicker reads as a static title;
|
|
1362
|
+
at mid-breath (50%) it dims (0.78), retracts (scale 0.995), AND
|
|
1363
|
+
emits a soft cyan glow (text-shadow 0 0 6px rgba(34, 211, 238, 0.30)).
|
|
1364
|
+
The glow appears OUT-OF-PHASE with the dim — as the text shrinks
|
|
1365
|
+
slightly it gains a subtle aura. Reads as an "inhale glow": a small
|
|
1366
|
+
visible payoff at the bottom of the breath cycle.
|
|
1367
|
+
|
|
1368
|
+
Why kicker first (vs other dual-axis surfaces):
|
|
1369
|
+
- kicker has the SPARSEST hover signature in the family — being
|
|
1370
|
+
below H2 (the page heading), it's read-target text, not an
|
|
1371
|
+
interactive surface. The breath family's "if hover sig sparse,
|
|
1372
|
+
dual-axis; if hover sig rich, single-axis" budget rule extends
|
|
1373
|
+
naturally to "if hover sig SPARSE, can go triple-axis".
|
|
1374
|
+
- 6 s is the fastest dual-axis cadence in the rolodex — at fast
|
|
1375
|
+
cadence the 3rd axis (a glow appear+disappear cycle every 3 s
|
|
1376
|
+
on each half) registers as ambient rhythm, not a distraction.
|
|
1377
|
+
|
|
1378
|
+
text-shadow chosen over letter-spacing or font-size because:
|
|
1379
|
+
- text-shadow doesn't reflow text (no horizontal motion)
|
|
1380
|
+
- glow against the dark canvas reads clearly without competing
|
|
1381
|
+
with the opacity dim
|
|
1382
|
+
- cyan tint at 30% alpha + 6 px blur is below the brightness
|
|
1383
|
+
threshold of any node halo (R674/R675 nodes use 0.5+ alpha)
|
|
1384
|
+
|
|
1385
|
+
Composition note: the R29 prefers-reduced-motion guard already
|
|
1386
|
+
neutralizes the entire 6 s animation; no separate text-shadow
|
|
1387
|
+
reduced-motion logic needed. */
|
|
1314
1388
|
@keyframes anet-topo-kicker-breath-kf {
|
|
1315
|
-
0%, 100% { opacity: 1; transform: scale(1); }
|
|
1316
|
-
50% { opacity: 0.78; transform: scale(0.995); }
|
|
1389
|
+
0%, 100% { opacity: 1; transform: scale(1); text-shadow: none; }
|
|
1390
|
+
50% { opacity: 0.78; transform: scale(0.995); text-shadow: 0 0 6px rgba(34, 211, 238, 0.30); }
|
|
1317
1391
|
}
|
|
1318
1392
|
.anet-topo-kicker-breath {
|
|
1319
1393
|
animation: anet-topo-kicker-breath-kf 6s ease-in-out infinite;
|
package/package.json
CHANGED
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/* Round 721 — kicker promoted from dual-axis to TRIPLE-axis breath.
|
|
2
|
+
* R699 opacity (6 s) + R714 transform-scale (6 s) joined by R721
|
|
3
|
+
* text-shadow (6 s) — all 3 axes share the 6 s cadence in phase.
|
|
4
|
+
* First triple-axis surface in the family.
|
|
5
|
+
*
|
|
6
|
+
* Glow specification: at mid-breath (50%) the kicker emits
|
|
7
|
+
* text-shadow: 0 0 6px rgba(34, 211, 238, 0.30). Reads as an "inhale
|
|
8
|
+
* glow" — a subtle cyan aura appears as the text dims and shrinks.
|
|
9
|
+
*
|
|
10
|
+
* Assertions:
|
|
11
|
+
* - CSS keyframes 0%/100% has text-shadow: none
|
|
12
|
+
* - CSS keyframes 50% has text-shadow: 0 0 6px rgba(34, 211, 238, 0.30)
|
|
13
|
+
* - existing opacity (1 ↔ 0.78) + transform-scale (1 ↔ 0.995) axes
|
|
14
|
+
* preserved in same @keyframes block (R699 + R714 still composing)
|
|
15
|
+
* - .anet-topo-kicker-breath rule still binds 6 s cadence
|
|
16
|
+
* - prefers-reduced-motion guard still present
|
|
17
|
+
* - runtime kicker has the breath class + 6s data attr (preserved)
|
|
18
|
+
* - R716 catalog kicker entry axes = ["opacity", "transform-scale", "text-shadow"]
|
|
19
|
+
* - kicker is the ONLY entry with 3 axes (first triple-axis surface)
|
|
20
|
+
* - text-shadow appears nowhere else in the catalog (kicker exclusive)
|
|
21
|
+
*/
|
|
22
|
+
import { chromium } from 'playwright';
|
|
23
|
+
import { readFileSync } from 'node:fs';
|
|
24
|
+
|
|
25
|
+
const TOKEN = JSON.parse(readFileSync('/home/vansin/.anet/config.json', 'utf8')).token;
|
|
26
|
+
const fresh = new Date(Date.now() - 60 * 1000).toISOString();
|
|
27
|
+
|
|
28
|
+
const browser = await chromium.launch({ headless: true });
|
|
29
|
+
const ctx = await browser.newContext({ viewport: { width: 1500, height: 1200 } });
|
|
30
|
+
await ctx.addCookies([{ name: 'anet_dashboard_session', value: `v3:${TOKEN}`, domain: '127.0.0.1', path: '/' }]);
|
|
31
|
+
await ctx.addInitScript(() => {
|
|
32
|
+
try {
|
|
33
|
+
localStorage.setItem('anet-theme', 'cyber');
|
|
34
|
+
localStorage.setItem('anet-topo-layout', 'ring');
|
|
35
|
+
sessionStorage.setItem('anet_v3_auth', '1');
|
|
36
|
+
} catch {}
|
|
37
|
+
});
|
|
38
|
+
await ctx.route('**/api/hub/status*', async (route) => {
|
|
39
|
+
const r = await route.fetch();
|
|
40
|
+
const b = await r.json();
|
|
41
|
+
const nid = (b.sessions || [])[0]?.network_id || 'default';
|
|
42
|
+
const mk = (alias) => ({
|
|
43
|
+
alias, status: 'idle', model: 'claude-opus-4', runtime: 'claude-code-cli',
|
|
44
|
+
network_id: nid, project_dir: null,
|
|
45
|
+
created_at: fresh, updated_at: fresh, last_seen_at: fresh,
|
|
46
|
+
});
|
|
47
|
+
await route.fulfill({ response: r, json: { ...b, sessions: [mk('a·1'), mk('a·2')] } });
|
|
48
|
+
});
|
|
49
|
+
await ctx.route('**/api/hub/messages*', (r) => r.fulfill({ json: { messages: [] } }));
|
|
50
|
+
await ctx.route('**/api/hub/tasks*', (r) => r.fulfill({ json: { tasks: [] } }));
|
|
51
|
+
const page = await ctx.newPage();
|
|
52
|
+
await page.goto('http://127.0.0.1:3000/', { waitUntil: 'networkidle' });
|
|
53
|
+
await page.waitForSelector('.anet-topo-kicker-breath', { timeout: 15000, state: 'attached' });
|
|
54
|
+
await page.waitForTimeout(300);
|
|
55
|
+
|
|
56
|
+
const runtimeState = await page.evaluate(() => {
|
|
57
|
+
const kicker = document.querySelector('.anet-topo-kicker-breath');
|
|
58
|
+
if (!kicker) return null;
|
|
59
|
+
const cs = getComputedStyle(kicker);
|
|
60
|
+
const svg = document.querySelector('[data-topo-canvas-aria]');
|
|
61
|
+
return {
|
|
62
|
+
has_class: kicker.classList.contains('anet-topo-kicker-breath'),
|
|
63
|
+
breath_attr: kicker.getAttribute('data-topo-section-kicker-breath'),
|
|
64
|
+
anim_name: cs.animationName,
|
|
65
|
+
anim_duration: cs.animationDuration,
|
|
66
|
+
catalog: svg?.getAttribute('data-topo-respiratory-dual-axis-surfaces') ?? null,
|
|
67
|
+
};
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
await browser.close();
|
|
71
|
+
|
|
72
|
+
const cssSrc = readFileSync('/home/vansin/agent-network-dashboard/app/globals.css', 'utf8');
|
|
73
|
+
// 0%/100% keyframe must include text-shadow: none + opacity:1 + transform: scale(1)
|
|
74
|
+
const cssKf0_Triple = /@keyframes anet-topo-kicker-breath-kf\s*\{[\s\S]*?0%,\s*100%\s*\{[\s\S]*?opacity:\s*1[\s\S]*?transform:\s*scale\(1\)[\s\S]*?text-shadow:\s*none[\s\S]*?\}/.test(cssSrc);
|
|
75
|
+
// 50% keyframe must include text-shadow: 0 0 6px rgba(34, 211, 238, 0.30) + dim opacity + retract scale
|
|
76
|
+
const cssKf50_Triple = /@keyframes anet-topo-kicker-breath-kf\s*\{[\s\S]*?50%\s*\{[\s\S]*?opacity:\s*0\.78[\s\S]*?transform:\s*scale\(0\.995\)[\s\S]*?text-shadow:\s*0\s+0\s+6px\s+rgba\(34,\s*211,\s*238,\s*0\.30\)/.test(cssSrc);
|
|
77
|
+
const cssClassBound6s = /\.anet-topo-kicker-breath\s*\{[\s\S]*?animation:\s*anet-topo-kicker-breath-kf\s+6s\s+ease-in-out\s+infinite/.test(cssSrc);
|
|
78
|
+
const cssReducedMotion = /@media\s*\(prefers-reduced-motion:\s*reduce\)\s*\{[\s\S]*?\.anet-topo-kicker-breath\s*\{\s*animation:\s*none/.test(cssSrc);
|
|
79
|
+
|
|
80
|
+
const runtimeAnim = runtimeState?.anim_name === 'anet-topo-kicker-breath-kf' || runtimeState?.anim_name === 'none';
|
|
81
|
+
|
|
82
|
+
let catalog = null;
|
|
83
|
+
try { catalog = JSON.parse(runtimeState?.catalog ?? ''); } catch {}
|
|
84
|
+
const kickerEntry = Array.isArray(catalog) ? catalog.find(e => e.anchor === 'kicker') : null;
|
|
85
|
+
const kickerTripleAxes = !!kickerEntry
|
|
86
|
+
&& Array.isArray(kickerEntry.axes)
|
|
87
|
+
&& kickerEntry.axes.length === 3
|
|
88
|
+
&& JSON.stringify(kickerEntry.axes) === JSON.stringify(['opacity', 'transform-scale', 'text-shadow']);
|
|
89
|
+
|
|
90
|
+
const tripleAxisSurfaces = Array.isArray(catalog)
|
|
91
|
+
? catalog.filter(e => Array.isArray(e.axes) && e.axes.length === 3)
|
|
92
|
+
: [];
|
|
93
|
+
const onlyKickerTriple = tripleAxisSurfaces.length === 1 && tripleAxisSurfaces[0]?.anchor === 'kicker';
|
|
94
|
+
|
|
95
|
+
const textShadowSurfaces = Array.isArray(catalog)
|
|
96
|
+
? catalog.filter(e => Array.isArray(e.axes) && e.axes.includes('text-shadow'))
|
|
97
|
+
: [];
|
|
98
|
+
const textShadowKickerExclusive = textShadowSurfaces.length === 1 && textShadowSurfaces[0]?.anchor === 'kicker';
|
|
99
|
+
|
|
100
|
+
const results = {
|
|
101
|
+
kicker_present: !!runtimeState,
|
|
102
|
+
has_breath_class: runtimeState?.has_class === true,
|
|
103
|
+
breath_cadence_attr_6s: runtimeState?.breath_attr === '6s',
|
|
104
|
+
runtime_anim_kicker_kf: runtimeAnim,
|
|
105
|
+
css_0_100_triple_axis: cssKf0_Triple,
|
|
106
|
+
css_50_triple_axis_with_glow: cssKf50_Triple,
|
|
107
|
+
css_class_binds_6s: cssClassBound6s,
|
|
108
|
+
css_reduced_motion_guard: cssReducedMotion,
|
|
109
|
+
catalog_kicker_three_axes: kickerTripleAxes,
|
|
110
|
+
only_kicker_is_triple_axis: onlyKickerTriple,
|
|
111
|
+
text_shadow_exclusive_to_kicker: textShadowKickerExclusive,
|
|
112
|
+
};
|
|
113
|
+
const ok = Object.values(results).every(Boolean);
|
|
114
|
+
console.log(`${ok ? '✅' : '❌'} R721 kicker triple-axis breath (first 3-axis surface: opacity + transform-scale + text-shadow @ 6s):`,
|
|
115
|
+
JSON.stringify(results, null, 2),
|
|
116
|
+
`\n kicker entry: ${JSON.stringify(kickerEntry)}`,
|
|
117
|
+
`\n runtime: ${JSON.stringify({ anim_name: runtimeState?.anim_name, anim_duration: runtimeState?.anim_duration })}`);
|
|
118
|
+
process.exit(ok ? 0 : 1);
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/* Round 722 — watermark becomes the 2ND triple-axis breath surface.
|
|
2
|
+
* R519 SMIL opacity + R712 SMIL letter-spacing joined by R722 CSS
|
|
3
|
+
* text-shadow — all 3 axes at 6 s in phase. Together with R721 kicker
|
|
4
|
+
* they form the "6 s triple-axis PAIR" — the first multi-member
|
|
5
|
+
* triple-axis structural pattern in the family.
|
|
6
|
+
*
|
|
7
|
+
* Tuning vs kicker: blur 8px (vs 6px), alpha 0.20 (vs 0.30) — wider
|
|
8
|
+
* spread + lower alpha to register at the watermark's quieter base
|
|
9
|
+
* opacity (0.4 from R282) without overpowering.
|
|
10
|
+
*
|
|
11
|
+
* Assertions:
|
|
12
|
+
* - CSS keyframes 0%/100% has text-shadow: none
|
|
13
|
+
* - CSS keyframes 50% has text-shadow: 0 0 8px rgba(34, 211, 238, 0.20)
|
|
14
|
+
* - .anet-topo-brand-watermark-glow-breath rule binds 6s cadence
|
|
15
|
+
* - prefers-reduced-motion guard present
|
|
16
|
+
* - runtime watermark <text> has the glow class
|
|
17
|
+
* - runtime glow-breath data-attr = "6s" (or "false" if reducedMotion)
|
|
18
|
+
* - existing R519 SMIL opacity animate child still present (regression)
|
|
19
|
+
* - existing R712 SMIL letter-spacing animate child still present (regression)
|
|
20
|
+
* - R716 catalog watermark entry axes = ["opacity", "letter-spacing", "text-shadow"]
|
|
21
|
+
* - 2 surfaces now triple-axis (kicker + watermark) — 6s triple-axis PAIR
|
|
22
|
+
*/
|
|
23
|
+
import { chromium } from 'playwright';
|
|
24
|
+
import { readFileSync } from 'node:fs';
|
|
25
|
+
|
|
26
|
+
const TOKEN = JSON.parse(readFileSync('/home/vansin/.anet/config.json', 'utf8')).token;
|
|
27
|
+
const fresh = new Date(Date.now() - 60 * 1000).toISOString();
|
|
28
|
+
|
|
29
|
+
const browser = await chromium.launch({ headless: true });
|
|
30
|
+
const ctx = await browser.newContext({ viewport: { width: 1500, height: 1200 } });
|
|
31
|
+
await ctx.addCookies([{ name: 'anet_dashboard_session', value: `v3:${TOKEN}`, domain: '127.0.0.1', path: '/' }]);
|
|
32
|
+
await ctx.addInitScript(() => {
|
|
33
|
+
try {
|
|
34
|
+
localStorage.setItem('anet-theme', 'cyber');
|
|
35
|
+
localStorage.setItem('anet-topo-layout', 'ring');
|
|
36
|
+
sessionStorage.setItem('anet_v3_auth', '1');
|
|
37
|
+
} catch {}
|
|
38
|
+
});
|
|
39
|
+
await ctx.route('**/api/hub/status*', async (route) => {
|
|
40
|
+
const r = await route.fetch();
|
|
41
|
+
const b = await r.json();
|
|
42
|
+
const nid = (b.sessions || [])[0]?.network_id || 'default';
|
|
43
|
+
const mk = (alias) => ({
|
|
44
|
+
alias, status: 'idle', model: 'claude-opus-4', runtime: 'claude-code-cli',
|
|
45
|
+
network_id: nid, project_dir: null,
|
|
46
|
+
created_at: fresh, updated_at: fresh, last_seen_at: fresh,
|
|
47
|
+
});
|
|
48
|
+
await route.fulfill({ response: r, json: { ...b, sessions: [mk('a·1'), mk('a·2')] } });
|
|
49
|
+
});
|
|
50
|
+
await ctx.route('**/api/hub/messages*', (r) => r.fulfill({ json: { messages: [] } }));
|
|
51
|
+
await ctx.route('**/api/hub/tasks*', (r) => r.fulfill({ json: { tasks: [] } }));
|
|
52
|
+
const page = await ctx.newPage();
|
|
53
|
+
await page.goto('http://127.0.0.1:3000/', { waitUntil: 'networkidle' });
|
|
54
|
+
await page.waitForSelector('[data-topo-brand-watermark]', { timeout: 15000, state: 'attached' });
|
|
55
|
+
await page.waitForTimeout(300);
|
|
56
|
+
|
|
57
|
+
const runtimeState = await page.evaluate(() => {
|
|
58
|
+
const wm = document.querySelector('[data-topo-brand-watermark]');
|
|
59
|
+
if (!wm) return null;
|
|
60
|
+
const cs = getComputedStyle(wm);
|
|
61
|
+
const smilOpacity = wm.querySelector('animate[attributeName="opacity"]');
|
|
62
|
+
const smilLetterSpace = wm.querySelector('animate[attributeName="letter-spacing"]');
|
|
63
|
+
const svg = document.querySelector('[data-topo-canvas-aria]');
|
|
64
|
+
return {
|
|
65
|
+
has_glow_class: wm.classList.contains('anet-topo-brand-watermark-glow-breath'),
|
|
66
|
+
glow_attr: wm.getAttribute('data-topo-brand-watermark-glow-breath'),
|
|
67
|
+
anim_name: cs.animationName,
|
|
68
|
+
anim_duration: cs.animationDuration,
|
|
69
|
+
smil_opacity_present: !!smilOpacity,
|
|
70
|
+
smil_opacity_dur: smilOpacity?.getAttribute('dur'),
|
|
71
|
+
smil_letter_present: !!smilLetterSpace,
|
|
72
|
+
smil_letter_dur: smilLetterSpace?.getAttribute('dur'),
|
|
73
|
+
catalog: svg?.getAttribute('data-topo-respiratory-dual-axis-surfaces') ?? null,
|
|
74
|
+
};
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
await browser.close();
|
|
78
|
+
|
|
79
|
+
const cssSrc = readFileSync('/home/vansin/agent-network-dashboard/app/globals.css', 'utf8');
|
|
80
|
+
const cssKfNone = /@keyframes anet-topo-brand-watermark-glow-breath-kf\s*\{[\s\S]*?0%,\s*100%\s*\{[\s\S]*?text-shadow:\s*none/.test(cssSrc);
|
|
81
|
+
const cssKfGlow = /@keyframes anet-topo-brand-watermark-glow-breath-kf\s*\{[\s\S]*?50%\s*\{[\s\S]*?text-shadow:\s*0\s+0\s+8px\s+rgba\(34,\s*211,\s*238,\s*0\.20\)/.test(cssSrc);
|
|
82
|
+
const cssClassBound6s = /\.anet-topo-brand-watermark-glow-breath\s*\{[\s\S]*?animation:\s*anet-topo-brand-watermark-glow-breath-kf\s+6s\s+ease-in-out\s+infinite/.test(cssSrc);
|
|
83
|
+
const cssReducedMotion = /@media\s*\(prefers-reduced-motion:\s*reduce\)\s*\{[\s\S]*?\.anet-topo-brand-watermark-glow-breath\s*\{\s*animation:\s*none/.test(cssSrc);
|
|
84
|
+
|
|
85
|
+
const runtimeAnimOk = runtimeState?.anim_name === 'anet-topo-brand-watermark-glow-breath-kf' || runtimeState?.anim_name === 'none';
|
|
86
|
+
|
|
87
|
+
let catalog = null;
|
|
88
|
+
try { catalog = JSON.parse(runtimeState?.catalog ?? ''); } catch {}
|
|
89
|
+
const wmEntry = Array.isArray(catalog) ? catalog.find(e => e.anchor === 'watermark') : null;
|
|
90
|
+
const wmTripleAxes = !!wmEntry
|
|
91
|
+
&& Array.isArray(wmEntry.axes)
|
|
92
|
+
&& wmEntry.axes.length === 3
|
|
93
|
+
&& JSON.stringify(wmEntry.axes) === JSON.stringify(['opacity', 'letter-spacing', 'text-shadow']);
|
|
94
|
+
|
|
95
|
+
const tripleAxisSurfaces = Array.isArray(catalog)
|
|
96
|
+
? catalog.filter(e => Array.isArray(e.axes) && e.axes.length === 3)
|
|
97
|
+
: [];
|
|
98
|
+
const tripleAxisAnchorsSorted = tripleAxisSurfaces.map(e => e.anchor).sort();
|
|
99
|
+
const triple6sPair =
|
|
100
|
+
tripleAxisSurfaces.length === 2
|
|
101
|
+
&& JSON.stringify(tripleAxisAnchorsSorted) === JSON.stringify(['kicker', 'watermark'])
|
|
102
|
+
&& tripleAxisSurfaces.every(e => e.cadence_s === 6);
|
|
103
|
+
|
|
104
|
+
const results = {
|
|
105
|
+
watermark_present: !!runtimeState,
|
|
106
|
+
has_glow_class: runtimeState?.has_glow_class === true,
|
|
107
|
+
glow_attr_6s: runtimeState?.glow_attr === '6s',
|
|
108
|
+
runtime_anim_kf: runtimeAnimOk,
|
|
109
|
+
css_keyframes_norm_none: cssKfNone,
|
|
110
|
+
css_keyframes_mid_glow: cssKfGlow,
|
|
111
|
+
css_class_binds_6s: cssClassBound6s,
|
|
112
|
+
css_reduced_motion_guard: cssReducedMotion,
|
|
113
|
+
r519_smil_opacity_kept: runtimeState?.smil_opacity_present === true && runtimeState?.smil_opacity_dur === '6s',
|
|
114
|
+
r712_smil_letter_kept: runtimeState?.smil_letter_present === true && runtimeState?.smil_letter_dur === '6s',
|
|
115
|
+
catalog_watermark_three_axes: wmTripleAxes,
|
|
116
|
+
triple_axis_pair_6s: triple6sPair,
|
|
117
|
+
};
|
|
118
|
+
const ok = Object.values(results).every(Boolean);
|
|
119
|
+
console.log(`${ok ? '✅' : '❌'} R722 watermark triple-axis breath (2nd triple-axis surface, 6s triple-axis PAIR with kicker):`,
|
|
120
|
+
JSON.stringify(results, null, 2),
|
|
121
|
+
`\n watermark entry: ${JSON.stringify(wmEntry)}`,
|
|
122
|
+
`\n triple-axis surfaces: ${JSON.stringify(tripleAxisAnchorsSorted)}`,
|
|
123
|
+
`\n runtime: ${JSON.stringify({ anim_name: runtimeState?.anim_name, anim_duration: runtimeState?.anim_duration, smil_opacity: runtimeState?.smil_opacity_dur, smil_letter: runtimeState?.smil_letter_dur })}`);
|
|
124
|
+
process.exit(ok ? 0 : 1);
|
|
File without changes
|
/package/.next/static/{5ImJ7M0tzN5ebxpw_xGuQ → WYAuMkEsFDmtcHbTDRXKc}/_clientMiddlewareManifest.js
RENAMED
|
File without changes
|
|
File without changes
|