@sleep2agi/agent-network-dashboard 0.4.6-preview.187 → 0.4.6-preview.189
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 +4 -4
- package/.next/fallback-build-manifest.json +3 -3
- package/.next/prerender-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.html +1 -1
- package/.next/server/app/_not-found.rsc +1 -1
- package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- 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 +1 -1
- package/.next/server/app/admin.html +1 -1
- package/.next/server/app/admin.rsc +1 -1
- package/.next/server/app/admin.segments/_full.segment.rsc +1 -1
- package/.next/server/app/admin.segments/_head.segment.rsc +1 -1
- package/.next/server/app/admin.segments/_index.segment.rsc +1 -1
- package/.next/server/app/admin.segments/_tree.segment.rsc +1 -1
- 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 +2 -2
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/index.segments/_full.segment.rsc +2 -2
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +1 -1
- package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- 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 +2 -2
- package/.next/server/app/login.segments/_full.segment.rsc +2 -2
- package/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/.next/server/app/login.segments/_index.segment.rsc +1 -1
- package/.next/server/app/login.segments/_tree.segment.rsc +1 -1
- 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.html +1 -1
- package/.next/server/app/logs.rsc +1 -1
- package/.next/server/app/logs.segments/_full.segment.rsc +1 -1
- package/.next/server/app/logs.segments/_head.segment.rsc +1 -1
- package/.next/server/app/logs.segments/_index.segment.rsc +1 -1
- package/.next/server/app/logs.segments/_tree.segment.rsc +1 -1
- 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.html +1 -1
- package/.next/server/app/messages.rsc +1 -1
- package/.next/server/app/messages.segments/_full.segment.rsc +1 -1
- package/.next/server/app/messages.segments/_head.segment.rsc +1 -1
- package/.next/server/app/messages.segments/_index.segment.rsc +1 -1
- package/.next/server/app/messages.segments/_tree.segment.rsc +1 -1
- 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.html +1 -1
- package/.next/server/app/node.rsc +1 -1
- package/.next/server/app/node.segments/_full.segment.rsc +1 -1
- package/.next/server/app/node.segments/_head.segment.rsc +1 -1
- package/.next/server/app/node.segments/_index.segment.rsc +1 -1
- package/.next/server/app/node.segments/_tree.segment.rsc +1 -1
- 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.html +1 -1
- package/.next/server/app/nodes.rsc +1 -1
- package/.next/server/app/nodes.segments/_full.segment.rsc +1 -1
- package/.next/server/app/nodes.segments/_head.segment.rsc +1 -1
- package/.next/server/app/nodes.segments/_index.segment.rsc +1 -1
- package/.next/server/app/nodes.segments/_tree.segment.rsc +1 -1
- 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.html +1 -1
- package/.next/server/app/server-logs.rsc +1 -1
- package/.next/server/app/server-logs.segments/_full.segment.rsc +1 -1
- package/.next/server/app/server-logs.segments/_head.segment.rsc +1 -1
- package/.next/server/app/server-logs.segments/_index.segment.rsc +1 -1
- package/.next/server/app/server-logs.segments/_tree.segment.rsc +1 -1
- 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.html +1 -1
- package/.next/server/app/settings/networks.rsc +1 -1
- package/.next/server/app/settings/networks.segments/_full.segment.rsc +1 -1
- package/.next/server/app/settings/networks.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings/networks.segments/_index.segment.rsc +1 -1
- package/.next/server/app/settings/networks.segments/_tree.segment.rsc +1 -1
- 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.html +1 -1
- package/.next/server/app/settings/tokens.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/_full.segment.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/_index.segment.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/_tree.segment.rsc +1 -1
- 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 +2 -2
- package/.next/server/app/settings.segments/_full.segment.rsc +2 -2
- package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings.segments/_index.segment.rsc +1 -1
- package/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
- 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.html +1 -1
- package/.next/server/app/tasks.rsc +1 -1
- package/.next/server/app/tasks.segments/_full.segment.rsc +1 -1
- package/.next/server/app/tasks.segments/_head.segment.rsc +1 -1
- package/.next/server/app/tasks.segments/_index.segment.rsc +1 -1
- package/.next/server/app/tasks.segments/_tree.segment.rsc +1 -1
- 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/agent-network-dashboard_09kk21a._.js +1 -1
- 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 +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/{03g4iuukfk16u.js → 06stz6vkzb81a.js} +1 -1
- package/.next/static/chunks/{10p3-bueb0ork.js → 0_lz~qm7q.dp_.js} +1 -1
- package/.next/static/chunks/{0a9p-es05ep73.js → 0ox0smo6q~4yp.js} +3 -3
- package/.next/trace +2 -2
- package/.next/trace-build +1 -1
- package/app/components/TopoGraph.tsx +64 -18
- package/package.json +1 -1
- package/scripts/topo-endpoint-ring-fade-test.mjs +132 -0
- package/scripts/topo-legend-pin-ring-fade-test.mjs +112 -0
- /package/.next/static/{JXhnVH1uF1ZoAFZNGr7FJ → W1c-GAhF5EI0gxmHl-Tcp}/_buildManifest.js +0 -0
- /package/.next/static/{JXhnVH1uF1ZoAFZNGr7FJ → W1c-GAhF5EI0gxmHl-Tcp}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{JXhnVH1uF1ZoAFZNGr7FJ → W1c-GAhF5EI0gxmHl-Tcp}/_ssgManifest.js +0 -0
package/.next/trace
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
[{"name":"generate-buildid","duration":244,"timestamp":67761204110,"id":4,"parentId":1,"tags":{},"startTime":1778875733450,"traceId":"ba60c1a055950f26"},{"name":"load-custom-routes","duration":454,"timestamp":67761204489,"id":5,"parentId":1,"tags":{},"startTime":1778875733451,"traceId":"ba60c1a055950f26"},{"name":"create-dist-dir","duration":615,"timestamp":67761204982,"id":6,"parentId":1,"tags":{},"startTime":1778875733451,"traceId":"ba60c1a055950f26"},{"name":"clean","duration":436,"timestamp":67761206238,"id":7,"parentId":1,"tags":{},"startTime":1778875733453,"traceId":"ba60c1a055950f26"},{"name":"discover-routes","duration":10081,"timestamp":67761284483,"id":8,"parentId":1,"tags":{},"startTime":1778875733531,"traceId":"ba60c1a055950f26"},{"name":"create-root-mapping","duration":104,"timestamp":67761294620,"id":9,"parentId":1,"tags":{},"startTime":1778875733541,"traceId":"ba60c1a055950f26"},{"name":"generate-route-types","duration":30623,"timestamp":67761296883,"id":10,"parentId":1,"tags":{},"startTime":1778875733543,"traceId":"ba60c1a055950f26"},{"name":"public-dir-conflict-check","duration":126,"timestamp":67761327725,"id":11,"parentId":1,"tags":{},"startTime":1778875733574,"traceId":"ba60c1a055950f26"},{"name":"generate-routes-manifest","duration":4164,"timestamp":67761327980,"id":12,"parentId":1,"tags":{},"startTime":1778875733574,"traceId":"ba60c1a055950f26"},{"name":"run-turbopack","duration":5364020,"timestamp":67761337691,"id":14,"parentId":1,"tags":{},"startTime":1778875733584,"traceId":"ba60c1a055950f26"},{"name":"turbopack-build-events","duration":117,"timestamp":67761627477,"id":15,"parentId":1,"tags":{},"startTime":1778875733874,"traceId":"ba60c1a055950f26"},{"name":"run-typescript","duration":8490788,"timestamp":67766720938,"id":16,"parentId":1,"tags":{},"startTime":1778875738967,"traceId":"ba60c1a055950f26"},{"name":"generate-required-server-files","duration":2788,"timestamp":67775212723,"id":18,"parentId":1,"tags":{},"startTime":1778875747459,"traceId":"ba60c1a055950f26"},{"name":"check-static-error-page","duration":10788,"timestamp":67775385168,"id":20,"parentId":19,"tags":{},"startTime":1778875747631,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":429714,"timestamp":67775398180,"id":63,"parentId":22,"tags":{},"startTime":1778875747644,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":440761,"timestamp":67775387323,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1778875747634,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":508375,"timestamp":67775398303,"id":64,"parentId":25,"tags":{},"startTime":1778875747645,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":517025,"timestamp":67775389757,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1778875747636,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":515505,"timestamp":67775397876,"id":62,"parentId":21,"tags":{},"startTime":1778875747644,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":527184,"timestamp":67775386257,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1778875747633,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":519964,"timestamp":67775401016,"id":70,"parentId":32,"tags":{},"startTime":1778875747647,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":530396,"timestamp":67775390663,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1778875747637,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":524661,"timestamp":67775398772,"id":67,"parentId":28,"tags":{},"startTime":1778875747645,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":533309,"timestamp":67775390173,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1778875747636,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":525590,"timestamp":67775401177,"id":72,"parentId":34,"tags":{},"startTime":1778875747647,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":535953,"timestamp":67775390886,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1778875747637,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":529122,"timestamp":67775398929,"id":68,"parentId":29,"tags":{},"startTime":1778875747645,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":537845,"timestamp":67775390256,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1778875747637,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":528954,"timestamp":67775401213,"id":73,"parentId":35,"tags":{},"startTime":1778875747647,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":539191,"timestamp":67775391018,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1778875747637,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":533884,"timestamp":67775401340,"id":74,"parentId":36,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":543920,"timestamp":67775391355,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1778875747638,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":534037,"timestamp":67775401374,"id":75,"parentId":37,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":543965,"timestamp":67775391475,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1778875747638,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":539015,"timestamp":67775398534,"id":66,"parentId":27,"tags":{},"startTime":1778875747645,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":547518,"timestamp":67775390082,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1778875747636,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":541511,"timestamp":67775401432,"id":79,"parentId":41,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":551194,"timestamp":67775391800,"id":41,"parentId":19,"tags":{"page":"/api/hub/servers"},"startTime":1778875747638,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":545485,"timestamp":67775401407,"id":77,"parentId":39,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":555279,"timestamp":67775391661,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1778875747638,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":548966,"timestamp":67775398422,"id":65,"parentId":26,"tags":{},"startTime":1778875747645,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":557491,"timestamp":67775389955,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1778875747636,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":551256,"timestamp":67775401469,"id":82,"parentId":44,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":560640,"timestamp":67775392132,"id":44,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1778875747638,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":554465,"timestamp":67775401417,"id":78,"parentId":40,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":564199,"timestamp":67775391725,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1778875747638,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":560710,"timestamp":67775401392,"id":76,"parentId":38,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":570590,"timestamp":67775391570,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1778875747638,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":562860,"timestamp":67775401496,"id":84,"parentId":46,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":572125,"timestamp":67775392279,"id":46,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1778875747639,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":571368,"timestamp":67775401519,"id":86,"parentId":48,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":580497,"timestamp":67775392436,"id":48,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1778875747639,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":572207,"timestamp":67775401459,"id":81,"parentId":43,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":581680,"timestamp":67775392030,"id":43,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1778875747638,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":576826,"timestamp":67775401532,"id":87,"parentId":49,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":584840,"timestamp":67775393565,"id":49,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1778875747640,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":580714,"timestamp":67775401483,"id":83,"parentId":45,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":590030,"timestamp":67775392217,"id":45,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1778875747638,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":581070,"timestamp":67775401506,"id":85,"parentId":47,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":590254,"timestamp":67775392371,"id":47,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1778875747639,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":583166,"timestamp":67775401445,"id":80,"parentId":42,"tags":{},"startTime":1778875747648,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":592751,"timestamp":67775391916,"id":42,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1778875747638,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":579798,"timestamp":67775405046,"id":88,"parentId":24,"tags":{},"startTime":1778875747651,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":597206,"timestamp":67775387686,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1778875747634,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":584292,"timestamp":67775406198,"id":89,"parentId":31,"tags":{},"startTime":1778875747652,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":600137,"timestamp":67775390436,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1778875747637,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":589986,"timestamp":67775400778,"id":69,"parentId":30,"tags":{},"startTime":1778875747647,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":600477,"timestamp":67775390359,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1778875747637,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":590017,"timestamp":67775401099,"id":71,"parentId":33,"tags":{},"startTime":1778875747647,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":600395,"timestamp":67775390767,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1778875747637,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":585568,"timestamp":67775412666,"id":96,"parentId":56,"tags":{},"startTime":1778875747659,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":603222,"timestamp":67775395058,"id":56,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1778875747641,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":592586,"timestamp":67775412675,"id":97,"parentId":57,"tags":{},"startTime":1778875747659,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":610099,"timestamp":67775395209,"id":57,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1778875747641,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":600274,"timestamp":67775412686,"id":98,"parentId":59,"tags":{},"startTime":1778875747659,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":617538,"timestamp":67775395600,"id":59,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1778875747642,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":614003,"timestamp":67775412701,"id":99,"parentId":60,"tags":{},"startTime":1778875747659,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":631070,"timestamp":67775395692,"id":60,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1778875747642,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":624475,"timestamp":67775412712,"id":100,"parentId":61,"tags":{},"startTime":1778875747659,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":641471,"timestamp":67775395780,"id":61,"parentId":19,"tags":{"page":"/tasks"},"startTime":1778875747642,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":624592,"timestamp":67775420708,"id":101,"parentId":58,"tags":{},"startTime":1778875747667,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":650025,"timestamp":67775395325,"id":58,"parentId":19,"tags":{"page":"/settings"},"startTime":1778875747642,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":635056,"timestamp":67775412629,"id":93,"parentId":52,"tags":{},"startTime":1778875747659,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":653571,"timestamp":67775394171,"id":52,"parentId":19,"tags":{"page":"/messages"},"startTime":1778875747640,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":637741,"timestamp":67775412619,"id":92,"parentId":51,"tags":{},"startTime":1778875747659,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":656359,"timestamp":67775394054,"id":51,"parentId":19,"tags":{"page":"/logs"},"startTime":1778875747640,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":639384,"timestamp":67775412654,"id":95,"parentId":54,"tags":{},"startTime":1778875747659,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":657594,"timestamp":67775394491,"id":54,"parentId":19,"tags":{"page":"/nodes"},"startTime":1778875747641,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":611995,"timestamp":67775440399,"id":102,"parentId":55,"tags":{},"startTime":1778875747687,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":657775,"timestamp":67775394655,"id":55,"parentId":19,"tags":{"page":"/"},"startTime":1778875747641,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":639882,"timestamp":67775412641,"id":94,"parentId":53,"tags":{},"startTime":1778875747659,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":658222,"timestamp":67775394329,"id":53,"parentId":19,"tags":{"page":"/node"},"startTime":1778875747641,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":640683,"timestamp":67775412603,"id":91,"parentId":50,"tags":{},"startTime":1778875747659,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":659418,"timestamp":67775393910,"id":50,"parentId":19,"tags":{"page":"/login"},"startTime":1778875747640,"traceId":"ba60c1a055950f26"},{"name":"is-page-static","duration":641301,"timestamp":67775412574,"id":90,"parentId":23,"tags":{},"startTime":1778875747659,"traceId":"ba60c1a055950f26"},{"name":"check-page","duration":666401,"timestamp":67775387509,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1778875747634,"traceId":"ba60c1a055950f26"},{"name":"static-check","duration":669640,"timestamp":67775384303,"id":19,"parentId":1,"tags":{},"startTime":1778875747631,"traceId":"ba60c1a055950f26"},{"name":"write-routes-manifest","duration":470,"timestamp":67776062757,"id":104,"parentId":1,"tags":{},"startTime":1778875748309,"traceId":"ba60c1a055950f26"},{"name":"load-dotenv","duration":49,"timestamp":67776074734,"id":107,"parentId":106,"tags":{},"startTime":1778875748321,"traceId":"ba60c1a055950f26"},{"name":"run-export-path-map","duration":718,"timestamp":67776079732,"id":108,"parentId":106,"tags":{},"startTime":1778875748326,"traceId":"ba60c1a055950f26"},{"name":"next-export","duration":560329,"timestamp":67776073519,"id":106,"parentId":1,"tags":{},"startTime":1778875748320,"traceId":"ba60c1a055950f26"}]
|
|
2
|
-
[{"name":"move-exported-app-not-found-","duration":
|
|
1
|
+
[{"name":"generate-buildid","duration":297,"timestamp":68361453117,"id":4,"parentId":1,"tags":{},"startTime":1778876333699,"traceId":"f48f06d2d4240db5"},{"name":"load-custom-routes","duration":489,"timestamp":68361453554,"id":5,"parentId":1,"tags":{},"startTime":1778876333700,"traceId":"f48f06d2d4240db5"},{"name":"create-dist-dir","duration":646,"timestamp":68361454090,"id":6,"parentId":1,"tags":{},"startTime":1778876333700,"traceId":"f48f06d2d4240db5"},{"name":"clean","duration":457,"timestamp":68361455443,"id":7,"parentId":1,"tags":{},"startTime":1778876333702,"traceId":"f48f06d2d4240db5"},{"name":"discover-routes","duration":8905,"timestamp":68361534924,"id":8,"parentId":1,"tags":{},"startTime":1778876333781,"traceId":"f48f06d2d4240db5"},{"name":"create-root-mapping","duration":103,"timestamp":68361543881,"id":9,"parentId":1,"tags":{},"startTime":1778876333790,"traceId":"f48f06d2d4240db5"},{"name":"generate-route-types","duration":30570,"timestamp":68361546158,"id":10,"parentId":1,"tags":{},"startTime":1778876333792,"traceId":"f48f06d2d4240db5"},{"name":"public-dir-conflict-check","duration":92,"timestamp":68361576882,"id":11,"parentId":1,"tags":{},"startTime":1778876333823,"traceId":"f48f06d2d4240db5"},{"name":"generate-routes-manifest","duration":4003,"timestamp":68361577130,"id":12,"parentId":1,"tags":{},"startTime":1778876333823,"traceId":"f48f06d2d4240db5"},{"name":"run-turbopack","duration":5487201,"timestamp":68361586632,"id":14,"parentId":1,"tags":{},"startTime":1778876333833,"traceId":"f48f06d2d4240db5"},{"name":"turbopack-build-events","duration":100,"timestamp":68361864529,"id":15,"parentId":1,"tags":{},"startTime":1778876334111,"traceId":"f48f06d2d4240db5"},{"name":"run-typescript","duration":8454753,"timestamp":68367082745,"id":16,"parentId":1,"tags":{},"startTime":1778876339329,"traceId":"f48f06d2d4240db5"},{"name":"generate-required-server-files","duration":2894,"timestamp":68375538651,"id":18,"parentId":1,"tags":{},"startTime":1778876347785,"traceId":"f48f06d2d4240db5"},{"name":"check-static-error-page","duration":16245,"timestamp":68375701292,"id":20,"parentId":19,"tags":{},"startTime":1778876347948,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":396886,"timestamp":68375721039,"id":63,"parentId":22,"tags":{},"startTime":1778876347967,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":413555,"timestamp":68375704560,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1778876347951,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":487526,"timestamp":68375721253,"id":65,"parentId":26,"tags":{},"startTime":1778876347968,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":500397,"timestamp":68375708486,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1778876347955,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":491841,"timestamp":68375722193,"id":70,"parentId":32,"tags":{},"startTime":1778876347968,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":504540,"timestamp":68375709549,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1778876347956,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":503593,"timestamp":68375721975,"id":69,"parentId":30,"tags":{},"startTime":1778876347968,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":516545,"timestamp":68375709083,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1778876347955,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":513824,"timestamp":68375721164,"id":64,"parentId":25,"tags":{},"startTime":1778876347967,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":526777,"timestamp":68375708304,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1778876347955,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":523105,"timestamp":68375722352,"id":72,"parentId":34,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":535638,"timestamp":68375709887,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1778876347956,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":531973,"timestamp":68375722270,"id":71,"parentId":33,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":544588,"timestamp":68375709718,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1778876347956,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":532836,"timestamp":68375721638,"id":67,"parentId":28,"tags":{},"startTime":1778876347968,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":545762,"timestamp":68375708744,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1778876347955,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":534841,"timestamp":68375720614,"id":62,"parentId":21,"tags":{},"startTime":1778876347967,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":552554,"timestamp":68375702948,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1778876347949,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":544652,"timestamp":68375721807,"id":68,"parentId":29,"tags":{},"startTime":1778876347968,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":557622,"timestamp":68375708888,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1778876347955,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":544805,"timestamp":68375722534,"id":75,"parentId":37,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":556584,"timestamp":68375710797,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1778876347957,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":545544,"timestamp":68375722502,"id":74,"parentId":36,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":557498,"timestamp":68375710587,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1778876347957,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":553689,"timestamp":68375722551,"id":76,"parentId":38,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":565329,"timestamp":68375710963,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1778876347957,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":553886,"timestamp":68375722581,"id":78,"parentId":40,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":565242,"timestamp":68375711255,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1778876347958,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":554021,"timestamp":68375722605,"id":80,"parentId":42,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":565150,"timestamp":68375711503,"id":42,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1778876347958,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":560674,"timestamp":68375721358,"id":66,"parentId":27,"tags":{},"startTime":1778876347968,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":573463,"timestamp":68375708622,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1778876347955,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":563158,"timestamp":68375722384,"id":73,"parentId":35,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":575533,"timestamp":68375710066,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1778876347956,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":563171,"timestamp":68375722593,"id":79,"parentId":41,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":574428,"timestamp":68375711373,"id":41,"parentId":19,"tags":{"page":"/api/hub/servers"},"startTime":1778876347958,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":565551,"timestamp":68375722655,"id":84,"parentId":46,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":576228,"timestamp":68375712024,"id":46,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1778876347958,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":568231,"timestamp":68375722679,"id":86,"parentId":48,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":578645,"timestamp":68375712313,"id":48,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1778876347959,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":568474,"timestamp":68375722629,"id":82,"parentId":44,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":579383,"timestamp":68375711750,"id":44,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1778876347958,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":571557,"timestamp":68375722667,"id":85,"parentId":47,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":582086,"timestamp":68375712185,"id":47,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1778876347958,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":572302,"timestamp":68375722617,"id":81,"parentId":43,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":583336,"timestamp":68375711630,"id":43,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1778876347958,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":569511,"timestamp":68375727573,"id":88,"parentId":24,"tags":{},"startTime":1778876347974,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":591912,"timestamp":68375705222,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1778876347951,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":568333,"timestamp":68375728948,"id":89,"parentId":31,"tags":{},"startTime":1778876347975,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":588074,"timestamp":68375709238,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1778876347956,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":577438,"timestamp":68375722641,"id":83,"parentId":45,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":588228,"timestamp":68375711892,"id":45,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1778876347958,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":585216,"timestamp":68375724125,"id":87,"parentId":49,"tags":{},"startTime":1778876347970,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":596955,"timestamp":68375712431,"id":49,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1778876347959,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":631467,"timestamp":68375731519,"id":94,"parentId":53,"tags":{},"startTime":1778876347978,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":648238,"timestamp":68375714842,"id":53,"parentId":19,"tags":{"page":"/node"},"startTime":1778876347961,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":632673,"timestamp":68375731449,"id":90,"parentId":23,"tags":{},"startTime":1778876347978,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":659306,"timestamp":68375704885,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1778876347951,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":639115,"timestamp":68375731553,"id":96,"parentId":56,"tags":{},"startTime":1778876347978,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":654738,"timestamp":68375715979,"id":56,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1778876347962,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":643703,"timestamp":68375731569,"id":97,"parentId":57,"tags":{},"startTime":1778876347978,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":659088,"timestamp":68375716242,"id":57,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1778876347963,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":646134,"timestamp":68375731580,"id":98,"parentId":59,"tags":{},"startTime":1778876347978,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":660842,"timestamp":68375716919,"id":59,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1778876347963,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":646481,"timestamp":68375731475,"id":91,"parentId":50,"tags":{},"startTime":1778876347978,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":663859,"timestamp":68375714174,"id":50,"parentId":19,"tags":{"page":"/login"},"startTime":1778876347960,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":654000,"timestamp":68375731508,"id":93,"parentId":52,"tags":{},"startTime":1778876347978,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":670959,"timestamp":68375714593,"id":52,"parentId":19,"tags":{"page":"/messages"},"startTime":1778876347961,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":654024,"timestamp":68375731620,"id":100,"parentId":61,"tags":{},"startTime":1778876347978,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":668402,"timestamp":68375717271,"id":61,"parentId":19,"tags":{"page":"/tasks"},"startTime":1778876347964,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":655102,"timestamp":68375731492,"id":92,"parentId":51,"tags":{},"startTime":1778876347978,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":672239,"timestamp":68375714393,"id":51,"parentId":19,"tags":{"page":"/logs"},"startTime":1778876347961,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":666466,"timestamp":68375722568,"id":77,"parentId":39,"tags":{},"startTime":1778876347969,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":677996,"timestamp":68375711123,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1778876347957,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":647703,"timestamp":68375743092,"id":101,"parentId":55,"tags":{},"startTime":1778876347989,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":675468,"timestamp":68375715369,"id":55,"parentId":19,"tags":{"page":"/"},"startTime":1778876347962,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":660408,"timestamp":68375731535,"id":95,"parentId":54,"tags":{},"startTime":1778876347978,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":676878,"timestamp":68375715101,"id":54,"parentId":19,"tags":{"page":"/nodes"},"startTime":1778876347961,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":663848,"timestamp":68375731599,"id":99,"parentId":60,"tags":{},"startTime":1778876347978,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":678407,"timestamp":68375717103,"id":60,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1778876347963,"traceId":"f48f06d2d4240db5"},{"name":"is-page-static","duration":644749,"timestamp":68375751951,"id":102,"parentId":58,"tags":{},"startTime":1778876347998,"traceId":"f48f06d2d4240db5"},{"name":"check-page","duration":680281,"timestamp":68375716446,"id":58,"parentId":19,"tags":{"page":"/settings"},"startTime":1778876347963,"traceId":"f48f06d2d4240db5"},{"name":"static-check","duration":696653,"timestamp":68375700116,"id":19,"parentId":1,"tags":{},"startTime":1778876347946,"traceId":"f48f06d2d4240db5"},{"name":"write-routes-manifest","duration":441,"timestamp":68376404753,"id":104,"parentId":1,"tags":{},"startTime":1778876348651,"traceId":"f48f06d2d4240db5"},{"name":"load-dotenv","duration":60,"timestamp":68376415969,"id":107,"parentId":106,"tags":{},"startTime":1778876348662,"traceId":"f48f06d2d4240db5"},{"name":"run-export-path-map","duration":647,"timestamp":68376418618,"id":108,"parentId":106,"tags":{},"startTime":1778876348665,"traceId":"f48f06d2d4240db5"},{"name":"next-export","duration":553799,"timestamp":68376414785,"id":106,"parentId":1,"tags":{},"startTime":1778876348661,"traceId":"f48f06d2d4240db5"}]
|
|
2
|
+
[{"name":"move-exported-app-not-found-","duration":2228,"timestamp":68376972668,"id":109,"parentId":105,"tags":{},"startTime":1778876349219,"traceId":"f48f06d2d4240db5"},{"name":"move-exported-app-global-error-","duration":579,"timestamp":68376974989,"id":110,"parentId":105,"tags":{},"startTime":1778876349221,"traceId":"f48f06d2d4240db5"},{"name":"static-generation","duration":568213,"timestamp":68376409187,"id":105,"parentId":1,"tags":{},"startTime":1778876348655,"traceId":"f48f06d2d4240db5"},{"name":"write-routes-manifest","duration":396,"timestamp":68376977568,"id":111,"parentId":1,"tags":{},"startTime":1778876349224,"traceId":"f48f06d2d4240db5"},{"name":"print-tree-view","duration":4066,"timestamp":68376995635,"id":112,"parentId":1,"tags":{},"startTime":1778876349242,"traceId":"f48f06d2d4240db5"},{"name":"write-route-bundle-stats","duration":12587,"timestamp":68376999734,"id":113,"parentId":1,"tags":{},"startTime":1778876349246,"traceId":"f48f06d2d4240db5"},{"name":"telemetry-flush","duration":22803,"timestamp":68377012351,"id":114,"parentId":1,"tags":{},"startTime":1778876349259,"traceId":"f48f06d2d4240db5"},{"name":"next-build","duration":15631148,"timestamp":68361404042,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778876333650,"traceId":"f48f06d2d4240db5"}]
|
package/.next/trace-build
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"name":"run-turbopack","duration":
|
|
1
|
+
[{"name":"run-turbopack","duration":5487201,"timestamp":68361586632,"id":14,"parentId":1,"tags":{},"startTime":1778876333833,"traceId":"f48f06d2d4240db5"},{"name":"turbopack-build-events","duration":100,"timestamp":68361864529,"id":15,"parentId":1,"tags":{},"startTime":1778876334111,"traceId":"f48f06d2d4240db5"},{"name":"run-typescript","duration":8454753,"timestamp":68367082745,"id":16,"parentId":1,"tags":{},"startTime":1778876339329,"traceId":"f48f06d2d4240db5"},{"name":"static-check","duration":696653,"timestamp":68375700116,"id":19,"parentId":1,"tags":{},"startTime":1778876347946,"traceId":"f48f06d2d4240db5"},{"name":"static-generation","duration":568213,"timestamp":68376409187,"id":105,"parentId":1,"tags":{},"startTime":1778876348655,"traceId":"f48f06d2d4240db5"},{"name":"telemetry-flush","duration":22803,"timestamp":68377012351,"id":114,"parentId":1,"tags":{},"startTime":1778876349259,"traceId":"f48f06d2d4240db5"},{"name":"next-build","duration":15631148,"timestamp":68361404042,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778876333650,"traceId":"f48f06d2d4240db5"}]
|
|
@@ -3825,20 +3825,44 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
|
|
|
3825
3825
|
(just inside the halo's r=radius+8 bbox so we
|
|
3826
3826
|
don't grow the overlap footprint) clearly says
|
|
3827
3827
|
"these are the two participants in this flow".
|
|
3828
|
-
pointerEvents:none so the node hitbox stays alive.
|
|
3829
|
-
|
|
3830
|
-
|
|
3831
|
-
|
|
3832
|
-
|
|
3833
|
-
|
|
3834
|
-
|
|
3835
|
-
|
|
3836
|
-
|
|
3837
|
-
|
|
3838
|
-
|
|
3839
|
-
|
|
3840
|
-
|
|
3841
|
-
|
|
3828
|
+
pointerEvents:none so the node hitbox stays alive.
|
|
3829
|
+
|
|
3830
|
+
Round 182 / Loop: the ring used to mount/unmount
|
|
3831
|
+
on every edge hover, snapping despite the
|
|
3832
|
+
opacity transition on the style. Always-mount
|
|
3833
|
+
with opacity gated by hoveredEdgeEndpoints — same
|
|
3834
|
+
pattern R181 used for the legend pin ring. The
|
|
3835
|
+
transition now actually fires on hover entry
|
|
3836
|
+
and exit. 6th surface in the smooth-pin-mirror
|
|
3837
|
+
family (R165/R180/R181 + this round).
|
|
3838
|
+
|
|
3839
|
+
strokeWidth=1.6 (was 1.5) deliberately escapes
|
|
3840
|
+
the R51 overlap-test sentinel `circle[stroke-
|
|
3841
|
+
width="1.5"]`: an always-mounted r=radius+7 ring
|
|
3842
|
+
inside g[data-node] would otherwise be picked
|
|
3843
|
+
before the actual status ring (r=radius) by
|
|
3844
|
+
querySelector document order, breaking the
|
|
3845
|
+
test's node-bbox read. 1.5 → 1.6 is visually
|
|
3846
|
+
imperceptible (6.7% thicker) but the exact-
|
|
3847
|
+
string CSS attribute selector no longer
|
|
3848
|
+
matches. */}
|
|
3849
|
+
{(() => {
|
|
3850
|
+
const isEndpoint = hoveredEdgeEndpoints && hoveredEdgeEndpoints.has(session.alias);
|
|
3851
|
+
return (
|
|
3852
|
+
<circle
|
|
3853
|
+
cx={pos.x}
|
|
3854
|
+
cy={pos.y}
|
|
3855
|
+
r={radius + 7}
|
|
3856
|
+
fill="none"
|
|
3857
|
+
stroke={pal.flowEdge}
|
|
3858
|
+
strokeWidth={1.6}
|
|
3859
|
+
opacity={isEndpoint ? (isLight ? 0.9 : 0.85) : 0}
|
|
3860
|
+
data-edge-endpoint-ring
|
|
3861
|
+
data-edge-endpoint-active={isEndpoint ? 'true' : 'false'}
|
|
3862
|
+
style={{ pointerEvents: 'none', transition: 'opacity 180ms ease-out' }}
|
|
3863
|
+
/>
|
|
3864
|
+
);
|
|
3865
|
+
})()}
|
|
3842
3866
|
{/* Round 167 / Loop: extend the node status-ring
|
|
3843
3867
|
transition to include stroke-width — symmetric
|
|
3844
3868
|
with R165 (pressure-bar width) and R166 (edge
|
|
@@ -4675,10 +4699,32 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
|
|
|
4675
4699
|
<circle cx="16" cy={row.y0} r="5.5" fill={row.fill} />
|
|
4676
4700
|
{/* R61 pinned-state ring — concentric stroke at r=8 in
|
|
4677
4701
|
the row colour, draws OUTSIDE the swatch so it
|
|
4678
|
-
doesn't fight the fill colour the user is matching.
|
|
4679
|
-
|
|
4680
|
-
|
|
4681
|
-
|
|
4702
|
+
doesn't fight the fill colour the user is matching.
|
|
4703
|
+
Round 181 / Loop: the ring used to mount/unmount
|
|
4704
|
+
with the conditional render, snapping on every
|
|
4705
|
+
pin/unpin. Now always mounted with opacity gated
|
|
4706
|
+
by isPinned + a 150ms transition so the ring
|
|
4707
|
+
eases in on pin and out on unpin — same gesture
|
|
4708
|
+
vocabulary the R165/R180 smooth-pin-mirror family
|
|
4709
|
+
uses for the chip-row pin chips. strokeWidth=1.5
|
|
4710
|
+
is the R51 overlap-test sentinel but the test
|
|
4711
|
+
selector is gated to g[data-node] ancestors,
|
|
4712
|
+
so this legend-internal circle is invisible to
|
|
4713
|
+
that probe. pointerEvents:none so the ring can't
|
|
4714
|
+
intercept the row click that produced it. */}
|
|
4715
|
+
<circle
|
|
4716
|
+
cx="16" cy={row.y0} r="8"
|
|
4717
|
+
fill="none"
|
|
4718
|
+
stroke={row.fill}
|
|
4719
|
+
strokeWidth="1.5"
|
|
4720
|
+
opacity={isPinned ? 1 : 0}
|
|
4721
|
+
data-legend-pin-ring={row.key}
|
|
4722
|
+
data-legend-pin-ring-pinned={isPinned ? 'true' : 'false'}
|
|
4723
|
+
style={{
|
|
4724
|
+
pointerEvents: 'none',
|
|
4725
|
+
transition: 'opacity 150ms ease-out',
|
|
4726
|
+
}}
|
|
4727
|
+
/>
|
|
4682
4728
|
<text
|
|
4683
4729
|
x="30" y={row.y1}
|
|
4684
4730
|
fill={hoveredStatus === row.key || isPinned ? pal.legendHeadline : pal.legendText}
|
package/package.json
CHANGED
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/* Round 182 verification: edge-endpoint emphasis ring (R49/R111)
|
|
2
|
+
* fades in/out instead of mount/unmount.
|
|
3
|
+
*
|
|
4
|
+
* Pre-R182 the ring mounted only when the node was in the
|
|
5
|
+
* hoveredEdgeEndpoints set — the transition style was already
|
|
6
|
+
* there but the mount/unmount sequence defeated it. R182 makes
|
|
7
|
+
* the ring always-mounted with opacity gated by the set, so the
|
|
8
|
+
* transition actually fires on hover entry/exit.
|
|
9
|
+
*
|
|
10
|
+
* Also escapes the R51 overlap-test sentinel:
|
|
11
|
+
* strokeWidth: 1.5 → 1.6 (visually imperceptible, doesn't
|
|
12
|
+
* match the exact-string CSS selector that picks the status
|
|
13
|
+
* ring inside g[data-node]).
|
|
14
|
+
*
|
|
15
|
+
* Test:
|
|
16
|
+
* 1. 4 sessions + a 4-msg flow alpha→beta (so badge renders)
|
|
17
|
+
* 2. Idle: ring exists on alpha + beta + gamma + delta nodes,
|
|
18
|
+
* all at opacity=0
|
|
19
|
+
* 3. Hover the edge badge (propagates to hoveredEdgeKey →
|
|
20
|
+
* hoveredEdgeEndpoints set with alpha + beta)
|
|
21
|
+
* 4. Rings on alpha + beta: opacity ≈ 0.85 (cyber)
|
|
22
|
+
* 5. Rings on gamma + delta: still opacity=0
|
|
23
|
+
* 6. Mouseleave: all four back to opacity=0
|
|
24
|
+
* 7. All rings carry 'opacity 180ms ease-out' transition
|
|
25
|
+
* 8. All rings strokeWidth='1.6' (not 1.5)
|
|
26
|
+
*/
|
|
27
|
+
import { chromium } from 'playwright';
|
|
28
|
+
import { readFileSync } from 'node:fs';
|
|
29
|
+
|
|
30
|
+
const TOKEN = JSON.parse(readFileSync('/home/vansin/.anet/config.json', 'utf8')).token;
|
|
31
|
+
const browser = await chromium.launch({ headless: true });
|
|
32
|
+
|
|
33
|
+
const ctx = await browser.newContext({ viewport: { width: 1500, height: 1500 } });
|
|
34
|
+
await ctx.addCookies([{ name: 'anet_dashboard_session', value: `v3:${TOKEN}`, domain: '127.0.0.1', path: '/' }]);
|
|
35
|
+
await ctx.addInitScript(() => {
|
|
36
|
+
try { localStorage.setItem('anet-theme', 'cyber'); sessionStorage.setItem('anet_v3_auth', '1'); } catch {}
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
const fresh = new Date(Date.now() - 60 * 1000).toISOString();
|
|
40
|
+
await ctx.route('**/api/hub/status*', async (route) => {
|
|
41
|
+
const r = await route.fetch();
|
|
42
|
+
const b = await r.json();
|
|
43
|
+
const nid = (b.sessions || [])[0]?.network_id || 'default';
|
|
44
|
+
const mk = (alias) => ({
|
|
45
|
+
alias, status: 'working', model: 'claude-opus-4', runtime: 'cli-claude-code',
|
|
46
|
+
network_id: nid, project_dir: null,
|
|
47
|
+
created_at: fresh, updated_at: fresh, last_seen_at: fresh,
|
|
48
|
+
});
|
|
49
|
+
// 4 sessions so alpha/beta sit 90° apart (avoid hub overlap with badge midpoint)
|
|
50
|
+
await route.fulfill({ response: r, json: { ...b, sessions: [
|
|
51
|
+
mk('alpha'), mk('beta'), mk('gamma'), mk('delta'),
|
|
52
|
+
] } });
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
const now = Date.now();
|
|
56
|
+
const msgs = [];
|
|
57
|
+
for (let i = 0; i < 4; i++) {
|
|
58
|
+
msgs.push({ id: `m${i}`, from_alias: 'alpha', to_alias: 'beta', content: 'hi',
|
|
59
|
+
network_id: 'default', created_at: new Date(now - (10000 + i * 500)).toISOString() });
|
|
60
|
+
}
|
|
61
|
+
await ctx.route('**/api/hub/messages*', (route) => route.fulfill({ json: { messages: msgs } }));
|
|
62
|
+
await ctx.route('**/api/hub/tasks*', (route) => route.fulfill({ json: { tasks: [] } }));
|
|
63
|
+
|
|
64
|
+
const page = await ctx.newPage();
|
|
65
|
+
await page.goto('http://127.0.0.1:3000/', { waitUntil: 'domcontentloaded' });
|
|
66
|
+
await page.waitForFunction(() => document.querySelectorAll('g[data-node]').length === 4, { timeout: 30000 });
|
|
67
|
+
await page.waitForSelector('[data-edge-endpoint-ring]', { timeout: 10000 });
|
|
68
|
+
await page.waitForSelector('[data-edge-count-badge]', { timeout: 10000 });
|
|
69
|
+
await page.waitForTimeout(400);
|
|
70
|
+
|
|
71
|
+
const probeRings = () => page.evaluate(() => {
|
|
72
|
+
const rings = [...document.querySelectorAll('g[data-node] [data-edge-endpoint-ring]')];
|
|
73
|
+
return rings.map(r => {
|
|
74
|
+
const node = r.closest('g[data-node]');
|
|
75
|
+
return {
|
|
76
|
+
alias: node?.getAttribute('data-node'),
|
|
77
|
+
opacity: parseFloat(r.getAttribute('opacity') || ''),
|
|
78
|
+
activeAttr: r.getAttribute('data-edge-endpoint-active'),
|
|
79
|
+
strokeWidth: r.getAttribute('stroke-width'),
|
|
80
|
+
transition: r.style.transition || getComputedStyle(r).transition,
|
|
81
|
+
};
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
const idle = await probeRings();
|
|
86
|
+
|
|
87
|
+
// Hover the edge midpoint badge (propagates to hoveredEdgeKey)
|
|
88
|
+
await page.locator('[data-edge-count-badge]').hover();
|
|
89
|
+
await page.waitForTimeout(300);
|
|
90
|
+
const hovered = await probeRings();
|
|
91
|
+
|
|
92
|
+
// Move cursor away
|
|
93
|
+
await page.mouse.move(10, 10);
|
|
94
|
+
await page.waitForTimeout(300);
|
|
95
|
+
const idleAgain = await probeRings();
|
|
96
|
+
|
|
97
|
+
await browser.close();
|
|
98
|
+
|
|
99
|
+
const findRing = (rings, alias) => rings.find(r => r.alias === alias);
|
|
100
|
+
const hasOpacityTransition = (s) =>
|
|
101
|
+
(s.transition || '').includes('opacity 180ms') ||
|
|
102
|
+
/opacity\s+0\.18s|opacity\s+180ms/.test(s.transition || '');
|
|
103
|
+
|
|
104
|
+
const results = {
|
|
105
|
+
four_rings_present: idle.length === 4,
|
|
106
|
+
all_have_strokewidth_1p6: idle.every(r => r.strokeWidth === '1.6'),
|
|
107
|
+
none_match_15_sentinel: idle.every(r => r.strokeWidth !== '1.5'),
|
|
108
|
+
all_have_transition: idle.every(r => hasOpacityTransition(r)),
|
|
109
|
+
|
|
110
|
+
idle_all_opacity_0: idle.every(r => r.opacity === 0),
|
|
111
|
+
idle_all_active_false: idle.every(r => r.activeAttr === 'false'),
|
|
112
|
+
|
|
113
|
+
// Hover badge → alpha + beta active, gamma + delta inactive
|
|
114
|
+
hover_alpha_active: findRing(hovered, 'alpha')?.activeAttr === 'true',
|
|
115
|
+
hover_alpha_opacity_0p85: Math.abs((findRing(hovered, 'alpha')?.opacity ?? 0) - 0.85) < 0.05,
|
|
116
|
+
hover_beta_active: findRing(hovered, 'beta')?.activeAttr === 'true',
|
|
117
|
+
hover_beta_opacity_0p85: Math.abs((findRing(hovered, 'beta')?.opacity ?? 0) - 0.85) < 0.05,
|
|
118
|
+
hover_gamma_inactive: findRing(hovered, 'gamma')?.activeAttr === 'false',
|
|
119
|
+
hover_gamma_opacity_0: findRing(hovered, 'gamma')?.opacity === 0,
|
|
120
|
+
hover_delta_inactive: findRing(hovered, 'delta')?.activeAttr === 'false',
|
|
121
|
+
hover_delta_opacity_0: findRing(hovered, 'delta')?.opacity === 0,
|
|
122
|
+
|
|
123
|
+
// Mouseleave → all back to 0
|
|
124
|
+
idle_again_all_opacity_0: idleAgain.every(r => r.opacity === 0),
|
|
125
|
+
idle_again_all_inactive: idleAgain.every(r => r.activeAttr === 'false'),
|
|
126
|
+
};
|
|
127
|
+
const ok = Object.values(results).every(Boolean);
|
|
128
|
+
console.log(`${ok ? '✅' : '❌'} endpoint-ring fade:`, JSON.stringify(results),
|
|
129
|
+
`\n idle:`, idle,
|
|
130
|
+
`\n hovered:`, hovered,
|
|
131
|
+
`\n idleAgain:`, idleAgain);
|
|
132
|
+
process.exit(ok ? 0 : 1);
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
/* Round 181 verification: legend row pinned-state ring (R61) is
|
|
2
|
+
* now always-mounted with opacity-gated visibility + 150ms
|
|
3
|
+
* transition — smooth fade in/out on pin / unpin.
|
|
4
|
+
*
|
|
5
|
+
* Pre-R181 the ring mounted/unmounted conditionally, snapping
|
|
6
|
+
* on every state change. Same vocabulary as R165/R180 smooth-
|
|
7
|
+
* pin-mirror family, applied at the legend-row scope.
|
|
8
|
+
*
|
|
9
|
+
* Test:
|
|
10
|
+
* 1. Idle: ring exists in DOM but opacity=0
|
|
11
|
+
* 2. Click 'working' legend row → ring for working = opacity=1
|
|
12
|
+
* 3. Other rings (idle / offline) stay opacity=0
|
|
13
|
+
* 4. Re-click 'working' → unpin → opacity returns to 0
|
|
14
|
+
* 5. All rings carry 'opacity 150ms ease-out' transition
|
|
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 browser = await chromium.launch({ headless: true });
|
|
21
|
+
|
|
22
|
+
const ctx = await browser.newContext({ viewport: { width: 1500, height: 1500 } });
|
|
23
|
+
await ctx.addCookies([{ name: 'anet_dashboard_session', value: `v3:${TOKEN}`, domain: '127.0.0.1', path: '/' }]);
|
|
24
|
+
await ctx.addInitScript(() => {
|
|
25
|
+
try { localStorage.setItem('anet-theme', 'cyber'); sessionStorage.setItem('anet_v3_auth', '1'); } catch {}
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
const fresh = new Date(Date.now() - 60 * 1000).toISOString();
|
|
29
|
+
const stale = new Date(Date.now() - 10 * 60 * 1000).toISOString();
|
|
30
|
+
await ctx.route('**/api/hub/status*', async (route) => {
|
|
31
|
+
const r = await route.fetch();
|
|
32
|
+
const b = await r.json();
|
|
33
|
+
const nid = (b.sessions || [])[0]?.network_id || 'default';
|
|
34
|
+
const mk = (alias, status, last) => ({
|
|
35
|
+
alias, status, model: 'claude-opus-4', runtime: 'cli-claude-code',
|
|
36
|
+
network_id: nid, project_dir: null,
|
|
37
|
+
created_at: last, updated_at: last, last_seen_at: last,
|
|
38
|
+
});
|
|
39
|
+
// Mix of statuses so all three legend rows render
|
|
40
|
+
await route.fulfill({ response: r, json: { ...b, sessions: [
|
|
41
|
+
mk('w1', 'working', fresh), mk('w2', 'working', fresh),
|
|
42
|
+
mk('i1', 'idle', fresh),
|
|
43
|
+
mk('o1', 'offline', stale),
|
|
44
|
+
] } });
|
|
45
|
+
});
|
|
46
|
+
await ctx.route('**/api/hub/messages*', (route) => route.fulfill({ json: { messages: [] } }));
|
|
47
|
+
await ctx.route('**/api/hub/tasks*', (route) => route.fulfill({ json: { tasks: [] } }));
|
|
48
|
+
|
|
49
|
+
const page = await ctx.newPage();
|
|
50
|
+
await page.goto('http://127.0.0.1:3000/', { waitUntil: 'domcontentloaded' });
|
|
51
|
+
await page.waitForFunction(() => document.querySelectorAll('g[data-node]').length === 4, { timeout: 30000 });
|
|
52
|
+
await page.waitForSelector('[data-legend-pin-ring]', { timeout: 10000 });
|
|
53
|
+
await page.waitForTimeout(400);
|
|
54
|
+
|
|
55
|
+
const probe = () => page.evaluate(() => {
|
|
56
|
+
const grab = (k) => {
|
|
57
|
+
const r = document.querySelector(`[data-legend-pin-ring="${k}"]`);
|
|
58
|
+
return r ? {
|
|
59
|
+
opacity: parseFloat(r.getAttribute('opacity') || ''),
|
|
60
|
+
pinnedAttr: r.getAttribute('data-legend-pin-ring-pinned'),
|
|
61
|
+
transition: r.style.transition || getComputedStyle(r).transition,
|
|
62
|
+
} : null;
|
|
63
|
+
};
|
|
64
|
+
return {
|
|
65
|
+
working: grab('working'),
|
|
66
|
+
idle: grab('idle'),
|
|
67
|
+
offline: grab('offline'),
|
|
68
|
+
};
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
const idle = await probe();
|
|
72
|
+
|
|
73
|
+
// Pin 'working' status by clicking the legend row
|
|
74
|
+
await page.locator('[data-legend-status="working"]').click();
|
|
75
|
+
await page.waitForTimeout(250);
|
|
76
|
+
const afterPin = await probe();
|
|
77
|
+
|
|
78
|
+
// Re-click to unpin
|
|
79
|
+
await page.locator('[data-legend-status="working"]').click();
|
|
80
|
+
await page.waitForTimeout(250);
|
|
81
|
+
const afterUnpin = await probe();
|
|
82
|
+
|
|
83
|
+
await browser.close();
|
|
84
|
+
|
|
85
|
+
const hasTransition = (s) =>
|
|
86
|
+
(s?.transition || '').includes('opacity 150ms') ||
|
|
87
|
+
/opacity\s+0\.15s|opacity\s+150ms/.test(s?.transition || '');
|
|
88
|
+
|
|
89
|
+
const results = {
|
|
90
|
+
// Idle (no pin)
|
|
91
|
+
three_rings_present: idle.working !== null && idle.idle !== null && idle.offline !== null,
|
|
92
|
+
idle_working_opacity_0: idle.working?.opacity === 0,
|
|
93
|
+
idle_idle_opacity_0: idle.idle?.opacity === 0,
|
|
94
|
+
idle_offline_opacity_0: idle.offline?.opacity === 0,
|
|
95
|
+
all_have_transition: hasTransition(idle.working) && hasTransition(idle.idle) && hasTransition(idle.offline),
|
|
96
|
+
|
|
97
|
+
// After pin working
|
|
98
|
+
pin_working_opacity_1: afterPin.working?.opacity === 1,
|
|
99
|
+
pin_working_pinned_attr: afterPin.working?.pinnedAttr === 'true',
|
|
100
|
+
pin_idle_stays_0: afterPin.idle?.opacity === 0,
|
|
101
|
+
pin_offline_stays_0: afterPin.offline?.opacity === 0,
|
|
102
|
+
|
|
103
|
+
// After unpin
|
|
104
|
+
unpin_working_opacity_0: afterUnpin.working?.opacity === 0,
|
|
105
|
+
unpin_working_pinned_attr: afterUnpin.working?.pinnedAttr === 'false',
|
|
106
|
+
};
|
|
107
|
+
const ok = Object.values(results).every(Boolean);
|
|
108
|
+
console.log(`${ok ? '✅' : '❌'} legend pin-ring fade:`, JSON.stringify(results),
|
|
109
|
+
`\n idle =`, idle,
|
|
110
|
+
`\n pinned =`, afterPin,
|
|
111
|
+
`\n unpinned =`, afterUnpin);
|
|
112
|
+
process.exit(ok ? 0 : 1);
|
|
File without changes
|
/package/.next/static/{JXhnVH1uF1ZoAFZNGr7FJ → W1c-GAhF5EI0gxmHl-Tcp}/_clientMiddlewareManifest.js
RENAMED
|
File without changes
|
|
File without changes
|