@mndrk/agx 2.0.55 → 2.1.0

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 (762) hide show
  1. package/README.md +5 -0
  2. package/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
  3. package/cloud-runtime/standalone/apps/local/.next/app-path-routes-manifest.json +3 -0
  4. package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +3 -3
  5. package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
  6. package/cloud-runtime/standalone/apps/local/.next/required-server-files.json +5 -0
  7. package/cloud-runtime/standalone/apps/local/.next/routes-manifest.json +23 -0
  8. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page.js +1 -1
  9. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page.js.nft.json +1 -1
  10. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +1 -1
  11. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.rsc +1 -1
  12. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  13. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  14. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  15. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  16. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  17. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js +1 -1
  18. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js.nft.json +1 -1
  19. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  20. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.html +2 -2
  21. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.rsc +2 -2
  22. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  23. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  24. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  25. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  26. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  27. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  28. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js +1 -1
  29. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  30. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  31. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js +1 -1
  32. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js.nft.json +1 -1
  33. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  34. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.html +2 -2
  35. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.rsc +3 -3
  36. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_full.segment.rsc +3 -3
  37. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  38. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_index.segment.rsc +2 -2
  39. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  40. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
  41. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  42. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js +1 -1
  43. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  44. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js +4 -3
  45. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  46. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js +1 -1
  47. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  48. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/create/route.js +1 -1
  49. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/create/route.js.nft.json +1 -1
  50. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/route.js +1 -1
  51. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/route.js.nft.json +1 -1
  52. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js +2 -2
  53. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js.nft.json +1 -1
  54. package/cloud-runtime/standalone/apps/local/.next/server/app/api/daemon/route.js +2 -2
  55. package/cloud-runtime/standalone/apps/local/.next/server/app/api/daemon/route.js.nft.json +1 -1
  56. package/cloud-runtime/standalone/apps/local/.next/server/app/api/file-search/route.js.nft.json +1 -1
  57. package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js +1 -1
  58. package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js.nft.json +1 -1
  59. package/cloud-runtime/standalone/apps/local/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js +1 -1
  60. package/cloud-runtime/standalone/apps/local/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js.nft.json +1 -1
  61. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/route.js.nft.json +1 -1
  62. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/context/route.js.nft.json +1 -1
  63. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route.js.nft.json +1 -1
  64. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route.js.nft.json +1 -1
  65. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js +5 -4
  66. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js.nft.json +1 -1
  67. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/status/route.js.nft.json +1 -1
  68. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/app-paths-manifest.json +3 -0
  69. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/build-manifest.json +9 -0
  70. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/server-reference-manifest.json +4 -0
  71. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js +13 -0
  72. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js.map +5 -0
  73. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js.nft.json +1 -0
  74. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route_client-reference-manifest.js +3 -0
  75. package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js +1 -1
  76. package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js.nft.json +1 -1
  77. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js +4 -4
  78. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js.nft.json +1 -1
  79. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.js +4 -4
  80. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.js.nft.json +1 -1
  81. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js +2 -2
  82. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js.nft.json +1 -1
  83. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js +2 -2
  84. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js.nft.json +1 -1
  85. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js +3 -3
  86. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js.nft.json +1 -1
  87. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js +19 -8
  88. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js.nft.json +1 -1
  89. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js +3 -3
  90. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js.nft.json +1 -1
  91. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route/app-paths-manifest.json +3 -0
  92. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route/build-manifest.json +9 -0
  93. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route/server-reference-manifest.json +4 -0
  94. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js +28 -0
  95. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.map +5 -0
  96. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.nft.json +1 -0
  97. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route_client-reference-manifest.js +3 -0
  98. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js +9 -5
  99. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  100. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js +1 -1
  101. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js.nft.json +1 -1
  102. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js.nft.json +1 -1
  103. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js +4 -4
  104. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js.nft.json +1 -1
  105. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/cancel/route.js +1 -1
  106. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/cancel/route.js.nft.json +1 -1
  107. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/route.js +1 -1
  108. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/route.js.nft.json +1 -1
  109. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/runs/route.js +1 -1
  110. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/runs/route.js.nft.json +1 -1
  111. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js +16 -15
  112. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
  113. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/route.js +5 -5
  114. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/route.js.nft.json +1 -1
  115. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/check/[id]/route.js.nft.json +1 -1
  116. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/route.js.nft.json +1 -1
  117. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js +2 -2
  118. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js.nft.json +1 -1
  119. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js +1 -1
  120. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  121. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js +1 -1
  122. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  123. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/route.js +1 -1
  124. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/route.js.nft.json +1 -1
  125. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
  126. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/available/route.js.nft.json +1 -1
  127. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
  128. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/history/route.js.nft.json +1 -1
  129. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
  130. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/route.js.nft.json +1 -1
  131. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
  132. package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js.nft.json +1 -1
  133. package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js.nft.json +1 -1
  134. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  135. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  136. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
  137. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
  138. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
  139. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/pause/route.js.nft.json +1 -1
  140. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
  141. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
  142. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
  143. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
  144. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
  145. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
  146. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/stop/route.js.nft.json +1 -1
  147. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  148. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
  149. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
  150. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
  151. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
  152. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
  153. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
  154. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  155. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  156. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/extract/route.js.nft.json +1 -1
  157. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js +9 -8
  158. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js.nft.json +1 -1
  159. package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js +1 -1
  160. package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js.nft.json +1 -1
  161. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js +1 -1
  162. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
  163. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js +1 -1
  164. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js.nft.json +1 -1
  165. package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page/react-loadable-manifest.json +2 -2
  166. package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page.js +1 -1
  167. package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page.js.nft.json +1 -1
  168. package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page_client-reference-manifest.js +1 -1
  169. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.html +2 -2
  170. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.rsc +15 -15
  171. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_full.segment.rsc +15 -15
  172. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_head.segment.rsc +1 -1
  173. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_index.segment.rsc +2 -2
  174. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_tree.segment.rsc +3 -3
  175. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +3 -3
  176. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/automations.segment.rsc +1 -1
  177. package/cloud-runtime/standalone/apps/local/.next/server/app/board/page.js +1 -1
  178. package/cloud-runtime/standalone/apps/local/.next/server/app/board/page.js.nft.json +1 -1
  179. package/cloud-runtime/standalone/apps/local/.next/server/app/board/page_client-reference-manifest.js +1 -1
  180. package/cloud-runtime/standalone/apps/local/.next/server/app/board.html +2 -2
  181. package/cloud-runtime/standalone/apps/local/.next/server/app/board.rsc +2 -2
  182. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_full.segment.rsc +2 -2
  183. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_head.segment.rsc +1 -1
  184. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_index.segment.rsc +2 -2
  185. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_tree.segment.rsc +2 -2
  186. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
  187. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/board.segment.rsc +1 -1
  188. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page.js +1 -1
  189. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page.js.nft.json +1 -1
  190. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
  191. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.html +2 -2
  192. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.rsc +3 -3
  193. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_full.segment.rsc +3 -3
  194. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
  195. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_index.segment.rsc +2 -2
  196. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
  197. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +2 -2
  198. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
  199. package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page.js +1 -1
  200. package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page.js.nft.json +1 -1
  201. package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page_client-reference-manifest.js +1 -1
  202. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.html +2 -2
  203. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.rsc +3 -3
  204. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_full.segment.rsc +3 -3
  205. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_head.segment.rsc +1 -1
  206. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_index.segment.rsc +2 -2
  207. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_tree.segment.rsc +2 -2
  208. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/folders/__PAGE__.segment.rsc +2 -2
  209. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/folders.segment.rsc +1 -1
  210. package/cloud-runtime/standalone/apps/local/.next/server/app/index.html +2 -2
  211. package/cloud-runtime/standalone/apps/local/.next/server/app/index.rsc +2 -2
  212. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  213. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_full.segment.rsc +2 -2
  214. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_head.segment.rsc +1 -1
  215. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_index.segment.rsc +2 -2
  216. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  217. package/cloud-runtime/standalone/apps/local/.next/server/app/page.js +1 -1
  218. package/cloud-runtime/standalone/apps/local/.next/server/app/page.js.nft.json +1 -1
  219. package/cloud-runtime/standalone/apps/local/.next/server/app/page_client-reference-manifest.js +1 -1
  220. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page/react-loadable-manifest.json +2 -2
  221. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js +1 -1
  222. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
  223. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
  224. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js +1 -1
  225. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js.nft.json +1 -1
  226. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page_client-reference-manifest.js +1 -1
  227. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/app-paths-manifest.json +3 -0
  228. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/build-manifest.json +18 -0
  229. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/next-font-manifest.json +11 -0
  230. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/react-loadable-manifest.json +1 -0
  231. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/server-reference-manifest.json +4 -0
  232. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js +14 -0
  233. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.map +5 -0
  234. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.nft.json +1 -0
  235. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page_client-reference-manifest.js +3 -0
  236. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js +1 -1
  237. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
  238. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  239. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page.js +1 -1
  240. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page.js.nft.json +1 -1
  241. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page_client-reference-manifest.js +1 -1
  242. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page/react-loadable-manifest.json +8 -2
  243. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page.js +1 -1
  244. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page.js.nft.json +1 -1
  245. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page_client-reference-manifest.js +1 -1
  246. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js +1 -1
  247. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js.nft.json +1 -1
  248. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page_client-reference-manifest.js +1 -1
  249. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js +1 -1
  250. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js.nft.json +1 -1
  251. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page_client-reference-manifest.js +1 -1
  252. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js +1 -1
  253. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  254. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  255. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/page.js +1 -1
  256. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/page.js.nft.json +1 -1
  257. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/page_client-reference-manifest.js +1 -1
  258. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js +1 -1
  259. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js.nft.json +1 -1
  260. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
  261. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js +1 -1
  262. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js.nft.json +1 -1
  263. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page_client-reference-manifest.js +1 -1
  264. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js +1 -1
  265. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js.nft.json +1 -1
  266. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page_client-reference-manifest.js +1 -1
  267. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js +1 -1
  268. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js.nft.json +1 -1
  269. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page_client-reference-manifest.js +1 -1
  270. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js +1 -1
  271. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js.nft.json +1 -1
  272. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page_client-reference-manifest.js +1 -1
  273. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js +1 -1
  274. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js.nft.json +1 -1
  275. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page_client-reference-manifest.js +1 -1
  276. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js +1 -1
  277. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js.nft.json +1 -1
  278. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page_client-reference-manifest.js +1 -1
  279. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js +1 -1
  280. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
  281. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
  282. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans/page.js +1 -1
  283. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans/page.js.nft.json +1 -1
  284. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
  285. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.html +2 -2
  286. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.rsc +3 -3
  287. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_full.segment.rsc +3 -3
  288. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
  289. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_index.segment.rsc +2 -2
  290. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
  291. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +2 -2
  292. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
  293. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects.segment.rsc +1 -1
  294. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js +1 -1
  295. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js.nft.json +1 -1
  296. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  297. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.html +2 -2
  298. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.rsc +3 -3
  299. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_full.segment.rsc +3 -3
  300. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  301. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  302. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  303. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
  304. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  305. package/cloud-runtime/standalone/apps/local/.next/server/app/settings/page.js +1 -1
  306. package/cloud-runtime/standalone/apps/local/.next/server/app/settings/page.js.nft.json +1 -1
  307. package/cloud-runtime/standalone/apps/local/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  308. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.html +2 -2
  309. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.rsc +2 -2
  310. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  311. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  312. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  313. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  314. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  315. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  316. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js +1 -1
  317. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js.nft.json +1 -1
  318. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  319. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.html +2 -2
  320. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.rsc +3 -3
  321. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +3 -3
  322. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_head.segment.rsc +1 -1
  323. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_index.segment.rsc +2 -2
  324. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  325. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +2 -2
  326. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup.segment.rsc +1 -1
  327. package/cloud-runtime/standalone/apps/local/.next/server/app/skills/page.js +1 -1
  328. package/cloud-runtime/standalone/apps/local/.next/server/app/skills/page.js.nft.json +1 -1
  329. package/cloud-runtime/standalone/apps/local/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  330. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.html +2 -2
  331. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.rsc +2 -2
  332. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_full.segment.rsc +2 -2
  333. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_head.segment.rsc +1 -1
  334. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_index.segment.rsc +2 -2
  335. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
  336. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/skills/__PAGE__.segment.rsc +1 -1
  337. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/skills.segment.rsc +1 -1
  338. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js +1 -1
  339. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js.nft.json +1 -1
  340. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page_client-reference-manifest.js +1 -1
  341. package/cloud-runtime/standalone/apps/local/.next/server/app/status.html +2 -2
  342. package/cloud-runtime/standalone/apps/local/.next/server/app/status.rsc +3 -3
  343. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +3 -3
  344. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_head.segment.rsc +1 -1
  345. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_index.segment.rsc +2 -2
  346. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_tree.segment.rsc +2 -2
  347. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status/__PAGE__.segment.rsc +2 -2
  348. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status.segment.rsc +1 -1
  349. package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page.js +1 -1
  350. package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page.js.nft.json +1 -1
  351. package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
  352. package/cloud-runtime/standalone/apps/local/.next/server/app-paths-manifest.json +3 -0
  353. package/cloud-runtime/standalone/apps/local/.next/server/chunks/0jps_app_api_projects_[id]_objectives_[objectiveId]_worker_route_actions_0v8q3zz.js +3 -0
  354. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__0_au5u1._.js +3 -0
  355. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__13x93ar._.js +3 -0
  356. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0_10qfd._.js → [root-of-the-server]__0.6yz1u._.js} +2 -2
  357. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__01lsgl~._.js +4 -0
  358. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0205scg._.js → [root-of-the-server]__03.9arn._.js} +2 -2
  359. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__01ol22y._.js → [root-of-the-server]__03h0gqp._.js} +2 -2
  360. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__094z9yf._.js → [root-of-the-server]__08jo91s._.js} +2 -2
  361. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__09j9jpf._.js +3 -0
  362. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0-nye63._.js → [root-of-the-server]__09jghbu._.js} +2 -2
  363. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0_7hiof._.js +43 -0
  364. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0.jam.l._.js → [root-of-the-server]__0a0cq38._.js} +2 -2
  365. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0asvfdo._.js +54 -0
  366. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0c86535._.js +3 -0
  367. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0cj1krd._.js +3 -0
  368. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0aa-88e._.js → [root-of-the-server]__0dy3h2i._.js} +2 -2
  369. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0touqng._.js → [root-of-the-server]__0e8-2k_._.js} +2 -2
  370. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0enhv5p._.js +3 -0
  371. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0f9byr.._.js +1 -1
  372. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0g7hc1-._.js +18 -0
  373. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0g7p6pw._.js +55 -0
  374. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__019q25b._.js → [root-of-the-server]__0gj~dap._.js} +7 -7
  375. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0e6cj2y._.js → [root-of-the-server]__0hc45jw._.js} +2 -2
  376. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0avz575._.js → [root-of-the-server]__0hkcw03._.js} +2 -2
  377. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0hmw36u._.js +1 -1
  378. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0l53ok5._.js +54 -0
  379. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0n.momw._.js +8 -0
  380. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0tjo9we._.js +7 -0
  381. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0-~t2br._.js → [root-of-the-server]__0v7jjvl._.js} +2 -2
  382. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0x6w64i._.js +3 -0
  383. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__11nke7t._.js → [root-of-the-server]__0y3qxv1._.js} +2 -2
  384. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__10z8f9h._.js → [root-of-the-server]__0ygidxe._.js} +2 -2
  385. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0z82z0-._.js +49 -0
  386. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0zsv-tb._.js +8 -0
  387. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0~nnfjr._.js +3 -0
  388. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0~x4jbk._.js +3 -0
  389. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__10d.dhd._.js +229 -0
  390. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__12qy318._.js +3 -0
  391. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_039.xxy._.js +1 -1
  392. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_06oeti1._.js +49 -0
  393. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0dyy7h.._.js +3 -0
  394. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0gi7c9x._.js +2 -2
  395. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0gr.psg._.js +1 -1
  396. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0sd8z0i._.js +21 -0
  397. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0y42h_~._.js +2 -2
  398. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0~ah49q._.js +1 -1
  399. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_01kqgle._.js +11 -0
  400. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_06qet8g._.js +36 -0
  401. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0_0m2ly._.js +397 -0
  402. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0_a~bj0._.js +25 -0
  403. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0a15wtk._.js +397 -0
  404. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0bjdpen._.js +29 -0
  405. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0fr1qq6._.js +1 -1
  406. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0g.q2r6._.js +41 -0
  407. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0h7wd0e._.js +29 -0
  408. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0i7fs.i._.js +397 -0
  409. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0ipg-p6._.js +3 -0
  410. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0npxy21._.js +11 -0
  411. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0uhfa93._.js +21 -0
  412. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_12wpldq._.js +25 -0
  413. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_worker_route_actions_116303i.js +3 -0
  414. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_01hd2_5._.js +3 -0
  415. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_01pvj2g._.js +34 -0
  416. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0ik933l._.js +55 -0
  417. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0o1v.j4._.js +79 -0
  418. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0pxj122._.js +55 -0
  419. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_automations_index_ts_0_8ch28._.js +10 -0
  420. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_graph_082u-ls._.js +41 -0
  421. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_0.xgxyl._.js +4 -0
  422. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_0yu3--n._.js +4 -0
  423. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_0ze8hzc._.js +4 -0
  424. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_get-store_ts_0p0aod1._.js +5 -5
  425. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_linear-worker_ts_0ycjwem._.js +5 -0
  426. package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0gips_c.js +1 -1
  427. package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0u_5kfo.js +1 -1
  428. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/02dz_local__next-internal_server_app_projects_[slug]_folders_page_actions_03fg4j9.js +3 -0
  429. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_0tvwux2._.js +3 -0
  430. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_icons_0e2_v_.._.js +3 -0
  431. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_icons_0hvpc.y._.js +3 -0
  432. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_icons_0w3hl3p._.js +3 -0
  433. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__006vr7.._.js +3 -0
  434. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__08d5c~o._.js +3 -0
  435. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0_n~ybp._.js +3 -0
  436. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0d18x53._.js +18 -0
  437. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0fl7_-o._.js +18 -0
  438. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0h~rb5r._.js +3 -0
  439. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0j9m72.._.js +18 -0
  440. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__02.r909._.js → [root-of-the-server]__0n5g8ml._.js} +2 -2
  441. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0w.zmt6._.js +3 -0
  442. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0z7nw_r._.js +3 -0
  443. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__10h_7t0._.js +3 -0
  444. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_00trrg8._.js +3 -0
  445. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_0s~0ump._.js → _064h43p._.js} +2 -2
  446. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0742x_.._.js +3 -0
  447. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ejzn1e._.js +3 -0
  448. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0fwy5tm._.js +7 -0
  449. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0sjchy6._.js +3 -0
  450. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ufdu.z._.js +7 -0
  451. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0wk3skw._.js +3 -0
  452. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0yeuuy1._.js +25 -0
  453. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_03z24q2._.js +3 -0
  454. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0_ac-.f._.js +1 -1
  455. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0a-8i4p._.js +3 -0
  456. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0h3mfm7._.js +3 -0
  457. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_075cq2j._.js → apps_local_0k4~c1x._.js} +2 -2
  458. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_0n80y4_._.js → apps_local_0nvzo3y._.js} +2 -2
  459. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0t6p.qm._.js +3 -0
  460. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0v~bvwg._.js +3 -0
  461. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_11k_-8~._.js +1 -1
  462. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_agents_[id]_page_tsx_06n47n~._.js +1 -1
  463. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_execution-graph_page_tsx_0tn2sx9._.js +2 -2
  464. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_folders_page_tsx_0ju618z._.js +3 -0
  465. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_graph_[taskId]_page_tsx_0bctfd-._.js +1 -1
  466. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_layout_tsx_0aaa3~t._.js +1 -1
  467. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_linear_page_tsx_0a~n5y8._.js +2 -2
  468. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_page_tsx_0kcaeqi._.js +1 -1
  469. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_new_page_tsx_0yqd0a5._.js +3 -0
  470. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_page_tsx_06czvz-._.js +3 -0
  471. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_terminal_page_tsx_01n9qk.._.js +12 -12
  472. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_orphans_page_tsx_0sdv.11._.js +4 -4
  473. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_setup_page_tsx_0ql2qmr._.js +1 -1
  474. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_PromptJobBoard_tsx_06zob36._.js +8 -0
  475. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_TaskCard_tsx_0e35_z5._.js +6 -6
  476. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_chat-ui_ChatContainer_tsx_0c9fjtl._.js +3 -3
  477. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_projects_ProjectObjectivesWorkspace_tsx_0k4tfip._.js +6 -6
  478. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_thread_WorkspaceSidebar_tsx_0unv2xp._.js +1 -1
  479. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0mk0s0o.js +4 -0
  480. package/cloud-runtime/standalone/apps/local/.next/server/functions-config-manifest.json +2 -0
  481. package/cloud-runtime/standalone/apps/local/.next/server/middleware-build-manifest.js +3 -3
  482. package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
  483. package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.js +1 -1
  484. package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.json +4 -0
  485. package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
  486. package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +1 -1
  487. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.js +1 -1
  488. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.json +1 -1
  489. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0-_ukhpeg429c.js +16 -0
  490. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0-olq~7zw3wjy.js +1 -0
  491. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0142ce0jj3j7r.js → 0-vo_x2cxmjm3.js} +1 -1
  492. package/cloud-runtime/standalone/apps/local/.next/static/chunks/003q-y3exxalk.js +1 -0
  493. package/cloud-runtime/standalone/apps/local/.next/static/chunks/00po4v2x~0x_z.js +1 -0
  494. package/cloud-runtime/standalone/apps/local/.next/static/chunks/013gtut17~fne.js +23 -0
  495. package/cloud-runtime/standalone/apps/local/.next/static/chunks/014z_yruiincl.js +1 -0
  496. package/cloud-runtime/standalone/apps/local/.next/static/chunks/041-dhls9zkl1.js +1 -0
  497. package/cloud-runtime/standalone/apps/local/.next/static/chunks/04yoml2rqnuot.js +16 -0
  498. package/cloud-runtime/standalone/apps/local/.next/static/chunks/07646a0h94826.js +3 -0
  499. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0_mrpyqcoyb_5.js +1 -0
  500. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0rm7v.1y6qcni.js → 0aewbg0i704w7.js} +1 -1
  501. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0px65ynyk3t1d.js → 0bchtyu6m.2yv.js} +7 -7
  502. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0dnw31436wd~..js +5 -0
  503. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0e307b-0c2jbx.js +1 -0
  504. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0edewt9l~cs~k.css +1 -0
  505. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0f7i3ae1ynhf3.css +1 -0
  506. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0fonouj2i9qnb.js +5 -0
  507. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0gj98094p~zn4.js +1 -0
  508. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0jrkacz_dyem6.js +37 -0
  509. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0l3v45kd.9is_.js +1 -0
  510. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0lgb.0~i1xvv-.js +1 -0
  511. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0lkal3uvr6_~2.js +1 -0
  512. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0mig99af4~uos.js +28 -0
  513. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0pdrpsy-zdxp0.js +5 -0
  514. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0p~l5ap6qqx2o.js +1 -0
  515. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0r0c9y6.8.m5p.js +1 -0
  516. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0stvi5btlxl4m.js +20 -0
  517. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0h_bwlg~kk8lz.js → 0tt1oh112yv-l.js} +2 -2
  518. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0uve8xrt~0a2e.js +1 -0
  519. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0w94x-v00osq0.js +1 -0
  520. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0wh6p5~ft5rma.js +5 -0
  521. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0x_pewz9npq~q.js +1 -0
  522. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0xwny92a.ad_i.js +1 -0
  523. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0zw85-xl9ysjs.js +1 -0
  524. package/cloud-runtime/standalone/apps/local/.next/static/chunks/119v0-idpg-cv.js +16 -0
  525. package/cloud-runtime/standalone/apps/local/.next/static/chunks/11l2tww5f0hsk.js +20 -0
  526. package/cloud-runtime/standalone/apps/local/.next/static/chunks/14v~9vx3tdv85.js +1 -0
  527. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0826uh6nmsi5l.js → 1503vb7lb6.g1.js} +1 -1
  528. package/cloud-runtime/standalone/apps/local/.next/static/chunks/16d~es6h6k~rj.js +6 -0
  529. package/cloud-runtime/standalone/apps/local/.next/static/chunks/177-q0wwdi0qe.js +1 -0
  530. package/cloud-runtime/standalone/apps/local/agx-server.js +4055 -0
  531. package/cloud-runtime/standalone/apps/local/app/agents/[id]/page.tsx +40 -5
  532. package/cloud-runtime/standalone/apps/local/app/api/agents/[id]/profile/route.ts +10 -0
  533. package/cloud-runtime/standalone/apps/local/app/api/automations/route.ts +10 -2
  534. package/cloud-runtime/standalone/apps/local/app/api/linear/worker/route.ts +151 -0
  535. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/route.ts +0 -8
  536. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.ts +22 -27
  537. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/worker/route.ts +89 -0
  538. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/route.ts +13 -0
  539. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/search/route.ts +4 -4
  540. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/teams/route.ts +5 -3
  541. package/cloud-runtime/standalone/apps/local/app/api/prompt-jobs/route.ts +15 -5
  542. package/cloud-runtime/standalone/apps/local/app/globals.css +67 -5
  543. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/folders/page.tsx +25 -0
  544. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/layout.tsx +19 -5
  545. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/objectives/[objectiveId]/page.tsx +7 -2
  546. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/new/page.tsx +236 -10
  547. package/cloud-runtime/standalone/apps/local/app/setup/page.tsx +9 -1
  548. package/cloud-runtime/standalone/apps/local/bundled-server.ts +45 -0
  549. package/cloud-runtime/standalone/apps/local/components/ActionToolbar.tsx +5 -2
  550. package/cloud-runtime/standalone/apps/local/components/AutomationsBoard.tsx +35 -3
  551. package/cloud-runtime/standalone/apps/local/components/ContextMenu.tsx +2 -2
  552. package/cloud-runtime/standalone/apps/local/components/FloatingPanel.tsx +70 -20
  553. package/cloud-runtime/standalone/apps/local/components/IconButton.tsx +10 -2
  554. package/cloud-runtime/standalone/apps/local/components/KanbanBoard.tsx +84 -3
  555. package/cloud-runtime/standalone/apps/local/components/LinearBoard.tsx +434 -36
  556. package/cloud-runtime/standalone/apps/local/components/LogTimeline.tsx +4 -1
  557. package/cloud-runtime/standalone/apps/local/components/NowRunningPanel.tsx +3 -1
  558. package/cloud-runtime/standalone/apps/local/components/PromptJobBoard.tsx +119 -6
  559. package/cloud-runtime/standalone/apps/local/components/SearchCombo.tsx +3 -3
  560. package/cloud-runtime/standalone/apps/local/components/SortableTaskCard.tsx +21 -3
  561. package/cloud-runtime/standalone/apps/local/components/StatusCircle.tsx +3 -3
  562. package/cloud-runtime/standalone/apps/local/components/TaskCard.tsx +51 -1
  563. package/cloud-runtime/standalone/apps/local/components/chat-ui/ChatContainer.tsx +15 -2
  564. package/cloud-runtime/standalone/apps/local/components/chat-ui/Composer.tsx +3 -3
  565. package/cloud-runtime/standalone/apps/local/components/chat-ui/ParticipantBar.tsx +76 -9
  566. package/cloud-runtime/standalone/apps/local/components/graph/ExecutionGraphPanel.tsx +4 -1
  567. package/cloud-runtime/standalone/apps/local/components/graph/GraphFirstView.tsx +6 -2
  568. package/cloud-runtime/standalone/apps/local/components/graph/NodeDetailPanel.tsx +45 -25
  569. package/cloud-runtime/standalone/apps/local/components/graph/NodeInspector.tsx +9 -6
  570. package/cloud-runtime/standalone/apps/local/components/linear/LinearSettingsModal.tsx +105 -0
  571. package/cloud-runtime/standalone/apps/local/components/linear/LinearWorkerConfig.tsx +367 -0
  572. package/cloud-runtime/standalone/apps/local/components/projects/FoldersSummaryCard.tsx +16 -16
  573. package/cloud-runtime/standalone/apps/local/components/projects/FoldersView.tsx +856 -0
  574. package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveActivityTimeline.tsx +40 -32
  575. package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveHealthTrend.tsx +215 -0
  576. package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveScheduledTasksPanel.tsx +338 -91
  577. package/cloud-runtime/standalone/apps/local/components/projects/ProjectHome.tsx +12 -6
  578. package/cloud-runtime/standalone/apps/local/components/projects/ProjectObjectivesWorkspace.tsx +489 -467
  579. package/cloud-runtime/standalone/apps/local/components/projects/ProjectSearchBar.tsx +4 -2
  580. package/cloud-runtime/standalone/apps/local/components/projects/RecentlyCompletedCard.tsx +213 -0
  581. package/cloud-runtime/standalone/apps/local/components/projects/ScheduledTasksSummaryCard.tsx +19 -19
  582. package/cloud-runtime/standalone/apps/local/components/projects/TeamsSummaryCard.tsx +10 -10
  583. package/cloud-runtime/standalone/apps/local/components/projects/TeamsView.tsx +171 -56
  584. package/cloud-runtime/standalone/apps/local/components/projects/WorkingNowCard.tsx +12 -12
  585. package/cloud-runtime/standalone/apps/local/components/projects/home/ObjectiveCard.tsx +13 -10
  586. package/cloud-runtime/standalone/apps/local/components/projects/home/ObjectivesSection.tsx +7 -7
  587. package/cloud-runtime/standalone/apps/local/components/projects/home/ToolPathCard.tsx +2 -2
  588. package/cloud-runtime/standalone/apps/local/components/projects/home/ToolPathsSection.tsx +9 -9
  589. package/cloud-runtime/standalone/apps/local/components/scheduling/ScheduleConditionPicker.tsx +4 -4
  590. package/cloud-runtime/standalone/apps/local/components/setup/McpSetupStep.tsx +242 -0
  591. package/cloud-runtime/standalone/apps/local/components/setup/ProjectStep.tsx +2 -2
  592. package/cloud-runtime/standalone/apps/local/components/setup/ProviderStep.tsx +1 -1
  593. package/cloud-runtime/standalone/apps/local/components/setup/TeamsStep.tsx +288 -15
  594. package/cloud-runtime/standalone/apps/local/components/terminal/ProjectTerminal.tsx +233 -89
  595. package/cloud-runtime/standalone/apps/local/components/terminal/TerminalSessionList.tsx +3 -1
  596. package/cloud-runtime/standalone/apps/local/components/thread/WorkspaceSidebar.tsx +72 -21
  597. package/cloud-runtime/standalone/apps/local/hooks/useInputCapabilities.ts +74 -0
  598. package/cloud-runtime/standalone/apps/local/hooks/useSetupFlow.ts +16 -2
  599. package/cloud-runtime/standalone/apps/local/lib/app-config.ts +35 -0
  600. package/cloud-runtime/standalone/apps/local/lib/objective-health-history.ts +198 -0
  601. package/cloud-runtime/standalone/apps/local/lib/project-objective-context.ts +10 -0
  602. package/cloud-runtime/standalone/apps/local/lib/project-objectives.ts +0 -9
  603. package/cloud-runtime/standalone/apps/local/lib/pty-manager.ts +5 -1
  604. package/cloud-runtime/standalone/apps/local/lib/terminal-server.ts +182 -0
  605. package/cloud-runtime/standalone/apps/local/next.config.ts +2 -1
  606. package/cloud-runtime/standalone/apps/local/package.json +2 -2
  607. package/cloud-runtime/standalone/apps/local/playwright.config.ts +8 -0
  608. package/cloud-runtime/standalone/apps/local/server.js +1 -1
  609. package/cloud-runtime/standalone/apps/local/server.ts +14 -158
  610. package/cloud-runtime/standalone/apps/local/skills-lock.json +20 -0
  611. package/cloud-runtime/standalone/apps/local/src/automations/adapters.ts +5 -0
  612. package/cloud-runtime/standalone/apps/local/src/automations/types.ts +5 -0
  613. package/cloud-runtime/standalone/apps/local/src/automations/validation.ts +12 -5
  614. package/cloud-runtime/standalone/apps/local/src/graph/types.ts +2 -0
  615. package/cloud-runtime/standalone/apps/local/src/objectives/parser.ts +0 -2
  616. package/cloud-runtime/standalone/apps/local/src/objectives/serializer.ts +0 -2
  617. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/cron.ts +11 -0
  618. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker-constants.ts +38 -0
  619. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker-job.ts +47 -0
  620. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker.ts +482 -0
  621. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker-job.ts +47 -0
  622. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker.ts +511 -0
  623. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/processor.ts +239 -368
  624. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/store.ts +19 -4
  625. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/types.ts +32 -8
  626. package/cloud-runtime/standalone/apps/local/state/terminalTabs.ts +182 -106
  627. package/cloud-runtime/standalone/apps/local/state/windowState.ts +11 -0
  628. package/cloud-runtime/standalone/apps/local/styles/workspaceSidebar.css +65 -0
  629. package/cloud-runtime/standalone/apps/local/worker/index.js +9 -14
  630. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-arm64/pty.node +0 -0
  631. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-arm64/spawn-helper +0 -0
  632. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-x64/pty.node +0 -0
  633. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-x64/spawn-helper +0 -0
  634. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty/OpenConsole.exe +0 -0
  635. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty/conpty.dll +0 -0
  636. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty.node +0 -0
  637. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty.pdb +0 -0
  638. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.node +0 -0
  639. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.pdb +0 -0
  640. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/pty.node +0 -0
  641. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/pty.pdb +0 -0
  642. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty-agent.exe +0 -0
  643. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty-agent.pdb +0 -0
  644. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty.dll +0 -0
  645. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty.pdb +0 -0
  646. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty/OpenConsole.exe +0 -0
  647. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty/conpty.dll +0 -0
  648. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty.node +0 -0
  649. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty.pdb +0 -0
  650. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.node +0 -0
  651. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.pdb +0 -0
  652. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/pty.node +0 -0
  653. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/pty.pdb +0 -0
  654. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty-agent.exe +0 -0
  655. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty-agent.pdb +0 -0
  656. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty.dll +0 -0
  657. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty.pdb +0 -0
  658. package/lib/cli/daemon.js +13 -2
  659. package/lib/cli/onboarding.js +5 -6
  660. package/lib/cli/runCli.js +1 -1
  661. package/lib/cloud/client.js +1 -1
  662. package/lib/commands/chat.js +37 -11
  663. package/lib/commands/daemonBoard.js +19 -13
  664. package/lib/config/cloudConfig.js +1 -1
  665. package/lib/orchestrator/httpClient.js +1 -1
  666. package/lib/prompts/templates.js +8 -9
  667. package/package.json +1 -1
  668. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0-0479y._.js +0 -54
  669. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__088h0r2._.js +0 -3
  670. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__08oj_ky._.js +0 -49
  671. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__08y2lkj._.js +0 -3
  672. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__09joc_o._.js +0 -3
  673. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0gtv0rq._.js +0 -8
  674. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0gvjvx7._.js +0 -237
  675. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0ksbs9p._.js +0 -3
  676. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0o315az._.js +0 -3
  677. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0pz~m67._.js +0 -3
  678. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0q93mk3._.js +0 -7
  679. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0t2jk2r._.js +0 -18
  680. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0vhcrdv._.js +0 -229
  681. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__11s20j6._.js +0 -3
  682. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__12xhcor._.js +0 -54
  683. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_01rag2f._.js +0 -49
  684. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_03y4xss._.js +0 -21
  685. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0cm4i3i._.js +0 -3
  686. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0ijzgnb._.js +0 -3
  687. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_03q7_.q._.js +0 -21
  688. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0m3e2d~._.js +0 -30
  689. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0r-oiga._.js +0 -30
  690. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_00cwfvi._.js +0 -34
  691. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0hx7xyz._.js +0 -34
  692. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0rqcat4._.js +0 -55
  693. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0sc_lek._.js +0 -79
  694. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_135ddsu._.js +0 -55
  695. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_graph_store_ts_0h.2qy9._.js +0 -43
  696. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_processor_ts_0i1av_r._.js +0 -474
  697. package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0xxf2a0.js +0 -3
  698. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_0xd_mxu._.js +0 -3
  699. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__044xm0q._.js +0 -3
  700. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__066ay_e._.js +0 -3
  701. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__09smg3p._.js +0 -18
  702. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0bf346q._.js +0 -3
  703. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0hd2vo4._.js +0 -18
  704. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0iix1sf._.js +0 -3
  705. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0r54zr9._.js +0 -3
  706. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0s8z2_c._.js +0 -18
  707. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0wq3ukc._.js +0 -3
  708. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_03-mlx0._.js +0 -7
  709. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_03rf_sb._.js +0 -3
  710. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_09b42z9._.js +0 -3
  711. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ag3.tl._.js +0 -7
  712. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0dh_hx0._.js +0 -3
  713. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0h8cbsi._.js +0 -3
  714. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0i1ffhz._.js +0 -3
  715. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ndrb_0._.js +0 -8
  716. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0nlki7b._.js +0 -3
  717. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ut3k~7._.js +0 -3
  718. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0vibfch._.js +0 -3
  719. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0yffwm4._.js +0 -8
  720. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0_q01av._.js +0 -3
  721. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0eh.4j7._.js +0 -3
  722. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0qaowqy._.js +0 -3
  723. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0s0iy2_._.js +0 -3
  724. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0zr-_na._.js +0 -3
  725. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_10qsqky._.js +0 -3
  726. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0.a4-dh~x9sa3.js +0 -6
  727. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0.bv3h68wo33z.js +0 -1
  728. package/cloud-runtime/standalone/apps/local/.next/static/chunks/016.x9zt9~rsh.js +0 -16
  729. package/cloud-runtime/standalone/apps/local/.next/static/chunks/027-6dwgpb0cy.js +0 -1
  730. package/cloud-runtime/standalone/apps/local/.next/static/chunks/031720jijg_th.js +0 -1
  731. package/cloud-runtime/standalone/apps/local/.next/static/chunks/03m1xs0rztynh.js +0 -16
  732. package/cloud-runtime/standalone/apps/local/.next/static/chunks/051-7k0nnm-vm.js +0 -1
  733. package/cloud-runtime/standalone/apps/local/.next/static/chunks/07o~9mm~xds_b.js +0 -1
  734. package/cloud-runtime/standalone/apps/local/.next/static/chunks/08zgoptetnxjj.css +0 -1
  735. package/cloud-runtime/standalone/apps/local/.next/static/chunks/09-_2lcshmjl5.js +0 -1
  736. package/cloud-runtime/standalone/apps/local/.next/static/chunks/09_yj-9nfh48m.js +0 -1
  737. package/cloud-runtime/standalone/apps/local/.next/static/chunks/09c7ssmgohk7l.js +0 -1
  738. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0awbe2r3qazge.css +0 -1
  739. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0dro-bz6f72z0.js +0 -1
  740. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0gbunx8z.~i4x.js +0 -5
  741. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ge81r~ap.u7n.js +0 -28
  742. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ghg5160qeazw.js +0 -5
  743. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0gl_8hdxl5qnd.js +0 -37
  744. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0g~v8p6_pc46-.js +0 -1
  745. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0jb4f8425s.-2.js +0 -1
  746. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0kukkarp4un0o.js +0 -1
  747. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0m.2b-cekea8b.js +0 -1
  748. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0o0hwfzwwty4b.js +0 -6
  749. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ov5lu0tz2o2e.js +0 -1
  750. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0pt8_y9asrg~7.js +0 -1
  751. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0wyg4lymaq0hg.js +0 -3
  752. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0xl~1ux2f~rcu.js +0 -1
  753. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0y7-eze-w7~b4.js +0 -5
  754. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0y8e--tok1214.js +0 -5
  755. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0yy~0bgsz~o6-.js +0 -1
  756. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0~apd0q5_i88z.js +0 -16
  757. package/cloud-runtime/standalone/apps/local/.next/static/chunks/100xrwo-45nrg.js +0 -20
  758. package/cloud-runtime/standalone/apps/local/.next/static/chunks/14h3qxwuo~1q9.js +0 -20
  759. package/cloud-runtime/standalone/apps/local/.next/static/chunks/17oesq5eds3xi.js +0 -1
  760. /package/cloud-runtime/standalone/apps/local/.next/static/{z8XjY2Aj-ox_Dro192i4I → RnYHmEXBwXJjVrVVx2CuP}/_buildManifest.js +0 -0
  761. /package/cloud-runtime/standalone/apps/local/.next/static/{z8XjY2Aj-ox_Dro192i4I → RnYHmEXBwXJjVrVVx2CuP}/_clientMiddlewareManifest.js +0 -0
  762. /package/cloud-runtime/standalone/apps/local/.next/static/{z8XjY2Aj-ox_Dro192i4I → RnYHmEXBwXJjVrVVx2CuP}/_ssgManifest.js +0 -0
@@ -0,0 +1,20 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,568656,e=>{"use strict";var t=e.i(843476),r=e.i(522016),a=e.i(618566),s=e.i(271645),o=e.i(958164),n=e.i(429056),i=e.i(417442),l=e.i(363732);let d=(0,l.default)("calendar-clock",[["path",{d:"M16 14v2.2l1.6 1",key:"fo4ql5"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M21 7.5V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h3.5",key:"1osxxc"}],["path",{d:"M3 10h5",key:"r794hk"}],["path",{d:"M8 2v4",key:"1cmpym"}],["circle",{cx:"16",cy:"16",r:"6",key:"qoo3c4"}]]);var c=e.i(529471),u=e.i(580873),m=e.i(575479),x=e.i(640481),p=e.i(929870),b=e.i(8707),h=e.i(794731),v=e.i(169610),f=e.i(572665),g=e.i(519132),j=e.i(797167),y=e.i(524123),w=e.i(945028),N=e.i(490011),k=e.i(984242),S=e.i(208343),C=e.i(884564),$=e.i(40527),I=e.i(378764),A=e.i(524507),E=e.i(245900),O=e.i(437307),M=e.i(715908),T=e.i(553069),P=e.i(827430),L=e.i(667480);function R(e){let t=e.cadence||e.cronExpr;return t?(0,T.cronToHuman)(e.cronExpr||t)??t:"No frequency"}function D(e){return"active"===e.state&&(null!==e.nextRunAt&&e.nextRunAt-Date.now()<0?!e.lastRunAt||!(e.lastRunAt>=e.nextRunAt):!!e.prevScheduledAt&&!!e.lastRunAt&&e.lastRunAt>e.prevScheduledAt+3e5)}function _(e,t){if("paused"===t)return"Paused";if("stopped"===t)return"Stopped";if(null===e)return"Pending";let r=e-Date.now();return r<0?"Overdue":r<6e4?`in ${Math.round(r/1e3)}s`:r<36e5?`in ${Math.round(r/6e4)}m`:r<864e5?`in ${Math.round(r/36e5)}h`:`in ${Math.round(r/864e5)}d`}function F(e){return new Date(e).toLocaleString(void 0,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})}function z({job:e,onClose:r,onUpdate:a}){let[o,n]=(0,s.useState)({cadence:e.cronExpr||e.cadence||"",condition:e.condition||""}),[i,l]=(0,s.useState)(!0),[d,c]=(0,s.useState)(!1),m=async()=>{i&&(c(!0),await a({cadence:o.cadence,condition:o.condition}),c(!1),r())};return(0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50 px-4 py-6",children:(0,t.jsxs)("div",{className:"flex w-full max-w-md max-h-[85vh] flex-col rounded-[28px] border border-[var(--border)] bg-[var(--card-bg)] shadow-2xl",children:[(0,t.jsxs)("div",{className:"flex shrink-0 items-center justify-between border-b border-[var(--border)] px-6 py-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,t.jsx)(u.Clock,{className:"h-4 w-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("p",{className:"text-sm font-semibold text-[var(--foreground)]",children:e.name})]}),(0,t.jsx)("button",{type:"button",onClick:r,className:"rounded-lg border border-[var(--border)] p-2 text-[var(--muted-foreground)] transition-colors hover:border-[var(--card-hover-border)] hover:text-[var(--foreground)]",children:(0,t.jsx)(j.X,{className:"h-4 w-4"})})]}),(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto px-6 py-5",children:(0,t.jsx)(L.ScheduleConditionPicker,{value:o,onChange:(e,t)=>{n(e),l(t.isScheduleValid)},scheduleLabel:"Schedule",conditionLabel:"Condition",conditionHelpText:"Scheduled runs and Run now will check this condition before executing."})}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center justify-end gap-3 border-t border-[var(--border)] px-6 py-4",children:[(0,t.jsx)("button",{type:"button",onClick:r,className:"rounded-xl border border-[var(--border)] px-4 py-2.5 text-sm text-[var(--foreground)] transition-colors hover:border-[var(--card-hover-border)]",children:"Cancel"}),(0,t.jsx)("button",{type:"button",onClick:()=>void m(),disabled:d||!i,className:"rounded-xl border border-emerald-500/30 bg-emerald-500/10 px-4 py-2.5 text-sm text-emerald-400 transition-colors hover:bg-emerald-500/20 disabled:opacity-50",children:d?"Saving...":"Save"})]})]})})}function U({job:e,onClose:r,onUpdate:a}){let[o,n]=(0,s.useState)(e.prompt||""),[i,l]=(0,s.useState)(!1),d=async()=>{o===e.prompt||(l(!0),await a({prompt:o}),l(!1)),r()};return(0,t.jsx)("div",{className:"fixed inset-0 z-40 flex items-center justify-center bg-black/50 px-4 py-6",children:(0,t.jsxs)("div",{className:"flex w-full max-w-6xl max-h-[85vh] flex-col rounded-[28px] border border-[var(--border)] bg-[var(--card-bg)] shadow-2xl",children:[(0,t.jsxs)("div",{className:"flex shrink-0 items-start justify-between gap-4 border-b border-[var(--border)] px-6 py-5",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2.5",children:[(0,t.jsx)("p",{className:"truncate text-lg font-semibold text-[var(--foreground)]",children:e.name}),(0,t.jsx)("span",{className:`rounded-full border px-2 py-0.5 text-[10px] font-semibold uppercase tracking-[0.16em] ${W(e.state)}`,children:q(e.state)}),e.condition?(0,t.jsx)("span",{className:"rounded-md border border-blue-400/20 bg-blue-500/10 px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wider text-blue-400",children:"gated"}):null]}),(0,t.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-3 text-xs text-[var(--muted-foreground)]",children:[(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,t.jsx)(u.Clock,{className:"h-3.5 w-3.5"}),R(e)]}),(0,t.jsxs)("span",{children:["Next run ",_(e.nextRunAt,e.state)]}),(0,t.jsxs)("span",{children:["Updated ",F(e.updatedAt)]})]})]}),(0,t.jsx)("button",{type:"button",onClick:r,className:"rounded-lg border border-[var(--border)] p-2 text-[var(--muted-foreground)] transition-colors hover:border-[var(--card-hover-border)] hover:text-[var(--foreground)]","aria-label":"Close scheduled task details",children:(0,t.jsx)(j.X,{className:"h-4 w-4"})})]}),(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto px-6 py-6 space-y-5",children:(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-2 text-xs font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:"Instructions"}),(0,t.jsx)("div",{className:"rounded-2xl border border-[var(--card-hover-border)] bg-[var(--overlay-panel-muted)] px-1 py-1 text-sm leading-6 text-[var(--foreground)]",children:(0,t.jsx)($.default,{content:o,editable:!0,onChange:n,placeholder:"Write instructions in markdown…"})})]})}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center justify-end gap-3 border-t border-[var(--border)] px-6 py-4",children:[(0,t.jsx)("button",{type:"button",onClick:r,className:"rounded-xl border border-[var(--border)] px-4 py-2.5 text-sm text-[var(--foreground)] transition-colors hover:border-[var(--card-hover-border)]",children:"Cancel"}),(0,t.jsx)("button",{type:"button",onClick:()=>void d(),disabled:i,className:"rounded-xl border border-emerald-500/30 bg-emerald-500/10 px-4 py-2.5 text-sm text-emerald-400 transition-colors hover:bg-emerald-500/20 disabled:opacity-50",children:i?"Saving...":"Save"})]})]})})}function q(e){return"active"===e?"Active":"paused"===e?"Paused":"Stopped"}function W(e){return"active"===e?"border-[var(--status-completed-border)] bg-[var(--status-completed-bg)] text-[var(--status-completed)]":"paused"===e?"border-[var(--status-blocked-border)] bg-[var(--status-blocked-bg)] text-[var(--status-blocked)]":"border-[var(--tone-neutral-border)] bg-[var(--tone-neutral-bg)] text-[var(--tone-neutral)]"}function J({projectId:e,objectiveId:r,objectiveKey:a,createDefaults:o,onCreateTask:n}){let{jobs:i,loading:l,refresh:d,deleteJob:m,toggleJob:x,updateJob:b,fetchRuns:v,runNow:f}=(0,M.usePromptJobs)(e,{requireProjectId:!0,includeObjectiveJobs:!0,objectiveId:r}),[g,j]=(0,s.useState)(!1),[y,w]=(0,s.useState)(null),[N,k]=(0,s.useState)(null),[S,C]=(0,s.useState)(null),[$,I]=(0,s.useState)(null),[T,L]=(0,s.useState)([]),V=(0,s.useMemo)(()=>i.filter(e=>e.objectiveId===r).sort((e,t)=>!e.name.toLowerCase().includes("objective worker")-!t.name.toLowerCase().includes("objective worker")),[i,r]),B=(0,s.useMemo)(()=>V.find(e=>e.id===S)??null,[S,V]),H=(0,s.useCallback)(async()=>{if(0===V.length)return void L([]);let e=[];await Promise.all(V.map(async t=>{for(let r of(await v(t.id)))e.push({...r,jobName:t.name})})),e.sort((e,t)=>new Date(t.startedAt??t.createdAt).getTime()-new Date(e.startedAt??e.createdAt).getTime()),L(e.slice(0,10))},[V,v]);(0,s.useEffect)(()=>{H()},[H]);let K=async e=>{w(e.id),k(null);let t=await m(e.id);(w(null),t)?(S===e.id&&C(null),await d()):k(`Failed to hide "${e.name}".`)},X=async e=>{k(null);let t=await n(e);return t&&await d(),t},G=(0,s.useMemo)(()=>V.find(e=>e.id===$)??null,[$,V]);return(0,t.jsxs)(t.Fragment,{children:[g?(0,t.jsx)(P.CreateJobModal,{onClose:()=>j(!1),onSubmit:async e=>{await X(e)},createDefaults:o,contextLabel:a}):null,B?(0,t.jsx)(U,{job:B,onClose:()=>C(null),onUpdate:async e=>{let t=await b(B.id,e);return t&&await d(),t}}):null,G?(0,t.jsx)(z,{job:G,onClose:()=>I(null),onUpdate:async e=>{let t=await b(G.id,e);return t&&await d(),t}}):null,(0,t.jsxs)("div",{className:"px-1",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-sm font-semibold text-[var(--foreground)]",children:"Scheduled Tasks"}),(0,t.jsxs)("p",{className:"mt-1 text-sm text-[var(--muted-foreground)]",children:["Shared scheduled-task list filtered to objective label"," ",(0,t.jsx)("span",{className:"font-mono text-[var(--foreground)]",children:a}),"."]})]}),(0,t.jsx)("div",{className:"flex flex-wrap items-center gap-2",children:(0,t.jsxs)("button",{type:"button",onClick:()=>j(!0),className:"inline-flex items-center gap-2 rounded-xl border border-[var(--border)] px-3 py-2 text-sm text-[var(--foreground)] transition-colors hover:border-[var(--card-hover-border)]",children:[(0,t.jsx)(p.Plus,{className:"h-4 w-4"}),"New task"]})})]}),N?(0,t.jsx)("p",{className:"mt-4 text-sm text-[var(--destructive)]",children:N}):null,(0,t.jsx)("div",{className:"mt-5 space-y-3",children:l&&0===V.length?(0,t.jsx)("div",{className:"rounded-2xl border border-dashed border-[var(--border)] px-4 py-8 text-sm text-[var(--muted-foreground)]",children:"Loading scheduled tasks..."}):0===V.length?(0,t.jsx)("div",{className:"rounded-2xl border border-dashed border-[var(--border)] px-4 py-8 text-sm text-[var(--muted-foreground)]",children:"No scheduled tasks for this objective yet."}):V.map(e=>(0,t.jsx)("div",{onClick:()=>C(e.id),onKeyDown:t=>{("Enter"===t.key||" "===t.key)&&(t.preventDefault(),C(e.id))},role:"button",tabIndex:0,className:`block w-full rounded-2xl border px-4 py-4 text-left transition-colors focus:outline-none focus:ring-2 focus:ring-[var(--card-hover-border)] ${D(e)?"border-amber-500/40 bg-amber-500/5 hover:border-amber-500/60":"border-[var(--border)] bg-[var(--overlay-panel-muted)] hover:border-[var(--card-hover-border)]"}`,children:(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2.5",children:[(0,t.jsx)("span",{className:`inline-block size-2 shrink-0 rounded-full ${"active"===e.state?"bg-emerald-400":"paused"===e.state?"bg-amber-400":"bg-[var(--tone-neutral)]"}`}),(0,t.jsx)("p",{className:"truncate text-sm font-semibold text-[var(--foreground)]",children:e.name}),(0,t.jsx)("span",{className:`rounded-full border px-2 py-0.5 text-[10px] font-semibold uppercase tracking-[0.16em] ${W(e.state)}`,children:q(e.state)}),D(e)&&(0,t.jsxs)("span",{className:"shrink-0 text-[10px] font-semibold uppercase tracking-[0.16em] text-amber-400 bg-amber-500/10 px-2 py-0.5 rounded-full border border-amber-500/20 inline-flex items-center gap-1",children:[(0,t.jsx)(u.Clock,{className:"h-3 w-3"}),"overdue"]})]}),(0,t.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-3 text-xs text-[var(--muted-foreground)]",children:[(0,t.jsxs)("span",{className:`inline-flex items-center gap-1.5 ${D(e)?"text-amber-400 font-medium":""}`,children:[(0,t.jsx)(u.Clock,{className:"h-3.5 w-3.5"}),"Next run ",_(e.nextRunAt,e.state)]}),(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,t.jsx)(u.Clock,{className:"h-3.5 w-3.5"}),R(e)]}),e.condition?(0,t.jsx)("span",{className:"rounded-md border border-blue-400/20 bg-blue-500/10 px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wider text-blue-400",children:"gated"}):null]}),(0,t.jsx)("p",{className:"mt-3 line-clamp-2 text-sm leading-6 text-[var(--muted-foreground)]",children:e.prompt.split("\n").map(e=>e.trim()).find(Boolean)||"No instructions yet"}),e.condition?(0,t.jsxs)("p",{className:"mt-2 text-xs text-[var(--muted-foreground)]",children:["Condition: ",e.condition]}):null]}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5 shrink-0",children:[(0,t.jsx)("button",{type:"button",title:"Run now",onClick:async t=>{t.stopPropagation(),w(e.id),await f(e.id),w(null),await d(),await H()},disabled:y===e.id,className:"rounded-lg border border-[var(--border)] p-2 text-[var(--muted-foreground)] transition-colors hover:border-emerald-400/40 hover:text-emerald-300 disabled:cursor-not-allowed disabled:opacity-50",children:(0,t.jsx)(E.Play,{className:"h-3.5 w-3.5 fill-current"})}),(0,t.jsx)("button",{type:"button",title:"Edit schedule",onClick:t=>{t.stopPropagation(),I(e.id)},className:"rounded-lg border border-[var(--border)] p-2 text-[var(--muted-foreground)] transition-colors hover:border-sky-400/40 hover:text-sky-300",children:(0,t.jsx)(u.Clock,{className:"h-3.5 w-3.5"})}),(0,t.jsx)("button",{type:"button",title:"active"===e.state?"Pause":"Resume",onClick:async t=>{t.stopPropagation(),w(e.id),await x(e),w(null)},disabled:y===e.id,className:`rounded-lg border p-2 transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${"active"===e.state?"border-[var(--border)] text-[var(--muted-foreground)] hover:border-amber-400/40 hover:text-amber-300":"border-emerald-500/30 text-emerald-400 hover:border-emerald-400/50 hover:text-emerald-300"}`,children:"active"===e.state?(0,t.jsx)(A.Pause,{className:"h-3.5 w-3.5"}):(0,t.jsx)(E.Play,{className:"h-3.5 w-3.5 fill-current"})}),(0,t.jsx)("button",{type:"button",title:"Delete",onClick:t=>{t.stopPropagation(),confirm(`Delete "${e.name}"? This cannot be undone.`)&&K(e)},disabled:y===e.id,className:"rounded-lg border border-[var(--border)] p-2 text-[var(--muted-foreground)] transition-colors hover:border-[var(--status-failed-border)] hover:text-[var(--destructive)] disabled:cursor-not-allowed disabled:opacity-50",children:(0,t.jsx)(h.Trash2,{className:"h-3.5 w-3.5"})})]})]})},e.id))}),T.length>0&&(0,t.jsxs)("div",{className:"mt-8",children:[(0,t.jsx)("p",{className:"text-[11px] font-medium uppercase tracking-[0.18em] text-[var(--muted-foreground)] mb-3",children:"Recent executions"}),(0,t.jsx)("div",{className:"space-y-0.5",children:T.map(e=>{let r=e.startedAt??e.createdAt,a="success"===e.status,s="failed"===e.status,o="running"===e.status;return(0,t.jsxs)("div",{className:"flex items-center gap-3 py-2 px-2 rounded-md text-xs",children:[(0,t.jsx)("span",{className:`flex size-5 shrink-0 items-center justify-center rounded-full border ${a?"border-emerald-500/40 text-emerald-400":s?"border-[var(--status-failed-border)] text-[var(--destructive)]":o?"border-sky-500/40 text-sky-400":"border-[var(--border)] text-[var(--muted-foreground)]"}`,children:a?(0,t.jsx)(c.Check,{className:"h-3 w-3"}):s?(0,t.jsx)(O.XCircle,{className:"h-3 w-3"}):(0,t.jsx)("span",{className:`block size-1.5 rounded-full ${o?"bg-sky-400 animate-pulse":"bg-current"}`})}),(0,t.jsx)("span",{className:"truncate text-[var(--muted-foreground)]",children:e.jobName}),(0,t.jsx)("span",{className:"ml-auto shrink-0 text-[11px] text-[var(--muted-foreground)]",children:F(r)}),null!=e.durationMs&&(0,t.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-[var(--muted-foreground)]",children:e.durationMs<1e3?`${e.durationMs}ms`:`${Math.round(e.durationMs/1e3)}s`})]},e.id)})})]})]})]})}var V=e.i(498027),B=e.i(367859);let H=(0,l.default)("funnel",[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]]),K={"metric-check":{label:"Metric",className:"bg-blue-500/15 text-blue-400 border-blue-500/30"},"status-update":{label:"Status",className:"bg-emerald-500/15 text-emerald-400 border-emerald-500/30"},milestone:{label:"Milestone",className:"bg-amber-500/15 text-amber-400 border-amber-500/30"},note:{label:"Note",className:"bg-[var(--tone-neutral-bg)] text-[var(--tone-neutral)] border-[var(--tone-neutral-border)]"}},X=["metric-check","status-update","milestone","note"];function G({activity:e}){let[r,a]=(0,s.useState)(!1),o=K[e.type]??K.note,n=e.body.length>200;return(0,t.jsxs)("div",{className:"relative pl-6 pb-6 last:pb-0",children:[(0,t.jsx)("div",{className:"absolute left-0 top-1.5 h-3 w-3 rounded-full border-2 border-[var(--timeline-node-border)] bg-[var(--timeline-node-bg)]"}),(0,t.jsx)("div",{className:"absolute bottom-0 left-[5px] top-4 w-px bg-[var(--timeline-track)] last:hidden"}),(0,t.jsxs)("div",{className:"mb-1.5 flex items-center gap-2",children:[(0,t.jsx)("span",{className:`rounded-full border px-2 py-0.5 text-[10px] font-semibold uppercase tracking-[0.14em] ${o.className}`,children:o.label}),(0,t.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:function(e){let t=Date.now(),r=Date.parse(e);if(Number.isNaN(r))return e;let a=Math.floor((t-r)/6e4);if(a<1)return"just now";if(a<60)return`${a}m ago`;let s=Math.floor(a/60);if(s<24)return`${s}h ago`;let o=Math.floor(s/24);return o<30?`${o}d ago`:new Date(r).toLocaleDateString("en-US",{month:"short",day:"numeric",year:o>365?"numeric":void 0})}(e.createdAt)}),"manual"!==e.source&&(0,t.jsx)("span",{className:"max-w-[180px] truncate font-mono text-[11px] text-[var(--app-shell-soft-text)]",children:e.source})]}),r?(0,t.jsx)("div",{className:"prose prose-sm max-w-none text-sm text-[var(--foreground)] prose-neutral dark:prose-invert",children:(0,t.jsx)(S.Markdown,{content:e.body})}):(0,t.jsx)("div",{className:`text-sm leading-relaxed text-[var(--muted-foreground)] ${n?"max-h-24 overflow-hidden [mask-image:linear-gradient(to_bottom,black_72%,transparent)]":""}`,children:(0,t.jsx)(S.Markdown,{content:e.body})}),n&&(0,t.jsxs)("button",{type:"button",onClick:()=>a(!r),className:"mt-1.5 flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:[r?(0,t.jsx)(V.ChevronDown,{size:12}):(0,t.jsx)(B.ChevronRight,{size:12}),r?"Show less":"Show more"]})]})}function Y({projectId:e,objectiveId:r,onCreated:a,onCancel:o}){let[n,i]=(0,s.useState)("note"),[l,d]=(0,s.useState)(""),[c,u]=(0,s.useState)(!1),m=(0,s.useRef)(null);(0,s.useEffect)(()=>{m.current?.focus()},[]);let x=async()=>{let t=l.trim();if(t&&!c){u(!0);try{let s=await fetch(`/api/projects/${e}/objectives/${r}/activities`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({type:n,body:t})});if(!s.ok)throw Error("Failed to create activity");let o=await s.json();a(o)}catch(e){console.error("Failed to create activity:",e)}finally{u(!1)}}};return(0,t.jsxs)("div",{className:"mb-4 rounded-lg border border-[var(--border)] bg-[var(--overlay-panel-muted)] p-3",children:[(0,t.jsx)("div",{className:"mb-3 flex flex-wrap gap-1.5",children:X.map(e=>{let r=K[e],a=n===e;return(0,t.jsx)("button",{type:"button",onClick:()=>i(e),className:`rounded-full border px-2.5 py-0.5 text-[10px] font-semibold uppercase tracking-[0.14em] transition-colors ${a?"border-[var(--foreground)] bg-[var(--foreground)] text-[var(--background)]":`${r.className} hover:opacity-80`}`,children:r.label},e)})}),(0,t.jsx)("textarea",{ref:m,value:l,onChange:e=>d(e.target.value),placeholder:"What did you do?",rows:3,className:"w-full resize-none rounded-md border border-[var(--border)] bg-[var(--input)] px-3 py-2 text-sm text-[var(--foreground)] placeholder:text-[var(--app-shell-soft-text)] focus:border-[var(--card-hover-border)] focus:outline-none"}),(0,t.jsxs)("div",{className:"mt-2 flex items-center justify-end gap-2",children:[(0,t.jsx)("button",{type:"button",onClick:o,className:"px-3 py-1.5 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:"Cancel"}),(0,t.jsx)("button",{type:"button",onClick:x,disabled:!l.trim()||c,className:"px-3 py-1.5 text-xs font-medium rounded-md bg-sky-600 text-white hover:bg-sky-500 transition-colors disabled:opacity-40 disabled:cursor-not-allowed",children:c?"Saving...":"Log activity"})]})]})}function Q({projectId:e,objectiveId:r,onTotalChange:a}){let[o,n]=(0,s.useState)([]),[i,l]=(0,s.useState)(0),[d,c]=(0,s.useState)(!1),[u,m]=(0,s.useState)(1),[x,b]=(0,s.useState)(!0),[h,v]=(0,s.useState)("all"),[f,g]=(0,s.useState)(!1),[y,w]=(0,s.useState)(!1),N=(0,s.useCallback)(async(t,s,o)=>{b(!0);try{let i=new URLSearchParams({page:String(t),limit:"25"});"all"!==s&&i.set("type",s);let d=await fetch(`/api/projects/${e}/objectives/${r}/activities?${i}`);if(!d.ok)throw Error("Failed to load activities");let u=await d.json(),m=Array.isArray(u.activities)?u.activities:[],x="number"==typeof u.total?u.total:m.length,p=!!u.hasMore;n(e=>o?[...e,...m]:m),l(x),a?.(x),c(p)}catch(e){console.error("Failed to fetch activities:",e)}finally{b(!1)}},[e,r]);return(0,s.useEffect)(()=>{m(1),N(1,h,!1)},[N,h]),(0,t.jsxs)("section",{children:[(0,t.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"Time-ordered log of outputs from scheduled tasks and manual entries."}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>w(!y),className:`flex items-center gap-1 px-2.5 py-1 rounded-md text-xs font-medium transition-colors ${y?"text-sky-400 bg-sky-500/10":"text-[var(--muted-foreground)] hover:bg-[var(--muted)] hover:text-[var(--foreground)]"}`,children:[y?(0,t.jsx)(j.X,{size:12}):(0,t.jsx)(p.Plus,{size:12}),"Log activity"]}),(0,t.jsx)("button",{type:"button",onClick:()=>g(!f),className:`p-1.5 rounded-md transition-colors ${f||"all"!==h?"text-sky-400 bg-sky-500/10":"text-[var(--muted-foreground)] hover:bg-[var(--muted)] hover:text-[var(--foreground)]"}`,"aria-label":"Filter activities",children:(0,t.jsx)(H,{size:14})})]})]}),f&&(0,t.jsxs)("div",{className:"flex flex-wrap gap-1.5 mb-4",children:[(0,t.jsx)("button",{type:"button",onClick:()=>v("all"),className:`rounded-full border px-2.5 py-0.5 text-[10px] font-semibold uppercase tracking-[0.14em] transition-colors ${"all"===h?"border-[var(--foreground)] bg-[var(--foreground)] text-[var(--background)]":"border-[var(--tone-neutral-border)] bg-[var(--tone-neutral-bg)] text-[var(--tone-neutral)] hover:border-[var(--card-hover-border)]"}`,children:"All"}),X.map(e=>{let r=K[e],a=h===e;return(0,t.jsx)("button",{type:"button",onClick:()=>v(e),className:`rounded-full border px-2.5 py-0.5 text-[10px] font-semibold uppercase tracking-[0.14em] transition-colors ${a?"border-[var(--foreground)] bg-[var(--foreground)] text-[var(--background)]":`${r.className} hover:opacity-80`}`,children:r.label},e)})]}),y&&(0,t.jsx)(Y,{projectId:e,objectiveId:r,onCreated:e=>{n(t=>[e,...t]),l(e=>{let t=e+1;return a?.(t),t}),w(!1)},onCancel:()=>w(!1)}),x&&0===o.length?(0,t.jsx)("div",{className:"py-6 text-center text-sm text-[var(--muted-foreground)]",children:"Loading activities..."}):0===o.length?(0,t.jsxs)("div",{className:"rounded-xl border border-dashed border-[var(--border)] bg-[var(--overlay-panel-muted)] p-6 text-center",children:[(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No activities yet."}),(0,t.jsx)("p",{className:"mt-1 text-xs text-[var(--app-shell-soft-text)]",children:"Activities are created by scheduled tasks and agent actions."})]}):(0,t.jsxs)("div",{children:[o.map(e=>(0,t.jsx)(G,{activity:e},e.id)),d&&(0,t.jsx)("div",{className:"pt-2 pl-6",children:(0,t.jsx)("button",{type:"button",onClick:()=>{let e=u+1;m(e),N(e,h,!0)},disabled:x,className:"text-xs text-sky-400 hover:text-sky-300 transition-colors disabled:opacity-50",children:x?"Loading...":"Load more"})})]})]})}let Z=/(?:^|\n)Objective health:\s*(\d{1,3})%\s*(On track|At risk|Off track|Done)\b/im,ee={"on track":"on_track","at risk":"at_risk","off track":"off_track",done:"done"};function et(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}function er(e){return"number"==typeof e&&Number.isFinite(e)?Math.max(0,Math.min(100,Math.round(e))):0}function ea(e){if("string"!=typeof e)return null;let t=e.trim().toLowerCase();return"on_track"===t||"at_risk"===t||"off_track"===t||"done"===t?t:ee[t]??null}function es(e){if("string"!=typeof e)return null;let t=Date.parse(e);return Number.isNaN(t)?null:new Date(t).toISOString()}function eo(e){return"string"==typeof e&&e.trim()?e.trim():void 0}function en(...e){let t=e.flatMap(e=>e??[]),r=[];for(let e of[...t].sort((e,t)=>Date.parse(e.recordedAt)-Date.parse(t.recordedAt))){let t=r[r.length-1]??null;t&&t.progress===e.progress&&t.status===e.status&&(!t.source||!e.source||t.source===e.source)&&5e3>=Math.abs(Date.parse(e.recordedAt)-Date.parse(t.recordedAt))||r.push(e)}return r}let ei={on_track:{label:"On track",stroke:"var(--status-completed-text)"},at_risk:{label:"At risk",stroke:"var(--status-blocked-text)"},off_track:{label:"Off track",stroke:"var(--status-failed-text)"},done:{label:"Done",stroke:"var(--status-in-progress-text)"}};function el(e){let{projectId:r,objectiveId:a,objectiveKey:o,metadata:n,currentProgress:i,currentStatus:l,objectiveUpdatedAt:d}=e,c=(0,s.useMemo)(()=>(function(e,t){if(!et(e)||!t.trim())return[];let r=e.project_objective_health_history;if(!et(r))return[];let a=r[t.trim()];return Array.isArray(a)?en(a.map(e=>(function(e){if(!et(e))return null;let t=ea(e.status),r=es(e.recordedAt);return t&&r?{progress:er(e.progress),status:t,recordedAt:r,source:eo(e.source),note:eo(e.note),objectiveId:eo(e.objectiveId)??null,objectiveKey:eo(e.objectiveKey)??null}:null})(e)).filter(e=>!!e)):[]})(n,a),[n,a]),[u,m]=(0,s.useState)(c),x=(0,s.useMemo)(()=>({progress:i,status:l,recordedAt:d,objectiveId:a,objectiveKey:o}),[i,l,a,o,d]);(0,s.useEffect)(()=>{m(c)},[c]),(0,s.useEffect)(()=>{let e=!1;return async function(){try{let t=await fetch(`/api/projects/${r}/objectives/${a}/activities?type=status-update&limit=100`);if(!t.ok)throw Error("Failed to load objective activity history");let s=await t.json(),n=Array.isArray(s.activities)?s.activities:[],i=en(c,en(n.map(e=>(function(e){if("status-update"!==e.type)return null;let t=e.body.match(Z);if(!t)return null;let r=er(Number(t[1])),a=ea(t[2]),s=es(e.createdAt);return a&&s?{progress:r,status:a,recordedAt:s,source:eo(e.source),objectiveKey:eo(e.objectiveLabel)??null}:null})(e)).filter(e=>!!e&&(!o||e.objectiveKey===o))));e||m(i)}catch{e||m(c)}}(),()=>{e=!0}},[c,a,o,r]);let p=en(u,[x]),b=p[p.length-1],h=function(e){if(1===e.length){let t=46-e[0].progress/100*40;return`90,${t}`}return e.map((t,r)=>{let a=6+r/Math.max(1,e.length-1)*168,s=46-t.progress/100*40;return`${a},${s}`}).join(" ")}(p),v=ei[b.status],f=0===u.length?"Current state":1===p.length?"1 update":`${p.length} updates`;return(0,t.jsxs)("div",{"data-testid":"objective-health-trend",className:"flex min-w-[260px] flex-1 items-center gap-4 rounded-2xl border border-[var(--border)] bg-[var(--overlay-panel-muted)] px-4 py-3",children:[(0,t.jsxs)("div",{className:"min-w-[84px]",children:[(0,t.jsx)("div",{className:"text-[10px] font-semibold uppercase tracking-[0.16em] text-[var(--muted-foreground)]",children:"Objective health"}),(0,t.jsxs)("div",{className:"mt-1 text-[24px] font-semibold leading-none text-[var(--foreground)]",children:[b.progress,"%"]}),(0,t.jsx)("div",{className:"mt-1 text-[11px] font-medium",style:{color:v.stroke},children:v.label})]}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("svg",{viewBox:"0 0 180 52",className:"h-[52px] w-full overflow-visible",role:"img","aria-label":"Objective health trend",children:[(0,t.jsx)("line",{x1:"6",y1:"26",x2:"174",y2:"26",stroke:"var(--border)",strokeDasharray:"3 3",strokeWidth:"1"}),(0,t.jsx)("polyline",{fill:"none",stroke:v.stroke,strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",points:h}),p.map((e,r)=>{let[a="0",s="0"]=(h.split(" ")[r]??"").split(",");return(0,t.jsx)("circle",{cx:a,cy:s,r:r===p.length-1?4:3,fill:v.stroke,fillOpacity:r===p.length-1?1:.2,stroke:v.stroke,strokeWidth:"1.5"},`${e.recordedAt}-${r}`)})]}),(0,t.jsxs)("div",{className:"mt-1 flex items-center justify-between gap-2 text-[10px] text-[var(--muted-foreground)]",children:[(0,t.jsx)("span",{children:f}),(0,t.jsx)("span",{children:new Date(b.recordedAt).toLocaleString([],{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})})]})]})]})}var ed=e.i(644660),ec=e.i(44054),eu=e.i(434405),em=e.i(169433),ex=e.i(902572);let ep={on_track:{label:"On track",chipClass:"border-[var(--status-completed-border)] bg-[var(--status-completed-bg)] text-[var(--status-completed-text)]",toneClass:"text-[var(--status-completed-text)]"},at_risk:{label:"At risk",chipClass:"border-[var(--status-blocked-border)] bg-[var(--status-blocked-bg)] text-[var(--status-blocked-text)]",toneClass:"text-[var(--status-blocked-text)]"},off_track:{label:"Off track",chipClass:"border-[var(--status-failed-border)] bg-[var(--status-failed-bg)] text-[var(--status-failed-text)]",toneClass:"text-[var(--status-failed-text)]"},done:{label:"Done",chipClass:"border-[var(--status-in-progress-border)] bg-[var(--status-in-progress-bg)] text-[var(--status-in-progress-text)]",toneClass:"text-[var(--status-in-progress-text)]"}};function eb({onResize:e}){let{isTouchLayout:r}=(0,ec.useInputCapabilities)();return r?null:(0,t.jsx)("div",{role:"separator","aria-orientation":"vertical","aria-label":"Resize objective chat panel",className:"group relative z-10 hidden w-0 shrink-0 cursor-col-resize xl:block",onMouseDown:t=>{t.preventDefault();let r=t.clientX;document.body.style.cursor="col-resize",document.body.style.userSelect="none";let a=t=>{let a=r-t.clientX;r=t.clientX,e(a)},s=()=>{document.body.style.cursor="",document.body.style.userSelect="",window.removeEventListener("mousemove",a),window.removeEventListener("mouseup",s)};window.addEventListener("mousemove",a),window.addEventListener("mouseup",s)},children:(0,t.jsx)("div",{className:"absolute inset-y-0 -left-0.5 w-1 transition-colors group-hover:bg-[var(--primary)]/40"})})}function eh(e){return new Date(e).toLocaleString([],{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})}function ev(){return{title:"",teamId:"",summary:""}}function ef(e,t,r){return t?e.objectives.find(e=>e.teamId===t&&e.id!==r)??null:null}function eg(e,t,r){return e.filter(e=>!ef(t,e.id,r))}function ej(e){let{projects:t,isLoading:r,refetch:a,updateProject:o}=(0,y.useProjects)(),[n,i]=(0,s.useState)([]),l=(0,s.useMemo)(()=>t.find(t=>t.slug===e)??null,[e,t]),d=(0,s.useMemo)(()=>(0,ex.readProjectObjectivesWorkspace)(l?.metadata),[l?.metadata]),c=(0,s.useCallback)(async e=>{if(!l)throw Error("Project not found.");await o(l.id,{metadata:(0,ex.writeProjectObjectivesWorkspace)(l.metadata??{},e)})},[l,o]);return(0,s.useEffect)(()=>{let e=!0;return async function(){if(!l?.id)return i([]);try{let t=await fetch(`/api/projects/${l.id}/teams`);if(!t.ok)throw Error("Failed to fetch teams");let r=await t.json();if(!e)return;i((r.teams??[]).map(e=>({id:"string"==typeof e.id?e.id:"",name:"string"==typeof e.name?e.name:"Untitled team"})).filter(e=>e.id))}catch{if(!e)return;i([])}}(),()=>{e=!1}},[l?.id]),{isLoading:r,project:l,workspace:d,teams:n,persistWorkspace:c,refetchProject:a}}function ey(e){return"user"===e.role&&!e.rootMessageId}function ew({projectId:e,projectSlug:r,objective:a,teamName:o,onThreadLinked:l,onObjectiveUpdated:d}){let[c,u]=(0,s.useState)(()=>(0,em.loadObjectiveChatPanelWidth)()||800),[m,x]=(0,s.useState)(a.threadId??(a.id?`objective-chat:${a.id}`:null)),[p,b]=(0,s.useState)("list"),[h,f]=(0,s.useState)(null),[g,j]=(0,s.useState)(!1),[y,$]=(0,s.useState)(a.chatSessionVersion),[I,A]=(0,s.useState)([]),[E,O]=(0,s.useState)(null),M=(0,s.useRef)(!1),T=(0,s.useRef)(!1),P=window.location?.origin?window.location.origin:null,{messages:L,setMessages:R,sendMessage:D,loadHistory:_,setChatRuns:F,stop:z,chatRuns:U}=(0,w.useGroupChat)(m),{processes:q,streaming:W,chatRuns:J,poll:V}=(0,N.useProcessPolling)(m?{workspaceId:m}:null,{messages:L,setMessages:R});(0,s.useEffect)(()=>{a.threadId&&a.threadId!==m&&x(a.threadId)},[a.threadId,m]),(0,s.useEffect)(()=>{b("list"),f(null),j(!1),T.current=!1},[a.id]),(0,s.useEffect)(()=>{$(a.chatSessionVersion),a.chatSessionVersion>=ex.CURRENT_OBJECTIVE_CHAT_SESSION_VERSION&&(T.current=!0)},[a.chatSessionVersion]);let B=(0,s.useCallback)(async t=>{let r=t.trim();if(r&&!(await fetch(`/api/projects/${e}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:r})})).ok)throw Error("Failed to link objective chat to the project.")},[e]);(0,s.useEffect)(()=>{let e=!1;return m?(j(!1),(async()=>{await _(m),e||j(!0)})(),()=>{e=!0}):void j(!0)},[_,m]),(0,s.useEffect)(()=>{let t=!1;return async function(){try{let r=a.teamId?`/api/projects/${e}/teams/${a.teamId}/agents`:`/api/projects/${e}/agents`,[s,o]=await Promise.all([fetch("/api/participants"),fetch(r)]),n=s.ok?await s.json():[],i=Array.isArray(n)?n:[],l=o.ok?await o.json():{agents:[]};if(t)return;let d=((l&&"object"==typeof l?l:{agents:[]}).agents??[]).slice().sort((e,t)=>e.routing_order-t.routing_order).map(e=>e.agent_id);if(0===d.length)return void A(i);let c=new Map(i.map(e=>[e.id,e]));A(d.map(e=>c.get(e)).filter(e=>!!e))}catch(e){if(t)return;console.error("Failed to load objective chat participants",e),A([])}}(),()=>{t=!0}},[e,a.teamId]),(0,s.useEffect)(()=>{a.threadId&&B(a.threadId).catch(e=>{console.warn("Failed to re-link objective chat thread to project",e)})},[B,a.threadId]),(0,s.useEffect)(()=>{if(!a.threadId||!m||!g||y>=ex.CURRENT_OBJECTIVE_CHAT_SESSION_VERSION||T.current)return;T.current=!0;let t=function(e){let t=e.filter(ey).sort((e,t)=>e.timestamp-t.timestamp);if(t.length<=1)return null;let r=t[0]?.id;if(!r)return null;let a=t.slice(1).map(e=>e.id),s=new Set(a);return{messages:[...e].map(e=>{let t=s.has(e.id)&&ey(e),a="string"==typeof e.rootMessageId&&s.has(e.rootMessageId);return t||a?{...e,rootMessageId:r,parentMessageId:r,depth:1}:e}).sort((e,t)=>e.timestamp-t.timestamp),primaryRootMessageId:r,mergedRootMessageIds:a}}(L),r=!1;return(async()=>{O(null);try{if(t){if(!(await fetch("/api/history",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:m,messages:t.messages})})).ok)throw Error("Failed to migrate the objective chat history.");if(r)return;R(t.messages),f(e=>e&&t.mergedRootMessageIds.includes(e)?t.primaryRootMessageId:e)}if(!(await fetch(`/api/projects/${e}/objectives/${a.id}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({chatSessionVersion:ex.CURRENT_OBJECTIVE_CHAT_SESSION_VERSION})})).ok)throw Error("Failed to update the objective chat session version.");if(r)return;$(ex.CURRENT_OBJECTIVE_CHAT_SESSION_VERSION),d().catch(e=>{console.warn("Failed to refresh objective after objective chat migration",e)})}catch(e){if(r)return;console.warn("Failed to migrate legacy objective chat sessions",e),O(e instanceof Error?e.message:"Failed to migrate the objective chat history.")}})(),()=>{r=!0}},[y,g,L,a.id,a.threadId,d,e,R,m]);let H=(0,s.useCallback)(async()=>{if(a.threadId)return a.threadId;let t=m??(a.id?`objective-chat:${a.id}`:null);if(!t)return null;O(null);try{let s=await eu.threadService.createThread({id:t,title:a.title,metadata:{scope:"objective",objectiveId:a.id,projectId:e,projectSlug:r}});return x(s.id),await B(s.id),await l(s.id),s.id}catch(e){return O(e instanceof Error?e.message:"Failed to create the objective chat."),null}},[B,a.id,a.threadId,a.title,l,e,r,m]),K=(0,s.useMemo)(()=>new Map(I.map(e=>[e.id,e])),[I]);(0,s.useEffect)(()=>{F(e=>{let t=Date.now(),r=new Map(e.filter(e=>"string"==typeof e.chatRunId&&e.chatRunId.length>0).map(e=>[e.chatRunId,e]));for(let e of J)e?.chatRunId&&r.set(e.chatRunId,e);return Array.from(r.values()).filter(e=>!!(!e.optimistic||J.some(t=>t.chatRunId===e.chatRunId))||t-(e.enqueuedAt??0)<=5e3).sort((e,t)=>String(e.chatRunId||"").localeCompare(String(t.chatRunId||"")))})},[J,F]);let X=(0,s.useMemo)(()=>{let e=Date.now(),t=new Map(J.map(e=>[e.chatRunId,e]));for(let r of U)!(!r.optimistic||t.has(r.chatRunId))&&(e-(r.enqueuedAt??0)>5e3||t.set(r.chatRunId,r));return Array.from(t.values()).filter(e=>"queued"===e.status||"running"===e.status||"awaiting_user"===e.status||"blocked"===e.status)},[U,J]),G=(0,s.useMemo)(()=>L.filter(ey).sort((e,t)=>t.timestamp-e.timestamp).map(e=>{let t,r=L.filter(t=>t.rootMessageId===e.id).sort((e,t)=>e.timestamp-t.timestamp),a=[e,...r],s=a[a.length-1]??e;return{rootMessageId:e.id,title:(t=e.content.replace(/\s+/g," ").trim())?t.length>56?`${t.slice(0,56).trim()}...`:t:"Untitled session",updatedAt:s.timestamp,messageCount:a.length,messages:a}}),[L]),Y=(0,s.useMemo)(()=>h?G.find(e=>e.rootMessageId===h)??null:null,[h,G]),Q="detail"===p&&!!h,Z=new Set(["queued","running","awaiting_user","blocked"]),ee=X.length>0||q.some(e=>"spawning"===e.state||"running"===e.state),et=(0,s.useMemo)(()=>{let e=new Map;for(let t of X){if(!t.rootMessageId||!Z.has(t.status))continue;let r="queued"===t.status?"queued":"working";"working"!==e.get(t.rootMessageId)&&e.set(t.rootMessageId,r)}for(let t of q)t.threadId&&("spawning"===t.state||"running"===t.state)&&e.set(t.threadId,"working");return e},[X,q]),er=(0,s.useMemo)(()=>q.some(e=>"spawning"===e.state||"running"===e.state)||X.some(e=>Z.has(e.status)&&"queued"!==e.status)?"working":X.some(e=>"queued"===e.status)?"queued":"ready",[X,Z,q]);(0,s.useEffect)(()=>{M.current&&!ee&&d().catch(e=>{console.warn("Failed to refresh objective after objective chat activity",e)}),M.current=ee},[ee,d]);let ea=(0,s.useCallback)(async e=>{await fetch(`/api/chat-runs/${encodeURIComponent(e)}/signal`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({signal:"cancel",reason:"Interrupted by a new objective chat message"})}).catch(e=>{console.warn("Failed to cancel objective chat run",e)})},[]),es=(0,s.useCallback)(async()=>{let e=Array.from(new Set(X.map(e=>e.chatRunId).filter(e=>!!e)));await Promise.all(e.map(e=>ea(e))),await z(),await V()},[X,ea,V,z]),eo=(0,s.useCallback)(async(t,s,n,i,l,d,c)=>{let u,m,x,p,v,g,j,y,w;ee&&await es(),O(null);let N=await H();if(!N)return;let k=I.map(e=>e.id),S=Q?h:null,C=[(u=`/api/projects/${e}/objectives/${a.id}`,m=P?`${P}${u}`:u,x=`${m}/scheduled-tasks`,p=`${m}/linear-issues`,v=`${m}/notes`,g=`~/.agx/projects/${r}/objectives/${a.key}.md`,j=`~/.agx/projects/${r}/objectives/${a.key}/notes/`,y=`${m}/validate`,w=a.notes?.length?a.notes.map(e=>`- **${e.title}**: ${e.body.slice(0,120)}${e.body.length>120?"...":""}`).join("\n"):null,["You are working inside a strategy session for this project objective.",`Project slug: ${r}`,`Objective: ${a.title}`,`Objective label: ${a.key}`,o?`Owning team: ${o}`:"",w?`Current notes:
2
+ ${w}`:"Current notes: none yet.","Wake schedule: managed by the built-in objective worker job.",`## Objective file (source of truth)
3
+
4
+ This objective is stored as a frontmatter markdown file at:
5
+ \`${g}\`
6
+
7
+ File format:
8
+ - YAML frontmatter between \`---\` delimiters contains all metadata (title, teamId, key, status, progress, scheduledTaskIds, threadId, chatSessionVersion, createdAt, updatedAt).
9
+ - \`## Activities\` section contains the activity timeline; each activity is a \`### Title\` block with metadata lines (\`- **id:**\`, \`- **source:**\`, \`- **created:**\`, \`- **body:**\`) and optional \`#### Replies\` sub-section.
10
+
11
+ Notes are stored as separate files in \`${j}\`. Each note is a markdown file with YAML frontmatter (id, title, objectiveId, createdAt, updatedAt) and a markdown body.
12
+
13
+ When updating the objective, you can edit this file directly. Rules:
14
+ - NEVER remove or break the \`---\` frontmatter delimiters.
15
+ - NEVER change the \`id\` or \`createdAt\` fields.
16
+ - Always update \`updatedAt\` to the current ISO timestamp when making changes.
17
+ - After any edit, call \`GET ${y}\` to verify the file is still valid.
18
+ - If validation fails, fix the errors immediately before doing anything else.`,"Scheduled tasks live in the shared scheduled-task list and are filtered by this objective label.","Your job is to help the team develop the strategy needed to reach the goal, including the right combination of objective notes, scheduled tasks, and Linear tickets.","Use the current session history to build on prior reasoning. Only reset and start from scratch when the user explicitly starts a new session.","Use this thread to pressure-test strategy, suggest better tactics, rewrite the objective when asked, propose the right operational cadence, and take concrete follow-up actions when the user wants them applied.","When suggesting edits, prefer editing the frontmatter file directly or using the notes API. When the user asks you to make a change, edit the file, validate, then confirm.","Local objective APIs:",`- PATCH ${m} with JSON fields such as {"title","teamId","key"} to update the objective itself.`,`- GET ${v} to list all notes for this objective. Returns {"notes":[...],"total","page","limit","hasMore"}.`,`- POST ${v} with {"title","body"} to create a new note.`,`- GET ${v}/{noteId} to read a single note.`,`- PATCH ${v}/{noteId} with {"title","body"} to update a note.`,`- DELETE ${v}/{noteId} to delete a note.`,`- GET ${x} to inspect the scheduled tasks already tracked for this objective.`,`- POST ${x} with {"name","prompt","cadence","agentId"} to create a scheduled task for this objective.`,`- GET ${p} to inspect Linear tickets carrying the objective label "${a.key}".`,`- POST ${p} with {"title","description","teamId","assigneeId","cycleId","stateId","priority"} to create a Linear ticket labeled "${a.key}".`,`- GET ${y} to validate the objective file on disk. Returns {"valid":true} or {"valid":false,"errors":[...]}.`].filter(Boolean).join("\n\n")),d].filter(Boolean).join("\n\n"),$=await D(t,s,N,S,n,i,l?[l]:k,r,C,c);!S&&$&&(f($),b("detail"))},[P,H,ee,es,Q,a,I,e,r,h,D,o]),en=(0,s.useMemo)(()=>Q?Y?.messages??[]:[],[Q,Y]),ei=(0,s.useMemo)(()=>Q&&h?Object.entries(W).filter(([,e])=>e.rootMessageId===h):[],[Q,h,W]),el=(0,s.useCallback)(e=>{u(t=>{let r=Math.max(320,Math.min(1200,t+e));return(0,em.persistObjectiveChatPanelWidth)(r),r})},[]);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(eb,{onResize:el}),(0,t.jsxs)("aside",{className:"relative flex h-full min-h-[420px] w-full flex-col overflow-hidden border-t border-[var(--border)] bg-[var(--overlay-panel)] xl:min-h-0 xl:w-[var(--objective-chat-panel-width)] xl:shrink-0 xl:self-stretch xl:border-l xl:border-t-0",style:{"--objective-chat-panel-width":`${c}px`},children:[(0,t.jsx)(ek,{message:E}),Q?(0,t.jsx)("div",{className:"border-b border-[var(--border)] px-4 py-4",children:(0,t.jsxs)("button",{type:"button",onClick:()=>b("list"),"aria-label":"Back to sessions",className:"inline-flex min-w-0 items-center gap-2 text-left text-sm font-medium text-[var(--foreground)] transition-colors hover:text-[var(--primary)]",children:[(0,t.jsx)(n.ArrowLeft,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{className:"truncate",children:Y?.title??"Loading session..."})]})}):(0,t.jsx)("div",{className:"border-b border-[var(--border)] px-4 py-4",children:(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("p",{className:"text-xs font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:"Strategy Sessions"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Start a new strategy conversation below, or open an earlier session to keep building on it."})]})}),(0,t.jsx)("div",{className:`min-h-0 flex-1 overflow-y-auto pb-[calc(15rem+env(safe-area-inset-bottom))] ${Q?"px-4 py-4":"px-0 py-0"}`,children:Q?0===en.length?(0,t.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 px-4 text-center text-[var(--muted-foreground)]",children:[(0,t.jsx)("p",{className:"text-sm font-medium text-[var(--foreground)]",children:"Loading strategy session"}),(0,t.jsx)("p",{className:"max-w-sm text-xs",children:"The conversation will appear here once the session history is ready."})]}):(0,t.jsxs)("div",{className:"space-y-5",children:[en.map(e=>{let r=e.participantId?K.get(e.participantId):null;return(0,t.jsxs)("div",{className:"flex gap-3",children:["user"===e.role?(0,t.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-[var(--overlay-panel-soft)] text-[var(--muted-foreground)]",children:(0,t.jsx)(v.User,{className:"h-4 w-4"})}):(0,t.jsx)("img",{src:(0,C.agentAvatarUrl)(e.participantId??"assistant",32,r?.color),alt:r?.name??"Agent",className:"h-8 w-8 shrink-0 rounded-full border border-[var(--border)] object-cover"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:"user"===e.role?"You":r?.name??"Agent"}),(0,t.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:new Date(e.timestamp).toLocaleString([],{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})})]}),(0,t.jsx)("div",{className:"mt-2 rounded-2xl border border-[var(--border)] bg-[var(--overlay-panel-muted)] px-4 py-3 text-sm text-[var(--foreground)]",children:(0,t.jsx)(S.Markdown,{content:e.content,isUser:"user"===e.role})})]})]},e.id)}),ei.map(([e])=>{let r=K.get(e);return(0,t.jsxs)("div",{className:"flex items-center gap-3 text-sm text-[var(--muted-foreground)]",children:[(0,t.jsx)("img",{src:(0,C.agentAvatarUrl)(e,32,r?.color),alt:r?.name??"Agent",className:"h-8 w-8 shrink-0 rounded-full border border-[var(--border)] object-cover"}),(0,t.jsxs)("span",{children:[r?.name??"Agent"," is thinking..."]})]},`stream-${e}`)})]}):0===G.length?(0,t.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 px-4 text-center text-[var(--muted-foreground)]",children:[(0,t.jsx)("p",{className:"text-sm font-medium text-[var(--foreground)]",children:"No strategy sessions yet"}),(0,t.jsx)("p",{className:"max-w-sm text-xs",children:"Use the composer below to start the first conversation about how this objective should be reached."})]}):(0,t.jsx)("div",{className:"divide-y divide-[var(--border)]",children:G.map(e=>{var r;let a=et.get(e.rootMessageId)??null;return(0,t.jsxs)("button",{type:"button",onClick:()=>{f(e.rootMessageId),b("detail")},className:"flex w-full items-start justify-between gap-3 px-4 py-3 text-left transition-colors hover:bg-[var(--overlay-panel-soft)]",children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("p",{className:"truncate text-sm font-medium text-[var(--foreground)]",children:e.title}),(0,t.jsxs)("p",{className:"mt-1 text-[11px] text-[var(--muted-foreground)]",children:[1===(r=e.messageCount)?"1 message":`${r} messages`," · Last"," ",eh(e.updatedAt)]})]}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[a?(0,t.jsx)("span",{className:"rounded-full border border-[var(--status-in-progress-border)] bg-[var(--status-in-progress-bg)] px-2 py-1 text-[10px] font-semibold uppercase tracking-[0.18em] text-[var(--status-in-progress-text)]",children:"queued"===a?"Queued":"Working"}):null,(0,t.jsx)(i.ArrowRight,{className:"mt-0.5 h-4 w-4 text-[var(--muted-foreground)]"})]})]},e.rootMessageId)})})}),(0,t.jsx)("div",{className:"absolute bottom-0 left-0 right-0 bg-[var(--overlay-panel)] p-3 pb-[calc(0.75rem+env(safe-area-inset-bottom))]",children:(0,t.jsx)(k.Composer,{onSend:eo,onStop:es,participants:I,commands:[],projectSlug:r,loading:"ready"!==er,activityStatus:er,sendInterruptsBusy:!0,placeholder:Q?`Continue strategy for "${a.title}"...`:`Start a new strategy session for "${a.title}"...`,initialPinnedParticipantId:I[0]?.id})})]})]})}function eN({label:e}){return(0,t.jsx)("div",{className:"flex h-full items-center justify-center text-sm text-[var(--muted-foreground)]",children:e})}function ek({message:e}){return e?(0,t.jsxs)("div",{className:"mt-3 flex items-center gap-2 rounded-2xl border border-rose-500/20 bg-rose-500/10 px-3 py-2 text-sm text-rose-100",children:[(0,t.jsx)(o.AlertTriangle,{className:"h-4 w-4"}),(0,t.jsx)("span",{children:e})]}):null}function eS({content:e,editable:r=!1,onChange:a,placeholder:s}){let o=e.trim().length>0;return r||o?(0,t.jsx)("div",{className:"overflow-hidden border-l-2 border-[var(--border)]/60 pl-4 transition-all focus-within:border-indigo-500/60",children:r||o?(0,t.jsx)($.default,{content:e,editable:r,onChange:a,placeholder:s}):null}):null}function eC({onResize:e}){let{isTouchLayout:r}=(0,ec.useInputCapabilities)();return r?null:(0,t.jsx)("div",{role:"separator","aria-orientation":"vertical","aria-label":"Resize objective list panel",className:"group relative z-10 w-0 shrink-0 cursor-col-resize",onMouseDown:t=>{t.preventDefault();let r=t.clientX;document.body.style.cursor="col-resize",document.body.style.userSelect="none";let a=t=>{let a=t.clientX-r;r=t.clientX,e(a)},s=()=>{document.body.style.cursor="",document.body.style.userSelect="",window.removeEventListener("mousemove",a),window.removeEventListener("mouseup",s)};window.addEventListener("mousemove",a),window.addEventListener("mouseup",s)},children:(0,t.jsx)("div",{className:"absolute inset-y-0 -left-0.5 w-1 transition-colors group-hover:bg-[var(--primary)]/40"})})}function e$({objective:e,activityCount:r,lastActivityAt:a,activeAgentIds:s,participants:o,isSelected:n,onSelect:i}){let l,d=(l=1===r?"1 activity":`${r} activities`,a?`${l} \xb7 Last ${eh(a)}`:`${l} \xb7 No activity yet`);return(0,t.jsx)("article",{className:"px-2",children:(0,t.jsxs)("button",{type:"button",onClick:i,"aria-label":`Open details for ${e.title}`,className:`group flex w-full items-center gap-3 rounded-xl px-2 py-2 text-left transition-colors ${n?"bg-[var(--primary)]/10 border border-[var(--primary)]/20":"border border-transparent hover:bg-[var(--secondary)]"}`,children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1 py-0.5",children:[(0,t.jsx)("div",{className:"flex min-w-0 items-center gap-2",children:(0,t.jsx)("span",{className:`rounded-full border px-1.5 py-0 text-[9px] font-semibold uppercase tracking-[0.12em] ${ep[e.status].chipClass}`,children:ep[e.status].label})}),(0,t.jsx)("p",{className:"mt-1 truncate text-sm font-medium text-[var(--foreground)]",children:e.title}),(0,t.jsx)("p",{className:"mt-0.5 text-[11px] text-[var(--muted-foreground)]",children:d})]}),s&&s.length>0&&(0,t.jsx)("span",{className:"inline-flex items-center -space-x-1 shrink-0",children:s.slice(0,3).map(e=>{let r=o?.find(t=>t.id===e);return(0,t.jsxs)("span",{className:"relative inline-block",title:r?.name??e,children:[(0,t.jsx)("img",{src:(0,C.agentAvatarUrl)(e,16,r?.color??void 0),alt:r?.name??e,className:"h-3 w-3 rounded-full ring-[1.5px] ring-[var(--background)]"}),(0,t.jsx)("span",{className:"absolute -bottom-px -right-px h-1.5 w-1.5 rounded-full bg-green-500 ring-[1px] ring-[var(--background)]"})]},e)})})]})})}function eI({projectSlug:e,objectiveId:o,onObjectiveDeleted:n}){var i;let l,v,y,w,N,k,C=(0,a.useRouter)(),{isLoading:$,project:A,workspace:E,teams:O,persistWorkspace:T,refetchProject:P}=ej(e),L=(0,s.useMemo)(()=>E.objectives.find(e=>e.id===o)??null,[o,E.objectives]),R=(0,s.useMemo)(()=>eg(O,E,o),[o,O,E]),D=L?(i=L.teamId,O.find(e=>e.id===i)?.name??null):null,[_,F]=(0,s.useState)(null),[z,U]=(0,s.useState)(null),[q,W]=(0,s.useState)("activity"),[V,B]=(0,s.useState)(0),[H,K]=(0,s.useState)(!1),[X,G]=(0,s.useState)(null),[Y,Z]=(0,s.useState)([]),[ee,et]=(0,s.useState)(!1),[er,ea]=(0,s.useState)(null),[es,eo]=(0,s.useState)({}),[en,ei]=(0,s.useState)({}),[ec,eu]=(0,s.useState)(new Set),[em,eb]=(0,s.useState)(!1),[ev,ey]=(0,s.useState)(""),[eC,e$]=(0,s.useState)([]),[eE,eO]=(0,s.useState)(!0),[eM,eT]=(0,s.useState)(!1),{jobs:eP}=(0,M.usePromptJobs)(A?.id??null,{requireProjectId:!0,includeObjectiveJobs:!0,objectiveId:o}),eL=(0,s.useMemo)(()=>eP.filter(e=>e.objectiveId===o).length,[eP,o]),eR=async e=>{K(!0),G(null);try{await T(e)}catch(e){throw G(e instanceof Error?e.message:"Failed to save objective updates."),e}finally{K(!1)}},eD=async()=>{if(!_||!L)return;let e=_.title.trim();if(!e)return void G("Objective statement is required.");let t={...L,title:e,updatedAt:new Date().toISOString()};await eR((0,ex.upsertProjectObjective)(E,t)),F(null)},e_=(0,s.useCallback)(async()=>{if(A?.id&&L?.id){et(!0);try{let e=await fetch(`/api/projects/${A.id}/objectives/${L.id}/notes?limit=100`);if(e.ok){let t=await e.json();Z(t.notes??[])}}catch{}finally{et(!1)}}},[A?.id,L?.id]);(0,s.useEffect)(()=>{e_()},[e_]),(0,s.useEffect)(()=>{"notes"===q&&e_()},[q,e_]),(0,s.useEffect)(()=>{if(!A?.id||!L?.id)return;let e=new Set;for(let[t,r]of Object.entries(es)){let a=Y.find(e=>e.id===t);a&&a.body!==r&&e.add(t)}for(let[t,r]of Object.entries(en)){let a=Y.find(e=>e.id===t);a&&a.title!==r&&e.add(t)}if(0===e.size)return;let t=[];for(let r of e){let e={},a=es[r],s=en[r],o=Y.find(e=>e.id===r);if(!o||(void 0!==a&&a!==o.body&&(e.body=a),void 0!==s&&s!==o.title&&s.trim()&&(e.title=s.trim()),0===Object.keys(e).length))continue;let n=window.setTimeout(async()=>{eu(e=>new Set(e).add(r));try{let t=await fetch(`/api/projects/${A.id}/objectives/${L.id}/notes/${r}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(t.ok){let e=await t.json();Z(t=>t.map(t=>t.id===r?e.note:t))}}catch{G("Failed to save note.")}finally{eu(e=>{let t=new Set(e);return t.delete(r),t})}},700);t.push(n)}return()=>{for(let e of t)window.clearTimeout(e)}},[es,en,Y,A?.id,L?.id]);let eF=async()=>{if(A?.id&&L?.id){eb(!0);try{let e=await fetch(`/api/projects/${A.id}/objectives/${L.id}/notes`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:"Untitled",body:""})});if(e.ok){let t=await e.json();Z(e=>[t.note,...e]),ea(t.note.id)}}catch{G("Failed to create note.")}finally{eb(!1)}}},ez=async e=>{if(A?.id&&L?.id)try{let t=await fetch(`/api/projects/${A.id}/objectives/${L.id}/notes/${e}`,{method:"DELETE"});(t.ok||204===t.status)&&(Z(t=>t.filter(t=>t.id!==e)),er===e&&ea(null))}catch{G("Failed to delete note.")}},eU=async()=>{!L||window.confirm(`Delete "${L.title}"?`)&&(await eR((0,ex.removeProjectObjective)(E,L.id)),n?n():C.push(`/projects/${e}`))},eq=(0,s.useCallback)(async e=>{L&&L.threadId!==e&&await eR((0,ex.upsertProjectObjective)(E,{...L,threadId:e,updatedAt:new Date().toISOString()}))},[L,eR,E]),eW=(0,s.useCallback)(async e=>{if(!A?.id||!L?.id)return G("Objective not found."),!1;G(null);try{let t=await fetch(`/api/projects/${A.id}/objectives/${L.id}/scheduled-tasks`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...e,prompt:function(e,t){let r=t.trim();if(!r)return r;let a=`Objective label: ${e.key}`;return r.toLowerCase().includes(a.toLowerCase())?r:[a,`Write your output as an activity file at ~/.agx/projects/<project>/objectives/${e.key}/activities/<timestamp>-<slug>.md
19
+ The file must have YAML frontmatter with: id (unique), source (your task ID), objectiveLabel: "${e.key}", createdAt (ISO), type (one of: metric-check, status-update, milestone, note).
20
+ The markdown body below the frontmatter contains your output.`,r].join("\n\n")}(L,e.prompt)})}),r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r.error||"Failed to create scheduled task.");return await P(),!0}catch(e){return G(e instanceof Error?e.message:"Failed to create scheduled task."),!1}},[L,A?.id,P]),eJ=(0,s.useCallback)(async()=>{if(!A?.id||!L?.id)return G("Objective not found."),!1;if(!L.teamId)return G("Assign a team to this objective before creating a worker."),!1;G(null);try{let e=await fetch(`/api/projects/${A.id}/objectives/${L.id}/worker`,{method:"PUT"}),t=await e.json().catch(()=>({}));if(!e.ok)throw Error(t.error||"Failed to trigger objective worker.");return await P(),!0}catch(e){return G(e instanceof Error?e.message:"Failed to trigger objective worker."),!1}},[L,A?.id,P]);return((0,s.useEffect)(()=>{if(!A?.id||!L?.id){e$([]),eO(!0);return}let e=A.id,t=L.id,r=!1;return async function(){try{let a=await fetch(`/api/projects/${e}/objectives/${t}/linear-issues`),s=401===a.status?{connected:!1,issues:[]}:a.ok?await a.json():{connected:!0,issues:[]};if(r)return;e$(Array.isArray(s.issues)?s.issues:[]),eO(!1!==s.connected)}catch(e){if(r)return;console.warn("Failed to load objective resources",e),e$([]),eO(!0)}}(),()=>{r=!0}},[L?.id,L?.key,A?.id]),$&&!A)?(0,t.jsx)(eN,{label:"Loading objective..."}):A?L?(0,t.jsx)("div",{className:"flex h-full min-h-0 flex-col bg-[radial-gradient(circle_at_top_left,rgba(59,130,246,0.1),transparent_28%),var(--background)] text-[var(--foreground)]",children:(0,t.jsx)("div",{className:"flex-1 min-h-0 overflow-hidden",children:(0,t.jsxs)("div",{className:"flex h-full min-h-0 flex-col xl:flex-row",children:[(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto",children:(0,t.jsxs)("div",{className:"max-w-5xl mx-auto pt-16 px-8 pb-20",children:[(0,t.jsx)(ek,{message:X}),(0,t.jsxs)("div",{className:"flex items-center gap-3 mb-4",children:[(0,t.jsx)("span",{className:"rounded-full border border-[var(--tone-neutral-border)] bg-[var(--tone-neutral-bg)] px-2.5 py-0.5 text-[10px] font-mono uppercase tracking-wider text-[var(--tone-neutral)]",children:L.key}),(0,t.jsx)("span",{className:`rounded-full border px-2.5 py-0.5 text-[10px] font-semibold uppercase tracking-[0.18em] ${ep[L.status].chipClass}`,children:ep[L.status].label})]}),(0,t.jsx)("div",{className:"mb-6",children:_?(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{autoFocus:!0,value:_.title,onChange:e=>F({..._,title:e.target.value}),onKeyDown:e=>{"Enter"===e.key&&eD(),"Escape"===e.key&&F(null)},className:"flex-1 border-b-2 border-[var(--primary)] bg-transparent px-0 py-1 text-[28px] font-semibold leading-tight text-[var(--foreground)] outline-none",placeholder:"Objective statement"}),(0,t.jsx)("button",{type:"button",onClick:()=>void eD(),disabled:H,className:"rounded-md p-1.5 text-[var(--primary)] transition-colors hover:bg-[var(--status-in-progress-bg)]","aria-label":"Save objective",children:(0,t.jsx)(c.Check,{size:18})}),(0,t.jsx)("button",{type:"button",onClick:()=>F(null),className:"rounded-md p-1.5 text-[var(--muted-foreground)] transition-colors hover:bg-[var(--muted)]","aria-label":"Cancel editing",children:(0,t.jsx)(j.X,{size:18})})]}):(0,t.jsxs)("button",{type:"button","aria-label":`Edit objective ${L.title}`,className:"flex items-center gap-3 group cursor-pointer text-left",onClick:()=>F({id:L.id,title:L.title,teamId:L.teamId,summary:L.summary}),children:[(0,t.jsx)("h1",{className:"text-[28px] leading-tight font-semibold text-[var(--foreground)]",children:L.title}),(0,t.jsx)(x.Pencil,{size:16,className:"shrink-0 text-[var(--muted-foreground)] opacity-0 transition-opacity group-hover:opacity-100"})]})}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-x-6 gap-y-3 mb-10",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("span",{className:"flex items-center gap-1.5 text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)]",children:[(0,t.jsx)(f.Users,{size:12})," Team"]}),(0,t.jsx)("span",{className:"text-[var(--app-shell-soft-text)]",children:"·"}),z?(0,t.jsx)("div",{className:"min-w-[180px]",children:(0,t.jsx)(I.default,{options:R.map(e=>({id:e.id,label:e.name})),value:z.teamId,onChange:e=>{U({teamId:e});let t=e.trim();if(!t||!L)return;let r=ef(E,t,L.id);r?G(`Team is already assigned to "${r.title}".`):(eR((0,ex.upsertProjectObjective)(E,{...L,teamId:t,updatedAt:new Date().toISOString()})),U(null))},placeholder:"Select a team…"})}):(0,t.jsxs)("button",{type:"button","aria-label":`Edit team for ${L.title}`,onClick:()=>U({teamId:L.teamId}),className:"group -mx-1.5 -my-0.5 flex items-center gap-2 rounded px-1.5 py-0.5 transition-colors hover:bg-[var(--muted)]",children:[(0,t.jsx)("div",{className:"w-5 h-5 rounded-full bg-blue-500/20 text-blue-400 flex items-center justify-center text-[10px] font-bold border border-blue-500/30",children:(D??"?").charAt(0).toUpperCase()}),(0,t.jsx)("span",{className:"text-sm text-[var(--foreground)] transition-colors group-hover:text-[var(--primary)]",children:D??"Not assigned"})]})]}),A.id&&L.id?(0,t.jsx)(el,{projectId:A.id,objectiveId:L.id,objectiveKey:L.key,metadata:A.metadata,currentProgress:L.progress,currentStatus:L.status,objectiveUpdatedAt:L.updatedAt}):null]}),(0,t.jsx)("div",{className:"mb-6",children:(0,t.jsxs)("button",{type:"button",onClick:async()=>{eT(!0),await eJ(),eT(!1)},disabled:eM,className:"inline-flex items-center gap-2 rounded-xl border border-[var(--status-completed-border)] bg-[var(--status-completed-bg)] px-3 py-2 text-sm text-[var(--status-completed-text)] transition-opacity hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-50",children:[(0,t.jsx)(g.Sparkles,{className:"h-4 w-4"}),eM?"Working...":"Work on objective"]})}),(0,t.jsx)("div",{className:"mb-8 border-b border-[var(--border)]",children:(0,t.jsx)("nav",{className:"flex gap-1 -mb-px","aria-label":"Objective sections",children:[{id:"activity",label:"Activity",icon:u.Clock},{id:"notes",label:"Notes",icon:m.FileText},{id:"linear",label:"Linear",icon:ed.LinearIcon},{id:"scheduled-tasks",label:"Scheduled Tasks",icon:d}].map(e=>{let r,a;return(0,t.jsxs)("button",{type:"button",onClick:()=>W(e.id),className:`flex items-center gap-2 px-3 py-2.5 text-sm font-medium border-b-2 transition-colors ${q===e.id?"border-[var(--primary)] text-[var(--foreground)]":"border-transparent text-[var(--muted-foreground)] hover:border-[var(--border)] hover:text-[var(--foreground)]"}`,children:[(0,t.jsx)(e.icon,{size:14}),e.label,"activity"===e.id&&V>0&&(0,t.jsx)("span",{className:"rounded-full bg-[var(--tone-neutral-bg)] px-1.5 py-0.5 font-mono text-[10px] text-[var(--tone-neutral)]",children:V}),"notes"===e.id&&Y.length>0&&(0,t.jsx)("span",{className:"rounded-full bg-[var(--tone-neutral-bg)] px-1.5 py-0.5 font-mono text-[10px] text-[var(--tone-neutral)]",children:Y.length}),"linear"===e.id&&(r=["done","canceled","cancelled","completed","duplicate"],(a=eC.filter((e,t,a)=>a.findIndex(t=>t.id===e.id)===t&&!r.includes(e.status.toLowerCase()))).length>0?(0,t.jsx)("span",{className:"rounded-full bg-[var(--tone-neutral-bg)] px-1.5 py-0.5 font-mono text-[10px] text-[var(--tone-neutral)]",children:a.length}):null),"scheduled-tasks"===e.id&&eL>0&&(0,t.jsx)("span",{className:"rounded-full bg-[var(--tone-neutral-bg)] px-1.5 py-0.5 font-mono text-[10px] text-[var(--tone-neutral)]",children:eL})]},e.id)})})}),(0,t.jsxs)("div",{className:"space-y-10",children:["notes"===q&&(0,t.jsxs)("section",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex gap-2 items-center",children:[(0,t.jsxs)("div",{className:"relative flex-1",children:[(0,t.jsx)(b.Search,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-[var(--muted-foreground)]"}),(0,t.jsx)("input",{type:"text",value:ev,onChange:e=>ey(e.target.value),placeholder:"Search notes...",className:"w-full rounded-md border border-[var(--border)] bg-[var(--input)] py-1.5 pl-8 pr-3 text-sm text-[var(--foreground)] placeholder:text-[var(--app-shell-soft-text)] focus:border-[var(--primary)] focus:outline-none"})]}),(0,t.jsxs)("button",{type:"button",onClick:eF,disabled:em,className:"flex items-center gap-1.5 rounded-md border border-[var(--status-in-progress-border)] bg-[var(--status-in-progress-bg)] px-3 py-1.5 text-sm font-medium text-[var(--status-in-progress-text)] transition-opacity hover:opacity-90 disabled:opacity-50",children:[(0,t.jsx)(p.Plus,{size:14}),"New note"]})]}),ee?(0,t.jsx)("p",{className:"py-4 text-sm text-[var(--muted-foreground)]",children:"Loading notes..."}):0===Y.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] py-4",children:"No notes yet. Add one above."}):0===(v=(l=ev.toLowerCase())?Y.filter(e=>e.title.toLowerCase().includes(l)||e.body.toLowerCase().includes(l)):Y).length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] py-4",children:"No notes match your search."}):(0,t.jsx)("div",{className:"columns-1 gap-3 sm:columns-2 lg:columns-3",style:{columnFill:"balance"},children:v.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>ea(e.id),className:"mb-3 block w-full break-inside-avoid overflow-hidden rounded-lg border border-[var(--border)] bg-[var(--overlay-panel-muted)] text-left transition-shadow hover:shadow-md",children:[(0,t.jsx)("div",{className:"px-3 pt-3 pb-1",children:(0,t.jsx)("h4",{className:"text-sm font-medium text-[var(--foreground)] leading-snug",children:e.title})}),e.body.trim()&&(0,t.jsx)("div",{className:"px-3 pb-2 text-xs text-[var(--muted-foreground)] line-clamp-4",children:(0,t.jsx)(S.Markdown,{content:e.body})}),(0,t.jsx)("div",{className:"flex items-center justify-between px-3 pb-2",children:(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:new Date(e.updatedAt).toLocaleDateString()})})]},e.id))}),er&&(()=>{let e=Y.find(e=>e.id===er);if(!e)return null;let r=es[e.id]??e.body,a=en[e.id]??e.title,s=ec.has(e.id);return(0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-start justify-center bg-black/50 pt-[5vh]",onClick:e=>{e.target===e.currentTarget&&ea(null)},children:(0,t.jsxs)("div",{className:"mx-6 w-full max-w-7xl rounded-xl border border-[var(--border)] bg-[var(--background)] shadow-xl",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-[var(--border)] px-5 py-3",children:[(0,t.jsx)("input",{type:"text",autoFocus:!0,value:a,onFocus:e=>{"Untitled"===a&&e.target.select()},onChange:t=>ei(r=>({...r,[e.id]:t.target.value})),className:"flex-1 bg-transparent text-base font-semibold text-[var(--foreground)] focus:outline-none"}),(0,t.jsxs)("div",{className:"flex items-center gap-2 ml-3",children:[(0,t.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:s?"Saving...":new Date(e.updatedAt).toLocaleDateString()}),(0,t.jsx)("button",{type:"button",onClick:()=>ez(e.id),className:"p-1 text-[var(--muted-foreground)] transition-colors hover:text-[var(--destructive)]",children:(0,t.jsx)(h.Trash2,{size:14})}),(0,t.jsx)("button",{type:"button",onClick:()=>ea(null),className:"p-1 text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:(0,t.jsx)(j.X,{size:14})})]})]}),(0,t.jsx)("div",{className:"max-h-[75vh] overflow-y-auto px-5 py-4",children:(0,t.jsx)(eS,{content:r,editable:!0,onChange:t=>eo(r=>({...r,[e.id]:t})),placeholder:"Write your note..."})})]})})})()]}),"activity"===q&&A.id&&L.id&&(0,t.jsx)(Q,{projectId:A.id,objectiveId:L.id,onTotalChange:B}),"linear"===q&&(y=eC.filter((e,t,r)=>r.findIndex(t=>t.id===e.id)===t),w=["done","canceled","cancelled","completed","duplicate"],N=y.filter(e=>!w.includes(e.status.toLowerCase())),k=y.filter(e=>w.includes(e.status.toLowerCase())).slice(-5),(0,t.jsxs)("section",{children:[(0,t.jsx)("div",{className:"flex flex-wrap items-start justify-between gap-3 mb-4",children:(0,t.jsxs)("p",{className:"text-sm text-[var(--muted-foreground)]",children:["Tickets tracked by the objective label"," ",(0,t.jsx)("code",{className:"rounded bg-[var(--tone-neutral-bg)] px-1.5 py-0.5 font-mono text-[11px] text-[var(--foreground)]",children:L.key}),"."]})}),eE?0===y.length?(0,t.jsx)(eA,{label:`No Linear tickets with label ${L.key} yet.`}):(0,t.jsxs)(t.Fragment,{children:[N.length>0&&(0,t.jsx)("div",{className:"space-y-3",children:N.map(r=>(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--border)] bg-[var(--overlay-panel-muted)] p-4",children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("p",{className:"text-xs font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:r.identifier}),(0,t.jsx)("a",{href:`/projects/${e}/linear?issue=${r.id}`,className:"mt-1 block text-sm font-medium text-[var(--foreground)] transition-colors hover:text-[var(--primary)]",children:r.title})]}),(0,t.jsx)("span",{className:"rounded-full border border-[var(--tone-neutral-border)] px-2 py-1 text-[10px] font-semibold uppercase tracking-[0.18em] text-[var(--tone-neutral)]",children:r.status})]}),(0,t.jsxs)("div",{className:"mt-3 flex flex-wrap items-center gap-2 text-[11px] text-[var(--muted-foreground)]",children:[(0,t.jsxs)("span",{children:["Updated ",eh(r.updatedAt)]}),(0,t.jsx)("span",{children:r.assignee?`Assigned to ${r.assignee}`:"Unassigned"})]})]},r.id))}),k.length>0&&(0,t.jsxs)("div",{className:N.length>0?"mt-6":"",children:[(0,t.jsx)("p",{className:"text-[11px] font-medium uppercase tracking-[0.18em] text-[var(--muted-foreground)] mb-2",children:"Completed"}),(0,t.jsx)("div",{className:"space-y-0.5",children:k.map(r=>(0,t.jsxs)("a",{href:`/projects/${e}/linear?issue=${r.id}`,className:"group flex items-center gap-3 rounded-md px-2 py-1.5 text-[var(--muted-foreground)] transition-colors hover:bg-[var(--muted)] hover:text-[var(--foreground)]",children:[(0,t.jsx)("span",{className:"text-[11px] font-mono shrink-0",children:r.identifier}),(0,t.jsx)("span",{className:"text-[12px] truncate",children:r.title}),(0,t.jsx)("span",{className:"ml-auto shrink-0 text-[10px] text-[var(--app-shell-soft-text)] group-hover:text-[var(--muted-foreground)]",children:r.status})]},r.id))})]})]}):(0,t.jsx)(eA,{label:"Connect Linear to create and track tickets for this objective."})]})),"scheduled-tasks"===q&&(0,t.jsx)("section",{children:(0,t.jsx)(J,{projectId:A.id,objectiveId:L.id,objectiveKey:L.key,createDefaults:{name:`Work on ${L.title}`},onCreateTask:eW})}),(0,t.jsxs)("section",{className:"pt-10",children:[(0,t.jsx)("div",{className:"mb-4",children:(0,t.jsx)("h2",{className:"text-sm font-semibold text-[var(--destructive)]",children:"Danger Zone"})}),(0,t.jsxs)("div",{className:"flex items-center justify-between rounded-xl border border-[var(--destructive-border)] bg-[var(--destructive-bg)] p-5",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-sm font-medium text-[var(--foreground)]",children:"Delete Objective"}),(0,t.jsx)("p",{className:"mt-1 text-sm text-[var(--muted-foreground)]",children:"Once you delete an objective, there is no going back."})]}),(0,t.jsxs)("button",{type:"button",onClick:()=>void eU(),"aria-label":`Delete objective ${L.title}`,className:"flex items-center gap-2 whitespace-nowrap rounded-md border border-[var(--destructive-border)] bg-[var(--destructive-bg)] px-3 py-1.5 text-sm font-medium text-[var(--destructive)] transition-opacity hover:opacity-90",children:[(0,t.jsx)(h.Trash2,{size:14})," Delete"]})]})]})]})]})}),(0,t.jsx)(ew,{projectId:A.id,projectSlug:e,objective:L,teamName:D,onThreadLinked:eq,onObjectiveUpdated:P})]})})}):(0,t.jsx)("div",{className:"flex h-full items-center justify-center px-4 bg-[var(--background)]",children:(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--border)] bg-[var(--card-bg)] p-8 text-center",children:[(0,t.jsx)("p",{className:"text-lg font-semibold text-[var(--foreground)]",children:"Objective not found"}),(0,t.jsx)("p",{className:"mt-2 text-sm text-[var(--muted-foreground)]",children:"It may have been deleted or the link is stale."}),(0,t.jsx)(r.default,{href:`/projects/${e}`,className:"mt-4 inline-flex items-center gap-2 rounded-md border border-[var(--border)] bg-[var(--card-bg)] px-3 py-1.5 text-sm text-[var(--foreground)] transition-colors hover:bg-[var(--secondary)]",children:"Back to objectives"})]})}):(0,t.jsx)(eN,{label:"Project not found."})}function eA({label:e}){return(0,t.jsx)("div",{className:"flex items-center rounded-xl border border-dashed border-[var(--border)] bg-[var(--overlay-panel-muted)] p-6",children:(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:e})})}function eE({mode:e,draft:r,teams:a=[],isSaving:s,onChange:o,onClose:n,onSave:i}){return(0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/45 p-4",children:(0,t.jsxs)("div",{role:"dialog","aria-modal":"true","aria-label":"edit"===e?"Edit objective":"New objective",className:"w-full max-w-3xl overflow-hidden rounded-[32px] border border-[var(--border)] bg-[var(--overlay-panel-strong)] shadow-2xl",children:[(0,t.jsxs)("div",{className:"border-b border-[var(--border)] px-5 py-4",children:[(0,t.jsx)("h3",{className:"text-lg font-semibold text-[var(--foreground)]",children:"edit"===e?"Edit objective":"New objective"}),(0,t.jsx)("p",{className:"mt-1 text-sm text-[var(--muted-foreground)]",children:"edit"===e?"Update the tracking details for this objective.":"Keep the statement measurable and use notes only for context that matters."})]}),(0,t.jsxs)("div",{className:"space-y-4 px-5 py-5",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(eO,{label:"Objective statement"}),(0,t.jsx)("input",{value:r.title,onChange:e=>o({...r,title:e.target.value}),className:"w-full rounded-2xl border border-[var(--border)] bg-[var(--input)] px-4 py-3 text-sm text-[var(--foreground)] outline-none transition-colors focus:border-[var(--primary)]",placeholder:"Get 50 qualified visitors daily"})]}),"create"===e?(0,t.jsxs)("div",{children:[(0,t.jsx)(eO,{label:"Team"}),(0,t.jsxs)("select",{value:r.teamId,onChange:e=>o({...r,teamId:e.target.value}),className:"w-full rounded-2xl border border-[var(--border)] bg-[var(--input)] px-3 py-3 text-sm text-[var(--foreground)] outline-none transition-colors focus:border-[var(--primary)]",children:[(0,t.jsx)("option",{value:"",children:"Select a team"}),a.map(e=>(0,t.jsx)("option",{value:e.id,children:e.name},e.id))]}),(0,t.jsx)("p",{className:"mt-2 text-xs text-[var(--muted-foreground)]",children:"Teams can only own one objective at a time."})]}):null]}),(0,t.jsxs)("div",{className:"flex items-center justify-end gap-2 border-t border-[var(--border)] px-5 py-4",children:[(0,t.jsx)("button",{type:"button",onClick:n,className:"rounded-xl border border-[var(--border)] px-3 py-2 text-sm text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:"Cancel"}),(0,t.jsx)("button",{type:"button",onClick:i,disabled:s,className:"rounded-xl border border-[var(--status-in-progress-border)] bg-[var(--status-in-progress-bg)] px-3 py-2 text-sm font-medium text-[var(--status-in-progress-text)] transition-opacity hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-50",children:s?"Saving...":"edit"===e?"Save objective":"Create objective"})]})]})})}function eO({label:e}){return(0,t.jsx)("label",{className:"mb-2 block text-[11px] font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:e})}e.s(["ProjectObjectivesOverview",0,function({projectSlug:e,initialObjectiveId:r}){let{isLoading:a,project:o,workspace:n,teams:i,persistWorkspace:l}=ej(e),d=n.objectives,c=(0,s.useMemo)(()=>eg(i,n),[i,n]),[u,m]=(0,s.useState)(r??null),[x,b]=(0,s.useState)(()=>(0,em.loadObjectiveListPanelWidth)()||320),[h,v]=(0,s.useState)(null),[f,g]=(0,s.useState)(!1),[j,y]=(0,s.useState)(null),[w,N]=(0,s.useState)(new Map),[k,S]=(0,s.useState)([]);(0,s.useEffect)(()=>{!u&&d.length>0&&m(d[0].id)},[u,d]),(0,s.useEffect)(()=>{u&&d.length>0&&!d.some(e=>e.id===u)&&m(d[0]?.id??null)},[u,d]),(0,s.useEffect)(()=>{let e=!1;return async function(){try{let t=await fetch("/api/participants");t.ok&&!e&&S(await t.json())}catch{}}(),()=>{e=!0}},[]),(0,s.useEffect)(()=>{let e=new Map;for(let t of d)t.threadId&&e.set(t.threadId,t.id);if(0===e.size)return;let t=!1;async function r(){try{let r=Array.from(e.keys()).join(","),a=await fetch(`/api/chat-runs/active-agents?threadIds=${encodeURIComponent(r)}`);if(!a.ok||t)return;let s=await a.json(),o=new Map;for(let[t,r]of Object.entries(s.activeAgents??{})){let a=e.get(t);a&&Array.isArray(r)&&r.length>0&&o.set(a,r)}t||N(o)}catch{}}r();let a=setInterval(()=>void r(),5e3);return()=>{t=!0,clearInterval(a)}},[d]);let C=async()=>{if(!h)return;let e=h.title.trim();if(!e)return void y("Objective statement is required.");let t=h.teamId.trim();if(!t)return void y("Team is required.");let r=ef(n,t);if(r)return void y(`Team is already assigned to "${r.title}".`);let a=new Date().toISOString(),s=(0,ex.createProjectObjective)({title:e,teamId:t,key:(0,ex.generateProjectObjectiveKey)(e,n.objectives),summary:h.summary,now:a});g(!0),y(null);try{await l((0,ex.upsertProjectObjective)(n,s));try{await fetch(`/api/projects/${o?.id}/objectives/${s.id}/worker`,{method:"POST",headers:{"Content-Type":"application/json"}})}catch{}v(null),m(s.id)}catch(e){y(e instanceof Error?e.message:"Failed to save objective updates.")}finally{g(!1)}},$=(0,s.useCallback)(e=>{b(t=>{let r=Math.max(240,Math.min(480,t+e));return(0,em.persistObjectiveListPanelWidth)(r),r})},[]);return a&&!o?(0,t.jsx)(eN,{label:"Loading objectives..."}):o?(0,t.jsxs)("div",{className:"flex h-full min-h-0 overflow-hidden bg-[var(--background)] text-[var(--foreground)]",children:[(0,t.jsxs)("div",{className:"flex flex-shrink-0 flex-col border-r border-[var(--border)] bg-[var(--background)]",style:{width:x},children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-[var(--border)] px-4 py-3",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("p",{className:"text-xs font-semibold uppercase tracking-[0.12em] text-[var(--muted-foreground)]",children:"Objectives"}),(0,t.jsx)("p",{className:"mt-0.5 text-[11px] text-[var(--muted-foreground)]",children:0===d.length?"None yet":`${d.length} total`})]}),(0,t.jsx)("button",{type:"button",onClick:()=>v(ev()),className:"inline-flex h-7 w-7 items-center justify-center rounded-lg text-[var(--muted-foreground)] transition-colors hover:bg-[var(--secondary)] hover:text-[var(--foreground)]","aria-label":"New objective",children:(0,t.jsx)(p.Plus,{className:"h-4 w-4"})})]}),(0,t.jsx)(ek,{message:j}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto py-1",children:0===d.length?(0,t.jsxs)("div",{className:"px-4 py-8 text-center",children:[(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No objectives yet."}),(0,t.jsx)("button",{type:"button",onClick:()=>v(ev()),className:"mt-2 text-sm text-[var(--primary)] hover:underline",children:"Create one"})]}):(0,t.jsx)("div",{className:"space-y-0.5",children:d.map(e=>{let r=(0,ex.buildObjectiveTimelineActivities)({objective:e,workspace:n});return(0,t.jsx)(e$,{objective:e,activityCount:r.length,lastActivityAt:r[0]?.createdAt??null,activeAgentIds:w.get(e.id),participants:k,isSelected:u===e.id,onSelect:()=>m(e.id)},e.id)})})})]}),(0,t.jsx)(eC,{onResize:$}),(0,t.jsx)("div",{className:"flex-1 min-w-0 min-h-0 overflow-hidden",children:u?(0,t.jsx)(eI,{projectSlug:e,objectiveId:u,onObjectiveDeleted:()=>m(null)}):(0,t.jsx)("div",{className:"flex h-full items-center justify-center text-sm text-[var(--muted-foreground)]",children:0===d.length?"Create an objective to get started.":"Select an objective from the list."})}),h?(0,t.jsx)(eE,{mode:"create",draft:h,teams:c,isSaving:f,onChange:v,onClose:()=>v(null),onSave:()=>void C()}):null]}):(0,t.jsx)(eN,{label:"Project not found."})}],568656)}]);
@@ -1,5 +1,5 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,741746,e=>{"use strict";let t=(0,e.i(363732).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["AlertCircle",0,t],741746)},997626,e=>{"use strict";let t=(0,e.i(363732).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);e.s(["Zap",0,t],997626)},558201,e=>{"use strict";let t=(0,e.i(363732).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",0,t],558201)},363732,e=>{"use strict";var t=e.i(271645);let s=(...e)=>e.filter((e,t,s)=>!!e&&""!==e.trim()&&s.indexOf(e)===t).join(" ").trim(),r=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,s)=>s?s.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var a={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let l=(0,t.forwardRef)(({color:e="currentColor",size:r=24,strokeWidth:l=2,absoluteStrokeWidth:i,className:d="",children:n,iconNode:o,...c},x)=>(0,t.createElement)("svg",{ref:x,...a,width:r,height:r,stroke:e,strokeWidth:i?24*Number(l)/Number(r):l,className:s("lucide",d),...!n&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(c)&&{"aria-hidden":"true"},...c},[...o.map(([e,s])=>(0,t.createElement)(e,s)),...Array.isArray(n)?n:[n]]));e.s(["default",0,(e,a)=>{let i=(0,t.forwardRef)(({className:i,...d},n)=>(0,t.createElement)(l,{ref:n,iconNode:a,className:s(`lucide-${r(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,i),...d}));return i.displayName=r(e),i}],363732)},929870,e=>{"use strict";let t=(0,e.i(363732).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",0,t],929870)},580873,e=>{"use strict";let t=(0,e.i(363732).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",0,t],580873)},245900,e=>{"use strict";let t=(0,e.i(363732).default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);e.s(["Play",0,t],245900)},248004,e=>{"use strict";let t=(0,e.i(363732).default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);e.s(["Settings2",0,t],248004)},906772,e=>{"use strict";let t=(0,e.i(363732).default)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["ShieldCheck",0,t],906772)},437307,e=>{"use strict";let t=(0,e.i(363732).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["XCircle",0,t],437307)},493141,e=>{"use strict";let t=(0,e.i(363732).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);e.s(["ChevronLeft",0,t],493141)},807087,e=>{"use strict";let t=(0,e.i(363732).default)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["CheckCircle2",0,t],807087)},129463,e=>{"use strict";let t=(0,e.i(363732).default)("git-branch",[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]);e.s(["GitBranch",0,t],129463)},561547,e=>{"use strict";var t=e.i(843476),s=e.i(271645),r=e.i(929870),a=e.i(493141),l=e.i(807087),i=e.i(363732);let d=(0,i.default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]),n=(0,i.default)("pause",[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1",key:"kaeet6"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1",key:"1wsw3u"}]]);var o=e.i(437307);let c=(0,i.default)("construction",[["rect",{x:"2",y:"6",width:"20",height:"8",rx:"1",key:"1estib"}],["path",{d:"M17 14v7",key:"7m2elx"}],["path",{d:"M7 14v7",key:"1cm7wv"}],["path",{d:"M17 3v3",key:"1v4jwn"}],["path",{d:"M7 3v3",key:"7o6guu"}],["path",{d:"M10 14 2.3 6.3",key:"1023jk"}],["path",{d:"m14 6 7.7 7.7",key:"1s8pl2"}],["path",{d:"m8 6 8 8",key:"hl96qh"}]]),x=(0,i.default)("lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]),p=(0,i.default)("history",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]);var h=e.i(245900),m=e.i(248004),u=e.i(741746);let b=(0,i.default)("database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);var g=e.i(558201),f=e.i(580873);let v=(0,i.default)("panels-top-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M9 21V9",key:"1oto5p"}]]),j=(0,i.default)("network",[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]]);var y=e.i(906772),k=e.i(997626),N=e.i(129463);let w=(0,i.default)("arrow-right-left",[["path",{d:"m16 3 4 4-4 4",key:"1x1c3m"}],["path",{d:"M20 7H4",key:"zbl0bi"}],["path",{d:"m8 21-4-4 4-4",key:"h9nckh"}],["path",{d:"M4 17h16",key:"g4d7ey"}]]),z=[{id:"task-1",title:"Auth system",status:"PROGRESS",version:"v2",progress:60,nodesCount:7,mode:"PROJECT",currentGate:"quality-gate",policy:{replanBudgetInitial:3,replanBudgetRemaining:1,verifyBudgetInitial:5,verifyBudgetRemaining:4},history:[{id:1,event:"replan",from:"v1",to:"v2",reason:"Split implementation for parallelism",time:"2h ago"},{id:2,event:"node_status",node:"design",to:"done",time:"3h ago"}]},{id:"task-2",title:"Add dark mode",status:"INTAKE",version:"v1",progress:0,nodesCount:0,mode:"SIMPLE",blockingReason:"Analyzing requirements..."},{id:"task-3",title:"Fix login bug",status:"DONE",version:"v1",progress:100,nodesCount:3,mode:"SIMPLE"}],C=[{id:"n1",type:"work",title:"Design Auth",status:"done",x:300,y:40,metrics:{latency:"45m",tokens:"12k"}},{id:"f1",type:"fork",title:"Fork",status:"done",x:300,y:120},{id:"n2",type:"work",title:"Impl Auth",status:"done",x:180,y:220,metrics:{latency:"1h 20m",tokens:"45k"}},{id:"n3",type:"work",title:"Write Tests",status:"running",x:420,y:220,attempts:2,maxAttempts:3},{id:"j1",type:"join",title:"Join",status:"pending",x:300,y:320},{id:"g1",type:"gate",title:"Quality Gate",status:"pending",x:300,y:420,required:!0,strategy:"auto"},{id:"g2",type:"gate",title:"Handoff Gate",status:"pending",x:300,y:540,required:!0,strategy:"human",isLocked:!0}],M=[{from:"n1",to:"f1"},{from:"f1",to:"n2"},{from:"f1",to:"n3"},{from:"n2",to:"j1"},{from:"n3",to:"j1"},{from:"j1",to:"g1"},{from:"g1",to:"g2"}],A=({status:e,className:s,size:r=16})=>{switch(e){case"done":case"passed":return(0,t.jsx)(l.CheckCircle2,{size:r,className:`${s} text-green-500`});case"running":return(0,t.jsx)(d,{size:r,className:`${s} text-blue-500 animate-spin`});case"failed":return(0,t.jsx)(o.XCircle,{size:r,className:`${s} text-red-500`});case"pending":return(0,t.jsx)(n,{size:r,className:`${s} text-[var(--app-shell-soft-text)]`});case"blocked":return(0,t.jsx)(c,{size:r,className:`${s} text-orange-500`});default:return null}},E=({label:e,current:s,total:r,colorClass:a})=>{let l=s/r*100;return(0,t.jsxs)("div",{className:"mb-4",children:[(0,t.jsxs)("div",{className:"flex justify-between text-[10px] font-bold text-[var(--app-shell-soft-text)] uppercase tracking-wider mb-1",children:[(0,t.jsx)("span",{children:e}),(0,t.jsxs)("span",{children:[s,"/",r]})]}),(0,t.jsx)("div",{className:"w-full h-2 bg-[var(--secondary)] rounded-full overflow-hidden border border-[var(--border)]/50",children:(0,t.jsx)("div",{className:`h-full transition-all duration-700 ease-out ${a}`,style:{width:`${l}%`}})})]})},S=({task:e,onClick:s})=>(0,t.jsxs)("div",{onClick:()=>s(e),className:"bg-[var(--card-bg)] border border-[var(--border)] rounded-xl p-4 shadow-sm hover:shadow-lg hover:border-blue-200 transition-all cursor-pointer group",children:[(0,t.jsxs)("div",{className:"flex justify-between items-start mb-2",children:[(0,t.jsx)("h4",{className:"font-bold text-[var(--foreground)] group-hover:text-blue-600 transition-colors",children:e.title}),(0,t.jsx)("span",{className:`text-[9px] px-1.5 py-0.5 rounded font-black uppercase tracking-widest ${"SIMPLE"===e.mode?"bg-[var(--secondary)] text-[var(--muted-foreground)]":"bg-blue-100 text-blue-600"}`,children:e.mode})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 text-[10px] font-bold text-[var(--app-shell-soft-text)] mb-4",children:[(0,t.jsx)(j,{size:12}),(0,t.jsxs)("span",{children:[e.nodesCount," nodes"]}),(0,t.jsx)("span",{className:"text-[var(--border)]",children:"•"}),(0,t.jsx)("span",{children:e.version})]}),(0,t.jsxs)("div",{className:"mb-4",children:[(0,t.jsx)("div",{className:"flex justify-between items-center mb-1.5",children:(0,t.jsxs)("span",{className:"text-[10px] font-black text-[var(--muted-foreground)]",children:[e.progress,"%"]})}),(0,t.jsx)("div",{className:"w-full h-1.5 bg-[var(--secondary)] rounded-full overflow-hidden",children:(0,t.jsx)("div",{className:`h-full transition-all duration-1000 ${"DONE"===e.status?"bg-green-500":"bg-blue-500"}`,style:{width:`${e.progress}%`}})})]}),e.currentGate&&(0,t.jsxs)("div",{className:"flex items-center gap-2 text-[10px] font-bold text-orange-600 bg-orange-50 px-2 py-1.5 rounded-lg border border-orange-100",children:[(0,t.jsx)(c,{size:14}),(0,t.jsx)("span",{className:"truncate uppercase tracking-wider",children:e.currentGate}),e.isLocked&&(0,t.jsx)(x,{size:10,className:"ml-auto opacity-50"})]}),"INTAKE"===e.status&&(0,t.jsxs)("div",{className:"flex items-center gap-2 text-[10px] font-bold text-[var(--app-shell-soft-text)] px-2 py-1.5 bg-[var(--secondary)] rounded-lg border border-[var(--border)] italic animate-pulse",children:[(0,t.jsx)(g.Terminal,{size:12}),(0,t.jsx)("span",{children:e.blockingReason})]})]}),R=({node:e,isSelected:s,onClick:r})=>{let a="gate"===e.type,l=["fork","join","conditional"].includes(e.type);return(0,t.jsx)("div",{onClick:t=>{t.stopPropagation(),r(e)},className:`absolute flex flex-col items-center justify-center p-3 border-2 transition-all cursor-pointer z-20 hover:scale-105 active:scale-95 ${s?"ring-4 ring-blue-400/30 scale-105 border-blue-600":({done:"border-green-500 bg-green-50 text-green-700",passed:"border-green-500 bg-green-50 text-green-700",running:"border-blue-500 bg-blue-50 shadow-blue-100 shadow-xl ring-4 ring-blue-50",pending:"border-[var(--border)] bg-[var(--card-bg)] text-[var(--app-shell-soft-text)]",failed:"border-red-500 bg-red-50 text-red-700",blocked:"border-orange-500 bg-orange-50 text-orange-700"})[e.status]}`,style:{left:e.x,top:e.y,clipPath:a?"polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%)":l?"circle(50% at 50% 50%)":"none",transform:"translate(-50%, -50%)",width:l?"5rem":a?"8rem":"9rem",height:l?"5rem":a?"8rem":"5rem",borderRadius:l||a?"0":"1rem"},children:(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center text-center",children:[!l&&(0,t.jsx)("span",{className:"text-[9px] font-black uppercase tracking-tighter opacity-50 mb-0.5",children:e.type}),(0,t.jsx)("span",{className:`font-bold leading-tight ${l?"text-[10px]":"text-xs"}`,children:e.title}),(0,t.jsx)(A,{status:e.status,className:"mt-1.5",size:l?14:18}),e.required&&(0,t.jsx)(x,{size:10,className:"absolute top-2 right-2 opacity-30"})]})})};e.s(["default",0,function(){let e,[i,o]=(0,s.useState)("board"),[j,$]=(0,s.useState)(null),[P,T]=(0,s.useState)(null),[L,B]=(0,s.useState)(z),[q,G]=(0,s.useState)(2),I=e=>{$(e),G(parseInt(e.version.replace("v",""))),o("detail"),T(null)};return(0,t.jsxs)("div",{className:"antialiased min-h-screen",children:[(0,t.jsx)("style",{children:`
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,997626,e=>{"use strict";let t=(0,e.i(363732).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);e.s(["Zap",0,t],997626)},558201,e=>{"use strict";let t=(0,e.i(363732).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",0,t],558201)},363732,e=>{"use strict";var t=e.i(271645);let s=(...e)=>e.filter((e,t,s)=>!!e&&""!==e.trim()&&s.indexOf(e)===t).join(" ").trim(),r=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,s)=>s?s.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var a={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let l=(0,t.forwardRef)(({color:e="currentColor",size:r=24,strokeWidth:l=2,absoluteStrokeWidth:i,className:d="",children:n,iconNode:o,...c},x)=>(0,t.createElement)("svg",{ref:x,...a,width:r,height:r,stroke:e,strokeWidth:i?24*Number(l)/Number(r):l,className:s("lucide",d),...!n&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(c)&&{"aria-hidden":"true"},...c},[...o.map(([e,s])=>(0,t.createElement)(e,s)),...Array.isArray(n)?n:[n]]));e.s(["default",0,(e,a)=>{let i=(0,t.forwardRef)(({className:i,...d},n)=>(0,t.createElement)(l,{ref:n,iconNode:a,className:s(`lucide-${r(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,i),...d}));return i.displayName=r(e),i}],363732)},929870,e=>{"use strict";let t=(0,e.i(363732).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",0,t],929870)},580873,e=>{"use strict";let t=(0,e.i(363732).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",0,t],580873)},245900,e=>{"use strict";let t=(0,e.i(363732).default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);e.s(["Play",0,t],245900)},248004,e=>{"use strict";let t=(0,e.i(363732).default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);e.s(["Settings2",0,t],248004)},524507,e=>{"use strict";let t=(0,e.i(363732).default)("pause",[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1",key:"kaeet6"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1",key:"1wsw3u"}]]);e.s(["Pause",0,t],524507)},129463,e=>{"use strict";let t=(0,e.i(363732).default)("git-branch",[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]);e.s(["GitBranch",0,t],129463)},906772,e=>{"use strict";let t=(0,e.i(363732).default)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["ShieldCheck",0,t],906772)},741746,e=>{"use strict";let t=(0,e.i(363732).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["AlertCircle",0,t],741746)},437307,e=>{"use strict";let t=(0,e.i(363732).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["XCircle",0,t],437307)},807087,e=>{"use strict";let t=(0,e.i(363732).default)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["CheckCircle2",0,t],807087)},493141,e=>{"use strict";let t=(0,e.i(363732).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);e.s(["ChevronLeft",0,t],493141)},561547,e=>{"use strict";var t=e.i(843476),s=e.i(271645),r=e.i(929870),a=e.i(493141),l=e.i(807087),i=e.i(363732);let d=(0,i.default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);var n=e.i(524507),o=e.i(437307);let c=(0,i.default)("construction",[["rect",{x:"2",y:"6",width:"20",height:"8",rx:"1",key:"1estib"}],["path",{d:"M17 14v7",key:"7m2elx"}],["path",{d:"M7 14v7",key:"1cm7wv"}],["path",{d:"M17 3v3",key:"1v4jwn"}],["path",{d:"M7 3v3",key:"7o6guu"}],["path",{d:"M10 14 2.3 6.3",key:"1023jk"}],["path",{d:"m14 6 7.7 7.7",key:"1s8pl2"}],["path",{d:"m8 6 8 8",key:"hl96qh"}]]),x=(0,i.default)("lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]),p=(0,i.default)("history",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]);var h=e.i(245900),m=e.i(248004),u=e.i(741746);let b=(0,i.default)("database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);var g=e.i(558201),f=e.i(580873);let v=(0,i.default)("panels-top-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M9 21V9",key:"1oto5p"}]]),j=(0,i.default)("network",[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]]);var y=e.i(906772),k=e.i(997626),N=e.i(129463);let w=(0,i.default)("arrow-right-left",[["path",{d:"m16 3 4 4-4 4",key:"1x1c3m"}],["path",{d:"M20 7H4",key:"zbl0bi"}],["path",{d:"m8 21-4-4 4-4",key:"h9nckh"}],["path",{d:"M4 17h16",key:"g4d7ey"}]]),z=[{id:"task-1",title:"Auth system",status:"PROGRESS",version:"v2",progress:60,nodesCount:7,mode:"PROJECT",currentGate:"quality-gate",policy:{replanBudgetInitial:3,replanBudgetRemaining:1,verifyBudgetInitial:5,verifyBudgetRemaining:4},history:[{id:1,event:"replan",from:"v1",to:"v2",reason:"Split implementation for parallelism",time:"2h ago"},{id:2,event:"node_status",node:"design",to:"done",time:"3h ago"}]},{id:"task-2",title:"Add dark mode",status:"INTAKE",version:"v1",progress:0,nodesCount:0,mode:"SIMPLE",blockingReason:"Analyzing requirements..."},{id:"task-3",title:"Fix login bug",status:"DONE",version:"v1",progress:100,nodesCount:3,mode:"SIMPLE"}],C=[{id:"n1",type:"work",title:"Design Auth",status:"done",x:300,y:40,metrics:{latency:"45m",tokens:"12k"}},{id:"f1",type:"fork",title:"Fork",status:"done",x:300,y:120},{id:"n2",type:"work",title:"Impl Auth",status:"done",x:180,y:220,metrics:{latency:"1h 20m",tokens:"45k"}},{id:"n3",type:"work",title:"Write Tests",status:"running",x:420,y:220,attempts:2,maxAttempts:3},{id:"j1",type:"join",title:"Join",status:"pending",x:300,y:320},{id:"g1",type:"gate",title:"Quality Gate",status:"pending",x:300,y:420,required:!0,strategy:"auto"},{id:"g2",type:"gate",title:"Handoff Gate",status:"pending",x:300,y:540,required:!0,strategy:"human",isLocked:!0}],M=[{from:"n1",to:"f1"},{from:"f1",to:"n2"},{from:"f1",to:"n3"},{from:"n2",to:"j1"},{from:"n3",to:"j1"},{from:"j1",to:"g1"},{from:"g1",to:"g2"}],A=({status:e,className:s,size:r=16})=>{switch(e){case"done":case"passed":return(0,t.jsx)(l.CheckCircle2,{size:r,className:`${s} text-green-500`});case"running":return(0,t.jsx)(d,{size:r,className:`${s} text-blue-500 animate-spin`});case"failed":return(0,t.jsx)(o.XCircle,{size:r,className:`${s} text-red-500`});case"pending":return(0,t.jsx)(n.Pause,{size:r,className:`${s} text-[var(--app-shell-soft-text)]`});case"blocked":return(0,t.jsx)(c,{size:r,className:`${s} text-orange-500`});default:return null}},E=({label:e,current:s,total:r,colorClass:a})=>{let l=s/r*100;return(0,t.jsxs)("div",{className:"mb-4",children:[(0,t.jsxs)("div",{className:"flex justify-between text-[10px] font-bold text-[var(--app-shell-soft-text)] uppercase tracking-wider mb-1",children:[(0,t.jsx)("span",{children:e}),(0,t.jsxs)("span",{children:[s,"/",r]})]}),(0,t.jsx)("div",{className:"w-full h-2 bg-[var(--secondary)] rounded-full overflow-hidden border border-[var(--border)]/50",children:(0,t.jsx)("div",{className:`h-full transition-all duration-700 ease-out ${a}`,style:{width:`${l}%`}})})]})},S=({task:e,onClick:s})=>(0,t.jsxs)("div",{onClick:()=>s(e),className:"bg-[var(--card-bg)] border border-[var(--border)] rounded-xl p-4 shadow-sm hover:shadow-lg hover:border-blue-200 transition-all cursor-pointer group",children:[(0,t.jsxs)("div",{className:"flex justify-between items-start mb-2",children:[(0,t.jsx)("h4",{className:"font-bold text-[var(--foreground)] group-hover:text-blue-600 transition-colors",children:e.title}),(0,t.jsx)("span",{className:`text-[9px] px-1.5 py-0.5 rounded font-black uppercase tracking-widest ${"SIMPLE"===e.mode?"bg-[var(--secondary)] text-[var(--muted-foreground)]":"bg-blue-100 text-blue-600"}`,children:e.mode})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 text-[10px] font-bold text-[var(--app-shell-soft-text)] mb-4",children:[(0,t.jsx)(j,{size:12}),(0,t.jsxs)("span",{children:[e.nodesCount," nodes"]}),(0,t.jsx)("span",{className:"text-[var(--border)]",children:"•"}),(0,t.jsx)("span",{children:e.version})]}),(0,t.jsxs)("div",{className:"mb-4",children:[(0,t.jsx)("div",{className:"flex justify-between items-center mb-1.5",children:(0,t.jsxs)("span",{className:"text-[10px] font-black text-[var(--muted-foreground)]",children:[e.progress,"%"]})}),(0,t.jsx)("div",{className:"w-full h-1.5 bg-[var(--secondary)] rounded-full overflow-hidden",children:(0,t.jsx)("div",{className:`h-full transition-all duration-1000 ${"DONE"===e.status?"bg-green-500":"bg-blue-500"}`,style:{width:`${e.progress}%`}})})]}),e.currentGate&&(0,t.jsxs)("div",{className:"flex items-center gap-2 text-[10px] font-bold text-orange-600 bg-orange-50 px-2 py-1.5 rounded-lg border border-orange-100",children:[(0,t.jsx)(c,{size:14}),(0,t.jsx)("span",{className:"truncate uppercase tracking-wider",children:e.currentGate}),e.isLocked&&(0,t.jsx)(x,{size:10,className:"ml-auto opacity-50"})]}),"INTAKE"===e.status&&(0,t.jsxs)("div",{className:"flex items-center gap-2 text-[10px] font-bold text-[var(--app-shell-soft-text)] px-2 py-1.5 bg-[var(--secondary)] rounded-lg border border-[var(--border)] italic animate-pulse",children:[(0,t.jsx)(g.Terminal,{size:12}),(0,t.jsx)("span",{children:e.blockingReason})]})]}),P=({node:e,isSelected:s,onClick:r})=>{let a="gate"===e.type,l=["fork","join","conditional"].includes(e.type);return(0,t.jsx)("div",{onClick:t=>{t.stopPropagation(),r(e)},className:`absolute flex flex-col items-center justify-center p-3 border-2 transition-all cursor-pointer z-20 hover:scale-105 active:scale-95 ${s?"ring-4 ring-blue-400/30 scale-105 border-blue-600":({done:"border-green-500 bg-green-50 text-green-700",passed:"border-green-500 bg-green-50 text-green-700",running:"border-blue-500 bg-blue-50 shadow-blue-100 shadow-xl ring-4 ring-blue-50",pending:"border-[var(--border)] bg-[var(--card-bg)] text-[var(--app-shell-soft-text)]",failed:"border-red-500 bg-red-50 text-red-700",blocked:"border-orange-500 bg-orange-50 text-orange-700"})[e.status]}`,style:{left:e.x,top:e.y,clipPath:a?"polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%)":l?"circle(50% at 50% 50%)":"none",transform:"translate(-50%, -50%)",width:l?"5rem":a?"8rem":"9rem",height:l?"5rem":a?"8rem":"5rem",borderRadius:l||a?"0":"1rem"},children:(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center text-center",children:[!l&&(0,t.jsx)("span",{className:"text-[9px] font-black uppercase tracking-tighter opacity-50 mb-0.5",children:e.type}),(0,t.jsx)("span",{className:`font-bold leading-tight ${l?"text-[10px]":"text-xs"}`,children:e.title}),(0,t.jsx)(A,{status:e.status,className:"mt-1.5",size:l?14:18}),e.required&&(0,t.jsx)(x,{size:10,className:"absolute top-2 right-2 opacity-30"})]})})};e.s(["default",0,function(){let e,[i,o]=(0,s.useState)("board"),[j,R]=(0,s.useState)(null),[$,T]=(0,s.useState)(null),[L,B]=(0,s.useState)(z),[q,G]=(0,s.useState)(2),I=e=>{R(e),G(parseInt(e.version.replace("v",""))),o("detail"),T(null)};return(0,t.jsxs)("div",{className:"antialiased min-h-screen",children:[(0,t.jsx)("style",{children:`
2
2
  @keyframes dash {
3
3
  to { stroke-dashoffset: -10; }
4
4
  }
5
- `}),"board"===i?(0,t.jsxs)("div",{className:"flex flex-col h-screen bg-[var(--secondary)] font-sans text-[var(--foreground)] overflow-hidden",children:[(0,t.jsxs)("header",{className:"desktop-titlebar flex items-center justify-between px-8 py-5 bg-[var(--card-bg)] border-b border-[var(--border)]",children:[(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsx)("div",{className:"w-12 h-12 bg-blue-600 rounded-xl flex items-center justify-center text-white font-black text-2xl shadow-xl shadow-blue-200 transform -rotate-3 hover:rotate-0 transition-transform cursor-pointer",children:"ag"}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("h1",{className:"text-2xl font-black tracking-tight flex items-center gap-2",children:["agx ",(0,t.jsx)("span",{className:"text-blue-600",children:"v2"})]}),(0,t.jsx)("p",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-[0.2em]",children:"Execution Graph Engine"})]})]}),(0,t.jsxs)("div",{className:"flex gap-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-4 py-2 bg-[var(--secondary)] rounded-lg text-[var(--muted-foreground)] font-bold text-xs border border-[var(--border)]",children:[(0,t.jsx)(f.Clock,{size:14})," System Time: 21:50"]}),(0,t.jsxs)("button",{className:"flex items-center gap-2 px-5 py-2.5 bg-blue-600 hover:bg-blue-700 text-white rounded-xl font-bold transition-all shadow-lg shadow-blue-200 active:scale-95",children:[(0,t.jsx)(r.Plus,{size:18,strokeWidth:3}),"New Execution"]})]})]}),(0,t.jsx)("main",{className:"flex-1 overflow-x-auto p-8 bg-[var(--background)]",children:(0,t.jsx)("div",{className:"flex gap-8 min-w-max h-full",children:[{id:"INTAKE",icon:(0,t.jsx)(g.Terminal,{size:14}),label:"Intake",color:"slate"},{id:"PROGRESS",icon:(0,t.jsx)(k.Zap,{size:14}),label:"Progress",color:"blue"},{id:"DONE",icon:(0,t.jsx)(y.ShieldCheck,{size:14}),label:"Done",color:"green"}].map(e=>(0,t.jsxs)("div",{className:"w-85 flex flex-col gap-6",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-2",children:[(0,t.jsxs)("div",{className:`flex items-center gap-2 font-black text-sm uppercase tracking-widest text-${e.color}-500`,children:[e.icon," ",e.label]}),(0,t.jsx)("span",{className:"text-[10px] font-black bg-[var(--card-bg)] border border-[var(--border)] text-[var(--app-shell-soft-text)] px-3 py-1 rounded-full shadow-sm",children:L.filter(t=>t.status===e.id).length})]}),(0,t.jsx)("div",{className:"flex flex-col gap-4 overflow-y-auto pb-8",children:L.filter(t=>t.status===e.id).map(e=>(0,t.jsx)(S,{task:e,onClick:I},e.id))})]},e.id))})})]}):(e="PROJECT"===j.mode,(0,t.jsxs)("div",{className:"flex flex-col h-screen bg-[var(--card-bg)] font-sans text-[var(--foreground)] overflow-hidden",children:[(0,t.jsxs)("header",{className:"desktop-titlebar flex items-center px-6 py-4 border-b border-[var(--border)] bg-[var(--card-bg)] z-50 shadow-sm",children:[(0,t.jsx)("button",{onClick:()=>{o("board"),$(null),T(null)},className:"p-2.5 hover:bg-[var(--item-hover-bg)] rounded-xl transition-colors mr-4 text-[var(--app-shell-soft-text)] hover:text-[var(--foreground)]",children:(0,t.jsx)(a.ChevronLeft,{size:24,strokeWidth:2.5})}),(0,t.jsxs)("div",{className:"flex-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("h2",{className:"text-xl font-black tracking-tight",children:j.title}),(0,t.jsxs)("div",{className:"flex gap-1.5",children:[(0,t.jsxs)("span",{className:"px-2 py-0.5 bg-blue-600 text-white text-[9px] font-black rounded uppercase tracking-widest",children:["v",q]}),(0,t.jsxs)("span",{className:"px-2 py-0.5 bg-[var(--secondary)] text-[var(--muted-foreground)] border border-[var(--border)] text-[9px] font-black rounded uppercase tracking-widest",children:[j.progress,"% Complete"]})]})]}),(0,t.jsxs)("div",{className:"flex gap-4 mt-0.5",children:[(0,t.jsxs)("p",{className:"text-[10px] text-[var(--app-shell-soft-text)] font-bold uppercase tracking-tight",children:["ID: ",j.id]}),(0,t.jsx)("p",{className:"text-[10px] text-[var(--app-shell-soft-text)] font-bold uppercase tracking-tight",children:"• Phase: Implementation"})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsxs)("button",{className:"flex items-center gap-2 px-4 py-2 text-[var(--muted-foreground)] hover:text-[var(--foreground)] font-bold text-xs bg-[var(--secondary)] border border-[var(--border)] rounded-lg transition-all active:scale-95",children:[(0,t.jsx)(m.Settings2,{size:16})," Configure"]}),(0,t.jsxs)("button",{onClick:()=>{let e=q+1;G(e);let t={...j,version:`v${e}`,policy:{...j.policy,replanBudgetRemaining:Math.max(0,j.policy.replanBudgetRemaining-1)},history:[{id:Date.now(),event:"replan",from:`v${q}`,to:`v${e}`,reason:"Manual scope adjustment",time:"Just now"},...j.history]};$(t),B(e=>e.map(e=>e.id===j.id?t:e))},className:"flex items-center gap-2 px-4 py-2 bg-[var(--foreground)] hover:bg-black text-white rounded-lg font-bold text-xs transition-all shadow-md active:scale-95",children:[(0,t.jsx)(N.GitBranch,{size:16})," Trigger Replan"]}),(0,t.jsxs)("button",{className:"flex items-center gap-2 px-5 py-2.5 bg-blue-600 hover:bg-blue-700 text-white rounded-lg font-black text-xs shadow-lg shadow-blue-200 transition-all active:scale-95",children:[(0,t.jsx)(h.Play,{size:16,fill:"white"})," RESUME EXECUTION"]})]})]}),(0,t.jsxs)("div",{className:"flex flex-1 overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex-1 flex flex-col relative overflow-hidden bg-[var(--secondary)]",onClick:()=>T(null),children:[(0,t.jsx)("div",{className:"absolute top-6 left-6 z-10",children:(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] backdrop-blur-md border border-[var(--border)] p-3 rounded-xl shadow-xl",children:[(0,t.jsx)("h3",{className:"text-[9px] font-black text-[var(--app-shell-soft-text)] uppercase mb-3 px-1 tracking-[0.2em]",children:"Visual Language"}),(0,t.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 text-[10px] font-bold text-[var(--muted-foreground)]",children:[(0,t.jsx)("div",{className:"w-5 h-3 rounded bg-[var(--secondary)] border border-[var(--border)]"})," Work Node"]}),(0,t.jsxs)("div",{className:"flex items-center gap-3 text-[10px] font-bold text-[var(--muted-foreground)]",children:[(0,t.jsx)("div",{className:"w-4 h-4 rotate-45 bg-[var(--secondary)] border border-[var(--border)]"})," Gate Node"]}),(0,t.jsxs)("div",{className:"flex items-center gap-3 text-[10px] font-bold text-[var(--muted-foreground)]",children:[(0,t.jsx)("div",{className:"w-4 h-4 rounded-full bg-[var(--secondary)] border border-[var(--border)]"})," Control Node"]})]})]})}),(0,t.jsxs)("div",{className:"absolute bottom-6 left-6 z-10 flex gap-2",children:[(0,t.jsx)("button",{className:"p-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg shadow hover:bg-[var(--item-hover-bg)] text-[var(--app-shell-soft-text)]",children:(0,t.jsx)(r.Plus,{size:16})}),(0,t.jsx)("button",{className:"p-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg shadow hover:bg-[var(--item-hover-bg)] text-[var(--app-shell-soft-text)]",children:(0,t.jsx)(w,{size:16,className:"rotate-90"})}),(0,t.jsx)("button",{className:"px-3 py-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg shadow hover:bg-[var(--item-hover-bg)] text-[10px] font-black text-[var(--muted-foreground)] uppercase tracking-widest",children:"Fit to Screen"})]}),(0,t.jsx)("div",{className:"flex-1 overflow-auto relative p-20 flex items-center justify-center cursor-grab active:cursor-grabbing",children:e?(0,t.jsxs)("div",{className:"relative w-[600px] h-[600px] select-none",children:[(0,t.jsxs)("svg",{className:"absolute inset-0 w-full h-full pointer-events-none",style:{overflow:"visible"},children:[(0,t.jsx)("defs",{children:(0,t.jsx)("marker",{id:"arrowhead",markerWidth:"10",markerHeight:"7",refX:"9",refY:"3.5",orientation:"auto",children:(0,t.jsx)("polygon",{points:"0 0, 10 3.5, 0 7",fill:"var(--app-shell-soft-text)"})})}),M.map((e,s)=>{let r=C.find(t=>t.id===e.from),a=C.find(t=>t.id===e.to);return r&&a?(0,t.jsx)("line",{x1:r.x,y1:r.y,x2:a.x,y2:a.y,stroke:"var(--border)",strokeWidth:"2.5",markerEnd:"url(#arrowhead)",strokeDasharray:"work"===r.type&&"running"===r.status?"5,5":"none",className:"running"===r.status?"animate-[dash_1s_linear_infinite]":""},s):null})]}),C.map(e=>(0,t.jsx)(R,{node:e,isSelected:P?.id===e.id,onClick:T},e.id))]}):(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center text-[var(--app-shell-soft-text)] bg-[var(--card-bg)] p-16 rounded-[2.5rem] border-2 border-dashed border-[var(--border)] max-w-md text-center shadow-inner",children:[(0,t.jsx)("div",{className:"w-20 h-20 bg-[var(--secondary)] rounded-3xl flex items-center justify-center mb-6 border border-[var(--border)] shadow-sm",children:(0,t.jsx)(g.Terminal,{size:40,className:"opacity-30"})}),(0,t.jsx)("h3",{className:"font-black text-xl text-[var(--secondary-foreground)] mb-3 tracking-tight",children:"Linear Task Logic"}),(0,t.jsx)("p",{className:"text-sm text-[var(--app-shell-soft-text)] font-medium leading-relaxed",children:"This task has been classified as SIMPLE. Execution runs through a predefined serial sequence without branching overhead."})]})}),(0,t.jsxs)("div",{className:"h-28 bg-[var(--card-bg)] border-t border-[var(--border)] px-8 py-4 flex flex-col gap-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("span",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-[0.2em]",children:"Execution History Timeline"}),(0,t.jsx)("div",{className:"flex gap-4",children:(0,t.jsxs)("button",{className:"text-[10px] font-black text-blue-600 hover:text-blue-700 uppercase tracking-widest flex items-center gap-1.5",children:[(0,t.jsx)(p,{size:12})," View Full Logs"]})})]}),(0,t.jsxs)("div",{className:"flex items-center relative gap-24 h-full",children:[(0,t.jsx)("div",{className:"absolute top-1/2 left-0 w-full h-0.5 bg-[var(--secondary)] -translate-y-1/2"}),j.history.slice().reverse().map((e,s)=>(0,t.jsxs)("div",{className:"relative z-10 flex flex-col items-center group cursor-pointer",children:[(0,t.jsx)("div",{className:`w-3.5 h-3.5 rounded-full border-2 border-[var(--card-bg)] ring-4 ring-offset-2 transition-all group-hover:scale-125 ${s===j.history.length-1?"bg-blue-600 ring-blue-100 scale-110":"bg-[var(--app-shell-soft-text)] ring-transparent opacity-60"}`}),(0,t.jsx)("span",{className:`text-[10px] font-black mt-2 uppercase tracking-tighter ${s===j.history.length-1?"text-blue-600":"text-[var(--app-shell-soft-text)]"}`,children:e.from?`${e.from} → ${e.to}`:e.event}),(0,t.jsx)("span",{className:"text-[8px] font-bold text-[var(--app-shell-soft-text)] whitespace-nowrap",children:e.time})]},e.id)),(0,t.jsx)("div",{className:"ml-auto relative z-10 flex flex-col items-end",children:(0,t.jsxs)("div",{className:"px-4 py-1.5 bg-[var(--secondary)] border border-[var(--border)] rounded-lg text-[9px] font-black text-[var(--app-shell-soft-text)] italic tracking-widest uppercase shadow-sm",children:["Next Checkpoint: v",q+1]})})]})]})]}),(0,t.jsxs)("aside",{className:"w-90 border-l border-[var(--border)] p-8 flex flex-col gap-8 overflow-y-auto bg-[var(--card-bg)]",children:[P?(0,t.jsxs)("div",{className:"animate-in fade-in slide-in-from-right-4 duration-300",children:[(0,t.jsxs)("button",{onClick:()=>T(null),className:"mb-6 flex items-center gap-1.5 text-[10px] font-black text-blue-600 uppercase tracking-widest hover:gap-2 transition-all",children:[(0,t.jsx)(a.ChevronLeft,{size:14,strokeWidth:3})," Back to Overview"]}),(0,t.jsxs)("div",{className:"flex items-center gap-4 mb-8",children:[(0,t.jsx)("div",{className:`w-14 h-14 rounded-2xl flex items-center justify-center border-2 ${"done"===P.status?"bg-green-50 border-green-200 text-green-600":"bg-blue-50 border-blue-200 text-blue-600"}`,children:"work"===P.type?(0,t.jsx)(k.Zap,{size:24}):"gate"===P.type?(0,t.jsx)(y.ShieldCheck,{size:24}):(0,t.jsx)(N.GitBranch,{size:24})}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("p",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest",children:[P.type," Node"]}),(0,t.jsx)("h3",{className:"text-xl font-black tracking-tight",children:P.title})]})]}),(0,t.jsxs)("div",{className:"space-y-8",children:[(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-4",children:"Current Status"}),(0,t.jsxs)("div",{className:"flex items-center gap-3 px-4 py-3 bg-[var(--secondary)] rounded-xl border border-[var(--border)]",children:[(0,t.jsx)(A,{status:P.status,size:20}),(0,t.jsx)("span",{className:"text-xs font-black uppercase tracking-widest text-[var(--secondary-foreground)]",children:P.status})]})]}),"work"===P.type&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-4",children:"Performance Metrics"}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,t.jsxs)("div",{className:"p-4 bg-[var(--card-bg)] border border-[var(--border)] rounded-xl",children:[(0,t.jsx)("p",{className:"text-[9px] font-bold text-[var(--app-shell-soft-text)] uppercase mb-1",children:"Latency"}),(0,t.jsx)("p",{className:"text-sm font-black text-[var(--foreground)]",children:P.metrics?.latency||"32m 14s"})]}),(0,t.jsxs)("div",{className:"p-4 bg-[var(--card-bg)] border border-[var(--border)] rounded-xl",children:[(0,t.jsx)("p",{className:"text-[9px] font-bold text-[var(--app-shell-soft-text)] uppercase mb-1",children:"Compute"}),(0,t.jsx)("p",{className:"text-sm font-black text-[var(--foreground)]",children:P.metrics?.tokens||"14.2k tokens"})]})]})]}),"gate"===P.type&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-4",children:"Gate Requirements"}),(0,t.jsx)("div",{className:"space-y-3",children:[{label:"Unit Tests",status:"pass"},{label:"Linting",status:"pass"},{label:"Type Safety",status:"pass"},{label:"Coverage (>80%)",status:"fail"}].map((e,s)=>(0,t.jsxs)("div",{className:"flex items-center justify-between p-3 bg-[var(--card-bg)] border border-[var(--border)] rounded-xl",children:[(0,t.jsx)("span",{className:"text-[11px] font-bold text-[var(--muted-foreground)]",children:e.label}),"pass"===e.status?(0,t.jsx)(l.CheckCircle2,{size:16,className:"text-green-500"}):(0,t.jsx)(u.AlertCircle,{size:16,className:"text-red-500"})]},s))}),"pending"===P.status&&(0,t.jsxs)("div",{className:"mt-8 grid grid-cols-2 gap-3",children:[(0,t.jsx)("button",{className:"py-3 bg-red-50 text-red-600 border border-red-100 rounded-xl font-black text-[10px] uppercase tracking-widest hover:bg-red-100 transition-all",children:"Reject"}),(0,t.jsx)("button",{className:"py-3 bg-green-600 text-white rounded-xl font-black text-[10px] uppercase tracking-widest shadow-lg shadow-green-100 hover:bg-green-700 transition-all",children:"Approve Gate"})]})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-4",children:"Node Dependencies"}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[M.filter(e=>e.to===P.id).map((e,s)=>(0,t.jsxs)("div",{className:"px-3 py-1.5 bg-[var(--secondary)] text-[var(--muted-foreground)] text-[10px] font-bold rounded-lg border border-[var(--border)]",children:["Source: ",e.from]},s)),0===M.filter(e=>e.to===P.id).length&&(0,t.jsx)("span",{className:"text-[10px] font-bold text-[var(--app-shell-soft-text)] italic uppercase",children:"Graph Start Node"})]})]})]})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("section",{children:[(0,t.jsxs)("h3",{className:"flex items-center gap-2 text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-6",children:[(0,t.jsx)(u.AlertCircle,{size:14})," Execution Overview"]}),(0,t.jsxs)("div",{className:"bg-[var(--foreground)] p-5 rounded-2xl text-white shadow-xl shadow-[var(--border)]",children:[(0,t.jsxs)("div",{className:"flex justify-between items-start mb-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-[9px] font-black text-blue-400 uppercase tracking-widest mb-1",children:"Active Worker"}),(0,t.jsxs)("h4",{className:"text-lg font-black tracking-tight flex items-center gap-2",children:["write-tests ",(0,t.jsx)("div",{className:"w-2 h-2 rounded-full bg-blue-500 animate-pulse"})]})]}),(0,t.jsx)(d,{size:20,className:"text-[var(--muted-foreground)] animate-[spin_3s_linear_infinite]"})]}),(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex justify-between text-[10px] font-bold text-[var(--app-shell-soft-text)] uppercase",children:[(0,t.jsx)("span",{children:"Current Attempt"}),(0,t.jsx)("span",{className:"text-white",children:"2 / 3"})]}),(0,t.jsxs)("div",{className:"flex justify-between text-[10px] font-bold text-[var(--app-shell-soft-text)] uppercase",children:[(0,t.jsx)("span",{children:"Time Elapsed"}),(0,t.jsx)("span",{className:"text-white font-mono",children:"15m 22s"})]})]})]})]}),(0,t.jsxs)("section",{children:[(0,t.jsxs)("h3",{className:"flex items-center gap-2 text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-6",children:[(0,t.jsx)(b,{size:14})," Resource Budgets"]}),j.policy?(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(E,{label:"Replans Remaining",current:j.policy.replanBudgetRemaining,total:j.policy.replanBudgetInitial,colorClass:"bg-blue-600"}),(0,t.jsx)(E,{label:"Verify Budget",current:j.policy.verifyBudgetRemaining,total:j.policy.verifyBudgetInitial,colorClass:"bg-indigo-600"})]}):(0,t.jsx)("div",{className:"p-4 bg-[var(--secondary)] rounded-xl border border-[var(--border)] text-[10px] font-bold text-[var(--app-shell-soft-text)] uppercase text-center tracking-widest",children:"Standard Policy Applied"})]}),(0,t.jsxs)("section",{children:[(0,t.jsxs)("h3",{className:"flex items-center gap-2 text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-6",children:[(0,t.jsx)(c,{size:14})," Gate Verification"]}),(0,t.jsxs)("div",{className:"space-y-5",children:[(0,t.jsxs)("div",{className:"flex items-start gap-4",children:[(0,t.jsx)("div",{className:"mt-1 flex items-center justify-center w-6 h-6 rounded-full bg-orange-100 text-orange-600 border border-orange-200",children:(0,t.jsx)(n,{size:12,strokeWidth:3})}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h5",{className:"text-xs font-black text-[var(--secondary-foreground)] uppercase tracking-tight",children:"quality-gate"}),(0,t.jsx)("p",{className:"text-[10px] text-[var(--app-shell-soft-text)] font-medium leading-relaxed mt-1",children:"Pending: Coverage metrics must meet 80% threshold before proceeding."})]})]}),(0,t.jsxs)("div",{className:"flex items-start gap-4 opacity-40",children:[(0,t.jsx)("div",{className:"mt-1 flex items-center justify-center w-6 h-6 rounded-full bg-[var(--secondary)] text-[var(--app-shell-soft-text)] border border-[var(--border)]",children:(0,t.jsx)(x,{size:12,strokeWidth:3})}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h5",{className:"text-xs font-black text-[var(--secondary-foreground)] uppercase tracking-tight",children:"handoff-gate"}),(0,t.jsx)("p",{className:"text-[10px] text-[var(--app-shell-soft-text)] font-medium leading-relaxed mt-1",children:"Blocked: Human architecture review required after quality gate pass."})]})]})]})]})]}),(0,t.jsxs)("section",{className:"mt-auto pt-8 border-t border-[var(--border)]",children:[(0,t.jsxs)("h3",{className:"flex items-center gap-2 text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-4",children:[(0,t.jsx)(v,{size:14})," Global Policy"]}),(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsxs)("div",{className:"flex justify-between text-[10px] font-bold",children:[(0,t.jsx)("span",{className:"text-[var(--app-shell-soft-text)] uppercase",children:"Concurrency Limit"}),(0,t.jsx)("span",{className:"text-[var(--secondary-foreground)]",children:"3 WorkNodes"})]}),(0,t.jsxs)("div",{className:"flex justify-between text-[10px] font-bold",children:[(0,t.jsx)("span",{className:"text-[var(--app-shell-soft-text)] uppercase",children:"Mode"}),(0,t.jsx)("span",{className:"text-blue-600 uppercase",children:"Project / DAG"})]})]})]})]})]})]}))]})}],561547)}]);
5
+ `}),"board"===i?(0,t.jsxs)("div",{className:"flex flex-col h-screen bg-[var(--secondary)] font-sans text-[var(--foreground)] overflow-hidden",children:[(0,t.jsxs)("header",{className:"desktop-titlebar flex items-center justify-between px-8 py-5 bg-[var(--card-bg)] border-b border-[var(--border)]",children:[(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsx)("div",{className:"w-12 h-12 bg-blue-600 rounded-xl flex items-center justify-center text-white font-black text-2xl shadow-xl shadow-blue-200 transform -rotate-3 hover:rotate-0 transition-transform cursor-pointer",children:"ag"}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("h1",{className:"text-2xl font-black tracking-tight flex items-center gap-2",children:["agx ",(0,t.jsx)("span",{className:"text-blue-600",children:"v2"})]}),(0,t.jsx)("p",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-[0.2em]",children:"Execution Graph Engine"})]})]}),(0,t.jsxs)("div",{className:"flex gap-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-4 py-2 bg-[var(--secondary)] rounded-lg text-[var(--muted-foreground)] font-bold text-xs border border-[var(--border)]",children:[(0,t.jsx)(f.Clock,{size:14})," System Time: 21:50"]}),(0,t.jsxs)("button",{className:"flex items-center gap-2 px-5 py-2.5 bg-blue-600 hover:bg-blue-700 text-white rounded-xl font-bold transition-all shadow-lg shadow-blue-200 active:scale-95",children:[(0,t.jsx)(r.Plus,{size:18,strokeWidth:3}),"New Execution"]})]})]}),(0,t.jsx)("main",{className:"flex-1 overflow-x-auto p-8 bg-[var(--background)]",children:(0,t.jsx)("div",{className:"flex gap-8 min-w-max h-full",children:[{id:"INTAKE",icon:(0,t.jsx)(g.Terminal,{size:14}),label:"Intake",color:"slate"},{id:"PROGRESS",icon:(0,t.jsx)(k.Zap,{size:14}),label:"Progress",color:"blue"},{id:"DONE",icon:(0,t.jsx)(y.ShieldCheck,{size:14}),label:"Done",color:"green"}].map(e=>(0,t.jsxs)("div",{className:"w-85 flex flex-col gap-6",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-2",children:[(0,t.jsxs)("div",{className:`flex items-center gap-2 font-black text-sm uppercase tracking-widest text-${e.color}-500`,children:[e.icon," ",e.label]}),(0,t.jsx)("span",{className:"text-[10px] font-black bg-[var(--card-bg)] border border-[var(--border)] text-[var(--app-shell-soft-text)] px-3 py-1 rounded-full shadow-sm",children:L.filter(t=>t.status===e.id).length})]}),(0,t.jsx)("div",{className:"flex flex-col gap-4 overflow-y-auto pb-8",children:L.filter(t=>t.status===e.id).map(e=>(0,t.jsx)(S,{task:e,onClick:I},e.id))})]},e.id))})})]}):(e="PROJECT"===j.mode,(0,t.jsxs)("div",{className:"flex flex-col h-screen bg-[var(--card-bg)] font-sans text-[var(--foreground)] overflow-hidden",children:[(0,t.jsxs)("header",{className:"desktop-titlebar flex items-center px-6 py-4 border-b border-[var(--border)] bg-[var(--card-bg)] z-50 shadow-sm",children:[(0,t.jsx)("button",{onClick:()=>{o("board"),R(null),T(null)},className:"p-2.5 hover:bg-[var(--item-hover-bg)] rounded-xl transition-colors mr-4 text-[var(--app-shell-soft-text)] hover:text-[var(--foreground)]",children:(0,t.jsx)(a.ChevronLeft,{size:24,strokeWidth:2.5})}),(0,t.jsxs)("div",{className:"flex-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("h2",{className:"text-xl font-black tracking-tight",children:j.title}),(0,t.jsxs)("div",{className:"flex gap-1.5",children:[(0,t.jsxs)("span",{className:"px-2 py-0.5 bg-blue-600 text-white text-[9px] font-black rounded uppercase tracking-widest",children:["v",q]}),(0,t.jsxs)("span",{className:"px-2 py-0.5 bg-[var(--secondary)] text-[var(--muted-foreground)] border border-[var(--border)] text-[9px] font-black rounded uppercase tracking-widest",children:[j.progress,"% Complete"]})]})]}),(0,t.jsxs)("div",{className:"flex gap-4 mt-0.5",children:[(0,t.jsxs)("p",{className:"text-[10px] text-[var(--app-shell-soft-text)] font-bold uppercase tracking-tight",children:["ID: ",j.id]}),(0,t.jsx)("p",{className:"text-[10px] text-[var(--app-shell-soft-text)] font-bold uppercase tracking-tight",children:"• Phase: Implementation"})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsxs)("button",{className:"flex items-center gap-2 px-4 py-2 text-[var(--muted-foreground)] hover:text-[var(--foreground)] font-bold text-xs bg-[var(--secondary)] border border-[var(--border)] rounded-lg transition-all active:scale-95",children:[(0,t.jsx)(m.Settings2,{size:16})," Configure"]}),(0,t.jsxs)("button",{onClick:()=>{let e=q+1;G(e);let t={...j,version:`v${e}`,policy:{...j.policy,replanBudgetRemaining:Math.max(0,j.policy.replanBudgetRemaining-1)},history:[{id:Date.now(),event:"replan",from:`v${q}`,to:`v${e}`,reason:"Manual scope adjustment",time:"Just now"},...j.history]};R(t),B(e=>e.map(e=>e.id===j.id?t:e))},className:"flex items-center gap-2 px-4 py-2 bg-[var(--foreground)] hover:bg-black text-white rounded-lg font-bold text-xs transition-all shadow-md active:scale-95",children:[(0,t.jsx)(N.GitBranch,{size:16})," Trigger Replan"]}),(0,t.jsxs)("button",{className:"flex items-center gap-2 px-5 py-2.5 bg-blue-600 hover:bg-blue-700 text-white rounded-lg font-black text-xs shadow-lg shadow-blue-200 transition-all active:scale-95",children:[(0,t.jsx)(h.Play,{size:16,fill:"white"})," RESUME EXECUTION"]})]})]}),(0,t.jsxs)("div",{className:"flex flex-1 overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex-1 flex flex-col relative overflow-hidden bg-[var(--secondary)]",onClick:()=>T(null),children:[(0,t.jsx)("div",{className:"absolute top-6 left-6 z-10",children:(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] backdrop-blur-md border border-[var(--border)] p-3 rounded-xl shadow-xl",children:[(0,t.jsx)("h3",{className:"text-[9px] font-black text-[var(--app-shell-soft-text)] uppercase mb-3 px-1 tracking-[0.2em]",children:"Visual Language"}),(0,t.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 text-[10px] font-bold text-[var(--muted-foreground)]",children:[(0,t.jsx)("div",{className:"w-5 h-3 rounded bg-[var(--secondary)] border border-[var(--border)]"})," Work Node"]}),(0,t.jsxs)("div",{className:"flex items-center gap-3 text-[10px] font-bold text-[var(--muted-foreground)]",children:[(0,t.jsx)("div",{className:"w-4 h-4 rotate-45 bg-[var(--secondary)] border border-[var(--border)]"})," Gate Node"]}),(0,t.jsxs)("div",{className:"flex items-center gap-3 text-[10px] font-bold text-[var(--muted-foreground)]",children:[(0,t.jsx)("div",{className:"w-4 h-4 rounded-full bg-[var(--secondary)] border border-[var(--border)]"})," Control Node"]})]})]})}),(0,t.jsxs)("div",{className:"absolute bottom-6 left-6 z-10 flex gap-2",children:[(0,t.jsx)("button",{className:"p-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg shadow hover:bg-[var(--item-hover-bg)] text-[var(--app-shell-soft-text)]",children:(0,t.jsx)(r.Plus,{size:16})}),(0,t.jsx)("button",{className:"p-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg shadow hover:bg-[var(--item-hover-bg)] text-[var(--app-shell-soft-text)]",children:(0,t.jsx)(w,{size:16,className:"rotate-90"})}),(0,t.jsx)("button",{className:"px-3 py-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg shadow hover:bg-[var(--item-hover-bg)] text-[10px] font-black text-[var(--muted-foreground)] uppercase tracking-widest",children:"Fit to Screen"})]}),(0,t.jsx)("div",{className:"flex-1 overflow-auto relative p-20 flex items-center justify-center cursor-grab active:cursor-grabbing",children:e?(0,t.jsxs)("div",{className:"relative w-[600px] h-[600px] select-none",children:[(0,t.jsxs)("svg",{className:"absolute inset-0 w-full h-full pointer-events-none",style:{overflow:"visible"},children:[(0,t.jsx)("defs",{children:(0,t.jsx)("marker",{id:"arrowhead",markerWidth:"10",markerHeight:"7",refX:"9",refY:"3.5",orientation:"auto",children:(0,t.jsx)("polygon",{points:"0 0, 10 3.5, 0 7",fill:"var(--app-shell-soft-text)"})})}),M.map((e,s)=>{let r=C.find(t=>t.id===e.from),a=C.find(t=>t.id===e.to);return r&&a?(0,t.jsx)("line",{x1:r.x,y1:r.y,x2:a.x,y2:a.y,stroke:"var(--border)",strokeWidth:"2.5",markerEnd:"url(#arrowhead)",strokeDasharray:"work"===r.type&&"running"===r.status?"5,5":"none",className:"running"===r.status?"animate-[dash_1s_linear_infinite]":""},s):null})]}),C.map(e=>(0,t.jsx)(P,{node:e,isSelected:$?.id===e.id,onClick:T},e.id))]}):(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center text-[var(--app-shell-soft-text)] bg-[var(--card-bg)] p-16 rounded-[2.5rem] border-2 border-dashed border-[var(--border)] max-w-md text-center shadow-inner",children:[(0,t.jsx)("div",{className:"w-20 h-20 bg-[var(--secondary)] rounded-3xl flex items-center justify-center mb-6 border border-[var(--border)] shadow-sm",children:(0,t.jsx)(g.Terminal,{size:40,className:"opacity-30"})}),(0,t.jsx)("h3",{className:"font-black text-xl text-[var(--secondary-foreground)] mb-3 tracking-tight",children:"Linear Task Logic"}),(0,t.jsx)("p",{className:"text-sm text-[var(--app-shell-soft-text)] font-medium leading-relaxed",children:"This task has been classified as SIMPLE. Execution runs through a predefined serial sequence without branching overhead."})]})}),(0,t.jsxs)("div",{className:"h-28 bg-[var(--card-bg)] border-t border-[var(--border)] px-8 py-4 flex flex-col gap-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("span",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-[0.2em]",children:"Execution History Timeline"}),(0,t.jsx)("div",{className:"flex gap-4",children:(0,t.jsxs)("button",{className:"text-[10px] font-black text-blue-600 hover:text-blue-700 uppercase tracking-widest flex items-center gap-1.5",children:[(0,t.jsx)(p,{size:12})," View Full Logs"]})})]}),(0,t.jsxs)("div",{className:"flex items-center relative gap-24 h-full",children:[(0,t.jsx)("div",{className:"absolute top-1/2 left-0 w-full h-0.5 bg-[var(--secondary)] -translate-y-1/2"}),j.history.slice().reverse().map((e,s)=>(0,t.jsxs)("div",{className:"relative z-10 flex flex-col items-center group cursor-pointer",children:[(0,t.jsx)("div",{className:`w-3.5 h-3.5 rounded-full border-2 border-[var(--card-bg)] ring-4 ring-offset-2 transition-all group-hover:scale-125 ${s===j.history.length-1?"bg-blue-600 ring-blue-100 scale-110":"bg-[var(--app-shell-soft-text)] ring-transparent opacity-60"}`}),(0,t.jsx)("span",{className:`text-[10px] font-black mt-2 uppercase tracking-tighter ${s===j.history.length-1?"text-blue-600":"text-[var(--app-shell-soft-text)]"}`,children:e.from?`${e.from} → ${e.to}`:e.event}),(0,t.jsx)("span",{className:"text-[8px] font-bold text-[var(--app-shell-soft-text)] whitespace-nowrap",children:e.time})]},e.id)),(0,t.jsx)("div",{className:"ml-auto relative z-10 flex flex-col items-end",children:(0,t.jsxs)("div",{className:"px-4 py-1.5 bg-[var(--secondary)] border border-[var(--border)] rounded-lg text-[9px] font-black text-[var(--app-shell-soft-text)] italic tracking-widest uppercase shadow-sm",children:["Next Checkpoint: v",q+1]})})]})]})]}),(0,t.jsxs)("aside",{className:"w-90 border-l border-[var(--border)] p-8 flex flex-col gap-8 overflow-y-auto bg-[var(--card-bg)]",children:[$?(0,t.jsxs)("div",{className:"animate-in fade-in slide-in-from-right-4 duration-300",children:[(0,t.jsxs)("button",{onClick:()=>T(null),className:"mb-6 flex items-center gap-1.5 text-[10px] font-black text-blue-600 uppercase tracking-widest hover:gap-2 transition-all",children:[(0,t.jsx)(a.ChevronLeft,{size:14,strokeWidth:3})," Back to Overview"]}),(0,t.jsxs)("div",{className:"flex items-center gap-4 mb-8",children:[(0,t.jsx)("div",{className:`w-14 h-14 rounded-2xl flex items-center justify-center border-2 ${"done"===$.status?"bg-green-50 border-green-200 text-green-600":"bg-blue-50 border-blue-200 text-blue-600"}`,children:"work"===$.type?(0,t.jsx)(k.Zap,{size:24}):"gate"===$.type?(0,t.jsx)(y.ShieldCheck,{size:24}):(0,t.jsx)(N.GitBranch,{size:24})}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("p",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest",children:[$.type," Node"]}),(0,t.jsx)("h3",{className:"text-xl font-black tracking-tight",children:$.title})]})]}),(0,t.jsxs)("div",{className:"space-y-8",children:[(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-4",children:"Current Status"}),(0,t.jsxs)("div",{className:"flex items-center gap-3 px-4 py-3 bg-[var(--secondary)] rounded-xl border border-[var(--border)]",children:[(0,t.jsx)(A,{status:$.status,size:20}),(0,t.jsx)("span",{className:"text-xs font-black uppercase tracking-widest text-[var(--secondary-foreground)]",children:$.status})]})]}),"work"===$.type&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-4",children:"Performance Metrics"}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,t.jsxs)("div",{className:"p-4 bg-[var(--card-bg)] border border-[var(--border)] rounded-xl",children:[(0,t.jsx)("p",{className:"text-[9px] font-bold text-[var(--app-shell-soft-text)] uppercase mb-1",children:"Latency"}),(0,t.jsx)("p",{className:"text-sm font-black text-[var(--foreground)]",children:$.metrics?.latency||"32m 14s"})]}),(0,t.jsxs)("div",{className:"p-4 bg-[var(--card-bg)] border border-[var(--border)] rounded-xl",children:[(0,t.jsx)("p",{className:"text-[9px] font-bold text-[var(--app-shell-soft-text)] uppercase mb-1",children:"Compute"}),(0,t.jsx)("p",{className:"text-sm font-black text-[var(--foreground)]",children:$.metrics?.tokens||"14.2k tokens"})]})]})]}),"gate"===$.type&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-4",children:"Gate Requirements"}),(0,t.jsx)("div",{className:"space-y-3",children:[{label:"Unit Tests",status:"pass"},{label:"Linting",status:"pass"},{label:"Type Safety",status:"pass"},{label:"Coverage (>80%)",status:"fail"}].map((e,s)=>(0,t.jsxs)("div",{className:"flex items-center justify-between p-3 bg-[var(--card-bg)] border border-[var(--border)] rounded-xl",children:[(0,t.jsx)("span",{className:"text-[11px] font-bold text-[var(--muted-foreground)]",children:e.label}),"pass"===e.status?(0,t.jsx)(l.CheckCircle2,{size:16,className:"text-green-500"}):(0,t.jsx)(u.AlertCircle,{size:16,className:"text-red-500"})]},s))}),"pending"===$.status&&(0,t.jsxs)("div",{className:"mt-8 grid grid-cols-2 gap-3",children:[(0,t.jsx)("button",{className:"py-3 bg-red-50 text-red-600 border border-red-100 rounded-xl font-black text-[10px] uppercase tracking-widest hover:bg-red-100 transition-all",children:"Reject"}),(0,t.jsx)("button",{className:"py-3 bg-green-600 text-white rounded-xl font-black text-[10px] uppercase tracking-widest shadow-lg shadow-green-100 hover:bg-green-700 transition-all",children:"Approve Gate"})]})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-4",children:"Node Dependencies"}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[M.filter(e=>e.to===$.id).map((e,s)=>(0,t.jsxs)("div",{className:"px-3 py-1.5 bg-[var(--secondary)] text-[var(--muted-foreground)] text-[10px] font-bold rounded-lg border border-[var(--border)]",children:["Source: ",e.from]},s)),0===M.filter(e=>e.to===$.id).length&&(0,t.jsx)("span",{className:"text-[10px] font-bold text-[var(--app-shell-soft-text)] italic uppercase",children:"Graph Start Node"})]})]})]})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("section",{children:[(0,t.jsxs)("h3",{className:"flex items-center gap-2 text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-6",children:[(0,t.jsx)(u.AlertCircle,{size:14})," Execution Overview"]}),(0,t.jsxs)("div",{className:"bg-[var(--foreground)] p-5 rounded-2xl text-white shadow-xl shadow-[var(--border)]",children:[(0,t.jsxs)("div",{className:"flex justify-between items-start mb-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-[9px] font-black text-blue-400 uppercase tracking-widest mb-1",children:"Active Worker"}),(0,t.jsxs)("h4",{className:"text-lg font-black tracking-tight flex items-center gap-2",children:["write-tests ",(0,t.jsx)("div",{className:"w-2 h-2 rounded-full bg-blue-500 animate-pulse"})]})]}),(0,t.jsx)(d,{size:20,className:"text-[var(--muted-foreground)] animate-[spin_3s_linear_infinite]"})]}),(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex justify-between text-[10px] font-bold text-[var(--app-shell-soft-text)] uppercase",children:[(0,t.jsx)("span",{children:"Current Attempt"}),(0,t.jsx)("span",{className:"text-white",children:"2 / 3"})]}),(0,t.jsxs)("div",{className:"flex justify-between text-[10px] font-bold text-[var(--app-shell-soft-text)] uppercase",children:[(0,t.jsx)("span",{children:"Time Elapsed"}),(0,t.jsx)("span",{className:"text-white font-mono",children:"15m 22s"})]})]})]})]}),(0,t.jsxs)("section",{children:[(0,t.jsxs)("h3",{className:"flex items-center gap-2 text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-6",children:[(0,t.jsx)(b,{size:14})," Resource Budgets"]}),j.policy?(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(E,{label:"Replans Remaining",current:j.policy.replanBudgetRemaining,total:j.policy.replanBudgetInitial,colorClass:"bg-blue-600"}),(0,t.jsx)(E,{label:"Verify Budget",current:j.policy.verifyBudgetRemaining,total:j.policy.verifyBudgetInitial,colorClass:"bg-indigo-600"})]}):(0,t.jsx)("div",{className:"p-4 bg-[var(--secondary)] rounded-xl border border-[var(--border)] text-[10px] font-bold text-[var(--app-shell-soft-text)] uppercase text-center tracking-widest",children:"Standard Policy Applied"})]}),(0,t.jsxs)("section",{children:[(0,t.jsxs)("h3",{className:"flex items-center gap-2 text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-6",children:[(0,t.jsx)(c,{size:14})," Gate Verification"]}),(0,t.jsxs)("div",{className:"space-y-5",children:[(0,t.jsxs)("div",{className:"flex items-start gap-4",children:[(0,t.jsx)("div",{className:"mt-1 flex items-center justify-center w-6 h-6 rounded-full bg-orange-100 text-orange-600 border border-orange-200",children:(0,t.jsx)(n.Pause,{size:12,strokeWidth:3})}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h5",{className:"text-xs font-black text-[var(--secondary-foreground)] uppercase tracking-tight",children:"quality-gate"}),(0,t.jsx)("p",{className:"text-[10px] text-[var(--app-shell-soft-text)] font-medium leading-relaxed mt-1",children:"Pending: Coverage metrics must meet 80% threshold before proceeding."})]})]}),(0,t.jsxs)("div",{className:"flex items-start gap-4 opacity-40",children:[(0,t.jsx)("div",{className:"mt-1 flex items-center justify-center w-6 h-6 rounded-full bg-[var(--secondary)] text-[var(--app-shell-soft-text)] border border-[var(--border)]",children:(0,t.jsx)(x,{size:12,strokeWidth:3})}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h5",{className:"text-xs font-black text-[var(--secondary-foreground)] uppercase tracking-tight",children:"handoff-gate"}),(0,t.jsx)("p",{className:"text-[10px] text-[var(--app-shell-soft-text)] font-medium leading-relaxed mt-1",children:"Blocked: Human architecture review required after quality gate pass."})]})]})]})]})]}),(0,t.jsxs)("section",{className:"mt-auto pt-8 border-t border-[var(--border)]",children:[(0,t.jsxs)("h3",{className:"flex items-center gap-2 text-[10px] font-black text-[var(--app-shell-soft-text)] uppercase tracking-widest mb-4",children:[(0,t.jsx)(v,{size:14})," Global Policy"]}),(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsxs)("div",{className:"flex justify-between text-[10px] font-bold",children:[(0,t.jsx)("span",{className:"text-[var(--app-shell-soft-text)] uppercase",children:"Concurrency Limit"}),(0,t.jsx)("span",{className:"text-[var(--secondary-foreground)]",children:"3 WorkNodes"})]}),(0,t.jsxs)("div",{className:"flex justify-between text-[10px] font-bold",children:[(0,t.jsx)("span",{className:"text-[var(--app-shell-soft-text)] uppercase",children:"Mode"}),(0,t.jsx)("span",{className:"text-blue-600 uppercase",children:"Project / DAG"})]})]})]})]})]})]}))]})}],561547)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,195057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={formatUrl:function(){return i},formatWithValidation:function(){return c},urlObjectKeys:function(){return o}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(190809)._(e.r(998183)),l=/https?|ftp|gopher|file/;function i(e){let{auth:t,hostname:r}=e,a=e.protocol||"",s=e.pathname||"",i=e.hash||"",o=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(c+=":"+e.port)),o&&"object"==typeof o&&(o=String(n.urlQueryToSearchParams(o)));let u=e.search||o&&`?${o}`||"";return a&&!a.endsWith(":")&&(a+=":"),e.slashes||(!a||l.test(a))&&!1!==c?(c="//"+(c||""),s&&"/"!==s[0]&&(s="/"+s)):c||(c=""),i&&"#"!==i[0]&&(i="#"+i),u&&"?"!==u[0]&&(u="?"+u),s=s.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${a}${c}${s}${u}${i}`}let o=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return i(e)}},818581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return s}});let a=e.r(271645);function s(e,t){let r=(0,a.useRef)(null),s=(0,a.useRef)(null);return(0,a.useCallback)(a=>{if(null===a){let e=r.current;e&&(r.current=null,e());let t=s.current;t&&(s.current=null,t())}else e&&(r.current=n(e,a)),t&&(s.current=n(t,a))},[e,t])}function n(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},573668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return n}});let a=e.r(718967),s=e.r(652817);function n(e){if(!(0,a.isAbsoluteUrl)(e))return!0;try{let t=(0,a.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.hasBasePath)(r.pathname)}catch(e){return!1}}},284508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},522016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return v},useLinkStatus:function(){return y}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(190809),l=e.r(843476),i=n._(e.r(271645)),o=e.r(195057),c=e.r(8372),u=e.r(818581),d=e.r(718967),f=e.r(405550);e.r(233525);let m=e.r(388540),h=e.r(91949),p=e.r(573668),x=e.r(509396);function v(t){var r,a;let s,n,v,[y,b]=(0,i.useOptimistic)(h.IDLE_LINK_STATUS),j=(0,i.useRef)(null),{href:N,as:w,children:k,prefetch:C=null,passHref:S,replace:_,shallow:L,scroll:P,onClick:T,onMouseEnter:M,onTouchStart:O,legacyBehavior:R=!1,onNavigate:A,transitionTypes:E,ref:I,unstable_dynamicOnHover:U,...$}=t;s=k,R&&("string"==typeof s||"number"==typeof s)&&(s=(0,l.jsx)("a",{children:s}));let K=i.default.useContext(c.AppRouterContext),W=!1!==C,B=!1!==C?null===(a=C)||"auto"===a?x.FetchStrategy.PPR:x.FetchStrategy.Full:x.FetchStrategy.PPR,D="string"==typeof(r=w||N)?r:(0,o.formatUrl)(r);if(R){if(s?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});n=i.default.Children.only(s)}let z=R?n&&"object"==typeof n&&n.ref:I,F=i.default.useCallback(e=>(null!==K&&(j.current=(0,h.mountLinkInstance)(e,D,K,B,W,b)),()=>{j.current&&((0,h.unmountLinkForCurrentNavigation)(j.current),j.current=null),(0,h.unmountPrefetchableInstance)(e)}),[W,D,K,B,b]),q={ref:(0,u.useMergedRef)(F,z),onClick(t){R||"function"!=typeof T||T(t),R&&n.props&&"function"==typeof n.props.onClick&&n.props.onClick(t),!K||t.defaultPrevented||function(t,r,a,s,n,l,o){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,p.isLocalURL)(r)){s&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),l){let e=!1;if(l({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(699781);i.default.startTransition(()=>{d(r,s?"replace":"push",!1===n?m.ScrollBehavior.NoScroll:m.ScrollBehavior.Default,a.current,o)})}}(t,D,j,_,P,A,E)},onMouseEnter(e){R||"function"!=typeof M||M(e),R&&n.props&&"function"==typeof n.props.onMouseEnter&&n.props.onMouseEnter(e),K&&W&&(0,h.onNavigationIntent)(e.currentTarget,!0===U)},onTouchStart:function(e){R||"function"!=typeof O||O(e),R&&n.props&&"function"==typeof n.props.onTouchStart&&n.props.onTouchStart(e),K&&W&&(0,h.onNavigationIntent)(e.currentTarget,!0===U)}};return(0,d.isAbsoluteUrl)(D)?q.href=D:R&&!S&&("a"!==n.type||"href"in n.props)||(q.href=(0,f.addBasePath)(D)),v=R?i.default.cloneElement(n,q):(0,l.jsx)("a",{...$,...q,children:s}),(0,l.jsx)(g.Provider,{value:y,children:v})}e.r(284508);let g=(0,i.createContext)(h.IDLE_LINK_STATUS),y=()=>(0,i.useContext)(g);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},429056,e=>{"use strict";let t=(0,e.i(363732).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",0,t],429056)},363732,e=>{"use strict";var t=e.i(271645);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),a=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var s={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let n=(0,t.forwardRef)(({color:e="currentColor",size:a=24,strokeWidth:n=2,absoluteStrokeWidth:l,className:i="",children:o,iconNode:c,...u},d)=>(0,t.createElement)("svg",{ref:d,...s,width:a,height:a,stroke:e,strokeWidth:l?24*Number(n)/Number(a):n,className:r("lucide",i),...!o&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(u)&&{"aria-hidden":"true"},...u},[...c.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(o)?o:[o]]));e.s(["default",0,(e,s)=>{let l=(0,t.forwardRef)(({className:l,...i},o)=>(0,t.createElement)(n,{ref:o,iconNode:s,className:r(`lucide-${a(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,l),...i}));return l.displayName=a(e),l}],363732)},203096,e=>{"use strict";let t=(0,e.i(363732).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",0,t],203096)},958164,e=>{"use strict";let t=(0,e.i(363732).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",0,t],958164)},437307,e=>{"use strict";let t=(0,e.i(363732).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["XCircle",0,t],437307)},211464,e=>{"use strict";let t=(0,e.i(363732).default)("circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);e.s(["Circle",0,t],211464)},381830,e=>{"use strict";var t=e.i(843476),r=e.i(271645),a=e.i(522016),s=e.i(203096),n=e.i(429056),l=e.i(211464),i=e.i(958164),o=e.i(437307);let c=e=>{switch(e){case"ok":return(0,t.jsx)(l.Circle,{className:"w-3 h-3 fill-emerald-400 text-emerald-400"});case"error":return(0,t.jsx)(o.XCircle,{className:"w-3 h-3 text-red-400"});case"unavailable":return(0,t.jsx)(i.AlertTriangle,{className:"w-3 h-3 text-[var(--muted-foreground)]"})}},u=e=>{switch(e){case"ok":return(0,t.jsx)("span",{className:"text-emerald-400 text-xs font-medium",children:"OK"});case"error":return(0,t.jsx)("span",{className:"text-red-400 text-xs font-medium",children:"Error"});case"unavailable":return(0,t.jsx)("span",{className:"text-[var(--muted-foreground)] text-xs font-medium",children:"Unavailable"})}};e.s(["default",0,function(){let[e,i]=(0,r.useState)(null),[o,d]=(0,r.useState)(!0),[f,m]=(0,r.useState)(null),h=(0,r.useCallback)(async()=>{d(!0),m(null);try{let e=await fetch("/api/status");if(!e.ok)throw Error(`HTTP ${e.status}`);i(await e.json())}catch(e){m(e instanceof Error?e.message:"Failed to fetch status")}finally{d(!1)}},[]);(0,r.useEffect)(()=>{h();let e=setInterval(h,3e4);return()=>clearInterval(e)},[h]);let p=e?.services.filter(e=>!e.name.startsWith("cli:"))??[],x=e?.services.filter(e=>e.name.startsWith("cli:"))??[];return(0,t.jsx)("div",{className:"min-h-screen bg-[var(--background)] text-[var(--foreground)] p-6",children:(0,t.jsxs)("div",{className:"max-w-2xl mx-auto",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-8",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)(a.default,{href:"/",className:"text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:(0,t.jsx)(n.ArrowLeft,{className:"w-4 h-4"})}),(0,t.jsx)("h1",{className:"text-lg font-semibold",children:"System Status"}),e&&(0,t.jsx)("span",{className:`text-xs px-2 py-0.5 rounded-full ${"ok"===e.status?"bg-emerald-400/10 text-emerald-400":"bg-amber-400/10 text-amber-400"}`,children:"ok"===e.status?"All systems operational":"Degraded"})]}),(0,t.jsx)("button",{onClick:h,disabled:o,className:"text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors disabled:opacity-50",children:(0,t.jsx)(s.RefreshCw,{className:`w-4 h-4 ${o?"animate-spin":""}`})})]}),f&&(0,t.jsx)("div",{className:"mb-6 p-3 rounded-lg bg-red-400/10 border border-red-400/20 text-red-400 text-sm",children:f}),(0,t.jsxs)("section",{className:"mb-8",children:[(0,t.jsx)("h2",{className:"text-xs font-medium text-[var(--muted-foreground)] uppercase tracking-wider mb-3",children:"Services"}),(0,t.jsxs)("div",{className:"rounded-lg border border-[var(--border)] divide-y divide-[var(--border)]",children:[p.map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[c(e.status),(0,t.jsx)("span",{className:"text-sm font-medium",children:e.name})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[void 0!==e.latencyMs&&(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[e.latencyMs,"ms"]}),u(e.status)]})]},e.name)),0===p.length&&!o&&(0,t.jsx)("div",{className:"px-4 py-3 text-sm text-[var(--muted-foreground)]",children:"No services found"})]})]}),(0,t.jsxs)("section",{className:"mb-8",children:[(0,t.jsx)("h2",{className:"text-xs font-medium text-[var(--muted-foreground)] uppercase tracking-wider mb-3",children:"CLI Providers"}),(0,t.jsx)("div",{className:"rounded-lg border border-[var(--border)] divide-y divide-[var(--border)]",children:x.map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[c(e.status),(0,t.jsx)("span",{className:"text-sm font-medium",children:e.name.replace("cli:","")})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:e.detail}),u(e.status)]})]},e.name))})]}),e?.limits&&(0,t.jsxs)("section",{className:"mb-8",children:[(0,t.jsx)("h2",{className:"text-xs font-medium text-[var(--muted-foreground)] uppercase tracking-wider mb-3",children:"Operational Limits"}),(0,t.jsxs)("div",{className:"rounded-lg border border-[var(--border)] divide-y divide-[var(--border)]",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)(l.Circle,{className:"w-3 h-3 fill-[var(--muted-foreground)] text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm font-medium",children:"Max Workers"})]}),(0,t.jsx)("span",{className:"text-xs text-[var(--app-shell-soft-text)] font-mono",children:e.limits.maxWorkers})]}),(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)(l.Circle,{className:"w-3 h-3 fill-[var(--muted-foreground)] text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm font-medium",children:"Write QPS Ceiling"})]}),(0,t.jsx)("span",{className:"text-xs text-[var(--app-shell-soft-text)] font-mono",children:e.limits.writeQpsCeiling})]}),(0,t.jsx)("div",{className:"px-4 py-2",children:(0,t.jsxs)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:["Single-coordinator / single-writer SQLite architecture."," ",(0,t.jsx)("a",{href:"https://github.com/anthropics/agx-cloud/blob/main/docs/LIMITS.md",target:"_blank",rel:"noopener",className:"underline hover:text-[var(--app-shell-soft-text)]",children:"See LIMITS.md"})]})})]})]}),e&&(0,t.jsxs)("p",{className:"text-xs text-[var(--muted-foreground)] text-center",children:["Last checked: ",new Date(e.timestamp).toLocaleTimeString()]})]})})}])}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,640481,e=>{"use strict";let t=(0,e.i(363732).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",0,t],640481)},780004,e=>{"use strict";let t="obra/superpowers",n="vercel/next-skills";function i(e,t,n){return n?{repo:e,skillId:t,condition:n}:{repo:e,skillId:t}}function r(e){return e.condition?{...e}:{repo:e.repo,skillId:e.skillId}}function a(e){let t={...e};return t.extraSkills&&(t.extraSkills=t.extraSkills.map(r)),t}function s(e){return{...e,agents:e.agents.map(a)}}function l(e){let t={...e,agents:e.agents.map(a)};return t.variants&&(t.variants=t.variants.map(s)),t}let o={"strategist-lead":[i(t,"brainstorming"),i(t,"writing-plans"),i(t,"dispatching-parallel-agents"),i(t,"requesting-code-review"),i(t,"verification-before-completion")],"senior-builder":[i(t,"test-driven-development"),i(t,"systematic-debugging"),i(t,"subagent-driven-development"),i(t,"requesting-code-review"),i(t,"verification-before-completion"),i(t,"finishing-a-development-branch")],builder:[i(t,"test-driven-development"),i(t,"systematic-debugging"),i(t,"verification-before-completion"),i(t,"finishing-a-development-branch")],planner:[i(t,"brainstorming"),i(t,"writing-plans"),i(t,"verification-before-completion")],researcher:[i(t,"brainstorming"),i(t,"writing-plans"),i(t,"systematic-debugging"),i(t,"verification-before-completion")],reviewer:[i(t,"systematic-debugging"),i(t,"test-driven-development"),i(t,"requesting-code-review"),i(t,"verification-before-completion")]},d=["strategist-lead","senior-builder","builder","planner","researcher","reviewer"].map(e=>({id:e,skills:o[e].map(r)})),c=[i(n,"api-routes","next.js app router, route handlers, api endpoints"),i(n,"nextjs-patterns","next.js app structure, routing, layouts, data fetching"),i(n,"react-server-components","react server components, server client boundaries, next.js rendering")],u={"team-lead":{name:"Team Lead",title:"Team Lead",style:"balanced",skillProfileId:"strategist-lead",identity:"Own technical direction, break ambiguous work into executable plans, and keep the squad aligned on delivery."},"fullstack-engineer":{name:"Fullstack Engineer",title:"Senior Fullstack Engineer",style:"balanced",skillProfileId:"senior-builder",identity:"Ship features end-to-end across frontend and backend with pragmatic tradeoffs and clean boundaries.",extraSkills:c},"backend-engineer":{name:"Backend Engineer",title:"Senior Backend Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Own backend contracts, data integrity, and safe delivery under real production constraints."},"frontend-engineer":{name:"Frontend Engineer",title:"Senior Frontend Engineer",style:"balanced",skillProfileId:"senior-builder",identity:"Own product-facing UI quality, interaction design fidelity, and maintainable front-end architecture.",extraSkills:c},"data-engineer":{name:"Data Engineer",title:"Data Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Build reliable data pipelines, schemas, and transformations with a bias toward traceability."},"ml-engineer":{name:"ML Engineer",title:"ML Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Ship model-backed systems pragmatically, with evaluation, rollback paths, and tight production feedback."},"devops-engineer":{name:"DevOps Engineer",title:"DevOps Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Own delivery automation, deployment safety, and infrastructure changes that must fail predictably."},"security-engineer":{name:"Security Engineer",title:"Security Engineer",style:"conservative",skillProfileId:"senior-builder",identity:"Harden trust boundaries, implement secure defaults, and turn vague risk into concrete engineering requirements."},"ui-designer":{name:"UI Designer",title:"UI Designer",style:"specialist",skillProfileId:"builder",identity:"Refine interfaces into consistent, high-signal UI systems that are practical to build and maintain.",extraSkills:[i(n,"nextjs-patterns","next.js ui flows, routing, layouts, app router"),i(n,"react-server-components","react server components, server client boundaries, data fetching placement")]},"qa-engineer":{name:"QA Engineer",title:"QA Engineer",style:"conservative",skillProfileId:"reviewer",identity:"Find regressions early, tighten acceptance boundaries, and force evidence before release claims."},sre:{name:"SRE",title:"Site Reliability Engineer",style:"conservative",skillProfileId:"reviewer",identity:"Guard uptime, incident readiness, and operational correctness by challenging risky assumptions early."},"pen-tester":{name:"Pen Tester",title:"Penetration Tester",style:"specialist",skillProfileId:"reviewer",identity:"Probe the system as an adversary, find exploit paths, and make the attack surface legible to builders."},"product-manager":{name:"Product Manager",title:"Product Manager",style:"balanced",skillProfileId:"planner",identity:"Turn ambiguous requests into scoped bets, crisp plans, and explicit tradeoffs the team can execute."},"ux-designer":{name:"UX Designer",title:"UX Designer",style:"balanced",skillProfileId:"planner",identity:"Clarify user intent, reduce friction in flows, and turn product goals into coherent interaction design."},"technical-writer":{name:"Technical Writer",title:"Technical Writer",style:"balanced",skillProfileId:"planner",identity:"Turn complex implementation detail into clear docs, rollout notes, and operational guidance."},"growth-marketer":{name:"Growth Marketer",title:"Growth Marketer",style:"balanced",skillProfileId:"strategist-lead",identity:"Design growth experiments with clear hypotheses, sequencing, and measurable outcomes."},analyst:{name:"Analyst",title:"Product Analyst",style:"specialist",skillProfileId:"researcher",identity:"Ground decisions in evidence, identify gaps in the brief, and surface the signal behind user behavior."},"content-writer":{name:"Content Writer",title:"Content Strategist",style:"balanced",skillProfileId:"researcher",identity:"Translate product and audience insight into clear narratives, launch copy, and feedback loops."},researcher:{name:"Researcher",title:"Researcher",style:"balanced",skillProfileId:"researcher",identity:"Map fast-changing domains, synthesize evidence, and surface the governing model behind decisions."},"marketing-strategist":{name:"Marketing Strategist",title:"Marketing Strategist",style:"balanced",skillProfileId:"strategist-lead",identity:"Own brand positioning, campaign strategy, and channel mix with measurable conversion targets."},copywriter:{name:"Copywriter",title:"Copywriter",style:"balanced",skillProfileId:"researcher",identity:"Craft clear, persuasive copy that serves both the reader and the business goal."},"support-engineer":{name:"Support Engineer",title:"Support Engineer",style:"balanced",skillProfileId:"builder",identity:"Diagnose customer issues fast, escalate with precision, and turn patterns into preventive fixes."},"support-lead":{name:"Support Lead",title:"Support Lead",style:"balanced",skillProfileId:"planner",identity:"Triage incoming issues, route to the right responder, and track resolution quality."},"devrel-engineer":{name:"DevRel Engineer",title:"Developer Relations Engineer",style:"balanced",skillProfileId:"senior-builder",identity:"Build sample apps, integrations, and tooling that make the platform easy to adopt."},"community-manager":{name:"Community Manager",title:"Community Manager",style:"balanced",skillProfileId:"planner",identity:"Grow and engage the developer community through events, content, and feedback loops."},"ops-engineer":{name:"Ops Engineer",title:"Operations Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Automate operational workflows, reduce toil, and keep internal tooling reliable."},"project-manager":{name:"Project Manager",title:"Project Manager",style:"balanced",skillProfileId:"planner",identity:"Track milestones, remove blockers, and keep cross-team delivery on schedule."},"solutions-architect":{name:"Solutions Architect",title:"Solutions Architect",style:"balanced",skillProfileId:"strategist-lead",identity:"Design system-level architectures, evaluate tradeoffs, and guide teams through technical decisions."},"mobile-engineer":{name:"Mobile Engineer",title:"Senior Mobile Engineer",style:"balanced",skillProfileId:"senior-builder",identity:"Ship native and cross-platform mobile experiences with attention to performance and platform conventions."}},m=["team-lead","fullstack-engineer","backend-engineer","frontend-engineer","qa-engineer","product-manager","analyst","growth-marketer","content-writer","data-engineer","ml-engineer","ux-designer","ui-designer","devops-engineer","sre","security-engineer","pen-tester","researcher","technical-writer","marketing-strategist","copywriter","support-engineer","support-lead","devrel-engineer","community-manager","ops-engineer","project-manager","solutions-architect","mobile-engineer"].map(e=>a({id:e,...u[e]}));function g(e){return a({id:e,...u[e]})}let p=[{id:"engineering",name:"Engineering",description:"Software engineering teams across all domains — pick a specialization or build your own.",icon:"hammer",agents:[g("team-lead"),g("backend-engineer"),g("frontend-engineer"),g("fullstack-engineer"),g("qa-engineer")],variants:[{id:"general",name:"General",description:"Product engineering with leadership, builders across the stack, and quality gates.",agents:[g("team-lead"),g("backend-engineer"),g("frontend-engineer"),g("fullstack-engineer"),g("qa-engineer")]},{id:"ai",name:"AI",description:"Applied AI and ML engineering for models, evaluation, and production inference.",agents:[g("team-lead"),g("ml-engineer"),g("data-engineer"),g("researcher"),g("qa-engineer")]},{id:"data",name:"Data",description:"Data platform engineering for pipelines, warehousing, and transformation reliability.",agents:[g("team-lead"),g("data-engineer"),g("qa-engineer")]},{id:"mobile",name:"Mobile",description:"Native and cross-platform mobile engineering with fullstack support.",agents:[g("team-lead"),g("mobile-engineer"),g("fullstack-engineer"),g("qa-engineer")]},{id:"infra",name:"Infrastructure",description:"Platform reliability for delivery pipelines, runtime stability, and operational safety.",agents:[g("team-lead"),g("devops-engineer"),g("sre")]},{id:"security",name:"Security",description:"Security engineering for secure defaults, hardening, and adversarial validation.",agents:[g("team-lead"),g("security-engineer"),g("pen-tester")]},{id:"solutions",name:"Solutions",description:"Architecture and integration work across systems and customer deployments.",agents:[g("team-lead"),g("solutions-architect"),g("backend-engineer"),g("devops-engineer")]}]},{id:"product",name:"Product",description:"Discovery and prioritization for product direction, scope, and validation.",icon:"clipboard-list",agents:[g("team-lead"),g("product-manager"),g("analyst")]},{id:"design",name:"Design",description:"UX and UI pairing for flows, interaction models, and polished product surfaces.",icon:"palette",agents:[g("team-lead"),g("ux-designer"),g("ui-designer")]},{id:"growth",name:"Growth",description:"Experiment and content team for acquisition, activation, and learning loops.",icon:"megaphone",agents:[g("team-lead"),g("growth-marketer"),g("content-writer")]},{id:"research",name:"Research",description:"Research and synthesis pair for investigations, briefs, and decision support.",icon:"flask-conical",agents:[g("team-lead"),g("researcher"),g("technical-writer")]},{id:"marketing",name:"Marketing",description:"Brand strategy, campaign execution, and content production.",icon:"megaphone",agents:[g("team-lead"),g("marketing-strategist"),g("copywriter"),g("content-writer")]},{id:"support",name:"Support",description:"Customer-facing support with triage, diagnosis, and escalation.",icon:"life-buoy",agents:[g("team-lead"),g("support-lead"),g("support-engineer")]},{id:"devrel",name:"Developer Relations",description:"Developer advocacy through tooling, content, and community engagement.",icon:"users",agents:[g("team-lead"),g("devrel-engineer"),g("community-manager"),g("technical-writer")]},{id:"operations",name:"Operations",description:"Internal tooling, project delivery, and cross-team coordination.",icon:"settings",agents:[g("team-lead"),g("project-manager"),g("ops-engineer")]}].map(l),f=new Map(d.map(e=>[e.id,e])),h=new Map(m.map(e=>[e.id,e]));p.map(e=>[e.id,e]),e.s(["getAgentPresetBindings",0,function(e){let t,n="string"==typeof e?function(e){if(!e)return null;let t=h.get(e);return t?a(t):null}(e):e;return n?[...(t=function(e){if(!e)return null;let t=f.get(e);return t?{id:t.id,skills:t.skills.map(r)}:null}(n.skillProfileId))?t.skills:[],...n.extraSkills?n.extraSkills.map(r):[]]:[]},"listAgentPresets",0,function(){return m.map(a)},"listTeamTemplates",0,function(){return p.map(l)}])},855773,e=>{"use strict";var t=e.i(843476),n=e.i(271645),i=e.i(618566),r=e.i(780004),a=e.i(378764),s=e.i(524123),l=e.i(884564),o=e.i(529471),d=e.i(498027),c=e.i(906724),u=e.i(640481),m=e.i(929870),g=e.i(572665),p=e.i(797167);let f=[{id:"claude",label:"Claude Code"},{id:"gemini",label:"Gemini CLI"},{id:"ollama",label:"Ollama"},{id:"codex",label:"Codex CLI"}],h={claude:["claude-opus-4-6","claude-sonnet-4-6","claude-haiku-4-5"],gemini:["gemini-3-pro-preview","gemini-3-flash-preview"],ollama:["glm-5:cloud","qwen3.5:397b-cloud","qwen3.5:cloud","minimax-m2.5:cloud","kimi-k2.5:cloud"],codex:["gpt-5.3-codex","gpt-5.1-code-mini"]};function v({value:e,onChange:i,suggestions:r,placeholder:a="Model name...",disabled:s}){let[l,o]=(0,n.useState)(!1),[d,c]=(0,n.useState)(""),u=(0,n.useRef)(null);(0,n.useEffect)(()=>{function e(e){u.current&&!u.current.contains(e.target)&&o(!1)}return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]);let m=r.filter(t=>t.toLowerCase().includes((d||e).toLowerCase()));return(0,t.jsxs)("div",{ref:u,className:"relative flex-1",children:[(0,t.jsx)("input",{type:"text",value:e,placeholder:a,disabled:s,onChange:e=>{i(e.target.value),c(e.target.value),o(!0)},onFocus:()=>o(!0),className:"w-full h-8 px-2.5 text-xs rounded-lg border bg-[var(--background)] text-[var(--foreground)] placeholder:text-[var(--muted-foreground)] focus:outline-none focus:border-[var(--foreground)]/40 transition-colors disabled:opacity-50",style:{borderColor:"var(--border)"}}),l&&m.length>0&&(0,t.jsx)("div",{className:"absolute z-50 top-full left-0 right-0 mt-1 max-h-[160px] overflow-y-auto rounded-lg border bg-[var(--background)] shadow-lg",style:{borderColor:"var(--border)"},children:m.map(n=>(0,t.jsx)("button",{type:"button",onClick:()=>{i(n),c(""),o(!1)},className:`w-full text-left px-2.5 py-1.5 text-xs transition-colors hover:bg-[var(--muted)] ${n===e?"text-[var(--foreground)] font-medium":"text-[var(--muted-foreground)]"}`,children:n},n))})]})}function b({value:e,onChange:i,providers:r,disabled:a}){let[s,l]=(0,n.useState)(!1),c=(0,n.useRef)(null),u=r.find(t=>t.id===e);return(0,n.useEffect)(()=>{function e(e){c.current&&!c.current.contains(e.target)&&l(!1)}return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]),(0,t.jsxs)("div",{ref:c,className:"relative shrink-0",children:[(0,t.jsxs)("button",{type:"button",disabled:a,onClick:()=>l(!s),className:"h-8 px-2.5 pr-7 text-xs rounded-lg border bg-[var(--background)] text-left transition-colors hover:border-[var(--foreground)]/40 disabled:opacity-50 disabled:cursor-not-allowed min-w-[120px]",style:{borderColor:"var(--border)"},children:[(0,t.jsx)("span",{className:u?"text-[var(--foreground)]":"text-[var(--muted-foreground)]",children:u?.label??"Provider..."}),(0,t.jsx)(d.ChevronDown,{className:"absolute right-2 top-1/2 -translate-y-1/2 w-3 h-3 text-[var(--muted-foreground)]"})]}),s&&(0,t.jsx)("div",{className:"absolute z-50 top-full left-0 mt-1 min-w-[160px] rounded-lg border bg-[var(--background)] shadow-lg overflow-hidden",style:{borderColor:"var(--border)"},children:r.map(n=>(0,t.jsxs)("button",{type:"button",onClick:()=>{i(n.id),l(!1)},className:`w-full text-left px-3 py-2 text-xs transition-colors hover:bg-[var(--muted)] flex items-center justify-between gap-3 ${n.id===e?"text-[var(--foreground)] font-medium":"text-[var(--muted-foreground)]"}`,children:[n.label,n.id===e&&(0,t.jsx)(o.Check,{className:"w-3 h-3 text-[var(--foreground)]"})]},n.id))})]})}function x({provider:e,model:n,onProviderChange:i,onModelChange:r,label:a,disabled:s}){let l=h[e]??[];return(0,t.jsxs)("div",{className:"space-y-1.5",children:[a&&(0,t.jsx)("span",{className:"text-[10px] font-medium text-[var(--muted-foreground)] uppercase tracking-wide",children:a}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(b,{value:e,onChange:e=>{i(e),r("")},providers:f,disabled:s}),(0,t.jsx)(v,{value:n,onChange:r,suggestions:l,placeholder:e?"Select or type model...":"Select a provider first",disabled:s})]})]})}let y=["#D97706","#2563EB","#059669","#DC2626","#7C3AED","#DB2777","#0891B2"];function k(e){return(0,r.getAgentPresetBindings)(e).map(e=>({repo:e.repo,skillId:e.skillId,...e.condition?{condition:e.condition}:{}}))}function w(e,t,n,i,r){return{id:e,roleId:t.id,name:t.name,title:t.title,provider:i||"claude",model:r||"",identity:t.identity,color:n,skills:[],skillBindings:k(t)}}e.s(["default",0,function({params:e}){let{slug:d}=(0,n.use)(e),f=(0,i.useRouter)(),{projects:h}=(0,s.useProjectsWithAgents)(),v=h.find(e=>e.slug===d),[b,j]=(0,n.useState)(null),[I,P]=(0,n.useState)(null),[N,S]=(0,n.useState)([]),[C,E]=(0,n.useState)(""),[M,A]=(0,n.useState)(""),[D,T]=(0,n.useState)(""),[q,B]=(0,n.useState)(!1),[L,R]=(0,n.useState)(null),[O,$]=(0,n.useState)(null),z=(0,n.useMemo)(()=>(0,r.listTeamTemplates)(),[]),F=(0,n.useMemo)(()=>(0,r.listAgentPresets)(),[]),U=(0,n.useRef)(0),G=(0,n.useRef)(0),W=(0,n.useMemo)(()=>new Map(F.map(e=>[e.id,e])),[F]),X=(0,n.useMemo)(()=>z.find(e=>e.id===b)??null,[z,b]),K=(0,n.useMemo)(()=>z.map(e=>({id:e.id,label:e.name,description:e.description,meta:e.variants?`${e.variants.length} specializations`:`${e.agents.length} agents`})),[z]),Q=(0,n.useMemo)(()=>X?.variants?X.variants.map(e=>({id:e.id,label:e.name,description:e.description,meta:`${e.agents.length} agents`})):[],[X]),H=(0,n.useMemo)(()=>F.map(e=>({id:e.id,label:e.name,description:e.identity,meta:e.skillProfileId})),[F]);function J(){let e=`draft-agent-${U.current}`;return U.current+=1,e}function V(){let e=`agent-editor-${G.current}`;return G.current+=1,e}function Y(e){return y[e%y.length]}function Z(e){S(e.map((e,t)=>w(J(),e,Y(t),M||void 0,D)))}function _(e,t){if("edit"===e&&t)return void $({key:V(),mode:e,draftId:t.id,initial:t});let n=(X?.variants&&I?X.variants.find(e=>e.id===I)?.agents[0]:void 0)??X?.agents[0]??F[0];n&&$({key:V(),mode:e,draftId:null,initial:w(J(),n,Y(N.length),M||void 0,D)})}async function ee(){if(C.trim()&&0!==N.length&&v){B(!0),R(null);try{let e={name:C.trim(),provider:M||void 0,model:D||void 0,agents:N.map(e=>({roleId:e.roleId,name:e.name,title:e.title||void 0,provider:e.provider||M||"claude",model:e.model||D||"",identity:e.identity||void 0,color:e.color,skills:e.skills??[],skillBindings:e.skillBindings??[]}))};b&&(e.templateId=b),I&&(e.variantId=I);let t=await fetch(`/api/projects/${v.id}/teams`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok){let e=await t.json().catch(()=>({}));throw Error(e.error||`Failed to create team (${t.status})`)}f.push(`/projects/${d}/teams`)}catch(e){R(e instanceof Error?e.message:"Failed to create team"),B(!1)}}}if(!v)return(0,t.jsx)("div",{className:"flex items-center justify-center h-full text-sm text-zinc-500",children:"Loading..."});let et=!!X?.variants,en=N.length>0;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"h-full overflow-y-auto",children:(0,t.jsxs)("div",{className:"max-w-2xl mx-auto px-6 py-8 space-y-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-lg font-bold",children:"Add Team"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Pick a template, customize agents, and create."})]}),L&&(0,t.jsx)("div",{className:"p-3 rounded-xl bg-[var(--destructive-muted)] border border-[var(--destructive)]/20 text-sm text-[var(--destructive)]",children:L}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-[var(--muted-foreground)] mb-1.5",children:"Team name"}),(0,t.jsx)("input",{value:C,onChange:e=>E(e.target.value),placeholder:"e.g. Core Engineering",className:"input w-full text-sm",disabled:q,autoFocus:!0})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-[var(--muted-foreground)] mb-1.5",children:"Template"}),(0,t.jsx)(a.default,{options:K,value:b,onChange:function(e){j(e),P(null),R(null);let t=z.find(t=>t.id===e);if(t){if(E(t.name),t.variants?.length)return void S([]);Z(t.agents)}},placeholder:"Select a team template...",disabled:q})]}),et&&(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-[var(--muted-foreground)] mb-1.5",children:"Specialization"}),(0,t.jsx)(a.default,{options:Q,value:I,onChange:function(e){P(e),R(null);let t=X?.variants?.find(t=>t.id===e);t&&(E(t.name),Z(t.agents))},placeholder:"Select a specialization...",disabled:q})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-[var(--muted-foreground)] mb-1.5",children:"Default provider & model"}),(0,t.jsx)(x,{provider:M,model:D,onProviderChange:e=>A(e||""),onModelChange:T,disabled:q}),(0,t.jsx)("p",{className:"mt-1 text-[10px] text-[var(--muted-foreground)]",children:"Applies to all agents unless individually overridden."})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3 mb-2",children:[(0,t.jsxs)("label",{className:"block text-xs font-medium text-[var(--muted-foreground)]",children:["Agents (",N.length,")"]}),(0,t.jsxs)("button",{type:"button",onClick:()=>_("create"),disabled:q,className:"inline-flex items-center gap-1.5 rounded-xl border px-3 py-1.5 text-xs font-medium transition-colors hover:bg-[var(--muted)]/50 disabled:opacity-50 disabled:cursor-not-allowed",style:{borderColor:"var(--border)"},children:[(0,t.jsx)(m.Plus,{className:"w-3.5 h-3.5"}),"Add Agent"]})]}),en?(0,t.jsx)("div",{className:"space-y-2",children:N.map(e=>{let n=W.get(e.roleId);return(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3 rounded-xl px-3 py-3",style:{background:"var(--muted)",border:"1px solid var(--border)"},children:[(0,t.jsxs)("div",{className:"flex items-start gap-2.5 min-w-0",children:[(0,t.jsx)("div",{className:"mt-0.5 w-5 h-5 rounded-md flex items-center justify-center flex-shrink-0 bg-emerald-500/15",children:(0,t.jsx)(o.Check,{className:"w-3 h-3 text-emerald-400"})}),(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("div",{className:"text-sm font-medium truncate",children:e.name}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5 mt-1",children:[n&&(0,t.jsx)("span",{className:"text-[10px] px-1.5 py-0.5 rounded-full",style:{background:"var(--card-bg)",color:"var(--muted-foreground)"},children:n.name}),e.title&&(0,t.jsx)("span",{className:"text-xs text-[var(--muted-foreground)] truncate",children:e.title}),e.model&&e.model!==D&&(0,t.jsx)("span",{className:"text-[10px] px-1.5 py-0.5 rounded-full font-medium bg-violet-500/15 text-violet-400",children:"custom"}),(e.model||D)&&(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:e.model||D}),(e.skillBindings?.length??0)>0&&(0,t.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:[e.skillBindings?.length," skills"]})]})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[(0,t.jsx)("button",{type:"button",onClick:()=>_("edit",e),disabled:q,className:"p-1.5 rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--card-bg)] transition-colors",title:`Edit ${e.name}`,children:(0,t.jsx)(u.Pencil,{className:"w-3.5 h-3.5"})}),(0,t.jsx)("button",{type:"button",onClick:()=>{var t;return t=e.id,void S(e=>e.filter(e=>e.id!==t))},disabled:q,className:"p-1.5 rounded-lg text-[var(--muted-foreground)] hover:text-red-400 hover:bg-red-500/15 transition-colors",title:`Remove ${e.name}`,children:(0,t.jsx)(p.X,{className:"w-3.5 h-3.5"})})]})]},e.id)})}):(0,t.jsx)("div",{className:"rounded-xl px-4 py-5 text-sm text-[var(--muted-foreground)]",style:{background:"var(--muted)",border:"1px dashed var(--border)"},children:"Add your first agent using the full agent form, then assign its role from a preset."})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3 pt-4 border-t",style:{borderColor:"var(--border)"},children:[(0,t.jsx)("button",{onClick:()=>f.push(`/projects/${d}/teams`),disabled:q,className:"px-4 py-2 rounded-xl border hover:bg-[var(--muted)]/50 transition-colors text-sm",style:{borderColor:"var(--border)"},children:"Cancel"}),(0,t.jsx)("button",{onClick:ee,disabled:!C.trim()||!en||q,className:"btn-primary px-5 py-2 text-sm min-w-[120px] flex items-center justify-center gap-2",children:q?(0,t.jsx)(c.Loader2,{className:"w-4 h-4 animate-spin"}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(g.Users,{className:"w-4 h-4"}),"Create Team (",N.length,")"]})})]})]})}),O&&(0,t.jsx)(l.AgentForm,{title:"edit"===O.mode?"Edit agent":"Add agent",initial:O.initial,submitLabel:"edit"===O.mode?"Save":"Add",onSubmit:e=>(function(e){let t=e.roleId;if(!t||!W.has(t)||!O)return;let n={id:O.draftId??J(),roleId:t,name:e.name.trim(),title:e.title?.trim(),provider:e.provider,model:e.model.trim(),identity:e.identity.trim(),color:e.color,skills:e.skills??[],skillBindings:e.skillBindings??[]};S(e=>"edit"===O.mode&&O.draftId?e.map(e=>e.id===O.draftId?n:e):[...e,n]),$(null)})(e),onCancel:()=>$(null),roleOptions:H,onRolePresetChange:(e,t)=>{let n=W.get(e);return n?{...t,roleId:n.id,name:n.name,title:n.title,identity:n.identity,skills:[],skillBindings:k(n)}:t}},O.key)]})}])}]);