@mndrk/agx 1.4.64 → 2.0.0-next.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 (532) hide show
  1. package/README.md +2 -1
  2. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/BUILD_ID +1 -1
  3. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/app-build-manifest.json +391 -142
  4. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/app-path-routes-manifest.json +43 -16
  5. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/build-manifest.json +7 -7
  6. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/dynamic-css-manifest.json +1 -0
  7. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/prerender-manifest.json +57 -9
  8. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/required-server-files.json +2 -0
  9. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/routes-manifest.json +197 -0
  10. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found/page.js +3 -3
  11. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found/page.js.nft.json +1 -1
  12. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  13. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found.html +2 -2
  14. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found.rsc +6 -5
  15. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/audit/route.js +1 -1
  16. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/audit/route.js.nft.json +1 -1
  17. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/audit/route_client-reference-manifest.js +1 -1
  18. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/[...nextauth]/route.js.nft.json +1 -1
  19. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/[...nextauth]/route_client-reference-manifest.js +1 -1
  20. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/daemon-secret/route.js +1 -1
  21. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/daemon-secret/route.js.nft.json +1 -1
  22. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/daemon-secret/route_client-reference-manifest.js +1 -1
  23. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/device/code/route.js.nft.json +1 -1
  24. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/device/code/route_client-reference-manifest.js +1 -1
  25. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/device/token/route.js.nft.json +1 -1
  26. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/device/token/route_client-reference-manifest.js +1 -1
  27. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/refresh/route.js.nft.json +1 -1
  28. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/refresh/route_client-reference-manifest.js +1 -1
  29. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/status/route.js.nft.json +1 -1
  30. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  31. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/chat/history/route.js +28 -0
  32. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/chat/history/route.js.nft.json +1 -0
  33. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/chat/history/route_client-reference-manifest.js +1 -0
  34. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/chat/route.js +111 -0
  35. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/chat/route.js.nft.json +1 -0
  36. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/chat/route_client-reference-manifest.js +1 -0
  37. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/domains/[id]/route.js.nft.json +1 -1
  38. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/domains/[id]/route_client-reference-manifest.js +1 -1
  39. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/domains/route.js.nft.json +1 -1
  40. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/domains/route_client-reference-manifest.js +1 -1
  41. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/health/route.js.nft.json +1 -1
  42. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  43. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/learnings/route.js +1 -1
  44. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/learnings/route.js.nft.json +1 -1
  45. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/learnings/route_client-reference-manifest.js +1 -1
  46. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/logs/stream/route.js.nft.json +1 -1
  47. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/logs/stream/route_client-reference-manifest.js +1 -1
  48. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route.js.nft.json +1 -1
  49. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route_client-reference-manifest.js +1 -1
  50. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route.js.nft.json +1 -1
  51. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route_client-reference-manifest.js +1 -1
  52. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js +1 -1
  53. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js.nft.json +1 -1
  54. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/start/route_client-reference-manifest.js +1 -1
  55. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js +1 -1
  56. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js.nft.json +1 -1
  57. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/status/route_client-reference-manifest.js +1 -1
  58. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/migrate-v1/route.js +1 -0
  59. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/migrate-v1/route.js.nft.json +1 -0
  60. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/migrate-v1/route_client-reference-manifest.js +1 -0
  61. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/migrate-v2/route.js +1 -0
  62. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/migrate-v2/route.js.nft.json +1 -0
  63. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/migrate-v2/route_client-reference-manifest.js +1 -0
  64. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/route.js +1 -1
  65. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  66. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/route_client-reference-manifest.js +1 -1
  67. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/route.js +1 -1
  68. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/route.js.nft.json +1 -1
  69. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  70. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/providers/route.js +1 -1
  71. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/providers/route.js.nft.json +1 -1
  72. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/providers/route_client-reference-manifest.js +1 -1
  73. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/queue/complete/route.js +1 -1
  74. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/queue/complete/route.js.nft.json +1 -1
  75. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/queue/complete/route_client-reference-manifest.js +1 -1
  76. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/queue/route.js +1 -1
  77. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/queue/route.js.nft.json +1 -1
  78. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/queue/route_client-reference-manifest.js +1 -1
  79. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/stage-prompts/route.js +1 -1
  80. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/stage-prompts/route.js.nft.json +1 -1
  81. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/stage-prompts/route_client-reference-manifest.js +1 -1
  82. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js +1 -1
  83. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  84. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/comments/[commentId]/route_client-reference-manifest.js +1 -1
  85. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/comments/route.js +1 -1
  86. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  87. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/comments/route_client-reference-manifest.js +1 -1
  88. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/costs/route.js +1 -1
  89. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/costs/route.js.nft.json +1 -1
  90. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/costs/route_client-reference-manifest.js +1 -1
  91. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/dependencies/route.js +1 -1
  92. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/dependencies/route.js.nft.json +1 -1
  93. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/dependencies/route_client-reference-manifest.js +1 -1
  94. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/events/route.js +1 -0
  95. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -0
  96. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/events/route_client-reference-manifest.js +1 -0
  97. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/history/route.js +1 -0
  98. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -0
  99. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/history/route_client-reference-manifest.js +1 -0
  100. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/metrics/route.js +1 -0
  101. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -0
  102. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/metrics/route_client-reference-manifest.js +1 -0
  103. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/pause/route.js +1 -0
  104. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/pause/route.js.nft.json +1 -0
  105. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/pause/route_client-reference-manifest.js +1 -0
  106. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/replan/route.js +1 -0
  107. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -0
  108. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/replan/route_client-reference-manifest.js +1 -0
  109. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/restart/route.js +1 -0
  110. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -0
  111. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/restart/route_client-reference-manifest.js +1 -0
  112. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/resume/route.js +1 -0
  113. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -0
  114. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/resume/route_client-reference-manifest.js +1 -0
  115. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/rollback/route.js +1 -0
  116. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -0
  117. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/rollback/route_client-reference-manifest.js +1 -0
  118. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/route.js +1 -0
  119. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -0
  120. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/route_client-reference-manifest.js +1 -0
  121. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/start/route.js +1 -0
  122. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/start/route.js.nft.json +1 -0
  123. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/start/route_client-reference-manifest.js +1 -0
  124. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/stop/route.js +74 -0
  125. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/stop/route.js.nft.json +1 -0
  126. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/stop/route_client-reference-manifest.js +1 -0
  127. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/heartbeat/route.js.nft.json +1 -1
  128. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/heartbeat/route_client-reference-manifest.js +1 -1
  129. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/history/route.js +1 -1
  130. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/history/route.js.nft.json +1 -1
  131. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/history/route_client-reference-manifest.js +1 -1
  132. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/logs/route.js +74 -1
  133. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  134. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/logs/route_client-reference-manifest.js +1 -1
  135. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/logs/stream/route.js.nft.json +1 -1
  136. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/logs/stream/route_client-reference-manifest.js +1 -1
  137. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js +1 -0
  138. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -0
  139. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route_client-reference-manifest.js +1 -0
  140. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js +1 -0
  141. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -0
  142. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route_client-reference-manifest.js +1 -0
  143. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js +1 -0
  144. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -0
  145. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route_client-reference-manifest.js +1 -0
  146. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js +1 -0
  147. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -0
  148. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route_client-reference-manifest.js +1 -0
  149. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js +1 -0
  150. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -0
  151. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route_client-reference-manifest.js +1 -0
  152. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js +1 -0
  153. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -0
  154. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route_client-reference-manifest.js +1 -0
  155. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js +1 -0
  156. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -0
  157. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route_client-reference-manifest.js +1 -0
  158. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/restart-stage/route.js +1 -1
  159. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/restart-stage/route.js.nft.json +1 -1
  160. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/restart-stage/route_client-reference-manifest.js +1 -1
  161. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/route.js +4 -4
  162. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  163. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/route_client-reference-manifest.js +1 -1
  164. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/assign-orphans/route.js +1 -0
  165. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/assign-orphans/route.js.nft.json +1 -0
  166. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/assign-orphans/route_client-reference-manifest.js +1 -0
  167. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/route.js +1 -1
  168. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/route.js.nft.json +1 -1
  169. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/route_client-reference-manifest.js +1 -1
  170. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/stream/route.js.nft.json +1 -1
  171. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/stream/route_client-reference-manifest.js +1 -1
  172. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/user-settings/route.js +1 -1
  173. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/user-settings/route.js.nft.json +1 -1
  174. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/user-settings/route_client-reference-manifest.js +1 -1
  175. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/workflows/[id]/nodes/route.js +1 -1
  176. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/workflows/[id]/nodes/route.js.nft.json +1 -1
  177. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/workflows/[id]/nodes/route_client-reference-manifest.js +1 -1
  178. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/workflows/[id]/route.js +1 -1
  179. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/workflows/[id]/route.js.nft.json +1 -1
  180. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/workflows/[id]/route_client-reference-manifest.js +1 -1
  181. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/workflows/route.js +1 -1
  182. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/workflows/route.js.nft.json +1 -1
  183. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/workflows/route_client-reference-manifest.js +1 -1
  184. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/auth/callback/route.js.nft.json +1 -1
  185. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/auth/callback/route_client-reference-manifest.js +1 -1
  186. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/auth/device/page.js +5 -5
  187. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/auth/device/page.js.nft.json +1 -1
  188. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/auth/device/page_client-reference-manifest.js +1 -1
  189. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/auth/device.html +1 -1
  190. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/auth/device.rsc +7 -6
  191. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/dashboard/page.js +5 -10
  192. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/dashboard/page.js.nft.json +1 -1
  193. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/dashboard/page_client-reference-manifest.js +1 -1
  194. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/dashboard.html +2 -2
  195. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/dashboard.rsc +8 -6
  196. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph/page.js +17 -0
  197. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph/page.js.nft.json +1 -0
  198. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -0
  199. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph.html +13 -0
  200. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph.meta +7 -0
  201. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph.rsc +23 -0
  202. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/index.html +2 -2
  203. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/index.rsc +6 -5
  204. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/login/page.js +4 -4
  205. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/login/page.js.nft.json +1 -1
  206. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/login/page_client-reference-manifest.js +1 -1
  207. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/login.html +2 -2
  208. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/login.rsc +7 -6
  209. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/page.js +3 -3
  210. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/page.js.nft.json +1 -1
  211. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/page_client-reference-manifest.js +1 -1
  212. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/graph/[taskId]/page.js +2 -0
  213. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -0
  214. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -0
  215. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/page.js +3 -3
  216. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  217. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  218. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/tasks/[taskId]/page.js +2 -0
  219. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/tasks/[taskId]/page.js.nft.json +1 -0
  220. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/tasks/[taskId]/page_client-reference-manifest.js +1 -0
  221. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/tasks/page.js +2 -7
  222. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/tasks/page.js.nft.json +1 -1
  223. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/tasks/page_client-reference-manifest.js +1 -1
  224. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/workflow/page.js +2 -13
  225. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/workflow/page.js.nft.json +1 -1
  226. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/workflow/page_client-reference-manifest.js +1 -1
  227. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans/page.js +2 -0
  228. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans/page.js.nft.json +1 -0
  229. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -0
  230. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans.html +1 -0
  231. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans.meta +7 -0
  232. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans.rsc +24 -0
  233. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/page.js +3 -8
  234. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/page.js.nft.json +1 -1
  235. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  236. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects.html +2 -2
  237. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects.rsc +7 -6
  238. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings/page.js +2 -13
  239. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings/page.js.nft.json +1 -1
  240. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  241. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings.html +2 -2
  242. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings.rsc +7 -6
  243. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app-paths-manifest.json +43 -16
  244. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/1175.js +1 -0
  245. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/1891.js +1 -0
  246. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/{5611.js → 2341.js} +2 -2
  247. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/3009.js +9 -17
  248. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/359.js +91 -0
  249. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/4183.js +1 -0
  250. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/4483.js +145 -0
  251. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/4684.js +53 -0
  252. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/5047.js +1 -0
  253. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/5336.js +3 -0
  254. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/5873.js +1 -1
  255. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/5998.js +1 -0
  256. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/6317.js +3 -3
  257. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/7143.js +1 -1
  258. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/7552.js +74 -0
  259. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/7625.js +12 -0
  260. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/8100.js +17 -0
  261. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/8521.js +1 -1
  262. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/8879.js +11 -0
  263. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/9218.js +74 -0
  264. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/9764.js +37 -0
  265. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/9933.js +2 -0
  266. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/dynamic-css-manifest.js +1 -0
  267. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/functions-config-manifest.json +4 -2
  268. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/instrumentation.js +1 -1
  269. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/middleware-build-manifest.js +1 -1
  270. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/middleware-manifest.json +5 -5
  271. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/middleware.js +1 -1
  272. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages/404.html +1 -1
  273. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages/_app.js +1 -1
  274. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages/_app.js.nft.json +1 -1
  275. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages/_document.js +1 -1
  276. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages/_document.js.nft.json +1 -1
  277. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages/_error.js +3 -3
  278. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages/_error.js.nft.json +1 -1
  279. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages-manifest.json +1 -1
  280. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/server-reference-manifest.js +1 -1
  281. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/server-reference-manifest.json +1 -1
  282. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/1560-c96304e8b5b09982.js +49 -0
  283. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/1a258343-bcfff2df53db439e.js +1 -0
  284. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/3634-903008664601478e.js +1 -0
  285. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/4380-34fd8d852553a877.js +1 -0
  286. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/5182-23ff4470a8cd697e.js +1 -0
  287. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/5962-e45590f9f1f0fb6a.js +1 -0
  288. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/6488-dc0cbab539e14b14.js +1 -0
  289. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/7329-81a6c7ab69ca4a52.js +1 -0
  290. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/9092-1eed225ca8c0f4b5.js +13 -0
  291. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/9337-41c7297232fc7095.js +1 -0
  292. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/968-bbc30100546b7647.js +1 -0
  293. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/9855-e3fbd51dd373e0c5.js +3 -0
  294. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/audit/route-4146f5e9f52467cf.js +1 -0
  295. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/auth/[...nextauth]/route-4146f5e9f52467cf.js +1 -0
  296. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/auth/daemon-secret/route-4146f5e9f52467cf.js +1 -0
  297. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/auth/device/code/route-4146f5e9f52467cf.js +1 -0
  298. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/auth/device/token/route-4146f5e9f52467cf.js +1 -0
  299. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/auth/refresh/route-4146f5e9f52467cf.js +1 -0
  300. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/auth/status/route-4146f5e9f52467cf.js +1 -0
  301. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/chat/history/route-4146f5e9f52467cf.js +1 -0
  302. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/chat/route-4146f5e9f52467cf.js +1 -0
  303. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/domains/[id]/route-4146f5e9f52467cf.js +1 -0
  304. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/domains/route-4146f5e9f52467cf.js +1 -0
  305. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/health/route-4146f5e9f52467cf.js +1 -0
  306. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/learnings/route-4146f5e9f52467cf.js +1 -0
  307. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/logs/stream/route-4146f5e9f52467cf.js +1 -0
  308. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/orchestrator/tasks/[taskId]/cancel/route-4146f5e9f52467cf.js +1 -0
  309. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/orchestrator/tasks/[taskId]/signal/route-4146f5e9f52467cf.js +1 -0
  310. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/orchestrator/tasks/[taskId]/start/route-4146f5e9f52467cf.js +1 -0
  311. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/orchestrator/tasks/[taskId]/status/route-4146f5e9f52467cf.js +1 -0
  312. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/projects/[id]/migrate-v1/route-4146f5e9f52467cf.js +1 -0
  313. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/projects/[id]/migrate-v2/route-4146f5e9f52467cf.js +1 -0
  314. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/projects/[id]/route-4146f5e9f52467cf.js +1 -0
  315. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/projects/route-4146f5e9f52467cf.js +1 -0
  316. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/providers/route-4146f5e9f52467cf.js +1 -0
  317. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/queue/complete/route-4146f5e9f52467cf.js +1 -0
  318. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/queue/route-4146f5e9f52467cf.js +1 -0
  319. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/stage-prompts/route-4146f5e9f52467cf.js +1 -0
  320. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/comments/[commentId]/route-4146f5e9f52467cf.js +1 -0
  321. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/comments/route-4146f5e9f52467cf.js +1 -0
  322. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/costs/route-4146f5e9f52467cf.js +1 -0
  323. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/dependencies/route-4146f5e9f52467cf.js +1 -0
  324. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/graph/events/route-4146f5e9f52467cf.js +1 -0
  325. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/graph/history/route-4146f5e9f52467cf.js +1 -0
  326. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/graph/metrics/route-4146f5e9f52467cf.js +1 -0
  327. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/graph/pause/route-4146f5e9f52467cf.js +1 -0
  328. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/graph/replan/route-4146f5e9f52467cf.js +1 -0
  329. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/graph/restart/route-4146f5e9f52467cf.js +1 -0
  330. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/graph/resume/route-4146f5e9f52467cf.js +1 -0
  331. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/graph/rollback/route-4146f5e9f52467cf.js +1 -0
  332. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/graph/route-4146f5e9f52467cf.js +1 -0
  333. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/graph/start/route-4146f5e9f52467cf.js +1 -0
  334. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/graph/stop/route-4146f5e9f52467cf.js +1 -0
  335. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/heartbeat/route-4146f5e9f52467cf.js +1 -0
  336. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/history/route-4146f5e9f52467cf.js +1 -0
  337. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/logs/route-4146f5e9f52467cf.js +1 -0
  338. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/logs/stream/route-4146f5e9f52467cf.js +1 -0
  339. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/nodes/[nodeId]/comments/route-4146f5e9f52467cf.js +1 -0
  340. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/nodes/[nodeId]/complete/route-4146f5e9f52467cf.js +1 -0
  341. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/nodes/[nodeId]/fail/route-4146f5e9f52467cf.js +1 -0
  342. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/nodes/[nodeId]/resume/route-4146f5e9f52467cf.js +1 -0
  343. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/nodes/[nodeId]/start/route-4146f5e9f52467cf.js +1 -0
  344. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/nodes/[nodeId]/stop/route-4146f5e9f52467cf.js +1 -0
  345. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/nodes/[nodeId]/verify/route-4146f5e9f52467cf.js +1 -0
  346. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/restart-stage/route-4146f5e9f52467cf.js +1 -0
  347. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/route-4146f5e9f52467cf.js +1 -0
  348. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/assign-orphans/route-4146f5e9f52467cf.js +1 -0
  349. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/route-4146f5e9f52467cf.js +1 -0
  350. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/stream/route-4146f5e9f52467cf.js +1 -0
  351. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/user-settings/route-4146f5e9f52467cf.js +1 -0
  352. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/workflows/[id]/nodes/route-4146f5e9f52467cf.js +1 -0
  353. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/workflows/[id]/route-4146f5e9f52467cf.js +1 -0
  354. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/workflows/route-4146f5e9f52467cf.js +1 -0
  355. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/auth/callback/route-4146f5e9f52467cf.js +1 -0
  356. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/auth/device/page-360e0d9743267f83.js +1 -0
  357. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/dashboard/page-9fc2f72aa263afbf.js +1 -0
  358. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/execution-graph/page-3d2f92c9f3a9c32b.js +1 -0
  359. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/layout-b1371d0718b61729.js +1 -0
  360. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/login/page-cc727e6121024adf.js +1 -0
  361. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/[slug]/graph/[taskId]/page-35e701dd9d03607a.js +1 -0
  362. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/[slug]/layout-3497c64539d1d0d6.js +1 -0
  363. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/[slug]/page-7c440360390120d2.js +1 -0
  364. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/[slug]/tasks/[taskId]/page-b5a1aca4ff048270.js +1 -0
  365. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/[slug]/tasks/page-d324777fc0d2b28e.js +1 -0
  366. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/[slug]/workflow/page-d944b3d435e6c096.js +1 -0
  367. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/orphans/page-f2d9a658ebd59e25.js +1 -0
  368. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/page-cfa09df7a60e3c9e.js +1 -0
  369. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/settings/page-5d8b5e8b4a41e553.js +1 -0
  370. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/ba12c10f-bf8f81460a1e4961.js +1 -0
  371. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/pages/_app-d4c3a651e078ce62.js +1 -0
  372. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/pages/_error-645f0cf542a3bcc5.js +1 -0
  373. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/{webpack-d282787ed3063711.js → webpack-ba6fd5b47c63daed.js} +1 -1
  374. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/css/599369d853c61df7.css +31 -0
  375. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/css/cecf148132e1eabb.css +1 -0
  376. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/css/fa5c997ce0e64112.css +1 -0
  377. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/ouqRjDQF23L-SLuiHJHB7/_buildManifest.js +1 -0
  378. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/api/context.js +81 -0
  379. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/api/diag.js +93 -0
  380. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/api/metrics.js +61 -0
  381. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/api/propagation.js +89 -0
  382. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/api/trace.js +79 -0
  383. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js +63 -0
  384. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js +55 -0
  385. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js +23 -0
  386. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/baggage/utils.js +51 -0
  387. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js +38 -0
  388. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/context/context.js +55 -0
  389. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/context-api.js +24 -0
  390. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js +59 -0
  391. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js +57 -0
  392. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js +45 -0
  393. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/diag/types.js +44 -0
  394. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/diag-api.js +29 -0
  395. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/index.js +81 -0
  396. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/internal/global-utils.js +64 -0
  397. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/internal/semver.js +122 -0
  398. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/metrics/Metric.js +25 -0
  399. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js +127 -0
  400. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js +31 -0
  401. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/metrics-api.js +24 -0
  402. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/platform/index.js +29 -0
  403. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js +22 -0
  404. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/platform/node/index.js +29 -0
  405. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js +34 -0
  406. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js +41 -0
  407. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/propagation-api.js +24 -0
  408. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js +69 -0
  409. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js +75 -0
  410. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js +32 -0
  411. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js +55 -0
  412. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js +54 -0
  413. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js +42 -0
  414. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/context-utils.js +82 -0
  415. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js +103 -0
  416. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js +46 -0
  417. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js +24 -0
  418. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js +27 -0
  419. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/span_kind.js +46 -0
  420. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js +49 -0
  421. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/status.js +23 -0
  422. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js +26 -0
  423. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/trace-api.js +24 -0
  424. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/build/src/version.js +21 -0
  425. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/@opentelemetry/api/package.json +113 -0
  426. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/package.json +17 -1
  427. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/pages/_app.tsx +5 -0
  428. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/pages/_document.tsx +13 -0
  429. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/scripts/migrate-v1-to-v2.ts +34 -0
  430. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/worker/index.js +104 -20
  431. package/lib/cli/chat/index.js +203 -0
  432. package/lib/cli/cloud/aggregate.js +4 -0
  433. package/lib/cli/cloud/command.js +3 -0
  434. package/lib/cli/cloud/executeGraphV2.js +1791 -0
  435. package/lib/cli/cloud/executeVerifySingle.js +5 -1
  436. package/lib/cli/cloud/executeVerifySwarm.js +5 -1
  437. package/lib/cli/cloud/index.js +6 -0
  438. package/lib/cli/cloud/iterations.js +56 -1
  439. package/lib/cli/cloud/persist.js +1 -2
  440. package/lib/cli/cloud/prompts.js +9 -3
  441. package/lib/cli/cloud/taskLogger.js +37 -28
  442. package/lib/cli/cloudArtifacts.js +29 -12
  443. package/lib/cli/configStore.js +15 -4
  444. package/lib/cli/daemon.js +98 -25
  445. package/lib/cli/interactiveMenu.js +8 -15
  446. package/lib/cli/runCli.js +732 -71
  447. package/lib/cli/v2TaskRouting.js +82 -0
  448. package/lib/cloud/status.js +12 -6
  449. package/lib/cloud-sync.js +267 -0
  450. package/lib/commands/chat.js +95 -0
  451. package/lib/commands/daemonBoard.js +132 -0
  452. package/lib/executor.js +334 -9
  453. package/lib/graph/constants.js +25 -0
  454. package/lib/graph/scheduler.js +137 -0
  455. package/lib/graph/types.js +24 -0
  456. package/lib/prompts/cloudTask.js +12 -6
  457. package/lib/prompts/resume.js +353 -0
  458. package/lib/prompts/templates.js +27 -11
  459. package/lib/stage-requirements.js +2 -2
  460. package/lib/storage/checkpoints.js +222 -0
  461. package/lib/storage/git.js +147 -0
  462. package/lib/storage/graph.js +80 -0
  463. package/lib/storage/index.js +12 -0
  464. package/lib/storage/paths.js +11 -0
  465. package/lib/storage/state.js +2 -0
  466. package/lib/verify-gate.js +301 -0
  467. package/package.json +16 -2
  468. package/templates/stack/postgres/init/001_agx_board_schema.sql +122 -2
  469. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/6158.js +0 -19
  470. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/8666.js +0 -23
  471. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/9159.js +0 -93
  472. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages/500.html +0 -1
  473. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/FYPvFkL9PvoVJhHnr9Upx/_buildManifest.js +0 -1
  474. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/5608-674cd57e975c9b36.js +0 -1
  475. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/650-38439e55899ae2bf.js +0 -15
  476. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/8960-720130c8c9bf5b1c.js +0 -1
  477. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/9337-f4cb4820efca03a1.js +0 -1
  478. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/audit/route-bee7977512f30f17.js +0 -1
  479. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/auth/[...nextauth]/route-bee7977512f30f17.js +0 -1
  480. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/auth/daemon-secret/route-bee7977512f30f17.js +0 -1
  481. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/auth/device/code/route-bee7977512f30f17.js +0 -1
  482. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/auth/device/token/route-bee7977512f30f17.js +0 -1
  483. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/auth/refresh/route-bee7977512f30f17.js +0 -1
  484. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/auth/status/route-bee7977512f30f17.js +0 -1
  485. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/domains/[id]/route-bee7977512f30f17.js +0 -1
  486. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/domains/route-bee7977512f30f17.js +0 -1
  487. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/health/route-bee7977512f30f17.js +0 -1
  488. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/learnings/route-bee7977512f30f17.js +0 -1
  489. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/logs/stream/route-bee7977512f30f17.js +0 -1
  490. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/orchestrator/tasks/[taskId]/cancel/route-bee7977512f30f17.js +0 -1
  491. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/orchestrator/tasks/[taskId]/signal/route-bee7977512f30f17.js +0 -1
  492. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/orchestrator/tasks/[taskId]/start/route-bee7977512f30f17.js +0 -1
  493. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/orchestrator/tasks/[taskId]/status/route-bee7977512f30f17.js +0 -1
  494. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/projects/[id]/route-bee7977512f30f17.js +0 -1
  495. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/projects/route-bee7977512f30f17.js +0 -1
  496. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/providers/route-bee7977512f30f17.js +0 -1
  497. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/queue/complete/route-bee7977512f30f17.js +0 -1
  498. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/queue/route-bee7977512f30f17.js +0 -1
  499. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/stage-prompts/route-bee7977512f30f17.js +0 -1
  500. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/comments/[commentId]/route-bee7977512f30f17.js +0 -1
  501. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/comments/route-bee7977512f30f17.js +0 -1
  502. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/costs/route-bee7977512f30f17.js +0 -1
  503. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/dependencies/route-bee7977512f30f17.js +0 -1
  504. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/heartbeat/route-bee7977512f30f17.js +0 -1
  505. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/history/route-bee7977512f30f17.js +0 -1
  506. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/logs/route-bee7977512f30f17.js +0 -1
  507. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/logs/stream/route-bee7977512f30f17.js +0 -1
  508. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/restart-stage/route-bee7977512f30f17.js +0 -1
  509. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/[id]/route-bee7977512f30f17.js +0 -1
  510. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/route-bee7977512f30f17.js +0 -1
  511. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/tasks/stream/route-bee7977512f30f17.js +0 -1
  512. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/user-settings/route-bee7977512f30f17.js +0 -1
  513. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/workflows/[id]/nodes/route-bee7977512f30f17.js +0 -1
  514. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/workflows/[id]/route-bee7977512f30f17.js +0 -1
  515. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/api/workflows/route-bee7977512f30f17.js +0 -1
  516. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/auth/callback/route-bee7977512f30f17.js +0 -1
  517. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/auth/device/page-bd5f443ef9da0c0a.js +0 -1
  518. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/dashboard/page-6140206ded1cc4ae.js +0 -1
  519. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/layout-6b46da9e6091abb3.js +0 -1
  520. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/login/page-8172fa023b259e7e.js +0 -1
  521. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/[slug]/layout-11d4290500b37271.js +0 -1
  522. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/[slug]/page-d097a2c0e0fc17cf.js +0 -1
  523. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/[slug]/tasks/page-444e63f0464b1d40.js +0 -1
  524. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/[slug]/workflow/page-9ccbd3d9db1bcef8.js +0 -1
  525. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/projects/page-6c545e9e5f5f66bc.js +0 -1
  526. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/settings/page-749ebaf650848f08.js +0 -1
  527. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/pages/_app-6c8c2371b16a04b8.js +0 -1
  528. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/pages/_error-94812ad32cad7365.js +0 -1
  529. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/css/ea93fda1b0bdd3b9.css +0 -1
  530. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/next/dist/pages/_app.js +0 -42
  531. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/node_modules/next/dist/pages/_document.js +0 -834
  532. /package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/{FYPvFkL9PvoVJhHnr9Upx → ouqRjDQF23L-SLuiHJHB7}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5182],{63:(e,t,s)=>{var n=s(7260);s.o(n,"usePathname")&&s.d(t,{usePathname:function(){return n.usePathname}}),s.o(n,"useRouter")&&s.d(t,{useRouter:function(){return n.useRouter}}),s.o(n,"useSearchParams")&&s.d(t,{useSearchParams:function(){return n.useSearchParams}})},1152:(e,t,s)=>{s.d(t,{A:()=>c});var n=s(5155),a=s(2115),r=s(8251),i=s(4767),l=s(2460);function o(e){if(!e)return"N/A";let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function c(e){let{graph:t,onNodeTrigger:s,showLogsButton:l=!0,onShowLogs:c}=e,h=(0,i.rO)(e=>e.selectedNodeId),m=(0,i.rO)(e=>e.triggeringNodeId),x=(0,i.rO)(e=>e.setSelectedNodeId),[j,v]=(0,a.useState)(!1),g=(0,a.useRef)(null),f=(0,a.useCallback)(e=>{e.preventDefault(),v(!0)},[]);if((0,a.useEffect)(()=>{if(!j)return;let e=e=>{if(!g.current)return;let t=Math.max(280,Math.min(700,g.current.getBoundingClientRect().right-e.clientX));g.current.style.width="".concat(t,"px")},t=()=>v(!1);return document.addEventListener("mousemove",e),document.addEventListener("mouseup",t),document.body.style.cursor="col-resize",document.body.style.userSelect="none",()=>{document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",t),document.body.style.cursor="",document.body.style.userSelect=""}},[j]),!h||!t.nodes[h])return(0,n.jsxs)("aside",{ref:g,className:"graph-panel-card node-inspector node-inspector--resizable",children:[(0,n.jsx)("div",{className:"node-inspector__resize-handle",onMouseDown:f}),(0,n.jsx)("div",{className:"graph-panel-card__title",children:"Node Inspector"}),(0,n.jsx)("p",{className:"graph-panel-card__empty",children:"Select a node in the graph to inspect details."})]});let N=t.nodes[h],_=(0,i.eh)(h,t),y="blocked"===_?"start":_,b="blocked"===_?"Run Node":function(e,t){switch(e){case"start":return"Start Node";case"resume":return"Resume Node";case"retry":return"stopped"===t||"done"===t?"Re-run Node":"Retry Node";default:return null}}(y,N.status),k=m===h,w="work"===N.type&&"running"===N.status,C=async()=>{"none"!==y&&s&&await s(h,y)},S=async()=>{s&&await s(h,"stop")};return(0,n.jsxs)("aside",{ref:g,className:"graph-panel-card node-inspector node-inspector--resizable",children:[(0,n.jsx)("div",{className:"node-inspector__resize-handle",onMouseDown:f}),(0,n.jsxs)("div",{className:"graph-panel-card__row",children:[(0,n.jsx)("div",{className:"graph-panel-card__title",children:"Node Inspector"}),(0,n.jsx)("button",{type:"button",className:"graph-link-button",onClick:()=>x(null),children:"Clear"})]}),(0,n.jsxs)("div",{className:"node-inspector__headline",children:[(0,n.jsx)("div",{className:"node-inspector__name",children:(0,r.v0)(h,N)}),(0,n.jsxs)("div",{className:"node-inspector__badges",children:[(0,n.jsx)("span",{className:"node-inspector__pill",children:N.type}),"root"===N.type&&(0,n.jsx)("span",{className:"node-inspector__pill node-inspector__pill--root",children:"root"})]})]}),(0,n.jsxs)("div",{className:"node-inspector__grid",children:[(0,n.jsx)("span",{children:"Status"}),(0,n.jsx)("strong",{className:"node-inspector__status node-inspector__status--".concat(N.status),children:(0,r.yd)(N.status)}),(0,n.jsx)("span",{children:"Node ID"}),(0,n.jsx)("code",{children:h}),(0,n.jsx)("span",{children:"Dependencies"}),(0,n.jsx)("strong",{children:N.deps.length}),(0,n.jsx)("span",{children:"Started"}),(0,n.jsx)("strong",{children:o(N.startedAt)}),(0,n.jsx)("span",{children:"Completed"}),(0,n.jsx)("strong",{children:o(N.completedAt)}),N.startedAt&&N.completedAt&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{children:"Duration"}),(0,n.jsx)("strong",{children:function(e,t){if(!e||!t)return"N/A";let s=new Date(e).getTime(),n=new Date(t).getTime();if(Number.isNaN(s)||Number.isNaN(n))return"N/A";let a=Math.floor((n-s)/1e3),r=Math.floor(a/60),i=Math.floor(r/60);return i>0?"".concat(i,"h ").concat(r%60,"m"):r>0?"".concat(r,"m ").concat(a%60,"s"):"".concat(a,"s")}(N.startedAt,N.completedAt)})]})]}),"root"===N.type&&(0,n.jsx)(d,{node:N}),"work"===N.type&&(0,n.jsx)(u,{node:N,showLogsButton:l,onShowLogs:()=>null==c?void 0:c(h)}),"gate"===N.type&&(0,n.jsx)(p,{node:N}),"conditional"===N.type&&(0,n.jsxs)("div",{className:"node-inspector__section",children:[(0,n.jsx)("h4",{children:"Condition"}),(0,n.jsx)("p",{children:N.condition.expression})]}),s&&(b||w)&&(0,n.jsxs)("div",{className:"node-inspector__actions",children:[b&&(0,n.jsx)("button",{type:"button",onClick:C,disabled:k,className:"btn btn-primary w-full",children:k?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"spinner w-4 h-4"}),"Processing..."]}):b}),w&&(0,n.jsx)("button",{type:"button",onClick:S,disabled:k,className:"btn btn-destructive w-full mt-2",children:k?"Processing...":"Stop Node"})]})]})}function d(e){let{node:t}=e,s=(0,l.E)(t.objective,t.title);return(0,n.jsxs)("div",{className:"node-inspector__section",children:[(0,n.jsx)("h4",{children:"Task Objective"}),(0,n.jsx)("p",{className:"node-inspector__objective",children:s||"No objective defined."}),t.criteria&&t.criteria.length>0&&(0,n.jsxs)("div",{className:"node-inspector__criteria",children:[(0,n.jsx)("h5",{children:"Success Criteria"}),(0,n.jsx)("ul",{children:t.criteria.map((e,t)=>(0,n.jsxs)("li",{children:[(0,n.jsx)("span",{className:"node-inspector__criterion-bullet",children:"•"}),e]},t))})]}),t.planVersions&&t.planVersions.length>0&&(0,n.jsxs)("div",{className:"node-inspector__versions",children:[(0,n.jsx)("h5",{children:"Plan Versions"}),(0,n.jsx)("div",{className:"flex flex-wrap gap-1",children:t.planVersions.map(e=>(0,n.jsxs)("span",{className:"node-inspector__version-badge",children:["v",e]},e))})]})]})}function u(e){let{node:t,showLogsButton:s,onShowLogs:r}=e,[i,l]=(0,a.useState)({});return(0,n.jsxs)("div",{className:"node-inspector__section",children:[(0,n.jsx)("h4",{children:"Work Node"}),(0,n.jsx)("p",{children:t.description||"No description provided."}),(0,n.jsxs)("div",{className:"node-inspector__grid",children:[t.workType&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{children:"Work Type"}),(0,n.jsx)("strong",{children:t.workType})]}),(0,n.jsx)("span",{children:"Attempts"}),(0,n.jsxs)("strong",{children:[t.attempts," / ",t.maxAttempts]}),(0,n.jsx)("span",{children:"Retry Policy"}),(0,n.jsx)("strong",{children:t.retryPolicy.onExhaust}),void 0!==t.estimateMinutes&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{children:"Estimate"}),(0,n.jsxs)("strong",{children:[t.estimateMinutes,"m"]})]}),void 0!==t.actualMinutes&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{children:"Actual"}),(0,n.jsxs)("strong",{children:[t.actualMinutes,"m"]})]})]}),Array.isArray(t.where)&&t.where.length>0&&(0,n.jsx)(h,{title:"Where",items:t.where}),Array.isArray(t.whatChanges)&&t.whatChanges.length>0&&(0,n.jsx)(h,{title:"What Changes",items:t.whatChanges}),Array.isArray(t.acceptanceCriteria)&&t.acceptanceCriteria.length>0&&(0,n.jsx)(h,{title:"Acceptance Criteria",items:t.acceptanceCriteria}),Array.isArray(t.todos)&&t.todos.length>0&&(0,n.jsx)(h,{title:"To Dos",items:t.todos}),Array.isArray(t.verification)&&t.verification.length>0&&(0,n.jsx)(h,{title:"Verification",items:t.verification}),s&&(0,n.jsxs)("button",{type:"button",onClick:r,className:"btn btn-secondary btn-sm mt-3 w-full",children:[(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 10h16M4 14h16M4 18h16"})}),"View Logs"]}),t.output&&Object.keys(t.output).length>0&&(0,n.jsx)(x,{data:function(e){let t=Object.keys(e);if(1===t.length&&"string"==typeof e[t[0]])try{let s=JSON.parse(e[t[0]]);if(s&&"object"==typeof s&&!Array.isArray(s))return s}catch(e){}return e}(t.output),expandedSections:i,toggle:e=>l(t=>({...t,[e]:!t[e]}))})]})}function h(e){let{title:t,items:s}=e;return(0,n.jsxs)("div",{className:"node-inspector__checks-list mt-3",children:[(0,n.jsx)("h5",{children:t}),(0,n.jsx)("ul",{children:s.map((e,s)=>(0,n.jsxs)("li",{children:[(0,n.jsx)("span",{className:"check-icon",children:"•"}),(0,n.jsx)("span",{children:e})]},"".concat(t,"-").concat(s)))})]})}function p(e){var t,s;let{node:a}=e;return(0,n.jsxs)("div",{className:"node-inspector__section",children:[(0,n.jsx)("h4",{children:"Gate"}),(0,n.jsxs)("div",{className:"node-inspector__grid",children:[(0,n.jsx)("span",{children:"Gate Type"}),(0,n.jsx)("strong",{children:a.gateType}),(0,n.jsx)("span",{children:"Required"}),(0,n.jsx)("strong",{children:a.required?"Yes":"No"}),(0,n.jsx)("span",{children:"Strategy"}),(0,n.jsx)("strong",{children:a.verificationStrategy.type})]}),a.verificationStrategy.checks&&a.verificationStrategy.checks.length>0&&(0,n.jsxs)("div",{className:"node-inspector__checks-list",children:[(0,n.jsx)("h5",{children:"Checks"}),(0,n.jsx)("ul",{children:a.verificationStrategy.checks.map((e,t)=>{var s,r;let i=null==(r=a.verificationResult)||null==(s=r.checks)?void 0:s.find(t=>t.check===e);return(0,n.jsxs)("li",{className:i?i.passed?"check--passed":"check--failed":"",children:[(0,n.jsx)("span",{className:"check-icon",children:i?i.passed?"✓":"✗":"○"}),(0,n.jsx)("span",{children:e})]},t)})})]}),(null==(s=a.verificationResult)||null==(t=s.checks)?void 0:t.length)?(0,n.jsx)("ul",{className:"node-inspector__checks",children:a.verificationResult.checks.map((e,t)=>(0,n.jsxs)("li",{children:[(0,n.jsx)("span",{className:e.passed?"text-green-600":"text-red-600",children:e.passed?"PASS":"FAIL"}),(0,n.jsx)("span",{children:e.check}),e.message&&(0,n.jsx)("span",{className:"text-[var(--muted-foreground)]",children:e.message})]},"".concat(e.check,"-").concat(t)))}):null]})}let m=["done","decision","analysis","explanation","next_step","question","final_result","summary","plan_md","implementation_summary_md","verification_md","next_prompt"];function x(e){let{data:t,expandedSections:s,toggle:a}=e,r=[],i=[];for(let[e,s]of Object.entries(t))m.includes(e)?r.push([e,s]):i.push([e,s]);r.sort((e,t)=>m.indexOf(e[0])-m.indexOf(t[0]));let l=[...r,...i];return(0,n.jsxs)("div",{className:"mt-3 space-y-2",children:[(0,n.jsx)("h4",{className:"text-[10px] font-semibold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Output"}),l.map(e=>{var t;let[r,i]=e;return(0,n.jsx)(j,{fieldKey:r,value:i,expanded:null!=(t=s[r])&&t,onToggle:()=>a(r)},r)})]})}function j(e){let{fieldKey:t,value:s,expanded:a,onToggle:r}=e,i=t.replace(/_/g," ").replace(/\bmd\b/g,"").trim();if("boolean"==typeof s)return(0,n.jsxs)("div",{className:"flex items-center justify-between py-1",children:[(0,n.jsx)("span",{className:"text-xs text-[var(--muted-foreground)] capitalize",children:i}),(0,n.jsx)("span",{className:"text-[10px] font-bold uppercase px-1.5 py-0.5 rounded ".concat(s?"bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-400":"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400"),children:s?"yes":"no"})]});if("string"==typeof s&&s.length<80&&!s.includes("\n"))return(0,n.jsxs)("div",{className:"flex items-start justify-between gap-2 py-1",children:[(0,n.jsx)("span",{className:"text-xs text-[var(--muted-foreground)] capitalize flex-shrink-0",children:i}),(0,n.jsx)("span",{className:"text-xs font-medium text-right",children:s||(0,n.jsx)("em",{className:"text-[var(--muted-foreground)]",children:"empty"})})]});if("string"==typeof s){let e=t.endsWith("_md"),l=s.slice(0,120).replace(/\n/g," ");return(0,n.jsxs)("div",{className:"border border-[var(--card-border)] rounded-md overflow-hidden",children:[(0,n.jsxs)("button",{type:"button",onClick:r,className:"w-full flex items-center justify-between px-2.5 py-1.5 text-left hover:bg-[var(--muted)]/30 transition-colors",children:[(0,n.jsx)("span",{className:"text-xs text-[var(--muted-foreground)] capitalize",children:i}),(0,n.jsx)("svg",{className:"w-3 h-3 text-[var(--muted-foreground)] transition-transform ".concat(a?"":"-rotate-90"),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]}),a?(0,n.jsx)("div",{className:"px-2.5 pb-2.5 text-xs leading-relaxed ".concat(e?"whitespace-pre-wrap":""),children:e?(0,n.jsx)(v,{content:s}):(0,n.jsx)("p",{className:"whitespace-pre-wrap break-words",children:s})}):(0,n.jsxs)("p",{className:"px-2.5 pb-2 text-[11px] text-[var(--muted-foreground)] truncate",children:[l,"..."]})]})}if("object"==typeof s&&null!==s){let e=JSON.stringify(s,null,2);return(0,n.jsxs)("div",{className:"border border-[var(--card-border)] rounded-md overflow-hidden",children:[(0,n.jsxs)("button",{type:"button",onClick:r,className:"w-full flex items-center justify-between px-2.5 py-1.5 text-left hover:bg-[var(--muted)]/30 transition-colors",children:[(0,n.jsx)("span",{className:"text-xs text-[var(--muted-foreground)] capitalize",children:i}),(0,n.jsx)("svg",{className:"w-3 h-3 text-[var(--muted-foreground)] transition-transform ".concat(a?"":"-rotate-90"),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]}),a&&(0,n.jsx)("pre",{className:"px-2.5 pb-2.5 text-[11px] font-mono overflow-x-auto whitespace-pre-wrap break-words",children:e})]})}return(0,n.jsxs)("div",{className:"flex items-center justify-between py-1",children:[(0,n.jsx)("span",{className:"text-xs text-[var(--muted-foreground)] capitalize",children:i}),(0,n.jsx)("span",{className:"text-xs font-mono",children:String(s)})]})}function v(e){let{content:t}=e,s=t.split("\n");return(0,n.jsx)("div",{className:"space-y-1",children:s.map((e,t)=>{let s=e.trimStart(),a=s.match(/^-\s*\[(x| )\]\s*(.*)$/i);if(a){let e="x"===a[1].toLowerCase();return(0,n.jsxs)("div",{className:"flex items-start gap-1.5",children:[(0,n.jsx)("span",{className:"flex-shrink-0 mt-0.5 ".concat(e?"text-green-600":"text-[var(--muted-foreground)]"),children:e?(0,n.jsx)("svg",{className:"w-3.5 h-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2.5,children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M5 13l4 4L19 7"})}):(0,n.jsx)("svg",{className:"w-3.5 h-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:(0,n.jsx)("rect",{x:"3",y:"3",width:"18",height:"18",rx:"3"})})}),(0,n.jsx)("span",{className:e?"line-through text-[var(--muted-foreground)]":"",children:a[2]})]},t)}return s.startsWith("- ")?(0,n.jsxs)("div",{className:"flex items-start gap-1.5",children:[(0,n.jsx)("span",{className:"flex-shrink-0 mt-1 w-1 h-1 rounded-full bg-current opacity-40"}),(0,n.jsx)("span",{children:s.slice(2)})]},t):s?(0,n.jsx)("div",{children:e},t):(0,n.jsx)("div",{className:"h-1"},t)})})}},2731:(e,t,s)=>{s.d(t,{A:()=>i});var n=s(5155),a=s(2115),r=s(4767);function i(e){let{graph:t}=e,s=(0,r.rO)(e=>e.openComparison),i=(0,a.useMemo)(()=>t.versionHistory.map((e,s)=>{let n="replan"===e.eventType?e.toVersion:Math.max(2,t.graphVersion-(t.versionHistory.length-s-1));return"replan"===e.eventType?{version:n,fromVersion:e.fromVersion,eventType:"replan",timestamp:e.timestamp,reason:e.reason,triggeredBy:e.triggeredBy,checkpoint:e.triggeredAtNodeId}:{version:n,fromVersion:Math.max(1,n-1),eventType:"rollback",timestamp:e.timestamp,reason:e.reason,triggeredBy:e.triggeredBy,checkpoint:e.toCheckpoint}}),[t]);return(0,n.jsxs)("section",{className:"graph-panel-card graph-version-history",children:[(0,n.jsxs)("div",{className:"graph-panel-card__row",children:[(0,n.jsx)("div",{className:"graph-panel-card__title",children:"Graph Version History"}),(0,n.jsxs)("span",{className:"graph-panel-card__hint",children:["Current v",t.graphVersion]})]}),0===i.length?(0,n.jsx)("p",{className:"graph-panel-card__empty",children:"No replan or rollback events yet."}):(0,n.jsx)("ol",{className:"graph-version-history__timeline",children:i.map(e=>(0,n.jsxs)("li",{children:[(0,n.jsx)("div",{className:"graph-version-history__dot","aria-hidden":!0}),(0,n.jsxs)("div",{className:"graph-version-history__content",children:[(0,n.jsxs)("div",{className:"graph-panel-card__row",children:[(0,n.jsxs)("strong",{children:["v",e.fromVersion," to v",e.version]}),(0,n.jsx)("span",{className:"graph-version-history__badge graph-version-history__badge--".concat(e.eventType),children:e.eventType})]}),(0,n.jsx)("p",{children:e.reason}),(0,n.jsxs)("div",{className:"graph-panel-card__row",children:[(0,n.jsx)("span",{className:"graph-panel-card__hint",children:function(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}(e.timestamp)}),(0,n.jsxs)("span",{className:"graph-panel-card__hint",children:["by ",e.triggeredBy]})]}),e.checkpoint?(0,n.jsxs)("div",{className:"graph-panel-card__hint",children:["checkpoint: ",e.checkpoint]}):null,(0,n.jsx)("button",{type:"button",className:"graph-link-button",onClick:()=>s(e.fromVersion,e.version),children:"Compare"})]})]},"".concat(e.version,"-").concat(e.timestamp,"-").concat(e.eventType)))})]})}},3647:(e,t,s)=>{s.d(t,{A:()=>i});var n=s(5155),a=s(2115),r=s(4767);function i(e){let{graph:t}=e,s=(0,r.rO)(e=>e.comparisonMode),i=(0,r.rO)(e=>e.comparisonFromVersion),l=(0,r.rO)(e=>e.comparisonToVersion),o=(0,r.rO)(e=>e.closeComparison),c=(0,a.useMemo)(()=>s&&null!=i&&null!=l?function(e,t,s){let n=[];e.versionHistory.forEach((a,r)=>{let i=function(e,t){let s=e.versionHistory[t];return s?"replan"===s.eventType?s.toVersion:Math.max(2,e.graphVersion-(e.versionHistory.length-t-1)):e.graphVersion}(e,r);"replan"===a.eventType&&i>t&&i<=s&&n.push(a)});let a=new Set,r=new Set,i=new Set,l={};for(let e of n)for(let[t,s]of(e.changes.addedNodes.forEach(e=>a.add(e)),e.changes.removedNodes.forEach(e=>r.add(e)),e.changes.rewiredDeps.forEach(e=>i.add(e)),Object.entries(e.changes.estimateDeltas))){var o;l[t]=(null!=(o=l[t])?o:0)+s}return{replanEvents:n,addedNodes:[...a].sort(),removedNodes:[...r].sort(),rewiredDeps:[...i].sort(),estimateDeltas:l}}(t,i,l):null,[s,i,l,t]);return s&&null!=i&&null!=l&&c?(0,n.jsx)("div",{className:"modal-backdrop p-4 z-50",onClick:e=>e.target===e.currentTarget&&o(),children:(0,n.jsxs)("div",{className:"modal-content graph-comparison-modal animate-scale-in",children:[(0,n.jsxs)("div",{className:"graph-panel-card__row",children:[(0,n.jsxs)("h3",{children:["Graph diff: v",i," to v",l]}),(0,n.jsx)("button",{type:"button",className:"graph-link-button",onClick:o,children:"Close"})]}),(0,n.jsxs)("div",{className:"graph-comparison-modal__summary",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("h4",{children:"Added nodes"}),c.addedNodes.length?(0,n.jsx)("ul",{children:c.addedNodes.map(e=>(0,n.jsxs)("li",{children:["+ ",e]},e))}):(0,n.jsx)("p",{children:"None"})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("h4",{children:"Removed nodes"}),c.removedNodes.length?(0,n.jsx)("ul",{children:c.removedNodes.map(e=>(0,n.jsxs)("li",{children:["- ",e]},e))}):(0,n.jsx)("p",{children:"None"})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("h4",{children:"Rewired dependencies"}),c.rewiredDeps.length?(0,n.jsx)("ul",{children:c.rewiredDeps.map(e=>(0,n.jsxs)("li",{children:["~ ",e]},e))}):(0,n.jsx)("p",{children:"None"})]})]}),(0,n.jsxs)("div",{className:"graph-comparison-modal__events",children:[(0,n.jsx)("h4",{children:"Replan reasons"}),c.replanEvents.length?(0,n.jsx)("ul",{children:c.replanEvents.map(e=>(0,n.jsxs)("li",{children:[(0,n.jsxs)("strong",{children:["v",e.fromVersion," to v",e.toVersion]}),(0,n.jsx)("p",{children:e.reason})]},"".concat(e.fromVersion,"-").concat(e.toVersion,"-").concat(e.timestamp)))}):(0,n.jsx)("p",{children:"No replan events in this range."})]})]})}):null}},5959:(e,t,s)=>{s.d(t,{v:()=>i});var n=s(2115);let a=e=>{let t,s=new Set,n=(e,n)=>{let a="function"==typeof e?e(t):e;if(!Object.is(a,t)){let e=t;t=(null!=n?n:"object"!=typeof a||null===a)?a:Object.assign({},t,a),s.forEach(s=>s(t,e))}},a=()=>t,r={setState:n,getState:a,getInitialState:()=>i,subscribe:e=>(s.add(e),()=>s.delete(e))},i=t=e(n,a,r);return r},r=e=>{let t=(e=>e?a(e):a)(e),s=e=>(function(e,t=e=>e){let s=n.useSyncExternalStore(e.subscribe,n.useCallback(()=>t(e.getState()),[e,t]),n.useCallback(()=>t(e.getInitialState()),[e,t]));return n.useDebugValue(s),s})(t,e);return Object.assign(s,t),s},i=e=>e?r(e):r},5974:(e,t,s)=>{s.d(t,{A:()=>L});var n=s(5155),a=s(2115),r=s(2619),i=s.n(r),l=s(4255);function o(e){var t;let{graph:s,taskId:r,onStateChange:i,onRefetch:l}=e,[o,p]=(0,a.useState)(null),[m,x]=(0,a.useState)(null),j=null!=(t=s.executionState)?t:function(e){let t=Object.values(e.nodes);return 0===t.length?"ready":t.some(e=>"running"===e.status||"awaiting_human"===e.status)?"running":t.some(e=>"paused"===e.status)?"paused":t.some(e=>"stopped"===e.status)?"stopped":t.every(e=>"done"===e.status||"passed"===e.status||"failed"===e.status||"skipped"===e.status)?"done":"ready"}(s),v=function(e){switch(e){case"ready":return[{label:"Start",icon:(0,n.jsx)(c,{}),className:"btn-primary",action:"start"}];case"running":return[{label:"Pause",icon:(0,n.jsx)(d,{}),className:"btn-secondary",action:"pause"},{label:"Stop",icon:(0,n.jsx)(u,{}),className:"btn-ghost text-[var(--destructive)]",action:"stop"}];case"paused":return[{label:"Resume",icon:(0,n.jsx)(c,{}),className:"btn-primary",action:"resume"},{label:"Stop",icon:(0,n.jsx)(u,{}),className:"btn-ghost text-[var(--destructive)]",action:"stop"}];case"stopped":return[{label:"Resume",icon:(0,n.jsx)(c,{}),className:"btn-primary",action:"resume"}];case"done":return[{label:"Restart",icon:(0,n.jsx)(h,{}),className:"btn-secondary",action:"restart"}];default:return[]}}(j),g=async e=>{p(e),x(null);try{let t="/api/tasks/".concat(r,"/graph/").concat(e),s=await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"}}),n=await s.json().catch(()=>({}));if(!s.ok)throw Error((null==n?void 0:n.error)||"Failed to ".concat(e," execution"));(null==n?void 0:n.executionState)&&(null==i||i(n.executionState)),await (null==l?void 0:l())}catch(t){x(t instanceof Error?t.message:"Failed to ".concat(e))}finally{p(null)}};return(0,n.jsxs)("div",{className:"execution-controls",children:[(0,n.jsxs)("div",{className:"execution-controls__status",children:[(0,n.jsxs)("span",{className:"execution-controls__badge ".concat(function(e){switch(e){case"ready":default:return"bg-[var(--muted)] text-[var(--muted-foreground)]";case"running":return"bg-[var(--status-in-progress-bg)] text-[var(--status-in-progress)]";case"paused":return"bg-amber-100 text-amber-700";case"stopped":return"bg-[var(--status-blocked-bg)] text-[var(--status-blocked)]";case"done":return"bg-[var(--status-completed-bg)] text-[var(--status-completed)]"}}(j)),children:["running"===j&&(0,n.jsx)("span",{className:"execution-controls__pulse"}),function(e){switch(e){case"ready":return"Ready";case"running":return"Running";case"paused":return"Paused";case"stopped":return"Stopped";case"done":return"Complete";default:return e}}(j)]}),(0,n.jsxs)("span",{className:"execution-controls__version",children:["v",s.graphVersion]})]}),(0,n.jsx)("div",{className:"execution-controls__actions",children:v.map(e=>{let{label:t,icon:s,className:a,action:r}=e;return(0,n.jsxs)("button",{type:"button",onClick:()=>g(r),disabled:null!==o,className:"btn ".concat(a," execution-controls__btn"),children:[o===r?(0,n.jsx)("span",{className:"spinner w-4 h-4"}):s,(0,n.jsx)("span",{children:t})]},r)})}),m&&(0,n.jsx)("div",{className:"execution-controls__error",children:m})]})}function c(){return(0,n.jsx)("svg",{className:"w-4 h-4",fill:"currentColor",viewBox:"0 0 20 20",children:(0,n.jsx)("path",{d:"M6.3 2.841A1.5 1.5 0 004 4.11V15.89a1.5 1.5 0 002.3 1.269l9.344-5.89a1.5 1.5 0 000-2.538L6.3 2.84z"})})}function d(){return(0,n.jsx)("svg",{className:"w-4 h-4",fill:"currentColor",viewBox:"0 0 20 20",children:(0,n.jsx)("path",{d:"M5.75 3a.75.75 0 00-.75.75v12.5c0 .414.336.75.75.75h1.5a.75.75 0 00.75-.75V3.75A.75.75 0 007.25 3h-1.5zM12.75 3a.75.75 0 00-.75.75v12.5c0 .414.336.75.75.75h1.5a.75.75 0 00.75-.75V3.75a.75.75 0 00-.75-.75h-1.5z"})})}function u(){return(0,n.jsx)("svg",{className:"w-4 h-4",fill:"currentColor",viewBox:"0 0 20 20",children:(0,n.jsx)("rect",{x:"4",y:"4",width:"12",height:"12",rx:"1.5"})})}function h(){return(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})})}var p=s(1152);class m{diff(e,t,s={}){let n;"function"==typeof s?(n=s,s={}):"callback"in s&&(n=s.callback);let a=this.castInput(e,s),r=this.castInput(t,s),i=this.removeEmpty(this.tokenize(a,s)),l=this.removeEmpty(this.tokenize(r,s));return this.diffWithOptionsObj(i,l,s,n)}diffWithOptionsObj(e,t,s,n){var a;let r=e=>(e=this.postProcess(e,s),n)?void setTimeout(function(){n(e)},0):e,i=t.length,l=e.length,o=1,c=i+l;null!=s.maxEditLength&&(c=Math.min(c,s.maxEditLength));let d=null!=(a=s.timeout)?a:1/0,u=Date.now()+d,h=[{oldPos:-1,lastComponent:void 0}],p=this.extractCommon(h[0],t,e,0,s);if(h[0].oldPos+1>=l&&p+1>=i)return r(this.buildValues(h[0].lastComponent,t,e));let m=-1/0,x=1/0,j=()=>{for(let n=Math.max(m,-o);n<=Math.min(x,o);n+=2){let a,o=h[n-1],c=h[n+1];o&&(h[n-1]=void 0);let d=!1;if(c){let e=c.oldPos-n;d=c&&0<=e&&e<i}let u=o&&o.oldPos+1<l;if(!d&&!u){h[n]=void 0;continue}if(a=!u||d&&o.oldPos<c.oldPos?this.addToPath(c,!0,!1,0,s):this.addToPath(o,!1,!0,1,s),p=this.extractCommon(a,t,e,n,s),a.oldPos+1>=l&&p+1>=i)return r(this.buildValues(a.lastComponent,t,e))||!0;h[n]=a,a.oldPos+1>=l&&(x=Math.min(x,n-1)),p+1>=i&&(m=Math.max(m,n+1))}o++};if(n)!function e(){setTimeout(function(){if(o>c||Date.now()>u)return n(void 0);j()||e()},0)}();else for(;o<=c&&Date.now()<=u;){let e=j();if(e)return e}}addToPath(e,t,s,n,a){let r=e.lastComponent;return r&&!a.oneChangePerToken&&r.added===t&&r.removed===s?{oldPos:e.oldPos+n,lastComponent:{count:r.count+1,added:t,removed:s,previousComponent:r.previousComponent}}:{oldPos:e.oldPos+n,lastComponent:{count:1,added:t,removed:s,previousComponent:r}}}extractCommon(e,t,s,n,a){let r=t.length,i=s.length,l=e.oldPos,o=l-n,c=0;for(;o+1<r&&l+1<i&&this.equals(s[l+1],t[o+1],a);)o++,l++,c++,a.oneChangePerToken&&(e.lastComponent={count:1,previousComponent:e.lastComponent,added:!1,removed:!1});return c&&!a.oneChangePerToken&&(e.lastComponent={count:c,previousComponent:e.lastComponent,added:!1,removed:!1}),e.oldPos=l,o}equals(e,t,s){return s.comparator?s.comparator(e,t):e===t||!!s.ignoreCase&&e.toLowerCase()===t.toLowerCase()}removeEmpty(e){let t=[];for(let s=0;s<e.length;s++)e[s]&&t.push(e[s]);return t}castInput(e,t){return e}tokenize(e,t){return Array.from(e)}join(e){return e.join("")}postProcess(e,t){return e}get useLongestToken(){return!1}buildValues(e,t,s){let n,a=[];for(;e;)a.push(e),n=e.previousComponent,delete e.previousComponent,e=n;a.reverse();let r=a.length,i=0,l=0,o=0;for(;i<r;i++){let e=a[i];if(e.removed)e.value=this.join(s.slice(o,o+e.count)),o+=e.count;else{if(!e.added&&this.useLongestToken){let n=t.slice(l,l+e.count);n=n.map(function(e,t){let n=s[o+t];return n.length>e.length?n:e}),e.value=this.join(n)}else e.value=this.join(t.slice(l,l+e.count));l+=e.count,e.added||(o+=e.count)}}return a}}class x extends m{constructor(){super(...arguments),this.tokenize=v}equals(e,t,s){return s.ignoreWhitespace?(s.newlineIsToken&&e.includes("\n")||(e=e.trim()),s.newlineIsToken&&t.includes("\n")||(t=t.trim())):s.ignoreNewlineAtEof&&!s.newlineIsToken&&(e.endsWith("\n")&&(e=e.slice(0,-1)),t.endsWith("\n")&&(t=t.slice(0,-1))),super.equals(e,t,s)}}let j=new x;function v(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,"\n"));let s=[],n=e.split(/(\n|\r\n)/);n[n.length-1]||n.pop();for(let e=0;e<n.length;e++){let a=n[e];e%2&&!t.newlineIsToken?s[s.length-1]+=a:s.push(a)}return s}var g=s(4767),f=s(8251),N=s(2460);function _(e){if(!e)return"N/A";let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function y(e){let{diffA:t,diffB:s}=e,r=(0,a.useMemo)(()=>j.diff(t,s,void 0),[t,s]);return t||s?(0,n.jsx)("div",{className:"node-detail-panel__diff",children:r.map((e,t)=>{let s=e.added?"node-detail-panel__diff-added":e.removed?"node-detail-panel__diff-removed":"node-detail-panel__diff-unchanged";return(0,n.jsx)("pre",{className:s,children:e.value},t)})}):(0,n.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"No output to compare."})}function b(e){var t,s;let{graph:r,taskId:i,projectId:l,isOpen:o,onClose:c,onNodeTrigger:d,onShowLogs:u,onRefetch:h}=e,p=(0,g.rO)(e=>e.selectedNodeId),m=(0,g.rO)(e=>e.triggeringNodeId),[x,j]=(0,a.useState)("execution"),[v,N]=(0,a.useState)(420),[b,w]=(0,a.useState)(!1),[T,M]=(0,a.useState)(null),[E,L]=(0,a.useState)(null),P=(0,a.useRef)(null),O=(0,a.useRef)(null),V=p?r.nodes[p]:null,I=(0,a.useMemo)(()=>p?function(e,t){var s;let n=null!=(s=e.runtimeEvents)?s:[],a=[],r=n.filter(e=>"node_status"===e.eventType&&e.nodeId===t);for(let s=0;s<r.length;s++){let n=r[s],i=e.nodes[t];a.push({id:"".concat(n.nodeId,"-").concat(n.timestamp),timestamp:n.timestamp,fromStatus:n.fromStatus,toStatus:n.toStatus,output:(null==i?void 0:i.type)==="work"?i.output:void 0,duration:void 0})}return a.reverse()}(r,p):[],[r,p]),R=(0,a.useCallback)(e=>{e.preventDefault(),w(!0)},[]);(0,a.useEffect)(()=>{if(!b)return;let e=e=>{N(Math.max(320,Math.min(800,window.innerWidth-e.clientX)))},t=()=>{w(!1)};return document.addEventListener("mousemove",e),document.addEventListener("mouseup",t),()=>{document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",t)}},[b]),(0,a.useEffect)(()=>{M(null),L(null)},[p]);let D=async()=>{if(!p||!V||!d)return;let e=(0,g.eh)(p,r),t="blocked"===e?"start":e;"none"!==t&&await d(p,t)},F=async()=>{p&&d&&await d(p,"stop")};if(!o||!p||!V)return null;let W=(0,g.eh)(p,r),B="blocked"===W?"Run Node":function(e,t){switch(e){case"start":return"Start Node";case"resume":return"Resume Node";case"retry":return"stopped"===t||"done"===t?"Re-run Node":"Retry Node";default:return null}}("blocked"===W?"start":W,V.status),z=m===p,q="work"===V.type&&"running"===V.status,H=e=>{if(!e)return"";let t=I.find(t=>t.id===e);return(null==t?void 0:t.output)?JSON.stringify(t.output,null,2):""},J="work"===V.type?JSON.stringify(null!=(t=V.output)?t:{},null,2):"";return(0,n.jsxs)("aside",{ref:P,className:"node-detail-panel ".concat(o?"node-detail-panel--open":""),style:{width:"".concat(v,"px")},children:[(0,n.jsx)("div",{ref:O,className:"node-detail-panel__resize-handle ".concat(b?"node-detail-panel__resize-handle--active":""),onMouseDown:R}),(0,n.jsxs)("header",{className:"node-detail-panel__header",children:[(0,n.jsxs)("div",{className:"node-detail-panel__title-row",children:[(0,n.jsxs)("div",{className:"node-detail-panel__title",children:[(0,n.jsx)("h2",{children:(0,f.v0)(p,V)}),(0,n.jsxs)("div",{className:"node-detail-panel__badges",children:[(0,n.jsx)("span",{className:"node-detail-panel__type-badge",children:V.type}),(0,n.jsx)("span",{className:"node-detail-panel__status-badge node-detail-panel__status-badge--".concat(V.status),children:(0,f.yd)(V.status)})]})]}),(0,n.jsx)("button",{type:"button",onClick:c,className:"node-detail-panel__close","aria-label":"Close panel",children:(0,n.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),(0,n.jsxs)("nav",{className:"node-detail-panel__tabs",children:[(0,n.jsx)("button",{type:"button",className:"node-detail-panel__tab ".concat("execution"===x?"node-detail-panel__tab--active":""),onClick:()=>j("execution"),children:"Execution"}),(0,n.jsxs)("button",{type:"button",className:"node-detail-panel__tab ".concat("history"===x?"node-detail-panel__tab--active":""),onClick:()=>j("history"),children:["History",I.length>0&&(0,n.jsx)("span",{className:"node-detail-panel__tab-count",children:I.length})]}),(0,n.jsx)("button",{type:"button",className:"node-detail-panel__tab ".concat("diff"===x?"node-detail-panel__tab--active":""),onClick:()=>j("diff"),children:"Diff"})]})]}),(0,n.jsxs)("div",{className:"node-detail-panel__content",children:["execution"===x&&(0,n.jsxs)("div",{className:"node-detail-panel__section",children:[(0,n.jsxs)("div",{className:"node-detail-panel__grid",children:[(0,n.jsx)("span",{children:"Node ID"}),(0,n.jsx)("code",{className:"node-detail-panel__code",children:p}),(0,n.jsx)("span",{children:"Status"}),(0,n.jsx)("strong",{className:"node-detail-panel__status--".concat(V.status),children:(0,f.yd)(V.status)}),(0,n.jsx)("span",{children:"Dependencies"}),(0,n.jsx)("strong",{children:V.deps.length}),(0,n.jsx)("span",{children:"Started"}),(0,n.jsx)("strong",{children:_(V.startedAt)}),(0,n.jsx)("span",{children:"Completed"}),(0,n.jsx)("strong",{children:_(V.completedAt)}),V.startedAt&&V.completedAt&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{children:"Duration"}),(0,n.jsx)("strong",{children:function(e,t){if(!e||!t)return"N/A";let s=new Date(e).getTime(),n=new Date(t).getTime();if(Number.isNaN(s)||Number.isNaN(n))return"N/A";let a=Math.floor((n-s)/1e3),r=Math.floor(a/60),i=Math.floor(r/60);return i>0?"".concat(i,"h ").concat(r%60,"m"):r>0?"".concat(r,"m ").concat(a%60,"s"):"".concat(a,"s")}(V.startedAt,V.completedAt)})]})]}),"root"===V.type&&(0,n.jsx)(k,{node:V,nodeId:p,taskId:i,projectId:l,graphVersion:r.graphVersion,onRefetch:h}),"work"===V.type&&(0,n.jsx)(C,{node:V,nodeId:p,onShowLogs:u}),"gate"===V.type&&(0,n.jsx)(S,{node:V,nodeId:p,onNodeTrigger:d,isTriggering:z}),(0,n.jsx)(A,{taskId:i,nodeId:p,comments:null!=(s=V.comments)?s:[],onRefetch:h}),d&&(B||q)&&(0,n.jsxs)("div",{className:"node-detail-panel__actions",children:[B&&(0,n.jsx)("button",{type:"button",onClick:D,disabled:z,className:"btn btn-primary w-full",children:z?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"spinner w-4 h-4"}),"Processing..."]}):B}),q&&(0,n.jsx)("button",{type:"button",onClick:F,disabled:z,className:"btn btn-destructive w-full mt-2",children:z?"Processing...":"Stop Node"})]})]}),"history"===x&&(0,n.jsx)("div",{className:"node-detail-panel__section",children:0===I.length?(0,n.jsx)("p",{className:"node-detail-panel__empty",children:"No run history available for this node."}):(0,n.jsx)("ul",{className:"node-detail-panel__history-list",children:I.map(e=>(0,n.jsxs)("li",{className:"node-detail-panel__history-item",children:[(0,n.jsxs)("div",{className:"node-detail-panel__history-header",children:[(0,n.jsx)("span",{className:"node-detail-panel__history-time",children:_(e.timestamp)}),(0,n.jsx)("span",{className:"node-detail-panel__history-status node-detail-panel__history-status--".concat(e.toStatus),children:(0,f.yd)(e.toStatus)})]}),(0,n.jsxs)("div",{className:"node-detail-panel__history-transition",children:[(0,f.yd)(e.fromStatus)," → ",(0,f.yd)(e.toStatus)]}),e.output&&Object.keys(e.output).length>0&&(0,n.jsxs)("details",{className:"node-detail-panel__history-output",children:[(0,n.jsx)("summary",{children:"Output"}),(0,n.jsx)("pre",{children:JSON.stringify(e.output,null,2)})]})]},e.id))})}),"diff"===x&&(0,n.jsxs)("div",{className:"node-detail-panel__section",children:[(0,n.jsxs)("div",{className:"node-detail-panel__diff-controls",children:[(0,n.jsxs)("div",{className:"node-detail-panel__diff-select",children:[(0,n.jsx)("label",{children:"Run A:"}),(0,n.jsxs)("select",{value:null!=T?T:"",onChange:e=>M(e.target.value||null),className:"input",children:[(0,n.jsx)("option",{value:"",children:"Select a run..."}),(0,n.jsx)("option",{value:"__current__",children:"Current output"}),I.map(e=>(0,n.jsxs)("option",{value:e.id,children:[_(e.timestamp)," - ",(0,f.yd)(e.toStatus)]},e.id))]})]}),(0,n.jsxs)("div",{className:"node-detail-panel__diff-select",children:[(0,n.jsx)("label",{children:"Run B:"}),(0,n.jsxs)("select",{value:null!=E?E:"",onChange:e=>L(e.target.value||null),className:"input",children:[(0,n.jsx)("option",{value:"",children:"Select a run..."}),(0,n.jsx)("option",{value:"__current__",children:"Current output"}),I.map(e=>(0,n.jsxs)("option",{value:e.id,children:[_(e.timestamp)," - ",(0,f.yd)(e.toStatus)]},e.id))]})]})]}),T&&E?(0,n.jsx)(y,{diffA:"__current__"===T?J:H(T),diffB:"__current__"===E?J:H(E)}):(0,n.jsx)("p",{className:"node-detail-panel__empty",children:"Select two runs above to see the diff of their outputs."})]})]})]})}function k(e){let{node:t,nodeId:s,taskId:r,projectId:i,graphVersion:l,onRefetch:o}=e,c=(0,N.E)(t.objective,t.title),[d,u]=(0,a.useState)(!1),[h,p]=(0,a.useState)(c),[m,x]=(0,a.useState)(null),[j,v]=(0,a.useState)(!1);(0,a.useEffect)(()=>{d||(p(c),x(null))},[c,d]);let g=(0,a.useCallback)(async()=>{let e=(0,N.E)(h,t.title);if(e===c){u(!1),x(null);return}v(!0),x(null);try{let t=await fetch("/api/tasks/".concat(r,"/graph"),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({ifMatchGraphVersion:l,projectId:i||void 0,nodeUpdates:{[s]:{configPatch:{objective:e}}}})}),n=await t.json().catch(()=>({}));if(!t.ok)throw Error((null==n?void 0:n.error)||"Failed to update task objective");await (null==o?void 0:o()),u(!1)}catch(e){x(e instanceof Error?e.message:"Failed to update task objective")}finally{v(!1)}},[h,t.title,c,r,l,i,s,o]);return(0,n.jsxs)("div",{className:"node-detail-panel__type-details",children:[(0,n.jsx)("h4",{children:"Task Objective"}),d?(0,n.jsxs)("div",{className:"space-y-2",children:[(0,n.jsx)("textarea",{className:"input w-full min-h-[90px] resize-y",value:h,onChange:e=>p(e.target.value),disabled:j,"aria-label":"Edit task objective"}),m&&(0,n.jsx)("p",{className:"text-xs text-[var(--danger)]",children:m}),(0,n.jsxs)("div",{className:"flex gap-2",children:[(0,n.jsx)("button",{type:"button",className:"btn btn-primary",onClick:g,disabled:j,children:j?"Saving...":"Save"}),(0,n.jsx)("button",{type:"button",className:"btn btn-secondary",onClick:()=>{p(c),x(null),u(!1)},disabled:j,children:"Cancel"})]})]}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("p",{className:"node-detail-panel__objective",children:c||"No objective defined."}),(0,n.jsx)("div",{className:"mt-2",children:(0,n.jsx)("button",{type:"button",className:"btn btn-secondary",onClick:()=>u(!0),children:"Edit Objective"})})]}),t.criteria&&t.criteria.length>0&&(0,n.jsxs)("div",{className:"node-detail-panel__criteria",children:[(0,n.jsx)("h5",{children:"Success Criteria"}),(0,n.jsx)("ul",{children:t.criteria.map((e,t)=>(0,n.jsxs)("li",{children:[(0,n.jsx)("span",{className:"node-detail-panel__bullet",children:"•"}),e]},t))})]}),t.planVersions&&t.planVersions.length>0&&(0,n.jsxs)("div",{className:"node-detail-panel__versions",children:[(0,n.jsx)("h5",{children:"Plan Versions"}),(0,n.jsx)("div",{className:"flex flex-wrap gap-1",children:t.planVersions.map(e=>(0,n.jsxs)("span",{className:"node-detail-panel__version-badge",children:["v",e]},e))})]})]})}function w(e){let{title:t,items:s}=e;return Array.isArray(s)&&0!==s.length?(0,n.jsxs)("div",{className:"node-detail-panel__criteria mt-3",children:[(0,n.jsx)("h5",{children:t}),(0,n.jsx)("ul",{children:s.map((e,s)=>(0,n.jsxs)("li",{children:[(0,n.jsx)("span",{className:"node-detail-panel__bullet",children:"•"}),e]},"".concat(t,"-").concat(s)))})]}):null}function C(e){let{node:t,nodeId:s,onShowLogs:r}=e,[i,l]=(0,a.useState)(!1);return(0,n.jsxs)("div",{className:"node-detail-panel__type-details",children:[(0,n.jsx)("h4",{children:"Work Node"}),t.description&&(0,n.jsx)("p",{className:"node-detail-panel__description",children:t.description}),(0,n.jsxs)("div",{className:"node-detail-panel__grid mt-3",children:[t.workType&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{children:"Work Type"}),(0,n.jsx)("strong",{children:t.workType})]}),(0,n.jsx)("span",{children:"Attempts"}),(0,n.jsxs)("strong",{children:[t.attempts," / ",t.maxAttempts]}),(0,n.jsx)("span",{children:"Retry Policy"}),(0,n.jsx)("strong",{children:t.retryPolicy.onExhaust}),void 0!==t.estimateMinutes&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{children:"Estimate"}),(0,n.jsxs)("strong",{children:[t.estimateMinutes,"m"]})]}),void 0!==t.actualMinutes&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{children:"Actual"}),(0,n.jsxs)("strong",{children:[t.actualMinutes,"m"]})]})]}),(0,n.jsx)(w,{title:"Where",items:t.where}),(0,n.jsx)(w,{title:"What Changes",items:t.whatChanges}),(0,n.jsx)(w,{title:"Acceptance Criteria",items:t.acceptanceCriteria}),(0,n.jsx)(w,{title:"To Dos",items:t.todos}),(0,n.jsx)(w,{title:"Verification",items:t.verification}),r&&t.startedAt&&(0,n.jsxs)("button",{type:"button",onClick:()=>r(s),className:"btn btn-secondary btn-sm mt-3 w-full",children:[(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 10h16M4 14h16M4 18h16"})}),"View Logs"]}),t.output&&Object.keys(t.output).length>0&&(0,n.jsxs)("div",{className:"node-detail-panel__output mt-3",children:[(0,n.jsxs)("button",{type:"button",onClick:()=>l(!i),className:"node-detail-panel__output-toggle",children:[(0,n.jsx)("span",{children:"Output"}),(0,n.jsx)("svg",{className:"w-4 h-4 transition-transform ".concat(i?"":"-rotate-90"),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]}),i&&(0,n.jsx)("pre",{className:"node-detail-panel__output-content",children:JSON.stringify(t.output,null,2)})]})]})}function S(e){var t,s;let{node:a,nodeId:r,onNodeTrigger:i,isTriggering:l}=e,o="awaiting_human"===a.status;return(0,n.jsxs)("div",{className:"node-detail-panel__type-details",children:[(0,n.jsx)("h4",{children:"Gate"}),(0,n.jsxs)("div",{className:"node-detail-panel__grid mt-2",children:[(0,n.jsx)("span",{children:"Gate Type"}),(0,n.jsx)("strong",{children:a.gateType}),(0,n.jsx)("span",{children:"Required"}),(0,n.jsx)("strong",{children:a.required?"Yes":"No"}),(0,n.jsx)("span",{children:"Strategy"}),(0,n.jsx)("strong",{children:a.verificationStrategy.type})]}),o&&i&&(0,n.jsx)("div",{className:"node-detail-panel__actions mt-4",children:(0,n.jsxs)("div",{className:"flex gap-2",children:[(0,n.jsx)("button",{type:"button",onClick:()=>i(r,"approve"),disabled:l,className:"btn btn-primary flex-1",children:l?"Processing...":"Approve"}),(0,n.jsx)("button",{type:"button",onClick:()=>i(r,"reject"),disabled:l,className:"btn btn-destructive flex-1",children:l?"Processing...":"Reject"})]})}),a.verificationStrategy.checks&&a.verificationStrategy.checks.length>0&&(0,n.jsxs)("div",{className:"node-detail-panel__checks mt-3",children:[(0,n.jsx)("h5",{children:"Checks"}),(0,n.jsx)("ul",{children:a.verificationStrategy.checks.map((e,t)=>{var s,r;let i=null==(r=a.verificationResult)||null==(s=r.checks)?void 0:s.find(t=>t.check===e);return(0,n.jsxs)("li",{className:i?i.passed?"node-detail-panel__check--passed":"node-detail-panel__check--failed":"",children:[(0,n.jsx)("span",{className:"node-detail-panel__check-icon",children:i?i.passed?"✓":"✗":"○"}),(0,n.jsx)("span",{children:e})]},t)})})]}),(null==(s=a.verificationResult)||null==(t=s.checks)?void 0:t.length)?(0,n.jsxs)("div",{className:"node-detail-panel__verification-results mt-3",children:[(0,n.jsx)("h5",{children:"Verification Results"}),(0,n.jsx)("ul",{children:a.verificationResult.checks.map((e,t)=>(0,n.jsxs)("li",{children:[(0,n.jsx)("span",{className:e.passed?"text-green-600":"text-red-600",children:e.passed?"PASS":"FAIL"}),(0,n.jsx)("span",{children:e.check}),e.message&&(0,n.jsx)("span",{className:"text-[var(--muted-foreground)]",children:e.message})]},"".concat(e.check,"-").concat(t)))})]}):null]})}function A(e){let{taskId:t,nodeId:s,comments:r,onRefetch:i}=e,[l,o]=(0,a.useState)(""),[c,d]=(0,a.useState)(!1),[u,h]=(0,a.useState)(null),p=(0,a.useCallback)(async()=>{let e=l.trim();if(e){d(!0),h(null);try{let n=await fetch("/api/tasks/".concat(t,"/nodes/").concat(s,"/comments"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:e})});if(!n.ok){let e=await n.json().catch(()=>({}));throw Error((null==e?void 0:e.error)||"Failed to add comment")}o(""),await (null==i?void 0:i())}catch(e){h(e instanceof Error?e.message:"Failed to add comment")}finally{d(!1)}}},[l,t,s,i]);return(0,n.jsxs)("div",{className:"node-detail-panel__type-details",children:[(0,n.jsx)("h4",{children:"Comments"}),r.length>0?(0,n.jsx)("ul",{className:"node-detail-panel__history-list",children:r.map(e=>(0,n.jsxs)("li",{className:"node-detail-panel__history-item",children:[(0,n.jsxs)("div",{className:"node-detail-panel__history-header",children:[(0,n.jsx)("span",{className:"node-detail-panel__history-time",children:_(e.createdAt)}),(0,n.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:e.author})]}),(0,n.jsx)("p",{className:"text-sm mt-1",children:e.content})]},e.id))}):(0,n.jsx)("p",{className:"node-detail-panel__empty",children:"No comments yet."}),(0,n.jsxs)("div",{className:"mt-3 flex gap-2",children:[(0,n.jsx)("input",{type:"text",className:"input flex-1",placeholder:"Add a steering comment...",value:l,onChange:e=>o(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),p())},disabled:c}),(0,n.jsx)("button",{type:"button",className:"btn btn-primary",onClick:p,disabled:c||!l.trim(),children:c?"...":"Add"})]}),u&&(0,n.jsx)("p",{className:"text-xs text-[var(--danger)] mt-1",children:u})]})}var T=s(2731),M=s(3647);function E(e){let t=String(e||"");if(!t.trim())return"";let s=t.match(/^---\n[\s\S]*?\n---\n([\s\S]*)$/);return(s?s[1]:t).replace(/^#\s+.+(\r?\n|$)/,"").trim()}function L(e){let{task:t,graph:s,projectSlug:r,onClose:c,onRefetch:d,onTaskUpdate:u}=e,[h,m]=(0,a.useState)(!1),[x,j]=(0,a.useState)(null),[v,N]=(0,a.useState)(null),[_,y]=(0,a.useState)(!1),[k,w]=(0,a.useState)(!1),[C,S]=(0,a.useState)(!1),[A,L]=(0,a.useState)(!1),[O,V]=(0,a.useState)(t.title||""),[I,R]=(0,a.useState)(t.description||E(t.content)),[D,F]=(0,a.useState)(!1),[W,B]=(0,a.useState)(null),z=(0,g.rO)(e=>e.reset),q=(0,g.rO)(e=>e.selectedNodeId),H=(0,g.rO)(e=>e.setSelectedNodeId),J=(0,f.cQ)(s);(0,a.useEffect)(()=>(z(),J&&H(J.id),()=>z()),[]);let G=(0,a.useCallback)(e=>{H(e),y(!0)},[H]),K=(0,a.useCallback)(()=>{y(!1)},[]),U=(0,a.useCallback)(async(e,n)=>{N(null);try{let a;switch(n){case"start":case"retry":a="/api/tasks/".concat(t.id,"/nodes/").concat(e,"/start");break;case"resume":a="/api/tasks/".concat(t.id,"/nodes/").concat(e,"/resume");break;case"stop":a="/api/tasks/".concat(t.id,"/nodes/").concat(e,"/stop");break;case"approve":case"reject":a="/api/tasks/".concat(t.id,"/nodes/").concat(e,"/verify");break;default:return}let r=await fetch(a,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:t.project_id,ifMatchGraphVersion:s.graphVersion,...("approve"===n||"reject"===n)&&{approved:"approve"===n}})}),i=await r.json().catch(()=>({}));if(!r.ok)throw Error((null==i?void 0:i.error)||"Failed to ".concat(n," node"));await d()}catch(e){N(e instanceof Error?e.message:"Failed to ".concat(n," node"))}},[t.id,t.project_id,s.graphVersion,d]),$=(0,a.useCallback)(async e=>{let t={ready:"queued",running:"queued",paused:"in_progress",stopped:"blocked",done:"completed"}[e];t&&u&&await u({status:t})},[u]),X=(0,a.useCallback)(e=>{j(e),m(!0)},[]),Y=(0,a.useCallback)(async()=>{if(B(null),O===t.title||!u)return void S(!1);try{F(!0),await u({title:O}),S(!1)}catch(e){B(e instanceof Error?e.message:"Failed to save title")}finally{F(!1)}},[O,t.title,u]),Q=(0,a.useCallback)(async()=>{B(null);let e=(t.description||E(t.content)).trim();if(I.trim()===e||!u)return void L(!1);try{F(!0),await u({description:I}),L(!1)}catch(e){B(e instanceof Error?e.message:"Failed to save description")}finally{F(!1)}},[I,t.description,t.content,u]);return(0,n.jsxs)("div",{className:"graph-first-view",children:[(0,n.jsxs)("header",{className:"graph-first-view__header",children:[(0,n.jsxs)("div",{className:"graph-first-view__nav",children:[(0,n.jsx)("button",{onClick:c,className:"graph-first-view__back",title:"Back",children:(0,n.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2.5,children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15 19l-7-7 7-7"})})}),(0,n.jsxs)("div",{className:"graph-first-view__breadcrumbs",children:[(0,n.jsx)(i(),{href:"/projects/".concat(r),className:"graph-link-button",children:r}),(0,n.jsx)("span",{children:"/"}),(0,n.jsx)("span",{className:"font-medium",children:t.title||t.slug||t.id.slice(0,8)})]})]}),(0,n.jsxs)("div",{className:"graph-first-view__title-row",children:[(0,n.jsx)("h1",{className:"graph-first-view__title",children:t.title||"Untitled Task"}),(0,n.jsx)(o,{graph:s,taskId:t.id,onStateChange:$,onRefetch:d})]}),v&&(0,n.jsxs)("div",{className:"graph-first-view__error",children:[v,(0,n.jsx)("button",{onClick:()=>N(null),className:"ml-2 text-sm underline",children:"Dismiss"})]})]}),(0,n.jsxs)("div",{className:"graph-first-view__body",children:[(0,n.jsx)("div",{className:"graph-first-view__canvas",children:(0,n.jsx)(l.A,{graph:s,taskId:t.id,className:"h-full",fullscreen:!0,onNodeSelect:G})}),(0,n.jsxs)("aside",{className:"graph-first-view__sidebar",children:[(0,n.jsxs)("div",{className:"graph-sidebar-section",children:[(0,n.jsxs)("button",{className:"graph-sidebar-section__toggle",onClick:()=>w(e=>!e),children:[(0,n.jsx)("svg",{className:"w-4 h-4 transition-transform ".concat(k?"rotate-90":""),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9 5l7 7-7 7"})}),(0,n.jsx)("span",{className:"font-medium text-sm",children:"Task Details"})]}),k&&(0,n.jsxs)("div",{className:"graph-sidebar-section__body",children:[(0,n.jsx)("label",{className:"text-xs text-[var(--muted-foreground)]",children:"Title"}),C?(0,n.jsx)("input",{className:"w-full px-2 py-1 text-sm bg-[var(--card-bg)] border border-[var(--border)] rounded focus:outline-none focus:ring-1 focus:ring-[var(--primary)]",value:O,onChange:e=>V(e.target.value),onBlur:Y,onKeyDown:e=>"Enter"===e.key&&Y(),disabled:D,autoFocus:!0}):(0,n.jsx)("p",{className:"text-sm cursor-pointer hover:text-[var(--primary)] transition-colors",onClick:()=>{V(t.title||""),S(!0)},children:t.title||"Untitled"}),(0,n.jsx)("label",{className:"text-xs text-[var(--muted-foreground)] mt-2",children:"Description"}),A?(0,n.jsxs)("div",{className:"space-y-2",children:[(0,n.jsx)("textarea",{className:"w-full px-2 py-1 text-sm bg-[var(--card-bg)] border border-[var(--border)] rounded focus:outline-none focus:ring-1 focus:ring-[var(--primary)] min-h-[60px] resize-y",value:I,onChange:e=>R(e.target.value),onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&"Enter"===e.key&&(e.preventDefault(),Q())},disabled:D,autoFocus:!0}),(0,n.jsxs)("div",{className:"flex gap-2",children:[(0,n.jsx)("button",{type:"button",className:"btn btn-primary",onClick:()=>void Q(),disabled:D,children:D?"Saving...":"Save"}),(0,n.jsx)("button",{type:"button",className:"btn btn-secondary",onClick:()=>{B(null),R(t.description||E(t.content)),L(!1)},disabled:D,children:"Cancel"})]})]}):(0,n.jsx)("p",{className:"text-sm cursor-pointer hover:text-[var(--primary)] transition-colors whitespace-pre-wrap",onClick:()=>{B(null),R(t.description||E(t.content)),L(!0)},children:t.description||E(t.content)||"No description"}),W&&(0,n.jsx)("p",{className:"text-xs text-[var(--danger)]",children:W}),(0,n.jsxs)("div",{className:"mt-2 space-y-1 text-xs text-[var(--muted-foreground)]",children:[(0,n.jsxs)("div",{className:"flex justify-between",children:[(0,n.jsx)("span",{children:"Status"}),(0,n.jsx)("span",{className:"text-[var(--foreground)]",children:t.status||"—"})]}),(0,n.jsxs)("div",{className:"flex justify-between",children:[(0,n.jsx)("span",{children:"Stage"}),(0,n.jsx)("span",{className:"text-[var(--foreground)]",children:t.stage||"—"})]}),t.slug&&(0,n.jsxs)("div",{className:"flex justify-between",children:[(0,n.jsx)("span",{children:"Slug"}),(0,n.jsx)("span",{className:"text-[var(--foreground)] font-mono",children:t.slug})]}),(0,n.jsxs)("div",{className:"flex justify-between",children:[(0,n.jsx)("span",{children:"ID"}),(0,n.jsx)("span",{className:"text-[var(--foreground)] font-mono",children:t.id.slice(0,8)})]})]})]})]}),(0,n.jsx)(p.A,{graph:s,onShowLogs:X}),(0,n.jsx)(T.A,{graph:s})]})]}),(0,n.jsx)(M.A,{graph:s}),h&&x&&(0,n.jsx)(P,{taskId:t.id,nodeId:x,onClose:()=>m(!1)}),(0,n.jsx)(b,{graph:s,taskId:t.id,projectId:t.project_id,isOpen:_&&!!q,onClose:K,onNodeTrigger:U,onShowLogs:X,onRefetch:d})]})}function P(e){let{taskId:t,nodeId:s,onClose:r}=e,[i,l]=(0,a.useState)(""),[o,c]=(0,a.useState)(!0),[d,u]=(0,a.useState)(null);return(0,a.useEffect)(()=>{let e=!1;return async function(){c(!0),u(null);try{let n=await fetch("/api/tasks/".concat(t,"/logs?nodeId=").concat(s,"&tail=500")),a=await n.json().catch(()=>({}));if(!n.ok)throw Error((null==a?void 0:a.error)||"Failed to fetch logs");if(!e){let e=((null==a?void 0:a.logs)||[]).map(e=>{let t=(e.log_type||"output").toLowerCase();return"output"===t?e.content||"":"[".concat(t,"] ").concat(e.content||"")}).join("\n");l(e)}}catch(t){e||u(t instanceof Error?t.message:"Failed to fetch logs")}finally{e||c(!1)}}(),()=>{e=!0}},[t,s]),(0,n.jsx)("div",{className:"modal-backdrop",onClick:r,children:(0,n.jsxs)("div",{className:"modal-content logs-modal",onClick:e=>e.stopPropagation(),children:[(0,n.jsxs)("div",{className:"logs-modal__header",children:[(0,n.jsx)("h3",{children:"Node Logs"}),(0,n.jsx)("button",{onClick:r,className:"btn-ghost",children:(0,n.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),(0,n.jsx)("div",{className:"logs-modal__body",children:o?(0,n.jsxs)("div",{className:"logs-modal__loading",children:[(0,n.jsx)("span",{className:"spinner"}),"Loading logs..."]}):d?(0,n.jsx)("div",{className:"logs-modal__error",children:d}):i?(0,n.jsx)("pre",{className:"logs-modal__content",children:i}):(0,n.jsx)("div",{className:"logs-modal__empty",children:"No logs available for this node."})})]})})}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5962],{91:(e,t,r)=>{r.d(t,{Y:()=>n});var a=r(2115);function n(){let[e,t]=(0,a.useState)([]),[r,n]=(0,a.useState)(!1),[l,o]=(0,a.useState)(null),s=(0,a.useCallback)(async()=>{n(!0);try{var e;let r=await fetch("/api/projects");if(!r.ok)throw Error("Failed to fetch projects");let a=await r.json();t(null!=(e=a.projects)?e:[]),o(null)}catch(e){o(e instanceof Error?e:Error("Unknown error"))}finally{n(!1)}},[]);(0,a.useEffect)(()=>{s()},[s]);let i=(0,a.useCallback)(async e=>{let r=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!r.ok)throw Error((await r.json().catch(()=>({}))).error||"Failed to create project");let a=(await r.json()).project;return t(e=>[a,...e]),a},[]);return{projects:e,isLoading:r,error:l,refetch:s,createProject:i,updateProject:(0,a.useCallback)(async(e,r)=>{let a=await fetch("/api/projects/".concat(e),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});if(!a.ok)throw Error((await a.json().catch(()=>({}))).error||"Failed to update project");let n=(await a.json()).project;return t(t=>t.map(t=>t.id===e?n:t)),n},[]),deleteProject:(0,a.useCallback)(async e=>{let r=await fetch("/api/projects/".concat(e),{method:"DELETE"});if(!r.ok)throw Error((await r.json().catch(()=>({}))).error||"Failed to delete project");t(t=>t.filter(t=>t.id!==e))},[])}}},577:(e,t,r)=>{r.d(t,{LU:()=>s,dF:()=>c,si:()=>o,zH:()=>i});var a=r(2115),n=r(1483),l=r(5704);function o(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t="1"===l.env.NEXT_PUBLIC_AGX_BOARD_DISABLE_AUTH,r=e.project,o=e.status,s=e.orphan,i=e.realtime,[c,u]=(0,a.useState)([]),[d,f]=(0,a.useState)(!0),[p,h]=(0,a.useState)(null),[m,g]=(0,a.useState)(null),[v,b]=(0,a.useState)(null),y=(0,a.useCallback)(e=>{if(!e)return[];if(Array.isArray(e))return Array.from(new Set(e.map(e=>String(e||"").trim()).filter(Boolean)));if("string"==typeof e){let t=e.trim();if(!t)return[];try{let e=JSON.parse(t);if(Array.isArray(e))return Array.from(new Set(e.map(e=>String(e||"").trim()).filter(Boolean)))}catch(e){}return Array.from(new Set(t.split(",").map(e=>e.trim()).filter(Boolean)))}return[]},[]),k=(0,a.useCallback)(e=>{let t=String(e||"").match(/^---\n([\s\S]*?)\n---\n?/);if(!t)return[];let r=t[1].split("\n").find(e=>e.trim().toLowerCase().startsWith("depends_on:"));return r?y(r.slice(r.indexOf(":")+1).trim()):[]},[y]),w=(0,a.useCallback)((e,t)=>{let r=y(e.depends_on);if(r.length>0)return{...e,depends_on:r};let a="string"==typeof(null==e?void 0:e.content)?k(e.content):[];if(a.length>0)return{...e,depends_on:a};let n=y(null==t?void 0:t.depends_on);return n.length>0?{...e,depends_on:n}:e},[k,y]),E=(0,a.useCallback)(async()=>{try{let e=new URLSearchParams;r&&e.set("project",r),o&&e.set("status",o),s&&e.set("orphan","1");let t=await fetch("/api/tasks?".concat(e.toString()));if(!t.ok)throw Error("Failed to fetch tasks");let a=await t.json(),n=Array.isArray(a.tasks)?a.tasks.map(e=>w(e)):[];u(n),h(null)}catch(e){h(e instanceof Error?e:Error("Unknown error"))}finally{f(!1)}},[r,o,s]);(0,a.useEffect)(()=>{E()},[E]),(0,a.useEffect)(()=>{if(t||!i)return;let e=(0,n.O)(),r=e.channel("tasks-changes").on("postgres_changes",{event:"*",schema:"public",table:"tasks"},e=>{"INSERT"===e.eventType?u(t=>{let r=w(e.new);return t.some(e=>e.id===r.id)?t:[r,...t]}):"UPDATE"===e.eventType?u(t=>t.map(t=>t.id===e.new.id?w(e.new,t):t)):"DELETE"===e.eventType&&u(t=>t.filter(t=>t.id!==e.old.id))}).subscribe();return()=>{e.removeChannel(r)}},[i,t]),(0,a.useEffect)(()=>{if(t||!i||"undefined"==typeof EventSource)return;let e=null;try{e=new EventSource("/api/tasks/stream")}catch(e){console.error("Failed to open tasks stream:",e);return}let r=e=>{try{let t=JSON.parse(e.data);if(!(null==t?void 0:t.type)||"UPDATE"!==t.type||!t.task)return;let r=t.task;u(e=>{let t=e.some(e=>e.id===r.id),a=e.find(e=>e.id===r.id),n=w(r,a);return t?e.map(e=>e.id===r.id?n:e):[n,...e]})}catch(e){}},a=()=>{E()};return e.addEventListener("message",r),e.addEventListener("error",a),()=>{null==e||e.removeEventListener("message",r),null==e||e.removeEventListener("error",a),null==e||e.close()}},[i,t,E]);let j=(0,a.useCallback)(async(e,t)=>{let r=await fetch("/api/tasks",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:e,swarm_models:t})});if(!r.ok)throw Error((await r.json()).error||"Failed to create task");let{task:a}=await r.json(),n=w(a);return u(e=>e.some(e=>e.id===n.id)?e:[n,...e]),n},[e.realtime,w]),C=(0,a.useCallback)(async(e,t)=>{let r=await fetch("/api/tasks/".concat(e),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok){let e=null;throw"function"==typeof r.json&&(e=await r.json().catch(()=>null)),Error((null==e?void 0:e.error)||(null==e?void 0:e.details)||"Failed to update task (".concat(r.status," ").concat(r.statusText||"Error",")"))}let{task:a}=await r.json();return u(t=>t.map(t=>t.id===e?w({...t,...a},t):t)),w(a)},[e.realtime,w]),_=(0,a.useCallback)(async e=>{if(!(await fetch("/api/tasks/".concat(e),{method:"DELETE"})).ok)throw Error("Failed to delete task");u(t=>t.filter(t=>t.id!==e))},[e.realtime]),S=(0,a.useCallback)(async e=>{let t=await fetch("/api/queue/complete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to complete task stage");let{task:r}=await t.json();return u(t=>t.map(t=>t.id===e.taskId?w({...t,...r},t):t)),w(r)},[e.realtime,w]),x=(0,a.useCallback)(async e=>{g(e.taskId),b(null);try{let t=await fetch("/api/orchestrator/tasks/".concat(e.taskId,"/cancel"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e.reason?{reason:e.reason}:{})});if(!t.ok){let e=await t.json().catch(()=>({})),r=(null==e?void 0:e.error)||"Failed to cancel workflow";throw Error(r)}return t.json()}catch(t){let e=t instanceof Error?t:Error("Failed to cancel workflow");throw b(e),e}finally{g(null)}},[]),T=(0,a.useCallback)(async e=>{let t=await fetch("/api/tasks/".concat(e)),r=await t.json().catch(()=>null);if(!t.ok)throw Error((null==r?void 0:r.error)||"Failed to fetch task details");return w(null==r?void 0:r.task)},[w]),N=(0,a.useCallback)(async e=>{let t=await fetch("/api/tasks/assign-orphans",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project_id:e})}),r=await t.json().catch(()=>({}));if(!t.ok)throw Error((null==r?void 0:r.error)||"Failed to assign orphan tasks");return await E(),{updatedCount:Number((null==r?void 0:r.updatedCount)||0),taskIds:Array.isArray(null==r?void 0:r.taskIds)?r.taskIds:[]}},[E]);return{tasks:c,isLoading:d,error:p,cancellingTaskId:m,isCancelling:!!m,cancelError:v,refetch:E,createTask:j,updateTask:C,deleteTask:_,completeTaskStage:S,cancelWorkflow:x,fetchTask:T,assignOrphanTasksToProject:N}}function s(e){let t="1"===l.env.NEXT_PUBLIC_AGX_BOARD_DISABLE_AUTH,[r,o]=(0,a.useState)([]),[s,i]=(0,a.useState)(!1),c=(0,a.useCallback)(async()=>{if(e){i(!0);try{let t=await fetch("/api/tasks/".concat(e,"/comments"));if(t.ok){let e=await t.json();o(e.comments||[])}}finally{i(!1)}}},[e]);return(0,a.useEffect)(()=>{c()},[c]),(0,a.useEffect)(()=>{if(t||!e)return;let r=(0,n.O)(),a=r.channel("task-comments-".concat(e)).on("postgres_changes",{event:"*",schema:"public",table:"task_comments",filter:"task_id=eq.".concat(e)},e=>{if("INSERT"===e.eventType){let t=e.new;(null==t?void 0:t.deleted_at)||o(e=>[...e,t])}else if("UPDATE"===e.eventType){let t=e.new;(null==t?void 0:t.deleted_at)?o(e=>e.filter(e=>e.id!==t.id)):o(e=>e.map(e=>e.id===t.id?t:e))}else"DELETE"===e.eventType&&o(t=>t.filter(t=>t.id!==e.old.id))}).subscribe();return()=>{r.removeChannel(a)}},[e,t]),{comments:r,isLoading:s,refetch:c,addComment:(0,a.useCallback)(async t=>{if(!e)return;let r=await fetch("/api/tasks/".concat(e,"/comments"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:t})});if(r.ok){let{comment:e}=await r.json();return e}},[e]),deleteComment:(0,a.useCallback)(async t=>{e&&(await fetch("/api/tasks/".concat(e,"/comments/").concat(t),{method:"DELETE"})).ok&&o(e=>e.filter(e=>e.id!==t))},[e])}}function i(e){var t;let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=null==(t=r.enabled)||t,l=Number.isFinite(r.tail)&&r.tail>0?r.tail:500,o=Number.isFinite(r.maxChars)&&r.maxChars>0?r.maxChars:2e5,[s,i]=(0,a.useState)(""),[c,u]=(0,a.useState)(!1),[d,f]=(0,a.useState)(!1),p=(0,a.useRef)(null),h=(0,a.useRef)(0),m=(0,a.useRef)(null),g=(0,a.useCallback)(e=>{let t=(e.log_type||"output").toLowerCase();return"output"===t?e.content||"":"[".concat(t,"] ").concat(e.content||"")},[]),v=(0,a.useCallback)(async function(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(e&&n){t||u(!0);try{let r=new URLSearchParams;if(t){let e=m.current;(null==e?void 0:e.created_at)&&r.set("after",e.created_at),r.set("limit","500")}else r.set("tail",String(l));let a=await fetch("/api/tasks/".concat(e,"/logs?").concat(r.toString()));if(a.ok){let e=((await a.json()).logs||[]).slice().sort((e,t)=>e.created_at===t.created_at?e.id.localeCompare(t.id):e.created_at.localeCompare(t.created_at));if(t){let t=m.current,r=t?e.filter(e=>e.created_at>t.created_at||!(e.created_at<t.created_at)&&e.id>t.id):e;if(r.length){let e=r.map(e=>g(e)).join("");e&&i(t=>{let r=t+e;return r.length>o?r.slice(-o):r}),f(!0),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>{f(!1)},5e3)}}else{let t=e.map(e=>g(e)).join("");i(t.length>o?t.slice(-o):t)}if(e.length){let t=e[e.length-1];m.current={created_at:t.created_at,id:t.id}}}}finally{t||u(!1)}}},[n,g,o,l,e]);return(0,a.useEffect)(()=>{i(""),f(!1),u(!1),m.current=null,p.current&&(clearTimeout(p.current),p.current=null),n&&v()},[n,v,e]),(0,a.useEffect)(()=>{if(!e||!n)return;let t=new EventSource("/api/logs/stream?taskId=".concat(e)),r=()=>{let e=Date.now();e-h.current<5e3||(h.current=e,v(!0))};return t.onopen=()=>{r()},t.onmessage=e=>{try{let t=JSON.parse(e.data);if((null==t?void 0:t.type)!=="log"||!t.log)return;let r=t.log,a=g(r);if(!a)return;i(e=>e+a),f(!0),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>{f(!1)},5e3)}catch(e){}},t.onerror=()=>{r()},()=>{t.close(),p.current&&(clearTimeout(p.current),p.current=null)}},[n,v,g,e]),{output:s,isLoading:c,isStreaming:d}}function c(e,t){let[r,n]=(0,a.useState)([]),[l,o]=(0,a.useState)(!1),s=(0,a.useCallback)(async()=>{o(!0);try{let r=new URLSearchParams;e&&r.set("scope",e),t&&r.set("scopeId",t);let a=await fetch("/api/learnings?".concat(r.toString()));if(a.ok){let e=await a.json();n(e.learnings||[])}}finally{o(!1)}},[e,t]);return(0,a.useEffect)(()=>{s()},[s]),{learnings:r,isLoading:l,refetch:s,addLearning:(0,a.useCallback)(async(e,t,r)=>{let a=await fetch("/api/learnings",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({scope:t,scopeId:r,content:e})});if(a.ok){let{learning:e}=await a.json();return n(t=>[e,...t]),e}},[]),deleteLearning:(0,a.useCallback)(async e=>{(await fetch("/api/learnings?id=".concat(e),{method:"DELETE"})).ok&&n(t=>t.filter(t=>t.id!==e))},[])}}},1483:(e,t,r)=>{r.d(t,{O:()=>n});var a=r(7559);function n(){return{auth:{getSession:async()=>({data:{session:{access_token:"local-token",refresh_token:"local-refresh",expires_in:3600,user:{id:a.g.id,email:a.g.email,user_metadata:{name:a.g.name,full_name:a.g.name}}}},error:null}),signInWithOAuth:async()=>({error:Error("Auth disabled in AGX Board local mode")}),signOut:async()=>({error:null}),onAuthStateChange:()=>({data:{subscription:{unsubscribe(){}}}})},channel:()=>({on(){return this},subscribe(){return this}}),removeChannel(){}}}},3158:(e,t,r)=>{r.d(t,{A:()=>d});var a=r(5155),n=r(2115),l=r(7650);let o=[{value:"queued",label:"Queued",color:"var(--status-queued)",icon:"○"},{value:"in_progress",label:"In Progress",color:"var(--status-in-progress)",icon:"◑"},{value:"blocked",label:"Blocked",color:"var(--status-blocked)",icon:"⊘"},{value:"completed",label:"Done",color:"var(--status-completed)",icon:"●"},{value:"failed",label:"Failed",color:"var(--status-failed)",icon:"✕"}];function s(e){let{status:t,onStatusChange:r}=e,[s,i]=(0,n.useState)(!1),[c,u]=(0,n.useState)(null),d=(0,n.useRef)(null),f=(0,n.useRef)(null),p=(0,n.useCallback)(()=>{if(!d.current)return;let e=d.current.getBoundingClientRect();u({top:e.bottom+4,left:e.left})},[]);(0,n.useEffect)(()=>{if(!s)return;p();let e=e=>{d.current&&!d.current.contains(e.target)&&f.current&&!f.current.contains(e.target)&&i(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[s,p]),(0,n.useEffect)(()=>{i(!1)},[t]);let h=o.find(e=>e.value===t)||o[0],m="completed"===t,g="in_progress"===t;return(0,a.jsxs)("div",{className:"relative flex-shrink-0",ref:d,children:[(0,a.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),r&&i(!s)},className:"w-4 h-4 rounded-full border-[1.5px] flex items-center justify-center transition-all\n hover:scale-110 focus-visible:outline-2 focus-visible:outline-[var(--ring)]\n ".concat(r?"cursor-pointer":"cursor-default","\n ").concat(g?"animate-pulse":"","\n "),style:{borderColor:h.color,backgroundColor:m?h.color:"transparent"},title:h.label,children:[m&&(0,a.jsx)("svg",{className:"w-2.5 h-2.5 text-white",viewBox:"0 0 12 12",fill:"none",children:(0,a.jsx)("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),"failed"===t&&(0,a.jsx)("svg",{className:"w-2 h-2",viewBox:"0 0 12 12",fill:"none",children:(0,a.jsx)("path",{d:"M3 3L9 9M9 3L3 9",stroke:h.color,strokeWidth:"1.5",strokeLinecap:"round"})}),g&&(0,a.jsx)("div",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:h.color}})]}),s&&c&&(0,l.createPortal)((0,a.jsx)("div",{ref:f,className:"fixed z-[9999] py-1 rounded-lg border shadow-lg min-w-[140px]",style:{top:c.top,left:c.left,backgroundColor:"var(--card-bg)",borderColor:"var(--card-border)"},children:o.map(e=>{let n=e.value===t;return(0,a.jsxs)("button",{type:"button",className:"w-full flex items-center gap-2 px-3 py-1.5 text-xs text-left transition-colors\n hover:bg-[var(--item-hover-bg)]\n ".concat(n?"font-semibold bg-[var(--item-hover-bg)]":"","\n "),onClick:t=>{t.stopPropagation(),null==r||r(e.value),i(!1)},children:[(0,a.jsxs)("span",{className:"w-3 h-3 rounded-full border-[1.5px] flex items-center justify-center",style:{borderColor:e.color,backgroundColor:"completed"===e.value?e.color:"transparent"},children:["completed"===e.value&&(0,a.jsx)("svg",{className:"w-2 h-2 text-white",viewBox:"0 0 12 12",fill:"none",children:(0,a.jsx)("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),"failed"===e.value&&(0,a.jsx)("svg",{className:"w-1.5 h-1.5",viewBox:"0 0 12 12",fill:"none",children:(0,a.jsx)("path",{d:"M3 3L9 9M9 3L3 9",stroke:e.color,strokeWidth:"1.5",strokeLinecap:"round"})}),"in_progress"===e.value&&(0,a.jsx)("div",{className:"w-1 h-1 rounded-full",style:{backgroundColor:e.color}})]}),(0,a.jsx)("span",{style:{color:n?e.color:void 0},children:e.label}),n&&(0,a.jsx)("svg",{className:"w-3 h-3 ml-auto",viewBox:"0 0 12 12",fill:"none",children:(0,a.jsx)("path",{d:"M2 6L5 9L10 3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]},e.value)})}),document.body)]})}var i=r(6132);let c={queued:{className:"badge-status-queued",label:"Queued",dotColor:"bg-[var(--status-queued)]"},in_progress:{className:"badge-status-in_progress",label:"In Progress",dotColor:"bg-[var(--status-in-progress)]"},blocked:{className:"badge-status-blocked",label:"Blocked",dotColor:"bg-[var(--status-blocked)]"},completed:{className:"badge-status-completed",label:"Completed",dotColor:"bg-[var(--status-completed)]"},failed:{className:"badge-status-failed",label:"Failed",dotColor:"bg-[var(--status-failed)]"}},u={INTAKE:{icon:"\uD83D\uDCE5",label:"Intake"},PROGRESS:{icon:"\uD83D\uDD04",label:"Progress"},DONE:{icon:"✅",label:"Done"}};function d(e){var t;let{task:r,onClick:n,compact:l=!1,onStatusChange:o,allTasks:d}=e;c[r.status||"queued"],r.stage&&u[r.stage];let{summary:f,isLoading:p}=(0,i.fZ)("draft"!==r.id?r.id:null),h=(null==(t=r.depends_on)?void 0:t.length)?r.depends_on.map(e=>{let t=null==d?void 0:d.find(t=>t.id===e);return{id:e,title:(null==t?void 0:t.title)||e.slice(0,8),done:(null==t?void 0:t.status)==="completed"}}):null;return h&&h.every(e=>e.done),(0,a.jsxs)("div",{onClick:n,role:"button",tabIndex:0,onKeyDown:e=>"Enter"===e.key&&(null==n?void 0:n()),className:"group relative flex flex-col gap-2 p-3 rounded-lg\n bg-white border border-[var(--card-border)] shadow-sm\n hover:shadow-md hover:border-[var(--primary-muted)] hover:ring-1 hover:ring-[var(--primary-muted)]\n transition-all duration-200 cursor-grab active:cursor-grabbing\n focus-visible:outline-2 focus-visible:outline-[var(--ring)] focus-visible:outline-offset-2\n ".concat("failed"===r.status?"border-red-200 bg-red-50/30":"","\n ").concat("completed"===r.status?"opacity-75 bg-gray-50":"","\n "),children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,a.jsx)("h3",{className:"text-sm font-medium text-[var(--foreground)] leading-snug line-clamp-3\n ".concat("completed"===r.status?"text-[var(--muted-foreground)] line-through":"","\n "),children:r.title||"Untitled Task"}),(0,a.jsx)("div",{className:"shrink-0 mt-0.5",children:(0,a.jsx)(s,{status:r.status||"queued",onStatusChange:o})})]}),(0,a.jsx)("div",{className:"flex items-center justify-between min-h-[16px]",children:(0,a.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-[var(--muted-foreground)] whitespace-nowrap",children:[void 0!==r.priority&&r.priority>0&&(0,a.jsxs)("span",{className:"px-1.5 py-0.5 rounded font-semibold bg-gray-100 ".concat(0===r.priority?"text-[var(--primary)]":""),children:["P",r.priority]}),"draft"!==r.id&&(0,a.jsx)("span",{className:"opacity-0 group-hover:opacity-100 transition-opacity font-mono text-[9px]",children:r.id.slice(0,5)})]})})]})}},6132:(e,t,r)=>{r.d(t,{dS:()=>c,fZ:()=>i,y$:()=>u});var a=r(2115),n=r(8251);let l=new Map,o=new Map;async function s(e){let t=l.get(e);if(void 0!==t)return t;let r=o.get(e);if(r)return r;let a=(async()=>{var t;let r=await fetch("/api/tasks/".concat(e,"/graph"),{method:"GET",cache:"no-store"});if(404===r.status)return l.set(e,null),null;let a=await r.json().catch(()=>({}));if(!r.ok)throw Error((null==a?void 0:a.error)||"Failed to fetch graph summary (".concat(r.status,")"));let o=null!=(t=null==a?void 0:a.graph)?t:null,s=o?(0,n.hj)(o):null;return l.set(e,s),s})();o.set(e,a);try{return await a}finally{o.delete(e)}}function i(e){let t=(0,a.useMemo)(()=>{var t;return e&&null!=(t=l.get(e))?t:null},[e]),[r,n]=(0,a.useState)(t),[o,i]=(0,a.useState)(!!e&&null===t),[c,u]=(0,a.useState)(null),d=(0,a.useCallback)(async()=>{if(!e){n(null),u(null),i(!1);return}i(!0),u(null);try{let t=await s(e);n(t)}catch(e){u(e instanceof Error?e.message:"Failed to fetch graph summary"),n(null)}finally{i(!1)}},[e]);return(0,a.useEffect)(()=>{d()},[d]),{summary:r,isLoading:o,error:c,refresh:d}}function c(e){var t;return null!=(t=l.get(e))?t:null}async function u(e){await Promise.allSettled(e.map(e=>s(e)))}},7559:(e,t,r)=>{r.d(t,{g:()=>n});var a=r(5704);"1"===a.env.AGX_BOARD_DISABLE_AUTH||"1"===a.env.NEXT_PUBLIC_AGX_BOARD_DISABLE_AUTH||"1"!==a.env.AGX_BOARD_ENABLE_AUTH&&a.env.NEXT_PUBLIC_AGX_BOARD_ENABLE_AUTH;let n={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:a.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:a.env.AGX_BOARD_USER_NAME||"Local Board User"}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6488],{2325:(e,t,r)=>{r.d(t,{Tw:()=>o,ls:()=>l,mP:()=>x,ou:()=>u});var s=r(2115);let a={INTAKE:"\uD83D\uDCE5",PROGRESS:"\uD83D\uDD04",DONE:"✅"},n={INTAKE:"var(--warning)",PROGRESS:"var(--primary)",DONE:"var(--success)"},o=["INTAKE","PROGRESS","DONE"],l={INTAKE:{icon:"\uD83D\uDCE5",label:"Intake",color:"var(--warning)"},PROGRESS:{icon:"\uD83D\uDD04",label:"Progress",color:"var(--primary)"},DONE:{icon:"✅",label:"Done",color:"var(--success)"}},i=new Set(["ideation","planning","execution","verification","done","coding","qa","acceptance","pr","smoke_test","release"]),d="00000000-0000-0000-0000-000000000001",c=[{id:"00000000-0000-0000-0001-000000000001",workflow_id:d,name:"INTAKE",label:"Intake",prompt:"New task. Triage, scope, and prepare for work.",provider:null,model:null,position:0,node_type:"step",created_at:new Date(0).toISOString(),updated_at:new Date(0).toISOString()},{id:"00000000-0000-0000-0001-000000000002",workflow_id:d,name:"PROGRESS",label:"Progress",prompt:"Task is actively being worked on.",provider:null,model:null,position:1,node_type:"step",created_at:new Date(0).toISOString(),updated_at:new Date(0).toISOString()},{id:"00000000-0000-0000-0001-000000000003",workflow_id:d,name:"DONE",label:"Done",prompt:"Task completed.",provider:null,model:null,position:2,node_type:"terminal",created_at:new Date(0).toISOString(),updated_at:new Date(0).toISOString()}],m=[{id:"fallback-intake-progress",workflow_id:d,from_node:"INTAKE",to_node:"PROGRESS",condition:"done",priority:0,created_at:new Date(0).toISOString()},{id:"fallback-progress-done",workflow_id:d,from_node:"PROGRESS",to_node:"DONE",condition:"done",priority:0,created_at:new Date(0).toISOString()}],u="00000000-0000-0000-0000-000000000001";function x(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.workflowId||u,[r,x]=(0,s.useState)(null),[p,h]=(0,s.useState)(!0),[v,g]=(0,s.useState)(null),f=(0,s.useCallback)(async()=>{h(!0),g(null);try{var e;let r=await fetch("/api/workflows/".concat(t));if(!r.ok){if(404===r.status&&t===d)return void x({id:d,user_id:"00000000-0000-0000-0000-000000000000",name:"Default Workflow",description:null,definition:{},created_at:new Date(0).toISOString(),updated_at:new Date(0).toISOString(),nodes:c,transitions:m});throw Error("Failed to fetch workflow: ".concat(r.status," ").concat(r.statusText))}let s=await r.json(),a=null!=(e=s.workflow)?e:s,n=Array.isArray(a.nodes)?a.nodes:[];(Array.isArray(a.transitions)&&a.transitions,t===d&&(!n||0===n.length||Array.isArray(n)&&0!==n.length&&n.every(e=>i.has(e.name))))?x({...a,nodes:c,transitions:m}):x(a)}catch(e){console.error("Error fetching workflow:",e),g(e instanceof Error?e:Error(String(e)))}finally{h(!1)}},[t]);(0,s.useEffect)(()=>{f()},[f]);let b=(0,s.useMemo)(()=>{var e;if(!(null==r||null==(e=r.nodes)?void 0:e.length))return[...o];let t=r.nodes.slice().sort((e,t)=>e.position-t.position).map(e=>e.name);return t.every(e=>i.has(e))?[...o]:t},[r]),j=(0,s.useMemo)(()=>{var e;if(!(null==r||null==(e=r.nodes)?void 0:e.length)||r.nodes.every(e=>i.has(e.name)))return l;let t={};for(let e of r.nodes)t[e.name]={icon:a[e.name]||"\uD83D\uDCCC",label:e.label||e.name.charAt(0).toUpperCase()+e.name.slice(1),color:n[e.name]||"var(--primary)"};return t},[r]),N=(0,s.useMemo)(()=>(null==r?void 0:r.transitions)||[],[r]),y=(0,s.useCallback)((e,t)=>{var s;if(e===t)return!0;if(!(null==r||null==(s=r.nodes)?void 0:s.length)){let r=o.indexOf(e),s=o.indexOf(t);return s<r||s===r+1}let a=b.indexOf(e),n=b.indexOf(t);return!!(n<a||N.some(r=>r.from_node===e&&r.to_node===t))||n===a+1},[r,b,N]);return{workflow:r,stages:b,stageConfig:j,transitions:N,isLoading:p,error:v,refetch:f,isValidTransition:y}}},4354:(e,t,r)=>{r.d(t,{A:()=>K});var s=r(5155),a=r(2115),n=r(4357);function o(e){let{comments:t,onAddComment:r,onDeleteComment:n}=e,[o,l]=(0,a.useState)(""),[i,d]=(0,a.useState)(!1),[c,m]=(0,a.useState)(!1),[u,x]=(0,a.useState)(null),p=async e=>{if(e.preventDefault(),o.trim()&&!c){m(!0);try{await r(o),l(""),d(!1)}finally{m(!1)}}},h=async e=>{if(n&&!u&&confirm("Are you sure you want to delete this comment?")){x(e);try{await n(e)}catch(e){console.error("Failed to delete comment:",e)}finally{x(null)}}};return(0,s.jsxs)("div",{className:"space-y-4",children:[i?(0,s.jsxs)("form",{onSubmit:p,className:"space-y-3 animate-fade-in-up",children:[(0,s.jsx)("textarea",{value:o,onChange:e=>l(e.target.value),placeholder:"Add context, decisions, or guidance...",className:"input resize-none h-24 focus:ring-2 focus:ring-[var(--primary)]/20",autoFocus:!0,disabled:c}),(0,s.jsxs)("div",{className:"flex gap-2",children:[(0,s.jsx)("button",{type:"submit",disabled:!o.trim()||c,className:"btn-primary px-4 py-2 flex items-center gap-2",children:c?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"spinner w-4 h-4 border-2 border-white/20 border-t-white"}),"Adding..."]}):"Add Comment"}),(0,s.jsx)("button",{type:"button",onClick:()=>{d(!1),l("")},disabled:c,className:"btn-ghost px-4 py-2",children:"Cancel"})]})]}):(0,s.jsx)("button",{onClick:()=>d(!0),className:"w-full py-3 border-2 border-dashed border-[var(--card-border)] rounded-xl text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:border-[var(--primary)] hover:bg-[var(--primary-muted)] transition-all duration-200 text-sm font-medium focus-visible:outline-2 focus-visible:outline-[var(--ring)] focus-visible:outline-offset-2",children:(0,s.jsxs)("span",{className:"flex items-center justify-center gap-2",children:[(0,s.jsx)("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 4v16m8-8H4"})}),"Add comment"]})}),0===t.length?(0,s.jsxs)("div",{className:"text-center py-12 animate-fade-in",children:[(0,s.jsx)("div",{className:"inline-flex items-center justify-center w-12 h-12 rounded-xl bg-[var(--background)] border border-[var(--card-border)] mb-3",children:(0,s.jsx)("span",{className:"text-xl opacity-50",children:"\uD83D\uDCDD"})}),(0,s.jsx)("p",{className:"text-[var(--muted-foreground)] text-sm",children:"No comments yet"}),(0,s.jsx)("p",{className:"text-[var(--muted-foreground)] text-xs mt-1",children:"Add context and guidance for this task"})]}):(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)("div",{className:"timeline-line"}),(0,s.jsx)("div",{className:"space-y-4",children:t.map((e,t)=>(0,s.jsxs)("div",{className:"timeline-item relative pl-7 animate-fade-in-up",style:{animationDelay:"".concat(50*t,"ms")},children:[(0,s.jsx)("div",{className:"timeline-dot"}),(0,s.jsxs)("div",{className:"card p-4 hover:border-[var(--primary)]/30 group",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"text-xs text-[var(--muted-foreground)] tabular-nums",children:new Date(e.created_at).toLocaleString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}),e.author_type&&(0,s.jsx)("span",{className:"text-[10px] uppercase tracking-wide text-[var(--muted-foreground)]",children:e.author_type})]}),n&&"user"===e.author_type&&(0,s.jsx)("button",{onClick:()=>h(e.id),disabled:u===e.id,className:"opacity-0 group-hover:opacity-100 transition-opacity text-[var(--muted-foreground)] hover:text-[var(--destructive)] p-1 rounded",title:"Delete comment",children:u===e.id?(0,s.jsx)("span",{className:"spinner w-3 h-3 border-2 border-current border-t-transparent"}):(0,s.jsx)("svg",{className:"w-3.5 h-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})})})]}),(0,s.jsx)("p",{className:"text-sm whitespace-pre-wrap leading-relaxed",children:e.content})]})]},e.id))})]})]})}var l=r(577);let i={30:"#94a3b8",31:"#f87171",32:"#4ade80",33:"#facc15",34:"#60a5fa",35:"#c084fc",36:"#22d3ee",37:"#e2e8f0",90:"#64748b",91:"#ef4444",92:"#22c55e",93:"#eab308",94:"#3b82f6",95:"#a855f7",96:"#06b6d4",97:"#f8fafc"},d=/\u001b\[([0-9;]*)m/g,c=/(^|\s)\[((?:\d{1,3};)*\d{1,3})m(\s|$)/g;function m(e){return Math.max(0,Math.min(255,e))}function u(e){let{taskId:t,status:r}=e,[n,o]=(0,a.useState)(!1),[u,x]=(0,a.useState)(!1),{output:p,isLoading:h,isStreaming:v}=(0,l.zH)(t,{enabled:n,tail:500,maxChars:2e5}),g=(0,a.useRef)(null);(0,a.useEffect)(()=>{n&&g.current&&(g.current.scrollTop=g.current.scrollHeight)},[p,n]);let f=p||(h?"Loading logs...":"in_progress"===r?"Waiting for live output...":"No output yet."),b=(0,a.useMemo)(()=>n?function(e){if(!e)return[];let t=e.replace(c,(e,t,r,s)=>t&&s?" ":t||s||""),r=[],s={},a=0;for(let e of t.matchAll(d)){var n;let o=null!=(n=e.index)?n:0;if(o>a){let e=t.slice(a,o);r.push({text:e,style:Object.keys(s).length?{...s}:void 0})}s=function(e,t){let r={...e},s=(t||"0").split(";").map(e=>Number.parseInt(e,10)).filter(e=>Number.isFinite(e));for(let e=0;e<s.length;e+=1){let t=s[e];if(0===t){delete r.color,delete r.fontStyle,delete r.fontWeight,delete r.textDecoration;continue}if(1===t){r.fontWeight=700;continue}if(3===t){r.fontStyle="italic";continue}if(4===t){r.textDecoration="underline";continue}if(22===t){delete r.fontWeight;continue}if(23===t){delete r.fontStyle;continue}if(24===t){delete r.textDecoration;continue}if(39===t){delete r.color;continue}if(38===t){let t=s[e+1];if(5===t&&Number.isFinite(s[e+2]))r.color=function(e){let t=Math.max(0,Math.min(255,e));if(t<16)return i[[30,31,32,33,34,35,36,37,90,91,92,93,94,95,96,97][t]]||"#e2e8f0";if(t>=232){let e=Math.round((t-232)/23*255);return"rgb(".concat(e,", ").concat(e,", ").concat(e,")")}let r=t-16,s=Math.floor(r/36),a=Math.floor(r%36/6),n=e=>0===e?0:40*e+55;return"rgb(".concat(n(s),", ").concat(n(a),", ").concat(n(r%6),")")}(s[e+2]),e+=2;else if(2===t&&Number.isFinite(s[e+2])&&Number.isFinite(s[e+3])&&Number.isFinite(s[e+4])){let t=m(s[e+2]),a=m(s[e+3]),n=m(s[e+4]);r.color="rgb(".concat(t,", ").concat(a,", ").concat(n,")"),e+=4}continue}i[t]&&(r.color=i[t])}return r}(s,e[1]||"0"),a=o+e[0].length}return a<t.length&&r.push({text:t.slice(a),style:Object.keys(s).length?{...s}:void 0}),function(e){if(!e.length)return e;let t=[];for(let r of e){if(!r.text)continue;let e=t[t.length-1],s=!!e&&JSON.stringify(e.style||null)===JSON.stringify(r.style||null);e&&s?e.text+=r.text:t.push({text:r.text,style:r.style?{...r.style}:void 0})}return t}(r)}(f):[],[f,n]);return(0,s.jsxs)("div",{className:"border-t border-[var(--card-border)] pt-8",children:[(0,s.jsxs)("button",{type:"button",onClick:()=>o(e=>!e),className:"w-full flex items-center justify-between text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)]","aria-expanded":n,children:[(0,s.jsxs)("span",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{children:"Terminal Stream"}),v&&(0,s.jsx)("span",{className:"text-[10px] px-2 py-0.5 rounded-full bg-[var(--status-completed-bg)] text-[var(--status-completed)] border border-[var(--status-completed-border)]",children:"Live"})]}),(0,s.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:n?"Collapse":"Expand"})]}),n&&(0,s.jsxs)("div",{className:"mt-4 rounded-lg border border-[var(--card-border)] bg-[var(--muted)] transition-all duration-300 ease-in-out",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-b border-[var(--card-border)] text-[10px] uppercase tracking-widest text-[var(--muted-foreground)]",children:[(0,s.jsx)("span",{children:"Run Log"}),(0,s.jsxs)("div",{className:"flex items-center gap-3",children:[(0,s.jsx)("span",{className:"font-mono text-[10px]",children:v?"Streaming":"Idle"}),(0,s.jsx)("button",{onClick:()=>x(!u),className:"hover:text-[var(--foreground)] transition-colors p-1",title:u?"Collapse View":"Expand View",children:u?(0,s.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,s.jsx)("path",{d:"M8 3v3a2 2 0 0 1-2 2H3"}),(0,s.jsx)("path",{d:"M21 8h-3a2 2 0 0 1-2-2V3"}),(0,s.jsx)("path",{d:"M3 16h3a2 2 0 0 1 2 2v3"}),(0,s.jsx)("path",{d:"M16 21v-3a2 2 0 0 1 2-2h3"})]}):(0,s.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,s.jsx)("path",{d:"M15 3h6v6"}),(0,s.jsx)("path",{d:"M9 21H3v-6"}),(0,s.jsx)("path",{d:"M21 3l-7 7"}),(0,s.jsx)("path",{d:"M3 21l7-7"})]})})]})]}),(0,s.jsx)("div",{ref:g,className:"".concat(u?"max-h-[70vh]":"max-h-64"," overflow-y-auto px-3 py-3 font-mono text-xs text-[var(--foreground)] whitespace-pre-wrap leading-relaxed transition-all duration-300 ease-in-out"),children:b.map((e,t)=>(0,s.jsx)("span",{style:e.style,children:e.text},"".concat(t,"-").concat(e.text.length)))})]})]})}let x={task:{label:"This Task",icon:"\uD83D\uDCCC",color:"var(--primary)",bgColor:"var(--primary-muted)",description:"Specific to this task only"},project:{label:"Project",icon:"\uD83D\uDCC1",color:"var(--accent)",bgColor:"var(--accent-muted)",description:"Applies to the whole project"},global:{label:"Playbook",icon:"\uD83D\uDCD6",color:"var(--warning)",bgColor:"var(--warning-muted)",description:"Universal best practices"}};function p(e){var t,r;let{learnings:n,taskId:o,projectContext:l,onAddLearning:i,compact:d=!1}=e,[c,m]=(0,a.useState)(!1),[u,p]=(0,a.useState)(""),[h,v]=(0,a.useState)("task"),[g,f]=(0,a.useState)(!1),b=(null==l?void 0:l.project)?[l.project.id,l.project.slug].filter(Boolean):[],j=(null==l||null==(t=l.project)?void 0:t.name)||(null==l||null==(r=l.project)?void 0:r.slug)||"Project",N=async e=>{if(e.preventDefault(),u.trim()&&!g){f(!0);try{let e="project"===h?b[0]:void 0;await i(u,h,e),p(""),m(!1)}finally{f(!1)}}},y=n.filter(e=>"task"===e.scope&&e.scope_id===o),k=b.length?n.filter(e=>"project"===e.scope&&e.scope_id&&b.includes(e.scope_id)):[],w=n.filter(e=>"global"===e.scope),C=(e,t,r)=>{let a=x[e];return(0,s.jsxs)("div",{className:d?"mb-4":"mb-6",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 ".concat(d?"mb-2":"mb-3"),children:[(0,s.jsx)("span",{className:"w-5 h-5 rounded-lg flex items-center justify-center text-xs",style:{backgroundColor:a.bgColor},children:a.icon}),(0,s.jsxs)("div",{children:[(0,s.jsx)("h4",{className:"text-xs font-semibold",style:{color:a.color},children:r||a.label}),!d&&(0,s.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)]",children:a.description})]})]}),0===t.length?(0,s.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)] py-2 text-center bg-[var(--background)] rounded-lg border border-dashed border-[var(--card-border)]",children:"No learnings yet"}):(0,s.jsx)("ul",{className:"space-y-1.5",children:t.map((e,t)=>(0,s.jsx)("li",{className:"text-xs bg-[var(--background)] rounded-lg ".concat(d?"p-2":"p-3"," border border-[var(--card-border)]\n hover:border-[color-mix(in_srgb,var(--primary)_30%,var(--card-border))] \n transition-colors animate-fade-in-up"),style:{animationDelay:"".concat(30*t,"ms")},children:e.content},e.id))})]})};return(0,s.jsxs)("div",{children:[!d&&(0,s.jsxs)("div",{className:"flex items-center gap-2 mb-4",children:[(0,s.jsx)("span",{className:"text-lg",children:"\uD83D\uDCA1"}),(0,s.jsx)("h3",{className:"text-lg font-semibold",children:"Learnings"}),(0,s.jsx)("span",{className:"text-xs text-[var(--muted-foreground)] bg-[var(--muted)] px-2 py-0.5 rounded-full",children:n.length})]}),c?(0,s.jsxs)("form",{onSubmit:N,className:"".concat(d?"mb-3":"mb-5"," space-y-2 animate-fade-in-up"),children:[(0,s.jsx)("textarea",{value:u,onChange:e=>p(e.target.value),placeholder:"What did you learn?",className:"input resize-none ".concat(d?"h-16 text-xs":"h-20 text-sm"),autoFocus:!0,disabled:g}),(0,s.jsx)("div",{className:"flex gap-1",children:["task","project","global"].map(e=>{let t=x[e],r=h===e,a="project"===e&&0===b.length;return(0,s.jsxs)("button",{type:"button",onClick:()=>v(e),disabled:a,className:"\n flex-1 flex items-center justify-center gap-1 px-1.5 py-1 text-[10px] font-medium rounded-lg\n transition-all duration-200\n ".concat(r?"text-white":"bg-[var(--background)] text-[var(--muted-foreground)] hover:text-[var(--foreground)]","\n ").concat(a?"opacity-40 cursor-not-allowed":"","\n "),style:r?{backgroundColor:t.color}:void 0,children:[(0,s.jsx)("span",{children:t.icon}),!d&&(0,s.jsx)("span",{children:t.label})]},e)})}),(0,s.jsxs)("div",{className:"flex gap-2",children:[(0,s.jsx)("button",{type:"submit",disabled:!u.trim()||g,className:"btn-primary px-2 py-1 text-xs flex items-center gap-1.5",children:g?"...":"Add"}),(0,s.jsx)("button",{type:"button",onClick:()=>{m(!1),p("")},disabled:g,className:"btn-ghost px-2 py-1 text-xs",children:"Cancel"})]})]}):(0,s.jsx)("button",{onClick:()=>m(!0),className:"w-full ".concat(d?"py-2 mb-3":"py-3 mb-5"," border-2 border-dashed border-[var(--card-border)] rounded-xl \n text-[var(--muted-foreground)] hover:text-[var(--foreground)] \n hover:border-[var(--primary)] hover:bg-[var(--primary-muted)]\n transition-all duration-200 text-xs font-medium"),children:(0,s.jsxs)("span",{className:"flex items-center justify-center gap-2",children:[(0,s.jsx)("svg",{className:"w-3.5 h-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 4v16m8-8H4"})}),"Add learning"]})}),C("task",y),b.length>0&&C("project",k,"Project: ".concat(j)),C("global",w,"Global Playbook")]})}let h=[{id:"ideation",icon:"\uD83D\uDCA1",label:"Ideation",prompt:"Research and scope. Define approach, estimate effort.",color:"#737373"},{id:"planning",icon:"\uD83D\uDCCB",label:"Planning",prompt:"Create detailed plan with tasks, milestones, and dependencies.",color:"#525252"},{id:"coding",icon:"\uD83D\uDCBB",label:"Coding",prompt:"Implement based on plan and context. Write clean, tested code.",color:"#2563EB"},{id:"qa",icon:"\uD83E\uDDEA",label:"QA",prompt:"Test thoroughly. Find edge cases. Fix bugs. Verify against requirements.",color:"#7C3AED"},{id:"acceptance",icon:"✓",label:"Acceptance",prompt:"Validate behavior against product requirements.",color:"#6366F1"},{id:"pr",icon:"\uD83D\uDD00",label:"PR",prompt:"Prepare pull request with clear scope and checks.",color:"#0284C7"},{id:"smoke_test",icon:"\uD83D\uDEAC",label:"Smoke Test",prompt:"Run post-merge sanity checks for critical paths.",color:"#0891B2"},{id:"release",icon:"\uD83D\uDE80",label:"Release",prompt:"Ship and verify deployment health.",color:"#059669"},{id:"done",icon:"✅",label:"Done",prompt:"Task finished and shipped.",color:"#16A34A"}];var v=r(8661),g=r.n(v),f=r(154),b=r(758),j=r(7004),N=r(6135),y=r(5963);let k=e=>{let{editor:t}=e;return t?(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-1 p-2 border-b border-[var(--card-border)] mb-2 sticky top-0 bg-[var(--card-bg)] z-10 opacity-90 backdrop-blur-sm",children:[(0,s.jsx)("button",{onClick:()=>t.chain().focus().toggleBold().run(),disabled:!t.can().chain().focus().toggleBold().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("bold")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Bold",children:(0,s.jsx)("span",{className:"font-bold font-serif",children:"B"})}),(0,s.jsx)("button",{onClick:()=>t.chain().focus().toggleItalic().run(),disabled:!t.can().chain().focus().toggleItalic().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("italic")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Italic",children:(0,s.jsx)("span",{className:"italic font-serif",children:"I"})}),(0,s.jsx)("button",{onClick:()=>t.chain().focus().toggleStrike().run(),disabled:!t.can().chain().focus().toggleStrike().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("strike")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Strike",children:(0,s.jsx)("span",{className:"line-through font-serif",children:"S"})}),(0,s.jsx)("div",{className:"w-px h-4 bg-[var(--card-border)] mx-1"}),(0,s.jsx)("button",{onClick:()=>t.chain().focus().toggleCode().run(),disabled:!t.can().chain().focus().toggleCode().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("code")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Code",children:(0,s.jsx)("span",{className:"font-mono text-xs",children:"<>"})}),(0,s.jsx)("button",{onClick:()=>t.chain().focus().toggleCodeBlock().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("codeBlock")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Code Block",children:(0,s.jsx)("span",{className:"font-mono text-xs",children:"CB"})}),(0,s.jsx)("div",{className:"w-px h-4 bg-[var(--card-border)] mx-1"}),(0,s.jsx)("button",{onClick:()=>t.chain().focus().toggleHeading({level:1}).run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("heading",{level:1})?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"H1",children:(0,s.jsx)("span",{className:"font-bold text-xs",children:"H1"})}),(0,s.jsx)("button",{onClick:()=>t.chain().focus().toggleHeading({level:2}).run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("heading",{level:2})?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"H2",children:(0,s.jsx)("span",{className:"font-bold text-xs",children:"H2"})}),(0,s.jsx)("button",{onClick:()=>t.chain().focus().toggleHeading({level:3}).run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("heading",{level:3})?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"H3",children:(0,s.jsx)("span",{className:"font-bold text-xs",children:"H3"})}),(0,s.jsx)("div",{className:"w-px h-4 bg-[var(--card-border)] mx-1"}),(0,s.jsx)("button",{onClick:()=>t.chain().focus().toggleBulletList().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("bulletList")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Bullet List",children:(0,s.jsx)("span",{className:"text-xs",children:"• List"})}),(0,s.jsx)("button",{onClick:()=>t.chain().focus().toggleOrderedList().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("orderedList")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Ordered List",children:(0,s.jsx)("span",{className:"text-xs",children:"1. List"})}),(0,s.jsx)("button",{onClick:()=>t.chain().focus().toggleBlockquote().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("blockquote")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Quote",children:(0,s.jsx)("span",{className:"text-xs serif italic",children:'""'})})]}):null};function w(e){let{content:t,editable:r=!0,onChange:n,onBlur:o,placeholder:l="Add a description..."}=e,i=(0,f.hG)({extensions:[b.A,N.Ay.configure({openOnClick:!1}),j.A.configure({placeholder:l,emptyEditorClass:"is-editor-empty before:content-[attr(data-placeholder)] before:text-[var(--muted-foreground)] before:float-left before:pointer-events-none before:h-0"}),y.o.configure({html:!1,transformPastedText:!0,transformCopiedText:!0})],immediatelyRender:!1,content:t,editable:r,editorProps:{attributes:{class:"prose prose-sm max-w-none focus:outline-none min-h-[100px] text-[var(--foreground)]"}},onUpdate:e=>{let{editor:t}=e;null==n||n(t.storage.markdown.getMarkdown())},onBlur:()=>{null==o||o()}});return(0,a.useEffect)(()=>{i&&t!==i.storage.markdown.getMarkdown()&&!i.isFocused&&i.commands.setContent(t)},[t,i]),(0,s.jsxs)("div",{className:"jsx-cdf669dd826a0677 relative group",children:[r&&(0,s.jsx)(k,{editor:i}),(0,s.jsx)(f.$Z,{editor:i,className:"rich-text-editor"}),(0,s.jsx)(g(),{id:"cdf669dd826a0677",children:".rich-text-editor .ProseMirror{min-height:100px;outline:none}.rich-text-editor .ProseMirror p{margin-bottom:.75em;line-height:1.6}.rich-text-editor .ProseMirror h1{font-size:1.5em;font-weight:700;margin-top:1em;margin-bottom:.5em}.rich-text-editor .ProseMirror h2{font-size:1.25em;font-weight:600;margin-top:1em;margin-bottom:.5em}.rich-text-editor .ProseMirror h3{font-size:1.1em;font-weight:600;margin-top:1em;margin-bottom:.5em}.rich-text-editor .ProseMirror ul{list-style-type:disc;padding-left:1.5em;margin-bottom:.75em}.rich-text-editor .ProseMirror ol{list-style-type:decimal;padding-left:1.5em;margin-bottom:.75em}.rich-text-editor .ProseMirror blockquote{border-left:3px solid var(--card-border);padding-left:1em;font-style:italic;color:var(--muted-foreground)}.rich-text-editor .ProseMirror pre{background:var(--muted);padding:.75em;border-radius:var(--radius-sm);font-family:monospace;overflow-x:auto;margin-bottom:.75em}.rich-text-editor .ProseMirror code{background:var(--muted);padding:.2em .4em;border-radius:var(--radius-sm);font-family:monospace;font-size:.85em}.rich-text-editor .ProseMirror a{color:var(--primary);text-decoration:underline}"})]})}var C=r(91),_=r(2619),S=r.n(_);function A(e){var t,r,a;let{projectContext:n,fallbackProjectSlug:o}=e,l=(null==n?void 0:n.project)||null,i=null!=(t=null==n?void 0:n.repos)?t:[],d=null!=(r=null==n?void 0:n.learnings)?r:[],c=(a=null==l?void 0:l.metadata)&&"object"==typeof a?Object.entries(a).filter(e=>{let[t]=e;return!!t}):[];if(!l)return(0,s.jsxs)("div",{className:"p-4 rounded-2xl border border-dashed border-[var(--card-border)] bg-[var(--card-bg)]/60 space-y-3",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-xs font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Project Context"}),(0,s.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:o?'Task is tagged with "'.concat(o,'" but no structured project context is available yet.'):"This task is not connected to a project. Link it to unlock repo maps, CI/CD notes, and project learnings."})]}),(0,s.jsx)(S(),{href:"/projects",className:"inline-flex items-center justify-center text-xs font-semibold px-3 py-1.5 rounded-full border border-[var(--card-border)] hover:border-[var(--primary)] hover:text-[var(--primary)] transition-colors",children:"Manage Projects"})]});let m=d.slice(0,3),u=d.length-m.length;return(0,s.jsxs)("div",{className:"p-4 rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-xs font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Project Context"}),(0,s.jsx)("h3",{className:"text-base font-semibold leading-tight mt-1",children:l.name}),(0,s.jsx)("p",{className:"text-[11px] uppercase tracking-wide text-[var(--muted-foreground)]",children:l.slug})]}),(0,s.jsx)(S(),{href:"/projects",className:"text-[11px] font-semibold px-2 py-1 rounded-full border border-[var(--card-border)] hover:border-[var(--primary)] hover:text-[var(--primary)] transition-colors",children:"View"})]}),l.description&&(0,s.jsx)("p",{className:"text-sm text-[var(--foreground)] whitespace-pre-line",children:l.description}),l.ci_cd_info&&(0,s.jsxs)("div",{className:"text-xs space-y-1",children:[(0,s.jsx)("p",{className:"font-semibold text-[var(--muted-foreground)] uppercase tracking-wide",children:"CI / CD"}),(0,s.jsx)("p",{className:"text-[var(--foreground)] text-sm",children:l.ci_cd_info})]}),c.length>0&&(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)] mb-2",children:"Metadata"}),(0,s.jsx)("dl",{className:"space-y-1.5",children:c.map(e=>{let[t,r]=e;return(0,s.jsxs)("div",{className:"flex items-start justify-between gap-2 text-xs",children:[(0,s.jsx)("dt",{className:"font-semibold text-[var(--foreground)]",children:t}),(0,s.jsx)("dd",{className:"text-[var(--muted-foreground)] text-right max-w-[160px]",children:"string"==typeof r?r:JSON.stringify(r)})]},t)})})]}),(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,s.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Repository Map"}),(0,s.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:i.length?"".concat(i.length," connected"):"None"})]}),0===i.length?(0,s.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Add repositories to help agents navigate local and remote paths."}):(0,s.jsx)("ul",{className:"space-y-2",children:i.map(e=>(0,s.jsxs)("li",{className:"p-2 rounded-xl border border-[var(--card-border)] bg-[var(--background)] space-y-1 text-xs",children:[(0,s.jsx)("p",{className:"font-semibold text-[var(--foreground)]",children:e.name}),e.path&&(0,s.jsxs)("p",{className:"text-[var(--muted-foreground)]",children:["Path: ",e.path]}),e.git_url&&(0,s.jsxs)("p",{className:"text-[var(--muted-foreground)] break-all",children:["Repo: ",(0,s.jsx)("span",{className:"text-[var(--primary)]",children:e.git_url})]}),e.notes&&(0,s.jsxs)("p",{className:"text-[var(--muted-foreground)]",children:["Notes: ",e.notes]})]},e.id||e.name))})]}),d.length>0&&(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)] mb-2",children:"Project Learnings"}),(0,s.jsx)("ul",{className:"space-y-1 text-xs text-[var(--foreground)]",children:m.map((e,t)=>(0,s.jsxs)("li",{className:"leading-relaxed",children:["• ",e]},"".concat(e,"-").concat(t)))}),u>0&&(0,s.jsxs)("p",{className:"text-[11px] text-[var(--muted-foreground)] mt-1",children:["+",u," more learnings in the panel below"]})]})]})}var D=r(4255),L=r(8251),M=r(683);function E(e){var t;let{taskId:r}=e,{graph:a,isLoading:n,error:o}=(0,M.O)(r),l=a?(0,L.hj)(a):null;return(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between text-[10px] uppercase tracking-wider text-[var(--muted-foreground)]",children:[(0,s.jsx)("span",{children:"Execution Graph"}),l?(0,s.jsxs)("span",{children:[l.mode," • ",l.nodeCount," nodes • v",l.graphVersion]}):(0,s.jsx)("span",{children:n?"Loading…":"Unavailable"})]}),o&&(0,s.jsx)("p",{className:"text-xs text-[var(--destructive)]",children:o}),(0,s.jsx)("div",{className:"space-y-3 rounded-lg border border-[var(--card-border)] bg-[var(--card-bg)] p-3",children:n?(0,s.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Fetching execution graph…"}):a?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(D.A,{graph:a,className:"h-[320px]"}),(0,s.jsxs)("div",{className:"text-xs text-[var(--muted-foreground)]",children:["Progress: ",null!=(t=null==l?void 0:l.progress)?t:0,"%"]})]}):(0,s.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"No execution graph exists for this task yet."})})]})}var T=r(2460);function I(e){if(!e)return"N/A";let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function P(e){let{content:t,onClose:r}=e,n=(0,a.useRef)(null);return(0,a.useEffect)(()=>{let e=e=>{"Escape"===e.key&&r()};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[r]),(0,s.jsx)("div",{ref:n,onClick:e=>{e.target===n.current&&r()},className:"fixed inset-0 z-[70] bg-black/50 backdrop-blur-sm flex items-center justify-center animate-fade-in",children:(0,s.jsxs)("div",{className:"bg-[var(--card-bg)] border border-[var(--card-border)] rounded-xl shadow-2xl w-[min(90vw,800px)] max-h-[85vh] flex flex-col animate-scale-in",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between px-6 py-4 border-b border-[var(--card-border)] flex-shrink-0",children:[(0,s.jsx)("h3",{className:"text-sm font-bold truncate",children:"taskDetail"===t.type?"Task Details":(0,L.v0)(t.nodeId,t.graph.nodes[t.nodeId])}),(0,s.jsx)("button",{onClick:r,className:"p-1.5 hover:bg-[var(--muted)]/60 rounded-lg transition-colors text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:(0,s.jsx)("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2.5,children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18L18 6M6 6l12 12"})})})]}),(0,s.jsx)("div",{className:"flex-1 overflow-y-auto scrollbar-thin",children:"taskDetail"===t.type?(0,s.jsx)(O,{content:t}):(0,s.jsx)(R,{nodeId:t.nodeId,graph:t.graph})})]})})}function O(e){let{content:t}=e;return(0,s.jsxs)("div",{className:"p-6 space-y-6",children:["failed"===t.status&&(0,s.jsxs)("div",{className:"p-3 rounded-lg bg-[var(--status-failed-bg)] border border-[var(--status-failed)] text-[var(--status-failed)] text-sm",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"font-bold text-xs uppercase tracking-wider",children:"Task Failed"}),(0,s.jsx)("button",{onClick:t.onRetry,className:"text-xs font-bold uppercase hover:underline",children:"Retry"})]}),(0,s.jsx)("p",{className:"text-xs mt-1",children:t.failureMessage||"Task marked failed."})]}),"blocked"===t.status&&(0,s.jsxs)("div",{className:"p-3 rounded-lg bg-[var(--status-blocked-bg)] border border-[var(--status-blocked)] text-[var(--status-blocked)] text-sm",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"font-bold text-xs uppercase tracking-wider",children:"Blocked"}),(0,s.jsx)("button",{onClick:t.onUnblock,className:"text-xs font-bold uppercase hover:underline",children:"Unblock"})]}),(0,s.jsx)("p",{className:"text-xs mt-1",children:t.blockedMessage||"Task is blocked."})]}),(0,s.jsx)("input",{type:"text",value:t.title,onChange:e=>t.onTitleChange(e.target.value),placeholder:"Task title...",className:"w-full text-xl font-bold bg-transparent border-none outline-none text-[var(--foreground)] placeholder:text-[var(--muted-foreground)]/50"}),(0,s.jsx)("div",{className:"min-h-[100px]",children:(0,s.jsx)(w,{content:t.description,onChange:t.onDescriptionChange,placeholder:"Add more detail to this task..."})}),(0,s.jsx)("div",{className:"border-t border-[var(--card-border)] pt-6",children:(0,s.jsx)(u,{taskId:t.taskId,status:t.status})}),(0,s.jsxs)("div",{className:"border-t border-[var(--card-border)] pt-6",children:[(0,s.jsxs)("h4",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)] mb-4 flex items-center justify-between",children:[(0,s.jsx)("span",{children:"Comments"}),(0,s.jsx)("span",{className:"text-[10px] bg-[var(--muted)] px-2 py-0.5 rounded-full",children:t.comments.length})]}),(0,s.jsx)(o,{comments:t.comments,onAddComment:t.onAddComment,onDeleteComment:t.onDeleteComment})]})]})}function R(e){let{nodeId:t,graph:r}=e,a=r.nodes[t];return a?(0,s.jsxs)("div",{className:"p-6 space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"text-[10px] font-bold uppercase px-2 py-0.5 rounded bg-[var(--muted)] text-[var(--muted-foreground)]",children:a.type}),(0,s.jsx)("span",{className:"text-[10px] font-bold uppercase px-2 py-0.5 rounded node-inspector__status--".concat(a.status),children:(0,L.yd)(a.status)})]}),(0,s.jsxs)("div",{className:"grid grid-cols-[120px_1fr] gap-x-4 gap-y-2 text-sm",children:[(0,s.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Node ID"}),(0,s.jsx)("code",{className:"text-xs font-mono",children:t}),(0,s.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Dependencies"}),(0,s.jsx)("span",{children:a.deps.length>0?a.deps.join(", "):"None"}),(0,s.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Started"}),(0,s.jsx)("span",{children:I(a.startedAt)}),(0,s.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Completed"}),(0,s.jsx)("span",{children:I(a.completedAt)})]}),"root"===a.type&&(0,s.jsx)(F,{node:a}),"work"===a.type&&(0,s.jsx)(B,{node:a}),"gate"===a.type&&(0,s.jsx)(z,{node:a})]}):(0,s.jsx)("div",{className:"p-6 text-sm text-[var(--muted-foreground)]",children:"Node not found."})}function F(e){let{node:t}=e,r=(0,T.E)(t.objective,t.title);return(0,s.jsxs)("div",{className:"border-t border-[var(--card-border)] pt-4 space-y-3",children:[(0,s.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Objective"}),(0,s.jsx)("p",{className:"text-sm",children:r||"No objective defined."}),t.criteria&&t.criteria.length>0&&(0,s.jsxs)("div",{children:[(0,s.jsx)("h5",{className:"text-xs font-semibold text-[var(--muted-foreground)] mb-2",children:"Success Criteria"}),(0,s.jsx)("ul",{className:"space-y-1",children:t.criteria.map((e,t)=>(0,s.jsxs)("li",{className:"text-sm flex items-start gap-2",children:[(0,s.jsx)("span",{className:"text-[var(--muted-foreground)] mt-1",children:"•"}),(0,s.jsx)("span",{children:e})]},t))})]})]})}function B(e){let{node:t}=e;return(0,s.jsxs)("div",{className:"border-t border-[var(--card-border)] pt-4 space-y-3",children:[(0,s.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Work Node"}),t.description&&(0,s.jsx)("p",{className:"text-sm",children:t.description}),(0,s.jsxs)("div",{className:"grid grid-cols-[120px_1fr] gap-x-4 gap-y-2 text-sm",children:[t.workType&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Work Type"}),(0,s.jsx)("span",{children:t.workType})]}),(0,s.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Attempts"}),(0,s.jsxs)("span",{children:[t.attempts," / ",t.maxAttempts]}),(0,s.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Retry Policy"}),(0,s.jsx)("span",{children:t.retryPolicy.onExhaust}),void 0!==t.estimateMinutes&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Estimate"}),(0,s.jsxs)("span",{children:[t.estimateMinutes,"m"]})]})]}),(0,s.jsx)(W,{title:"Where",items:t.where}),(0,s.jsx)(W,{title:"What Changes",items:t.whatChanges}),(0,s.jsx)(W,{title:"Acceptance Criteria",items:t.acceptanceCriteria}),(0,s.jsx)(W,{title:"To Dos",items:t.todos}),(0,s.jsx)(W,{title:"Verification",items:t.verification}),t.output&&Object.keys(t.output).length>0&&(0,s.jsxs)("details",{className:"mt-2",children:[(0,s.jsx)("summary",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)] cursor-pointer",children:"Output"}),(0,s.jsx)("pre",{className:"mt-2 text-xs font-mono bg-[var(--muted)]/30 rounded-lg p-3 overflow-x-auto whitespace-pre-wrap max-h-60 overflow-y-auto",children:JSON.stringify(t.output,null,2)})]})]})}function W(e){let{title:t,items:r}=e;return Array.isArray(r)&&0!==r.length?(0,s.jsxs)("div",{children:[(0,s.jsx)("h5",{className:"text-xs font-semibold text-[var(--muted-foreground)] mb-2",children:t}),(0,s.jsx)("ul",{className:"space-y-1",children:r.map((e,r)=>(0,s.jsxs)("li",{className:"text-sm flex items-start gap-2",children:[(0,s.jsx)("span",{className:"text-[var(--muted-foreground)] mt-1",children:"•"}),(0,s.jsx)("span",{children:e})]},"".concat(t,"-").concat(r)))})]}):null}function z(e){let{node:t}=e;return(0,s.jsxs)("div",{className:"border-t border-[var(--card-border)] pt-4 space-y-3",children:[(0,s.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Gate"}),(0,s.jsxs)("div",{className:"grid grid-cols-[120px_1fr] gap-x-4 gap-y-2 text-sm",children:[(0,s.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Gate Type"}),(0,s.jsx)("span",{children:t.gateType}),(0,s.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Required"}),(0,s.jsx)("span",{children:t.required?"Yes":"No"}),(0,s.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Strategy"}),(0,s.jsx)("span",{children:t.verificationStrategy.type})]}),t.verificationStrategy.checks&&t.verificationStrategy.checks.length>0&&(0,s.jsxs)("div",{children:[(0,s.jsx)("h5",{className:"text-xs font-semibold text-[var(--muted-foreground)] mb-2",children:"Checks"}),(0,s.jsx)("ul",{className:"space-y-1",children:t.verificationStrategy.checks.map((e,r)=>{var a,n;let o=null==(n=t.verificationResult)||null==(a=n.checks)?void 0:a.find(t=>t.check===e);return(0,s.jsxs)("li",{className:"text-sm flex items-center gap-2",children:[(0,s.jsx)("span",{className:o?o.passed?"text-green-600":"text-red-600":"text-[var(--muted-foreground)]",children:o?o.passed?"✓":"✗":"○"}),(0,s.jsx)("span",{children:e})]},r)})})]})]})}var q=r(8545);let H={queued:{label:"Queued",color:"var(--status-queued)",bgColor:"var(--status-queued-bg)"},in_progress:{label:"In Progress",color:"var(--status-in-progress)",bgColor:"var(--status-in-progress-bg)"},blocked:{label:"Blocked",color:"var(--status-blocked)",bgColor:"var(--status-blocked-bg)"},completed:{label:"Completed",color:"var(--status-completed)",bgColor:"var(--status-completed-bg)"},failed:{label:"Failed",color:"var(--status-failed)",bgColor:"var(--status-failed-bg)"}},V=["queued","in_progress","blocked","completed","failed"];function G(e){if(!e)return"N/A";let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function U(e){let t=(e.log_type||"output").toLowerCase();return"output"===t?e.content||"":"[".concat(t,"] ").concat(e.content||"")}function K(e){var t,r,l,i,d,c,m,x,v,g,f,b;let{task:j,comments:N,learnings:y,projectContext:k,projects:_,stage_config:S,stages:T,isDraft:I=!1,isCreating:O=!1,onClose:R,onAddComment:F,onDeleteComment:B,onAddLearning:W,onUpdate:z,onDelete:K}=e,{providers:$}=(0,q.u)(),{projects:Y}=(0,C.Y)(),{graph:J,isLoading:X}=(0,M.O)(I?void 0:j.id),Z=!!J,ee=J?(0,L.hj)(J):null,et=I||Z||!X,[er,es]=(0,a.useState)(!1),[ea,en]=(0,a.useState)(!1),[eo,el]=(0,a.useState)(null),[ei,ed]=(0,a.useState)(!1),[ec,em]=(0,a.useState)(""),[eu,ex]=(0,a.useState)(null),[ep,eh]=(0,a.useState)(!1),[ev,eg]=(0,a.useState)(360),[ef,eb]=(0,a.useState)(!1);(0,a.useRef)(null);let ej=()=>eb(!1),eN=e=>{if(ef){let t=window.innerWidth-e.clientX;t>240&&t<800&&eg(t)}};(0,a.useEffect)(()=>(ef&&(window.addEventListener("mousemove",eN),window.addEventListener("mouseup",ej)),()=>{window.removeEventListener("mousemove",eN),window.removeEventListener("mouseup",ej)}),[ef]);let[ey,ek]=(0,a.useState)(j.provider||""),[ew,eC]=(0,a.useState)(j.model||""),[e_,eS]=(0,a.useState)(null!=(i=j.swarm)&&i),[eA,eD]=(0,a.useState)(j.approval_mode||"manual"),[eL,eM]=(0,a.useState)([]),[eE,eT]=(0,a.useState)("gemini"),[eI,eP]=(0,a.useState)(""),[eO,eR]=(0,a.useState)(!1),[eF,eB]=(0,a.useState)(null),eW=j.resolved_provider||(null==S?void 0:S.provider)||"gemini",ez=j.resolved_model||(null==S?void 0:S.model)||"",eq=null!=(c=null!=(d=j.swarm)?d:null==S?void 0:S.swarm)&&c;j.resolved_swarm_models||null==S||S.swarm_models;let eH=null!=(m=null!=k?k:j.project_context)?m:null,eV=null!=(v=null!=(x=null==eH||null==(t=eH.project)?void 0:t.slug)?x:j.project)?v:null,[eG,eU]=(0,a.useState)(j.title||""),[eK,eQ]=(0,a.useState)(""),e$=e=>{let t=e.match(/^---\n[\s\S]*?\n---\n([\s\S]*)$/);return(t?t[1]:e).replace(/^#\s+.+(\r?\n|$)/,"").trim()};(0,a.useEffect)(()=>{var e;ek(j.provider||""),eC(j.model||""),eS(null!=(e=j.swarm)&&e),eD(j.approval_mode||"manual"),eM(Array.isArray(j.swarm_models)?j.swarm_models.filter(e=>e&&"string"==typeof e.provider&&"string"==typeof e.model).map(e=>({provider:e.provider.trim(),model:e.model.trim()})).filter(e=>e.provider&&e.model):[])},[j.provider,j.model,j.swarm,j.approval_mode,j.swarm_models,j.id]),(0,a.useEffect)(()=>{eU(j.title||"")},[j.title,j.id]),(0,a.useEffect)(()=>{var e;eQ((null!=(e=j.description)?e:e$(j.content||"")).replace(/^#\s+.+(\r?\n|$)/,"").trim())},[j.content,j.description,j.id]),(0,a.useEffect)(()=>{let e=!1;if("failed"!==j.status){em(""),ex(null),eh(!1);return}return(async()=>{eh(!0),ex(null);try{let t=await fetch("/api/tasks/".concat(j.id,"/logs?tail=200")),r=await t.json().catch(()=>({}));if(!t.ok)throw Error((null==r?void 0:r.error)||"Failed to load logs (".concat(t.status,")"));let s=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2e4,r=Array.isArray(e)?e:[];if(!r.length)return"";let s=r.slice().sort((e,t)=>e.created_at===t.created_at?e.id.localeCompare(t.id):e.created_at.localeCompare(t.created_at)),a=s.filter(e=>"error"===(e.log_type||"").toLowerCase()),n=s.filter(e=>{let t=String(e.content||"");return t.includes("[execution/")&&(t.includes("stderr_tail:")||t.includes("stdout_tail:")||t.includes(" phase error")||t.includes(" error=")||t.includes(" exit="))}),o=(a.length>0?a.slice(-8):n.length>0?n.slice(-4):s.slice(-12)).map(U).join("\n");return o?o.length>t?o.slice(-t):o:""}((null==r?void 0:r.logs)||[]);e||em(s)}catch(t){e||ex(t instanceof Error?t.message:String(t))}finally{e||eh(!1)}})(),()=>{e=!0}},[j.id,j.status]);let eY=async()=>{ed(!0);try{await (null==K?void 0:K())}finally{ed(!1),en(!1)}},eJ=(0,n.YQ)(async e=>{var t;let r=(null!=(t=j.description)?t:e$(j.content||"")).replace(/^#\s+.+(\r?\n|$)/,"").trim();I||e===r||await z({description:e})},1e3),eX=e=>{eQ(e),I||eJ(e)},eZ=(0,n.YQ)(async e=>{if(!I&&e!==(j.title||"")){eR(!0);try{await z({title:e})}finally{eR(!1)}}},1e3),e0=e=>{eU(e),I||eZ(e)},e1=(0,n.YQ)(async e=>{eR(!0),eB(null);try{await z(e)}catch(e){eB(e instanceof Error?e.message:"Failed to update settings")}finally{eR(!1)}},1e3),e2=async e=>{let t="done"===e?"completed":"ideation"===e?"queued":"in_progress";if(I)return void await z({stage:e,status:t});await z({stage:e,status:t})},e5=async()=>{try{await e3("queued")}catch(e){console.error("Failed to retry task",e)}},e4=async()=>{try{await e3("queued")}catch(e){console.error("Failed to unblock task",e)}},e3=async e=>{let t={status:e};"queued"===e&&(t.started_at=null,t.completed_at=null,t.error=void 0),"completed"!==e&&"failed"!==e&&"blocked"!==e||j.completed_at||(t.completed_at=new Date().toISOString()),await z(t)};H[j.status||"queued"];let e6=j.stage_decisions||{},e7=j.stage?e6[j.stage]:void 0,e8=function(e,t){if(!e||"object"!=typeof e)return null;let r=Object.entries(e).filter(e=>{let[,r]=e;return!!(r&&t(r))}).sort((e,t)=>{var r,s;let a=Date.parse((null==(r=e[1])?void 0:r.decided_at)||""),n=Date.parse((null==(s=t[1])?void 0:s.decided_at)||"");return(Number.isNaN(n)?0:n)-(Number.isNaN(a)?0:a)});if(!r.length)return null;let[s,a]=r[0];return{stage:s,decision:a}}(e6,e=>"failed"===e.decision),e9=Object.entries(e6).filter(e=>{let[,t]=e;return(null==t?void 0:t.decision)==="blocked"}).sort((e,t)=>{var r,s;let a=Date.parse((null==(r=e[1])?void 0:r.decided_at)||""),n=Date.parse((null==(s=t[1])?void 0:s.decided_at)||"");return(Number.isNaN(n)?0:n)-(Number.isNaN(a)?0:a)})[0],te=(null==e7?void 0:e7.decision)==="blocked"?j.stage:null==e9?void 0:e9[0],tt=te&&e6[te]?e6[te]:void 0,tr=function(e,t){let r="string"==typeof e?e.trim():"";return r||("string"==typeof t?t.trim():"")||null}(j.blocked_reason,null==tt?void 0:tt.rationale),ts="string"==typeof j.error&&j.error.trim()?j.error.trim():((null==e8||null==(r=e8.decision)?void 0:r.rationale)||(null==e8||null==(l=e8.decision)?void 0:l.final_result)||"").trim()||"Task marked failed.";if(!et)return(0,s.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-[var(--background)]",children:(0,s.jsx)("span",{className:"text-sm text-[var(--muted-foreground)] animate-pulse",children:"Loading..."})});if(Z&&J){let e={taskId:j.id,title:eG,description:eK,status:j.status||"queued",stage:j.stage};return(0,s.jsxs)("div",{className:"fixed inset-0 z-50 flex flex-col bg-[var(--background)] text-[var(--foreground)]",children:[(0,s.jsxs)("header",{className:"flex items-center px-6 py-4 border-b border-[var(--card-border)] bg-[var(--card-bg)] z-50 shadow-sm flex-shrink-0",children:[(0,s.jsx)("button",{onClick:R,className:"p-2 hover:bg-[var(--muted)]/60 rounded-lg transition-colors mr-4 text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:(0,s.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2.5,children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15 19l-7-7 7-7"})})}),(0,s.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,s.jsxs)("div",{className:"flex items-center gap-3",children:[(0,s.jsx)("h2",{className:"text-lg font-bold tracking-tight truncate",children:eG||"Untitled"}),(0,s.jsxs)("span",{className:"px-2 py-0.5 bg-[var(--primary)] text-white text-[9px] font-bold rounded uppercase tracking-widest flex-shrink-0",children:["v",J.graphVersion]}),(0,s.jsxs)("span",{className:"px-2 py-0.5 bg-[var(--muted)] border border-[var(--card-border)] text-[var(--muted-foreground)] text-[9px] font-bold rounded uppercase tracking-widest flex-shrink-0",children:[null!=(g=null==ee?void 0:ee.progress)?g:0,"% Complete"]})]}),(0,s.jsxs)("div",{className:"flex gap-3 mt-0.5 text-[10px] text-[var(--muted-foreground)] font-medium",children:[(0,s.jsx)("span",{className:"font-mono",children:j.slug||j.id.slice(0,8)}),(0,s.jsx)("span",{children:"\xb7"}),(0,s.jsx)("span",{className:"capitalize",children:j.stage||"—"})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0",children:[eO&&(0,s.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] animate-pulse flex items-center gap-1 mr-2",children:[(0,s.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--primary)]"}),"Saving..."]}),K&&(0,s.jsx)("button",{onClick:()=>en(!0),className:"btn-ghost p-2 rounded hover:bg-[var(--destructive-muted)] hover:text-[var(--destructive)]",title:"Delete Task",children:(0,s.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})})})]})]}),ea&&(0,s.jsx)("div",{className:"absolute inset-0 bg-black/60 backdrop-blur-sm flex items-center justify-center z-[60] animate-fade-in",children:(0,s.jsxs)("div",{className:"modal-content p-6 max-w-sm mx-4 animate-scale-in bg-[var(--card-bg)] rounded-xl",children:[(0,s.jsx)("h3",{className:"text-lg font-bold mb-2",children:"Delete Task?"}),(0,s.jsxs)("p",{className:"text-[var(--muted-foreground)] text-sm mb-6",children:["Are you sure you want to delete ",(0,s.jsx)("strong",{className:"text-[var(--foreground)]",children:j.slug||j.id.slice(0,6)}),"? This cannot be undone."]}),(0,s.jsxs)("div",{className:"flex justify-end gap-3",children:[(0,s.jsx)("button",{onClick:()=>en(!1),disabled:ei,className:"btn-ghost",children:"Cancel"}),(0,s.jsx)("button",{onClick:eY,disabled:ei,className:"btn-destructive px-4 py-2 rounded-md",children:ei?"Deleting...":"Delete"})]})]})}),(0,s.jsxs)("div",{className:"flex-1 flex flex-col relative overflow-hidden",children:[(0,s.jsxs)("div",{className:"absolute top-3 left-3 z-10 flex items-center gap-2 text-[10px] uppercase tracking-wider text-[var(--muted-foreground)] bg-[var(--card-bg)]/90 backdrop-blur-sm border border-[var(--card-border)] rounded-lg px-3 py-2 shadow-lg",children:[(0,s.jsx)("span",{className:"font-semibold",children:null==ee?void 0:ee.mode}),(0,s.jsx)("span",{className:"opacity-40",children:"|"}),(0,s.jsxs)("span",{children:[null==ee?void 0:ee.nodeCount," nodes"]}),(0,s.jsx)("span",{className:"opacity-40",children:"|"}),(0,s.jsxs)("span",{children:["v",null==ee?void 0:ee.graphVersion]}),(0,s.jsx)("span",{className:"opacity-40",children:"|"}),(0,s.jsxs)("span",{className:"flex items-center gap-1",children:[(0,s.jsx)("span",{className:"w-2 h-2 rounded-full bg-[var(--status-completed)]"}),"Done"]}),(0,s.jsxs)("span",{className:"flex items-center gap-1",children:[(0,s.jsx)("span",{className:"w-2 h-2 rounded-full bg-[var(--status-in-progress)] animate-pulse"}),"Running"]}),(0,s.jsxs)("span",{className:"flex items-center gap-1",children:[(0,s.jsx)("span",{className:"w-2 h-2 rounded-full bg-[var(--muted-foreground)]/40"}),"Pending"]})]}),(0,s.jsx)("div",{className:"flex-1",children:(0,s.jsx)(D.A,{graph:J,className:"h-full",taskDetailNode:e,onNodeClick:e=>{let t;t=e===D.r?{type:"taskDetail",taskId:j.id,title:eG,description:eK,status:j.status||"queued",failureMessage:ts,blockedMessage:tr||void 0,onTitleChange:e0,onDescriptionChange:eX,onRetry:e5,onUnblock:e4,comments:N,onAddComment:F,onDeleteComment:B}:{type:"graphNode",nodeId:e,graph:J},el(t)}})}),(0,s.jsxs)("div",{className:"border-t border-[var(--card-border)] bg-[var(--card-bg)] px-6 py-3 flex items-center gap-3 overflow-x-auto flex-shrink-0",children:[(0,s.jsx)("span",{className:"text-[10px] font-semibold uppercase tracking-widest text-[var(--muted-foreground)] flex-shrink-0",children:"Timeline"}),(0,s.jsxs)("div",{className:"flex items-center relative flex-1",children:[(0,s.jsx)("div",{className:"absolute top-1/2 left-0 right-0 h-px bg-[var(--card-border)]"}),(0,s.jsx)("div",{className:"flex items-center gap-6 relative z-10",children:Array.from({length:J.graphVersion},(e,t)=>t+1).map(e=>{let t=J.versionHistory.find(t=>"replan"===t.eventType&&t.toVersion===e||"rollback"===t.eventType),r=e===J.graphVersion;return(0,s.jsxs)("div",{className:"flex flex-col items-center group cursor-pointer",children:[(0,s.jsx)("div",{className:"w-3 h-3 rounded-full border-2 border-[var(--card-bg)] transition-transform group-hover:scale-125 ".concat(r?"bg-[var(--primary)] ring-4 ring-[var(--primary)]/20 scale-110":"bg-[var(--muted-foreground)]/40")}),(0,s.jsxs)("span",{className:"text-[9px] font-bold mt-1 uppercase ".concat(r?"text-[var(--primary)]":"text-[var(--muted-foreground)]"),children:["v",e]}),t&&(0,s.jsx)("span",{className:"text-[8px] text-[var(--muted-foreground)]",children:t.eventType})]},e)})})]})]})]}),eo&&(0,s.jsx)(P,{content:eo,onClose:()=>el(null)})]})}return(0,s.jsxs)("div",{className:"fixed inset-0 z-50 flex flex-col bg-[var(--background)] text-[var(--foreground)]",children:[(0,s.jsxs)("header",{className:"flex items-center px-6 py-4 border-b border-[var(--card-border)] bg-[var(--card-bg)] z-50 shadow-sm flex-shrink-0",children:[(0,s.jsx)("button",{onClick:R,className:"p-2 hover:bg-[var(--muted)]/60 rounded-lg transition-colors mr-4 text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:(0,s.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2.5,children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15 19l-7-7 7-7"})})}),(0,s.jsx)("div",{className:"flex-1 min-w-0",children:(0,s.jsx)("span",{className:"text-[var(--muted-foreground)] font-mono text-sm",children:I?"New Task":j.slug||j.id.slice(0,6)})}),(0,s.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0",children:[I&&(0,s.jsx)("button",{onClick:()=>{var e,t;if(!eK.trim())return;let r="done"===j.stage?"completed":"ideation"===j.stage?"queued":"in_progress";z({title:eG,description:eK,stage:j.stage,status:r,project:null!=(e=j.project)?e:null,project_id:null!=(t=j.project_id)?t:null,provider:ey||void 0,model:ew||void 0,swarm:e_,approval_mode:eA,swarm_models:e_?eL:[]})},disabled:O||!eK.trim(),className:"btn-primary px-4 py-2 rounded-md text-sm font-medium disabled:opacity-50 disabled:cursor-not-allowed",children:O?"Creating...":"Create Task"}),!I&&eO&&(0,s.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] animate-pulse flex items-center gap-1 mr-2",children:[(0,s.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--primary)]"}),"Saving..."]}),!I&&K&&(0,s.jsx)("button",{onClick:()=>en(!0),className:"btn-ghost p-2 rounded hover:bg-[var(--destructive-muted)] hover:text-[var(--destructive)]",title:"Delete Task",children:(0,s.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})})})]})]}),ea&&(0,s.jsx)("div",{className:"absolute inset-0 bg-black/60 backdrop-blur-sm flex items-center justify-center z-[60] animate-fade-in",children:(0,s.jsxs)("div",{className:"modal-content p-6 max-w-sm mx-4 animate-scale-in bg-[var(--card-bg)] rounded-xl",children:[(0,s.jsx)("h3",{className:"text-lg font-bold mb-2",children:"Delete Task?"}),(0,s.jsxs)("p",{className:"text-[var(--muted-foreground)] text-sm mb-6",children:["Are you sure you want to delete ",(0,s.jsx)("strong",{className:"text-[var(--foreground)]",children:j.slug||j.id.slice(0,6)}),"? This cannot be undone."]}),(0,s.jsxs)("div",{className:"flex justify-end gap-3",children:[(0,s.jsx)("button",{onClick:()=>en(!1),disabled:ei,className:"btn-ghost",children:"Cancel"}),(0,s.jsx)("button",{onClick:eY,disabled:ei,className:"btn-destructive px-4 py-2 rounded-md",children:ei?"Deleting...":"Delete"})]})]})}),(0,s.jsxs)("div",{className:"flex flex-1 overflow-hidden bg-[var(--muted)]/30",children:[(0,s.jsx)("div",{className:"flex-1 overflow-y-auto scrollbar-thin",children:(0,s.jsxs)("div",{className:"max-w-4xl mx-auto min-h-full bg-[var(--card-bg)] border-x border-[var(--card-border)] p-12 shadow-sm",children:[!I&&"failed"===j.status&&(0,s.jsxs)("div",{className:"mb-8 p-4 rounded-lg bg-[var(--status-failed-bg)] border border-[var(--status-failed)] text-[var(--status-failed)]",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})}),(0,s.jsx)("span",{className:"font-bold text-sm uppercase tracking-wider",children:"Task Execution Failed"})]}),(0,s.jsx)("button",{onClick:e5,className:"btn-ghost px-3 py-1 text-xs font-bold bg-white/20 rounded hover:bg-white/30 transition-colors uppercase",children:"Retry Task"})]}),(0,s.jsx)("p",{className:"text-sm font-medium",children:ts}),(0,s.jsxs)("div",{className:"mt-3 text-xs rounded-md border border-[var(--status-failed)]/40 bg-white/50 p-3",children:[(0,s.jsx)("h4",{className:"font-semibold uppercase tracking-wider mb-2",children:"Failure Metadata"}),(0,s.jsxs)("div",{className:"grid grid-cols-[140px_1fr] gap-x-3 gap-y-1.5",children:[(0,s.jsx)("span",{className:"opacity-70",children:"Stage"}),(0,s.jsx)("span",{className:"font-medium",children:j.stage||(null==e8?void 0:e8.stage)||"N/A"}),(0,s.jsx)("span",{className:"opacity-70",children:"Exit Code"}),(0,s.jsx)("span",{className:"font-mono",children:null!=(f=j.exit_code)?f:"N/A"}),(0,s.jsx)("span",{className:"opacity-70",children:"PID"}),(0,s.jsx)("span",{className:"font-mono",children:null!=(b=j.pid)?b:"N/A"}),(0,s.jsx)("span",{className:"opacity-70",children:"Completed At"}),(0,s.jsx)("span",{className:"font-medium",children:G(j.completed_at)}),(null==e8?void 0:e8.decision)&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"opacity-70",children:"Decision"}),(0,s.jsx)("span",{className:"font-medium",children:e8.decision.decision}),(0,s.jsx)("span",{className:"opacity-70",children:"Rationale"}),(0,s.jsx)("span",{className:"font-medium break-words",children:e8.decision.rationale||"N/A"}),(0,s.jsx)("span",{className:"opacity-70",children:"Final Result"}),(0,s.jsx)("span",{className:"font-medium break-words",children:e8.decision.final_result||"N/A"}),(0,s.jsx)("span",{className:"opacity-70",children:"Decided At"}),(0,s.jsx)("span",{className:"font-medium",children:G(e8.decision.decided_at)})]})]})]}),(ep||ec||eu)&&(0,s.jsxs)("details",{className:"mt-3",open:!0,children:[(0,s.jsx)("summary",{className:"cursor-pointer select-none text-xs font-semibold uppercase tracking-wider opacity-90",children:"Error Details"}),(0,s.jsxs)("div",{className:"mt-2 rounded-md border border-[var(--status-failed-border)] bg-[var(--status-failed-bg)]",children:[(0,s.jsxs)("div",{className:"px-3 py-2 border-b border-[var(--status-failed-border)] text-[10px] uppercase tracking-widest text-[var(--status-failed)] flex items-center justify-between",children:[(0,s.jsx)("span",{children:"Log Excerpt"}),(0,s.jsx)("span",{className:"font-mono",children:ep?"Loading...":eu?"Unavailable":"Ready"})]}),(0,s.jsx)("pre",{className:"px-3 py-3 text-xs font-mono whitespace-pre-wrap max-h-64 overflow-y-auto",children:eu?"Failed to load error details: ".concat(eu):ec||"No error logs found."})]})]})]}),!I&&"blocked"===j.status&&(0,s.jsxs)("div",{className:"mb-8 p-4 rounded-lg bg-[var(--status-blocked-bg)] border border-[var(--status-blocked)] text-[var(--status-blocked)]",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z"})}),(0,s.jsx)("span",{className:"font-bold text-sm uppercase tracking-wider",children:"Task Blocked"})]}),(0,s.jsx)("button",{onClick:e4,className:"btn-ghost px-3 py-1 text-xs font-bold bg-white/20 rounded hover:bg-white/30 transition-colors uppercase",children:"Unblock Task"})]}),(0,s.jsx)("p",{className:"text-sm opacity-90 pl-7 mb-4",children:tr||"Task is blocked and requires manual intervention."}),(0,s.jsxs)("div",{className:"ml-7 text-xs rounded-md border border-[var(--status-blocked)]/40 bg-white/50 p-3",children:[(0,s.jsx)("h4",{className:"font-semibold uppercase tracking-wider mb-2",children:"Blocked Metadata"}),(0,s.jsxs)("div",{className:"grid grid-cols-[140px_1fr] gap-x-3 gap-y-1.5",children:[(0,s.jsx)("span",{className:"opacity-70",children:"Decision Stage"}),(0,s.jsx)("span",{className:"font-medium",children:te||j.stage||"N/A"}),(0,s.jsx)("span",{className:"opacity-70",children:"Decision"}),(0,s.jsx)("span",{className:"font-medium",children:(null==tt?void 0:tt.decision)||"blocked"}),(0,s.jsx)("span",{className:"opacity-70",children:"Final Result"}),(0,s.jsx)("span",{className:"font-medium break-words",children:(null==tt?void 0:tt.final_result)||"N/A"}),(0,s.jsx)("span",{className:"opacity-70",children:"Rationale"}),(0,s.jsx)("span",{className:"font-medium break-words",children:(null==tt?void 0:tt.rationale)||"N/A"}),(0,s.jsx)("span",{className:"opacity-70",children:"Decided At"}),(0,s.jsx)("span",{className:"font-medium",children:G(null==tt?void 0:tt.decided_at)}),(0,s.jsx)("span",{className:"opacity-70",children:"Workflow ID"}),(0,s.jsx)("span",{className:"font-mono break-all",children:j.workflow_id||"N/A"}),(0,s.jsx)("span",{className:"opacity-70",children:"Workflow Run ID"}),(0,s.jsx)("span",{className:"font-mono break-all",children:j.workflow_run_id||"N/A"}),(0,s.jsx)("span",{className:"opacity-70",children:"Orchestration Status"}),(0,s.jsx)("span",{className:"font-medium",children:j.orchestration_status||"N/A"}),(0,s.jsx)("span",{className:"opacity-70",children:"Last Orchestration Update"}),(0,s.jsx)("span",{className:"font-medium",children:G(j.last_orchestration_update)}),(0,s.jsx)("span",{className:"opacity-70",children:"Started At"}),(0,s.jsx)("span",{className:"font-medium",children:G(j.started_at)}),(0,s.jsx)("span",{className:"opacity-70",children:"Completed At"}),(0,s.jsx)("span",{className:"font-medium",children:G(j.completed_at)})]})]})]}),(0,s.jsx)("input",{type:"text",value:eG,onChange:e=>e0(e.target.value),placeholder:"Task title...",className:"w-full text-2xl font-bold bg-transparent border-none outline-none text-[var(--foreground)] placeholder:text-[var(--muted-foreground)]/50 mb-4"}),(0,s.jsx)("div",{className:"mb-12 min-h-[150px]",children:(0,s.jsx)(w,{content:eK,onChange:eX,placeholder:I?"Describe the task...":"Add more detail to this task..."})}),!I&&(0,s.jsx)(u,{taskId:j.id,status:j.status}),!I&&j.history&&j.history.length>0&&(0,s.jsxs)("div",{className:"mt-12 border-t border-[var(--card-border)] pt-8",children:[(0,s.jsx)("h3",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)] mb-4",children:"Execution History"}),(0,s.jsx)("div",{className:"overflow-x-auto",children:(0,s.jsxs)("table",{className:"w-full text-sm text-left",children:[(0,s.jsx)("thead",{className:"text-xs text-[var(--muted-foreground)] border-b border-[var(--card-border)]",children:(0,s.jsxs)("tr",{children:[(0,s.jsx)("th",{className:"py-2 pr-4 font-medium",children:"Started"}),(0,s.jsx)("th",{className:"py-2 pr-4 font-medium",children:"Duration"}),(0,s.jsx)("th",{className:"py-2 pr-4 font-medium",children:"PID"}),(0,s.jsx)("th",{className:"py-2 pr-4 font-medium",children:"Exit Code"})]})}),(0,s.jsx)("tbody",{className:"divide-y divide-[var(--card-border)]",children:j.history.map(e=>{var t,r;return(0,s.jsxs)("tr",{className:"hover:bg-[var(--muted)]/20 transition-colors",children:[(0,s.jsx)("td",{className:"py-2 pr-4 font-mono text-xs opacity-80",children:e.started_at?new Date(e.started_at).toLocaleString():"N/A"}),(0,s.jsx)("td",{className:"py-2 pr-4 font-mono text-xs opacity-80",children:e.started_at&&e.completed_at?function(e,t){let r=t.getTime()-e.getTime();if(r<1e3)return"".concat(r,"ms");let s=Math.floor(r/1e3);if(s<60)return"".concat(s,"s");let a=Math.floor(s/60);return"".concat(a,"m ").concat(s%60,"s")}(new Date(e.started_at),new Date(e.completed_at)):"-"}),(0,s.jsx)("td",{className:"py-2 pr-4 font-mono text-xs opacity-80",children:null!=(t=e.pid)?t:"-"}),(0,s.jsx)("td",{className:"py-2 pr-4",children:(0,s.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-[10px] font-medium border ".concat(0===e.exit_code?"bg-[var(--status-completed-bg)] text-[var(--status-completed)] border-[var(--status-completed)]/20":"bg-[var(--status-failed-bg)] text-[var(--status-failed)] border-[var(--status-failed)]/20"),children:null!=(r=e.exit_code)?r:"-"})})]},e.id)})})]})})]}),!I&&(0,s.jsxs)("div",{className:"border-t border-[var(--card-border)] pt-8",children:[(0,s.jsxs)("h3",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)] mb-6 flex items-center justify-between",children:[(0,s.jsx)("span",{children:"Comments"}),(0,s.jsx)("span",{className:"text-[10px] bg-[var(--muted)] px-2 py-0.5 rounded-full",children:N.length})]}),(0,s.jsx)(o,{comments:N,onAddComment:F,onDeleteComment:B})]})]})}),(0,s.jsxs)("div",{className:"border-l border-[var(--card-border)] bg-[var(--muted)]/20 overflow-y-auto scrollbar-thin p-6 flex flex-col gap-8 flex-shrink-0 relative",style:{width:ev},children:[(0,s.jsx)("div",{onMouseDown:e=>{e.preventDefault(),eb(!0)},className:"absolute top-0 bottom-0 left-0 w-1.5 -ml-0.5 cursor-col-resize hover:bg-[var(--primary)] transition-colors z-50 opacity-0 hover:opacity-100"}),(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Stage"}),(0,s.jsx)("select",{value:j.stage,onChange:e=>e2(e.target.value),className:"text-sm font-medium bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1 focus:border-[var(--primary)] outline-none transition-colors cursor-pointer",children:(T||h).map(e=>(0,s.jsx)("option",{value:e.id,children:e.label},e.id))})]}),!I&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Status"}),(0,s.jsx)("select",{value:j.status||"queued",onChange:e=>e3(e.target.value),className:"text-sm font-medium bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1 focus:border-[var(--primary)] outline-none transition-colors cursor-pointer",children:V.map(e=>(0,s.jsx)("option",{value:e,children:H[e].label},e))})]}),(0,s.jsx)(Q,{label:"ID",value:j.id}),j.slug&&(0,s.jsx)(Q,{label:"Slug",value:j.slug,truncate:!0})]}),!I&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Provider"}),(0,s.jsx)("span",{className:"text-sm font-medium",children:eq?"Swarm":eW||"Default"})]}),void 0!==j.pid&&null!==j.pid&&(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"PID"}),(0,s.jsx)("span",{className:"text-sm font-mono font-medium",title:"Process ID",children:j.pid})]}),void 0!==j.exit_code&&null!==j.exit_code&&(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Exit Code"}),(0,s.jsx)("span",{className:"text-sm font-mono font-medium ".concat(0===j.exit_code?"text-[var(--status-completed)]":"text-[var(--status-failed)]"),children:j.exit_code})]})]})]}),(0,s.jsx)("div",{className:"w-full h-px bg-[var(--card-border)]"}),(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsx)("div",{className:"flex items-center justify-between",children:(0,s.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Execution"})}),(0,s.jsxs)("div",{className:"flex items-center justify-between bg-[var(--card-bg)] p-2 rounded border border-[var(--card-border)]",children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:"Swarm Mode"}),(0,s.jsx)("button",{onClick:()=>(e=>{eS(e);let t={swarm:e};e?t.swarm_models=eL:(t.provider=ey,t.model=ew),z(t)})(!e_),className:"w-10 h-5 rounded-full transition-colors relative ".concat(e_?"bg-[var(--primary)]":"bg-[var(--muted-foreground)]/30"),children:(0,s.jsx)("span",{className:"absolute top-0.5 left-0.5 w-4 h-4 bg-white rounded-full transition-transform ".concat(e_?"translate-x-5":"translate-x-0")})})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("label",{className:"block text-xs text-[var(--muted-foreground)] mb-1.5",children:"Approval"}),(0,s.jsxs)("select",{value:eA,onChange:e=>{var t;eD(t=e.target.value),z({approval_mode:t})},className:"w-full text-sm bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1.5 focus:border-[var(--primary)] outline-none transition-colors appearance-none",children:[(0,s.jsx)("option",{value:"manual",children:"Manual"}),(0,s.jsx)("option",{value:"auto",children:"Auto Approve"})]})]}),e_?(0,s.jsxs)("div",{className:"space-y-3 animate-fade-in",children:[(0,s.jsx)("label",{className:"block text-xs text-[var(--muted-foreground)]",children:"Swarm Models"}),(0,s.jsxs)("div",{className:"grid gap-2",children:[(0,s.jsxs)("div",{className:"grid grid-cols-[1fr_1.2fr_auto] gap-2",children:[(0,s.jsx)("select",{value:eE,onChange:e=>eT(e.target.value),className:"text-sm bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1.5 focus:border-[var(--primary)] outline-none transition-colors appearance-none",children:$.map(e=>(0,s.jsx)("option",{value:e.id,children:e.label},e.id))}),(0,s.jsx)("input",{value:eI,onChange:e=>eP(e.target.value),placeholder:"model name",className:"text-sm bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1.5 focus:border-[var(--primary)] outline-none transition-colors"}),(0,s.jsx)("button",{type:"button",onClick:()=>{let e=eI.trim();if(!e)return;let t={provider:eE,model:e};if(eL.some(e=>e.provider.toLowerCase()===t.provider.toLowerCase()&&e.model.toLowerCase()===t.model.toLowerCase()))return;let r=[...eL,t];if(eM(r),eP(""),I)return void z({swarm_models:r});e_&&e1({swarm_models:r})},className:"px-3 py-1.5 text-xs font-semibold rounded-md bg-[var(--card-bg)] border border-[var(--card-border)] hover:border-[var(--muted-foreground)]",children:"Add"})]}),eL.length>0&&(0,s.jsx)("div",{className:"space-y-1",children:eL.map((e,t)=>(0,s.jsxs)("div",{className:"flex items-center justify-between px-2 py-1.5 rounded text-sm border bg-[var(--card-bg)] border-[var(--card-border)]",children:[(0,s.jsxs)("span",{className:"truncate",children:[(0,s.jsx)("span",{className:"text-[var(--muted-foreground)]",children:e.provider}),(0,s.jsx)("span",{className:"mx-1",children:"\xb7"}),(0,s.jsx)("span",{children:e.model})]}),(0,s.jsx)("button",{type:"button",onClick:()=>(e=>{let t=eL.filter((t,r)=>r!==e);if(eM(t),I)return void z({swarm_models:t});e_&&e1({swarm_models:t})})(t),className:"text-xs text-[var(--destructive)] hover:underline",children:"Remove"})]},"".concat(e.provider,"-").concat(e.model,"-").concat(t)))})]})]}):(0,s.jsxs)("div",{className:"space-y-3 animate-fade-in",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("label",{className:"block text-xs text-[var(--muted-foreground)] mb-1.5",children:"Provider"}),(0,s.jsxs)("select",{value:ey,onChange:e=>(e=>{if(ek(e),I)return void z({provider:e});z({provider:e})})(e.target.value),className:"w-full text-sm bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1.5 focus:border-[var(--primary)] outline-none transition-colors appearance-none",children:[(0,s.jsxs)("option",{value:"",children:["Default (",eW,")"]}),$.map(e=>(0,s.jsx)("option",{value:e.id,children:e.label},e.id))]})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("label",{className:"block text-xs text-[var(--muted-foreground)] mb-1.5",children:"Model"}),(0,s.jsx)("input",{value:ew,onChange:e=>(e=>{if(eC(e),I)return void z({model:e});e1({model:e})})(e.target.value),placeholder:"Default (".concat(ez||"unspecified",")"),className:"w-full text-sm bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1.5 focus:border-[var(--primary)] outline-none transition-colors"})]})]}),eF&&(0,s.jsx)("p",{className:"text-xs text-[var(--destructive)]",children:eF})]}),!I&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:"w-full h-px bg-[var(--card-border)]"}),(0,s.jsx)(E,{taskId:j.id}),(0,s.jsx)("div",{className:"w-full h-px bg-[var(--card-border)]"})]}),!I&&(0,s.jsx)(A,{projectContext:eH,fallbackProjectSlug:eV}),!I&&(0,s.jsxs)("div",{children:[(0,s.jsxs)("button",{onClick:()=>es(!er),className:"w-full flex items-center justify-between p-3 rounded-lg border transition-all duration-200 ".concat(er?"bg-[var(--primary-muted)] border-[var(--primary)] text-[var(--primary)]":"bg-[var(--card-bg)] border-[var(--card-border)] hover:border-[var(--muted-foreground)]"),children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:"Learnings"}),(0,s.jsx)("span",{className:"text-xs bg-[var(--background)] px-2 py-0.5 rounded-full border border-[var(--card-border)]",children:y.length})]}),er&&(0,s.jsx)("div",{className:"mt-4 animate-fade-in-up",children:(0,s.jsx)(p,{learnings:y,taskId:j.id,projectContext:eH,onAddLearning:W,compact:!0})})]}),!I&&(0,s.jsx)("div",{className:"mt-auto text-xs text-[var(--muted-foreground)]",children:(0,s.jsxs)("p",{children:["Created ",new Date(j.created_at||Date.now()).toLocaleDateString()]})})]})]})]})}function Q(e){let{label:t,value:r,truncate:n,mono:o=!0}=e,[l,i]=(0,a.useState)(!1);return(0,s.jsxs)("div",{className:"flex items-center justify-between group h-7",children:[(0,s.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:t}),(0,s.jsxs)("button",{onClick:()=>{navigator.clipboard.writeText(r),i(!0),setTimeout(()=>i(!1),2e3)},className:"text-sm ".concat(o?"font-mono":""," flex items-center gap-1.5 hover:bg-[var(--primary-muted)] hover:text-[var(--primary)] px-1.5 py-0.5 -mr-1.5 rounded transition-all"),title:"Click to copy",children:[(0,s.jsx)("span",{className:"".concat(n?"max-w-[140px] truncate":""," ").concat(l?"opacity-50":""),children:n&&r.length>20?r.slice(0,8)+"..."+r.slice(-8):r}),l?(0,s.jsx)("span",{className:"text-[10px] uppercase font-bold tracking-wider text-[var(--primary)] animate-scale-in",children:"Copied"}):(0,s.jsx)("svg",{className:"w-3.5 h-3.5 opacity-0 group-hover:opacity-60 transition-opacity",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})]})]})}},8545:(e,t,r)=>{r.d(t,{u:()=>n});var s=r(2115);let a=[{id:"gemini",label:"Gemini"},{id:"claude",label:"Claude"},{id:"ollama",label:"Ollama"},{id:"codex",label:"Codex"}];function n(){let[e,t]=(0,s.useState)(a),[r,n]=(0,s.useState)(!0);(0,s.useEffect)(()=>{let e=!1;return(async()=>{try{let r=await fetch("/api/providers"),s=await r.json().catch(()=>({}));if(!r.ok)throw Error((null==s?void 0:s.error)||"HTTP ".concat(r.status));let a=(Array.isArray(null==s?void 0:s.providers)?s.providers:[]).filter(e=>e&&"string"==typeof e.id&&"string"==typeof e.label).map(e=>({id:e.id,label:e.label}));!e&&a.length>0&&t(a)}catch(e){}finally{e||n(!1)}})(),()=>{e=!0}},[]);let o=(0,s.useMemo)(()=>e.map(e=>e.id),[e]);return{providers:e,providerIds:o,loading:r}}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7329],{683:(e,t,n)=>{n.d(t,{O:()=>o});var s=n(2115);function o(e){let[t,n]=(0,s.useState)(null),[o,r]=(0,s.useState)(!1),[a,i]=(0,s.useState)(null),l=(0,s.useCallback)(async()=>{if(!e){n(null),i(null),r(!1);return}r(!0),i(null);try{var t;let s=await fetch("/api/tasks/".concat(e,"/graph"),{method:"GET",cache:"no-store"}),o=await s.json().catch(()=>({}));if(404===s.status){n(null),i(null);return}if(!s.ok)throw Error((null==o?void 0:o.error)||"Failed to fetch graph (".concat(s.status,")"));n(null!=(t=null==o?void 0:o.graph)?t:null)}catch(e){i(e instanceof Error?e.message:"Failed to fetch graph"),n(null)}finally{r(!1)}},[e]);return(0,s.useEffect)(()=>{l()},[l]),{graph:t,isLoading:o,error:a,refetch:l,setGraph:n}}},2460:(e,t,n)=>{n.d(t,{E:()=>a});let s=/^\s*---\s*\r?\n[\s\S]*?\r?\n---\s*/,o=/^#\s+(.+?)(?:\r?\n|$)/;function r(e){return"string"==typeof e?e.trim():""}function a(e,t){let n=r(t),a=r(e);if(!a)return n;let i=a.replace(s,"").trim();if(!i)return n;let l=i.match(o);if(!l)return i;let c=i.slice(l[0].length).trim();return c||l[1].trim()||n}},4255:(e,t,n)=>{n.d(t,{r:()=>f,A:()=>v});var s=n(5155);n(682);var o=n(2115),r=n(7194),a=n(6122),i=n(2539),l=n(8251),c=n(4767),d=n(2460);let u={queued:"bg-[var(--status-queued)] text-[var(--status-queued)]",in_progress:"bg-[var(--status-in-progress)] text-[var(--status-in-progress)]",blocked:"bg-[var(--status-blocked)] text-[var(--status-blocked)]",completed:"bg-[var(--status-completed)] text-[var(--status-completed)]",failed:"bg-[var(--status-failed)] text-[var(--status-failed)]"},h={work:function(e){let{data:t,selected:n}=e,o=t.node,r=(0,c.rO)(e=>e.triggeringNodeId)===t.nodeId,d="pending"===o.status&&Number(o.attempts)>0&&Number(o.attempts)<Number(o.maxAttempts),u=(0,l.QQ)(o.status),h=(0,c.D5)(o.status),p=(0,c.RS)(h),f="".concat(o.attempts,"/").concat(o.maxAttempts),m=function(e){let t=e.trim();if(t.startsWith("{")||t.startsWith("[")){try{let e=JSON.parse(t);if(e&&"object"==typeof e&&!Array.isArray(e)){let t=e.summary||e.decision||e.explanation;if("string"==typeof t&&t.length>0)return t.length>60?t.slice(0,57)+"...":t}}catch(e){}return t.length>60?t.slice(0,57)+"...":t}return e}(t.label),g=d?"retry queued":(0,l.yd)(o.status),x=(()=>{switch(h){case"start":case"resume":return(0,s.jsx)("svg",{className:"w-3 h-3",fill:"currentColor",viewBox:"0 0 20 20",children:(0,s.jsx)("path",{d:"M6.3 2.841A1.5 1.5 0 004 4.11V15.89a1.5 1.5 0 002.3 1.269l9.344-5.89a1.5 1.5 0 000-2.538L6.3 2.84z"})});case"retry":return(0,s.jsx)("svg",{className:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})});case"blocked":return(0,s.jsx)("svg",{className:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z"})});default:return null}})();return(0,s.jsxs)("div",{className:"execution-node execution-node--work ".concat(u," ").concat(n?"execution-node--selected":""," ").concat(p," ").concat(r?"execution-node--triggering":""),title:t.label,children:[(0,s.jsx)(i.h7,{type:"target",position:a.yX.Left,className:"execution-node__handle"}),(0,s.jsxs)("div",{className:"execution-node__header",children:[(0,s.jsx)("div",{className:"execution-node__title",children:m}),x&&(0,s.jsx)("div",{className:"execution-node__action-icon",children:x})]}),(0,s.jsxs)("div",{className:"execution-node__meta",children:[(0,s.jsx)("span",{className:"execution-node__status ".concat(d?"execution-node__status--retry":""),children:g}),(0,s.jsxs)("span",{className:"execution-node__status",children:["attempt ",f]}),o.estimateMinutes&&(0,s.jsxs)("span",{className:"execution-node__status",children:["~",o.estimateMinutes,"m"]})]}),d?(0,s.jsx)("div",{className:"execution-node__hint",children:"Previous attempt failed. Waiting to retry."}):null,(0,s.jsx)(i.h7,{type:"source",position:a.yX.Right,className:"execution-node__handle"})]})},gate:function(e){let{data:t,selected:n}=e,o="gate"===t.node.type?t.node:null,r=(0,l.QQ)(t.node.status),c=o?(0,l.v0)(t.nodeId,o):t.label;return(0,s.jsxs)("div",{className:"gate-node ".concat(r," ").concat((null==o?void 0:o.required)?"gate--required":""," ").concat(n?"execution-node--selected":""),title:c,children:[(0,s.jsx)(i.h7,{type:"target",position:a.yX.Left,className:"execution-node__handle"}),(0,s.jsxs)("div",{className:"gate-node__content",children:[(0,s.jsx)("div",{className:"execution-node__title",children:c}),(0,s.jsxs)("div",{className:"execution-node__meta",children:[(0,s.jsx)("span",{className:"execution-node__status",children:(0,l.yd)(t.node.status)}),(null==o?void 0:o.required)?(0,s.jsx)("span",{className:"execution-node__status",children:"required"}):null]})]}),(0,s.jsx)(i.h7,{type:"source",position:a.yX.Right,className:"execution-node__handle"})]})},fork:function(e){let{data:t,selected:n}=e,o=(0,l.QQ)(t.node.status);return(0,s.jsxs)("div",{className:"execution-node execution-node--circle execution-node--fork ".concat(o," ").concat(n?"execution-node--selected":""),title:"Fork",children:[(0,s.jsx)(i.h7,{type:"target",position:a.yX.Left,className:"execution-node__handle"}),(0,s.jsx)("div",{className:"execution-node__glyph","aria-hidden":!0,children:"⇉"}),(0,s.jsx)(i.h7,{type:"source",position:a.yX.Right,className:"execution-node__handle"})]})},join:function(e){let{data:t,selected:n}=e,o=(0,l.QQ)(t.node.status);return(0,s.jsxs)("div",{className:"execution-node execution-node--circle execution-node--join ".concat(o," ").concat(n?"execution-node--selected":""),title:"Join",children:[(0,s.jsx)(i.h7,{type:"target",position:a.yX.Left,className:"execution-node__handle"}),(0,s.jsx)("div",{className:"execution-node__glyph","aria-hidden":!0,children:"⇇"}),(0,s.jsx)(i.h7,{type:"source",position:a.yX.Right,className:"execution-node__handle"})]})},conditional:function(e){let{data:t,selected:n}=e,o=(0,l.QQ)(t.node.status);return(0,s.jsxs)("div",{className:"conditional-node ".concat(o," ").concat(n?"execution-node--selected":""),title:"Conditional",children:[(0,s.jsx)(i.h7,{type:"target",position:a.yX.Left,className:"execution-node__handle"}),(0,s.jsx)("div",{className:"conditional-node__content",children:"?"}),(0,s.jsx)(i.h7,{type:"source",position:a.yX.Right,className:"execution-node__handle"})]})},root:function(e){let{data:t,selected:n}=e,o=t.node,r=(0,l.QQ)(o.status),u=(0,c.D5)(o.status),h=(0,c.RS)(u),p=(()=>{switch(u){case"start":return"Click to create plan";case"resume":return"Click to resume";case"retry":return"Click to retry";case"blocked":return"Dependencies not met";default:return null}})(),f=(0,d.E)(o.objective,o.title);return(0,s.jsxs)("div",{className:"execution-node execution-node--root ".concat(r," ").concat(n?"execution-node--selected":""," ").concat(h),title:f||t.label,children:[(0,s.jsx)(i.h7,{type:"source",position:a.yX.Right,className:"execution-node__handle"}),(0,s.jsxs)("div",{className:"execution-node__root-badge",children:[(0,s.jsx)("svg",{className:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2.5,children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M13 10V3L4 14h7v7l9-11h-7z"})}),"ROOT"]}),(0,s.jsx)("div",{className:"execution-node__title",children:t.label}),!1===o.graphCreated&&(0,s.jsx)("div",{className:"execution-node__subtitle",children:"No plan yet"}),(0,s.jsxs)("div",{className:"execution-node__meta",children:[(0,s.jsx)("span",{className:"execution-node__status",children:(0,l.yd)(o.status)}),o.criteria&&o.criteria.length>0&&(0,s.jsxs)("span",{className:"execution-node__status",children:[o.criteria.length," criteria"]})]}),p&&(0,s.jsx)("div",{className:"execution-node__action-hint",children:p})]})},taskDetail:(0,o.memo)(function(e){let{data:t,selected:n}=e,{title:o,status:r,stage:l,description:c}=t,d=(u[r]||"bg-[var(--muted-foreground)]").split(" ")[0],h=c?c.replace(/[#*_`>\-\[\]()]/g,"").slice(0,120):"";return(0,s.jsxs)("div",{className:"task-detail-node ".concat(n?"task-detail-node--selected":""),title:"Double-click to open details",children:[(0,s.jsx)(i.h7,{type:"source",position:a.yX.Right,className:"execution-node__handle"}),(0,s.jsx)("div",{className:"task-detail-node__header",children:(0,s.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,s.jsx)("span",{className:"w-2.5 h-2.5 rounded-full flex-shrink-0 ".concat(d," ").concat("in_progress"===r?"animate-pulse":"")}),(0,s.jsx)("span",{className:"text-[10px] font-semibold uppercase tracking-wider text-[var(--muted-foreground)] flex-shrink-0",children:"Task"}),l&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"text-[var(--muted-foreground)] opacity-40",children:"\xb7"}),(0,s.jsx)("span",{className:"text-[10px] capitalize text-[var(--muted-foreground)]",children:l})]})]})}),(0,s.jsx)("div",{className:"task-detail-node__title",children:o||"Untitled"}),h&&(0,s.jsxs)("div",{className:"task-detail-node__preview",children:[h,c&&c.length>120?"...":""]})]})})},p=new Set(["done","passed"]),f="__taskDetail__",m={width:280,height:120};function g(e){return"root"===e.type?{width:240,height:100}:"work"===e.type?{width:220,height:88}:"gate"===e.type?{width:108,height:108}:"conditional"===e.type?{width:84,height:84}:{width:68,height:68}}function x(e,t){let n=function(e){try{let t=localStorage.getItem("graph-positions:".concat(e));return t?JSON.parse(t):null}catch(e){return null}}(t);return n?e.map(e=>n[e.id]?{...e,position:n[e.id]}:e):e}function v(e){let{graph:t,taskId:n,className:d,fullscreen:u=!1,onNodeSelect:v,taskDetailNode:y,onNodeClick:_}=e,[j,N]=(0,o.useState)("LR"),k=(0,o.useRef)(null),w=(0,o.useRef)(!1),b=(0,c.rO)(e=>e.selectedNodeId),S=(0,c.rO)(e=>e.setSelectedNodeId),C=(0,c.rO)(e=>e.setViewport),O=!!y,V=(0,o.useMemo)(()=>(function(e,t,n,s,o){var a,i,c,d;let u=new r.A.graphlib.Graph().setDefaultEdgeLabel(()=>({}));u.setGraph({rankdir:t,nodesep:48,ranksep:84,marginx:32,marginy:32});let h=new Set;if(n){for(let[t,n]of Object.entries(e.nodes))"root"===n.type&&h.add(t),"gate"===n.type&&"handoff_gate"===n.gateType&&h.add(t);u.setNode(f,{width:m.width,height:m.height})}for(let[t,n]of Object.entries(e.nodes)){if(h.has(t))continue;let{width:e,height:s}=g(n);u.setNode(t,{width:e,height:s})}if(n){let t=new Set;for(let n of e.edges)h.has(n.from)&&!h.has(n.to)&&t.add(n.to);for(let e of t)u.setEdge(f,e)}for(let t of e.edges)h.has(t.from)||h.has(t.to)||u.setEdge(t.from,t.to);r.A.layout(u);let p=[];if(n){let e=u.node(f);p.push({id:f,type:"taskDetail",data:s||{},position:{x:(null!=(a=null==e?void 0:e.x)?a:0)-m.width/2,y:(null!=(i=null==e?void 0:e.y)?i:0)-m.height/2},selectable:!0})}for(let[t,n]of Object.entries(e.nodes)){if(h.has(t))continue;let e=u.node(t),{width:s,height:r}=g(n);p.push({id:t,type:n.type,data:{nodeId:t,node:n,label:(0,l.v0)(t,n)},position:{x:(null!=(c=null==e?void 0:e.x)?c:0)-s/2,y:(null!=(d=null==e?void 0:e.y)?d:0)-r/2},selectable:!0,selected:o===t})}return p})(t,j,O,y,b),[t,j,O,y,b]),[I,T]=(0,o.useState)(()=>x(V,t.id));(0,o.useEffect)(()=>{T(x(V,t.id))},[V,t.id]);let E=(0,o.useMemo)(()=>(function(e,t){let n=[],s=new Set;if(t)for(let[t,n]of Object.entries(e.nodes))"root"===n.type&&s.add(t),"gate"===n.type&&"handoff_gate"===n.gateType&&s.add(t);if(t){let t=new Set;for(let n of e.edges)s.has(n.from)&&!s.has(n.to)&&t.add(n.to);for(let e of t)n.push({id:"".concat(f,"-").concat(e),source:f,target:e,type:"smoothstep",animated:!1,className:"execution-edge",markerEnd:{type:a.TG.ArrowClosed}})}let o=function(e){let t=new Set,n=Object.values(e.nodes).map(e=>e.status),s=n.includes("running")?"running":n.includes("awaiting_human")?"awaiting_human":null;if(!s){for(let[n,s]of e.edges.entries()){let o=e.nodes[s.from],r=e.nodes[s.to];o&&r&&p.has(o.status)&&"pending"===r.status&&t.add(n)}return t}let o=new Map;for(let[t,n]of e.edges.entries())o.has(n.to)||o.set(n.to,[]),o.get(n.to).push({idx:t,from:n.from});let r=new Set,a=[];for(let[t,n]of Object.entries(e.nodes))n.status===s&&(a.push(t),r.add(t));for(;a.length>0;){var i;let n=a.shift();for(let{idx:s,from:l}of null!=(i=o.get(n))?i:[]){let n=e.nodes[l];n&&p.has(n.status)&&(t.add(s),r.has(l)||(r.add(l),a.push(l)))}}return t}(e);for(let[t,r]of e.edges.entries()){if(s.has(r.from)||s.has(r.to))continue;let e=o.has(t),i="soft"===r.type;n.push({id:"".concat(r.from,"-").concat(r.to,"-").concat(t),source:r.from,target:r.to,type:"smoothstep",animated:e,className:"execution-edge ".concat(i?"execution-edge--soft":""," ").concat(e?"execution-edge--active":""),markerEnd:{type:a.TG.ArrowClosed},style:i?{strokeDasharray:"6 4"}:void 0})}return n})(t,O),[t,O]),R=(0,o.useCallback)(e=>{T(t=>(0,i._0)(e,t))},[]),L=(0,o.useCallback)(()=>{T(e=>{var n=t.id;let s={};for(let t of e)s[t.id]=t.position;try{localStorage.setItem("graph-positions:".concat(n),JSON.stringify(s))}catch(e){}return e})},[t.id]),M=(0,o.useCallback)(()=>{var e;e=t.id,localStorage.removeItem("graph-positions:".concat(e)),T(V),setTimeout(()=>{var e;return null==(e=k.current)?void 0:e.fitView({padding:.2,duration:250})},0)},[t.id,V]);(0,o.useEffect)(()=>{b&&(t.nodes[b]||b===f||S(null))},[t.nodes,b,S]);let Q=(0,o.useCallback)(async(e,t)=>{let n=t.id;S(n),null==v||v(n),null==_||_(n)},[S,v,_]);return(0,s.jsx)("div",{className:"execution-graph-panel ".concat(u?"execution-graph-panel--fullscreen":""," ").concat(null!=d?d:""),children:(0,s.jsxs)(i.Gc,{nodes:I,edges:E,nodeTypes:h,fitView:!0,fitViewOptions:{padding:.2},onInit:e=>{k.current=e,w.current=!1},onMoveEnd:(e,t)=>{if(!w.current){w.current=!0;return}C(t)},onNodesChange:R,onNodeDragStop:L,onNodeClick:Q,panOnScroll:!0,children:[(0,s.jsx)(i.VS,{gap:24,size:1.2,color:"rgba(100, 116, 139, 0.25)"}),(0,s.jsx)(i.of,{pannable:!0,zoomable:!0}),(0,s.jsxs)(i.H2,{children:[(0,s.jsx)(i.aV,{title:"Fit graph",onClick:()=>{var e;null==(e=k.current)||e.fitView({padding:.2,duration:250})},children:"⊡"}),(0,s.jsx)(i.aV,{title:"Reset layout",onClick:M,children:"↻"}),(0,s.jsx)(i.aV,{title:"Toggle layout direction",onClick:()=>{N(e=>"TB"===e?"LR":"TB")},children:j})]})]})})}},4767:(e,t,n)=>{n.d(t,{D5:()=>o,RS:()=>i,eh:()=>a,rO:()=>c});var s=n(5959);function o(e){switch(e){case"pending":return"start";case"paused":return"resume";case"stopped":case"failed":return"retry";case"blocked":return"blocked";default:return"none"}}let r=new Set(["done","passed","skipped"]);function a(e,t){var n;let s=t.nodes[e];if(!s)return"none";if("work"===s.type&&"done"===s.status&&(n=String(s.title||""),"plan"===e||/generate.*execution.*plan/i.test(n)))return"retry";let a=o(s.status);return("start"===a||"blocked"===a)&&!function(e,t){let n=t.nodes[e];return!!n&&n.deps.every(e=>{let n=t.nodes[e];return n&&r.has(n.status)})}(e,t)?"none":a}function i(e){switch(e){case"start":case"resume":case"retry":case"stop":return"cursor-pointer";case"blocked":return"cursor-not-allowed";default:return"cursor-default"}}let l={x:0,y:0,zoom:1},c=(0,s.v)(e=>({selectedNodeId:null,viewport:l,comparisonMode:!1,comparisonFromVersion:null,comparisonToVersion:null,triggeringNodeId:null,setSelectedNodeId:t=>e({selectedNodeId:t}),setViewport:t=>e({viewport:t}),openComparison:(t,n)=>e({comparisonMode:!0,comparisonFromVersion:t,comparisonToVersion:n}),closeComparison:()=>e({comparisonMode:!1,comparisonFromVersion:null,comparisonToVersion:null}),setTriggeringNodeId:t=>e({triggeringNodeId:t}),reset:()=>e({selectedNodeId:null,viewport:l,comparisonMode:!1,comparisonFromVersion:null,comparisonToVersion:null,triggeringNodeId:null})}))},8251:(e,t,n)=>{n.d(t,{hj:()=>c,cQ:()=>l,yd:()=>a,v0:()=>i,QQ:()=>r});let s=new Set(["done","passed"]),o=new Set(["pending","running","awaiting_human","blocked"]);function r(e){return"node--".concat(e)}function a(e){return e.replace(/_/gu," ")}function i(e,t){var n,s;return"root"===t.type?(null==(n=t.title)?void 0:n.trim())||"Task Objective":"work"===t.type?(null==(s=t.title)?void 0:s.trim())||e:"gate"===t.type?t.gateType.replace(/_gate$/u,"").replace(/_/gu," ").replace(/\b\w/gu,e=>e.toUpperCase()):"fork"===t.type?"Fork":"join"===t.type?"Join (".concat(t.joinStrategy,")"):"Conditional"}function l(e){for(let[t,n]of Object.entries(e.nodes))if("root"===n.type)return{id:t,node:n};return null}function c(e){var t;let n=l(e);return{mode:e.mode,graphVersion:e.graphVersion,nodeCount:Object.keys(e.nodes).length,progress:function(e){let t=Object.values(e.nodes).filter(e=>"skipped"!==e.status);return 0===t.length?100:Math.round(t.filter(e=>s.has(e.status)).length/t.length*100)}(e),currentBlocker:function(e){let t=function(e){var t;let n=Object.entries(e.nodes),s=n.filter(e=>{let[,t]=e;return"gate"===t.type&&t.required}),o=s.find(e=>{let[,t]=e;return"failed"===t.status});if(o)return o[0];let r=s.find(e=>{let[,t]=e;return"awaiting_human"===t.status});if(r)return r[0];let a=s.find(e=>{let[,t]=e;return"pending"===t.status||"running"===t.status});if(a)return a[0];let i=n.find(e=>{let[,t]=e;return"work"===t.type&&"blocked"===t.status});return null!=(t=null==i?void 0:i[0])?t:null}(e);if(!t)return null;let n=e.nodes[t];return n?{nodeId:t,label:i(t,n),status:n.status,required:"gate"===n.type&&n.required}:null}(e),derivedStatus:function(e){let t=Object.keys(e.nodes).length;if(0===t)return"INTAKE";if(1===t){let t=Object.values(e.nodes)[0];if("root"===t.type&&!t.graphCreated)return"INTAKE"}return Object.values(e.nodes).some(e=>o.has(e.status))?"PROGRESS":"DONE"}(e),hasRootNode:null!==n,rootNodeId:null!=(t=null==n?void 0:n.id)?t:null}}}}]);