agent-log-viewer 1.1.0 → 1.2.1

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 (640) hide show
  1. package/bin/cli.mjs +4 -0
  2. package/bin/server-runtime.test.ts +63 -12
  3. package/dist/mcp-server.mjs +14033 -7722
  4. package/dist/runtime-host.mjs +17096 -7307
  5. package/dist/standalone/.next/BUILD_ID +1 -1
  6. package/dist/standalone/.next/app-path-routes-manifest.json +24 -19
  7. package/dist/standalone/.next/build-manifest.json +3 -3
  8. package/dist/standalone/.next/prerender-manifest.json +4 -4
  9. package/dist/standalone/.next/react-loadable-manifest.json +1 -1
  10. package/dist/standalone/.next/required-server-files.json +1 -1
  11. package/dist/standalone/.next/routes-manifest.json +30 -0
  12. package/dist/standalone/.next/server/account-migration-controller-worker.js +1 -1
  13. package/dist/standalone/.next/server/app/_global-error/page.js +2 -2
  14. package/dist/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
  15. package/dist/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  16. package/dist/standalone/.next/server/app/_global-error.html +1 -1
  17. package/dist/standalone/.next/server/app/_global-error.rsc +1 -1
  18. package/dist/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  19. package/dist/standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  20. package/dist/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  21. package/dist/standalone/.next/server/app/_not-found/page.js +1 -1
  22. package/dist/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  23. package/dist/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  24. package/dist/standalone/.next/server/app/_not-found.html +1 -1
  25. package/dist/standalone/.next/server/app/_not-found.rsc +2 -2
  26. package/dist/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  27. package/dist/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  28. package/dist/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  29. package/dist/standalone/.next/server/app/api/access/route.js +1 -1
  30. package/dist/standalone/.next/server/app/api/access/route.js.nft.json +1 -1
  31. package/dist/standalone/.next/server/app/api/account-migrations/[intentId]/route.js +1 -1
  32. package/dist/standalone/.next/server/app/api/account-migrations/[intentId]/route.js.nft.json +1 -1
  33. package/dist/standalone/.next/server/app/api/account-project-bindings/route.js +1 -1
  34. package/dist/standalone/.next/server/app/api/account-project-bindings/route.js.nft.json +1 -1
  35. package/dist/standalone/.next/server/app/api/accounts/claude/[id]/status/route.js +1 -1
  36. package/dist/standalone/.next/server/app/api/accounts/claude/[id]/status/route.js.nft.json +1 -1
  37. package/dist/standalone/.next/server/app/api/accounts/claude/active/route.js +1 -1
  38. package/dist/standalone/.next/server/app/api/accounts/claude/active/route.js.nft.json +1 -1
  39. package/dist/standalone/.next/server/app/api/accounts/claude/limits/route.js +1 -1
  40. package/dist/standalone/.next/server/app/api/accounts/claude/limits/route.js.nft.json +1 -1
  41. package/dist/standalone/.next/server/app/api/accounts/claude/login/[operationId]/input/route.js +1 -1
  42. package/dist/standalone/.next/server/app/api/accounts/claude/login/[operationId]/input/route.js.nft.json +1 -1
  43. package/dist/standalone/.next/server/app/api/accounts/claude/login/[operationId]/route.js +1 -1
  44. package/dist/standalone/.next/server/app/api/accounts/claude/login/[operationId]/route.js.nft.json +1 -1
  45. package/dist/standalone/.next/server/app/api/accounts/claude/policy/route.js +1 -1
  46. package/dist/standalone/.next/server/app/api/accounts/claude/policy/route.js.nft.json +1 -1
  47. package/dist/standalone/.next/server/app/api/accounts/claude/route.js +1 -1
  48. package/dist/standalone/.next/server/app/api/accounts/claude/route.js.nft.json +1 -1
  49. package/dist/standalone/.next/server/app/api/accounts/claude/terminal/route.js +1 -1
  50. package/dist/standalone/.next/server/app/api/accounts/claude/terminal/route.js.nft.json +1 -1
  51. package/dist/standalone/.next/server/app/api/accounts/codex/active/route.js +1 -1
  52. package/dist/standalone/.next/server/app/api/accounts/codex/active/route.js.nft.json +1 -1
  53. package/dist/standalone/.next/server/app/api/accounts/codex/limits/route.js +1 -1
  54. package/dist/standalone/.next/server/app/api/accounts/codex/limits/route.js.nft.json +1 -1
  55. package/dist/standalone/.next/server/app/api/accounts/codex/policy/route.js +1 -1
  56. package/dist/standalone/.next/server/app/api/accounts/codex/policy/route.js.nft.json +1 -1
  57. package/dist/standalone/.next/server/app/api/accounts/codex/reset-credits/route.js +2 -2
  58. package/dist/standalone/.next/server/app/api/accounts/codex/reset-credits/route.js.nft.json +1 -1
  59. package/dist/standalone/.next/server/app/api/accounts/codex/route.js +1 -1
  60. package/dist/standalone/.next/server/app/api/accounts/codex/route.js.nft.json +1 -1
  61. package/dist/standalone/.next/server/app/api/accounts/codex/terminal/route.js +1 -1
  62. package/dist/standalone/.next/server/app/api/accounts/codex/terminal/route.js.nft.json +1 -1
  63. package/dist/standalone/.next/server/app/api/accounts/route.js +1 -1
  64. package/dist/standalone/.next/server/app/api/accounts/route.js.nft.json +1 -1
  65. package/dist/standalone/.next/server/app/api/agent/route.js +1 -1
  66. package/dist/standalone/.next/server/app/api/agent/route.js.nft.json +1 -1
  67. package/dist/standalone/.next/server/app/api/agent/snapshot/route.js +1 -1
  68. package/dist/standalone/.next/server/app/api/agent/snapshot/route.js.nft.json +1 -1
  69. package/dist/standalone/.next/server/app/api/answer/route.js +1 -2
  70. package/dist/standalone/.next/server/app/api/answer/route.js.nft.json +1 -1
  71. package/dist/standalone/.next/server/app/api/artifact/route.js +1 -1
  72. package/dist/standalone/.next/server/app/api/artifact/route.js.nft.json +1 -1
  73. package/dist/standalone/.next/server/app/api/attach-command/route.js +1 -1
  74. package/dist/standalone/.next/server/app/api/attach-command/route.js.nft.json +1 -1
  75. package/dist/standalone/.next/server/app/api/attention/[id]/route.js +1 -1
  76. package/dist/standalone/.next/server/app/api/attention/[id]/route.js.nft.json +1 -1
  77. package/dist/standalone/.next/server/app/api/attention/route.js +1 -1
  78. package/dist/standalone/.next/server/app/api/attention/route.js.nft.json +1 -1
  79. package/dist/standalone/.next/server/app/api/board/route.js +1 -1
  80. package/dist/standalone/.next/server/app/api/board/route.js.nft.json +1 -1
  81. package/dist/standalone/.next/server/app/api/bridge/route.js +1 -2
  82. package/dist/standalone/.next/server/app/api/bridge/route.js.nft.json +1 -1
  83. package/dist/standalone/.next/server/app/api/conversation-host/route.js +1 -1
  84. package/dist/standalone/.next/server/app/api/conversation-host/route.js.nft.json +1 -1
  85. package/dist/standalone/.next/server/app/api/conversation-host/targets/route.js +1 -1
  86. package/dist/standalone/.next/server/app/api/conversation-host/targets/route.js.nft.json +1 -1
  87. package/dist/standalone/.next/server/app/api/conversations/[conversationId]/migration/route.js +1 -1
  88. package/dist/standalone/.next/server/app/api/conversations/[conversationId]/migration/route.js.nft.json +1 -1
  89. package/dist/standalone/.next/server/app/api/conversations/route.js +1 -1
  90. package/dist/standalone/.next/server/app/api/conversations/route.js.nft.json +1 -1
  91. package/dist/standalone/.next/server/app/api/files/route.js +3 -2
  92. package/dist/standalone/.next/server/app/api/files/route.js.nft.json +1 -1
  93. package/dist/standalone/.next/server/app/api/flows/[id]/route.js +1 -1
  94. package/dist/standalone/.next/server/app/api/flows/[id]/route.js.nft.json +1 -1
  95. package/dist/standalone/.next/server/app/api/flows/route.js +1 -1
  96. package/dist/standalone/.next/server/app/api/flows/route.js.nft.json +1 -1
  97. package/dist/standalone/.next/server/app/api/image/route.js +1 -1
  98. package/dist/standalone/.next/server/app/api/image/route.js.nft.json +1 -1
  99. package/dist/standalone/.next/server/app/api/inbox/route.js +2 -2
  100. package/dist/standalone/.next/server/app/api/inbox/route.js.nft.json +1 -1
  101. package/dist/standalone/.next/server/app/api/lifecycle/reaper/route.js +1 -1
  102. package/dist/standalone/.next/server/app/api/lifecycle/reaper/route.js.nft.json +1 -1
  103. package/dist/standalone/.next/server/app/api/limits/history/route.js +1 -1
  104. package/dist/standalone/.next/server/app/api/limits/history/route.js.nft.json +1 -1
  105. package/dist/standalone/.next/server/app/api/limits/route.js +1 -1
  106. package/dist/standalone/.next/server/app/api/limits/route.js.nft.json +1 -1
  107. package/dist/standalone/.next/server/app/api/log/preflight/route.js +1 -1
  108. package/dist/standalone/.next/server/app/api/log/preflight/route.js.nft.json +1 -1
  109. package/dist/standalone/.next/server/app/api/log/project-delete/route.js +1 -1
  110. package/dist/standalone/.next/server/app/api/log/project-delete/route.js.nft.json +1 -1
  111. package/dist/standalone/.next/server/app/api/log/provenance/route.js +107 -1
  112. package/dist/standalone/.next/server/app/api/log/provenance/route.js.nft.json +1 -1
  113. package/dist/standalone/.next/server/app/api/log/route.js +1 -1
  114. package/dist/standalone/.next/server/app/api/log/route.js.nft.json +1 -1
  115. package/dist/standalone/.next/server/app/api/log/suggestions/route.js +2 -4
  116. package/dist/standalone/.next/server/app/api/log/suggestions/route.js.nft.json +1 -1
  117. package/dist/standalone/.next/server/app/api/logs/route.js +1 -1
  118. package/dist/standalone/.next/server/app/api/logs/route.js.nft.json +1 -1
  119. package/dist/standalone/.next/server/app/api/logs/stream/route.js +2 -2
  120. package/dist/standalone/.next/server/app/api/logs/stream/route.js.nft.json +1 -1
  121. package/dist/standalone/.next/server/app/api/monitor/runs/route.js +3 -3
  122. package/dist/standalone/.next/server/app/api/monitor/runs/route.js.nft.json +1 -1
  123. package/dist/standalone/.next/server/app/api/monitor/seat-tick/route.js +23 -0
  124. package/dist/standalone/.next/server/app/api/monitor/seat-tick/route.js.nft.json +1 -0
  125. package/dist/standalone/.next/server/app/api/monitor/seat-tick/route_client-reference-manifest.js +1 -0
  126. package/dist/standalone/.next/server/app/api/monitor/seat-tick/settings/route.js +2 -0
  127. package/dist/standalone/.next/server/app/api/monitor/seat-tick/settings/route.js.nft.json +1 -0
  128. package/dist/standalone/.next/server/app/api/monitor/seat-tick/settings/route_client-reference-manifest.js +1 -0
  129. package/dist/standalone/.next/server/app/api/orchestrator/rotate/route.js +1 -1
  130. package/dist/standalone/.next/server/app/api/orchestrator/rotate/route.js.nft.json +1 -1
  131. package/dist/standalone/.next/server/app/api/orchestrator/seat/route.js +1 -1
  132. package/dist/standalone/.next/server/app/api/orchestrator/seat/route.js.nft.json +1 -1
  133. package/dist/standalone/.next/server/app/api/orchestrator/seat/status/route.js +1 -3
  134. package/dist/standalone/.next/server/app/api/orchestrator/seat/status/route.js.nft.json +1 -1
  135. package/dist/standalone/.next/server/app/api/pipelines/[id]/route.js +1 -1
  136. package/dist/standalone/.next/server/app/api/pipelines/[id]/route.js.nft.json +1 -1
  137. package/dist/standalone/.next/server/app/api/pipelines/preflight/route.js +1 -1
  138. package/dist/standalone/.next/server/app/api/pipelines/preflight/route.js.nft.json +1 -1
  139. package/dist/standalone/.next/server/app/api/pipelines/route.js +1 -2
  140. package/dist/standalone/.next/server/app/api/pipelines/route.js.nft.json +1 -1
  141. package/dist/standalone/.next/server/app/api/pipelines/tick/route.js +2 -2
  142. package/dist/standalone/.next/server/app/api/pipelines/tick/route.js.nft.json +1 -1
  143. package/dist/standalone/.next/server/app/api/proc/route.js +1 -1
  144. package/dist/standalone/.next/server/app/api/proc/route.js.nft.json +1 -1
  145. package/dist/standalone/.next/server/app/api/projects/create/route.js +2 -2
  146. package/dist/standalone/.next/server/app/api/projects/create/route.js.nft.json +1 -1
  147. package/dist/standalone/.next/server/app/api/projects/crown/route.js +1 -1
  148. package/dist/standalone/.next/server/app/api/projects/crown/route.js.nft.json +1 -1
  149. package/dist/standalone/.next/server/app/api/projects/directories/route.js +1 -1
  150. package/dist/standalone/.next/server/app/api/projects/directories/route.js.nft.json +1 -1
  151. package/dist/standalone/.next/server/app/api/push/route.js +2 -2
  152. package/dist/standalone/.next/server/app/api/push/route.js.nft.json +1 -1
  153. package/dist/standalone/.next/server/app/api/resources/route.js +1 -1
  154. package/dist/standalone/.next/server/app/api/resources/route.js.nft.json +1 -1
  155. package/dist/standalone/.next/server/app/api/roles/route.js +2 -2
  156. package/dist/standalone/.next/server/app/api/roles/route.js.nft.json +1 -1
  157. package/dist/standalone/.next/server/app/api/runtime/answer/route.js +1 -1
  158. package/dist/standalone/.next/server/app/api/runtime/answer/route.js.nft.json +1 -1
  159. package/dist/standalone/.next/server/app/api/runtime/deployments/[deploymentId]/route.js +1 -1
  160. package/dist/standalone/.next/server/app/api/runtime/deployments/[deploymentId]/route.js.nft.json +1 -1
  161. package/dist/standalone/.next/server/app/api/runtime/deployments/capabilities/v1/route.js +1 -1
  162. package/dist/standalone/.next/server/app/api/runtime/deployments/capabilities/v1/route.js.nft.json +1 -1
  163. package/dist/standalone/.next/server/app/api/runtime/deployments/route.js +1 -1
  164. package/dist/standalone/.next/server/app/api/runtime/deployments/route.js.nft.json +1 -1
  165. package/dist/standalone/.next/server/app/api/runtime/hosts/route.js +1 -1
  166. package/dist/standalone/.next/server/app/api/runtime/hosts/route.js.nft.json +1 -1
  167. package/dist/standalone/.next/server/app/api/runtime/inject/route.js +1 -0
  168. package/dist/standalone/.next/server/app/api/runtime/inject/route.js.nft.json +1 -0
  169. package/dist/standalone/.next/server/app/api/runtime/inject/route_client-reference-manifest.js +1 -0
  170. package/dist/standalone/.next/server/app/api/runtime/interrupt/route.js +1 -1
  171. package/dist/standalone/.next/server/app/api/runtime/interrupt/route.js.nft.json +1 -1
  172. package/dist/standalone/.next/server/app/api/runtime/operations/[operationId]/route.js +1 -1
  173. package/dist/standalone/.next/server/app/api/runtime/operations/[operationId]/route.js.nft.json +1 -1
  174. package/dist/standalone/.next/server/app/api/runtime/operations/route.js +1 -1
  175. package/dist/standalone/.next/server/app/api/runtime/operations/route.js.nft.json +1 -1
  176. package/dist/standalone/.next/server/app/api/runtime/queue/route.js +1 -0
  177. package/dist/standalone/.next/server/app/api/runtime/queue/route.js.nft.json +1 -0
  178. package/dist/standalone/.next/server/app/api/runtime/queue/route_client-reference-manifest.js +1 -0
  179. package/dist/standalone/.next/server/app/api/runtime/realtime/route.js +1 -2
  180. package/dist/standalone/.next/server/app/api/runtime/realtime/route.js.nft.json +1 -1
  181. package/dist/standalone/.next/server/app/api/runtime/send/route.js +1 -1
  182. package/dist/standalone/.next/server/app/api/runtime/send/route.js.nft.json +1 -1
  183. package/dist/standalone/.next/server/app/api/runtime/snapshot/route.js +1 -1
  184. package/dist/standalone/.next/server/app/api/runtime/snapshot/route.js.nft.json +1 -1
  185. package/dist/standalone/.next/server/app/api/runtime/spawn/route.js +1 -1
  186. package/dist/standalone/.next/server/app/api/runtime/spawn/route.js.nft.json +1 -1
  187. package/dist/standalone/.next/server/app/api/runtime/steer/route.js +1 -1
  188. package/dist/standalone/.next/server/app/api/runtime/steer/route.js.nft.json +1 -1
  189. package/dist/standalone/.next/server/app/api/runtime/stream/route.js +2 -2
  190. package/dist/standalone/.next/server/app/api/runtime/stream/route.js.nft.json +1 -1
  191. package/dist/standalone/.next/server/app/api/search/transcripts/route.js +2 -2
  192. package/dist/standalone/.next/server/app/api/search/transcripts/route.js.nft.json +1 -1
  193. package/dist/standalone/.next/server/app/api/session/route.js +1 -1
  194. package/dist/standalone/.next/server/app/api/session/route.js.nft.json +1 -1
  195. package/dist/standalone/.next/server/app/api/session/supersedence/route.js +1 -1
  196. package/dist/standalone/.next/server/app/api/session/supersedence/route.js.nft.json +1 -1
  197. package/dist/standalone/.next/server/app/api/session/title/route.js +1 -1
  198. package/dist/standalone/.next/server/app/api/session/title/route.js.nft.json +1 -1
  199. package/dist/standalone/.next/server/app/api/spawn/policy/route.js +3 -3
  200. package/dist/standalone/.next/server/app/api/spawn/policy/route.js.nft.json +1 -1
  201. package/dist/standalone/.next/server/app/api/spawn/route.js +1 -2
  202. package/dist/standalone/.next/server/app/api/spawn/route.js.nft.json +1 -1
  203. package/dist/standalone/.next/server/app/api/spawn/validate/route.js +1 -0
  204. package/dist/standalone/.next/server/app/api/spawn/validate/route.js.nft.json +1 -0
  205. package/dist/standalone/.next/server/app/api/spawn/validate/route_client-reference-manifest.js +1 -0
  206. package/dist/standalone/.next/server/app/api/staging/route.js +2 -2
  207. package/dist/standalone/.next/server/app/api/staging/route.js.nft.json +1 -1
  208. package/dist/standalone/.next/server/app/api/task-attachments/route.js +2 -2
  209. package/dist/standalone/.next/server/app/api/task-attachments/route.js.nft.json +1 -1
  210. package/dist/standalone/.next/server/app/api/tasks/[id]/assignment/route.js +1 -1
  211. package/dist/standalone/.next/server/app/api/tasks/[id]/assignment/route.js.nft.json +1 -1
  212. package/dist/standalone/.next/server/app/api/tasks/[id]/route.js +1 -1
  213. package/dist/standalone/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  214. package/dist/standalone/.next/server/app/api/tasks/[id]/send/route.js +1 -2
  215. package/dist/standalone/.next/server/app/api/tasks/[id]/send/route.js.nft.json +1 -1
  216. package/dist/standalone/.next/server/app/api/tasks/[id]/spawn/route.js +1 -2
  217. package/dist/standalone/.next/server/app/api/tasks/[id]/spawn/route.js.nft.json +1 -1
  218. package/dist/standalone/.next/server/app/api/tasks/curator/route.js +1 -1
  219. package/dist/standalone/.next/server/app/api/tasks/curator/route.js.nft.json +1 -1
  220. package/dist/standalone/.next/server/app/api/tasks/route.js +1 -1
  221. package/dist/standalone/.next/server/app/api/tasks/route.js.nft.json +1 -1
  222. package/dist/standalone/.next/server/app/api/telegram/reports/route.js +1 -1
  223. package/dist/standalone/.next/server/app/api/telegram/reports/route.js.nft.json +1 -1
  224. package/dist/standalone/.next/server/app/api/telegram/route.js +1 -1
  225. package/dist/standalone/.next/server/app/api/telegram/route.js.nft.json +1 -1
  226. package/dist/standalone/.next/server/app/api/timeline/route.js +1 -1
  227. package/dist/standalone/.next/server/app/api/timeline/route.js.nft.json +1 -1
  228. package/dist/standalone/.next/server/app/api/tmux/route.js +1 -1
  229. package/dist/standalone/.next/server/app/api/tmux/route.js.nft.json +1 -1
  230. package/dist/standalone/.next/server/app/api/tmux/targets/route.js +1 -1
  231. package/dist/standalone/.next/server/app/api/tmux/targets/route.js.nft.json +1 -1
  232. package/dist/standalone/.next/server/app/api/transcribe/backend/route.js +2 -2
  233. package/dist/standalone/.next/server/app/api/transcribe/backend/route.js.nft.json +1 -1
  234. package/dist/standalone/.next/server/app/api/transcribe/route.js +2 -2
  235. package/dist/standalone/.next/server/app/api/transcribe/route.js.nft.json +1 -1
  236. package/dist/standalone/.next/server/app/api/transcribe/token/route.js +2 -2
  237. package/dist/standalone/.next/server/app/api/transcribe/token/route.js.nft.json +1 -1
  238. package/dist/standalone/.next/server/app/api/tts/backend/route.js +1 -1
  239. package/dist/standalone/.next/server/app/api/tts/backend/route.js.nft.json +1 -1
  240. package/dist/standalone/.next/server/app/api/tts/route.js +3 -3
  241. package/dist/standalone/.next/server/app/api/tts/route.js.nft.json +1 -1
  242. package/dist/standalone/.next/server/app/api/view/presence/route.js +1 -1
  243. package/dist/standalone/.next/server/app/api/view/presence/route.js.nft.json +1 -1
  244. package/dist/standalone/.next/server/app/api/workflows/[id]/route.js +1 -1
  245. package/dist/standalone/.next/server/app/api/workflows/[id]/route.js.nft.json +1 -1
  246. package/dist/standalone/.next/server/app/api/workflows/route.js +1 -1
  247. package/dist/standalone/.next/server/app/api/workflows/route.js.nft.json +1 -1
  248. package/dist/standalone/.next/server/app/favicon.ico/route.js +1 -1
  249. package/dist/standalone/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  250. package/dist/standalone/.next/server/app/index.html +1 -1
  251. package/dist/standalone/.next/server/app/index.rsc +3 -3
  252. package/dist/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
  253. package/dist/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
  254. package/dist/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  255. package/dist/standalone/.next/server/app/page.js +59 -30
  256. package/dist/standalone/.next/server/app/page.js.nft.json +1 -1
  257. package/dist/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  258. package/dist/standalone/.next/server/app-paths-manifest.json +24 -19
  259. package/dist/standalone/.next/server/chunks/107.js +1 -1
  260. package/dist/standalone/.next/server/chunks/1100.js +29 -10
  261. package/dist/standalone/.next/server/chunks/1406.js +399 -0
  262. package/dist/standalone/.next/server/chunks/1585.js +108 -0
  263. package/dist/standalone/.next/server/chunks/160.js +4 -4
  264. package/dist/standalone/.next/server/chunks/1617.js +2 -2
  265. package/dist/standalone/.next/server/chunks/1849.js +1 -0
  266. package/dist/standalone/.next/server/chunks/1888.js +1 -1
  267. package/dist/standalone/.next/server/chunks/193.js +1 -0
  268. package/dist/standalone/.next/server/chunks/1952.js +1 -0
  269. package/dist/standalone/.next/server/chunks/2150.js +1 -1
  270. package/dist/standalone/.next/server/chunks/2549.js +1 -1
  271. package/dist/standalone/.next/server/chunks/2555.js +1 -0
  272. package/dist/standalone/.next/server/chunks/2647.js +1 -1
  273. package/dist/standalone/.next/server/chunks/2744.js +3 -0
  274. package/dist/standalone/.next/server/chunks/2857.js +1 -0
  275. package/dist/standalone/.next/server/chunks/286.js +22 -0
  276. package/dist/standalone/.next/server/chunks/2914.js +24 -0
  277. package/dist/standalone/.next/server/chunks/3034.js +1 -0
  278. package/dist/standalone/.next/server/chunks/3086.js +1 -1
  279. package/dist/standalone/.next/server/chunks/3131.js +1 -0
  280. package/dist/standalone/.next/server/chunks/3214.js +1 -1
  281. package/dist/standalone/.next/server/chunks/3302.js +1 -2
  282. package/dist/standalone/.next/server/chunks/3407.js +1 -0
  283. package/dist/standalone/.next/server/chunks/3422.js +1 -0
  284. package/dist/standalone/.next/server/chunks/3558.js +1 -0
  285. package/dist/standalone/.next/server/chunks/3570.js +81 -0
  286. package/dist/standalone/.next/server/chunks/3587.js +1 -1
  287. package/dist/standalone/.next/server/chunks/3743.js +76 -24
  288. package/dist/standalone/.next/server/chunks/3830.js +1 -1
  289. package/dist/standalone/.next/server/chunks/3896.js +1 -0
  290. package/dist/standalone/.next/server/chunks/4037.js +1 -0
  291. package/dist/standalone/.next/server/chunks/4127.js +1 -1
  292. package/dist/standalone/.next/server/chunks/4509.js +1 -1
  293. package/dist/standalone/.next/server/chunks/4637.js +62 -0
  294. package/dist/standalone/.next/server/chunks/4651.js +1 -1
  295. package/dist/standalone/.next/server/chunks/4783.js +1 -0
  296. package/dist/standalone/.next/server/chunks/4972.js +3 -3
  297. package/dist/standalone/.next/server/chunks/{4756.js → 4995.js} +3 -5
  298. package/dist/standalone/.next/server/chunks/5408.js +1 -1
  299. package/dist/standalone/.next/server/chunks/5480.js +1 -1
  300. package/dist/standalone/.next/server/chunks/5545.js +1 -1
  301. package/dist/standalone/.next/server/chunks/568.js +1 -2
  302. package/dist/standalone/.next/server/chunks/5682.js +1 -0
  303. package/dist/standalone/.next/server/chunks/5771.js +1 -0
  304. package/dist/standalone/.next/server/chunks/5847.js +1 -0
  305. package/dist/standalone/.next/server/chunks/6023.js +1 -0
  306. package/dist/standalone/.next/server/chunks/606.js +126 -0
  307. package/dist/standalone/.next/server/chunks/6277.js +81 -0
  308. package/dist/standalone/.next/server/chunks/6289.js +2 -0
  309. package/dist/standalone/.next/server/chunks/644.js +81 -0
  310. package/dist/standalone/.next/server/chunks/6453.js +1 -0
  311. package/dist/standalone/.next/server/chunks/6522.js +1 -0
  312. package/dist/standalone/.next/server/chunks/6665.js +1 -1
  313. package/dist/standalone/.next/server/chunks/6809.js +3 -0
  314. package/dist/standalone/.next/server/chunks/6826.js +1 -1
  315. package/dist/standalone/.next/server/chunks/6926.js +1 -1
  316. package/dist/standalone/.next/server/chunks/{1920.js → 6942.js} +1 -1
  317. package/dist/standalone/.next/server/chunks/6978.js +1 -0
  318. package/dist/standalone/.next/server/chunks/7008.js +114 -9
  319. package/dist/standalone/.next/server/chunks/7192.js +1 -0
  320. package/dist/standalone/.next/server/chunks/7238.js +2 -0
  321. package/dist/standalone/.next/server/chunks/7644.js +3 -3
  322. package/dist/standalone/.next/server/chunks/7722.js +1 -1
  323. package/dist/standalone/.next/server/chunks/781.js +55 -0
  324. package/dist/standalone/.next/server/chunks/7826.js +62 -0
  325. package/dist/standalone/.next/server/chunks/8027.js +11 -1
  326. package/dist/standalone/.next/server/chunks/8444.js +1 -1
  327. package/dist/standalone/.next/server/chunks/8465.js +2 -2
  328. package/dist/standalone/.next/server/chunks/8512.js +1 -0
  329. package/dist/standalone/.next/server/chunks/8513.js +2 -0
  330. package/dist/standalone/.next/server/chunks/8617.js +1 -1
  331. package/dist/standalone/.next/server/chunks/8817.js +1 -1
  332. package/dist/standalone/.next/server/chunks/8966.js +2 -2
  333. package/dist/standalone/.next/server/chunks/8991.js +1 -1
  334. package/dist/standalone/.next/server/chunks/8996.js +1 -1
  335. package/dist/standalone/.next/server/chunks/9296.js +104 -0
  336. package/dist/standalone/.next/server/chunks/{7139.js → 9298.js} +2 -2
  337. package/dist/standalone/.next/server/chunks/9307.js +1 -1
  338. package/dist/standalone/.next/server/chunks/9360.js +199 -0
  339. package/dist/standalone/.next/server/chunks/9403.js +1 -1
  340. package/dist/standalone/.next/server/chunks/9517.js +1 -1
  341. package/dist/standalone/.next/server/chunks/9554.js +47 -0
  342. package/dist/standalone/.next/server/chunks/9676.js +1 -62
  343. package/dist/standalone/.next/server/chunks/9822.js +11 -1
  344. package/dist/standalone/.next/server/chunks/9901.js +1 -62
  345. package/dist/standalone/.next/server/chunks/9940.js +3 -3
  346. package/dist/standalone/.next/server/chunks/9998.js +1 -1
  347. package/dist/standalone/.next/server/file-scanner-worker.js +3 -3
  348. package/dist/standalone/.next/server/files-response-worker.js +6 -6
  349. package/dist/standalone/.next/server/functions-config-manifest.json +5 -0
  350. package/dist/standalone/.next/server/instrumentation.js +1 -1
  351. package/dist/standalone/.next/server/middleware-build-manifest.js +1 -1
  352. package/dist/standalone/.next/server/middleware-react-loadable-manifest.js +1 -1
  353. package/dist/standalone/.next/server/middleware.js +4 -4
  354. package/dist/standalone/.next/server/pages/404.html +1 -1
  355. package/dist/standalone/.next/server/pages/500.html +1 -1
  356. package/dist/standalone/.next/server/resource-collector-worker.js +1 -1
  357. package/dist/standalone/.next/server/server-reference-manifest.json +1 -1
  358. package/dist/standalone/.next/server/wakatime-sync-worker.js +2 -2
  359. package/dist/standalone/.next/static/836HTp-5V8cZC5YWFVOCk/_buildManifest.js +1 -0
  360. package/dist/standalone/.next/static/chunks/{3794-d1854fdd0e41dc44.js → 3794-0ef35fddac53cd9a.js} +1 -1
  361. package/dist/standalone/.next/static/chunks/7333-cf17cea2a91e7b4b.js +1 -0
  362. package/dist/standalone/.next/static/chunks/app/_global-error/page-60a25d1c4cbf0128.js +1 -0
  363. package/dist/standalone/.next/static/chunks/app/api/access/route-60a25d1c4cbf0128.js +1 -0
  364. package/dist/standalone/.next/static/chunks/app/api/account-migrations/[intentId]/route-60a25d1c4cbf0128.js +1 -0
  365. package/dist/standalone/.next/static/chunks/app/api/account-project-bindings/route-60a25d1c4cbf0128.js +1 -0
  366. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/[id]/status/route-60a25d1c4cbf0128.js +1 -0
  367. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/active/route-60a25d1c4cbf0128.js +1 -0
  368. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/limits/route-60a25d1c4cbf0128.js +1 -0
  369. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/login/[operationId]/input/route-60a25d1c4cbf0128.js +1 -0
  370. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/login/[operationId]/route-60a25d1c4cbf0128.js +1 -0
  371. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/policy/route-60a25d1c4cbf0128.js +1 -0
  372. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/route-60a25d1c4cbf0128.js +1 -0
  373. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/terminal/route-60a25d1c4cbf0128.js +1 -0
  374. package/dist/standalone/.next/static/chunks/app/api/accounts/codex/active/route-60a25d1c4cbf0128.js +1 -0
  375. package/dist/standalone/.next/static/chunks/app/api/accounts/codex/limits/route-60a25d1c4cbf0128.js +1 -0
  376. package/dist/standalone/.next/static/chunks/app/api/accounts/codex/policy/route-60a25d1c4cbf0128.js +1 -0
  377. package/dist/standalone/.next/static/chunks/app/api/accounts/codex/reset-credits/route-60a25d1c4cbf0128.js +1 -0
  378. package/dist/standalone/.next/static/chunks/app/api/accounts/codex/route-60a25d1c4cbf0128.js +1 -0
  379. package/dist/standalone/.next/static/chunks/app/api/accounts/codex/terminal/route-60a25d1c4cbf0128.js +1 -0
  380. package/dist/standalone/.next/static/chunks/app/api/accounts/route-60a25d1c4cbf0128.js +1 -0
  381. package/dist/standalone/.next/static/chunks/app/api/agent/route-60a25d1c4cbf0128.js +1 -0
  382. package/dist/standalone/.next/static/chunks/app/api/agent/snapshot/route-60a25d1c4cbf0128.js +1 -0
  383. package/dist/standalone/.next/static/chunks/app/api/answer/route-60a25d1c4cbf0128.js +1 -0
  384. package/dist/standalone/.next/static/chunks/app/api/artifact/route-60a25d1c4cbf0128.js +1 -0
  385. package/dist/standalone/.next/static/chunks/app/api/attach-command/route-60a25d1c4cbf0128.js +1 -0
  386. package/dist/standalone/.next/static/chunks/app/api/attention/[id]/route-60a25d1c4cbf0128.js +1 -0
  387. package/dist/standalone/.next/static/chunks/app/api/attention/route-60a25d1c4cbf0128.js +1 -0
  388. package/dist/standalone/.next/static/chunks/app/api/board/route-60a25d1c4cbf0128.js +1 -0
  389. package/dist/standalone/.next/static/chunks/app/api/bridge/route-60a25d1c4cbf0128.js +1 -0
  390. package/dist/standalone/.next/static/chunks/app/api/conversation-host/route-60a25d1c4cbf0128.js +1 -0
  391. package/dist/standalone/.next/static/chunks/app/api/conversation-host/targets/route-60a25d1c4cbf0128.js +1 -0
  392. package/dist/standalone/.next/static/chunks/app/api/conversations/[conversationId]/migration/route-60a25d1c4cbf0128.js +1 -0
  393. package/dist/standalone/.next/static/chunks/app/api/conversations/route-60a25d1c4cbf0128.js +1 -0
  394. package/dist/standalone/.next/static/chunks/app/api/files/route-60a25d1c4cbf0128.js +1 -0
  395. package/dist/standalone/.next/static/chunks/app/api/flows/[id]/route-60a25d1c4cbf0128.js +1 -0
  396. package/dist/standalone/.next/static/chunks/app/api/flows/route-60a25d1c4cbf0128.js +1 -0
  397. package/dist/standalone/.next/static/chunks/app/api/image/route-60a25d1c4cbf0128.js +1 -0
  398. package/dist/standalone/.next/static/chunks/app/api/inbox/route-60a25d1c4cbf0128.js +1 -0
  399. package/dist/standalone/.next/static/chunks/app/api/lifecycle/reaper/route-60a25d1c4cbf0128.js +1 -0
  400. package/dist/standalone/.next/static/chunks/app/api/limits/history/route-60a25d1c4cbf0128.js +1 -0
  401. package/dist/standalone/.next/static/chunks/app/api/limits/route-60a25d1c4cbf0128.js +1 -0
  402. package/dist/standalone/.next/static/chunks/app/api/log/preflight/route-60a25d1c4cbf0128.js +1 -0
  403. package/dist/standalone/.next/static/chunks/app/api/log/project-delete/route-60a25d1c4cbf0128.js +1 -0
  404. package/dist/standalone/.next/static/chunks/app/api/log/provenance/route-60a25d1c4cbf0128.js +1 -0
  405. package/dist/standalone/.next/static/chunks/app/api/log/route-60a25d1c4cbf0128.js +1 -0
  406. package/dist/standalone/.next/static/chunks/app/api/log/suggestions/route-60a25d1c4cbf0128.js +1 -0
  407. package/dist/standalone/.next/static/chunks/app/api/logs/route-60a25d1c4cbf0128.js +1 -0
  408. package/dist/standalone/.next/static/chunks/app/api/logs/stream/route-60a25d1c4cbf0128.js +1 -0
  409. package/dist/standalone/.next/static/chunks/app/api/monitor/runs/route-60a25d1c4cbf0128.js +1 -0
  410. package/dist/standalone/.next/static/chunks/app/api/monitor/seat-tick/route-60a25d1c4cbf0128.js +1 -0
  411. package/dist/standalone/.next/static/chunks/app/api/monitor/seat-tick/settings/route-60a25d1c4cbf0128.js +1 -0
  412. package/dist/standalone/.next/static/chunks/app/api/orchestrator/rotate/route-60a25d1c4cbf0128.js +1 -0
  413. package/dist/standalone/.next/static/chunks/app/api/orchestrator/seat/route-60a25d1c4cbf0128.js +1 -0
  414. package/dist/standalone/.next/static/chunks/app/api/orchestrator/seat/status/route-60a25d1c4cbf0128.js +1 -0
  415. package/dist/standalone/.next/static/chunks/app/api/pipelines/[id]/route-60a25d1c4cbf0128.js +1 -0
  416. package/dist/standalone/.next/static/chunks/app/api/pipelines/preflight/route-60a25d1c4cbf0128.js +1 -0
  417. package/dist/standalone/.next/static/chunks/app/api/pipelines/route-60a25d1c4cbf0128.js +1 -0
  418. package/dist/standalone/.next/static/chunks/app/api/pipelines/tick/route-60a25d1c4cbf0128.js +1 -0
  419. package/dist/standalone/.next/static/chunks/app/api/proc/route-60a25d1c4cbf0128.js +1 -0
  420. package/dist/standalone/.next/static/chunks/app/api/projects/create/route-60a25d1c4cbf0128.js +1 -0
  421. package/dist/standalone/.next/static/chunks/app/api/projects/crown/route-60a25d1c4cbf0128.js +1 -0
  422. package/dist/standalone/.next/static/chunks/app/api/projects/directories/route-60a25d1c4cbf0128.js +1 -0
  423. package/dist/standalone/.next/static/chunks/app/api/push/route-60a25d1c4cbf0128.js +1 -0
  424. package/dist/standalone/.next/static/chunks/app/api/resources/route-60a25d1c4cbf0128.js +1 -0
  425. package/dist/standalone/.next/static/chunks/app/api/roles/route-60a25d1c4cbf0128.js +1 -0
  426. package/dist/standalone/.next/static/chunks/app/api/runtime/answer/route-60a25d1c4cbf0128.js +1 -0
  427. package/dist/standalone/.next/static/chunks/app/api/runtime/deployments/[deploymentId]/route-60a25d1c4cbf0128.js +1 -0
  428. package/dist/standalone/.next/static/chunks/app/api/runtime/deployments/capabilities/v1/route-60a25d1c4cbf0128.js +1 -0
  429. package/dist/standalone/.next/static/chunks/app/api/runtime/deployments/route-60a25d1c4cbf0128.js +1 -0
  430. package/dist/standalone/.next/static/chunks/app/api/runtime/hosts/route-60a25d1c4cbf0128.js +1 -0
  431. package/dist/standalone/.next/static/chunks/app/api/runtime/inject/route-60a25d1c4cbf0128.js +1 -0
  432. package/dist/standalone/.next/static/chunks/app/api/runtime/interrupt/route-60a25d1c4cbf0128.js +1 -0
  433. package/dist/standalone/.next/static/chunks/app/api/runtime/operations/[operationId]/route-60a25d1c4cbf0128.js +1 -0
  434. package/dist/standalone/.next/static/chunks/app/api/runtime/operations/route-60a25d1c4cbf0128.js +1 -0
  435. package/dist/standalone/.next/static/chunks/app/api/runtime/queue/route-60a25d1c4cbf0128.js +1 -0
  436. package/dist/standalone/.next/static/chunks/app/api/runtime/realtime/route-60a25d1c4cbf0128.js +1 -0
  437. package/dist/standalone/.next/static/chunks/app/api/runtime/send/route-60a25d1c4cbf0128.js +1 -0
  438. package/dist/standalone/.next/static/chunks/app/api/runtime/snapshot/route-60a25d1c4cbf0128.js +1 -0
  439. package/dist/standalone/.next/static/chunks/app/api/runtime/spawn/route-60a25d1c4cbf0128.js +1 -0
  440. package/dist/standalone/.next/static/chunks/app/api/runtime/steer/route-60a25d1c4cbf0128.js +1 -0
  441. package/dist/standalone/.next/static/chunks/app/api/runtime/stream/route-60a25d1c4cbf0128.js +1 -0
  442. package/dist/standalone/.next/static/chunks/app/api/search/transcripts/route-60a25d1c4cbf0128.js +1 -0
  443. package/dist/standalone/.next/static/chunks/app/api/session/route-60a25d1c4cbf0128.js +1 -0
  444. package/dist/standalone/.next/static/chunks/app/api/session/supersedence/route-60a25d1c4cbf0128.js +1 -0
  445. package/dist/standalone/.next/static/chunks/app/api/session/title/route-60a25d1c4cbf0128.js +1 -0
  446. package/dist/standalone/.next/static/chunks/app/api/spawn/policy/route-60a25d1c4cbf0128.js +1 -0
  447. package/dist/standalone/.next/static/chunks/app/api/spawn/route-60a25d1c4cbf0128.js +1 -0
  448. package/dist/standalone/.next/static/chunks/app/api/spawn/validate/route-60a25d1c4cbf0128.js +1 -0
  449. package/dist/standalone/.next/static/chunks/app/api/staging/route-60a25d1c4cbf0128.js +1 -0
  450. package/dist/standalone/.next/static/chunks/app/api/task-attachments/route-60a25d1c4cbf0128.js +1 -0
  451. package/dist/standalone/.next/static/chunks/app/api/tasks/[id]/assignment/route-60a25d1c4cbf0128.js +1 -0
  452. package/dist/standalone/.next/static/chunks/app/api/tasks/[id]/route-60a25d1c4cbf0128.js +1 -0
  453. package/dist/standalone/.next/static/chunks/app/api/tasks/[id]/send/route-60a25d1c4cbf0128.js +1 -0
  454. package/dist/standalone/.next/static/chunks/app/api/tasks/[id]/spawn/route-60a25d1c4cbf0128.js +1 -0
  455. package/dist/standalone/.next/static/chunks/app/api/tasks/curator/route-60a25d1c4cbf0128.js +1 -0
  456. package/dist/standalone/.next/static/chunks/app/api/tasks/route-60a25d1c4cbf0128.js +1 -0
  457. package/dist/standalone/.next/static/chunks/app/api/telegram/reports/route-60a25d1c4cbf0128.js +1 -0
  458. package/dist/standalone/.next/static/chunks/app/api/telegram/route-60a25d1c4cbf0128.js +1 -0
  459. package/dist/standalone/.next/static/chunks/app/api/timeline/route-60a25d1c4cbf0128.js +1 -0
  460. package/dist/standalone/.next/static/chunks/app/api/tmux/route-60a25d1c4cbf0128.js +1 -0
  461. package/dist/standalone/.next/static/chunks/app/api/tmux/targets/route-60a25d1c4cbf0128.js +1 -0
  462. package/dist/standalone/.next/static/chunks/app/api/transcribe/backend/route-60a25d1c4cbf0128.js +1 -0
  463. package/dist/standalone/.next/static/chunks/app/api/transcribe/route-60a25d1c4cbf0128.js +1 -0
  464. package/dist/standalone/.next/static/chunks/app/api/transcribe/token/route-60a25d1c4cbf0128.js +1 -0
  465. package/dist/standalone/.next/static/chunks/app/api/tts/backend/route-60a25d1c4cbf0128.js +1 -0
  466. package/dist/standalone/.next/static/chunks/app/api/tts/route-60a25d1c4cbf0128.js +1 -0
  467. package/dist/standalone/.next/static/chunks/app/api/view/presence/route-60a25d1c4cbf0128.js +1 -0
  468. package/dist/standalone/.next/static/chunks/app/api/workflows/[id]/route-60a25d1c4cbf0128.js +1 -0
  469. package/dist/standalone/.next/static/chunks/app/api/workflows/route-60a25d1c4cbf0128.js +1 -0
  470. package/dist/standalone/.next/static/chunks/app/page-1cde2db61f461960.js +125 -0
  471. package/dist/standalone/.next/static/chunks/{main-8691b7dc3557ef3f.js → main-7e65147ff5ce0866.js} +1 -1
  472. package/dist/standalone/.next/static/chunks/next/dist/client/components/builtin/app-error-60a25d1c4cbf0128.js +1 -0
  473. package/dist/standalone/.next/static/chunks/next/dist/client/components/builtin/forbidden-60a25d1c4cbf0128.js +1 -0
  474. package/dist/standalone/.next/static/chunks/next/dist/client/components/builtin/not-found-60a25d1c4cbf0128.js +1 -0
  475. package/dist/standalone/.next/static/chunks/next/dist/client/components/builtin/unauthorized-60a25d1c4cbf0128.js +1 -0
  476. package/dist/standalone/.next/static/css/b25c03e915fd256b.css +1 -0
  477. package/dist/standalone/AGENTS.md +30 -0
  478. package/dist/standalone/node_modules/@next/env/package.json +1 -1
  479. package/dist/standalone/node_modules/next/dist/build/swc/index.js +1 -1
  480. package/dist/standalone/node_modules/next/dist/build/webpack-config.js +3 -3
  481. package/dist/standalone/node_modules/next/dist/compiled/next-server/app-page-experimental.runtime.prod.js +1 -1
  482. package/dist/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +1 -1
  483. package/dist/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +1 -1
  484. package/dist/standalone/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js +1 -1
  485. package/dist/standalone/node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js +1 -1
  486. package/dist/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +5 -5
  487. package/dist/standalone/node_modules/next/dist/compiled/next-server/pages.runtime.prod.js +5 -5
  488. package/dist/standalone/node_modules/next/dist/lib/patch-incorrect-lockfile.js +3 -3
  489. package/dist/standalone/node_modules/next/dist/server/config.js +1 -1
  490. package/dist/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +2 -2
  491. package/dist/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
  492. package/dist/standalone/node_modules/next/dist/server/image-optimizer.js +2 -2
  493. package/dist/standalone/node_modules/next/dist/server/lib/app-info-log.js +1 -1
  494. package/dist/standalone/node_modules/next/dist/server/lib/incremental-cache/file-system-cache.js +17 -4
  495. package/dist/standalone/node_modules/next/dist/server/lib/start-server.js +1 -1
  496. package/dist/standalone/node_modules/next/dist/shared/lib/router/utils/escape-path-delimiters.js +1 -1
  497. package/dist/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
  498. package/dist/standalone/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
  499. package/dist/standalone/node_modules/next/dist/telemetry/events/version.js +2 -2
  500. package/dist/standalone/node_modules/next/package.json +10 -10
  501. package/dist/standalone/package.json +5 -5
  502. package/dist/standalone/server.bun.js +1 -1
  503. package/dist/standalone/src/lib/viewerInstrumentation.ts +824 -0
  504. package/package.json +5 -5
  505. package/dist/standalone/.next/server/chunks/112.js +0 -1
  506. package/dist/standalone/.next/server/chunks/2190.js +0 -1
  507. package/dist/standalone/.next/server/chunks/2318.js +0 -2
  508. package/dist/standalone/.next/server/chunks/2371.js +0 -1
  509. package/dist/standalone/.next/server/chunks/2500.js +0 -55
  510. package/dist/standalone/.next/server/chunks/2799.js +0 -1
  511. package/dist/standalone/.next/server/chunks/2870.js +0 -104
  512. package/dist/standalone/.next/server/chunks/3598.js +0 -81
  513. package/dist/standalone/.next/server/chunks/3740.js +0 -126
  514. package/dist/standalone/.next/server/chunks/3953.js +0 -1
  515. package/dist/standalone/.next/server/chunks/411.js +0 -1
  516. package/dist/standalone/.next/server/chunks/4191.js +0 -1
  517. package/dist/standalone/.next/server/chunks/461.js +0 -1
  518. package/dist/standalone/.next/server/chunks/4968.js +0 -2
  519. package/dist/standalone/.next/server/chunks/6333.js +0 -47
  520. package/dist/standalone/.next/server/chunks/6839.js +0 -81
  521. package/dist/standalone/.next/server/chunks/7045.js +0 -319
  522. package/dist/standalone/.next/server/chunks/7159.js +0 -1
  523. package/dist/standalone/.next/server/chunks/8176.js +0 -1
  524. package/dist/standalone/.next/server/chunks/8263.js +0 -81
  525. package/dist/standalone/.next/server/chunks/8392.js +0 -126
  526. package/dist/standalone/.next/server/chunks/9120.js +0 -78
  527. package/dist/standalone/.next/server/chunks/9507.js +0 -1
  528. package/dist/standalone/.next/static/6jhPk8sOUI3wRf_j1l5vY/_buildManifest.js +0 -1
  529. package/dist/standalone/.next/static/chunks/3021-9ced2d55bf2cbf77.js +0 -1
  530. package/dist/standalone/.next/static/chunks/app/_global-error/page-3e358516d279299e.js +0 -1
  531. package/dist/standalone/.next/static/chunks/app/api/access/route-3e358516d279299e.js +0 -1
  532. package/dist/standalone/.next/static/chunks/app/api/account-migrations/[intentId]/route-3e358516d279299e.js +0 -1
  533. package/dist/standalone/.next/static/chunks/app/api/account-project-bindings/route-3e358516d279299e.js +0 -1
  534. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/[id]/status/route-3e358516d279299e.js +0 -1
  535. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/active/route-3e358516d279299e.js +0 -1
  536. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/limits/route-3e358516d279299e.js +0 -1
  537. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/login/[operationId]/input/route-3e358516d279299e.js +0 -1
  538. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/login/[operationId]/route-3e358516d279299e.js +0 -1
  539. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/policy/route-3e358516d279299e.js +0 -1
  540. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/route-3e358516d279299e.js +0 -1
  541. package/dist/standalone/.next/static/chunks/app/api/accounts/claude/terminal/route-3e358516d279299e.js +0 -1
  542. package/dist/standalone/.next/static/chunks/app/api/accounts/codex/active/route-3e358516d279299e.js +0 -1
  543. package/dist/standalone/.next/static/chunks/app/api/accounts/codex/limits/route-3e358516d279299e.js +0 -1
  544. package/dist/standalone/.next/static/chunks/app/api/accounts/codex/policy/route-3e358516d279299e.js +0 -1
  545. package/dist/standalone/.next/static/chunks/app/api/accounts/codex/reset-credits/route-3e358516d279299e.js +0 -1
  546. package/dist/standalone/.next/static/chunks/app/api/accounts/codex/route-3e358516d279299e.js +0 -1
  547. package/dist/standalone/.next/static/chunks/app/api/accounts/codex/terminal/route-3e358516d279299e.js +0 -1
  548. package/dist/standalone/.next/static/chunks/app/api/accounts/route-3e358516d279299e.js +0 -1
  549. package/dist/standalone/.next/static/chunks/app/api/agent/route-3e358516d279299e.js +0 -1
  550. package/dist/standalone/.next/static/chunks/app/api/agent/snapshot/route-3e358516d279299e.js +0 -1
  551. package/dist/standalone/.next/static/chunks/app/api/answer/route-3e358516d279299e.js +0 -1
  552. package/dist/standalone/.next/static/chunks/app/api/artifact/route-3e358516d279299e.js +0 -1
  553. package/dist/standalone/.next/static/chunks/app/api/attach-command/route-3e358516d279299e.js +0 -1
  554. package/dist/standalone/.next/static/chunks/app/api/attention/[id]/route-3e358516d279299e.js +0 -1
  555. package/dist/standalone/.next/static/chunks/app/api/attention/route-3e358516d279299e.js +0 -1
  556. package/dist/standalone/.next/static/chunks/app/api/board/route-3e358516d279299e.js +0 -1
  557. package/dist/standalone/.next/static/chunks/app/api/bridge/route-3e358516d279299e.js +0 -1
  558. package/dist/standalone/.next/static/chunks/app/api/conversation-host/route-3e358516d279299e.js +0 -1
  559. package/dist/standalone/.next/static/chunks/app/api/conversation-host/targets/route-3e358516d279299e.js +0 -1
  560. package/dist/standalone/.next/static/chunks/app/api/conversations/[conversationId]/migration/route-3e358516d279299e.js +0 -1
  561. package/dist/standalone/.next/static/chunks/app/api/conversations/route-3e358516d279299e.js +0 -1
  562. package/dist/standalone/.next/static/chunks/app/api/files/route-3e358516d279299e.js +0 -1
  563. package/dist/standalone/.next/static/chunks/app/api/flows/[id]/route-3e358516d279299e.js +0 -1
  564. package/dist/standalone/.next/static/chunks/app/api/flows/route-3e358516d279299e.js +0 -1
  565. package/dist/standalone/.next/static/chunks/app/api/image/route-3e358516d279299e.js +0 -1
  566. package/dist/standalone/.next/static/chunks/app/api/inbox/route-3e358516d279299e.js +0 -1
  567. package/dist/standalone/.next/static/chunks/app/api/lifecycle/reaper/route-3e358516d279299e.js +0 -1
  568. package/dist/standalone/.next/static/chunks/app/api/limits/history/route-3e358516d279299e.js +0 -1
  569. package/dist/standalone/.next/static/chunks/app/api/limits/route-3e358516d279299e.js +0 -1
  570. package/dist/standalone/.next/static/chunks/app/api/log/preflight/route-3e358516d279299e.js +0 -1
  571. package/dist/standalone/.next/static/chunks/app/api/log/project-delete/route-3e358516d279299e.js +0 -1
  572. package/dist/standalone/.next/static/chunks/app/api/log/provenance/route-3e358516d279299e.js +0 -1
  573. package/dist/standalone/.next/static/chunks/app/api/log/route-3e358516d279299e.js +0 -1
  574. package/dist/standalone/.next/static/chunks/app/api/log/suggestions/route-3e358516d279299e.js +0 -1
  575. package/dist/standalone/.next/static/chunks/app/api/logs/route-3e358516d279299e.js +0 -1
  576. package/dist/standalone/.next/static/chunks/app/api/logs/stream/route-3e358516d279299e.js +0 -1
  577. package/dist/standalone/.next/static/chunks/app/api/monitor/runs/route-3e358516d279299e.js +0 -1
  578. package/dist/standalone/.next/static/chunks/app/api/orchestrator/rotate/route-3e358516d279299e.js +0 -1
  579. package/dist/standalone/.next/static/chunks/app/api/orchestrator/seat/route-3e358516d279299e.js +0 -1
  580. package/dist/standalone/.next/static/chunks/app/api/orchestrator/seat/status/route-3e358516d279299e.js +0 -1
  581. package/dist/standalone/.next/static/chunks/app/api/pipelines/[id]/route-3e358516d279299e.js +0 -1
  582. package/dist/standalone/.next/static/chunks/app/api/pipelines/preflight/route-3e358516d279299e.js +0 -1
  583. package/dist/standalone/.next/static/chunks/app/api/pipelines/route-3e358516d279299e.js +0 -1
  584. package/dist/standalone/.next/static/chunks/app/api/pipelines/tick/route-3e358516d279299e.js +0 -1
  585. package/dist/standalone/.next/static/chunks/app/api/proc/route-3e358516d279299e.js +0 -1
  586. package/dist/standalone/.next/static/chunks/app/api/projects/create/route-3e358516d279299e.js +0 -1
  587. package/dist/standalone/.next/static/chunks/app/api/projects/crown/route-3e358516d279299e.js +0 -1
  588. package/dist/standalone/.next/static/chunks/app/api/projects/directories/route-3e358516d279299e.js +0 -1
  589. package/dist/standalone/.next/static/chunks/app/api/push/route-3e358516d279299e.js +0 -1
  590. package/dist/standalone/.next/static/chunks/app/api/resources/route-3e358516d279299e.js +0 -1
  591. package/dist/standalone/.next/static/chunks/app/api/roles/route-3e358516d279299e.js +0 -1
  592. package/dist/standalone/.next/static/chunks/app/api/runtime/answer/route-3e358516d279299e.js +0 -1
  593. package/dist/standalone/.next/static/chunks/app/api/runtime/deployments/[deploymentId]/route-3e358516d279299e.js +0 -1
  594. package/dist/standalone/.next/static/chunks/app/api/runtime/deployments/capabilities/v1/route-3e358516d279299e.js +0 -1
  595. package/dist/standalone/.next/static/chunks/app/api/runtime/deployments/route-3e358516d279299e.js +0 -1
  596. package/dist/standalone/.next/static/chunks/app/api/runtime/hosts/route-3e358516d279299e.js +0 -1
  597. package/dist/standalone/.next/static/chunks/app/api/runtime/interrupt/route-3e358516d279299e.js +0 -1
  598. package/dist/standalone/.next/static/chunks/app/api/runtime/operations/[operationId]/route-3e358516d279299e.js +0 -1
  599. package/dist/standalone/.next/static/chunks/app/api/runtime/operations/route-3e358516d279299e.js +0 -1
  600. package/dist/standalone/.next/static/chunks/app/api/runtime/realtime/route-3e358516d279299e.js +0 -1
  601. package/dist/standalone/.next/static/chunks/app/api/runtime/send/route-3e358516d279299e.js +0 -1
  602. package/dist/standalone/.next/static/chunks/app/api/runtime/snapshot/route-3e358516d279299e.js +0 -1
  603. package/dist/standalone/.next/static/chunks/app/api/runtime/spawn/route-3e358516d279299e.js +0 -1
  604. package/dist/standalone/.next/static/chunks/app/api/runtime/steer/route-3e358516d279299e.js +0 -1
  605. package/dist/standalone/.next/static/chunks/app/api/runtime/stream/route-3e358516d279299e.js +0 -1
  606. package/dist/standalone/.next/static/chunks/app/api/search/transcripts/route-3e358516d279299e.js +0 -1
  607. package/dist/standalone/.next/static/chunks/app/api/session/route-3e358516d279299e.js +0 -1
  608. package/dist/standalone/.next/static/chunks/app/api/session/supersedence/route-3e358516d279299e.js +0 -1
  609. package/dist/standalone/.next/static/chunks/app/api/session/title/route-3e358516d279299e.js +0 -1
  610. package/dist/standalone/.next/static/chunks/app/api/spawn/policy/route-3e358516d279299e.js +0 -1
  611. package/dist/standalone/.next/static/chunks/app/api/spawn/route-3e358516d279299e.js +0 -1
  612. package/dist/standalone/.next/static/chunks/app/api/staging/route-3e358516d279299e.js +0 -1
  613. package/dist/standalone/.next/static/chunks/app/api/task-attachments/route-3e358516d279299e.js +0 -1
  614. package/dist/standalone/.next/static/chunks/app/api/tasks/[id]/assignment/route-3e358516d279299e.js +0 -1
  615. package/dist/standalone/.next/static/chunks/app/api/tasks/[id]/route-3e358516d279299e.js +0 -1
  616. package/dist/standalone/.next/static/chunks/app/api/tasks/[id]/send/route-3e358516d279299e.js +0 -1
  617. package/dist/standalone/.next/static/chunks/app/api/tasks/[id]/spawn/route-3e358516d279299e.js +0 -1
  618. package/dist/standalone/.next/static/chunks/app/api/tasks/curator/route-3e358516d279299e.js +0 -1
  619. package/dist/standalone/.next/static/chunks/app/api/tasks/route-3e358516d279299e.js +0 -1
  620. package/dist/standalone/.next/static/chunks/app/api/telegram/reports/route-3e358516d279299e.js +0 -1
  621. package/dist/standalone/.next/static/chunks/app/api/telegram/route-3e358516d279299e.js +0 -1
  622. package/dist/standalone/.next/static/chunks/app/api/timeline/route-3e358516d279299e.js +0 -1
  623. package/dist/standalone/.next/static/chunks/app/api/tmux/route-3e358516d279299e.js +0 -1
  624. package/dist/standalone/.next/static/chunks/app/api/tmux/targets/route-3e358516d279299e.js +0 -1
  625. package/dist/standalone/.next/static/chunks/app/api/transcribe/backend/route-3e358516d279299e.js +0 -1
  626. package/dist/standalone/.next/static/chunks/app/api/transcribe/route-3e358516d279299e.js +0 -1
  627. package/dist/standalone/.next/static/chunks/app/api/transcribe/token/route-3e358516d279299e.js +0 -1
  628. package/dist/standalone/.next/static/chunks/app/api/tts/backend/route-3e358516d279299e.js +0 -1
  629. package/dist/standalone/.next/static/chunks/app/api/tts/route-3e358516d279299e.js +0 -1
  630. package/dist/standalone/.next/static/chunks/app/api/view/presence/route-3e358516d279299e.js +0 -1
  631. package/dist/standalone/.next/static/chunks/app/api/workflows/[id]/route-3e358516d279299e.js +0 -1
  632. package/dist/standalone/.next/static/chunks/app/api/workflows/route-3e358516d279299e.js +0 -1
  633. package/dist/standalone/.next/static/chunks/app/page-dbe7cb010b4941d6.js +0 -96
  634. package/dist/standalone/.next/static/chunks/next/dist/client/components/builtin/app-error-3e358516d279299e.js +0 -1
  635. package/dist/standalone/.next/static/chunks/next/dist/client/components/builtin/forbidden-3e358516d279299e.js +0 -1
  636. package/dist/standalone/.next/static/chunks/next/dist/client/components/builtin/not-found-3e358516d279299e.js +0 -1
  637. package/dist/standalone/.next/static/chunks/next/dist/client/components/builtin/unauthorized-3e358516d279299e.js +0 -1
  638. package/dist/standalone/.next/static/css/282596e2aaee1aa4.css +0 -1
  639. package/dist/standalone/src/lib/inboxFiles.ts +0 -203
  640. /package/dist/standalone/.next/static/{6jhPk8sOUI3wRf_j1l5vY → 836HTp-5V8cZC5YWFVOCk}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en" class="h-full antialiased"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"/><link rel="stylesheet" href="/_next/static/css/282596e2aaee1aa4.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-85d25a589045afb5.js"/><script src="/_next/static/chunks/4bd1b696-93bf506b236d6248.js" async=""></script><script src="/_next/static/chunks/3794-d1854fdd0e41dc44.js" async=""></script><script src="/_next/static/chunks/main-app-445a22676ae6cc9f.js" async=""></script><meta name="robots" content="noindex"/><title>Agent Log Viewer</title><meta name="description" content="Agent Log Viewer for Codex and Claude agent logs"/><link rel="icon" href="/favicon.ico?603d046c9a6fdfbb" type="image/x-icon" sizes="16x16"/><title>404: This page could not be found.</title><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="h-dvh overflow-hidden font-sans text-[15px]"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-85d25a589045afb5.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[7121,[],\"\"]\n3:I[4581,[],\"\"]\n4:I[484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[484,[],\"ViewportBoundary\"]\na:I[484,[],\"MetadataBoundary\"]\nc:I[7123,[],\"default\",1]\n:HL[\"/_next/static/css/282596e2aaee1aa4.css\",\"style\"]\n7:X\n0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_not-found\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/282596e2aaee1aa4.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"h-full antialiased\",\"children\":[\"$\",\"body\",null,{\"className\":\"h-dvh overflow-hidden font-sans text-[15px]\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"6jhPk8sOUI3wRf_j1l5vY\"}\n7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content\"}]]\nd:I[6869,[],\"IconMark\"]\n6:null\nb:[[\"$\",\"title\",\"0\",{\"children\":\"Agent Log Viewer\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Agent Log Viewer for Codex and Claude agent logs\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?603d046c9a6fdfbb\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"$Ld\",\"3\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en" class="h-full antialiased"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"/><link rel="stylesheet" href="/_next/static/css/b25c03e915fd256b.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-85d25a589045afb5.js"/><script src="/_next/static/chunks/4bd1b696-93bf506b236d6248.js" async=""></script><script src="/_next/static/chunks/3794-0ef35fddac53cd9a.js" async=""></script><script src="/_next/static/chunks/main-app-445a22676ae6cc9f.js" async=""></script><meta name="robots" content="noindex"/><title>Agent Log Viewer</title><meta name="description" content="Agent Log Viewer for Codex and Claude agent logs"/><link rel="icon" href="/favicon.ico?603d046c9a6fdfbb" type="image/x-icon" sizes="16x16"/><title>404: This page could not be found.</title><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="h-dvh overflow-hidden font-sans text-[15px]"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-85d25a589045afb5.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[7121,[],\"\"]\n3:I[4581,[],\"\"]\n4:I[484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[484,[],\"ViewportBoundary\"]\na:I[484,[],\"MetadataBoundary\"]\nc:I[7123,[],\"default\",1]\n:HL[\"/_next/static/css/b25c03e915fd256b.css\",\"style\"]\n7:X\n0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_not-found\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/b25c03e915fd256b.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"h-full antialiased\",\"children\":[\"$\",\"body\",null,{\"className\":\"h-dvh overflow-hidden font-sans text-[15px]\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"836HTp-5V8cZC5YWFVOCk\"}\n7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content\"}]]\nd:I[6869,[],\"IconMark\"]\n6:null\nb:[[\"$\",\"title\",\"0\",{\"children\":\"Agent Log Viewer\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Agent Log Viewer for Codex and Claude agent logs\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?603d046c9a6fdfbb\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"$Ld\",\"3\",{}]]\n"])</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-85d25a589045afb5.js"/><script src="/_next/static/chunks/4bd1b696-93bf506b236d6248.js" async=""></script><script src="/_next/static/chunks/3794-d1854fdd0e41dc44.js" async=""></script><script src="/_next/static/chunks/main-app-445a22676ae6cc9f.js" async=""></script><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-85d25a589045afb5.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[7121,[],\"\"]\n3:I[4581,[],\"\"]\n4:I[484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[484,[],\"ViewportBoundary\"]\na:I[484,[],\"MetadataBoundary\"]\nc:I[7123,[],\"default\",1]\n7:X\n0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"]},null,false,\"$7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"6jhPk8sOUI3wRf_j1l5vY\"}\n7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n6:null\nb:[]\n"])</script></body></html>
1
+ <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-85d25a589045afb5.js"/><script src="/_next/static/chunks/4bd1b696-93bf506b236d6248.js" async=""></script><script src="/_next/static/chunks/3794-0ef35fddac53cd9a.js" async=""></script><script src="/_next/static/chunks/main-app-445a22676ae6cc9f.js" async=""></script><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-85d25a589045afb5.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[7121,[],\"\"]\n3:I[4581,[],\"\"]\n4:I[484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[484,[],\"ViewportBoundary\"]\na:I[484,[],\"MetadataBoundary\"]\nc:I[7123,[],\"default\",1]\n7:X\n0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"]},null,false,\"$7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"836HTp-5V8cZC5YWFVOCk\"}\n7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n6:null\nb:[]\n"])</script></body></html>
@@ -1 +1 @@
1
- "use strict";(()=>{var a={};a.id=9904,a.ids=[9904],a.modules={643:a=>{a.exports=require("node:perf_hooks")},16698:a=>{a.exports=require("node:async_hooks")},31421:a=>{a.exports=require("node:child_process")},46193:a=>{a.exports=require("node:string_decoder")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},57975:a=>{a.exports=require("node:util")},73024:a=>{a.exports=require("node:fs")},76760:a=>{a.exports=require("node:path")},77021:(a,b,c)=>{process.env.LLV_RESOURCE_OBSERVATION_WORKER="1";var d=c(73024);let e=require("node:worker_threads");var f=c(80502),g=c(51826),h=c(52530),i=c(409);c(77598),c(31421),c(76760),c(46193);var j=c(23086),k=c(8164),l=c(44237),m=c(89364);c(50920);var n=c(44123);function o(a,b,c){let d=performance.now();try{return c()}finally{a[b]+=performance.now()-d}}async function p(a,b,c){let d=performance.now();try{return await c()}finally{a[b]+=performance.now()-d}}let q=globalThis;function r(a){return new Date(1e3*a).toISOString()}async function s(){return(await Promise.resolve().then(c.bind(c,82243))).readStructuredHostRecords()}let t={readFiles:async a=>{let b=await u(a);return(0,l.iD)(b),b},readHosts:(a,b,c)=>(0,f.oe)(a,b,c),proc:g.B,captureAttachReferences:m.yq,readStructuredHosts:s,listAgentProcesses:h.Bj,directoryExists:a=>(0,d.existsSync)(a),processIdentity:a=>g.B.processIdentity(a),hostStamp:h.Tu};async function u(a){var b,c;return b=(a?await (0,j.vx)():await (0,j.Nm)({revalidate:!1})).snapshot.files,c=()=>null,b.map(a=>({path:a.path,parent:a.parent,title:a.title,project:a.project,activity:a.activity,mtime:a.mtime,engine:a.engine,pid:a.pid,proc:a.proc,conversationId:c(a.path)??a.conversationId??null}))}async function v(a,b,c){let d=await c.readStructuredHosts?.(a)??[],e=c.processIdentity??(a=>g.B.processIdentity(a)),f=(c.bootEpoch??i.h_)(),j=c.hostStamp??h.Tu,l=(0,h.TK)(),m=[],o=new Set;for(let a of d){if(!Number.isSafeInteger(a.pid)||a.pid<=1||o.has(a.pid))continue;let b=e(a.pid);if(null!==b&&(null===a.startIdentity||a.startIdentity===b)&&(null===a.bootEpoch||null===f||a.bootEpoch===f)&&(o.add(a.pid),m.push({...a,startIdentity:b}),m.length>=n.sb))break}for(let d of c.listAgentProcesses?.(a)??[]){if(m.length>=n.sb)break;if(o.has(d.pid)||(0,h.qM)(d.argv))continue;let a=(0,h.qP)(d.argv);if(null===a||j(d.pid)!==l)continue;let c=function(a,b,c,d){let e=a,f=new Set([a]);for(;;){let a=b.get(e);if(void 0===a||a<=1||f.has(a)||c(a)!==d)return e;f.add(a),e=a}}(d.pid,b,j,l);if(o.has(c))continue;let g=e(c);null!==g&&(o.add(d.pid),o.add(c),m.push({id:`pid:${c}`,engine:a,sessionId:null,pid:c,startIdentity:g,bootEpoch:f,cwd:d.cwd,path:null,conversationId:null,title:null,role:null,model:null,stage:null,seat:null,turnBusy:null,owned:!1}))}return m.map(a=>({record:a,tree:(0,k.mO)(a.pid,b)}))}async function w(a,b=t){let c=performance.now(),d={systemMemory:0,readFiles:0,readHosts:0,ppidMap:0,processMemory:0,attach:0,serialization:0};try{let e=o(d,"systemMemory",()=>(function(a=g.B){let b=a.systemMemory();return b?{...b,capturedAt:new Date().toISOString()}:null})(b.proc)),f=await p(d,"readFiles",()=>b.readFiles(a)),h=o(d,"ppidMap",()=>b.proc.ppidMap()),i=await p(d,"readHosts",()=>b.readHosts(a,f,h)),j=await p(d,"readHosts",()=>v(a,h,b)),l=[],m=new Map(f.map(a=>[a.path,a])),n=new Map;for(let a of i.hosts){let b=n.get(a.paneId);b?b.push(a):n.set(a.paneId,[a])}let s=[],t=new Set;for(let a of n.values()){let b=a[0],c=(0,k.mO)(b.panePid,h);for(let d of(s.push({host:b,tree:c,paneHosts:a}),c))t.add(d)}let u=[];for(let a of j)if(!t.has(a.record.pid))for(let b of(u.push(a),a.tree))t.add(b);let w=o(d,"processMemory",()=>b.proc.processMemory(t)),x=a=>{let b=0,c=0;for(let d of a){let a=w.get(d);a&&(b+=a.rssBytes,c+=a.swapBytes)}return{rssBytes:b,swapBytes:c}},y=[];for(let{record:a,tree:c}of(o(d,"attach",()=>{let a=b.captureAttachReferences(s.map(({host:a})=>({tmuxServerPid:a.tmuxServerPid,panePid:a.panePid,paneId:a.paneId})));for(let{host:b,tree:c,paneHosts:d}of s){let e=function(a,b,c){for(let d of b){if(!d.primaryPath)continue;let b=a.canonicalFor(d.primaryPath);if(b?.paneId===d.paneId&&b.agentPid===d.agentPid)return c.get(d.primaryPath)??null}return null}(i,d,m);l.push({target:b.display,panePid:b.panePid,path:e?.path??null,engine:b.engine,hostConflict:function(a,b){return a.conflicts?.some(a=>a.paneIds.includes(b.paneId))??!1}(i,b),title:e?.title??null,project:e?.project||null,activity:e?.activity??null,lastActiveAt:e?r(e.mtime):null,cwd:b.cwd,...x(c),procCount:c.length});let f=a.get(b.paneId);f&&y.push({target:b.display,ref:f})}}),u)){let d=a.path?m.get(a.path)??null:null,e=d?r(d.mtime):null,f="structured:"+a.id;l.push({target:f,panePid:a.pid,kind:"structured",path:a.path,engine:a.engine,title:a.title??d?.title??null,project:d?.project||null,activity:d?.activity??null,lastActiveAt:e,cwd:a.cwd||null,...x(c),procCount:c.length,model:a.model,role:a.role,conversationId:a.conversationId,stage:a.stage,ownership:null===a.sessionId||a.cwd.length>0&&b.directoryExists?.(a.cwd)===!1?"orphaned":a.owned?"owned":"released",seat:a.seat,turnBusy:a.turnBusy}),y.push({target:f,ref:{kind:"structured",pid:a.pid,startIdentity:a.startIdentity,bootEpoch:a.bootEpoch,engine:a.engine,sessionId:a.sessionId,conversationId:a.conversationId,seat:a.seat,turnBusy:a.turnBusy,owned:a.owned,lastActiveAt:e}})}return l.sort((a,b)=>b.rssBytes+b.swapBytes-(a.rssBytes+a.swapBytes)),q.__llvLastResourceTargets=[...y].map(({target:a,ref:b})=>({target:a,ref:b})),q.__llvLastResourceBuild={fresh:a,status:"complete",durationMs:performance.now()-c,phases:d},{system:e,sessions:l}}catch(b){throw q.__llvLastResourceBuild={fresh:a,status:"failed",durationMs:performance.now()-c,phases:d},b}}function x(a){e.parentPort?e.parentPort.postMessage(a):process.stdout.write(JSON.stringify(a)+"\n")}function y(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function z(a){return null===a||"string"==typeof a}function A(a){return null===a||"boolean"==typeof a}function B(a){if(!y(a))return!1;let b=["path","parent","title","project","activity","mtime","engine","pid","proc","conversationId"];return!(Object.keys(a).length!==b.length||b.some(b=>!Object.hasOwn(a,b)))&&"string"==typeof a.path&&a.path.length>0&&z(a.parent)&&"string"==typeof a.title&&"string"==typeof a.project&&("live"===a.activity||"recent"===a.activity||"stalled"===a.activity||"idle"===a.activity)&&"number"==typeof a.mtime&&Number.isFinite(a.mtime)&&a.mtime>=0&&("claude"===a.engine||"codex"===a.engine||"shell"===a.engine||"openclaw"===a.engine)&&(null===a.pid||Number.isSafeInteger(a.pid)&&a.pid>0)&&("running"===a.proc||"done"===a.proc||"killed"===a.proc||null===a.proc)&&z(a.conversationId)}function C(a){if(!y(a))return!1;let b=["id","engine","sessionId","pid","startIdentity","bootEpoch","cwd","path","conversationId","title","role","model","stage","seat","turnBusy","owned"];return!(Object.keys(a).length!==b.length||b.some(b=>!Object.hasOwn(a,b)))&&"string"==typeof a.id&&a.id.length>0&&("claude"===a.engine||"codex"===a.engine)&&z(a.sessionId)&&Number.isSafeInteger(a.pid)&&a.pid>1&&z(a.startIdentity)&&z(a.bootEpoch)&&"string"==typeof a.cwd&&z(a.path)&&z(a.conversationId)&&z(a.title)&&z(a.role)&&z(a.model)&&z(a.stage)&&A(a.seat)&&A(a.turnBusy)&&"boolean"==typeof a.owned}async function D(a){let b=y(a)&&5===Object.keys(a).length&&"collect"===a.type&&"boolean"==typeof a.fresh&&z(a.identityEpoch)&&Array.isArray(a.files)&&!(a.files.length>1e4)&&a.files.every(B)&&Array.isArray(a.hosts)&&!(a.hosts.length>n.sb)&&a.hosts.every(C)?a:null;if(!b)return void x({type:"failure",error:"resource collector received an invalid request"});try{let a;(0,l.iD)(b.files);let c=new Map(b.files.flatMap(a=>a.conversationId?[[a.path,a.conversationId]]:[])),e=(0,f.f8)({listFiles:async()=>b.files,panes:m.m7,ppidMap:()=>g.B.ppidMap(),agents:h.Bj,serverPid:m.lC,resumeRecords:async()=>null,identity:g.B.processIdentity,writesPath:g.B.pidWritesPath,conversationIdForPath:a=>c.get(a)??null}),i=await w(b.fresh,{readFiles:async()=>b.files,readHosts:(a,b,c)=>e(a,b,c),proc:g.B,captureAttachReferences:m.yq,readStructuredHosts:async()=>b.hosts,listAgentProcesses:h.Bj,directoryExists:a=>(0,d.existsSync)(a),processIdentity:g.B.processIdentity,bootEpoch:()=>b.identityEpoch,hostStamp:h.Tu}),j=(a=q.__llvLastResourceBuild)?{...a,phases:{...a.phases}}:null;if(!j)throw Error("resource worker completed without diagnostics");x({type:"observation",payload:i,diagnostic:j,targets:q.__llvLastResourceTargets?.map(({target:a,ref:b})=>({target:a,ref:{...b}}))??[]})}catch(a){x({type:"failure",error:a instanceof Error?a.message:String(a)})}}if(e.parentPort)e.parentPort.on("message",a=>{D(a)});else{let a="",b=0;process.stdin.setEncoding("utf8"),process.stdin.on("data",c=>{(b+=Buffer.byteLength(c))<=0x1010000&&(a+=c)}),process.stdin.on("end",()=>{if(b>0x1010000)return void x({type:"failure",error:"resource collector input exceeded transport limit"});try{D(JSON.parse(a))}catch(a){x({type:"failure",error:a instanceof Error?a.message:String(a)})}})}},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},85786:a=>{a.exports=require("bun:ffi")}};var b=require("./webpack-runtime.js");b.C(a);var c=b.X(0,[7045,3086],()=>b(b.s=77021));module.exports=c})();
1
+ "use strict";(()=>{var a={};a.id=9904,a.ids=[9904],a.modules={643:a=>{a.exports=require("node:perf_hooks")},16698:a=>{a.exports=require("node:async_hooks")},24323:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{N9:()=>x,Q3:()=>r,QS:()=>s,tw:()=>A});var e=c(51826),f=c(409);c(77598);var g=c(73024);c(31421),c(76760),c(46193);var h=c(23086);c(90017);var i=c(8164),j=c(52530),k=c(44237),l=c(80502),m=c(61406);c(50920);var n=c(44123),o=a([h,l,m]);function p(a,b,c){let d=performance.now();try{return c()}finally{a[b]+=performance.now()-d}}async function q(a,b,c){let d=performance.now();try{return await c()}finally{a[b]+=performance.now()-d}}[h,l,m]=o.then?(await o)():o;let y=globalThis;function r(){let a=y.__llvLastResourceBuild;return a?{...a,phases:{...a.phases}}:null}function s(){return y.__llvLastResourceTargets?.map(({target:a,ref:b})=>({target:a,ref:{...b}}))??[]}function t(a){return new Date(1e3*a).toISOString()}async function u(){return(await Promise.resolve().then(c.bind(c,82243))).readStructuredHostRecords()}let z={readFiles:async a=>{let b=await v(a);return(0,k.iD)(b),b},readHosts:(a,b,c)=>(0,l.oe)(a,b,c),proc:e.B,captureAttachReferences:m.yq,readStructuredHosts:u,listAgentProcesses:j.Bj,directoryExists:a=>(0,g.existsSync)(a),processIdentity:a=>e.B.processIdentity(a),hostStamp:j.Tu};async function v(a){var b,c;return b=(a?await (0,h.vx)():await (0,h.Nm)({revalidate:!1})).snapshot.files,c=()=>null,b.map(a=>({path:a.path,parent:a.parent,title:a.title,project:a.project,activity:a.activity,mtime:a.mtime,engine:a.engine,pid:a.pid,proc:a.proc,conversationId:c(a.path)??a.conversationId??null}))}async function w(a,b,c){let d=await c.readStructuredHosts?.(a)??[],g=c.processIdentity??(a=>e.B.processIdentity(a)),h=(c.bootEpoch??f.h_)(),k=c.hostStamp??j.Tu,l=(0,j.TK)(),m=[],o=new Set;for(let a of d){if(!Number.isSafeInteger(a.pid)||a.pid<=1||o.has(a.pid))continue;let b=g(a.pid);if(null!==b&&(null===a.startIdentity||a.startIdentity===b)&&(null===a.bootEpoch||null===h||a.bootEpoch===h)&&(o.add(a.pid),m.push({...a,startIdentity:b}),m.length>=n.sb))break}for(let d of c.listAgentProcesses?.(a)??[]){if(m.length>=n.sb)break;if(o.has(d.pid)||(0,j.qM)(d.argv))continue;let a=(0,j.qP)(d.argv);if(null===a||k(d.pid)!==l)continue;let c=function(a,b,c,d){let e=a,f=new Set([a]);for(;;){let a=b.get(e);if(void 0===a||a<=1||f.has(a)||c(a)!==d)return e;f.add(a),e=a}}(d.pid,b,k,l);if(o.has(c))continue;let e=g(c);null!==e&&(o.add(d.pid),o.add(c),m.push({id:`pid:${c}`,engine:a,sessionId:null,pid:c,startIdentity:e,bootEpoch:h,cwd:d.cwd,path:null,conversationId:null,title:null,role:null,model:null,stage:null,seat:null,turnBusy:null,owned:!1}))}return m.map(a=>({record:a,tree:(0,i.mO)(a.pid,b)}))}async function x(a,b=z){let c=performance.now(),d={systemMemory:0,readFiles:0,readHosts:0,ppidMap:0,processMemory:0,attach:0,serialization:0};try{let f=p(d,"systemMemory",()=>(function(a=e.B){let b=a.systemMemory();return b?{...b,capturedAt:new Date().toISOString()}:null})(b.proc)),g=await q(d,"readFiles",()=>b.readFiles(a)),h=p(d,"ppidMap",()=>b.proc.ppidMap()),j=await q(d,"readHosts",()=>b.readHosts(a,g,h)),k=await q(d,"readHosts",()=>w(a,h,b)),l=[],m=new Map(g.map(a=>[a.path,a])),n=new Map;for(let a of j.hosts){let b=n.get(a.paneId);b?b.push(a):n.set(a.paneId,[a])}let o=[],r=new Set;for(let a of n.values()){let b=a[0],c=(0,i.mO)(b.panePid,h);for(let d of(o.push({host:b,tree:c,paneHosts:a}),c))r.add(d)}let s=[];for(let a of k)if(!r.has(a.record.pid))for(let b of(s.push(a),a.tree))r.add(b);let u=p(d,"processMemory",()=>b.proc.processMemory(r)),v=a=>{let b=0,c=0;for(let d of a){let a=u.get(d);a&&(b+=a.rssBytes,c+=a.swapBytes)}return{rssBytes:b,swapBytes:c}},x=[];for(let{record:a,tree:c}of(p(d,"attach",()=>{let a=b.captureAttachReferences(o.map(({host:a})=>({tmuxServerPid:a.tmuxServerPid,panePid:a.panePid,paneId:a.paneId})));for(let{host:b,tree:c,paneHosts:d}of o){let e=function(a,b,c){for(let d of b){if(!d.primaryPath)continue;let b=a.canonicalFor(d.primaryPath);if(b?.paneId===d.paneId&&b.agentPid===d.agentPid)return c.get(d.primaryPath)??null}return null}(j,d,m);l.push({target:b.display,panePid:b.panePid,path:e?.path??null,engine:b.engine,hostConflict:function(a,b){return a.conflicts?.some(a=>a.paneIds.includes(b.paneId))??!1}(j,b),title:e?.title??null,project:e?.project||null,activity:e?.activity??null,lastActiveAt:e?t(e.mtime):null,cwd:b.cwd,...v(c),procCount:c.length});let f=a.get(b.paneId);f&&x.push({target:b.display,ref:f})}}),s)){let d=a.path?m.get(a.path)??null:null,e=d?t(d.mtime):null,f="structured:"+a.id;l.push({target:f,panePid:a.pid,kind:"structured",path:a.path,engine:a.engine,title:a.title??d?.title??null,project:d?.project||null,activity:d?.activity??null,lastActiveAt:e,cwd:a.cwd||null,...v(c),procCount:c.length,model:a.model,role:a.role,conversationId:a.conversationId,stage:a.stage,ownership:null===a.sessionId||a.cwd.length>0&&b.directoryExists?.(a.cwd)===!1?"orphaned":a.owned?"owned":"released",seat:a.seat,turnBusy:a.turnBusy}),x.push({target:f,ref:{kind:"structured",pid:a.pid,startIdentity:a.startIdentity,bootEpoch:a.bootEpoch,engine:a.engine,sessionId:a.sessionId,conversationId:a.conversationId,seat:a.seat,turnBusy:a.turnBusy,owned:a.owned,lastActiveAt:e}})}return l.sort((a,b)=>b.rssBytes+b.swapBytes-(a.rssBytes+a.swapBytes)),y.__llvLastResourceTargets=[...x].map(({target:a,ref:b})=>({target:a,ref:b})),y.__llvLastResourceBuild={fresh:a,status:"complete",durationMs:performance.now()-c,phases:d},{system:f,sessions:l}}catch(b){throw y.__llvLastResourceBuild={fresh:a,status:"failed",durationMs:performance.now()-c,phases:d},b}}let A=0x1010000;d()}catch(a){d(a)}})},31421:a=>{a.exports=require("node:child_process")},42971:a=>{a.exports=import("zod")},46193:a=>{a.exports=require("node:string_decoder")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},57975:a=>{a.exports=require("node:util")},68030:()=>{process.env.LLV_RESOURCE_OBSERVATION_WORKER="1"},73024:a=>{a.exports=require("node:fs")},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},83205:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c(68030);var e=c(73024),f=c(75919),g=c(80502),h=c(51826),i=c(52530),j=c(24323),k=c(44237),l=c(61406),m=c(44123),n=a([g,j,l]);function o(a){f.parentPort?f.parentPort.postMessage(a):process.stdout.write(JSON.stringify(a)+"\n")}function p(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function q(a){return null===a||"string"==typeof a}function r(a){return null===a||"boolean"==typeof a}function s(a){if(!p(a))return!1;let b=["path","parent","title","project","activity","mtime","engine","pid","proc","conversationId"];return!(Object.keys(a).length!==b.length||b.some(b=>!Object.hasOwn(a,b)))&&"string"==typeof a.path&&a.path.length>0&&q(a.parent)&&"string"==typeof a.title&&"string"==typeof a.project&&("live"===a.activity||"recent"===a.activity||"stalled"===a.activity||"idle"===a.activity)&&"number"==typeof a.mtime&&Number.isFinite(a.mtime)&&a.mtime>=0&&("claude"===a.engine||"codex"===a.engine||"shell"===a.engine||"openclaw"===a.engine)&&(null===a.pid||Number.isSafeInteger(a.pid)&&a.pid>0)&&("running"===a.proc||"done"===a.proc||"killed"===a.proc||null===a.proc)&&q(a.conversationId)}function t(a){if(!p(a))return!1;let b=["id","engine","sessionId","pid","startIdentity","bootEpoch","cwd","path","conversationId","title","role","model","stage","seat","turnBusy","owned"];return!(Object.keys(a).length!==b.length||b.some(b=>!Object.hasOwn(a,b)))&&"string"==typeof a.id&&a.id.length>0&&("claude"===a.engine||"codex"===a.engine)&&q(a.sessionId)&&Number.isSafeInteger(a.pid)&&a.pid>1&&q(a.startIdentity)&&q(a.bootEpoch)&&"string"==typeof a.cwd&&q(a.path)&&q(a.conversationId)&&q(a.title)&&q(a.role)&&q(a.model)&&q(a.stage)&&r(a.seat)&&r(a.turnBusy)&&"boolean"==typeof a.owned}async function u(a){let b=p(a)&&5===Object.keys(a).length&&"collect"===a.type&&"boolean"==typeof a.fresh&&q(a.identityEpoch)&&Array.isArray(a.files)&&!(a.files.length>1e4)&&a.files.every(s)&&Array.isArray(a.hosts)&&!(a.hosts.length>m.sb)&&a.hosts.every(t)?a:null;if(!b)return void o({type:"failure",error:"resource collector received an invalid request"});try{(0,k.iD)(b.files);let a=new Map(b.files.flatMap(a=>a.conversationId?[[a.path,a.conversationId]]:[])),c=(0,g.f8)({listFiles:async()=>b.files,panes:l.m7,ppidMap:()=>h.B.ppidMap(),agents:i.Bj,serverPid:l.lC,resumeRecords:async()=>null,identity:h.B.processIdentity,writesPath:h.B.pidWritesPath,conversationIdForPath:b=>a.get(b)??null}),d=await (0,j.N9)(b.fresh,{readFiles:async()=>b.files,readHosts:(a,b,d)=>c(a,b,d),proc:h.B,captureAttachReferences:l.yq,readStructuredHosts:async()=>b.hosts,listAgentProcesses:i.Bj,directoryExists:a=>(0,e.existsSync)(a),processIdentity:h.B.processIdentity,bootEpoch:()=>b.identityEpoch,hostStamp:i.Tu}),f=(0,j.Q3)();if(!f)throw Error("resource worker completed without diagnostics");o({type:"observation",payload:d,diagnostic:f,targets:(0,j.QS)()})}catch(a){o({type:"failure",error:a instanceof Error?a.message:String(a)})}}if([g,j,l]=n.then?(await n)():n,f.parentPort)f.parentPort.on("message",a=>{u(a)});else{let a="",b=0;process.stdin.setEncoding("utf8"),process.stdin.on("data",c=>{(b+=Buffer.byteLength(c))<=j.tw&&(a+=c)}),process.stdin.on("end",()=>{if(b>j.tw)return void o({type:"failure",error:"resource collector input exceeded transport limit"});try{u(JSON.parse(a))}catch(a){o({type:"failure",error:a instanceof Error?a.message:String(a)})}})}d()}catch(a){d(a)}})},85786:a=>{a.exports=require("bun:ffi")},90017:(a,b,c)=>{}};var b=require("./webpack-runtime.js");b.C(a);var c=b.X(0,[1406,3086],()=>b(b.s=83205));module.exports=c})();
@@ -1 +1 @@
1
- {"node":{},"edge":{},"encryptionKey":"gyPSMe+G6DWoVDrJFIM5252imgXQoF+f/mUfu7km6Sw="}
1
+ {"node":{},"edge":{},"encryptionKey":"XleX5RtIoE4I6LPgR5WBS5/bYXddaEIh7Pi37G3DbOI="}
@@ -1,2 +1,2 @@
1
- "use strict";(()=>{var a={};a.id=2903,a.ids=[2903],a.modules={643:a=>{a.exports=require("node:perf_hooks")},16698:a=>{a.exports=require("node:async_hooks")},29670:(a,b,c)=>{let d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;var y,z=c(77598),A=c.n(z),B=c(73024),C=c.n(B),D=c(76760),E=c.n(D),F=c(3199),G=c(50920);c(69611);var H=c(23086),I=c(99123),J=c(53174),K=c(53410),L=c(51826);function M(a){try{let b=JSON.parse(C().readFileSync(a,"utf8"));if(!Number.isInteger(b.pid)||(b.pid??0)<=0||null!==b.startIdentity&&"string"!=typeof b.startIdentity||"string"!=typeof b.token||0===b.token.length)return null;return b}catch{return null}}function N(a){let b=M(a);if(!b)try{return Date.now()-C().statSync(a).mtimeMs>3e4}catch{return!1}if(!L.B.pidAlive(b.pid))return!0;if(null===b.startIdentity)return!1;let c=L.B.processIdentity(b.pid);return null!==c&&c!==b.startIdentity}function O(a,b){let c;try{c=C().openSync(a,"wx",384)}catch(a){if("EEXIST"===a.code)return!1;throw a}try{C().writeFileSync(c,JSON.stringify(b),"utf8"),C().fsyncSync(c)}catch(b){throw C().closeSync(c),C().rmSync(a,{force:!0}),b}return C().closeSync(c),!0}let P="agent-log-viewer-boundary";function Q(...a){return A().createHash("sha256").update(a.join("\0")).digest("hex")}function R(a,b,c="activity"){return Q("activity"===c?"llv-wakatime-heartbeat-v1":"llv-wakatime-boundary-v1",a,b)}function S(a){return{version:1,enabledAtMs:a,credentialGeneration:null,streams:{},retiredStreams:{},pending:[],retry:{failures:0,retryAtMs:0,reason:null},counters:{accepted:0,permanentlyRejected:0,compacted:0,dropped:0,historyGaps:0}}}function T(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function U(a){return"number"==typeof a&&Number.isFinite(a)}function V(a){return Number.isSafeInteger(a)&&a>=0}function W(a){if(!T(a)||1!==a.version||!U(a.enabledAtMs)||!T(a.streams)||!Array.isArray(a.pending)||!T(a.retry)||!T(a.counters))return null;let b=a.credentialGeneration??null;if(!(null===b||"string"==typeof b&&/^[a-f0-9]{64}$/.test(b)))return null;let c={};for(let[b,d]of Object.entries(a.streams)){if(!/^[a-f0-9]{64}$/.test(b)||!T(d)||"string"!=typeof d.entity||"claude"!==d.engine&&"codex"!==d.engine||"string"!=typeof d.project||0===d.project.length||!U(d.startedAtMs)||!(null===d.endedAtMs||U(d.endedAtMs))||!U(d.lastMaterializedAtMs)||!U(d.lastObservedAtMs)||!(void 0===d.boundaryFinalizedAtMs||null===d.boundaryFinalizedAtMs||U(d.boundaryFinalizedAtMs))||null!==d.endedAtMs&&d.endedAtMs<=d.startedAtMs||d.lastMaterializedAtMs<d.startedAtMs-1)return null;c[b]={entity:d.entity,engine:d.engine,project:d.project,startedAtMs:d.startedAtMs,endedAtMs:d.endedAtMs,lastMaterializedAtMs:d.lastMaterializedAtMs,lastObservedAtMs:d.lastObservedAtMs,boundaryFinalizedAtMs:d.boundaryFinalizedAtMs??null}}let d={},e=a.retiredStreams??{};if(!T(e))return null;for(let[a,b]of Object.entries(e)){if(!/^[a-f0-9]{64}$/.test(a)||!T(b)||!U(b.lastMaterializedAtMs)||!U(b.lastObservedAtMs)||!(null===b.boundaryFinalizedAtMs||U(b.boundaryFinalizedAtMs))||!U(b.expiresAtMs))return null;d[a]={lastMaterializedAtMs:b.lastMaterializedAtMs,lastObservedAtMs:b.lastObservedAtMs,boundaryFinalizedAtMs:b.boundaryFinalizedAtMs,expiresAtMs:b.expiresAtMs}}let f=[],g=new Set;for(let b of a.pending){var h;if(!T(b)||"string"!=typeof b.key||!/^[a-f0-9]{64}$/.test(b.key)||"string"!=typeof b.stream||!U(b.createdAtMs))return null;let a=T(h=b.heartbeat)&&"string"==typeof h.entity&&0!==h.entity.length&&"app"===h.type&&"string"==typeof h.project&&0!==h.project.length&&"ai coding"===h.category&&U(h.time)&&"string"==typeof h.ai_session&&64===h.ai_session.length?{entity:h.entity,type:"app",project:h.project,category:"ai coding",time:h.time,ai_session:h.ai_session}:null;if(!a)return null;let d=void 0===b.kind?"activity":b.kind;if("activity"!==d&&"boundary"!==d)return null;let e=c[b.stream],i=1e3*a.time;if(!e||!Number.isSafeInteger(i)||a.ai_session!==b.stream||a.entity!==("boundary"===d?`agent-log-viewer/boundary/${b.stream.slice(0,16)}`:e.entity)||a.project!==("boundary"===d?P:e.project)||b.key!==R(b.stream,i,d))return null;g.has(b.key)||(f.push({key:b.key,stream:b.stream,kind:d,createdAtMs:b.createdAtMs,heartbeat:a}),g.add(b.key))}let i=a.retry,j=i.reason;if(!V(i.failures)||!U(i.retryAtMs)||null!==j&&"network"!==j&&"timeout"!==j&&"rate_limit"!==j&&"server"!==j&&"auth"!==j)return null;let k=a.counters;return V(k.accepted)&&V(k.permanentlyRejected)&&V(k.compacted)&&V(k.dropped)&&V(k.historyGaps)?{version:1,enabledAtMs:a.enabledAtMs,credentialGeneration:b,streams:c,pending:f,retry:{failures:i.failures,retryAtMs:i.retryAtMs,reason:j},counters:{accepted:k.accepted,permanentlyRejected:k.permanentlyRejected,compacted:k.compacted,dropped:k.dropped,historyGaps:k.historyGaps},retiredStreams:d}:null}function X(a=(0,G.ks)("wakatime-api-key")){let b=null;try{b=C().openSync(a,C().constants.O_RDONLY|C().constants.O_NOFOLLOW);let c=C().fstatSync(b);if(!c.isFile()||(511&c.mode)!=384)return null;let d=C().readFileSync(b,"utf8").trim();return d?{value:d,sourceStamp:`file:${c.dev}:${c.ino}:${c.size}:${c.mtimeMs}:${c.ctimeMs}`}:null}catch{return null}finally{null!==b&&C().closeSync(b)}}function Y(a=(0,G.BQ)("wakatime-state.json")){try{return JSON.parse(C().readFileSync(a,"utf8"))}catch(a){if("ENOENT"===a.code)return null;throw a}}function Z(a,b=(0,G.BQ)("wakatime-state.json")){return(0,K.Ol)(b,"WakaTime state is busy",()=>{let c=W(Y(b));if(c){let b=new Set(a.pending.map(a=>a.key));for(let[d,e]of Object.entries(c.streams))if(e.entity.startsWith("agent-log-viewer/operator/")&&!a.streams[d])for(let f of(a.streams[d]=e,c.pending))f.stream!==d||b.has(f.key)||(a.pending.push(f),b.add(f.key))}C().mkdirSync(E().dirname(b),{recursive:!0,mode:448});let d=E().join(E().dirname(b),`.${E().basename(b)}.${process.pid}.${A().randomUUID()}.tmp`);try{C().writeFileSync(d,`${JSON.stringify(a,null,2)}
2
- `,{encoding:"utf8",mode:384}),C().renameSync(d,b)}finally{try{C().unlinkSync(d)}catch{}}return a})}let $=globalThis,_={files:[],projectCatalog:[],complete:!1};async function aa(a=process.env,b=H.TF,c=H.Ll){return"1"===a.LLV_WAKATIME_SYNC_WORKER?b()??_:(await c()).snapshot}!$.__llvWakatimeSync&&function(a=process.env){return"1"===a.LLV_WAKATIME_ENABLED}()&&(y=(void 0)??{scan:()=>aa(),registrySnapshot:()=>(0,F.tk)().readOnlySnapshot(),recentTurnWindows:I.P7,readCredential:X,readState:Y,writeState:Z,fetch:(a,b)=>fetch(a,b),now:Date.now,random:Math.random,scheduleInterval:(a,b)=>setInterval(a,b),scheduleTimeout:(a,b)=>setTimeout(a,b),clearTimer:a=>clearTimeout(a),acquireSchedulerLease:()=>(function(a){C().mkdirSync(E().dirname(a),{recursive:!0,mode:448});let b=`${a}.recovery`,c={pid:process.pid,startIdentity:L.B.processIdentity(process.pid),token:A().randomUUID()};if(!function(a,b){for(let c=0;c<2;c+=1)try{if(C().mkdirSync(a,{mode:448}),!O(E().join(a,"owner.json"),b))throw Error("scheduler recovery owner already exists");return!0}catch(b){if("EEXIST"!==b.code)throw b;if(!function(a){let b=E().join(a,"owner.json");if(M(b))return N(b);try{return Date.now()-C().statSync(a).mtimeMs>3e4}catch{return!1}}(a))return!1;C().rmSync(a,{recursive:!0,force:!0})}return!1}(b,c))return null;let d=!1;try{!(d=O(a,c))&&N(a)&&(C().rmSync(a,{force:!0}),d=O(a,c))}finally{var e;e=c.token,M(E().join(b,"owner.json"))?.token===e&&C().rmSync(b,{recursive:!0,force:!0})}if(!d)return null;let f=!0;return{isHeld:()=>(f&&M(a)?.token===c.token||(f=!1),f),release(){var b;f&&(b=c.token,M(a)?.token===b&&C().rmSync(a,{force:!0})),f=!1}}})((0,G.BQ)("wakatime-scheduler-owner.json")),logger:(a,b)=>console.error(`[wakatime] ${a}`,b)},d=null,e=null,f=!1,g=!1,h=null,i=null,j=!1,k=new Set,l=new Map,m=Math.max(1,y.limits?.maxPending??1e4),n=Math.max(1,y.limits?.maxStreams??5e3),o=(a,b={},c=!1)=>{let d=y.now();!c&&d-(l.get(a)??-1/0)<36e5||(l.set(a,d),y.logger(a,b))},p=async()=>{if(d)return d;try{let a=await y.readState();null===a?d=S(y.now()):(d=W(a))||(d=S(y.now()),o("corrupt_state_recovered"))}catch{d=S(y.now()),o("corrupt_state_recovered")}return d},q=async a=>{try{let b=await y.writeState(structuredClone(a));return b&&Object.assign(a,structuredClone(b)),!0}catch{return o("state_write_failed"),!1}},r=async a=>{let b=y.now(),c=new Set(a.pending.map(a=>a.key)),d=[],e={files:[],complete:!1};try{e=await y.scan()}catch{o("observation_failed")}if(e.complete)try{let b=y.registrySnapshot(),c=(0,F.oP)(b);for(let b of e.files){var f,g;if("claude"!==b.engine&&"codex"!==b.engine||"claude-projects"!==b.root&&"codex-sessions"!==b.root||!b.path.endsWith(".jsonl")||!0!==b.derivationComplete)continue;let e=c.conversationForPath(b.path),h=e?.generations.at(-1);if(!e||!h||h.path!==b.path||e.engine!==b.engine)continue;let i=y.recentTurnWindows(b);if(!i.complete)continue;i.prefixTruncated&&!k.has(b.path)&&(k.add(b.path),a.counters.historyGaps+=1,o("history_gap",{count:a.counters.historyGaps}));let j=(0,J.x)({projectOwnership:e.projectOwnership,cwd:h.launchProfile.cwd||b.cwd,launchProfileProject:h.launchProfile.project,fallbackProject:b.project}).project;if(!j)continue;let l="running"===b.proc&&null!==b.pid&&"pane_at_composer"!==b.activityReason&&b.authoritativeTurn?.state!=="terminal"&&b.authoritativeTurn?.state!=="idle"&&null===b.pendingQuestion&&null===b.waitingInput;for(let a of i.windows)d.push({source:{engine:b.engine,lastActivityAtMs:1e3*b.mtime},streamKey:(f=e.id,g=a.startedAt,Q("llv-wakatime-v1",f,g)),project:j,window:a,openWindowActive:l})}}catch{o("observation_failed")}let h=d.map(c=>null!==c.window.endedAt?c.window.endedAt:c.openWindowActive?b:Math.min(b,Math.max(c.window.startedAt,c.source.lastActivityAtMs,a.streams[c.streamKey]?.lastObservedAtMs??c.window.startedAt))),i=Array(d.length).fill(!1),j=new Map;for(let a=0;a<d.length;a+=1){let b=j.get(d[a].project)??[];b.push(a),j.set(d[a].project,b)}for(let a of j.values()){let b=[...a].sort((a,b)=>d[a].window.startedAt-d[b].window.startedAt),c=a.filter(a=>null!==d[a].window.endedAt||!d[a].openWindowActive).sort((a,b)=>h[a]-h[b]),e=0,f=-1/0,g=!1;for(let a of c){let c=h[a];for(;e<b.length&&d[b[e]].window.startedAt<=c;){let a=b[e],c=h[a],i=null===d[a].window.endedAt&&d[a].openWindowActive;c>f?(f=c,g=i):c===f&&i&&(g=!0),e+=1}i[a]=f>c||f===c&&g}}for(let e=0;e<d.length;e+=1){let f=d[e];!function(a,b,c,d,e,f,g,h,i){if(!(U(e.startedAt)&&e.startedAt>0&&(null===e.endedAt||U(e.endedAt)&&e.endedAt>e.startedAt))||null!==e.endedAt&&e.endedAt<=a.enabledAtMs||null!==e.endedAt&&e.endedAt<f-2592e6)return;let j=Math.max(e.startedAt,a.enabledAtMs),k=a.streams[c],l=a.retiredStreams?.[c];if(null===e.endedAt&&!h&&!k&&!l&&b.lastActivityAtMs<=a.enabledAtMs)return;let m=Math.min(f,Math.max(j,b.lastActivityAtMs,k?.lastObservedAtMs??l?.lastObservedAtMs??j)),n=e.endedAt??(h?f:m);if(n<j||!k&&l&&n<=l.lastMaterializedAtMs&&l.boundaryFinalizedAtMs===n)return;let o=k??{entity:`agent-log-viewer/${b.engine}/${c.slice(0,16)}`,engine:b.engine,project:d,startedAtMs:e.startedAt,endedAtMs:e.endedAt,lastMaterializedAtMs:Math.max(j-1,l?.lastMaterializedAtMs??j-1),lastObservedAtMs:l?.lastObservedAtMs??f,boundaryFinalizedAtMs:l?.boundaryFinalizedAtMs??null};l&&delete a.retiredStreams?.[c],o.endedAtMs=e.endedAt,o.lastObservedAtMs=e.endedAt??(h?f:m),a.streams[c]=o;let p=o.lastMaterializedAtMs<j?null:o.lastMaterializedAtMs,q=null!==e.endedAt||!h,r=o.boundaryFinalizedAtMs===n;for(let b of function(a,b,c,d){let e=[];null===d&&e.push(a);let f=a+12e4;for(null!==d&&(f+=12e4*Math.max(0,Math.floor((d-a)/12e4)));f<=b;)(null===d||f>d)&&e.push(f),f+=12e4;return c&&b>a&&(null===d||b>=d)&&e.at(-1)!==b&&e.push(b),e}(j,n,q&&!r,p)){let d=q&&b===n&&i?"boundary":"activity",e=R(c,b,d);g.has(e)||(a.pending.push({key:e,stream:c,kind:d,createdAtMs:f,heartbeat:{entity:"boundary"===d?`agent-log-viewer/boundary/${c.slice(0,16)}`:o.entity,type:"app",project:"boundary"===d?P:o.project,category:"ai coding",time:b/1e3,ai_session:c}}),g.add(e))}o.lastMaterializedAtMs=Math.max(o.lastMaterializedAtMs,n),q&&(o.boundaryFinalizedAtMs=n)}(a,f.source,f.streamKey,f.project,f.window,b,c,f.openWindowActive,!i[e])}},s=(a,b,c=0,d=null)=>{var e;a.retry.failures+=1;let f="auth"===b?9e5:Math.max((e=a.retry.failures,Math.min(9e5,Math.round(Math.min(3e4*2**Math.max(0,e-1),9e5)*(.8+.4*Math.min(1,Math.max(0,y.random())))))),c);a.retry.reason=b,a.retry.retryAtMs=y.now()+f,o(`${b}_backoff`,{failures:a.retry.failures,retryAtMs:a.retry.retryAtMs,status:d})},t=async a=>{var b;let c;if(0===a.pending.length)return;let d=await y.readCredential();if(!d?.value.trim()){j=!0,o("missing_credential",{pending:a.pending.length});return}j&&(j=!1,o("credential_recovered",{pending:a.pending.length},!0));let e=Q("llv-wakatime-credential-generation-v1",d.sourceStamp);if(a.credentialGeneration!==e&&("auth"===a.retry.reason&&(a.retry={failures:0,retryAtMs:0,reason:null}),a.credentialGeneration=e,!await q(a))||a.retry.retryAtMs>y.now())return;let f=a.pending.slice(0,25),g=new AbortController;h=g;let i=!1,k=y.scheduleTimeout(()=>{i=!0,g.abort()},5e3);k.unref?.();let l=null;try{c=await y.fetch("https://api.wakatime.com/api/v1/users/current/heartbeats.bulk",{method:"POST",redirect:"manual",headers:{Authorization:`Basic ${(b=d.value.trim(),Buffer.from(b,"utf8").toString("base64"))}`,"Content-Type":"application/json","User-Agent":"agent-log-viewer-wakatime/1"},body:JSON.stringify(f.map(a=>a.heartbeat)),signal:g.signal}),(201===c.status||202===c.status)&&(l=await c.text())}catch{s(a,i?"timeout":"network"),await q(a);return}finally{y.clearTimer(k),h===g&&(h=null)}if(201===c.status||202===c.status){let b=function(a,b){let c;try{c=JSON.parse(a)}catch{return null}if(!T(c)||!Array.isArray(c.responses)||c.responses.length!==b)return null;let d=[];for(let a of c.responses){if(!Array.isArray(a)||2!==a.length||!T(a[0])||!Number.isInteger(a[1]))return null;let b=a[1];if(b<100||b>599)return null;if(b>=200&&b<300){if(!T(a[0].data)||"string"!=typeof a[0].data.id||0===a[0].data.id.length)return null}else if(!("string"==typeof a[0].error||T(a[0].errors)))return null;d.push(b)}return d}(l??"",f.length);if(!b){o("malformed_bulk_response",{status:c.status,expected:f.length}),s(a,"server",0,c.status),await q(a);return}let d=new Set,e=0,g=0,h=null,i=null;for(let a=0;a<b.length;a+=1){let c=b[a],j=401===c||403===c?"auth":302===c||429===c?"rate_limit":408===c||409===c||425===c||c>=500||c<200||c>=300&&c<400?"server":null;c>=200&&c<300?(d.add(f[a].key),e+=1):j?(null===h||"auth"===j||"rate_limit"===j&&"server"===h)&&(h=j,i=c):(d.add(f[a].key),g+=1)}a.pending=a.pending.filter(a=>!d.has(a.key)),a.counters.accepted+=e,a.counters.permanentlyRejected+=g,g>0&&o("permanent_rejection",{status:null,count:g});let j=a.retry.reason;h?s(a,h,0,i):a.retry={failures:0,retryAtMs:0,reason:null},j&&!h&&o("delivery_recovered",{accepted:e},!0),await q(a);return}if(302===c.status||429===c.status){s(a,"rate_limit",function(a,b){if(!a)return 0;let c=Number(a);if(Number.isFinite(c)&&c>=0)return Math.min(1e3*c,864e5);let d=Date.parse(a);return Number.isFinite(d)?Math.min(Math.max(0,d-b),864e5):0}(c.headers.get("retry-after"),y.now()),c.status),await q(a);return}if(401===c.status||403===c.status){s(a,"auth",0,c.status),await q(a);return}if(408===c.status||409===c.status||425===c.status||c.status>=500&&c.status<600){s(a,"server",0,c.status),await q(a);return}if(c.status>=400&&c.status<500){let b=new Set(f.map(a=>a.key));a.pending=a.pending.filter(a=>!b.has(a.key)),a.counters.permanentlyRejected+=f.length,a.retry={failures:0,retryAtMs:0,reason:null},o("permanent_rejection",{status:c.status,count:f.length}),await q(a);return}s(a,"network"),await q(a)},u=async()=>{let a=await p();try{await r(a)}catch{o("observation_failed");return}let b=a.counters.compacted,c=a.counters.dropped;if(!function(a,b,c,d){for(let[c,d]of(a.retiredStreams??={},Object.entries(a.retiredStreams)))d.expiresAtMs<b&&delete a.retiredStreams[c];let e=new Set(a.pending.map(a=>a.stream));for(let[c,d]of Object.entries(a.streams))null!==d.endedAtMs&&d.endedAtMs<b-2592e6&&!e.has(c)&&delete a.streams[c];if(a.pending.length>c){let b=function(a){let b=new Map;for(let c of a.pending){let a=b.get(c.stream)??[];a.push(c),b.set(c.stream,a)}let c=[];for(let d of b.values()){if(d.sort((a,b)=>a.heartbeat.time-b.heartbeat.time),d.length<=3){c.push(...d);continue}let b=new Set([d[0],d.at(-1)]),e=a.streams[d[0].stream];if(e?.endedAtMs!==null){let a=d.find(a=>1e3*a.heartbeat.time===e.endedAtMs);a&&b.add(a)}let f=1e3*d[0].heartbeat.time;for(let a of d.slice(1,-1)){let c=1e3*a.heartbeat.time;c-f>=6e5&&(b.add(a),f=c)}c.push(...d.filter(a=>b.has(a)))}c.sort((a,b)=>a.createdAtMs-b.createdAtMs||a.heartbeat.time-b.heartbeat.time);let d=a.pending.length-c.length;return a.pending=c,d}(a);a.counters.compacted+=b}for(;a.pending.length>c;){let b=[...new Set(a.pending.map(a=>a.stream))].sort((b,c)=>(a.streams[b]?.lastObservedAtMs??0)-(a.streams[c]?.lastObservedAtMs??0))[0];if(!b)break;let c=a.pending.length;a.pending=a.pending.filter(a=>a.stream!==b),delete a.streams[b],a.counters.dropped+=c-a.pending.length}let f=Object.entries(a.streams).sort((a,b)=>Number(e.has(a[0]))-Number(e.has(b[0]))||a[1].lastObservedAtMs-b[1].lastObservedAtMs);for(;f.length>d;){let[c]=f.shift(),d=a.streams[c],e=a.pending.length;a.pending=a.pending.filter(a=>a.stream!==c),a.counters.dropped+=e-a.pending.length,e===a.pending.length&&(a.retiredStreams[c]={lastMaterializedAtMs:d.lastMaterializedAtMs,lastObservedAtMs:d.lastObservedAtMs,boundaryFinalizedAtMs:d.boundaryFinalizedAtMs??null,expiresAtMs:Math.max(b,d.endedAtMs??d.lastObservedAtMs)+2592e6}),delete a.streams[c]}}(a,y.now(),m,n),(a.counters.compacted!==b||a.counters.dropped!==c)&&o("queue_bounded",{compacted:a.counters.compacted-b,dropped:a.counters.dropped-c,pending:a.pending.length}),await q(a))try{await t(a)}catch{o("delivery_failed")}},v=()=>{if(g)return Promise.resolve();try{if(i&&!i.isHeld()&&(i.release(),i=null),i??=y.acquireSchedulerLease(),!i?.isHeld())return Promise.resolve()}catch{return o("scheduler_lease_failed"),Promise.resolve()}if(e)return f=!0,e;let a=e=u().catch(()=>o("tick_failed"));return a.finally(()=>{e=null,f&&!g&&(f=!1,v())}),a},w=y.scheduleTimeout(()=>{v()},0),w.unref?.(),x=y.scheduleInterval(()=>{v()},6e4),x.unref?.(),Promise.resolve().then(()=>y.readCredential()).then(a=>o("enabled",{credentialPresent:!!a?.value.trim()},!0),()=>o("enabled",{credentialPresent:!1},!0)),$.__llvWakatimeSync={tick:v,stop(){if(g)return;g=!0,f=!1,y.clearTimer(w),y.clearTimer(x),h?.abort();let a=()=>{i?.release(),i=null};e?e.finally(a):a()}}),setInterval(()=>void 0,6e4)},31421:a=>{a.exports=require("node:child_process")},46193:a=>{a.exports=require("node:string_decoder")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},57975:a=>{a.exports=require("node:util")},73024:a=>{a.exports=require("node:fs")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},85786:a=>{a.exports=require("bun:ffi")}};var b=require("./webpack-runtime.js");b.C(a);var c=b.X(0,[7045,3086],()=>b(b.s=29670));module.exports=c})();
1
+ "use strict";(()=>{var a={};a.id=2903,a.ids=[2903],a.modules={643:a=>{a.exports=require("node:perf_hooks")},16698:a=>{a.exports=require("node:async_hooks")},17499:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{FE:()=>E});var e=c(77598),f=c.n(e),g=c(73024),h=c.n(g),i=c(76760),j=c.n(i),k=c(3199),l=c(50920);c(69611);var m=c(23086),n=c(99123),o=c(53174),p=c(53410),q=c(72984),r=c(52748),s=a([m]);m=(s.then?(await s)():s)[0];let F="agent-log-viewer-boundary";function t(...a){return f().createHash("sha256").update(a.join("\0")).digest("hex")}function u(a,b,c="activity"){return t("activity"===c?"llv-wakatime-heartbeat-v1":"llv-wakatime-boundary-v1",a,b)}function v(a){return{version:1,enabledAtMs:a,credentialGeneration:null,streams:{},retiredStreams:{},pending:[],retry:{failures:0,retryAtMs:0,reason:null},counters:{accepted:0,permanentlyRejected:0,compacted:0,dropped:0,historyGaps:0}}}function w(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function x(a){return"number"==typeof a&&Number.isFinite(a)}function y(a){return Number.isSafeInteger(a)&&a>=0}function z(a){if(!w(a)||1!==a.version||!x(a.enabledAtMs)||!w(a.streams)||!Array.isArray(a.pending)||!w(a.retry)||!w(a.counters))return null;let b=a.credentialGeneration??null;if(!(null===b||"string"==typeof b&&/^[a-f0-9]{64}$/.test(b)))return null;let c={};for(let[b,d]of Object.entries(a.streams)){if(!/^[a-f0-9]{64}$/.test(b)||!w(d)||"string"!=typeof d.entity||"claude"!==d.engine&&"codex"!==d.engine||"string"!=typeof d.project||0===d.project.length||!x(d.startedAtMs)||!(null===d.endedAtMs||x(d.endedAtMs))||!x(d.lastMaterializedAtMs)||!x(d.lastObservedAtMs)||!(void 0===d.boundaryFinalizedAtMs||null===d.boundaryFinalizedAtMs||x(d.boundaryFinalizedAtMs))||null!==d.endedAtMs&&d.endedAtMs<=d.startedAtMs||d.lastMaterializedAtMs<d.startedAtMs-1)return null;c[b]={entity:d.entity,engine:d.engine,project:d.project,startedAtMs:d.startedAtMs,endedAtMs:d.endedAtMs,lastMaterializedAtMs:d.lastMaterializedAtMs,lastObservedAtMs:d.lastObservedAtMs,boundaryFinalizedAtMs:d.boundaryFinalizedAtMs??null}}let d={},e=a.retiredStreams??{};if(!w(e))return null;for(let[a,b]of Object.entries(e)){if(!/^[a-f0-9]{64}$/.test(a)||!w(b)||!x(b.lastMaterializedAtMs)||!x(b.lastObservedAtMs)||!(null===b.boundaryFinalizedAtMs||x(b.boundaryFinalizedAtMs))||!x(b.expiresAtMs))return null;d[a]={lastMaterializedAtMs:b.lastMaterializedAtMs,lastObservedAtMs:b.lastObservedAtMs,boundaryFinalizedAtMs:b.boundaryFinalizedAtMs,expiresAtMs:b.expiresAtMs}}let f=[],g=new Set;for(let b of a.pending){var h;if(!w(b)||"string"!=typeof b.key||!/^[a-f0-9]{64}$/.test(b.key)||"string"!=typeof b.stream||!x(b.createdAtMs))return null;let a=(h=b.heartbeat,w(h)&&"string"==typeof h.entity&&0!==h.entity.length&&"app"===h.type&&"string"==typeof h.project&&0!==h.project.length&&"ai coding"===h.category&&x(h.time)&&"string"==typeof h.ai_session&&64===h.ai_session.length?{entity:h.entity,type:"app",project:h.project,category:"ai coding",time:h.time,ai_session:h.ai_session}:null);if(!a)return null;let d=void 0===b.kind?"activity":b.kind;if("activity"!==d&&"boundary"!==d)return null;let e=c[b.stream],i=1e3*a.time;if(!e||!Number.isSafeInteger(i)||a.ai_session!==b.stream||a.entity!==("boundary"===d?`agent-log-viewer/boundary/${b.stream.slice(0,16)}`:e.entity)||a.project!==("boundary"===d?F:e.project)||b.key!==u(b.stream,i,d))return null;g.has(b.key)||(f.push({key:b.key,stream:b.stream,kind:d,createdAtMs:b.createdAtMs,heartbeat:a}),g.add(b.key))}let i=a.retry,j=i.reason;if(!y(i.failures)||!x(i.retryAtMs)||null!==j&&"network"!==j&&"timeout"!==j&&"rate_limit"!==j&&"server"!==j&&"auth"!==j)return null;let k=a.counters;return y(k.accepted)&&y(k.permanentlyRejected)&&y(k.compacted)&&y(k.dropped)&&y(k.historyGaps)?{version:1,enabledAtMs:a.enabledAtMs,credentialGeneration:b,streams:c,pending:f,retry:{failures:i.failures,retryAtMs:i.retryAtMs,reason:j},counters:{accepted:k.accepted,permanentlyRejected:k.permanentlyRejected,compacted:k.compacted,dropped:k.dropped,historyGaps:k.historyGaps},retiredStreams:d}:null}function A(a=(0,l.ks)("wakatime-api-key")){let b=null;try{b=h().openSync(a,h().constants.O_RDONLY|h().constants.O_NOFOLLOW);let c=h().fstatSync(b);if(!c.isFile()||(511&c.mode)!=384)return null;let d=h().readFileSync(b,"utf8").trim();return d?{value:d,sourceStamp:`file:${c.dev}:${c.ino}:${c.size}:${c.mtimeMs}:${c.ctimeMs}`}:null}catch{return null}finally{null!==b&&h().closeSync(b)}}function B(a=(0,l.BQ)("wakatime-state.json")){try{return JSON.parse(h().readFileSync(a,"utf8"))}catch(a){if("ENOENT"===a.code)return null;throw a}}function C(a,b=(0,l.BQ)("wakatime-state.json")){return(0,p.Ol)(b,"WakaTime state is busy",()=>{let c=z(B(b));if(c){let b=new Set(a.pending.map(a=>a.key));for(let[d,e]of Object.entries(c.streams))if(e.entity.startsWith("agent-log-viewer/operator/")&&!a.streams[d])for(let f of(a.streams[d]=e,c.pending))f.stream!==d||b.has(f.key)||(a.pending.push(f),b.add(f.key))}h().mkdirSync(j().dirname(b),{recursive:!0,mode:448});let d=j().join(j().dirname(b),`.${j().basename(b)}.${process.pid}.${f().randomUUID()}.tmp`);try{h().writeFileSync(d,`${JSON.stringify(a,null,2)}
2
+ `,{encoding:"utf8",mode:384}),h().renameSync(d,b)}finally{try{h().unlinkSync(d)}catch{}}return a})}let G=globalThis,H={files:[],projectCatalog:[],complete:!1};async function D(a=process.env,b=m.TF,c=m.Ll){return"1"===a.LLV_WAKATIME_SYNC_WORKER?b()??H:(await c()).snapshot}function E(a){var b;let c,d,e,f,g,h,i,j,m,p,s,y,E,H,I,J,K,L,M,N,O;!G.__llvWakatimeSync&&(a||(0,r.N)())&&(b=a??{scan:()=>D(),registrySnapshot:()=>(0,k.tk)().readOnlySnapshot(),recentTurnWindows:n.P7,readCredential:A,readState:B,writeState:C,fetch:(a,b)=>fetch(a,b),now:Date.now,random:Math.random,scheduleInterval:(a,b)=>setInterval(a,b),scheduleTimeout:(a,b)=>setTimeout(a,b),clearTimer:a=>clearTimeout(a),acquireSchedulerLease:()=>(0,q.X)((0,l.BQ)("wakatime-scheduler-owner.json")),logger:(a,b)=>console.error(`[wakatime] ${a}`,b)},c=null,d=null,e=!1,f=!1,g=null,h=null,i=!1,j=new Set,m=new Map,p=Math.max(1,b.limits?.maxPending??1e4),s=Math.max(1,b.limits?.maxStreams??5e3),y=(a,c={},d=!1)=>{let e=b.now();!d&&e-(m.get(a)??-1/0)<36e5||(m.set(a,e),b.logger(a,c))},E=async()=>{if(c)return c;try{let a=await b.readState();null===a?c=v(b.now()):(c=z(a))||(c=v(b.now()),y("corrupt_state_recovered"))}catch{c=v(b.now()),y("corrupt_state_recovered")}return c},H=async a=>{try{let c=await b.writeState(structuredClone(a));return c&&Object.assign(a,structuredClone(c)),!0}catch{return y("state_write_failed"),!1}},I=async a=>{let c=b.now(),d=new Set(a.pending.map(a=>a.key)),e=[],f={files:[],complete:!1};try{f=await b.scan()}catch{y("observation_failed")}if(f.complete)try{let c=b.registrySnapshot(),d=(0,k.oP)(c);for(let c of f.files){var g,h;if("claude"!==c.engine&&"codex"!==c.engine||"claude-projects"!==c.root&&"codex-sessions"!==c.root||!c.path.endsWith(".jsonl")||!0!==c.derivationComplete)continue;let f=d.conversationForPath(c.path),i=f?.generations.at(-1);if(!f||!i||i.path!==c.path||f.engine!==c.engine)continue;let k=b.recentTurnWindows(c);if(!k.complete)continue;k.prefixTruncated&&!j.has(c.path)&&(j.add(c.path),a.counters.historyGaps+=1,y("history_gap",{count:a.counters.historyGaps}));let l=(0,o.x)({projectOwnership:f.projectOwnership,cwd:i.launchProfile.cwd||c.cwd,launchProfileProject:i.launchProfile.project,fallbackProject:c.project}).project;if(!l)continue;let m="running"===c.proc&&null!==c.pid&&"pane_at_composer"!==c.activityReason&&c.authoritativeTurn?.state!=="terminal"&&c.authoritativeTurn?.state!=="idle"&&null===c.pendingQuestion&&null===c.waitingInput;for(let a of k.windows)e.push({source:{engine:c.engine,lastActivityAtMs:1e3*c.mtime},streamKey:(g=f.id,h=a.startedAt,t("llv-wakatime-v1",g,h)),project:l,window:a,openWindowActive:m})}}catch{y("observation_failed")}let i=e.map(b=>null!==b.window.endedAt?b.window.endedAt:b.openWindowActive?c:Math.min(c,Math.max(b.window.startedAt,b.source.lastActivityAtMs,a.streams[b.streamKey]?.lastObservedAtMs??b.window.startedAt))),l=Array(e.length).fill(!1),m=new Map;for(let a=0;a<e.length;a+=1){let b=m.get(e[a].project)??[];b.push(a),m.set(e[a].project,b)}for(let a of m.values()){let b=[...a].sort((a,b)=>e[a].window.startedAt-e[b].window.startedAt),c=a.filter(a=>null!==e[a].window.endedAt||!e[a].openWindowActive).sort((a,b)=>i[a]-i[b]),d=0,f=-1/0,g=!1;for(let a of c){let c=i[a];for(;d<b.length&&e[b[d]].window.startedAt<=c;){let a=b[d],c=i[a],h=null===e[a].window.endedAt&&e[a].openWindowActive;c>f?(f=c,g=h):c===f&&h&&(g=!0),d+=1}l[a]=f>c||f===c&&g}}for(let b=0;b<e.length;b+=1){let f=e[b];!function(a,b,c,d,e,f,g,h,i){if(!(x(e.startedAt)&&e.startedAt>0&&(null===e.endedAt||x(e.endedAt)&&e.endedAt>e.startedAt))||null!==e.endedAt&&e.endedAt<=a.enabledAtMs||null!==e.endedAt&&e.endedAt<f-2592e6)return;let j=Math.max(e.startedAt,a.enabledAtMs),k=a.streams[c],l=a.retiredStreams?.[c];if(null===e.endedAt&&!h&&!k&&!l&&b.lastActivityAtMs<=a.enabledAtMs)return;let m=Math.min(f,Math.max(j,b.lastActivityAtMs,k?.lastObservedAtMs??l?.lastObservedAtMs??j)),n=e.endedAt??(h?f:m);if(n<j||!k&&l&&n<=l.lastMaterializedAtMs&&l.boundaryFinalizedAtMs===n)return;let o=k??{entity:`agent-log-viewer/${b.engine}/${c.slice(0,16)}`,engine:b.engine,project:d,startedAtMs:e.startedAt,endedAtMs:e.endedAt,lastMaterializedAtMs:Math.max(j-1,l?.lastMaterializedAtMs??j-1),lastObservedAtMs:l?.lastObservedAtMs??f,boundaryFinalizedAtMs:l?.boundaryFinalizedAtMs??null};l&&delete a.retiredStreams?.[c],o.endedAtMs=e.endedAt,o.lastObservedAtMs=e.endedAt??(h?f:m),a.streams[c]=o;let p=o.lastMaterializedAtMs<j?null:o.lastMaterializedAtMs,q=null!==e.endedAt||!h,r=o.boundaryFinalizedAtMs===n;for(let b of function(a,b,c,d){let e=[];null===d&&e.push(a);let f=a+12e4;for(null!==d&&(f+=12e4*Math.max(0,Math.floor((d-a)/12e4)));f<=b;)(null===d||f>d)&&e.push(f),f+=12e4;return c&&b>a&&(null===d||b>=d)&&e.at(-1)!==b&&e.push(b),e}(j,n,q&&!r,p)){let d=q&&b===n&&i?"boundary":"activity",e=u(c,b,d);g.has(e)||(a.pending.push({key:e,stream:c,kind:d,createdAtMs:f,heartbeat:{entity:"boundary"===d?`agent-log-viewer/boundary/${c.slice(0,16)}`:o.entity,type:"app",project:"boundary"===d?F:o.project,category:"ai coding",time:b/1e3,ai_session:c}}),g.add(e))}o.lastMaterializedAtMs=Math.max(o.lastMaterializedAtMs,n),q&&(o.boundaryFinalizedAtMs=n)}(a,f.source,f.streamKey,f.project,f.window,c,d,f.openWindowActive,!l[b])}},J=(a,c,d=0,e=null)=>{var f,g;let h,i;a.retry.failures+=1;let j="auth"===c?9e5:Math.max((f=a.retry.failures,g=b.random(),h=Math.min(3e4*2**Math.max(0,f-1),9e5),i=.8+.4*Math.min(1,Math.max(0,g)),Math.min(9e5,Math.round(h*i))),d);a.retry.reason=c,a.retry.retryAtMs=b.now()+j,y(`${c}_backoff`,{failures:a.retry.failures,retryAtMs:a.retry.retryAtMs,status:e})},K=async a=>{var c,d;let e;if(0===a.pending.length)return;let f=await b.readCredential();if(!f?.value.trim()){i=!0,y("missing_credential",{pending:a.pending.length});return}i&&(i=!1,y("credential_recovered",{pending:a.pending.length},!0));let h=(c=f.sourceStamp,t("llv-wakatime-credential-generation-v1",c));if(a.credentialGeneration!==h&&("auth"===a.retry.reason&&(a.retry={failures:0,retryAtMs:0,reason:null}),a.credentialGeneration=h,!await H(a))||a.retry.retryAtMs>b.now())return;let j=a.pending.slice(0,25),k=new AbortController;g=k;let l=!1,m=b.scheduleTimeout(()=>{l=!0,k.abort()},5e3);m.unref?.();let n=null;try{e=await b.fetch("https://api.wakatime.com/api/v1/users/current/heartbeats.bulk",{method:"POST",redirect:"manual",headers:{Authorization:`Basic ${(d=f.value.trim(),Buffer.from(d,"utf8").toString("base64"))}`,"Content-Type":"application/json","User-Agent":"agent-log-viewer-wakatime/1"},body:JSON.stringify(j.map(a=>a.heartbeat)),signal:k.signal}),(201===e.status||202===e.status)&&(n=await e.text())}catch{J(a,l?"timeout":"network"),await H(a);return}finally{b.clearTimer(m),g===k&&(g=null)}if(201===e.status||202===e.status){let b=function(a,b){let c;try{c=JSON.parse(a)}catch{return null}if(!w(c)||!Array.isArray(c.responses)||c.responses.length!==b)return null;let d=[];for(let a of c.responses){if(!Array.isArray(a)||2!==a.length||!w(a[0])||!Number.isInteger(a[1]))return null;let b=a[1];if(b<100||b>599)return null;if(b>=200&&b<300){if(!w(a[0].data)||"string"!=typeof a[0].data.id||0===a[0].data.id.length)return null}else if(!("string"==typeof a[0].error||w(a[0].errors)))return null;d.push(b)}return d}(n??"",j.length);if(!b){y("malformed_bulk_response",{status:e.status,expected:j.length}),J(a,"server",0,e.status),await H(a);return}let c=new Set,d=0,f=0,g=null,h=null;for(let a=0;a<b.length;a+=1){let e=b[a],i=401===e||403===e?"auth":302===e||429===e?"rate_limit":408===e||409===e||425===e||e>=500||e<200||e>=300&&e<400?"server":null;e>=200&&e<300?(c.add(j[a].key),d+=1):i?(null===g||"auth"===i||"rate_limit"===i&&"server"===g)&&(g=i,h=e):(c.add(j[a].key),f+=1)}a.pending=a.pending.filter(a=>!c.has(a.key)),a.counters.accepted+=d,a.counters.permanentlyRejected+=f,f>0&&y("permanent_rejection",{status:null,count:f});let i=a.retry.reason;g?J(a,g,0,h):a.retry={failures:0,retryAtMs:0,reason:null},i&&!g&&y("delivery_recovered",{accepted:d},!0),await H(a);return}if(302===e.status||429===e.status){J(a,"rate_limit",function(a,b){if(!a)return 0;let c=Number(a);if(Number.isFinite(c)&&c>=0)return Math.min(1e3*c,864e5);let d=Date.parse(a);return Number.isFinite(d)?Math.min(Math.max(0,d-b),864e5):0}(e.headers.get("retry-after"),b.now()),e.status),await H(a);return}if(401===e.status||403===e.status){J(a,"auth",0,e.status),await H(a);return}if(408===e.status||409===e.status||425===e.status||e.status>=500&&e.status<600){J(a,"server",0,e.status),await H(a);return}if(e.status>=400&&e.status<500){let b=new Set(j.map(a=>a.key));a.pending=a.pending.filter(a=>!b.has(a.key)),a.counters.permanentlyRejected+=j.length,a.retry={failures:0,retryAtMs:0,reason:null},y("permanent_rejection",{status:e.status,count:j.length}),await H(a);return}J(a,"network"),await H(a)},L=async()=>{let a=await E();try{await I(a)}catch{y("observation_failed");return}let c=a.counters.compacted,d=a.counters.dropped;if(!function(a,b,c,d){for(let[c,d]of(a.retiredStreams??={},Object.entries(a.retiredStreams)))d.expiresAtMs<b&&delete a.retiredStreams[c];let e=new Set(a.pending.map(a=>a.stream));for(let[c,d]of Object.entries(a.streams))null!==d.endedAtMs&&d.endedAtMs<b-2592e6&&!e.has(c)&&delete a.streams[c];if(a.pending.length>c){let b=function(a){let b=new Map;for(let c of a.pending){let a=b.get(c.stream)??[];a.push(c),b.set(c.stream,a)}let c=[];for(let d of b.values()){if(d.sort((a,b)=>a.heartbeat.time-b.heartbeat.time),d.length<=3){c.push(...d);continue}let b=new Set([d[0],d.at(-1)]),e=a.streams[d[0].stream];if(e?.endedAtMs!==null){let a=d.find(a=>1e3*a.heartbeat.time===e.endedAtMs);a&&b.add(a)}let f=1e3*d[0].heartbeat.time;for(let a of d.slice(1,-1)){let c=1e3*a.heartbeat.time;c-f>=6e5&&(b.add(a),f=c)}c.push(...d.filter(a=>b.has(a)))}c.sort((a,b)=>a.createdAtMs-b.createdAtMs||a.heartbeat.time-b.heartbeat.time);let d=a.pending.length-c.length;return a.pending=c,d}(a);a.counters.compacted+=b}for(;a.pending.length>c;){let b=[...new Set(a.pending.map(a=>a.stream))].sort((b,c)=>(a.streams[b]?.lastObservedAtMs??0)-(a.streams[c]?.lastObservedAtMs??0))[0];if(!b)break;let c=a.pending.length;a.pending=a.pending.filter(a=>a.stream!==b),delete a.streams[b],a.counters.dropped+=c-a.pending.length}let f=Object.entries(a.streams).sort((a,b)=>Number(e.has(a[0]))-Number(e.has(b[0]))||a[1].lastObservedAtMs-b[1].lastObservedAtMs);for(;f.length>d;){let[c]=f.shift(),d=a.streams[c],e=a.pending.length;a.pending=a.pending.filter(a=>a.stream!==c),a.counters.dropped+=e-a.pending.length,e===a.pending.length&&(a.retiredStreams[c]={lastMaterializedAtMs:d.lastMaterializedAtMs,lastObservedAtMs:d.lastObservedAtMs,boundaryFinalizedAtMs:d.boundaryFinalizedAtMs??null,expiresAtMs:Math.max(b,d.endedAtMs??d.lastObservedAtMs)+2592e6}),delete a.streams[c]}}(a,b.now(),p,s),(a.counters.compacted!==c||a.counters.dropped!==d)&&y("queue_bounded",{compacted:a.counters.compacted-c,dropped:a.counters.dropped-d,pending:a.pending.length}),await H(a))try{await K(a)}catch{y("delivery_failed")}},M=()=>{if(f)return Promise.resolve();try{if(h&&!h.isHeld()&&(h.release(),h=null),h??=b.acquireSchedulerLease(),!h?.isHeld())return Promise.resolve()}catch{return y("scheduler_lease_failed"),Promise.resolve()}if(d)return e=!0,d;let a=d=L().catch(()=>y("tick_failed"));return a.finally(()=>{d=null,e&&!f&&(e=!1,M())}),a},N=b.scheduleTimeout(()=>{M()},0),N.unref?.(),O=b.scheduleInterval(()=>{M()},6e4),O.unref?.(),Promise.resolve().then(()=>b.readCredential()).then(a=>y("enabled",{credentialPresent:!!a?.value.trim()},!0),()=>y("enabled",{credentialPresent:!1},!0)),G.__llvWakatimeSync={tick:M,stop(){if(f)return;f=!0,e=!1,b.clearTimer(N),b.clearTimer(O),g?.abort();let a=()=>{h?.release(),h=null};d?d.finally(a):a()}})}d()}catch(a){d(a)}})},31421:a=>{a.exports=require("node:child_process")},35092:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b);var e=c(17499),f=a([e]);e=(f.then?(await f)():f)[0],(0,e.FE)(),setInterval(()=>void 0,6e4),d()}catch(a){d(a)}})},42971:a=>{a.exports=import("zod")},46193:a=>{a.exports=require("node:string_decoder")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},52748:(a,b,c)=>{c.d(b,{N:()=>d});function d(a=process.env){return"1"===a.LLV_WAKATIME_ENABLED}},57975:a=>{a.exports=require("node:util")},72984:(a,b,c)=>{c.d(b,{X:()=>n});var d=c(77598),e=c.n(d),f=c(73024),g=c.n(f),h=c(76760),i=c.n(h),j=c(51826);function k(a){try{let b=JSON.parse(g().readFileSync(a,"utf8"));if(!Number.isInteger(b.pid)||(b.pid??0)<=0||null!==b.startIdentity&&"string"!=typeof b.startIdentity||"string"!=typeof b.token||0===b.token.length)return null;return b}catch{return null}}function l(a){let b=k(a);if(!b)try{return Date.now()-g().statSync(a).mtimeMs>3e4}catch{return!1}if(!j.B.pidAlive(b.pid))return!0;if(null===b.startIdentity)return!1;let c=j.B.processIdentity(b.pid);return null!==c&&c!==b.startIdentity}function m(a,b){let c;try{c=g().openSync(a,"wx",384)}catch(a){if("EEXIST"===a.code)return!1;throw a}try{g().writeFileSync(c,JSON.stringify(b),"utf8"),g().fsyncSync(c)}catch(b){throw g().closeSync(c),g().rmSync(a,{force:!0}),b}return g().closeSync(c),!0}function n(a){g().mkdirSync(i().dirname(a),{recursive:!0,mode:448});let b=`${a}.recovery`,c={pid:process.pid,startIdentity:j.B.processIdentity(process.pid),token:e().randomUUID()};if(!function(a,b){for(let c=0;c<2;c+=1)try{if(g().mkdirSync(a,{mode:448}),!m(i().join(a,"owner.json"),b))throw Error("scheduler recovery owner already exists");return!0}catch(b){if("EEXIST"!==b.code)throw b;if(!function(a){let b=i().join(a,"owner.json");if(k(b))return l(b);try{return Date.now()-g().statSync(a).mtimeMs>3e4}catch{return!1}}(a))return!1;g().rmSync(a,{recursive:!0,force:!0})}return!1}(b,c))return null;let d=!1;try{!(d=m(a,c))&&l(a)&&(g().rmSync(a,{force:!0}),d=m(a,c))}finally{var f;f=c.token,k(i().join(b,"owner.json"))?.token===f&&g().rmSync(b,{recursive:!0,force:!0})}if(!d)return null;let h=!0;return{isHeld:()=>(h&&k(a)?.token===c.token||(h=!1),h),release(){var b;h&&(b=c.token,k(a)?.token===b&&g().rmSync(a,{force:!0})),h=!1}}}},73024:a=>{a.exports=require("node:fs")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},85786:a=>{a.exports=require("bun:ffi")}};var b=require("./webpack-runtime.js");b.C(a);var c=b.X(0,[1406,3086],()=>b(b.s=35092));module.exports=c})();
@@ -0,0 +1 @@
1
+ self.__BUILD_MANIFEST={__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},__routerFilterStatic:{numItems:96,errorRate:1e-4,numBits:1841,numHashes:14,bitArray:[1,1,0,1,1,1,0,1,1,0,0,0,0,1,1,1,1,0,1,1,1,1,1,1,1,1,0,0,0,1,1,1,0,0,1,0,1,1,0,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,0,1,1,0,1,0,0,1,1,0,0,1,1,1,1,0,0,0,1,0,1,0,0,0,0,0,0,1,0,0,1,1,1,1,1,0,0,0,1,1,0,1,1,0,1,1,0,0,1,1,1,1,1,0,1,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,1,0,0,1,1,0,0,1,1,1,1,0,1,0,0,1,1,0,0,0,1,1,1,0,0,0,0,1,0,1,0,0,0,0,0,0,0,1,1,0,0,0,1,1,0,1,0,1,1,0,0,1,1,0,1,0,1,0,0,0,1,0,1,1,1,0,1,0,0,0,1,1,0,0,1,0,0,1,1,0,1,1,0,0,1,1,1,0,1,1,1,0,0,1,0,0,1,0,0,0,1,0,1,1,0,1,0,1,1,0,1,0,0,1,1,1,1,1,1,1,1,0,0,0,0,1,1,1,1,0,1,0,0,1,0,1,1,1,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,1,1,0,0,1,1,1,1,1,0,1,0,0,1,1,0,0,1,1,0,0,0,1,0,0,0,0,1,1,1,1,0,0,1,0,0,0,0,1,1,0,0,1,1,1,0,1,0,0,0,0,1,0,0,0,1,1,1,1,0,1,0,1,0,1,0,1,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,1,0,0,1,1,1,1,0,0,1,0,1,0,1,0,0,0,0,1,1,1,1,1,1,0,1,1,1,0,1,1,0,0,1,0,0,1,0,1,1,1,0,0,0,1,1,0,0,1,0,1,1,1,0,1,1,0,1,1,1,1,1,0,1,0,1,0,1,1,0,1,1,1,0,1,1,0,1,1,0,1,0,1,1,1,0,1,0,0,0,0,1,1,0,0,1,0,1,0,1,0,0,0,0,0,1,0,1,0,0,1,0,0,1,0,0,1,1,0,0,1,0,0,1,1,0,1,1,0,1,0,1,0,1,1,1,0,1,0,1,0,1,1,1,0,1,1,1,1,0,0,0,1,0,1,1,0,0,1,1,1,1,1,1,0,1,0,0,1,0,0,1,1,1,1,0,0,0,1,1,1,0,1,0,0,0,0,0,0,1,1,1,1,0,0,1,1,1,1,0,1,1,1,1,0,1,0,1,1,1,1,0,0,1,1,0,1,0,0,0,1,1,1,1,1,1,1,0,1,1,0,0,0,0,1,0,0,1,1,1,0,0,1,0,1,0,1,1,1,0,1,1,0,0,1,1,0,0,1,1,1,0,1,0,0,0,0,1,1,1,1,0,1,1,1,0,0,0,1,1,1,0,1,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1,0,0,0,0,0,1,0,1,0,0,0,0,1,0,0,1,1,1,0,0,0,1,1,1,1,0,1,0,0,1,0,0,0,0,1,0,0,1,1,1,1,0,0,0,1,1,1,0,1,1,0,1,1,0,1,1,1,1,0,0,1,0,1,0,1,1,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,1,1,0,0,1,1,0,1,1,1,0,0,0,1,0,0,0,0,1,0,0,0,0,1,1,0,0,1,0,1,0,1,1,0,1,1,1,0,1,1,1,0,1,1,0,1,0,1,1,0,1,0,0,1,0,0,1,1,0,1,0,1,0,1,0,1,1,0,0,0,0,1,0,1,0,0,1,0,0,0,0,1,1,1,0,1,1,1,1,0,1,0,0,0,0,1,0,0,1,1,0,0,0,1,1,1,1,0,0,1,1,0,1,1,0,1,0,1,0,1,1,1,1,0,1,0,0,1,0,1,1,1,0,0,0,1,0,0,0,1,0,0,1,1,1,0,0,1,0,0,0,0,1,1,0,0,1,1,0,1,0,1,0,0,0,1,0,1,1,0,0,1,1,0,0,1,0,0,1,1,0,1,1,1,0,0,1,1,1,0,0,1,0,1,1,0,1,0,1,1,1,0,1,0,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0,1,0,1,1,1,0,1,0,1,1,0,0,1,0,0,1,0,0,1,0,1,1,0,1,0,0,1,1,1,1,0,0,0,0,1,1,0,1,1,0,1,0,1,1,1,0,0,1,1,0,1,0,0,1,1,1,1,0,1,1,0,0,1,1,0,0,1,1,0,0,0,1,0,1,0,1,0,0,0,1,0,0,1,1,1,1,1,1,0,1,0,1,0,1,1,1,0,1,0,1,1,0,1,1,1,1,1,0,1,1,1,1,0,0,0,1,1,0,1,1,1,1,0,0,1,0,0,0,1,1,0,0,1,0,1,1,0,0,1,1,1,0,0,0,1,0,1,1,1,0,0,0,0,0,1,1,0,1,1,0,1,1,1,1,0,0,1,1,1,1,1,0,0,0,0,1,1,1,0,1,1,0,0,0,1,1,1,1,1,1,1,1,0,0,1,1,1,1,1,0,1,1,0,1,0,1,1,1,1,1,0,1,0,0,1,1,0,0,0,0,0,1,0,0,1,0,0,1,1,1,0,0,0,1,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,1,1,0,1,0,0,1,1,0,1,1,1,1,0,0,1,0,1,1,0,0,1,1,1,1,1,0,1,0,0,1,0,0,1,0,1,0,1,1,0,0,1,1,0,1,0,0,0,1,0,1,0,0,1,0,0,1,0,1,1,0,0,0,1,1,0,0,1,0,1,1,0,1,1,1,0,1,0,1,1,0,0,0,1,1,1,1,0,1,0,1,0,1,0,1,0,0,1,0,1,0,0,1,0,0,0,0,1,1,0,0,1,1,1,0,1,1,1,1,0,1,0,0,1,0,1,0,1,0,0,1,0,1,1,0,1,1,0,1,1,0,1,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,1,0,1,1,0,1,1,0,1,1,1,1,1,0,1,1,1,1,0,0,1,1,1,0,0,1,0,0,0,1,1,1,0,1,1,0,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,1,1,0,1,1,0,1,1,0,1,0,0,1,0,0,0,1,0,0,0,0,1,0,0,1,0,1,1,0,0,1,0,0,1,1,1,1,1,0,0,0,1,1,0,1,1,1,1,1,1,0,1,1,1,0,1,0,1,0,1,1,1,1,1,0,0,0,1,1,1,0,1,0,0,0,1,1,1,1,0,1,1,0,0,0,1,0,0,0,0,1,0,1,0,1,1,1,1,0,0,1,1,0,0,0,0,0,0,1,0,1,0,1,0,1,0,1,0,0,1,0,1,1,0,1,0,1,0,1,0,0,1,1,0,1,1,0,0,1,1,1,0,1,1,0,1,1,0,1,1,0,0,0,0,1,0,1,1,0,1,1,1,1,0,0,0,1,1,0,0,0,0,1,0,1,0,1,0,1,1,0,1,1,0,0,0,1,1,1,1,0,0,1,0,0,1,0,0,1,0,1,1,0,1,0,0,0,1,1,1,0,0,0,1,0,0,0,0,1,0,1,1,0,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,1,1,1,0,1,1,1,0,1,1,1,1,0,1,1,0,0,1,1,1,0,1,1,0,0,0,1,1,1,0,0,0,1,1,0,1,0,1,1,0,1,1,1,0,0,0,0,0,0,1,1,1,1,0,1,1,0,0,1,0,1,0,1,0,1,0,1,0,0,1,1,0,0,0,0,1,1,1,1,0,0,0,1,1,1,1,0,0,1,0,0,0,1,0,0,1,0,0,0,1,0,0,1,0,0,1,0,1,0,0,1,0,0,0,1,0,0,0,0,0,1,1,0,0,1,0,1,0,1]},__routerFilterDynamic:{numItems:11,errorRate:1e-4,numBits:211,numHashes:14,bitArray:[0,1,0,0,0,1,1,0,1,0,1,1,1,1,0,0,0,1,0,0,1,0,0,1,0,1,0,0,0,0,0,0,0,1,1,1,0,1,1,1,1,0,1,0,0,1,1,0,0,0,0,1,1,1,1,1,0,0,1,0,1,1,1,1,1,0,1,0,0,1,0,1,1,1,1,0,0,1,1,1,1,1,1,0,0,0,0,0,1,1,1,0,0,1,0,1,1,1,0,1,1,0,0,1,1,1,0,1,0,1,1,0,0,0,1,0,1,1,0,1,1,0,1,1,0,1,1,1,0,0,1,1,0,1,1,0,1,1,1,0,1,0,0,0,1,0,1,1,1,1,1,1,0,0,0,1,1,1,1,0,1,1,1,0,0,0,0,1,0,1,1,0,1,1,1,1,0,0,1,0,0,0,1,1,0,1,1,0,1,1,0,1,0,0,0,0,0,0,1,1,0,0,1,0,1,1,0,0,0,1,0]},sortedPages:["/_app"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();