@sleep2agi/agent-network-dashboard 0.5.3-preview.237 → 0.5.3-preview.239
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 +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 +2 -2
- package/.next/server/pages/500.html +1 -1
- package/.next/static/chunks/{0lzwdtpbqeqj~.js → 01su03f_5rcrd.js} +1 -1
- package/.next/static/chunks/{11tk_38q_2lna.js → 05n0~r5~-ou2y.js} +1 -1
- package/.next/static/chunks/{17mz9c2sitd~k.js → 0j9354kv3o68q.js} +1 -1
- package/.next/static/chunks/{0p1leb36q03nh.js → 0th40yvc~_2.9.js} +1 -1
- package/.next/static/chunks/{0pe_uuf7xb81p.css → 0xam8-c13i0hj.css} +1 -1
- package/.next/trace +2 -2
- package/.next/trace-build +1 -1
- package/app/components/TopoGraph.tsx +25 -3
- package/app/globals.css +34 -2
- package/package.json +1 -1
- package/scripts/topo-h2-triple-axis-breath-test.mjs +138 -0
- package/scripts/topo-r717-triple-axis-pair-pattern-test.mjs +113 -0
- package/scripts/topo-respiratory-patterns-catalog-test.mjs +4 -4
- package/scripts/topo-respiratory-triple-axis-surfaces-catalog-test.mjs +15 -4
- package/scripts/topo-watermark-triple-axis-breath-test.mjs +8 -3
- /package/.next/static/{FyN8BEKFX8B6CZ118lWgU → DwDrN4gYUg689hlv_u98L}/_buildManifest.js +0 -0
- /package/.next/static/{FyN8BEKFX8B6CZ118lWgU → DwDrN4gYUg689hlv_u98L}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{FyN8BEKFX8B6CZ118lWgU → DwDrN4gYUg689hlv_u98L}/_ssgManifest.js +0 -0
package/.next/trace
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
[{"name":"generate-buildid","duration":285,"timestamp":411441659496,"id":4,"parentId":1,"tags":{},"startTime":1779219413906,"traceId":"5a6f27f56ffc3218"},{"name":"load-custom-routes","duration":485,"timestamp":411441659928,"id":5,"parentId":1,"tags":{},"startTime":1779219413906,"traceId":"5a6f27f56ffc3218"},{"name":"create-dist-dir","duration":738,"timestamp":411441660456,"id":6,"parentId":1,"tags":{},"startTime":1779219413907,"traceId":"5a6f27f56ffc3218"},{"name":"clean","duration":32341,"timestamp":411441661847,"id":7,"parentId":1,"tags":{},"startTime":1779219413908,"traceId":"5a6f27f56ffc3218"},{"name":"discover-routes","duration":37145,"timestamp":411441781107,"id":8,"parentId":1,"tags":{},"startTime":1779219414027,"traceId":"5a6f27f56ffc3218"},{"name":"create-root-mapping","duration":182,"timestamp":411441818354,"id":9,"parentId":1,"tags":{},"startTime":1779219414065,"traceId":"5a6f27f56ffc3218"},{"name":"generate-route-types","duration":21086,"timestamp":411441821697,"id":10,"parentId":1,"tags":{},"startTime":1779219414068,"traceId":"5a6f27f56ffc3218"},{"name":"public-dir-conflict-check","duration":108,"timestamp":411441842874,"id":11,"parentId":1,"tags":{},"startTime":1779219414089,"traceId":"5a6f27f56ffc3218"},{"name":"generate-routes-manifest","duration":5154,"timestamp":411441843139,"id":12,"parentId":1,"tags":{},"startTime":1779219414089,"traceId":"5a6f27f56ffc3218"},{"name":"run-turbopack","duration":6924650,"timestamp":411441854418,"id":14,"parentId":1,"tags":{},"startTime":1779219414101,"traceId":"5a6f27f56ffc3218"},{"name":"turbopack-build-events","duration":138,"timestamp":411442220958,"id":15,"parentId":1,"tags":{},"startTime":1779219414467,"traceId":"5a6f27f56ffc3218"},{"name":"run-typescript","duration":10395024,"timestamp":411448789029,"id":16,"parentId":1,"tags":{},"startTime":1779219421035,"traceId":"5a6f27f56ffc3218"},{"name":"generate-required-server-files","duration":2525,"timestamp":411459185572,"id":18,"parentId":1,"tags":{},"startTime":1779219431432,"traceId":"5a6f27f56ffc3218"},{"name":"check-static-error-page","duration":15102,"timestamp":411459372334,"id":20,"parentId":19,"tags":{},"startTime":1779219431619,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":557967,"timestamp":411459391687,"id":65,"parentId":22,"tags":{},"startTime":1779219431638,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":574532,"timestamp":411459375297,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1779219431622,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":562035,"timestamp":411459393396,"id":69,"parentId":28,"tags":{},"startTime":1779219431640,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":576804,"timestamp":411459378727,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1779219431625,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":592461,"timestamp":411459393967,"id":72,"parentId":32,"tags":{},"startTime":1779219431640,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":607099,"timestamp":411459379428,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1779219431626,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":605205,"timestamp":411459394190,"id":73,"parentId":33,"tags":{},"startTime":1779219431640,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":619932,"timestamp":411459379550,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1779219431626,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":610288,"timestamp":411459392089,"id":68,"parentId":27,"tags":{},"startTime":1779219431638,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":623886,"timestamp":411459378574,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1779219431625,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":612243,"timestamp":411459394276,"id":74,"parentId":34,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":626943,"timestamp":411459379651,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1779219431626,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":617489,"timestamp":411459394352,"id":76,"parentId":36,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":631657,"timestamp":411459380260,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1779219431627,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":625961,"timestamp":411459394383,"id":77,"parentId":37,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":639937,"timestamp":411459380463,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1779219431627,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":627797,"timestamp":411459393721,"id":70,"parentId":29,"tags":{},"startTime":1779219431640,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":642719,"timestamp":411459378857,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1779219431625,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":630868,"timestamp":411459391958,"id":67,"parentId":26,"tags":{},"startTime":1779219431638,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":644434,"timestamp":411459378438,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1779219431625,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":630436,"timestamp":411459394396,"id":78,"parentId":38,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":644274,"timestamp":411459380602,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1779219431627,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":632674,"timestamp":411459394410,"id":79,"parentId":39,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":646425,"timestamp":411459380702,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1779219431627,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":633625,"timestamp":411459394422,"id":80,"parentId":40,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":647292,"timestamp":411459380799,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1779219431627,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":645818,"timestamp":411459394430,"id":81,"parentId":42,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":659133,"timestamp":411459381200,"id":42,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/health"},"startTime":1779219431627,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":649513,"timestamp":411459394311,"id":75,"parentId":35,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":664109,"timestamp":411459379770,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1779219431626,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":652109,"timestamp":411459394470,"id":84,"parentId":46,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":663153,"timestamp":411459383478,"id":46,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1779219431630,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":659060,"timestamp":411459394457,"id":83,"parentId":45,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":671808,"timestamp":411459381768,"id":45,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1779219431628,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":663718,"timestamp":411459394491,"id":86,"parentId":48,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":674540,"timestamp":411459383728,"id":48,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1779219431630,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":667703,"timestamp":411459394501,"id":87,"parentId":49,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":678417,"timestamp":411459383835,"id":49,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1779219431630,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":670579,"timestamp":411459391846,"id":66,"parentId":25,"tags":{},"startTime":1779219431638,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":684207,"timestamp":411459378251,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1779219431625,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":669947,"timestamp":411459394442,"id":82,"parentId":44,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":682782,"timestamp":411459381651,"id":44,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1779219431628,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":672229,"timestamp":411459394508,"id":88,"parentId":50,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":682864,"timestamp":411459383915,"id":50,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1779219431630,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":673146,"timestamp":411459394520,"id":89,"parentId":51,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":683732,"timestamp":411459383988,"id":51,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1779219431630,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":675399,"timestamp":411459393892,"id":71,"parentId":30,"tags":{},"startTime":1779219431640,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":690325,"timestamp":411459379020,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1779219431625,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":678511,"timestamp":411459394479,"id":85,"parentId":47,"tags":{},"startTime":1779219431641,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":689426,"timestamp":411459383631,"id":47,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1779219431630,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":674307,"timestamp":411459399997,"id":92,"parentId":41,"tags":{},"startTime":1779219431646,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":693470,"timestamp":411459380895,"id":41,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/agents"},"startTime":1779219431627,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":680519,"timestamp":411459401445,"id":93,"parentId":43,"tags":{},"startTime":1779219431648,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":700675,"timestamp":411459381358,"id":43,"parentId":19,"tags":{"page":"/api/hub/servers"},"startTime":1779219431628,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":695684,"timestamp":411459397985,"id":90,"parentId":24,"tags":{},"startTime":1779219431644,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":717907,"timestamp":411459375818,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1779219431622,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":695794,"timestamp":411459399150,"id":91,"parentId":31,"tags":{},"startTime":1779219431645,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":715844,"timestamp":411459379150,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1779219431625,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":734460,"timestamp":411459403730,"id":95,"parentId":52,"tags":{},"startTime":1779219431650,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":753867,"timestamp":411459384412,"id":52,"parentId":19,"tags":{"page":"/login"},"startTime":1779219431631,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":741593,"timestamp":411459403792,"id":100,"parentId":58,"tags":{},"startTime":1779219431650,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":759367,"timestamp":411459386091,"id":58,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1779219431632,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":748600,"timestamp":411459403742,"id":96,"parentId":53,"tags":{},"startTime":1779219431650,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":767824,"timestamp":411459384588,"id":53,"parentId":19,"tags":{"page":"/logs"},"startTime":1779219431631,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":748830,"timestamp":411459403756,"id":97,"parentId":54,"tags":{},"startTime":1779219431650,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":767888,"timestamp":411459384759,"id":54,"parentId":19,"tags":{"page":"/messages"},"startTime":1779219431631,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":754157,"timestamp":411459403918,"id":101,"parentId":59,"tags":{},"startTime":1779219431650,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":771850,"timestamp":411459386289,"id":59,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1779219431633,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":757262,"timestamp":411459403941,"id":102,"parentId":61,"tags":{},"startTime":1779219431650,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":774387,"timestamp":411459386867,"id":61,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1779219431633,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":758803,"timestamp":411459403963,"id":104,"parentId":63,"tags":{},"startTime":1779219431650,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":775666,"timestamp":411459387144,"id":63,"parentId":19,"tags":{"page":"/tasks"},"startTime":1779219431633,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":761866,"timestamp":411459403784,"id":99,"parentId":56,"tags":{},"startTime":1779219431650,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":780453,"timestamp":411459385239,"id":56,"parentId":19,"tags":{"page":"/nodes"},"startTime":1779219431632,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":763233,"timestamp":411459403950,"id":103,"parentId":62,"tags":{},"startTime":1779219431650,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":780230,"timestamp":411459386996,"id":62,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1779219431633,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":748131,"timestamp":411459420505,"id":105,"parentId":60,"tags":{},"startTime":1779219431667,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":782202,"timestamp":411459386464,"id":60,"parentId":19,"tags":{"page":"/settings"},"startTime":1779219431633,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":767008,"timestamp":411459403771,"id":98,"parentId":55,"tags":{},"startTime":1779219431650,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":785843,"timestamp":411459384973,"id":55,"parentId":19,"tags":{"page":"/node"},"startTime":1779219431631,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":719385,"timestamp":411459452803,"id":106,"parentId":57,"tags":{},"startTime":1779219431699,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":786729,"timestamp":411459385499,"id":57,"parentId":19,"tags":{"page":"/"},"startTime":1779219431632,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":789019,"timestamp":411459391256,"id":64,"parentId":21,"tags":{},"startTime":1779219431638,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":806527,"timestamp":411459373781,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1779219431620,"traceId":"5a6f27f56ffc3218"},{"name":"is-page-static","duration":791121,"timestamp":411459403698,"id":94,"parentId":23,"tags":{},"startTime":1779219431650,"traceId":"5a6f27f56ffc3218"},{"name":"check-page","duration":819272,"timestamp":411459375591,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1779219431622,"traceId":"5a6f27f56ffc3218"},{"name":"static-check","duration":823395,"timestamp":411459371506,"id":19,"parentId":1,"tags":{},"startTime":1779219431618,"traceId":"5a6f27f56ffc3218"}]
|
|
2
|
-
[{"name":"write-routes-manifest","duration":
|
|
1
|
+
[{"name":"generate-buildid","duration":251,"timestamp":412154290384,"id":4,"parentId":1,"tags":{},"startTime":1779220126537,"traceId":"3b9c1d48e983b93c"},{"name":"load-custom-routes","duration":521,"timestamp":412154290776,"id":5,"parentId":1,"tags":{},"startTime":1779220126537,"traceId":"3b9c1d48e983b93c"},{"name":"create-dist-dir","duration":646,"timestamp":412154291342,"id":6,"parentId":1,"tags":{},"startTime":1779220126538,"traceId":"3b9c1d48e983b93c"},{"name":"clean","duration":32448,"timestamp":412154292824,"id":7,"parentId":1,"tags":{},"startTime":1779220126539,"traceId":"3b9c1d48e983b93c"},{"name":"discover-routes","duration":26464,"timestamp":412154403723,"id":8,"parentId":1,"tags":{},"startTime":1779220126650,"traceId":"3b9c1d48e983b93c"},{"name":"create-root-mapping","duration":138,"timestamp":412154430253,"id":9,"parentId":1,"tags":{},"startTime":1779220126677,"traceId":"3b9c1d48e983b93c"},{"name":"generate-route-types","duration":20323,"timestamp":412154433216,"id":10,"parentId":1,"tags":{},"startTime":1779220126679,"traceId":"3b9c1d48e983b93c"},{"name":"public-dir-conflict-check","duration":97,"timestamp":412154453631,"id":11,"parentId":1,"tags":{},"startTime":1779220126700,"traceId":"3b9c1d48e983b93c"},{"name":"generate-routes-manifest","duration":5650,"timestamp":412154453841,"id":12,"parentId":1,"tags":{},"startTime":1779220126700,"traceId":"3b9c1d48e983b93c"},{"name":"run-turbopack","duration":6357953,"timestamp":412154465292,"id":14,"parentId":1,"tags":{},"startTime":1779220126712,"traceId":"3b9c1d48e983b93c"},{"name":"turbopack-build-events","duration":130,"timestamp":412154798958,"id":15,"parentId":1,"tags":{},"startTime":1779220127045,"traceId":"3b9c1d48e983b93c"},{"name":"run-typescript","duration":10191944,"timestamp":412160839645,"id":16,"parentId":1,"tags":{},"startTime":1779220133086,"traceId":"3b9c1d48e983b93c"},{"name":"generate-required-server-files","duration":3824,"timestamp":412171033572,"id":18,"parentId":1,"tags":{},"startTime":1779220143280,"traceId":"3b9c1d48e983b93c"},{"name":"check-static-error-page","duration":15680,"timestamp":412171239099,"id":20,"parentId":19,"tags":{},"startTime":1779220143485,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":505685,"timestamp":412171258777,"id":65,"parentId":22,"tags":{},"startTime":1779220143505,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":522314,"timestamp":412171242334,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1779220143489,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":547913,"timestamp":412171259148,"id":68,"parentId":27,"tags":{},"startTime":1779220143505,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":561465,"timestamp":412171245702,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1779220143492,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":553619,"timestamp":412171259728,"id":72,"parentId":32,"tags":{},"startTime":1779220143506,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":566919,"timestamp":412171246513,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1779220143493,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":559335,"timestamp":412171259257,"id":69,"parentId":28,"tags":{},"startTime":1779220143506,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":572821,"timestamp":412171245831,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1779220143492,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":565577,"timestamp":412171259519,"id":70,"parentId":29,"tags":{},"startTime":1779220143506,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":579214,"timestamp":412171245953,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1779220143492,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":583194,"timestamp":412171263290,"id":74,"parentId":34,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":599816,"timestamp":412171246747,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1779220143493,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":590326,"timestamp":412171263202,"id":73,"parentId":33,"tags":{},"startTime":1779220143509,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":607022,"timestamp":412171246639,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1779220143493,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":600959,"timestamp":412171258357,"id":64,"parentId":21,"tags":{},"startTime":1779220143505,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":618663,"timestamp":412171240728,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1779220143487,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":606174,"timestamp":412171259031,"id":67,"parentId":26,"tags":{},"startTime":1779220143505,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":619689,"timestamp":412171245584,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1779220143492,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":602140,"timestamp":412171263319,"id":75,"parentId":35,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":618633,"timestamp":412171246860,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1779220143493,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":612138,"timestamp":412171263409,"id":79,"parentId":39,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":627791,"timestamp":412171247809,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1779220143494,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":622219,"timestamp":412171258913,"id":66,"parentId":25,"tags":{},"startTime":1779220143505,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":635778,"timestamp":412171245407,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1779220143492,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":621442,"timestamp":412171263422,"id":80,"parentId":40,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":637003,"timestamp":412171247918,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1779220143494,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":621914,"timestamp":412171263381,"id":77,"parentId":37,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":637780,"timestamp":412171247566,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1779220143494,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":624901,"timestamp":412171263447,"id":82,"parentId":44,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":639631,"timestamp":412171248777,"id":44,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1779220143495,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":629776,"timestamp":412171263434,"id":81,"parentId":42,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":644974,"timestamp":412171248292,"id":42,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/health"},"startTime":1779220143495,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":631252,"timestamp":412171263469,"id":84,"parentId":46,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":644050,"timestamp":412171250734,"id":46,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1779220143497,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":632773,"timestamp":412171263456,"id":83,"parentId":45,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":647365,"timestamp":412171248913,"id":45,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1779220143495,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":638106,"timestamp":412171263504,"id":87,"parentId":49,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":650470,"timestamp":412171251182,"id":49,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1779220143497,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":639573,"timestamp":412171263517,"id":88,"parentId":50,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":651866,"timestamp":412171251275,"id":50,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1779220143498,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":646742,"timestamp":412171263490,"id":86,"parentId":48,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":659223,"timestamp":412171251062,"id":48,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1779220143497,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":647135,"timestamp":412171263340,"id":76,"parentId":36,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":663136,"timestamp":412171247376,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1779220143494,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":647353,"timestamp":412171263530,"id":89,"parentId":51,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":659582,"timestamp":412171251355,"id":51,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1779220143498,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":649457,"timestamp":412171267613,"id":90,"parentId":24,"tags":{},"startTime":1779220143514,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":674256,"timestamp":412171242870,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1779220143489,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":640277,"timestamp":412171278656,"id":93,"parentId":43,"tags":{},"startTime":1779220143525,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":670513,"timestamp":412171248469,"id":43,"parentId":19,"tags":{"page":"/api/hub/servers"},"startTime":1779220143495,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":659231,"timestamp":412171263482,"id":85,"parentId":47,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":671837,"timestamp":412171250916,"id":47,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1779220143497,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":664718,"timestamp":412171259668,"id":71,"parentId":30,"tags":{},"startTime":1779220143506,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":678325,"timestamp":412171246114,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1779220143492,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":662429,"timestamp":412171273135,"id":92,"parentId":41,"tags":{},"startTime":1779220143519,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":687581,"timestamp":412171248041,"id":41,"parentId":19,"tags":{"page":"/api/hub/server/[hostname]/agents"},"startTime":1779220143494,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":666245,"timestamp":412171272217,"id":91,"parentId":31,"tags":{},"startTime":1779220143518,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":692266,"timestamp":412171246249,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1779220143493,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":690889,"timestamp":412171263399,"id":78,"parentId":38,"tags":{},"startTime":1779220143510,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":706650,"timestamp":412171247705,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1779220143494,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":677625,"timestamp":412171285073,"id":100,"parentId":58,"tags":{},"startTime":1779220143531,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":709425,"timestamp":412171253335,"id":58,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1779220143500,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":685199,"timestamp":412171285196,"id":101,"parentId":59,"tags":{},"startTime":1779220143531,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":716892,"timestamp":412171253564,"id":59,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1779220143500,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":692672,"timestamp":412171285216,"id":102,"parentId":61,"tags":{},"startTime":1779220143531,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":723744,"timestamp":412171254219,"id":61,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1779220143500,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":707197,"timestamp":412171285230,"id":103,"parentId":62,"tags":{},"startTime":1779220143532,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":738113,"timestamp":412171254379,"id":62,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1779220143501,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":707656,"timestamp":412171285019,"id":96,"parentId":53,"tags":{},"startTime":1779220143531,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":742026,"timestamp":412171251915,"id":53,"parentId":19,"tags":{"page":"/logs"},"startTime":1779220143498,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":709333,"timestamp":412171284954,"id":94,"parentId":23,"tags":{},"startTime":1779220143531,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":751724,"timestamp":412171242618,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1779220143489,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":711695,"timestamp":412171284985,"id":95,"parentId":52,"tags":{},"startTime":1779220143531,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":744975,"timestamp":412171251756,"id":52,"parentId":19,"tags":{"page":"/login"},"startTime":1779220143498,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":701497,"timestamp":412171298624,"id":105,"parentId":57,"tags":{},"startTime":1779220143545,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":747395,"timestamp":412171252762,"id":57,"parentId":19,"tags":{"page":"/"},"startTime":1779220143499,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":715652,"timestamp":412171285244,"id":104,"parentId":63,"tags":{},"startTime":1779220143532,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":746407,"timestamp":412171254530,"id":63,"parentId":19,"tags":{"page":"/tasks"},"startTime":1779220143501,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":696671,"timestamp":412171308423,"id":106,"parentId":60,"tags":{},"startTime":1779220143555,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":751394,"timestamp":412171253745,"id":60,"parentId":19,"tags":{"page":"/settings"},"startTime":1779220143500,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":737346,"timestamp":412171285060,"id":99,"parentId":56,"tags":{},"startTime":1779220143531,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":769937,"timestamp":412171252522,"id":56,"parentId":19,"tags":{"page":"/nodes"},"startTime":1779220143499,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":740049,"timestamp":412171285046,"id":98,"parentId":55,"tags":{},"startTime":1779220143531,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":772846,"timestamp":412171252298,"id":55,"parentId":19,"tags":{"page":"/node"},"startTime":1779220143499,"traceId":"3b9c1d48e983b93c"},{"name":"is-page-static","duration":752082,"timestamp":412171285033,"id":97,"parentId":54,"tags":{},"startTime":1779220143531,"traceId":"3b9c1d48e983b93c"},{"name":"check-page","duration":785077,"timestamp":412171252089,"id":54,"parentId":19,"tags":{"page":"/messages"},"startTime":1779220143498,"traceId":"3b9c1d48e983b93c"},{"name":"static-check","duration":799281,"timestamp":412171237929,"id":19,"parentId":1,"tags":{},"startTime":1779220143484,"traceId":"3b9c1d48e983b93c"}]
|
|
2
|
+
[{"name":"write-routes-manifest","duration":480,"timestamp":412172046613,"id":108,"parentId":1,"tags":{},"startTime":1779220144293,"traceId":"3b9c1d48e983b93c"},{"name":"load-dotenv","duration":46,"timestamp":412172058284,"id":111,"parentId":110,"tags":{},"startTime":1779220144305,"traceId":"3b9c1d48e983b93c"},{"name":"run-export-path-map","duration":530,"timestamp":412172061552,"id":112,"parentId":110,"tags":{},"startTime":1779220144308,"traceId":"3b9c1d48e983b93c"},{"name":"next-export","duration":580863,"timestamp":412172057024,"id":110,"parentId":1,"tags":{},"startTime":1779220144303,"traceId":"3b9c1d48e983b93c"},{"name":"move-exported-app-not-found-","duration":561,"timestamp":412172641161,"id":113,"parentId":109,"tags":{},"startTime":1779220144887,"traceId":"3b9c1d48e983b93c"},{"name":"move-exported-app-global-error-","duration":513,"timestamp":412172641839,"id":114,"parentId":109,"tags":{},"startTime":1779220144888,"traceId":"3b9c1d48e983b93c"},{"name":"static-generation","duration":593316,"timestamp":412172051178,"id":109,"parentId":1,"tags":{},"startTime":1779220144297,"traceId":"3b9c1d48e983b93c"},{"name":"write-routes-manifest","duration":1618,"timestamp":412172644780,"id":115,"parentId":1,"tags":{},"startTime":1779220144891,"traceId":"3b9c1d48e983b93c"},{"name":"print-tree-view","duration":4849,"timestamp":412172662357,"id":116,"parentId":1,"tags":{},"startTime":1779220144909,"traceId":"3b9c1d48e983b93c"},{"name":"write-route-bundle-stats","duration":12583,"timestamp":412172667243,"id":117,"parentId":1,"tags":{},"startTime":1779220144914,"traceId":"3b9c1d48e983b93c"},{"name":"telemetry-flush","duration":20437,"timestamp":412172679852,"id":118,"parentId":1,"tags":{},"startTime":1779220144926,"traceId":"3b9c1d48e983b93c"},{"name":"next-build","duration":18462814,"timestamp":412154237507,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1779220126484,"traceId":"3b9c1d48e983b93c"}]
|
package/.next/trace-build
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"name":"run-turbopack","duration":
|
|
1
|
+
[{"name":"run-turbopack","duration":6357953,"timestamp":412154465292,"id":14,"parentId":1,"tags":{},"startTime":1779220126712,"traceId":"3b9c1d48e983b93c"},{"name":"turbopack-build-events","duration":130,"timestamp":412154798958,"id":15,"parentId":1,"tags":{},"startTime":1779220127045,"traceId":"3b9c1d48e983b93c"},{"name":"run-typescript","duration":10191944,"timestamp":412160839645,"id":16,"parentId":1,"tags":{},"startTime":1779220133086,"traceId":"3b9c1d48e983b93c"},{"name":"static-check","duration":799281,"timestamp":412171237929,"id":19,"parentId":1,"tags":{},"startTime":1779220143484,"traceId":"3b9c1d48e983b93c"},{"name":"static-generation","duration":593316,"timestamp":412172051178,"id":109,"parentId":1,"tags":{},"startTime":1779220144297,"traceId":"3b9c1d48e983b93c"},{"name":"telemetry-flush","duration":20437,"timestamp":412172679852,"id":118,"parentId":1,"tags":{},"startTime":1779220144926,"traceId":"3b9c1d48e983b93c"},{"name":"next-build","duration":18462814,"timestamp":412154237507,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1779220126484,"traceId":"3b9c1d48e983b93c"}]
|
|
@@ -4933,7 +4933,7 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
|
|
|
4933
4933
|
data-topo-respiratory-dual-axis-surfaces={JSON.stringify([
|
|
4934
4934
|
{ anchor: "kicker", cadence_s: 6, axes: ["opacity", "transform-scale", "text-shadow"] },
|
|
4935
4935
|
{ anchor: "zoom-level", cadence_s: 9, axes: ["opacity", "transform-scale"] },
|
|
4936
|
-
{ anchor: "H2", cadence_s: 10, axes: ["opacity", "transform-scale"] },
|
|
4936
|
+
{ anchor: "H2", cadence_s: 10, axes: ["opacity", "transform-scale", "text-shadow"] },
|
|
4937
4937
|
{ anchor: "watermark", cadence_s: 6, axes: ["opacity", "letter-spacing", "text-shadow"] },
|
|
4938
4938
|
{ anchor: "recent", cadence_s: 8, axes: ["opacity", "font-size"] },
|
|
4939
4939
|
{ anchor: "legend", cadence_s: 8, axes: ["opacity", "font-size"] },
|
|
@@ -4974,12 +4974,33 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
|
|
|
4974
4974
|
no DOM thrash. R710/R716 unchanged (each catalog is
|
|
4975
4975
|
orthogonal). Future rounds: when adding a new structural
|
|
4976
4976
|
pattern, append to this list as the doc step. */
|
|
4977
|
+
/* Round 724 / Loop — 6TH pattern entry added: `triple-axis-pair`.
|
|
4978
|
+
R721 made kicker the first triple-axis surface; R722 made
|
|
4979
|
+
watermark the second; R723 surfaced the triple-axis tier
|
|
4980
|
+
as its own catalog. R724 promotes the "6 s triple-axis
|
|
4981
|
+
pair" observation to a NAMED pattern in R717, completing
|
|
4982
|
+
the family's pattern-axis documentation of this structural
|
|
4983
|
+
motif (both 6 s, both with text-shadow, both sparse-hover
|
|
4984
|
+
read-target text).
|
|
4985
|
+
|
|
4986
|
+
Anchors overlap with prior patterns: kicker is also in
|
|
4987
|
+
"title-block" (cadences 5/6/10/11), watermark text is
|
|
4988
|
+
also in "canvas-brand-pair" (cadences 6/7/13/15). That
|
|
4989
|
+
non-exclusivity is INTENDED — patterns slice the family
|
|
4990
|
+
by STRUCTURAL SHAPE, not partition by tier. The "triple-
|
|
4991
|
+
axis-pair" pattern is orthogonal to the other 5: it
|
|
4992
|
+
groups by AXIS COUNT + CADENCE COINCIDENCE rather than
|
|
4993
|
+
by spatial role.
|
|
4994
|
+
|
|
4995
|
+
Cross-check (R724 test): the anchors here must equal
|
|
4996
|
+
R723's triple-axis-surfaces anchor set. */
|
|
4977
4997
|
data-topo-respiratory-patterns={JSON.stringify([
|
|
4978
4998
|
{ name: "title-block", cadences: [5, 6, 10, 11], anchors: ["brand logo", "kicker", "H2 section title", "title-block envelope"], shape: "trio-with-envelope" },
|
|
4979
4999
|
{ name: "panel-pair", cadences: [8], anchors: ["recent title", "legend title"], shape: "parity" },
|
|
4980
5000
|
{ name: "chrome-strip", cadences: [9, 17, 19, 21, 23, 25], anchors: ["zoom-level readout", "Layout wrapper", "nodeSize wrapper", "reset button", "zoom wrapper", "fullscreen button"], shape: "tiered-with-quintet" },
|
|
4981
5001
|
{ name: "canvas-brand-pair", cadences: [6, 7, 13, 15], anchors: ["watermark text", "crescent inner", "crescent wrapper envelope", "watermark wrapper envelope"], shape: "coprime-nested-pair" },
|
|
4982
5002
|
{ name: "background", cadences: [3, 4], anchors: ["row hot", "hub idle"], shape: "baseline-pair" },
|
|
5003
|
+
{ name: "triple-axis-pair", cadences: [6], anchors: ["kicker", "watermark text"], shape: "6s-triple-pair" },
|
|
4983
5004
|
])}
|
|
4984
5005
|
/* Round 720 / Loop — 4TH orthogonal meta-doc catalog: tiers.
|
|
4985
5006
|
Joins R710 (cadences) + R716 (axes) + R717 (patterns) to
|
|
@@ -5054,8 +5075,9 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
|
|
|
5054
5075
|
triple-axis surface arrives at a different cadence and
|
|
5055
5076
|
requires the pattern to be the discriminator. */
|
|
5056
5077
|
data-topo-respiratory-triple-axis-surfaces={JSON.stringify([
|
|
5057
|
-
{ anchor: "kicker", cadence_s: 6,
|
|
5058
|
-
{ anchor: "watermark", cadence_s: 6,
|
|
5078
|
+
{ anchor: "kicker", cadence_s: 6, axes: ["opacity", "transform-scale", "text-shadow"] },
|
|
5079
|
+
{ anchor: "watermark", cadence_s: 6, axes: ["opacity", "letter-spacing", "text-shadow"] },
|
|
5080
|
+
{ anchor: "H2", cadence_s: 10, axes: ["opacity", "transform-scale", "text-shadow"] },
|
|
5059
5081
|
])}
|
|
5060
5082
|
data-topo-pinned-aspect={(() => {
|
|
5061
5083
|
const aspects: string[] = [];
|
package/app/globals.css
CHANGED
|
@@ -1423,9 +1423,41 @@ body {
|
|
|
1423
1423
|
needing a second class or animation. Pattern budget: prefer single-
|
|
1424
1424
|
axis on most anchors (visual hierarchy) and reserve dual-axis for
|
|
1425
1425
|
primary identity surfaces (H2 here = first primary-identity dual). */
|
|
1426
|
+
/* Round 725 — H2 section title becomes the 3RD triple-axis surface,
|
|
1427
|
+
FIRST triple-axis member at a NON-6 s cadence (10 s). Establishes
|
|
1428
|
+
that the triple-axis TIER is multi-cadence rather than 6 s-locked —
|
|
1429
|
+
the R724 `triple-axis-pair` pattern stays valid for kicker+watermark
|
|
1430
|
+
at 6 s; H2 joins the triple-axis TIER as a solo 10 s member.
|
|
1431
|
+
|
|
1432
|
+
H2's prior dual-axis (R702 opacity + R711 transform-scale @ 10 s)
|
|
1433
|
+
gains a 3rd CSS-animated axis: text-shadow glow at 10 s in phase.
|
|
1434
|
+
Reads as a slow inhale glow on the section heading — calmer than
|
|
1435
|
+
the 6 s pair (kicker/watermark) because H2's slower cadence keeps
|
|
1436
|
+
the glow appearance interval at 5 s (vs 3 s for the 6 s tier).
|
|
1437
|
+
|
|
1438
|
+
Glow tuning vs kicker (R721) and watermark (R722):
|
|
1439
|
+
kicker blur 6 px, alpha 0.30 @ 6 s
|
|
1440
|
+
watermark blur 8 px, alpha 0.20 @ 6 s
|
|
1441
|
+
H2 blur 8 px, alpha 0.22 @ 10 s ← this round
|
|
1442
|
+
H2 sits between the two at alpha; its larger fontSize (section
|
|
1443
|
+
heading, much bigger than kicker/watermark) needs a wider blur
|
|
1444
|
+
(8 px to match watermark) but a slightly higher alpha than
|
|
1445
|
+
watermark (0.22 vs 0.20) because at H2's slower 10 s cadence the
|
|
1446
|
+
glow gets a longer dwell time at peak — proportionally tighter
|
|
1447
|
+
alpha would feel under-emphasised vs the 6 s pair's snappier peaks.
|
|
1448
|
+
|
|
1449
|
+
The triple-axis tier now has 3 members across 2 cadences:
|
|
1450
|
+
6 s kicker + watermark (R724 "triple-axis-pair" pattern)
|
|
1451
|
+
10 s H2 (solo)
|
|
1452
|
+
R725 doesn't add a new R717 pattern entry — H2 is a solo, not
|
|
1453
|
+
a pair. R723 catalog (triple-axis-surfaces) extends to 3 entries.
|
|
1454
|
+
|
|
1455
|
+
prefers-reduced-motion guard already in place on the existing
|
|
1456
|
+
R702 H2 breath class; this round's text-shadow axis joins the
|
|
1457
|
+
same animation rule and is neutralised by the same @media block. */
|
|
1426
1458
|
@keyframes anet-topo-section-title-breath-kf {
|
|
1427
|
-
0%, 100% { opacity: 1; transform: scale(1); }
|
|
1428
|
-
50% { opacity: 0.88; transform: scale(0.997); }
|
|
1459
|
+
0%, 100% { opacity: 1; transform: scale(1); text-shadow: none; }
|
|
1460
|
+
50% { opacity: 0.88; transform: scale(0.997); text-shadow: 0 0 8px rgba(34, 211, 238, 0.22); }
|
|
1429
1461
|
}
|
|
1430
1462
|
.anet-topo-section-title-breath {
|
|
1431
1463
|
animation: anet-topo-section-title-breath-kf 10s ease-in-out infinite;
|
package/package.json
CHANGED
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/* Round 725 — H2 section title becomes the 3RD triple-axis breath
|
|
2
|
+
* surface; FIRST triple-axis member at a NON-6 s cadence (10 s).
|
|
3
|
+
* Establishes that the triple-axis TIER is multi-cadence rather
|
|
4
|
+
* than 6 s-locked. R724's `triple-axis-pair` pattern stays valid
|
|
5
|
+
* (kicker + watermark still pair at 6 s); H2 joins the tier as a
|
|
6
|
+
* solo 10 s member.
|
|
7
|
+
*
|
|
8
|
+
* H2's 3 axes (all at 10 s in phase):
|
|
9
|
+
* R702 opacity (1 ↔ 0.88)
|
|
10
|
+
* R711 transform-scale (1 ↔ 0.997)
|
|
11
|
+
* R725 text-shadow (none ↔ 0 0 8 px rgba(34, 211, 238, 0.22))
|
|
12
|
+
*
|
|
13
|
+
* Glow tuning: 8 px blur (matches watermark) + 0.22 alpha (between
|
|
14
|
+
* kicker 0.30 and watermark 0.20). Wider blur for larger fontSize;
|
|
15
|
+
* slightly higher alpha than watermark because at 10 s the dwell
|
|
16
|
+
* time at peak is longer than the 6 s pair, so a tighter alpha
|
|
17
|
+
* would feel under-emphasised vs the snappier 6 s peaks.
|
|
18
|
+
*
|
|
19
|
+
* Assertions:
|
|
20
|
+
* - CSS keyframes 0%/100% has text-shadow: none with R702 opacity 1 + R711 scale(1)
|
|
21
|
+
* - CSS keyframes 50% has text-shadow: 0 0 8 px rgba(34, 211, 238, 0.22)
|
|
22
|
+
* with R702 opacity 0.88 + R711 scale(0.997)
|
|
23
|
+
* - .anet-topo-section-title-breath rule still binds 10 s cadence (R702 preserved)
|
|
24
|
+
* - prefers-reduced-motion guard still present
|
|
25
|
+
* - runtime H2 has the breath class
|
|
26
|
+
* - R716 catalog H2 entry axes = ["opacity", "transform-scale", "text-shadow"]
|
|
27
|
+
* - R723 catalog has 3 entries (was 2 pre-R725)
|
|
28
|
+
* - R723 catalog includes H2 with cadence 10 + axes triple
|
|
29
|
+
* - text-shadow now appears on 3 surfaces (kicker + watermark + H2)
|
|
30
|
+
* - the 6 s pair (kicker + watermark) is still INTACT inside R723
|
|
31
|
+
*/
|
|
32
|
+
import { chromium } from 'playwright';
|
|
33
|
+
import { readFileSync } from 'node:fs';
|
|
34
|
+
|
|
35
|
+
const TOKEN = JSON.parse(readFileSync('/home/vansin/.anet/config.json', 'utf8')).token;
|
|
36
|
+
const fresh = new Date(Date.now() - 60 * 1000).toISOString();
|
|
37
|
+
|
|
38
|
+
const browser = await chromium.launch({ headless: true });
|
|
39
|
+
const ctx = await browser.newContext({ viewport: { width: 1500, height: 1200 } });
|
|
40
|
+
await ctx.addCookies([{ name: 'anet_dashboard_session', value: `v3:${TOKEN}`, domain: '127.0.0.1', path: '/' }]);
|
|
41
|
+
await ctx.addInitScript(() => {
|
|
42
|
+
try {
|
|
43
|
+
localStorage.setItem('anet-theme', 'cyber');
|
|
44
|
+
localStorage.setItem('anet-topo-layout', 'ring');
|
|
45
|
+
sessionStorage.setItem('anet_v3_auth', '1');
|
|
46
|
+
} catch {}
|
|
47
|
+
});
|
|
48
|
+
await ctx.route('**/api/hub/status*', async (route) => {
|
|
49
|
+
const r = await route.fetch();
|
|
50
|
+
const b = await r.json();
|
|
51
|
+
const nid = (b.sessions || [])[0]?.network_id || 'default';
|
|
52
|
+
const mk = (alias) => ({
|
|
53
|
+
alias, status: 'idle', model: 'claude-opus-4', runtime: 'claude-code-cli',
|
|
54
|
+
network_id: nid, project_dir: null,
|
|
55
|
+
created_at: fresh, updated_at: fresh, last_seen_at: fresh,
|
|
56
|
+
});
|
|
57
|
+
await route.fulfill({ response: r, json: { ...b, sessions: [mk('a·1'), mk('a·2')] } });
|
|
58
|
+
});
|
|
59
|
+
await ctx.route('**/api/hub/messages*', (r) => r.fulfill({ json: { messages: [] } }));
|
|
60
|
+
await ctx.route('**/api/hub/tasks*', (r) => r.fulfill({ json: { tasks: [] } }));
|
|
61
|
+
const page = await ctx.newPage();
|
|
62
|
+
await page.goto('http://127.0.0.1:3000/', { waitUntil: 'networkidle' });
|
|
63
|
+
await page.waitForSelector('.anet-topo-section-title-breath', { timeout: 15000, state: 'attached' });
|
|
64
|
+
await page.waitForTimeout(300);
|
|
65
|
+
|
|
66
|
+
const runtimeState = await page.evaluate(() => {
|
|
67
|
+
const h2 = document.querySelector('.anet-topo-section-title-breath');
|
|
68
|
+
if (!h2) return null;
|
|
69
|
+
const cs = getComputedStyle(h2);
|
|
70
|
+
const svg = document.querySelector('[data-topo-canvas-aria]');
|
|
71
|
+
return {
|
|
72
|
+
has_class: h2.classList.contains('anet-topo-section-title-breath'),
|
|
73
|
+
anim_name: cs.animationName,
|
|
74
|
+
anim_duration: cs.animationDuration,
|
|
75
|
+
dual_axis: svg?.getAttribute('data-topo-respiratory-dual-axis-surfaces') ?? null,
|
|
76
|
+
triple_axis: svg?.getAttribute('data-topo-respiratory-triple-axis-surfaces') ?? null,
|
|
77
|
+
};
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
await browser.close();
|
|
81
|
+
|
|
82
|
+
const cssSrc = readFileSync('/home/vansin/agent-network-dashboard/app/globals.css', 'utf8');
|
|
83
|
+
const cssKf0_Triple = /@keyframes anet-topo-section-title-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);
|
|
84
|
+
const cssKf50_Triple = /@keyframes anet-topo-section-title-breath-kf\s*\{[\s\S]*?50%\s*\{[\s\S]*?opacity:\s*0\.88[\s\S]*?transform:\s*scale\(0\.997\)[\s\S]*?text-shadow:\s*0\s+0\s+8px\s+rgba\(34,\s*211,\s*238,\s*0\.22\)/.test(cssSrc);
|
|
85
|
+
const cssClassBound10s = /\.anet-topo-section-title-breath\s*\{[\s\S]*?animation:\s*anet-topo-section-title-breath-kf\s+10s\s+ease-in-out\s+infinite/.test(cssSrc);
|
|
86
|
+
const cssReducedMotion = /@media\s*\(prefers-reduced-motion:\s*reduce\)\s*\{[\s\S]*?\.anet-topo-section-title-breath\s*\{\s*animation:\s*none/.test(cssSrc);
|
|
87
|
+
|
|
88
|
+
const runtimeAnimOk = runtimeState?.anim_name === 'anet-topo-section-title-breath-kf' || runtimeState?.anim_name === 'none';
|
|
89
|
+
|
|
90
|
+
let dualAxisCatalog = null;
|
|
91
|
+
let tripleAxisCatalog = null;
|
|
92
|
+
try {
|
|
93
|
+
dualAxisCatalog = JSON.parse(runtimeState?.dual_axis ?? '');
|
|
94
|
+
tripleAxisCatalog = JSON.parse(runtimeState?.triple_axis ?? '');
|
|
95
|
+
} catch {}
|
|
96
|
+
|
|
97
|
+
const h2DualAxisEntry = Array.isArray(dualAxisCatalog) ? dualAxisCatalog.find(e => e.anchor === 'H2') : null;
|
|
98
|
+
const h2TripleAxes_inR716 = !!h2DualAxisEntry
|
|
99
|
+
&& Array.isArray(h2DualAxisEntry.axes)
|
|
100
|
+
&& JSON.stringify(h2DualAxisEntry.axes) === JSON.stringify(['opacity', 'transform-scale', 'text-shadow']);
|
|
101
|
+
|
|
102
|
+
const h2TripleEntry = Array.isArray(tripleAxisCatalog) ? tripleAxisCatalog.find(e => e.anchor === 'H2') : null;
|
|
103
|
+
const h2InTripleCatalog = !!h2TripleEntry
|
|
104
|
+
&& h2TripleEntry.cadence_s === 10
|
|
105
|
+
&& JSON.stringify(h2TripleEntry.axes) === JSON.stringify(['opacity', 'transform-scale', 'text-shadow']);
|
|
106
|
+
|
|
107
|
+
const textShadowAnchors = Array.isArray(dualAxisCatalog)
|
|
108
|
+
? dualAxisCatalog.filter(e => Array.isArray(e.axes) && e.axes.includes('text-shadow')).map(e => e.anchor).sort()
|
|
109
|
+
: [];
|
|
110
|
+
const textShadowOnThree = JSON.stringify(textShadowAnchors) === JSON.stringify(['H2', 'kicker', 'watermark']);
|
|
111
|
+
|
|
112
|
+
const sixSecondAnchors = Array.isArray(tripleAxisCatalog)
|
|
113
|
+
? tripleAxisCatalog.filter(e => e.cadence_s === 6).map(e => e.anchor).sort()
|
|
114
|
+
: [];
|
|
115
|
+
const sixSecondPairIntact = JSON.stringify(sixSecondAnchors) === JSON.stringify(['kicker', 'watermark']);
|
|
116
|
+
|
|
117
|
+
const results = {
|
|
118
|
+
h2_present: !!runtimeState,
|
|
119
|
+
has_breath_class: runtimeState?.has_class === true,
|
|
120
|
+
runtime_anim_h2_kf: runtimeAnimOk,
|
|
121
|
+
css_0_100_triple_axis: cssKf0_Triple,
|
|
122
|
+
css_50_triple_axis_with_glow: cssKf50_Triple,
|
|
123
|
+
css_class_binds_10s: cssClassBound10s,
|
|
124
|
+
css_reduced_motion_guard: cssReducedMotion,
|
|
125
|
+
r716_h2_three_axes: h2TripleAxes_inR716,
|
|
126
|
+
r723_three_entries: Array.isArray(tripleAxisCatalog) && tripleAxisCatalog.length === 3,
|
|
127
|
+
r723_h2_entry: h2InTripleCatalog,
|
|
128
|
+
text_shadow_on_three_surfaces: textShadowOnThree,
|
|
129
|
+
six_second_pair_still_intact: sixSecondPairIntact,
|
|
130
|
+
};
|
|
131
|
+
const ok = Object.values(results).every(Boolean);
|
|
132
|
+
console.log(`${ok ? '✅' : '❌'} R725 H2 triple-axis breath (3rd triple-axis surface, first non-6s @ 10s):`,
|
|
133
|
+
JSON.stringify(results, null, 2),
|
|
134
|
+
`\n H2 R716 entry: ${JSON.stringify(h2DualAxisEntry)}`,
|
|
135
|
+
`\n H2 R723 entry: ${JSON.stringify(h2TripleEntry)}`,
|
|
136
|
+
`\n text-shadow surfaces: ${JSON.stringify(textShadowAnchors)}`,
|
|
137
|
+
`\n 6s pair: ${JSON.stringify(sixSecondAnchors)}`);
|
|
138
|
+
process.exit(ok ? 0 : 1);
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/* Round 724 — 6th entry added to R717 patterns catalog:
|
|
2
|
+
* `triple-axis-pair` with shape `6s-triple-pair`. Formalizes the
|
|
3
|
+
* structural motif previously implicit across R721/R722/R723:
|
|
4
|
+
* kicker + watermark text — both at 6 s, both with text-shadow as
|
|
5
|
+
* the 3rd axis, both sparse-hover read-target text.
|
|
6
|
+
*
|
|
7
|
+
* Cross-validates against R723 triple-axis-surfaces catalog (the
|
|
8
|
+
* authoritative axis-count index): the anchors in this pattern entry
|
|
9
|
+
* must equal R723's anchor set.
|
|
10
|
+
*
|
|
11
|
+
* Assertions:
|
|
12
|
+
* - R717 patterns has exactly 6 entries (was 5 before R724)
|
|
13
|
+
* - One entry named "triple-axis-pair" exists
|
|
14
|
+
* - Its cadences = [6]
|
|
15
|
+
* - Its shape = "6s-triple-pair"
|
|
16
|
+
* - Its anchors = ["kicker", "watermark text"] (order preserved)
|
|
17
|
+
* - Cross-check: R723 triple-axis-surfaces anchor set, after
|
|
18
|
+
* normalising "watermark" → "watermark text" (the R723 catalog
|
|
19
|
+
* uses the short anchor key; R717 uses the full rolodex anchor
|
|
20
|
+
* name), equals this pattern's anchors
|
|
21
|
+
* - Anchor non-exclusivity (intended): kicker also appears in
|
|
22
|
+
* "title-block" pattern; "watermark text" also appears in
|
|
23
|
+
* "canvas-brand-pair" pattern
|
|
24
|
+
*/
|
|
25
|
+
import { chromium } from 'playwright';
|
|
26
|
+
import { readFileSync } from 'node:fs';
|
|
27
|
+
|
|
28
|
+
const TOKEN = JSON.parse(readFileSync('/home/vansin/.anet/config.json', 'utf8')).token;
|
|
29
|
+
const fresh = new Date(Date.now() - 60 * 1000).toISOString();
|
|
30
|
+
|
|
31
|
+
const browser = await chromium.launch({ headless: true });
|
|
32
|
+
const ctx = await browser.newContext({ viewport: { width: 1500, height: 1200 } });
|
|
33
|
+
await ctx.addCookies([{ name: 'anet_dashboard_session', value: `v3:${TOKEN}`, domain: '127.0.0.1', path: '/' }]);
|
|
34
|
+
await ctx.addInitScript(() => {
|
|
35
|
+
try {
|
|
36
|
+
localStorage.setItem('anet-theme', 'cyber');
|
|
37
|
+
localStorage.setItem('anet-topo-layout', 'ring');
|
|
38
|
+
sessionStorage.setItem('anet_v3_auth', '1');
|
|
39
|
+
} catch {}
|
|
40
|
+
});
|
|
41
|
+
await ctx.route('**/api/hub/status*', async (route) => {
|
|
42
|
+
const r = await route.fetch();
|
|
43
|
+
const b = await r.json();
|
|
44
|
+
const nid = (b.sessions || [])[0]?.network_id || 'default';
|
|
45
|
+
const mk = (alias) => ({
|
|
46
|
+
alias, status: 'idle', model: 'claude-opus-4', runtime: 'claude-code-cli',
|
|
47
|
+
network_id: nid, project_dir: null,
|
|
48
|
+
created_at: fresh, updated_at: fresh, last_seen_at: fresh,
|
|
49
|
+
});
|
|
50
|
+
await route.fulfill({ response: r, json: { ...b, sessions: [mk('a·1'), mk('a·2')] } });
|
|
51
|
+
});
|
|
52
|
+
await ctx.route('**/api/hub/messages*', (r) => r.fulfill({ json: { messages: [] } }));
|
|
53
|
+
await ctx.route('**/api/hub/tasks*', (r) => r.fulfill({ json: { tasks: [] } }));
|
|
54
|
+
const page = await ctx.newPage();
|
|
55
|
+
await page.goto('http://127.0.0.1:3000/', { waitUntil: 'networkidle' });
|
|
56
|
+
await page.waitForSelector('[data-topo-canvas-aria]', { timeout: 15000, state: 'attached' });
|
|
57
|
+
await page.waitForTimeout(300);
|
|
58
|
+
|
|
59
|
+
const runtimeAttrs = await page.evaluate(() => {
|
|
60
|
+
const svg = document.querySelector('[data-topo-canvas-aria]');
|
|
61
|
+
return {
|
|
62
|
+
patterns: svg?.getAttribute('data-topo-respiratory-patterns') ?? null,
|
|
63
|
+
triple: svg?.getAttribute('data-topo-respiratory-triple-axis-surfaces') ?? null,
|
|
64
|
+
};
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
await browser.close();
|
|
68
|
+
|
|
69
|
+
let patterns = null;
|
|
70
|
+
let triple = null;
|
|
71
|
+
try {
|
|
72
|
+
patterns = JSON.parse(runtimeAttrs.patterns ?? '');
|
|
73
|
+
triple = JSON.parse(runtimeAttrs.triple ?? '');
|
|
74
|
+
} catch {}
|
|
75
|
+
|
|
76
|
+
const pairEntry = Array.isArray(patterns) ? patterns.find(p => p.name === 'triple-axis-pair') : null;
|
|
77
|
+
const titleBlockEntry = Array.isArray(patterns) ? patterns.find(p => p.name === 'title-block') : null;
|
|
78
|
+
const canvasBrandPairEntry = Array.isArray(patterns) ? patterns.find(p => p.name === 'canvas-brand-pair') : null;
|
|
79
|
+
|
|
80
|
+
/* R725 extended R723 to 3 entries (H2 added at 10 s). The strict
|
|
81
|
+
* equality between R723's anchor set and the R717 pair anchors no
|
|
82
|
+
* longer holds — R723 is the full triple-axis SUPERSET now, the
|
|
83
|
+
* pair is a subset. Widen the cross-check: every pair anchor must
|
|
84
|
+
* exist in R723 (mapping watermark → watermark text), AND R723's
|
|
85
|
+
* 6 s subset (members with cadence_s === 6) must equal the pair. */
|
|
86
|
+
const r723AnchorsNormalised = Array.isArray(triple)
|
|
87
|
+
? triple.map(e => e.anchor === 'watermark' ? 'watermark text' : e.anchor)
|
|
88
|
+
: [];
|
|
89
|
+
const r723SixSecAnchorsNormalised = Array.isArray(triple)
|
|
90
|
+
? triple.filter(e => e.cadence_s === 6).map(e => e.anchor === 'watermark' ? 'watermark text' : e.anchor).sort()
|
|
91
|
+
: [];
|
|
92
|
+
const pairAnchorsSorted = pairEntry?.anchors ? [...pairEntry.anchors].sort() : [];
|
|
93
|
+
const pairSubsetOfR723 = Array.isArray(pairEntry?.anchors)
|
|
94
|
+
&& pairEntry.anchors.every(a => r723AnchorsNormalised.includes(a));
|
|
95
|
+
const r723SixSecondSubsetEqualsPair = JSON.stringify(r723SixSecAnchorsNormalised) === JSON.stringify(pairAnchorsSorted);
|
|
96
|
+
|
|
97
|
+
const results = {
|
|
98
|
+
patterns_has_6_entries: Array.isArray(patterns) && patterns.length === 6,
|
|
99
|
+
pair_entry_exists: !!pairEntry,
|
|
100
|
+
pair_cadences_is_6: JSON.stringify(pairEntry?.cadences) === JSON.stringify([6]),
|
|
101
|
+
pair_shape_correct: pairEntry?.shape === '6s-triple-pair',
|
|
102
|
+
pair_anchors_correct: JSON.stringify(pairEntry?.anchors) === JSON.stringify(['kicker', 'watermark text']),
|
|
103
|
+
pair_is_subset_of_r723: pairSubsetOfR723,
|
|
104
|
+
r723_6s_subset_equals_pair: r723SixSecondSubsetEqualsPair,
|
|
105
|
+
kicker_also_in_title_block: Array.isArray(titleBlockEntry?.anchors) && titleBlockEntry.anchors.includes('kicker'),
|
|
106
|
+
watermark_also_in_canvas_brand: Array.isArray(canvasBrandPairEntry?.anchors) && canvasBrandPairEntry.anchors.includes('watermark text'),
|
|
107
|
+
};
|
|
108
|
+
const ok = Object.values(results).every(Boolean);
|
|
109
|
+
console.log(`${ok ? '✅' : '❌'} R724 R717 patterns +1: triple-axis-pair (formalizes the 6s triple-axis pair structural motif):`,
|
|
110
|
+
JSON.stringify(results, null, 2),
|
|
111
|
+
`\n pair entry: ${JSON.stringify(pairEntry)}`,
|
|
112
|
+
`\n R723 anchors (normalised): ${JSON.stringify(r723AnchorsNormalised)}`);
|
|
113
|
+
process.exit(ok ? 0 : 1);
|
|
@@ -71,7 +71,7 @@ const validShape = Array.isArray(patterns)
|
|
|
71
71
|
&& typeof p.name === 'string' && p.name.length > 0
|
|
72
72
|
&& Array.isArray(p.cadences) && p.cadences.length > 0 && p.cadences.every(c => typeof c === 'number' && c > 0)
|
|
73
73
|
&& Array.isArray(p.anchors) && p.anchors.length > 0 && p.anchors.every(a => typeof a === 'string' && a.length > 0)
|
|
74
|
-
&& typeof p.shape === 'string' && ['trio-with-envelope', 'parity', 'tiered-with-trio', 'tiered-with-quartet', 'tiered-with-quintet', 'coprime-nested-pair', 'baseline-pair'].includes(p.shape))
|
|
74
|
+
&& typeof p.shape === 'string' && ['trio-with-envelope', 'parity', 'tiered-with-trio', 'tiered-with-quartet', 'tiered-with-quintet', 'coprime-nested-pair', 'baseline-pair', '6s-triple-pair'].includes(p.shape))
|
|
75
75
|
: false;
|
|
76
76
|
|
|
77
77
|
const totalAnchorCount = Array.isArray(patterns)
|
|
@@ -86,16 +86,16 @@ const patternsCadences = Array.isArray(patterns)
|
|
|
86
86
|
const allPatternCadencesInRolodex = [...patternsCadences].every(c => rolodexCadences.has(c));
|
|
87
87
|
|
|
88
88
|
const patternNames = Array.isArray(patterns) ? patterns.map(p => p.name).sort() : [];
|
|
89
|
-
const expectedNames = ['background', 'canvas-brand-pair', 'chrome-strip', 'panel-pair', 'title-block'];
|
|
89
|
+
const expectedNames = ['background', 'canvas-brand-pair', 'chrome-strip', 'panel-pair', 'title-block', 'triple-axis-pair'];
|
|
90
90
|
|
|
91
91
|
const results = {
|
|
92
92
|
attr_present: !!runtimeAttrs.patterns,
|
|
93
93
|
json_parses: patterns !== null && parseError === null,
|
|
94
94
|
is_array: Array.isArray(patterns),
|
|
95
|
-
|
|
95
|
+
has_6_entries: Array.isArray(patterns) && patterns.length === 6,
|
|
96
96
|
pattern_names_match: JSON.stringify(patternNames) === JSON.stringify(expectedNames),
|
|
97
97
|
shape_and_taxonomy_valid: validShape,
|
|
98
|
-
total_anchors_count: totalAnchorCount >= 14 && totalAnchorCount <=
|
|
98
|
+
total_anchors_count: totalAnchorCount >= 14 && totalAnchorCount <= 20, // R724 +2 anchors (kicker + watermark text counted again under triple-axis-pair pattern)
|
|
99
99
|
all_cadences_in_rolodex: allPatternCadencesInRolodex,
|
|
100
100
|
};
|
|
101
101
|
const ok = Object.values(results).every(Boolean);
|
|
@@ -86,7 +86,17 @@ const validShape = Array.isArray(triple)
|
|
|
86
86
|
const anchors = Array.isArray(triple) ? triple.map(e => e.anchor).sort() : [];
|
|
87
87
|
const allOpacityFirst = Array.isArray(triple) ? triple.every(e => e.axes[0] === 'opacity') : false;
|
|
88
88
|
const allTextShadowThird = Array.isArray(triple) ? triple.every(e => e.axes[2] === 'text-shadow') : false;
|
|
89
|
-
|
|
89
|
+
/* R725 added H2 at 10 s as the 3rd triple-axis surface — the tier
|
|
90
|
+
* is now multi-cadence rather than 6 s-locked. The 6 s pair (kicker
|
|
91
|
+
* + watermark) SUBSET still exists; the all-6 s invariant is retired
|
|
92
|
+
* in favour of "every cadence ∈ rolodex" + "6 s pair intact". */
|
|
93
|
+
const cadencesInRolodex = Array.isArray(triple)
|
|
94
|
+
? triple.every(e => [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 21, 23, 25].includes(e.cadence_s))
|
|
95
|
+
: false;
|
|
96
|
+
const sixSecondAnchors = Array.isArray(triple)
|
|
97
|
+
? triple.filter(e => e.cadence_s === 6).map(e => e.anchor).sort()
|
|
98
|
+
: [];
|
|
99
|
+
const sixSecondPairIntact = JSON.stringify(sixSecondAnchors) === JSON.stringify(['kicker', 'watermark']);
|
|
90
100
|
|
|
91
101
|
const r716ByAnchor = new Map(Array.isArray(dualAxis)
|
|
92
102
|
? dualAxis.map(e => [e.anchor, e])
|
|
@@ -100,12 +110,13 @@ const results = {
|
|
|
100
110
|
attr_present: !!runtimeAttrs.triple,
|
|
101
111
|
json_parses: triple !== null && parseError === null,
|
|
102
112
|
is_array: Array.isArray(triple),
|
|
103
|
-
|
|
113
|
+
has_3_entries: Array.isArray(triple) && triple.length === 3,
|
|
104
114
|
shape_valid_three_axes: validShape,
|
|
105
|
-
anchors_match_expected: JSON.stringify(anchors) === JSON.stringify(['kicker', 'watermark']),
|
|
115
|
+
anchors_match_expected: JSON.stringify(anchors) === JSON.stringify(['H2', 'kicker', 'watermark']),
|
|
106
116
|
all_opacity_first: allOpacityFirst,
|
|
107
117
|
all_text_shadow_third: allTextShadowThird,
|
|
108
|
-
|
|
118
|
+
all_cadences_in_rolodex: cadencesInRolodex,
|
|
119
|
+
six_second_pair_intact: sixSecondPairIntact,
|
|
109
120
|
back_compat_subset_of_r716: backCompatStrict,
|
|
110
121
|
};
|
|
111
122
|
const ok = Object.values(results).every(Boolean);
|
|
@@ -96,10 +96,15 @@ const tripleAxisSurfaces = Array.isArray(catalog)
|
|
|
96
96
|
? catalog.filter(e => Array.isArray(e.axes) && e.axes.length === 3)
|
|
97
97
|
: [];
|
|
98
98
|
const tripleAxisAnchorsSorted = tripleAxisSurfaces.map(e => e.anchor).sort();
|
|
99
|
+
/* R725 added H2 as a 3rd triple-axis surface at 10 s — the "6 s pair"
|
|
100
|
+
* subset still exists (kicker + watermark @ 6 s), but the catalog
|
|
101
|
+
* has 3 total entries now. Widen the assertion to verify the 6 s
|
|
102
|
+
* pair SUBSET is intact rather than asserting it's the whole set. */
|
|
103
|
+
const sixSecondMembers = tripleAxisSurfaces.filter(e => e.cadence_s === 6);
|
|
104
|
+
const sixSecondAnchorsSorted = sixSecondMembers.map(e => e.anchor).sort();
|
|
99
105
|
const triple6sPair =
|
|
100
|
-
|
|
101
|
-
&& JSON.stringify(
|
|
102
|
-
&& tripleAxisSurfaces.every(e => e.cadence_s === 6);
|
|
106
|
+
sixSecondMembers.length === 2
|
|
107
|
+
&& JSON.stringify(sixSecondAnchorsSorted) === JSON.stringify(['kicker', 'watermark']);
|
|
103
108
|
|
|
104
109
|
const results = {
|
|
105
110
|
watermark_present: !!runtimeState,
|
|
File without changes
|
/package/.next/static/{FyN8BEKFX8B6CZ118lWgU → DwDrN4gYUg689hlv_u98L}/_clientMiddlewareManifest.js
RENAMED
|
File without changes
|
|
File without changes
|