@sleep2agi/agent-network-dashboard 0.4.6-preview.260 → 0.4.6-preview.262

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/diagnostics/route-bundle-stats.json +4 -4
  4. package/.next/fallback-build-manifest.json +3 -3
  5. package/.next/server/app/_global-error.html +1 -1
  6. package/.next/server/app/_global-error.rsc +1 -1
  7. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  12. package/.next/server/app/_not-found.html +1 -1
  13. package/.next/server/app/_not-found.rsc +1 -1
  14. package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  15. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  16. package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  17. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  18. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  19. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  20. package/.next/server/app/admin.html +1 -1
  21. package/.next/server/app/admin.rsc +1 -1
  22. package/.next/server/app/admin.segments/_full.segment.rsc +1 -1
  23. package/.next/server/app/admin.segments/_head.segment.rsc +1 -1
  24. package/.next/server/app/admin.segments/_index.segment.rsc +1 -1
  25. package/.next/server/app/admin.segments/_tree.segment.rsc +1 -1
  26. package/.next/server/app/admin.segments/admin/__PAGE__.segment.rsc +1 -1
  27. package/.next/server/app/admin.segments/admin.segment.rsc +1 -1
  28. package/.next/server/app/index.html +2 -2
  29. package/.next/server/app/index.rsc +2 -2
  30. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  31. package/.next/server/app/index.segments/_full.segment.rsc +2 -2
  32. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  33. package/.next/server/app/index.segments/_index.segment.rsc +1 -1
  34. package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  35. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  36. package/.next/server/app/login.html +2 -2
  37. package/.next/server/app/login.rsc +2 -2
  38. package/.next/server/app/login.segments/_full.segment.rsc +2 -2
  39. package/.next/server/app/login.segments/_head.segment.rsc +1 -1
  40. package/.next/server/app/login.segments/_index.segment.rsc +1 -1
  41. package/.next/server/app/login.segments/_tree.segment.rsc +1 -1
  42. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  43. package/.next/server/app/login.segments/login.segment.rsc +1 -1
  44. package/.next/server/app/logs.html +1 -1
  45. package/.next/server/app/logs.rsc +1 -1
  46. package/.next/server/app/logs.segments/_full.segment.rsc +1 -1
  47. package/.next/server/app/logs.segments/_head.segment.rsc +1 -1
  48. package/.next/server/app/logs.segments/_index.segment.rsc +1 -1
  49. package/.next/server/app/logs.segments/_tree.segment.rsc +1 -1
  50. package/.next/server/app/logs.segments/logs/__PAGE__.segment.rsc +1 -1
  51. package/.next/server/app/logs.segments/logs.segment.rsc +1 -1
  52. package/.next/server/app/messages.html +1 -1
  53. package/.next/server/app/messages.rsc +1 -1
  54. package/.next/server/app/messages.segments/_full.segment.rsc +1 -1
  55. package/.next/server/app/messages.segments/_head.segment.rsc +1 -1
  56. package/.next/server/app/messages.segments/_index.segment.rsc +1 -1
  57. package/.next/server/app/messages.segments/_tree.segment.rsc +1 -1
  58. package/.next/server/app/messages.segments/messages/__PAGE__.segment.rsc +1 -1
  59. package/.next/server/app/messages.segments/messages.segment.rsc +1 -1
  60. package/.next/server/app/node.html +1 -1
  61. package/.next/server/app/node.rsc +1 -1
  62. package/.next/server/app/node.segments/_full.segment.rsc +1 -1
  63. package/.next/server/app/node.segments/_head.segment.rsc +1 -1
  64. package/.next/server/app/node.segments/_index.segment.rsc +1 -1
  65. package/.next/server/app/node.segments/_tree.segment.rsc +1 -1
  66. package/.next/server/app/node.segments/node/__PAGE__.segment.rsc +1 -1
  67. package/.next/server/app/node.segments/node.segment.rsc +1 -1
  68. package/.next/server/app/nodes.html +1 -1
  69. package/.next/server/app/nodes.rsc +1 -1
  70. package/.next/server/app/nodes.segments/_full.segment.rsc +1 -1
  71. package/.next/server/app/nodes.segments/_head.segment.rsc +1 -1
  72. package/.next/server/app/nodes.segments/_index.segment.rsc +1 -1
  73. package/.next/server/app/nodes.segments/_tree.segment.rsc +1 -1
  74. package/.next/server/app/nodes.segments/nodes/__PAGE__.segment.rsc +1 -1
  75. package/.next/server/app/nodes.segments/nodes.segment.rsc +1 -1
  76. package/.next/server/app/page_client-reference-manifest.js +1 -1
  77. package/.next/server/app/server-logs.html +1 -1
  78. package/.next/server/app/server-logs.rsc +1 -1
  79. package/.next/server/app/server-logs.segments/_full.segment.rsc +1 -1
  80. package/.next/server/app/server-logs.segments/_head.segment.rsc +1 -1
  81. package/.next/server/app/server-logs.segments/_index.segment.rsc +1 -1
  82. package/.next/server/app/server-logs.segments/_tree.segment.rsc +1 -1
  83. package/.next/server/app/server-logs.segments/server-logs/__PAGE__.segment.rsc +1 -1
  84. package/.next/server/app/server-logs.segments/server-logs.segment.rsc +1 -1
  85. package/.next/server/app/settings/networks.html +1 -1
  86. package/.next/server/app/settings/networks.rsc +1 -1
  87. package/.next/server/app/settings/networks.segments/_full.segment.rsc +1 -1
  88. package/.next/server/app/settings/networks.segments/_head.segment.rsc +1 -1
  89. package/.next/server/app/settings/networks.segments/_index.segment.rsc +1 -1
  90. package/.next/server/app/settings/networks.segments/_tree.segment.rsc +1 -1
  91. package/.next/server/app/settings/networks.segments/settings/networks/__PAGE__.segment.rsc +1 -1
  92. package/.next/server/app/settings/networks.segments/settings/networks.segment.rsc +1 -1
  93. package/.next/server/app/settings/networks.segments/settings.segment.rsc +1 -1
  94. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  95. package/.next/server/app/settings/tokens.html +1 -1
  96. package/.next/server/app/settings/tokens.rsc +1 -1
  97. package/.next/server/app/settings/tokens.segments/_full.segment.rsc +1 -1
  98. package/.next/server/app/settings/tokens.segments/_head.segment.rsc +1 -1
  99. package/.next/server/app/settings/tokens.segments/_index.segment.rsc +1 -1
  100. package/.next/server/app/settings/tokens.segments/_tree.segment.rsc +1 -1
  101. package/.next/server/app/settings/tokens.segments/settings/tokens/__PAGE__.segment.rsc +1 -1
  102. package/.next/server/app/settings/tokens.segments/settings/tokens.segment.rsc +1 -1
  103. package/.next/server/app/settings/tokens.segments/settings.segment.rsc +1 -1
  104. package/.next/server/app/settings.html +2 -2
  105. package/.next/server/app/settings.rsc +2 -2
  106. package/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  107. package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  108. package/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  109. package/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  110. package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +2 -2
  111. package/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  112. package/.next/server/app/tasks.html +1 -1
  113. package/.next/server/app/tasks.rsc +1 -1
  114. package/.next/server/app/tasks.segments/_full.segment.rsc +1 -1
  115. package/.next/server/app/tasks.segments/_head.segment.rsc +1 -1
  116. package/.next/server/app/tasks.segments/_index.segment.rsc +1 -1
  117. package/.next/server/app/tasks.segments/_tree.segment.rsc +1 -1
  118. package/.next/server/app/tasks.segments/tasks/__PAGE__.segment.rsc +1 -1
  119. package/.next/server/app/tasks.segments/tasks.segment.rsc +1 -1
  120. package/.next/server/chunks/ssr/agent-network-dashboard_09kk21a._.js +2 -2
  121. package/.next/server/chunks/ssr/agent-network-dashboard_09kk21a._.js.map +1 -1
  122. package/.next/server/chunks/ssr/agent-network-dashboard_app_01jhlxz._.js +1 -1
  123. package/.next/server/chunks/ssr/agent-network-dashboard_app_01jhlxz._.js.map +1 -1
  124. package/.next/server/chunks/ssr/agent-network-dashboard_app_09d29my._.js +1 -1
  125. package/.next/server/chunks/ssr/agent-network-dashboard_app_09d29my._.js.map +1 -1
  126. package/.next/server/middleware-build-manifest.js +3 -3
  127. package/.next/server/pages/404.html +1 -1
  128. package/.next/server/pages/500.html +1 -1
  129. package/.next/static/chunks/{0z~871f8k94-k.js → 05_9zsjpgodz1.js} +1 -1
  130. package/.next/static/chunks/{10xp1hu~3vag0.js → 0ihzd85-9dets.js} +1 -1
  131. package/.next/static/chunks/{16r~_72__xeuq.js → 16w1xd17jz3ut.js} +2 -2
  132. package/.next/trace +2 -2
  133. package/.next/trace-build +1 -1
  134. package/app/components/TopoGraph.tsx +40 -4
  135. package/package.json +1 -1
  136. package/scripts/topo-chrome-strip-semantic-gap-test.mjs +99 -0
  137. package/scripts/topo-wrapper-flow-arrow-theme-test.mjs +97 -0
  138. /package/.next/static/{VxDKnA-iNnlo206AtBfI7 → 9Pp1UpZXtsktxWzFcb-HR}/_buildManifest.js +0 -0
  139. /package/.next/static/{VxDKnA-iNnlo206AtBfI7 → 9Pp1UpZXtsktxWzFcb-HR}/_clientMiddlewareManifest.js +0 -0
  140. /package/.next/static/{VxDKnA-iNnlo206AtBfI7 → 9Pp1UpZXtsktxWzFcb-HR}/_ssgManifest.js +0 -0
package/.next/trace CHANGED
@@ -1,2 +1,2 @@
1
- [{"name":"generate-buildid","duration":321,"timestamp":94103004843,"id":4,"parentId":1,"tags":{},"startTime":1778902075251,"traceId":"6cf81ee2a562c608"},{"name":"load-custom-routes","duration":479,"timestamp":94103005329,"id":5,"parentId":1,"tags":{},"startTime":1778902075252,"traceId":"6cf81ee2a562c608"},{"name":"create-dist-dir","duration":758,"timestamp":94103005849,"id":6,"parentId":1,"tags":{},"startTime":1778902075252,"traceId":"6cf81ee2a562c608"},{"name":"clean","duration":34481,"timestamp":94103007318,"id":7,"parentId":1,"tags":{},"startTime":1778902075254,"traceId":"6cf81ee2a562c608"},{"name":"discover-routes","duration":10698,"timestamp":94103126547,"id":8,"parentId":1,"tags":{},"startTime":1778902075373,"traceId":"6cf81ee2a562c608"},{"name":"create-root-mapping","duration":150,"timestamp":94103137304,"id":9,"parentId":1,"tags":{},"startTime":1778902075384,"traceId":"6cf81ee2a562c608"},{"name":"generate-route-types","duration":35539,"timestamp":94103140838,"id":10,"parentId":1,"tags":{},"startTime":1778902075387,"traceId":"6cf81ee2a562c608"},{"name":"public-dir-conflict-check","duration":106,"timestamp":94103176473,"id":11,"parentId":1,"tags":{},"startTime":1778902075423,"traceId":"6cf81ee2a562c608"},{"name":"generate-routes-manifest","duration":5436,"timestamp":94103176707,"id":12,"parentId":1,"tags":{},"startTime":1778902075423,"traceId":"6cf81ee2a562c608"},{"name":"run-turbopack","duration":5483583,"timestamp":94103187775,"id":14,"parentId":1,"tags":{},"startTime":1778902075434,"traceId":"6cf81ee2a562c608"},{"name":"turbopack-build-events","duration":105,"timestamp":94103470740,"id":15,"parentId":1,"tags":{},"startTime":1778902075717,"traceId":"6cf81ee2a562c608"},{"name":"run-typescript","duration":8851045,"timestamp":94108680903,"id":16,"parentId":1,"tags":{},"startTime":1778902080927,"traceId":"6cf81ee2a562c608"},{"name":"generate-required-server-files","duration":2365,"timestamp":94117533147,"id":18,"parentId":1,"tags":{},"startTime":1778902089779,"traceId":"6cf81ee2a562c608"},{"name":"check-static-error-page","duration":16064,"timestamp":94117713808,"id":20,"parentId":19,"tags":{},"startTime":1778902089960,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":430584,"timestamp":94117732073,"id":63,"parentId":22,"tags":{},"startTime":1778902089978,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":445702,"timestamp":94117717136,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1778902089963,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":475871,"timestamp":94117732324,"id":65,"parentId":26,"tags":{},"startTime":1778902089979,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":487758,"timestamp":94117720709,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1778902089967,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":515682,"timestamp":94117734902,"id":70,"parentId":32,"tags":{},"startTime":1778902089981,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":528757,"timestamp":94117721910,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1778902089968,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":524738,"timestamp":94117732198,"id":64,"parentId":25,"tags":{},"startTime":1778902089978,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":536529,"timestamp":94117720518,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1778902089967,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":528958,"timestamp":94117735115,"id":72,"parentId":34,"tags":{},"startTime":1778902089981,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":541695,"timestamp":94117722452,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1778902089969,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":531912,"timestamp":94117732443,"id":66,"parentId":27,"tags":{},"startTime":1778902089979,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":543514,"timestamp":94117720892,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1778902089967,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":531746,"timestamp":94117735015,"id":71,"parentId":33,"tags":{},"startTime":1778902089981,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":544710,"timestamp":94117722114,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1778902089968,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":537736,"timestamp":94117735321,"id":75,"parentId":37,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":549692,"timestamp":94117723426,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1778902089970,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":548733,"timestamp":94117735343,"id":76,"parentId":38,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":560547,"timestamp":94117723583,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1778902089970,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":551818,"timestamp":94117733072,"id":69,"parentId":30,"tags":{},"startTime":1778902089979,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":563508,"timestamp":94117721431,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1778902089968,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":551866,"timestamp":94117735283,"id":74,"parentId":36,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":563985,"timestamp":94117723211,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1778902089969,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":553450,"timestamp":94117735360,"id":77,"parentId":39,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":565135,"timestamp":94117723715,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1778902089970,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":562916,"timestamp":94117735407,"id":80,"parentId":42,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":574239,"timestamp":94117724128,"id":42,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1778902089970,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":565844,"timestamp":94117735390,"id":79,"parentId":41,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":577320,"timestamp":94117723962,"id":41,"parentId":19,"tags":{"page":"/api/hub/servers"},"startTime":1778902089970,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":571402,"timestamp":94117732893,"id":68,"parentId":29,"tags":{},"startTime":1778902089979,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":583105,"timestamp":94117721240,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1778902089968,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":572034,"timestamp":94117735424,"id":81,"parentId":43,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":583008,"timestamp":94117724499,"id":43,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1778902089971,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":576673,"timestamp":94117735156,"id":73,"parentId":35,"tags":{},"startTime":1778902089981,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":589268,"timestamp":94117722625,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1778902089969,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":576646,"timestamp":94117735436,"id":82,"parentId":44,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":587470,"timestamp":94117724650,"id":44,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1778902089971,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":576789,"timestamp":94117735453,"id":83,"parentId":45,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":587485,"timestamp":94117724787,"id":45,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1778902089971,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":585512,"timestamp":94117731737,"id":62,"parentId":21,"tags":{},"startTime":1778902089978,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":602525,"timestamp":94117715517,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1778902089962,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":585613,"timestamp":94117732719,"id":67,"parentId":28,"tags":{},"startTime":1778902089979,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":597294,"timestamp":94117721077,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1778902089967,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":585255,"timestamp":94117735468,"id":84,"parentId":46,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":595829,"timestamp":94117724941,"id":46,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1778902089971,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":594267,"timestamp":94117735480,"id":85,"parentId":47,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":604640,"timestamp":94117725154,"id":47,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1778902089971,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":594470,"timestamp":94117735495,"id":86,"parentId":48,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":604711,"timestamp":94117725315,"id":48,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1778902089972,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":599626,"timestamp":94117740677,"id":89,"parentId":31,"tags":{},"startTime":1778902089987,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":618764,"timestamp":94117721587,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1778902089968,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":605096,"timestamp":94117735373,"id":78,"parentId":40,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":616658,"timestamp":94117723838,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1778902089970,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":615715,"timestamp":94117735510,"id":87,"parentId":49,"tags":{},"startTime":1778902089982,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":624125,"timestamp":94117727158,"id":49,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1778902089973,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":648670,"timestamp":94117743186,"id":90,"parentId":23,"tags":{},"startTime":1778902089989,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":674487,"timestamp":94117717446,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1778902089964,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":654044,"timestamp":94117743236,"id":92,"parentId":51,"tags":{},"startTime":1778902089990,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":669515,"timestamp":94117727823,"id":51,"parentId":19,"tags":{"page":"/logs"},"startTime":1778902089974,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":656275,"timestamp":94117743293,"id":96,"parentId":56,"tags":{},"startTime":1778902089990,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":670733,"timestamp":94117728878,"id":56,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1778902089975,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":661461,"timestamp":94117743309,"id":97,"parentId":57,"tags":{},"startTime":1778902089990,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":675748,"timestamp":94117729064,"id":57,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1778902089975,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":663649,"timestamp":94117743324,"id":98,"parentId":59,"tags":{},"startTime":1778902089990,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":677543,"timestamp":94117729496,"id":59,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1778902089976,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":671173,"timestamp":94117743365,"id":100,"parentId":61,"tags":{},"startTime":1778902089990,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":684903,"timestamp":94117729697,"id":61,"parentId":19,"tags":{"page":"/tasks"},"startTime":1778902089976,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":677749,"timestamp":94117743343,"id":99,"parentId":60,"tags":{},"startTime":1778902089990,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":691560,"timestamp":94117729598,"id":60,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1778902089976,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":678045,"timestamp":94117743219,"id":91,"parentId":50,"tags":{},"startTime":1778902089989,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":693666,"timestamp":94117727641,"id":50,"parentId":19,"tags":{"page":"/login"},"startTime":1778902089974,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":681884,"timestamp":94117739516,"id":88,"parentId":24,"tags":{},"startTime":1778902089986,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":703709,"timestamp":94117717725,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1778902089964,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":678250,"timestamp":94117743263,"id":94,"parentId":53,"tags":{},"startTime":1778902089990,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":693385,"timestamp":94117728152,"id":53,"parentId":19,"tags":{"page":"/node"},"startTime":1778902089974,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":674771,"timestamp":94117748970,"id":101,"parentId":58,"tags":{},"startTime":1778902089995,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":694587,"timestamp":94117729202,"id":58,"parentId":19,"tags":{"page":"/settings"},"startTime":1778902089975,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":662960,"timestamp":94117764674,"id":102,"parentId":55,"tags":{},"startTime":1778902090011,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":699187,"timestamp":94117728479,"id":55,"parentId":19,"tags":{"page":"/"},"startTime":1778902089975,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":694203,"timestamp":94117743277,"id":95,"parentId":54,"tags":{},"startTime":1778902089990,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":709220,"timestamp":94117728308,"id":54,"parentId":19,"tags":{"page":"/nodes"},"startTime":1778902089975,"traceId":"6cf81ee2a562c608"},{"name":"is-page-static","duration":702579,"timestamp":94117743251,"id":93,"parentId":52,"tags":{},"startTime":1778902089990,"traceId":"6cf81ee2a562c608"},{"name":"check-page","duration":717917,"timestamp":94117727959,"id":52,"parentId":19,"tags":{"page":"/messages"},"startTime":1778902089974,"traceId":"6cf81ee2a562c608"},{"name":"static-check","duration":733299,"timestamp":94117712623,"id":19,"parentId":1,"tags":{},"startTime":1778902089959,"traceId":"6cf81ee2a562c608"},{"name":"write-routes-manifest","duration":634,"timestamp":94118457464,"id":104,"parentId":1,"tags":{},"startTime":1778902090704,"traceId":"6cf81ee2a562c608"},{"name":"load-dotenv","duration":54,"timestamp":94118472228,"id":107,"parentId":106,"tags":{},"startTime":1778902090719,"traceId":"6cf81ee2a562c608"},{"name":"run-export-path-map","duration":782,"timestamp":94118476092,"id":108,"parentId":106,"tags":{},"startTime":1778902090722,"traceId":"6cf81ee2a562c608"},{"name":"next-export","duration":591432,"timestamp":94118470622,"id":106,"parentId":1,"tags":{},"startTime":1778902090717,"traceId":"6cf81ee2a562c608"}]
2
- [{"name":"move-exported-app-not-found-","duration":2126,"timestamp":94119066721,"id":109,"parentId":105,"tags":{},"startTime":1778902091313,"traceId":"6cf81ee2a562c608"},{"name":"move-exported-app-global-error-","duration":566,"timestamp":94119068938,"id":110,"parentId":105,"tags":{},"startTime":1778902091315,"traceId":"6cf81ee2a562c608"},{"name":"static-generation","duration":607409,"timestamp":94118464305,"id":105,"parentId":1,"tags":{},"startTime":1778902090711,"traceId":"6cf81ee2a562c608"},{"name":"write-routes-manifest","duration":401,"timestamp":94119071945,"id":111,"parentId":1,"tags":{},"startTime":1778902091318,"traceId":"6cf81ee2a562c608"},{"name":"print-tree-view","duration":4512,"timestamp":94119089684,"id":112,"parentId":1,"tags":{},"startTime":1778902091336,"traceId":"6cf81ee2a562c608"},{"name":"write-route-bundle-stats","duration":11884,"timestamp":94119094229,"id":113,"parentId":1,"tags":{},"startTime":1778902091341,"traceId":"6cf81ee2a562c608"},{"name":"telemetry-flush","duration":19033,"timestamp":94119106138,"id":114,"parentId":1,"tags":{},"startTime":1778902091352,"traceId":"6cf81ee2a562c608"},{"name":"next-build","duration":16173804,"timestamp":94102951394,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778902075198,"traceId":"6cf81ee2a562c608"}]
1
+ [{"name":"generate-buildid","duration":296,"timestamp":95217429774,"id":4,"parentId":1,"tags":{},"startTime":1778903189676,"traceId":"6f8211d62336a2be"},{"name":"load-custom-routes","duration":533,"timestamp":95217430218,"id":5,"parentId":1,"tags":{},"startTime":1778903189676,"traceId":"6f8211d62336a2be"},{"name":"create-dist-dir","duration":733,"timestamp":95217430801,"id":6,"parentId":1,"tags":{},"startTime":1778903189677,"traceId":"6f8211d62336a2be"},{"name":"clean","duration":30569,"timestamp":95217432188,"id":7,"parentId":1,"tags":{},"startTime":1778903189678,"traceId":"6f8211d62336a2be"},{"name":"discover-routes","duration":9119,"timestamp":95217549928,"id":8,"parentId":1,"tags":{},"startTime":1778903189796,"traceId":"6f8211d62336a2be"},{"name":"create-root-mapping","duration":110,"timestamp":95217559108,"id":9,"parentId":1,"tags":{},"startTime":1778903189805,"traceId":"6f8211d62336a2be"},{"name":"generate-route-types","duration":44605,"timestamp":95217562194,"id":10,"parentId":1,"tags":{},"startTime":1778903189808,"traceId":"6f8211d62336a2be"},{"name":"public-dir-conflict-check","duration":181,"timestamp":95217606915,"id":11,"parentId":1,"tags":{},"startTime":1778903189853,"traceId":"6f8211d62336a2be"},{"name":"generate-routes-manifest","duration":6079,"timestamp":95217607287,"id":12,"parentId":1,"tags":{},"startTime":1778903189854,"traceId":"6f8211d62336a2be"},{"name":"run-turbopack","duration":6343611,"timestamp":95217621414,"id":14,"parentId":1,"tags":{},"startTime":1778903189868,"traceId":"6f8211d62336a2be"},{"name":"turbopack-build-events","duration":83,"timestamp":95217932414,"id":15,"parentId":1,"tags":{},"startTime":1778903190179,"traceId":"6f8211d62336a2be"},{"name":"run-typescript","duration":9188187,"timestamp":95223973640,"id":16,"parentId":1,"tags":{},"startTime":1778903196220,"traceId":"6f8211d62336a2be"},{"name":"generate-required-server-files","duration":2370,"timestamp":95233162904,"id":18,"parentId":1,"tags":{},"startTime":1778903205409,"traceId":"6f8211d62336a2be"},{"name":"check-static-error-page","duration":15252,"timestamp":95233345038,"id":20,"parentId":19,"tags":{},"startTime":1778903205591,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":478118,"timestamp":95233363091,"id":63,"parentId":22,"tags":{},"startTime":1778903205609,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":492989,"timestamp":95233348419,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1778903205595,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":533986,"timestamp":95233363676,"id":67,"parentId":28,"tags":{},"startTime":1778903205610,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":545696,"timestamp":95233352071,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1778903205598,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":573945,"timestamp":95233365643,"id":70,"parentId":32,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":586931,"timestamp":95233352745,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1778903205599,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":577207,"timestamp":95233362679,"id":62,"parentId":21,"tags":{},"startTime":1778903205609,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":593285,"timestamp":95233346645,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1778903205593,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":583442,"timestamp":95233363347,"id":65,"parentId":26,"tags":{},"startTime":1778903205610,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":595086,"timestamp":95233351779,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1778903205598,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":595317,"timestamp":95233363822,"id":68,"parentId":29,"tags":{},"startTime":1778903205610,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":607009,"timestamp":95233352196,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1778903205598,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":595955,"timestamp":95233363449,"id":66,"parentId":27,"tags":{},"startTime":1778903205610,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":607535,"timestamp":95233351904,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1778903205598,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":598374,"timestamp":95233365717,"id":71,"parentId":33,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":611277,"timestamp":95233352871,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1778903205599,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":598764,"timestamp":95233365931,"id":74,"parentId":36,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":611136,"timestamp":95233353604,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1778903205600,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":599149,"timestamp":95233365994,"id":76,"parentId":38,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":611258,"timestamp":95233353929,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1778903205600,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":603423,"timestamp":95233366037,"id":78,"parentId":40,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":615318,"timestamp":95233354184,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1778903205600,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":607509,"timestamp":95233366046,"id":79,"parentId":41,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":619320,"timestamp":95233354277,"id":41,"parentId":19,"tags":{"page":"/api/hub/servers"},"startTime":1778903205601,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":611670,"timestamp":95233366061,"id":80,"parentId":42,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":623386,"timestamp":95233354389,"id":42,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1778903205601,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":611955,"timestamp":95233365980,"id":75,"parentId":37,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":624197,"timestamp":95233353786,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1778903205600,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":615621,"timestamp":95233366074,"id":81,"parentId":43,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":627254,"timestamp":95233354486,"id":43,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1778903205601,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":617868,"timestamp":95233366087,"id":82,"parentId":44,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":629430,"timestamp":95233354588,"id":44,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1778903205601,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":621354,"timestamp":95233365822,"id":73,"parentId":35,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":634101,"timestamp":95233353132,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1778903205599,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":621287,"timestamp":95233366097,"id":83,"parentId":45,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":632722,"timestamp":95233354698,"id":45,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1778903205601,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":624973,"timestamp":95233366112,"id":84,"parentId":46,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":636330,"timestamp":95233354803,"id":46,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1778903205601,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":625940,"timestamp":95233366135,"id":86,"parentId":48,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":635588,"timestamp":95233356533,"id":48,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1778903205603,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":628850,"timestamp":95233369595,"id":88,"parentId":24,"tags":{},"startTime":1778903205616,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":649526,"timestamp":95233348963,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1778903205595,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":638639,"timestamp":95233365436,"id":69,"parentId":30,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":651785,"timestamp":95233352341,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1778903205599,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":633788,"timestamp":95233370736,"id":89,"parentId":31,"tags":{},"startTime":1778903205617,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":652111,"timestamp":95233352457,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1778903205599,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":638703,"timestamp":95233366022,"id":77,"parentId":39,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":650679,"timestamp":95233354076,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1778903205600,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":639786,"timestamp":95233365791,"id":72,"parentId":34,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":652620,"timestamp":95233352998,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1778903205599,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":640575,"timestamp":95233366125,"id":85,"parentId":47,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":651808,"timestamp":95233354933,"id":47,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1778903205601,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":641337,"timestamp":95233366147,"id":87,"parentId":49,"tags":{},"startTime":1778903205612,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":650891,"timestamp":95233356684,"id":49,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1778903205603,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":645369,"timestamp":95233363225,"id":64,"parentId":25,"tags":{},"startTime":1778903205609,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":657034,"timestamp":95233351601,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1778903205598,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":641604,"timestamp":95233373152,"id":93,"parentId":52,"tags":{},"startTime":1778903205619,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":657310,"timestamp":95233357492,"id":52,"parentId":19,"tags":{"page":"/messages"},"startTime":1778903205604,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":650302,"timestamp":95233373196,"id":97,"parentId":57,"tags":{},"startTime":1778903205619,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":664583,"timestamp":95233358968,"id":57,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1778903205605,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":657787,"timestamp":95233373209,"id":98,"parentId":59,"tags":{},"startTime":1778903205619,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":671345,"timestamp":95233359720,"id":59,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1778903205606,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":671820,"timestamp":95233373226,"id":99,"parentId":60,"tags":{},"startTime":1778903205619,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":685245,"timestamp":95233359874,"id":60,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1778903205606,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":679446,"timestamp":95233373242,"id":100,"parentId":61,"tags":{},"startTime":1778903205620,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":692718,"timestamp":95233360043,"id":61,"parentId":19,"tags":{"page":"/tasks"},"startTime":1778903205606,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":676820,"timestamp":95233383680,"id":101,"parentId":58,"tags":{},"startTime":1778903205630,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":701387,"timestamp":95233359172,"id":58,"parentId":19,"tags":{"page":"/settings"},"startTime":1778903205605,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":687924,"timestamp":95233373093,"id":90,"parentId":23,"tags":{},"startTime":1778903205619,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":712360,"timestamp":95233348708,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1778903205595,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":690944,"timestamp":95233373124,"id":91,"parentId":50,"tags":{},"startTime":1778903205619,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":706988,"timestamp":95233357130,"id":50,"parentId":19,"tags":{"page":"/login"},"startTime":1778903205603,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":660085,"timestamp":95233407730,"id":102,"parentId":55,"tags":{},"startTime":1778903205654,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":709691,"timestamp":95233358175,"id":55,"parentId":19,"tags":{"page":"/"},"startTime":1778903205604,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":694793,"timestamp":95233373161,"id":94,"parentId":53,"tags":{},"startTime":1778903205619,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":710287,"timestamp":95233357701,"id":53,"parentId":19,"tags":{"page":"/node"},"startTime":1778903205604,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":704340,"timestamp":95233373139,"id":92,"parentId":51,"tags":{},"startTime":1778903205619,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":720199,"timestamp":95233357327,"id":51,"parentId":19,"tags":{"page":"/logs"},"startTime":1778903205604,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":709312,"timestamp":95233373175,"id":95,"parentId":54,"tags":{},"startTime":1778903205619,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":724630,"timestamp":95233357909,"id":54,"parentId":19,"tags":{"page":"/nodes"},"startTime":1778903205604,"traceId":"6f8211d62336a2be"},{"name":"is-page-static","duration":718425,"timestamp":95233373187,"id":96,"parentId":56,"tags":{},"startTime":1778903205619,"traceId":"6f8211d62336a2be"},{"name":"check-page","duration":732896,"timestamp":95233358753,"id":56,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1778903205605,"traceId":"6f8211d62336a2be"},{"name":"static-check","duration":747838,"timestamp":95233343846,"id":19,"parentId":1,"tags":{},"startTime":1778903205590,"traceId":"6f8211d62336a2be"},{"name":"write-routes-manifest","duration":418,"timestamp":95234097780,"id":104,"parentId":1,"tags":{},"startTime":1778903206344,"traceId":"6f8211d62336a2be"},{"name":"load-dotenv","duration":73,"timestamp":95234108899,"id":107,"parentId":106,"tags":{},"startTime":1778903206355,"traceId":"6f8211d62336a2be"},{"name":"run-export-path-map","duration":559,"timestamp":95234112782,"id":108,"parentId":106,"tags":{},"startTime":1778903206359,"traceId":"6f8211d62336a2be"},{"name":"next-export","duration":551518,"timestamp":95234107506,"id":106,"parentId":1,"tags":{},"startTime":1778903206354,"traceId":"6f8211d62336a2be"}]
2
+ [{"name":"move-exported-app-not-found-","duration":3228,"timestamp":95234663916,"id":109,"parentId":105,"tags":{},"startTime":1778903206910,"traceId":"6f8211d62336a2be"},{"name":"move-exported-app-global-error-","duration":1286,"timestamp":95234667255,"id":110,"parentId":105,"tags":{},"startTime":1778903206914,"traceId":"6f8211d62336a2be"},{"name":"static-generation","duration":569737,"timestamp":95234101707,"id":105,"parentId":1,"tags":{},"startTime":1778903206348,"traceId":"6f8211d62336a2be"},{"name":"write-routes-manifest","duration":519,"timestamp":95234671671,"id":111,"parentId":1,"tags":{},"startTime":1778903206918,"traceId":"6f8211d62336a2be"},{"name":"print-tree-view","duration":5049,"timestamp":95234690907,"id":112,"parentId":1,"tags":{},"startTime":1778903206937,"traceId":"6f8211d62336a2be"},{"name":"write-route-bundle-stats","duration":15310,"timestamp":95234695999,"id":113,"parentId":1,"tags":{},"startTime":1778903206942,"traceId":"6f8211d62336a2be"},{"name":"telemetry-flush","duration":17719,"timestamp":95234711347,"id":114,"parentId":1,"tags":{},"startTime":1778903206958,"traceId":"6f8211d62336a2be"},{"name":"next-build","duration":17350357,"timestamp":95217378746,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778903189625,"traceId":"6f8211d62336a2be"}]
package/.next/trace-build CHANGED
@@ -1 +1 @@
1
- [{"name":"run-turbopack","duration":5483583,"timestamp":94103187775,"id":14,"parentId":1,"tags":{},"startTime":1778902075434,"traceId":"6cf81ee2a562c608"},{"name":"turbopack-build-events","duration":105,"timestamp":94103470740,"id":15,"parentId":1,"tags":{},"startTime":1778902075717,"traceId":"6cf81ee2a562c608"},{"name":"run-typescript","duration":8851045,"timestamp":94108680903,"id":16,"parentId":1,"tags":{},"startTime":1778902080927,"traceId":"6cf81ee2a562c608"},{"name":"static-check","duration":733299,"timestamp":94117712623,"id":19,"parentId":1,"tags":{},"startTime":1778902089959,"traceId":"6cf81ee2a562c608"},{"name":"static-generation","duration":607409,"timestamp":94118464305,"id":105,"parentId":1,"tags":{},"startTime":1778902090711,"traceId":"6cf81ee2a562c608"},{"name":"telemetry-flush","duration":19033,"timestamp":94119106138,"id":114,"parentId":1,"tags":{},"startTime":1778902091352,"traceId":"6cf81ee2a562c608"},{"name":"next-build","duration":16173804,"timestamp":94102951394,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778902075198,"traceId":"6cf81ee2a562c608"}]
1
+ [{"name":"run-turbopack","duration":6343611,"timestamp":95217621414,"id":14,"parentId":1,"tags":{},"startTime":1778903189868,"traceId":"6f8211d62336a2be"},{"name":"turbopack-build-events","duration":83,"timestamp":95217932414,"id":15,"parentId":1,"tags":{},"startTime":1778903190179,"traceId":"6f8211d62336a2be"},{"name":"run-typescript","duration":9188187,"timestamp":95223973640,"id":16,"parentId":1,"tags":{},"startTime":1778903196220,"traceId":"6f8211d62336a2be"},{"name":"static-check","duration":747838,"timestamp":95233343846,"id":19,"parentId":1,"tags":{},"startTime":1778903205590,"traceId":"6f8211d62336a2be"},{"name":"static-generation","duration":569737,"timestamp":95234101707,"id":105,"parentId":1,"tags":{},"startTime":1778903206348,"traceId":"6f8211d62336a2be"},{"name":"telemetry-flush","duration":17719,"timestamp":95234711347,"id":114,"parentId":1,"tags":{},"startTime":1778903206958,"traceId":"6f8211d62336a2be"},{"name":"next-build","duration":17350357,"timestamp":95217378746,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778903189625,"traceId":"6f8211d62336a2be"}]
@@ -2460,7 +2460,22 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
2460
2460
  <div
2461
2461
  ref={containerRef}
2462
2462
  className={`relative overflow-hidden rounded-lg border shadow-2xl ${isLight ? 'shadow-zinc-900/5' : 'shadow-cyan-950/30'} ${isFullscreen ? 'flex items-center justify-center' : ''}`}
2463
- style={{ background: pal.containerBg, borderColor: pal.containerBorder }}
2463
+ data-topo-wrapper
2464
+ /* Round 254 / Loop: top-level TopoGraph wrapper gains theme-
2465
+ toggle transition. This is the BIGGEST theme-driven surface
2466
+ on the dashboard by pixel area — pal.containerBg fills the
2467
+ entire visible canvas area (cyber #080814 ↔ light #ffffff),
2468
+ and pal.containerBorder rims it. Pre-R254 every inner
2469
+ element eased through theme but the outer wrapper hard-cut,
2470
+ visually anchoring the snap. R253 declared
2471
+ "no visible snap remains" prematurely — this wrapper was
2472
+ the largest holdout. 200ms ease-out matches the panel
2473
+ treatment (R247) so wrapper + panels ease as one unit. */
2474
+ style={{
2475
+ background: pal.containerBg,
2476
+ borderColor: pal.containerBorder,
2477
+ transition: 'background-color 200ms ease-out, border-color 200ms ease-out',
2478
+ }}
2464
2479
  >
2465
2480
  <div className={`absolute inset-x-0 top-0 h-px bg-gradient-to-r ${pal.topRailGradient}`} />
2466
2481
 
@@ -6318,7 +6333,10 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
6318
6333
  this moves from y=72 to y=80. Drop its pointerEvents so
6319
6334
  the offline legend row stays hoverable (R55). It's
6320
6335
  decoration, no need to receive events. */}
6321
- <path d="M140,80 Q164,56 196,80" fill="none" stroke={pal.flowEdge} strokeWidth="3" markerEnd="url(#topo-arrow)" style={{ pointerEvents: 'none' }} />
6336
+ {/* Round 254 / Loop: legend flow-arrow swatch stroke
6337
+ transition for theme toggle (cyber #67e8f9 ↔ light
6338
+ #10b981). Last theme-driven legend element snap. */}
6339
+ <path d="M140,80 Q164,56 196,80" fill="none" stroke={pal.flowEdge} strokeWidth="3" markerEnd="url(#topo-arrow)" data-legend-flow-arrow style={{ pointerEvents: 'none', transition: 'stroke 200ms ease-out' }} />
6322
6340
  </g>
6323
6341
  </svg>
6324
6342
 
@@ -6342,7 +6360,11 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
6342
6360
  return (
6343
6361
  <div
6344
6362
  className="absolute right-3 rounded-md border shadow-lg shadow-black/30 overflow-hidden anet-fade-in anet-topo-chip-focus"
6345
- style={{ bottom: 56, background: pal.legendBox.fill, borderColor: pal.containerBorder, cursor: 'crosshair', color: pal.legendAccent }}
6363
+ /* Round 254 / Loop: minimap container theme transitions —
6364
+ background-color, border-color, color (used for SVG
6365
+ currentColor inside) all ease at 200ms alongside the
6366
+ R254 wrapper + R247 panel treatments. */
6367
+ style={{ bottom: 56, background: pal.legendBox.fill, borderColor: pal.containerBorder, cursor: 'crosshair', color: pal.legendAccent, transition: 'background-color 200ms ease-out, border-color 200ms ease-out, color 200ms ease-out' }}
6346
6368
  // R157: minimap a11y completion. Pre-R157 the element had
6347
6369
  // role="img" + aria-label but no tabIndex / onKeyDown — it
6348
6370
  // was clickable for mouse users (recenter to where you
@@ -6473,6 +6495,7 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
6473
6495
  style={{ background: pal.legendBox.fill, borderColor: pal.containerBorder }}
6474
6496
  role="group"
6475
6497
  aria-label="Node size"
6498
+ data-topo-chrome-fleet-group-trailer
6476
6499
  >
6477
6500
  {([['S', 0.7], ['M', 0.84], ['L', 1]] as const).map(([lbl, v], idx) => {
6478
6501
  const popKey = `size-${lbl}` as 'size-S' | 'size-M' | 'size-L';
@@ -6518,9 +6541,22 @@ export function TopoGraph({ sessions, sseSessions, renameSignal }: TopoGraphProp
6518
6541
  );
6519
6542
  })}
6520
6543
  </div>
6544
+ {/* Round 255 / Loop: semantic gap between the fleet-control group
6545
+ (node size S/M/L) and the view-control group (zoom / reset /
6546
+ fullscreen). Pre-R255 the four groups sat at uniform gap-1.5
6547
+ (6px); the spatial signal read as "4 separate things" instead
6548
+ of "1 fleet control + 3 view controls". Doubling the gap before
6549
+ the first view-control (ml-1.5 = 6px stacks on top of the
6550
+ parent's gap-1.5 = 6px, total 12px) communicates the semantic
6551
+ boundary through proximity alone — classic "law of proximity"
6552
+ layout polish, no extra chrome, no new visual elements.
6553
+ data-topo-chrome-view-group-leader marks the boundary surface
6554
+ for the test probe; data-topo-chrome-fleet-group-trailer marks
6555
+ the nodeSize wrapper's right edge for the gap measurement. */}
6521
6556
  <div
6522
- className="flex items-center rounded-md border overflow-hidden"
6557
+ className="ml-1.5 flex items-center rounded-md border overflow-hidden"
6523
6558
  style={{ background: pal.legendBox.fill, borderColor: pal.containerBorder }}
6559
+ data-topo-chrome-view-group-leader
6524
6560
  >
6525
6561
  <button
6526
6562
  onClick={() => { popChrome('zoom-out'); zoomByDiscrete(1 / 1.2); }}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sleep2agi/agent-network-dashboard",
3
- "version": "0.4.6-preview.260",
3
+ "version": "0.4.6-preview.262",
4
4
  "description": "Agent Network Dashboard — Web UI for managing AI Agent networks",
5
5
  "scripts": {
6
6
  "dev": "next dev",
@@ -0,0 +1,99 @@
1
+ /* Round 255 verification: chrome-strip semantic gap.
2
+ *
3
+ * Pre-R255 the bottom-right chrome strip had all 4 groups at uniform
4
+ * gap-1.5 (6px):
5
+ * [ S | M | L ] 6px [ - | % | + ] 6px [ reset ] 6px [ fullscreen ]
6
+ *
7
+ * R255 doubles the gap before the first view-control group via ml-1.5
8
+ * on the zoom container — stacks on top of parent's gap-1.5 (6+6=12px):
9
+ * [ S | M | L ] 12px [ - | % | + ] 6px [ reset ] 6px [ fullscreen ]
10
+ * ↑
11
+ * semantic boundary: fleet | view
12
+ *
13
+ * Test scope:
14
+ * 1. Both data attrs resolve to elements.
15
+ * 2. Gap between fleet group's right edge and view group's left edge
16
+ * is ≥ 11px (allowing 1px sub-pixel rounding from 12px target).
17
+ * 3. Gap between adjacent view-control elements (zoom→reset, reset→
18
+ * fullscreen) stays at ~6px (the parent gap-1.5) — confirms the
19
+ * ml-1.5 didn't accidentally widen ALL gaps.
20
+ * 4. Vertical alignment preserved — both groups still share the same
21
+ * Y center (chrome strip didn't get visually broken).
22
+ */
23
+ import { chromium } from 'playwright';
24
+ import { readFileSync } from 'node:fs';
25
+
26
+ const TOKEN = JSON.parse(readFileSync('/home/vansin/.anet/config.json', 'utf8')).token;
27
+ const browser = await chromium.launch({ headless: true });
28
+ const ctx = await browser.newContext({ viewport: { width: 1500, height: 1500 } });
29
+ await ctx.addCookies([{ name: 'anet_dashboard_session', value: `v3:${TOKEN}`, domain: '127.0.0.1', path: '/' }]);
30
+ await ctx.addInitScript(() => {
31
+ try { localStorage.setItem('anet-theme', 'cyber'); sessionStorage.setItem('anet_v3_auth', '1'); } catch {}
32
+ });
33
+ const fresh = new Date(Date.now() - 60 * 1000).toISOString();
34
+ await ctx.route('**/api/hub/status*', async (route) => {
35
+ const r = await route.fetch();
36
+ const b = await r.json();
37
+ const nid = (b.sessions || [])[0]?.network_id || 'default';
38
+ const mk = (alias) => ({
39
+ alias, status: 'working', model: 'claude-opus-4', runtime: 'claude-code-cli',
40
+ network_id: nid, project_dir: null,
41
+ created_at: fresh, updated_at: fresh, last_seen_at: fresh,
42
+ });
43
+ await route.fulfill({ response: r, json: { ...b, sessions: [
44
+ mk('alpha'), mk('beta'), mk('gamma'), mk('delta'),
45
+ ] } });
46
+ });
47
+ await ctx.route('**/api/hub/messages*', (r2) => r2.fulfill({ json: { messages: [] } }));
48
+ await ctx.route('**/api/hub/tasks*', (r2) => r2.fulfill({ json: { tasks: [] } }));
49
+
50
+ const page = await ctx.newPage();
51
+ await page.goto('http://127.0.0.1:3000/', { waitUntil: 'domcontentloaded' });
52
+ await page.waitForFunction(() => document.querySelectorAll('g[data-node]').length === 4, { timeout: 30000 });
53
+ await page.waitForSelector('[data-topo-chrome-fleet-group-trailer]', { timeout: 10000 });
54
+ await page.waitForSelector('[data-topo-chrome-view-group-leader]', { timeout: 10000 });
55
+ await page.waitForTimeout(300);
56
+
57
+ const probe = await page.evaluate(() => {
58
+ const fleet = document.querySelector('[data-topo-chrome-fleet-group-trailer]');
59
+ const view = document.querySelector('[data-topo-chrome-view-group-leader]');
60
+ const reset = document.querySelector('[data-topo-chrome-reset]');
61
+ const fullscreen = document.querySelector('[data-topo-chrome-fullscreen]');
62
+ const r = (el) => el ? el.getBoundingClientRect() : null;
63
+ return {
64
+ fleet: r(fleet),
65
+ view: r(view),
66
+ reset: r(reset),
67
+ fullscreen: r(fullscreen),
68
+ };
69
+ });
70
+ await browser.close();
71
+
72
+ const gapFleetToView = probe.view && probe.fleet ? probe.view.left - probe.fleet.right : null;
73
+ const gapViewToReset = probe.reset && probe.view ? probe.reset.left - probe.view.right : null;
74
+ const gapResetToFull = probe.fullscreen && probe.reset ? probe.fullscreen.left - probe.reset.right : null;
75
+ const yAlignedFleetView = probe.fleet && probe.view ? Math.abs((probe.fleet.top + probe.fleet.height / 2)
76
+ - (probe.view.top + probe.view.height / 2)) : null;
77
+
78
+ const results = {
79
+ fleet_present: probe.fleet !== null,
80
+ view_present: probe.view !== null,
81
+ reset_present: probe.reset !== null,
82
+ fullscreen_present: probe.fullscreen !== null,
83
+
84
+ // Doubled gap fleet→view: target 12px, accept ≥11 for sub-pixel
85
+ fleet_to_view_gap_doubled: gapFleetToView != null && gapFleetToView >= 11,
86
+
87
+ // Adjacent view-control gaps stay at ~6px (the parent gap-1.5).
88
+ // Accept 5-9px window for sub-pixel + Tailwind v4 token drift.
89
+ view_to_reset_gap_unchanged: gapViewToReset != null && gapViewToReset >= 5 && gapViewToReset <= 9,
90
+ reset_to_full_gap_unchanged: gapResetToFull != null && gapResetToFull >= 5 && gapResetToFull <= 9,
91
+
92
+ // Vertical center alignment preserved (≤1px slop).
93
+ y_aligned_fleet_view: yAlignedFleetView != null && yAlignedFleetView <= 1,
94
+ };
95
+ const ok = Object.values(results).every(Boolean);
96
+ console.log(`${ok ? '✅' : '❌'} chrome strip semantic gap:`, JSON.stringify(results),
97
+ '\n gaps: fleet→view =', gapFleetToView, 'view→reset =', gapViewToReset, 'reset→full =', gapResetToFull,
98
+ '\n yAlignedΔ:', yAlignedFleetView);
99
+ process.exit(ok ? 0 : 1);
@@ -0,0 +1,97 @@
1
+ /* Round 254 verification: three remaining theme-toggle snaps closed:
2
+ *
3
+ * 1. Top-level TopoGraph wrapper <div> — biggest theme-driven
4
+ * surface (whole canvas bg + border). Probe via [data-topo-svg]
5
+ * ancestor chain; the wrapper has ref={containerRef} but no
6
+ * data attr, so we look up via a known descendant.
7
+ * 2. Legend flow-arrow swatch <path> — added data-legend-flow-arrow.
8
+ * 3. Minimap container (only mounts when view is zoomed/panned) —
9
+ * programmatically zoom in to render minimap, then probe.
10
+ *
11
+ * Test scope:
12
+ * - Container has background-color + border-color transition 200ms
13
+ * - Flow-arrow swatch has stroke 200ms in style.transition
14
+ * - Minimap container has background-color + border-color + color
15
+ * transition 200ms
16
+ */
17
+ import { chromium } from 'playwright';
18
+ import { readFileSync } from 'node:fs';
19
+
20
+ const TOKEN = JSON.parse(readFileSync('/home/vansin/.anet/config.json', 'utf8')).token;
21
+ const browser = await chromium.launch({ headless: true });
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
+ const fresh = new Date(Date.now() - 60 * 1000).toISOString();
28
+ await ctx.route('**/api/hub/status*', async (route) => {
29
+ const r = await route.fetch();
30
+ const b = await r.json();
31
+ const nid = (b.sessions || [])[0]?.network_id || 'default';
32
+ const mk = (alias) => ({
33
+ alias, status: 'working', model: 'claude-opus-4', runtime: 'claude-code-cli',
34
+ network_id: nid, project_dir: null,
35
+ created_at: fresh, updated_at: fresh, last_seen_at: fresh,
36
+ });
37
+ await route.fulfill({ response: r, json: { ...b, sessions: [
38
+ mk('alpha'), mk('beta'), mk('gamma'), mk('delta'),
39
+ ] } });
40
+ });
41
+ await ctx.route('**/api/hub/messages*', (r2) => r2.fulfill({ json: { messages: [] } }));
42
+ await ctx.route('**/api/hub/tasks*', (r2) => r2.fulfill({ json: { tasks: [] } }));
43
+
44
+ const page = await ctx.newPage();
45
+ await page.goto('http://127.0.0.1:3000/', { waitUntil: 'domcontentloaded' });
46
+ await page.waitForFunction(() => document.querySelectorAll('g[data-node]').length === 4, { timeout: 30000 });
47
+ await page.waitForSelector('[data-legend-flow-arrow]', { timeout: 10000 });
48
+ await page.waitForTimeout(300);
49
+
50
+ // Probe wrapper + flow arrow first
51
+ const baseline = await page.evaluate(() => {
52
+ const flowArrow = document.querySelector('[data-legend-flow-arrow]');
53
+ // Wrapper: the TopoGraph component's outer div sits as the
54
+ // grandparent of <svg> with the topo-panel rect inside. Use a
55
+ // robust climb from a known SVG element.
56
+ const wrapper = document.querySelector('[data-topo-wrapper]');
57
+ return {
58
+ wrapper: wrapper ? { transition: wrapper.style.transition } : null,
59
+ flowArrow: flowArrow ? { transition: flowArrow.style.transition } : null,
60
+ };
61
+ });
62
+
63
+ // Trigger minimap render — programmatically pan/zoom view via the
64
+ // reset button toggle or just dispatch a wheel event. Simpler:
65
+ // click the zoom-in button several times.
66
+ for (let i = 0; i < 3; i++) {
67
+ await page.locator('[data-topo-chrome-zoom-in]').click();
68
+ await page.waitForTimeout(120);
69
+ }
70
+ await page.waitForSelector('[data-topo-minimap]', { timeout: 5000 });
71
+ await page.waitForTimeout(300);
72
+ const minimap = await page.evaluate(() => {
73
+ const mm = document.querySelector('[data-topo-minimap]');
74
+ return mm ? { transition: mm.style.transition } : null;
75
+ });
76
+ await browser.close();
77
+
78
+ const has = (s, prop) => new RegExp(`${prop}\\s+(?:200ms|0\\.2s)`).test(s || '');
79
+
80
+ const results = {
81
+ wrapper_present: baseline.wrapper !== null,
82
+ wrapper_has_bg_color_200: has(baseline.wrapper?.transition, 'background-color'),
83
+ wrapper_has_border_color_200: has(baseline.wrapper?.transition, 'border-color'),
84
+
85
+ flow_arrow_present: baseline.flowArrow !== null,
86
+ flow_arrow_has_stroke_200: has(baseline.flowArrow?.transition, 'stroke'),
87
+
88
+ minimap_present: minimap !== null,
89
+ minimap_has_bg_color_200: has(minimap?.transition, 'background-color'),
90
+ minimap_has_border_color_200: has(minimap?.transition, 'border-color'),
91
+ minimap_has_color_200: has(minimap?.transition, '(?<!background-|border-)color'),
92
+ };
93
+ const ok = Object.values(results).every(Boolean);
94
+ console.log(`${ok ? '✅' : '❌'} wrapper + flow-arrow + minimap theme ease:`, JSON.stringify(results),
95
+ '\n baseline:', baseline,
96
+ '\n minimap:', minimap);
97
+ process.exit(ok ? 0 : 1);