@chorus-aidlc/chorus 0.18.1 → 0.19.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (540) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +372 -373
  3. package/.next/standalone/.next/app-path-routes-manifest.json +35 -35
  4. package/.next/standalone/.next/build-manifest.json +5 -5
  5. package/.next/standalone/.next/prerender-manifest.json +21 -21
  6. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js +1 -1
  7. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js.nft.json +1 -1
  8. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js +1 -1
  10. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js.nft.json +1 -1
  11. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js +1 -1
  13. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js.nft.json +1 -1
  14. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +2 -2
  16. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
  17. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js +2 -2
  19. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js +2 -2
  22. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page_client-reference-manifest.js +1 -1
  24. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js +2 -2
  25. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +2 -2
  28. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +2 -2
  31. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
  33. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +2 -2
  34. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
  37. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
  40. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js +2 -2
  43. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
  44. package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js +2 -2
  46. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js.nft.json +1 -1
  47. package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  48. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/_not-found.html +2 -2
  50. package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
  51. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/admin/companies/new.html +2 -2
  54. package/.next/standalone/.next/server/app/admin/companies/new.rsc +2 -2
  55. package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/admin/companies.html +2 -2
  57. package/.next/standalone/.next/server/app/admin/companies.rsc +2 -2
  58. package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  59. package/.next/standalone/.next/server/app/admin.html +2 -2
  60. package/.next/standalone/.next/server/app/admin.rsc +2 -2
  61. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route.js +1 -1
  62. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route.js.nft.json +1 -1
  63. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/api/admin/companies/route.js +1 -1
  65. package/.next/standalone/.next/server/app/api/admin/companies/route.js.nft.json +1 -1
  66. package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
  67. package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/app/api/agent-connections/route.js +1 -1
  70. package/.next/standalone/.next/server/app/api/agent-connections/route.js.nft.json +1 -1
  71. package/.next/standalone/.next/server/app/api/agent-connections/route_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/api/agents/[uuid]/route.js +1 -1
  73. package/.next/standalone/.next/server/app/api/agents/[uuid]/route.js.nft.json +1 -1
  74. package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
  75. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js +1 -1
  76. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js.nft.json +1 -1
  77. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  78. package/.next/standalone/.next/server/app/api/agents/route.js +1 -1
  79. package/.next/standalone/.next/server/app/api/agents/route.js.nft.json +1 -1
  80. package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route.js +1 -1
  82. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route.js.nft.json +1 -1
  83. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
  84. package/.next/standalone/.next/server/app/api/api-keys/route.js +1 -1
  85. package/.next/standalone/.next/server/app/api/api-keys/route.js.nft.json +1 -1
  86. package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
  87. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
  89. package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
  90. package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
  91. package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  93. package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/.next/server/app/api/comments/route.js +1 -1
  96. package/.next/standalone/.next/server/app/api/comments/route.js.nft.json +1 -1
  97. package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route.js +1 -1
  99. package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route.js.nft.json +1 -1
  100. package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route_client-reference-manifest.js +1 -1
  101. package/.next/standalone/.next/server/app/api/daemon/control/route.js +1 -1
  102. package/.next/standalone/.next/server/app/api/daemon/control/route.js.nft.json +1 -1
  103. package/.next/standalone/.next/server/app/api/daemon/control/route_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route.js +1 -1
  105. package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route.js.nft.json +1 -1
  106. package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route_client-reference-manifest.js +1 -1
  107. package/.next/standalone/.next/server/app/api/daemon/execution-state/route.js +1 -1
  108. package/.next/standalone/.next/server/app/api/daemon/execution-state/route.js.nft.json +1 -1
  109. package/.next/standalone/.next/server/app/api/daemon/execution-state/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/daemon/executions/route.js +1 -1
  111. package/.next/standalone/.next/server/app/api/daemon/executions/route.js.nft.json +1 -1
  112. package/.next/standalone/.next/server/app/api/daemon/executions/route_client-reference-manifest.js +1 -1
  113. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js +1 -1
  114. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js.nft.json +1 -1
  115. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route_client-reference-manifest.js +1 -1
  116. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route.js +1 -1
  117. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route.js.nft.json +1 -1
  118. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route_client-reference-manifest.js +1 -1
  119. package/.next/standalone/.next/server/app/api/daemon/resume/route.js +1 -1
  120. package/.next/standalone/.next/server/app/api/daemon/resume/route.js.nft.json +1 -1
  121. package/.next/standalone/.next/server/app/api/daemon/resume/route_client-reference-manifest.js +1 -1
  122. package/.next/standalone/.next/server/app/api/daemon/transcript/route.js +1 -1
  123. package/.next/standalone/.next/server/app/api/daemon/transcript/route.js.nft.json +1 -1
  124. package/.next/standalone/.next/server/app/api/daemon/transcript/route_client-reference-manifest.js +1 -1
  125. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js +1 -1
  126. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js.nft.json +1 -1
  127. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route_client-reference-manifest.js +1 -1
  128. package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route.js +1 -1
  129. package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route.js.nft.json +1 -1
  130. package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route_client-reference-manifest.js +1 -1
  131. package/.next/standalone/.next/server/app/api/daemon-directory-requests/route.js +1 -1
  132. package/.next/standalone/.next/server/app/api/daemon-directory-requests/route.js.nft.json +1 -1
  133. package/.next/standalone/.next/server/app/api/daemon-directory-requests/route_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js +1 -1
  135. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js.nft.json +1 -1
  136. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route_client-reference-manifest.js +1 -1
  137. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js +1 -1
  138. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js.nft.json +1 -1
  139. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route_client-reference-manifest.js +1 -1
  140. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js +1 -1
  141. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js.nft.json +1 -1
  142. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route_client-reference-manifest.js +1 -1
  143. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js +1 -1
  144. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js.nft.json +1 -1
  145. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route_client-reference-manifest.js +1 -1
  146. package/.next/standalone/.next/server/app/api/daemon-sessions/route.js +1 -1
  147. package/.next/standalone/.next/server/app/api/daemon-sessions/route.js.nft.json +1 -1
  148. package/.next/standalone/.next/server/app/api/daemon-sessions/route_client-reference-manifest.js +1 -1
  149. package/.next/standalone/.next/server/app/api/documents/[uuid]/route.js +1 -1
  150. package/.next/standalone/.next/server/app/api/documents/[uuid]/route.js.nft.json +1 -1
  151. package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
  152. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js +1 -1
  153. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js.nft.json +1 -1
  154. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route_client-reference-manifest.js +1 -1
  155. package/.next/standalone/.next/server/app/api/events/notifications/route.js +1 -1
  156. package/.next/standalone/.next/server/app/api/events/notifications/route.js.nft.json +1 -1
  157. package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
  158. package/.next/standalone/.next/server/app/api/events/route.js +2 -2
  159. package/.next/standalone/.next/server/app/api/events/route.js.nft.json +1 -1
  160. package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  161. package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  162. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js +1 -1
  163. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js.nft.json +1 -1
  164. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
  165. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js +1 -1
  166. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js.nft.json +1 -1
  167. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
  168. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js +1 -1
  169. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js.nft.json +1 -1
  170. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
  171. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js +1 -1
  172. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js.nft.json +1 -1
  173. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route_client-reference-manifest.js +1 -1
  174. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js +1 -1
  175. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js.nft.json +1 -1
  176. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
  177. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js +1 -1
  178. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js.nft.json +1 -1
  179. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
  180. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route.js +1 -1
  181. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route.js.nft.json +1 -1
  182. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route_client-reference-manifest.js +1 -1
  183. package/.next/standalone/.next/server/app/api/ideas/conversational/route.js +1 -1
  184. package/.next/standalone/.next/server/app/api/ideas/conversational/route.js.nft.json +1 -1
  185. package/.next/standalone/.next/server/app/api/ideas/conversational/route_client-reference-manifest.js +1 -1
  186. package/.next/standalone/.next/server/app/api/mcp/route.js +1 -1
  187. package/.next/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
  188. package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  189. package/.next/standalone/.next/server/app/api/me/assignments/route.js +1 -1
  190. package/.next/standalone/.next/server/app/api/me/assignments/route.js.nft.json +1 -1
  191. package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
  192. package/.next/standalone/.next/server/app/api/mentionables/route.js +1 -1
  193. package/.next/standalone/.next/server/app/api/mentionables/route.js.nft.json +1 -1
  194. package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
  195. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js +1 -1
  196. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js.nft.json +1 -1
  197. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
  198. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js +1 -1
  199. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js.nft.json +1 -1
  200. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
  201. package/.next/standalone/.next/server/app/api/notifications/preferences/route.js +1 -1
  202. package/.next/standalone/.next/server/app/api/notifications/preferences/route.js.nft.json +1 -1
  203. package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
  204. package/.next/standalone/.next/server/app/api/notifications/read-all/route.js +1 -1
  205. package/.next/standalone/.next/server/app/api/notifications/read-all/route.js.nft.json +1 -1
  206. package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
  207. package/.next/standalone/.next/server/app/api/notifications/route.js +1 -1
  208. package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
  209. package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  210. package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js +1 -1
  211. package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js.nft.json +1 -1
  212. package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
  213. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route.js +1 -1
  214. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route.js.nft.json +1 -1
  215. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
  216. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route.js +1 -1
  217. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route.js.nft.json +1 -1
  218. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
  219. package/.next/standalone/.next/server/app/api/project-groups/route.js +1 -1
  220. package/.next/standalone/.next/server/app/api/project-groups/route.js.nft.json +1 -1
  221. package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
  222. package/.next/standalone/.next/server/app/api/project-visits/pin/route.js +1 -1
  223. package/.next/standalone/.next/server/app/api/project-visits/pin/route.js.nft.json +1 -1
  224. package/.next/standalone/.next/server/app/api/project-visits/pin/route_client-reference-manifest.js +1 -1
  225. package/.next/standalone/.next/server/app/api/project-visits/route.js +1 -1
  226. package/.next/standalone/.next/server/app/api/project-visits/route.js.nft.json +1 -1
  227. package/.next/standalone/.next/server/app/api/project-visits/route_client-reference-manifest.js +1 -1
  228. package/.next/standalone/.next/server/app/api/project-visits/visit/route.js +1 -1
  229. package/.next/standalone/.next/server/app/api/project-visits/visit/route.js.nft.json +1 -1
  230. package/.next/standalone/.next/server/app/api/project-visits/visit/route_client-reference-manifest.js +1 -1
  231. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route.js +1 -1
  232. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route.js.nft.json +1 -1
  233. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
  234. package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route.js +1 -1
  235. package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route.js.nft.json +1 -1
  236. package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route_client-reference-manifest.js +1 -1
  237. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js +1 -1
  238. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js.nft.json +1 -1
  239. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
  240. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route.js +1 -1
  241. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route.js.nft.json +1 -1
  242. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
  243. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route.js +1 -1
  244. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route.js.nft.json +1 -1
  245. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
  246. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js +1 -1
  247. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js.nft.json +1 -1
  248. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
  249. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js +1 -1
  250. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js.nft.json +1 -1
  251. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
  252. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route.js +1 -1
  253. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route.js.nft.json +1 -1
  254. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
  255. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route.js +1 -1
  256. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route.js.nft.json +1 -1
  257. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
  258. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route.js +1 -1
  259. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route.js.nft.json +1 -1
  260. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
  261. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js +1 -1
  262. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js.nft.json +1 -1
  263. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route_client-reference-manifest.js +1 -1
  264. package/.next/standalone/.next/server/app/api/projects/[uuid]/route.js +1 -1
  265. package/.next/standalone/.next/server/app/api/projects/[uuid]/route.js.nft.json +1 -1
  266. package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
  267. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route.js +1 -1
  268. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route.js.nft.json +1 -1
  269. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
  270. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js +1 -1
  271. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js.nft.json +1 -1
  272. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
  273. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js +1 -1
  274. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js.nft.json +1 -1
  275. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
  276. package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route.js +1 -1
  277. package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route.js.nft.json +1 -1
  278. package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route_client-reference-manifest.js +1 -1
  279. package/.next/standalone/.next/server/app/api/projects/route.js +1 -1
  280. package/.next/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  281. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  282. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route.js +1 -1
  283. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route.js.nft.json +1 -1
  284. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
  285. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route.js +1 -1
  286. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route.js.nft.json +1 -1
  287. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
  288. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route.js +1 -1
  289. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route.js.nft.json +1 -1
  290. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
  291. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route.js +1 -1
  292. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route.js.nft.json +1 -1
  293. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
  294. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route.js +1 -1
  295. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route.js.nft.json +1 -1
  296. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
  297. package/.next/standalone/.next/server/app/api/references/[uuid]/route.js +1 -1
  298. package/.next/standalone/.next/server/app/api/references/[uuid]/route.js.nft.json +1 -1
  299. package/.next/standalone/.next/server/app/api/references/[uuid]/route_client-reference-manifest.js +1 -1
  300. package/.next/standalone/.next/server/app/api/references/route.js +1 -1
  301. package/.next/standalone/.next/server/app/api/references/route.js.nft.json +1 -1
  302. package/.next/standalone/.next/server/app/api/references/route_client-reference-manifest.js +1 -1
  303. package/.next/standalone/.next/server/app/api/search/route.js +1 -1
  304. package/.next/standalone/.next/server/app/api/search/route.js.nft.json +1 -1
  305. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  306. package/.next/standalone/.next/server/app/api/session/route.js +1 -1
  307. package/.next/standalone/.next/server/app/api/session/route.js.nft.json +1 -1
  308. package/.next/standalone/.next/server/app/api/session/route_client-reference-manifest.js +1 -1
  309. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js +1 -1
  310. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js.nft.json +1 -1
  311. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
  312. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js +1 -1
  313. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js.nft.json +1 -1
  314. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
  315. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js +1 -1
  316. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js.nft.json +1 -1
  317. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
  318. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js +1 -1
  319. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js.nft.json +1 -1
  320. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
  321. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js +1 -1
  322. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js.nft.json +1 -1
  323. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
  324. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js +1 -1
  325. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js.nft.json +1 -1
  326. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
  327. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js +1 -1
  328. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js.nft.json +1 -1
  329. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  330. package/.next/standalone/.next/server/app/index.html +2 -2
  331. package/.next/standalone/.next/server/app/index.rsc +2 -2
  332. package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
  333. package/.next/standalone/.next/server/app/login/admin.html +2 -2
  334. package/.next/standalone/.next/server/app/login/admin.rsc +2 -2
  335. package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
  336. package/.next/standalone/.next/server/app/login/callback.html +2 -2
  337. package/.next/standalone/.next/server/app/login/callback.rsc +2 -2
  338. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  339. package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
  340. package/.next/standalone/.next/server/app/login/pick-workspace.html +2 -2
  341. package/.next/standalone/.next/server/app/login/pick-workspace.rsc +2 -2
  342. package/.next/standalone/.next/server/app/login.html +2 -2
  343. package/.next/standalone/.next/server/app/login.rsc +2 -2
  344. package/.next/standalone/.next/server/app/onboarding/page.js +2 -2
  345. package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
  346. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  347. package/.next/standalone/.next/server/app/onboarding.html +2 -2
  348. package/.next/standalone/.next/server/app/onboarding.rsc +3 -3
  349. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  350. package/.next/standalone/.next/server/app/projects.html +2 -2
  351. package/.next/standalone/.next/server/app/projects.rsc +4 -4
  352. package/.next/standalone/.next/server/app/settings.html +2 -2
  353. package/.next/standalone/.next/server/app/settings.rsc +4 -4
  354. package/.next/standalone/.next/server/app-paths-manifest.json +35 -35
  355. package/.next/standalone/.next/server/chunks/1559.js +2 -2
  356. package/.next/standalone/.next/server/chunks/2572.js +2 -2
  357. package/.next/standalone/.next/server/chunks/2618.js +1 -1
  358. package/.next/standalone/.next/server/chunks/2961.js +1 -1
  359. package/.next/standalone/.next/server/chunks/{2460.js → 3420.js} +1 -1
  360. package/.next/standalone/.next/server/chunks/{8030.js → 38.js} +3 -3
  361. package/.next/standalone/.next/server/chunks/4672.js +6 -0
  362. package/.next/standalone/.next/server/chunks/4827.js +1 -1
  363. package/.next/standalone/.next/server/chunks/5245.js +1 -1
  364. package/.next/standalone/.next/server/chunks/5453.js +1 -1
  365. package/.next/standalone/.next/server/chunks/5576.js +1 -0
  366. package/.next/standalone/.next/server/chunks/6113.js +1 -1
  367. package/.next/standalone/.next/server/chunks/6125.js +1 -0
  368. package/.next/standalone/.next/server/chunks/6506.js +39 -3
  369. package/.next/standalone/.next/server/chunks/6509.js +1 -0
  370. package/.next/standalone/.next/server/chunks/6515.js +2 -2
  371. package/.next/standalone/.next/server/chunks/657.js +1 -0
  372. package/.next/standalone/.next/server/chunks/{5489.js → 661.js} +44 -8
  373. package/.next/standalone/.next/server/chunks/6654.js +1 -0
  374. package/.next/standalone/.next/server/chunks/6737.js +1 -1
  375. package/.next/standalone/.next/server/chunks/679.js +1 -1
  376. package/.next/standalone/.next/server/chunks/{2516.js → 7258.js} +1 -1
  377. package/.next/standalone/.next/server/chunks/7368.js +1 -1
  378. package/.next/standalone/.next/server/chunks/7530.js +1 -1
  379. package/.next/standalone/.next/server/chunks/7578.js +1 -1
  380. package/.next/standalone/.next/server/chunks/8017.js +1 -0
  381. package/.next/standalone/.next/server/chunks/8437.js +1 -0
  382. package/.next/standalone/.next/server/chunks/{6449.js → 8566.js} +1 -1
  383. package/.next/standalone/.next/server/chunks/920.js +1 -1
  384. package/.next/standalone/.next/server/chunks/9213.js +1 -1
  385. package/.next/standalone/.next/server/chunks/9378.js +1 -1
  386. package/.next/standalone/.next/server/chunks/951.js +88 -1
  387. package/.next/standalone/.next/server/chunks/9670.js +1 -0
  388. package/.next/standalone/.next/server/chunks/9931.js +1 -1
  389. package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
  390. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  391. package/.next/standalone/.next/server/pages/404.html +2 -2
  392. package/.next/standalone/.next/server/pages/500.html +1 -1
  393. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  394. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  395. package/.next/standalone/.next/static/chunks/{15183-3f43af926186f7ef.js → 10488-d518e8ce8ae45724.js} +6 -6
  396. package/.next/standalone/.next/static/chunks/11595.b2b74d1d1d0ae9d9.js +1 -0
  397. package/.next/standalone/.next/static/chunks/17081-63e2cad8c15da2fb.js +1 -0
  398. package/.next/standalone/.next/static/chunks/2069-68d93343e4ca252e.js +1 -0
  399. package/.next/standalone/.next/static/chunks/27370-f998ed24dd4fa975.js +1 -0
  400. package/.next/standalone/.next/static/chunks/33456.978e5f47d1c8eb93.js +1 -0
  401. package/.next/standalone/.next/static/chunks/46437-88abf056c31c7e4e.js +1 -0
  402. package/.next/standalone/.next/static/chunks/48365-13b8e43016ba16a4.js +1 -0
  403. package/.next/standalone/.next/static/chunks/4860.79d6eefc2861716f.js +1 -0
  404. package/.next/standalone/.next/static/chunks/56863-a2cc92f9ca49f0f8.js +1 -0
  405. package/.next/standalone/.next/static/chunks/69398-c2f73fe154aaee76.js +1 -0
  406. package/.next/standalone/.next/static/chunks/71522-de2b2a9d8e5059e1.js +1 -0
  407. package/.next/standalone/.next/static/chunks/71890-e6c13ce1debd87c2.js +1 -0
  408. package/.next/standalone/.next/static/chunks/71921-f6754331cd35fa5a.js +1 -0
  409. package/.next/standalone/.next/static/chunks/7777-18527b954e3c5557.js +1 -0
  410. package/.next/standalone/.next/static/chunks/79919-d423af700ae83862.js +1 -0
  411. package/.next/standalone/.next/static/chunks/83749-f797272bf30fc2f4.js +10 -0
  412. package/.next/standalone/.next/static/chunks/91796-d235607f577fbaeb.js +1 -0
  413. package/.next/standalone/.next/static/chunks/91907-a4182d1a3c870d0f.js +1 -0
  414. package/.next/standalone/.next/static/chunks/99373.e659954ff5148796.js +1 -0
  415. package/.next/standalone/.next/static/chunks/99540-99af558190f96511.js +1 -0
  416. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-adf9dbdf339e9038.js +1 -0
  417. package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/{page-82e90e222d6bc547.js → page-cf8ff072a8bc7409.js} +1 -1
  418. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-00d18e26961cee2f.js +1 -0
  419. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-9ed4d7d4f5897de0.js +1 -0
  420. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/page-9d6d86299f2fadd9.js +1 -0
  421. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-487d071317ae5e6d.js +1 -0
  422. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-b18a2aba2c4f4f1c.js +1 -0
  423. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/{page-f032ee8a80d1f56a.js → page-32149a823e7abf42.js} +1 -1
  424. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-0ac33f9146fc53c5.js +1 -0
  425. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/{page-3a83748ce0ae1c4f.js → page-7cb8a91f6ca34ba8.js} +1 -1
  426. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/{page-8af9bb9f96ab0258.js → page-6466141ca355d9a4.js} +1 -1
  427. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/{page-069c9738e516436b.js → page-793285a6cf214896.js} +1 -1
  428. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-ba19aec7fde5086c.js +1 -0
  429. package/.next/standalone/.next/static/chunks/app/onboarding/page-323e1d93218758c5.js +1 -0
  430. package/.next/standalone/.next/static/chunks/{webpack-de8a36d232a91d6b.js → webpack-ec441a05567c82b0.js} +1 -1
  431. package/.next/standalone/.next/static/css/652fcc1f1ab231c8.css +1 -0
  432. package/.next/standalone/package.json +1 -1
  433. package/.next/standalone/public/chorus-plugin/.claude-plugin/plugin.json +1 -1
  434. package/.next/standalone/public/chorus-plugin/agents/code-reviewer.md +63 -6
  435. package/.next/standalone/public/chorus-plugin/agents/proposal-reviewer.md +60 -6
  436. package/.next/standalone/public/chorus-plugin/agents/task-reviewer.md +75 -8
  437. package/.next/standalone/public/chorus-plugin/bin/chorus-api.sh +1 -1
  438. package/.next/standalone/public/chorus-plugin/skills/brainstorm/SKILL.md +5 -1
  439. package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +16 -1
  440. package/.next/standalone/public/chorus-plugin/skills/chorus-cli/SKILL.md +1 -1
  441. package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +1 -1
  442. package/.next/standalone/public/chorus-plugin/skills/docs/SKILL.md +1 -1
  443. package/.next/standalone/public/chorus-plugin/skills/idea/SKILL.md +13 -1
  444. package/.next/standalone/public/chorus-plugin/skills/openspec-aware/SKILL.md +1 -1
  445. package/.next/standalone/public/chorus-plugin/skills/orchestrate/SKILL.md +1 -1
  446. package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +9 -1
  447. package/.next/standalone/public/chorus-plugin/skills/quick-dev/SKILL.md +1 -1
  448. package/.next/standalone/public/chorus-plugin/skills/research/SKILL.md +51 -0
  449. package/.next/standalone/public/chorus-plugin/skills/review/SKILL.md +1 -1
  450. package/.next/standalone/public/chorus-plugin/skills/spec-lite/SKILL.md +1 -1
  451. package/.next/standalone/public/chorus-plugin/skills/yolo/SKILL.md +5 -1
  452. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus-code-reviewer.json +56 -1
  453. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus-proposal-reviewer.json +79 -1
  454. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus-task-reviewer.json +56 -1
  455. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus.json +1 -0
  456. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-brainstorm/SKILL.md +5 -1
  457. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-cli/SKILL.md +1 -1
  458. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-develop/SKILL.md +1 -1
  459. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-docs/SKILL.md +1 -1
  460. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-idea/SKILL.md +13 -1
  461. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-openspec-aware/SKILL.md +1 -1
  462. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-orchestrate/SKILL.md +1 -1
  463. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-proposal/SKILL.md +9 -1
  464. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-quick-dev/SKILL.md +1 -1
  465. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-research/SKILL.md +51 -0
  466. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-review/SKILL.md +1 -1
  467. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-spec-lite/SKILL.md +1 -1
  468. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-yolo/SKILL.md +5 -1
  469. package/.next/standalone/public/kiro-plugin/.kiro/steering/chorus.md +16 -1
  470. package/.next/standalone/public/kiro-plugin/bin/chorus-api.sh +1 -1
  471. package/.next/standalone/public/kiro-plugin/manifest.txt +1 -0
  472. package/.next/standalone/public/skill/brainstorm-chorus/SKILL.md +4 -0
  473. package/.next/standalone/public/skill/chorus/SKILL.md +20 -2
  474. package/.next/standalone/public/skill/code-reviewer-chorus/SKILL.md +60 -4
  475. package/.next/standalone/public/skill/idea-chorus/SKILL.md +12 -0
  476. package/.next/standalone/public/skill/package.json +1 -0
  477. package/.next/standalone/public/skill/proposal-chorus/SKILL.md +8 -0
  478. package/.next/standalone/public/skill/proposal-reviewer-chorus/SKILL.md +58 -5
  479. package/.next/standalone/public/skill/research-chorus/SKILL.md +51 -0
  480. package/.next/standalone/public/skill/task-reviewer-chorus/SKILL.md +72 -6
  481. package/.next/standalone/public/skill/yolo-chorus/SKILL.md +4 -0
  482. package/README.ja.md +5 -11
  483. package/README.ko.md +5 -11
  484. package/README.md +5 -11
  485. package/README.zh.md +5 -11
  486. package/cli/control-handler.mjs +20 -0
  487. package/cli/daemon-rest-client.mjs +7 -4
  488. package/cli/event-router.mjs +65 -3
  489. package/cli/operation-contract.mjs +3 -0
  490. package/cli/operation-prompts.mjs +99 -0
  491. package/cli/operation.mjs +46 -0
  492. package/cli/prompts.mjs +7 -0
  493. package/cli/wake-queue.mjs +5 -1
  494. package/cli/waker.mjs +127 -4
  495. package/package.json +1 -1
  496. package/prisma/migrations/20260927073000_add_daemon_operation_payload/migration.sql +1 -0
  497. package/prisma/schema.prisma +3 -2
  498. package/.next/standalone/.next/server/chunks/1318.js +0 -1
  499. package/.next/standalone/.next/server/chunks/1416.js +0 -88
  500. package/.next/standalone/.next/server/chunks/2195.js +0 -1
  501. package/.next/standalone/.next/server/chunks/2758.js +0 -1
  502. package/.next/standalone/.next/server/chunks/4066.js +0 -1
  503. package/.next/standalone/.next/server/chunks/457.js +0 -1
  504. package/.next/standalone/.next/server/chunks/5300.js +0 -1
  505. package/.next/standalone/.next/server/chunks/7675.js +0 -1
  506. package/.next/standalone/.next/server/chunks/8044.js +0 -1
  507. package/.next/standalone/.next/server/chunks/8454.js +0 -1
  508. package/.next/standalone/.next/static/chunks/11595.f080a1d100972212.js +0 -1
  509. package/.next/standalone/.next/static/chunks/14628-283d3983d1fb36c9.js +0 -1
  510. package/.next/standalone/.next/static/chunks/17099-936da9caf4c119b8.js +0 -1
  511. package/.next/standalone/.next/static/chunks/17562-56f932146e9e6c94.js +0 -10
  512. package/.next/standalone/.next/static/chunks/25080-25ad29e64c855338.js +0 -1
  513. package/.next/standalone/.next/static/chunks/27370-c056dee2016c9124.js +0 -1
  514. package/.next/standalone/.next/static/chunks/28698-7fb271ffc6e63a26.js +0 -1
  515. package/.next/standalone/.next/static/chunks/31308-bb4a97b3f39c22dd.js +0 -1
  516. package/.next/standalone/.next/static/chunks/32736-aeaaa1e4c4d5529b.js +0 -1
  517. package/.next/standalone/.next/static/chunks/33456.20313bd67a5c41cc.js +0 -1
  518. package/.next/standalone/.next/static/chunks/35432-5c245212c7595169.js +0 -1
  519. package/.next/standalone/.next/static/chunks/45024-eb7c062d13d9fe08.js +0 -1
  520. package/.next/standalone/.next/static/chunks/4860.3b555a398cdffb19.js +0 -1
  521. package/.next/standalone/.next/static/chunks/67580-8733964ab2c7fc0e.js +0 -1
  522. package/.next/standalone/.next/static/chunks/75257-99c0ce24b436847b.js +0 -1
  523. package/.next/standalone/.next/static/chunks/7777-8b1b6681256e1534.js +0 -1
  524. package/.next/standalone/.next/static/chunks/78155-db70d9684a1e77a2.js +0 -1
  525. package/.next/standalone/.next/static/chunks/79919-0c6dcda1dd8646f0.js +0 -1
  526. package/.next/standalone/.next/static/chunks/91328-f501e3c3ca519a92.js +0 -1
  527. package/.next/standalone/.next/static/chunks/94643-e54eff17e941a93b.js +0 -1
  528. package/.next/standalone/.next/static/chunks/99373.b8a95d1bec5ad4e7.js +0 -1
  529. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-f3c6431432d42c7c.js +0 -1
  530. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-5d723f974bdad33b.js +0 -1
  531. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-8d3b1f4d8b76d66c.js +0 -1
  532. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/page-57c698dea2fa6e29.js +0 -1
  533. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-d2bb622855e746f1.js +0 -1
  534. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-fc255dc3612032b9.js +0 -1
  535. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-46a0ddfd0421b0a8.js +0 -1
  536. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-b02939820affdae5.js +0 -1
  537. package/.next/standalone/.next/static/chunks/app/onboarding/page-d2c0c7951114e763.js +0 -1
  538. package/.next/standalone/.next/static/css/44f13b43a3de716d.css +0 -1
  539. /package/.next/standalone/.next/static/{dot63ILT878Tloqi7Czj_ → AWk31w7ryFKaxOnUlIeo2}/_buildManifest.js +0 -0
  540. /package/.next/standalone/.next/static/{dot63ILT878Tloqi7Czj_ → AWk31w7ryFKaxOnUlIeo2}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[71921],{6930:(e,t,n)=>{n.d(t,{Y:()=>c});var r=n(90508),a=n(12790),s=n.n(a),l=n(23675),i=n(26260),o=n(52309),d=n(39268);function c(e){var t,n;let{target:a}=e,c=(0,d.c)("fixedCwdAnchor"),u=(0,l.useParams)();return(0,r.jsxs)("div",{role:"region","aria-label":c("title"),className:"space-y-2 rounded-lg border border-border bg-background p-3",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 text-xs font-medium text-foreground",children:[(0,r.jsx)(i.A,{className:"h-4 w-4 text-primary","aria-hidden":!0}),c("title")]}),(0,r.jsxs)("dl",{className:"grid grid-cols-[auto_minmax(0,1fr)] gap-x-3 gap-y-1 text-[11px]",children:[(0,r.jsx)("dt",{className:"text-muted-foreground",children:c("host")}),(0,r.jsx)("dd",{className:"truncate font-mono text-foreground",children:null!=(t=a.host)?t:c("unknown")}),(0,r.jsx)("dt",{className:"text-muted-foreground",children:c("cwd")}),(0,r.jsx)("dd",{className:"break-all font-mono text-foreground",children:null!=(n=a.cwd)?n:c("unknown")}),(0,r.jsx)("dt",{className:"text-muted-foreground",children:c("status")}),(0,r.jsx)("dd",{className:"text-foreground",children:c("availability.".concat(a.availability))})]}),(0,r.jsxs)(s(),{href:"/projects/".concat(u.uuid,"/dashboard?settings=agent-cwds"),className:"inline-flex items-center gap-1.5 text-[11px] font-medium text-primary hover:underline",children:[(0,r.jsx)(o.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),c("manage")]})]})}},16349:(e,t,n)=>{n.d(t,{As:()=>c,OJ:()=>d});var r=n(90508),a=n(1856),s=n(91814),l=n(62990),i=n(67712);let o=(0,a.createContext)(null);function d(e){let{children:t}=e,n=(0,s.r)(),[d,c]=(0,a.useState)(null),[u,x]=(0,a.useState)(null),[m,f]=(0,a.useState)(!0),[g,p]=(0,a.useState)(null),h=(0,a.useCallback)(()=>{c(null),x(null),p("Session expired. Please log in again."),(0,l.cC)(),n.push("/login")},[n]),v=(0,a.useCallback)(async()=>{try{let e=await (0,l.tm)("/api/session");if(401===e.status&&(e=await (0,l.tm)("/api/session"),401===e.status&&await (0,l.IT)()&&(e=await (0,l.tm)("/api/session")),401===e.status))return h(),!1;let t=await e.json();if(t.success)return c(t.data.user),x(t.data.company),!0;return!1}catch(e){return!1}},[h]);(0,a.useEffect)(()=>{(async()=>{f(!0),await v(),f(!1)})()},[v]);let b=(0,a.useRef)(v);b.current=v;let j=(0,a.useRef)(!1);(0,a.useEffect)(()=>{let e=async()=>{if(!j.current){j.current=!0;try{await b.current()}finally{j.current=!1}}},t=t=>{t.persisted&&e()},n=()=>{"visible"===document.visibilityState&&e()};return window.addEventListener("pageshow",t),document.addEventListener("visibilitychange",n),()=>{window.removeEventListener("pageshow",t),document.removeEventListener("visibilitychange",n)}},[]);let w=async()=>{try{await fetch("/api/session",{method:"DELETE"}),await (0,l.ri)(),c(null),x(null),n.push("/login")}catch(e){i.q.error("Logout error:",e),(0,l.w9)(),n.push("/login")}},y=async()=>{await v()};return(0,r.jsx)(o.Provider,{value:{user:d,company:u,loading:m,error:g,logout:w,refreshSession:y},children:t})}function c(){let e=(0,a.useContext)(o);if(!e)throw Error("useAuth must be used within an AuthProvider");return e}},17001:(e,t,n)=>{n.d(t,{AM:()=>l,Wv:()=>i,hl:()=>o});var r=n(90508);n(1856);var a=n(2300),s=n(24377);function l(e){let{...t}=e;return(0,r.jsx)(a.Root,{"data-slot":"popover",...t})}function i(e){let{...t}=e;return(0,r.jsx)(a.Trigger,{"data-slot":"popover-trigger",...t})}function o(e){let{className:t,align:n="center",sideOffset:l=4,...i}=e;return(0,r.jsx)(a.Portal,{children:(0,r.jsx)(a.Content,{"data-slot":"popover-content",align:n,sideOffset:l,className:(0,s.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",t),...i})})}},18277:(e,t,n)=>{n.d(t,{Bs:()=>v});var r=n(90508),a=n(1856),s=n(12790),l=n.n(s),i=n(39268),o=n(60532),d=n(25373),c=n(39180),u=n(22922),x=n(67712);let m="@chorus-aidlc/chorus",f="npx ".concat(m," daemon"),g="npx ".concat(m," login"),p="/onboarding";function h(e){let{command:t}=e,n=(0,i.c)("daemonConnectCta"),[s,l]=(0,a.useState)(!1),c=async()=>{try{var e;await (null==(e=navigator.clipboard)?void 0:e.writeText(t)),l(!0),setTimeout(()=>l(!1),2e3)}catch(e){x.q.error("Failed to copy daemon command:",e)}};return(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("code",{className:"flex-1 overflow-x-auto rounded-md bg-foreground px-3 py-2 font-mono text-[12.5px] leading-relaxed text-background",children:t}),(0,r.jsx)(u.$,{variant:"outline",size:"sm",onClick:c,"aria-label":n(s?"copied":"copy"),"aria-live":"polite",className:"shrink-0",children:s?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(o.A,{className:"mr-1 h-4 w-4 text-green-500"}),n("copied")]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(d.A,{className:"mr-1 h-4 w-4"}),n("copy")]})})]})}function v(e){let{variant:t}=e,n=(0,i.c)("daemonConnectCta");return"compact"===t?(0,r.jsxs)("div",{className:"flex flex-col gap-2.5 px-1 py-1.5",children:[(0,r.jsxs)("div",{className:"flex items-start gap-2",children:[(0,r.jsx)(c.A,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary","aria-hidden":!0}),(0,r.jsx)("p",{className:"text-[12.5px] leading-relaxed text-muted-foreground",children:n("body")})]}),(0,r.jsx)(h,{command:f}),(0,r.jsx)("p",{className:"text-[11.5px] leading-relaxed text-muted-foreground",children:n("loginNote",{command:g})}),(0,r.jsx)(l(),{href:p,className:"text-[12px] font-medium text-primary hover:text-[#A65F3C] hover:underline",children:n("learnMore")})]}):(0,r.jsxs)("div",{className:"flex w-full flex-col gap-3 rounded-xl border border-[#EFEBE4] dark:border-[#2a2a2e] bg-[#FCFBF8] dark:bg-[#1e1d1b] p-5 text-left",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(c.A,{className:"h-4 w-4 text-primary","aria-hidden":!0}),(0,r.jsx)("h3",{className:"text-[14px] font-semibold text-foreground",children:n("headline")})]}),(0,r.jsx)("p",{className:"text-[13px] leading-relaxed text-muted-foreground",children:n("bodyLong")}),(0,r.jsx)(h,{command:f}),(0,r.jsx)("p",{className:"text-[12px] leading-relaxed text-muted-foreground",children:n("loginNote",{command:g})}),(0,r.jsx)(l(),{href:p,className:"text-[12.5px] font-medium text-primary hover:text-[#A65F3C] hover:underline",children:n("learnMore")})]})}},21180:(e,t,n)=>{n.d(t,{V:()=>u});var r=n(90508),a=n(1856),s=n(39268),l=n(42305),i=n(22922),o=n(97438),d=n(78307),c=n(41837);function u(e){var t;let{open:n,agentName:u,instances:x,onConfirm:m,agentUuid:f,onTemporaryConfirm:g,onCancel:p,onCloseAutoFocus:h}=e,v=(0,s.c)("wakeCwdPicker"),[b,j]=(0,a.useState)(null),[w,y]=(0,a.useState)(!1);(0,a.useEffect)(()=>{if(n){var e;j(null!=(e=x[0])?e:null),y(!1)}},[n,x]);let N=new Set(x.map(e=>e.host)).size;return(0,r.jsx)(o.lG,{open:n,onOpenChange:e=>{e||p()},children:(0,r.jsxs)(o.Cf,{onCloseAutoFocus:h,className:"z-[110] flex max-h-[85svh] flex-col gap-0 sm:max-w-md",overlayClassName:"z-[110]",children:[(0,r.jsxs)(o.c7,{className:"shrink-0",children:[(0,r.jsx)(o.L3,{children:v("title")}),(0,r.jsx)(o.rr,{children:v("subtitle",{name:u,count:x.length,hosts:N})})]}),(0,r.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto py-3",onKeyDown:e=>{!(w||"Enter"!==e.key||(0,l.P)(e))&&b&&(e.preventDefault(),m(b))},children:w&&f&&g?(0,r.jsx)(c.e,{agentUuid:f,instances:x,confirmLabel:v("useOnce"),onValidated:e=>g({agentUuid:e.agentUuid,validationRequestUuid:e.validationRequestUuid})}):(0,r.jsx)(d.O,{instances:x,selectedConnectionUuid:null!=(t=null==b?void 0:b.connectionUuid)?t:null,onSelect:j,ariaLabel:v("title")})}),(0,r.jsxs)(o.Es,{className:"shrink-0",children:[(0,r.jsx)(i.$,{variant:"ghost",onClick:p,children:v("cancel")}),f&&g&&(0,r.jsx)(i.$,{variant:"outline",onClick:()=>y(e=>!e),children:v(w?"registeredDirectories":"browseAnother")}),!w&&(0,r.jsx)(i.$,{disabled:!b,onClick:()=>{b&&m(b)},children:v("confirm")})]})]})})}},24900:(e,t,n)=>{n.d(t,{g9:()=>l,kn:()=>s});let r="agentPresence.unknownPath",a="agentPresence.unknownHost";function s(e){var t,n;let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(null===e)return{label:r,title:r,isUnknown:!0};let s=null!=(t=a.tailSegments)?t:2,l=null!=(n=a.charBudget)?n:28,i=e.replace(/\\/g,"/").split("/").filter(e=>e.length>0);if(0===i.length)return{label:e,title:e,isUnknown:!1};let o=i.length>s,d=i.slice(-s),c=(e,t)=>{let n=e.join("/");return t?"".concat("…/").concat(n):n},u=d,x=o,m=c(u,x);for(;m.length>l&&u.length>1;)m=c(u=u.slice(1),x=!0);return{label:m,title:e,isUnknown:!1}}function l(e){var t;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(""===e)return{label:a,title:a,isUnknown:!0};let r=null!=(t=n.charBudget)?t:18;if(e.length<=r)return{label:e,title:e,isUnknown:!1};let s=Math.max(0,r-1);return{label:"".concat(e.slice(0,s)).concat("…"),title:e,isUnknown:!1}}},36550:(e,t,n)=>{n.d(t,{MG:()=>k,lb:()=>C,wL:()=>U,yw:()=>N});var r=n(90508),a=n(1856),s=n(39268),l=n(67587),i=n(12790),o=n.n(i),d=n(13142),c=n(85226),u=n(59133),x=n(88591),m=n(93134),f=n(43057),g=n(20578),p=n(10263),h=n(57731),v=n(22922),b=n(51817),j=n(62990),w=n(67712),y=n(95291);function N(e){var t;let{target:n,variant:i="execution"}=e,o=(0,s.c)("agentConnections"),u=(0,s.c)("common"),[x,m]=(0,a.useState)(!1),[f,g]=(0,a.useState)(!1),p="stuckTurn"===i,h=(null==(t=n.entityTitle)?void 0:t.trim())||o("execEntityUnknown"),y=async()=>{g(!0);try{let t=await (0,j.tm)("/api/daemon/control",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:"interrupt",targetConnectionUuid:n.connectionUuid,entityType:n.entityType,entityUuid:n.entityUuid})});if(!t.ok){let e=o("interruptError");try{let n=await t.json();n&&"string"==typeof n.error&&n.error&&(e=n.error)}catch(e){}l.oR.error(e);return}let r=!1;try{var e;let n=await t.json();r=(null==n||null==(e=n.data)?void 0:e.settled)===!0}catch(e){}l.oR.success(p?r?o("interruptStuckSuccess",{title:h}):o("interruptStuckRequested",{title:h}):o("interruptSuccess",{title:h})),m(!1)}catch(e){w.q.error("Failed to request daemon interrupt:",e),l.oR.error(o("interruptError"))}finally{g(!1)}};return(0,r.jsxs)(b.Lt,{open:x,onOpenChange:e=>!f&&m(e),children:[(0,r.jsx)(b.tv,{asChild:!0,children:(0,r.jsxs)(v.$,{variant:"ghost",size:"sm","aria-label":p?o("clearStuckTurnAria"):o("interruptAria"),className:"h-7 shrink-0 gap-1.5 rounded-lg px-2.5 text-[12px] font-medium text-[#B45309] dark:text-[#E0A34E] hover:bg-[#FEF3C7] dark:hover:bg-[#33270f] hover:text-[#92400E]",children:[(0,r.jsx)(d.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),o("interrupt")]})}),(0,r.jsxs)(b.EO,{children:[(0,r.jsxs)(b.wd,{children:[(0,r.jsx)(b.r7,{children:p?o("interruptStuckConfirmTitle"):o("interruptConfirmTitle")}),(0,r.jsx)(b.$v,{children:p?o("interruptStuckConfirmBody",{title:h}):o("interruptConfirmBody",{title:h})})]}),(0,r.jsxs)(b.ck,{children:[(0,r.jsx)(b.Zr,{disabled:f,children:u("cancel")}),(0,r.jsx)(b.Rx,{variant:"destructive",disabled:f,onClick:e=>{e.preventDefault(),y()},children:f?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(c.A,{className:"mr-2 h-4 w-4 motion-safe:animate-spin","aria-hidden":!0}),o("interrupting")]}):p?o("interruptStuckConfirmAction"):o("interruptConfirmAction")})]})]})]})}function k(e){var t;let{exec:n}=e,i=(0,s.c)("agentConnections"),[o,d]=(0,a.useState)(!1),x=(null==(t=n.entityTitle)?void 0:t.trim())||i("execEntityUnknown"),m=async()=>{d(!0);try{let e=await (0,j.tm)("/api/daemon/resume",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({connectionUuid:n.connectionUuid,entityType:n.entityType,entityUuid:n.entityUuid})});if(!e.ok){let t=i("resumeError");try{let n=await e.json();n&&"string"==typeof n.error&&n.error&&(t=n.error)}catch(e){}l.oR.error(t);return}l.oR.success(i("resumeSuccess",{title:x}))}catch(e){w.q.error("Failed to request daemon resume:",e),l.oR.error(i("resumeError"))}finally{d(!1)}};return(0,r.jsxs)(v.$,{variant:"ghost",size:"sm",disabled:o,"aria-label":i("resumeAria"),onClick:()=>void m(),className:"h-7 shrink-0 gap-1.5 rounded-lg px-2.5 text-[12px] font-medium text-[#15803D] dark:text-[#4FD07A] hover:bg-[#DCFCE7] dark:hover:bg-[#13291d] hover:text-[#166534]",children:[o?(0,r.jsx)(c.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,r.jsx)(u.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),o?i("resuming"):i("resume")]})}function C(e){var t,n;let{exec:a,nowMs:l,layout:i="inline"}=e,d=(0,s.c)("agentConnections"),u=(0,y.l5)(),v=(0,y.tN)(),b="running"===a.status,j="interrupted"===a.status,w=j&&"user"===a.interruptedReason,C="stacked"===i,U="daemon_session"===a.entityType,A=U?(null==(t=a.entityTitle)?void 0:t.trim())||d("execConversation"):(null==(n=a.entityTitle)?void 0:n.trim())||d("execEntityUnknown"),E=(0,y.BS)(a),S=C?"line-clamp-2":"truncate",T=(0,r.jsx)("span",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg ".concat(b?"bg-primary/[0.08]":j?"bg-[#FEF3C7] dark:bg-[#33270f]":"bg-[#F0EDE8] dark:bg-[#1f1e1c]"),"aria-hidden":!0,children:b?(0,r.jsx)(c.A,{className:"h-4 w-4 text-primary motion-safe:animate-spin"}):j?(0,r.jsx)(x.A,{className:"h-4 w-4 text-[#B45309] dark:text-[#E0A34E]"}):(0,r.jsx)(m.A,{className:"h-4 w-4 text-muted-foreground"})}),F=(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsxs)("div",{className:"flex items-center gap-1.5",children:[U?(0,r.jsx)(f.A,{className:"h-3.5 w-3.5 shrink-0 text-primary","aria-hidden":!0}):(0,r.jsx)(h.E,{variant:"secondary",className:"shrink-0 border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-1.5 py-0 text-[10px] font-medium text-muted-foreground",children:v(a.entityType)}),E?(0,r.jsxs)(o(),{href:E,className:"group inline-flex min-w-0 items-center gap-1.5 ".concat(S," text-[14px] font-medium text-foreground hover:text-primary"),children:[(0,r.jsx)("span",{className:S,children:A}),(0,r.jsx)(g.A,{className:"h-3.5 w-3.5 shrink-0 text-[#C8C3BA] group-hover:text-primary"})]}):(0,r.jsx)("span",{className:"block ".concat(S," text-[14px] font-medium ").concat(U?"text-foreground":"text-muted-foreground"),children:A})]}),a.rootIdeaTitle&&(0,r.jsxs)("div",{className:"mt-1 flex items-center gap-1.5",children:[(0,r.jsx)(p.A,{className:"h-3 w-3 shrink-0 text-[#9A8C7E]","aria-hidden":!0}),(0,r.jsx)("span",{className:"".concat(C?"":"truncate"," text-[11px] text-[#9A8C7E]"),children:d("execSession",{idea:a.rootIdeaTitle})})]})]}),M=b?(0,r.jsxs)(r.Fragment,{children:[a.startedAt&&(0,r.jsx)("span",{className:"font-mono text-[12px] font-medium tabular-nums text-[#15803D] dark:text-[#4FD07A]",title:d("execElapsedLabel"),children:u(a.startedAt,l)}),(0,r.jsx)(N,{target:a})]}):j?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(h.E,{variant:"secondary",className:"shrink-0 gap-1 border-0 bg-[#FEF3C7] dark:bg-[#33270f] px-2 py-0.5 text-[10px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:[(0,r.jsx)(x.A,{className:"h-3 w-3","aria-hidden":!0}),d(w?"execInterruptedUser":"execInterruptedCrash")]}),(0,r.jsx)(k,{exec:a})]}):(0,r.jsx)("span",{className:"text-[11px] font-medium text-muted-foreground",children:d("execWaiting")});return C?(0,r.jsxs)("li",{className:"flex flex-col gap-2 rounded-xl border border-border bg-card px-3.5 py-3",children:[(0,r.jsxs)("div",{className:"flex items-start gap-3",children:[T,F]}),(0,r.jsx)("div",{className:"flex flex-wrap items-center gap-2 pl-11",children:M})]}):(0,r.jsxs)("li",{className:"flex items-center gap-3 rounded-xl border border-border bg-card px-3.5 py-3",children:[T,F,b||j?(0,r.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:M}):(0,r.jsx)("span",{className:"shrink-0 text-[11px] font-medium text-muted-foreground",children:d("execWaiting")})]})}function U(e){let{icon:t,label:n,count:a,children:s}=e;return(0,r.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(t,{className:"h-4 w-4 text-primary","aria-hidden":!0}),(0,r.jsx)("span",{className:"text-[12px] font-semibold uppercase tracking-wide text-muted-foreground",children:n}),(0,r.jsx)(h.E,{variant:"secondary",className:"border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-1.5 py-0 font-mono text-[10px] font-medium text-[#9A8C7E]",children:a})]}),(0,r.jsx)("ul",{className:"flex flex-col gap-2",children:s})]})}},37627:(e,t,n)=>{n.d(t,{m:()=>a});var r=n(90508);function a(e){let{online:t,size:n="sm"}=e,a="md"===n?"h-2.5 w-2.5":"h-2 w-2";return t?(0,r.jsxs)("span",{"aria-hidden":!0,className:"relative inline-flex ".concat(a," items-center justify-center"),children:[(0,r.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-[#22C55E] opacity-30 motion-safe:animate-ping"}),(0,r.jsx)("span",{className:"relative inline-flex ".concat("md"===n?"h-1.5 w-1.5":"h-1 w-1"," rounded-full bg-[#22C55E]")})]}):(0,r.jsx)("span",{"aria-hidden":!0,className:"".concat(a," rounded-full bg-[#9A9A9A] opacity-60")})}n(57731)},41033:(e,t,n)=>{n.d(t,{C:()=>o,z:()=>i});var r=n(90508);n(1856);var a=n(97964),s=n(63197),l=n(24377);function i(e){let{className:t,...n}=e;return(0,r.jsx)(s.Root,{"data-slot":"radio-group",className:(0,l.cn)("grid gap-3",t),...n})}function o(e){let{className:t,...n}=e;return(0,r.jsx)(s.Item,{"data-slot":"radio-group-item",className:(0,l.cn)("border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...n,children:(0,r.jsx)(s.Indicator,{"data-slot":"radio-group-indicator",className:"relative flex items-center justify-center",children:(0,r.jsx)(a.A,{className:"fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2"})})})}},51817:(e,t,n)=>{n.d(t,{$v:()=>g,EO:()=>u,Lt:()=>i,Rx:()=>p,Zr:()=>h,ck:()=>m,r7:()=>f,tv:()=>o,wd:()=>x});var r=n(90508);n(1856);var a=n(90299),s=n(24377),l=n(22922);function i(e){let{...t}=e;return(0,r.jsx)(a.Root,{"data-slot":"alert-dialog",...t})}function o(e){let{...t}=e;return(0,r.jsx)(a.Trigger,{"data-slot":"alert-dialog-trigger",...t})}function d(e){let{...t}=e;return(0,r.jsx)(a.Portal,{"data-slot":"alert-dialog-portal",...t})}function c(e){let{className:t,...n}=e;return(0,r.jsx)(a.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,s.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...n})}function u(e){let{className:t,overlayClassName:n,size:l="default",...i}=e;return(0,r.jsxs)(d,{children:[(0,r.jsx)(c,{className:n}),(0,r.jsx)(a.Content,{"data-slot":"alert-dialog-content","data-size":l,className:(0,s.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 group/alert-dialog-content fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg",t),...i})]})}function x(e){let{className:t,...n}=e;return(0,r.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,s.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",t),...n})}function m(e){let{className:t,...n}=e;return(0,r.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,s.cn)("flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",t),...n})}function f(e){let{className:t,...n}=e;return(0,r.jsx)(a.Title,{"data-slot":"alert-dialog-title",className:(0,s.cn)("text-lg font-semibold sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",t),...n})}function g(e){let{className:t,...n}=e;return(0,r.jsx)(a.Description,{"data-slot":"alert-dialog-description",className:(0,s.cn)("text-muted-foreground text-sm",t),...n})}function p(e){let{className:t,variant:n="default",size:i="default",...o}=e;return(0,r.jsx)(l.$,{variant:n,size:i,asChild:!0,children:(0,r.jsx)(a.Action,{"data-slot":"alert-dialog-action",className:(0,s.cn)(t),...o})})}function h(e){let{className:t,variant:n="outline",size:i="default",...o}=e;return(0,r.jsx)(l.$,{variant:n,size:i,asChild:!0,children:(0,r.jsx)(a.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,s.cn)(t),...o})})}},57223:(e,t,n)=>{n.d(t,{E:()=>s});var r=n(90508),a=n(24377);function s(e){let{className:t,...n}=e;return(0,r.jsx)("div",{"data-slot":"skeleton",className:(0,a.cn)("bg-accent animate-pulse rounded-md",t),...n})}},57731:(e,t,n)=>{n.d(t,{E:()=>o});var r=n(90508);n(1856);var a=n(49499),s=n(54154),l=n(24377);let i=(0,a.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function o(e){let{className:t,variant:n="default",asChild:a=!1,...o}=e,d=a?s.bL:"span";return(0,r.jsx)(d,{"data-slot":"badge","data-variant":n,className:(0,l.cn)(i({variant:n}),t),...o})}},59208:(e,t,n)=>{n.d(t,{$d:()=>x,Oj:()=>c,kz:()=>m});var r=n(90508),a=n(1856),s=n(62990),l=n(67712),i=n(95126);let o=(0,a.createContext)(null);function d(){return{sessions:new Map,endedActivities:new Set}}function c(e){let{children:t}=e;return(0,i.jj)()?(0,r.jsx)(u,{children:t}):(0,r.jsx)(i.Qb,{children:(0,r.jsx)(c,{children:t})})}function u(e){let{children:t}=e,{subscribe:n,openGeneration:c,sessionUuid:u,setSessionUuid:x}=(0,i.D1)(),[m,f]=(0,a.useState)("loading"),[g,p]=(0,a.useState)([]),[h,v]=(0,a.useState)({}),[b,j]=(0,a.useState)(!1),[w,y]=(0,a.useState)(d),[N,k]=(0,a.useState)(!1),[C,U]=(0,a.useState)(null),A=(0,a.useRef)(new Set),E=(0,a.useRef)({}),S=(0,a.useRef)(0),T=(0,a.useRef)(!1),F=(0,a.useRef)({sawAuth401:!1,sawHealthy:!1}),M=(0,a.useCallback)(async()=>{try{let t=await (0,s.tm)("/api/agent-connections");if(!t.ok){401===t.status&&(F.current.sawAuth401=!0),f("error");return}F.current.sawHealthy=!0;let n=await t.json();if(n.success){var e;p(null!=(e=n.data.connections)?e:[]),f("ok")}else f("error")}catch(e){l.q.error("Failed to fetch agent connections:",e),f("error")}},[]),I=(0,a.useCallback)(async()=>{let e={...E.current};try{let n=await (0,s.tm)("/api/daemon/executions");if(!n.ok){401===n.status&&(F.current.sawAuth401=!0);return}F.current.sawHealthy=!0;let r=await n.json();if(r.success){var t;let n=function(e){let t={};for(let a of e){var n,r;(null!=(r=t[n=a.connectionUuid])?r:t[n]=[]).push(a)}return t}(null!=(t=r.data.executions)?t:[]);v(t=>{let r={...n};for(let n of Object.keys(E.current))E.current[n]!==e[n]&&(void 0===t[n]?delete r[n]:r[n]=t[n]);return r})}}catch(e){l.q.error("Failed to fetch daemon executions:",e)}finally{j(!0)}},[]);(0,a.useEffect)(()=>{let e=null,t=!1,n=async()=>{if(F.current={sawAuth401:!1,sawHealthy:!1},await Promise.all([M(),I()]),t)return;let{sawAuth401:n,sawHealthy:r}=F.current;n&&!r?(S.current+=1,S.current>=2&&e&&(clearInterval(e),e=null,T.current=!0,l.q.warn("Agent-presence poll paused: session appears dead (consecutive 401 ticks). Will re-arm on next visibility."))):r&&(S.current=0)},r=()=>{T.current=!1,S.current=0,n(),e=setInterval(n,15e3)},a=()=>{"visible"===document.visibilityState&&T.current&&!t&&r()};return r(),document.addEventListener("visibilitychange",a),()=>{t=!0,e&&clearInterval(e),document.removeEventListener("visibilitychange",a)}},[M,I]),(0,a.useEffect)(()=>n(e=>{if(e.type===i.a7)return void y(d());if(!function(e,t){if("transcript"!==e.type)return!1;for(let n of t)n(e);return!0}(e,A.current)){if("session_started"===e.type||"session_ended"===e.type)return void y(t=>(function(e,t){var n;if("session_ended"===t.type){let n=new Set(e.endedActivities);n.add(t.activityUuid);let r=e.sessions.get(t.sessionUuid);if(!r||!r.activities.has(t.activityUuid))return{sessions:e.sessions,endedActivities:n};let a=new Set(r.activities);a.delete(t.activityUuid);let s=new Map(e.sessions);return 0===a.size?s.delete(t.sessionUuid):s.set(t.sessionUuid,{...r,activities:a}),{sessions:s,endedActivities:n}}if(e.endedActivities.has(t.activityUuid))return e;let r=e.sessions.get(t.sessionUuid),a=new Set(null!=(n=null==r?void 0:r.activities)?n:[]);if(a.has(t.activityUuid))return e;a.add(t.activityUuid);let s=new Map(e.sessions);return s.set(t.sessionUuid,{sessionUuid:t.sessionUuid,ideaUuid:t.directIdeaUuid,agentUuid:t.agentUuid,originConnectionUuid:t.originConnectionUuid,activities:a,canOpen:t.canOpen}),{sessions:s,endedActivities:e.endedActivities}})(t,e));if("execution"===e.type){var t;E.current[e.connectionUuid]=(null!=(t=E.current[e.connectionUuid])?t:0)+1,v(t=>(function(e,t){let n={...e};return 0===t.executions.length?delete n[t.connectionUuid]:n[t.connectionUuid]=t.executions,n})(t,e))}}}),[n]);let R=(0,a.useRef)(null);(0,a.useEffect)(()=>{if(0!==c){if(null===R.current){R.current=c;return}c>R.current&&(R.current=c,I())}},[c,I]);let z=(0,a.useMemo)(()=>g.filter(e=>"online"===e.effectiveStatus).length,[g]),B=(0,a.useMemo)(()=>(function(e,t){let n=new Map(t.map(e=>[e.uuid,e])),r=new Map;for(let t of e.sessions.values()){var a,s,l,i;if(!t.ideaUuid)continue;let e=n.get(t.originConnectionUuid),o={sessionUuid:t.sessionUuid,ideaUuid:t.ideaUuid,agentUuid:t.agentUuid,originConnectionUuid:t.originConnectionUuid,activities:t.activities,agentName:null!=(a=null==e?void 0:e.agentName)?a:null,host:null!=(s=null==e?void 0:e.host)?s:null,cwd:null!=(l=null==e?void 0:e.cwd)?l:null,connectionAvailable:null!=e,canOpen:t.canOpen},d=null!=(i=r.get(t.ideaUuid))?i:[];d.push(o),r.set(t.ideaUuid,d)}for(let e of r.values())e.sort((e,t)=>e.agentUuid.localeCompare(t.agentUuid)||e.originConnectionUuid.localeCompare(t.originConnectionUuid)||e.sessionUuid.localeCompare(t.sessionUuid));return r})(w,g),[w,g]),L=(0,a.useCallback)(e=>(A.current.add(e),()=>{A.current.delete(e)}),[]),q=(0,a.useCallback)((e,t)=>{U(t?{agentUuid:e,pin:t}:{agentUuid:e}),k(!0)},[]),O=(0,a.useCallback)(e=>{if(!e.canOpen)return;let t=g.find(t=>t.uuid===e.originConnectionUuid);U({agentUuid:e.agentUuid,sessionUuid:e.sessionUuid,...t?{pin:{host:t.host,cwd:t.cwd}}:{}}),k(!0)},[g]),_=(0,a.useCallback)(()=>{U(null)},[]),D=(0,a.useMemo)(()=>({status:m,connections:g,onlineCount:z,executionsByConnection:h,executionsLoaded:b,activeSessionsByIdea:B,modalOpen:N,setModalOpen:k,openSession:u,setOpenSession:x,subscribeTranscript:L,focusTarget:C,openChatForAgent:q,openChatForActiveSession:O,clearChatFocusTarget:_,refreshConnections:M}),[m,g,z,h,b,B,N,u,x,L,C,q,O,_,M]);return(0,r.jsx)(o.Provider,{value:D,children:t})}function x(){let e=(0,a.useContext)(o);if(!e)throw Error("useAgentPresence must be used within an AgentPresenceProvider");return e}function m(){return(0,a.useContext)(o)}},64993:(e,t,n)=>{n.d(t,{F:()=>l});var r=n(90508);n(1856);var a=n(65326),s=n(24377);function l(e){let{className:t,children:n,...l}=e;return(0,r.jsxs)(a.Root,{"data-slot":"scroll-area",className:(0,s.cn)("relative",t),...l,children:[(0,r.jsx)(a.Viewport,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",children:n}),(0,r.jsx)(i,{}),(0,r.jsx)(a.Corner,{})]})}function i(e){let{className:t,orientation:n="vertical",...l}=e;return(0,r.jsx)(a.ScrollAreaScrollbar,{"data-slot":"scroll-area-scrollbar",orientation:n,className:(0,s.cn)("flex touch-none p-px transition-colors select-none","vertical"===n&&"h-full w-2.5 border-l border-l-transparent","horizontal"===n&&"h-2.5 flex-col border-t border-t-transparent",t),...l,children:(0,r.jsx)(a.ScrollAreaThumb,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}},67712:(e,t,n)=>{n.d(t,{q:()=>i});var r=n(55036);let a={debug:0,info:1,warn:2,error:3},s=r.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function l(e){return a[e]>=a[s]}let i={debug:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];l("debug")&&console.debug("[Chorus] ".concat(e),...n)},info:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];l("info")&&console.info("[Chorus] ".concat(e),...n)},warn:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];l("warn")&&console.warn("[Chorus] ".concat(e),...n)},error:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];l("error")&&console.error("[Chorus] ".concat(e),...n)}}},68876:(e,t,n)=>{n.d(t,{N2:()=>d,mP:()=>i,qQ:()=>o});var r=n(25167),a=n(81235),s=n(27472),l=n(18267);let i=["docs","repo","issue_pr","paper_blog"],o={docs:{labelKey:"references.typeDocs",badgeClass:"bg-blue-50 text-blue-700 dark:bg-[#13253a] dark:text-[#5AA9F0]",icon:r.A},repo:{labelKey:"references.typeRepo",badgeClass:"bg-green-50 text-green-700 dark:bg-[#14281a] dark:text-[#6FD19A]",icon:a.A},issue_pr:{labelKey:"references.typeIssuePr",badgeClass:"bg-purple-50 text-purple-700 dark:bg-[#281630] dark:text-[#C98FE0]",icon:s.A},paper_blog:{labelKey:"references.typePaperBlog",badgeClass:"bg-amber-50 text-amber-700 dark:bg-[#332a12] dark:text-[#E0B44E]",icon:l.A}};function d(e){return i.includes(e)}},68923:(e,t,n)=>{n.d(t,{CG:()=>d,Fm:()=>f,Qs:()=>p,cj:()=>o,h:()=>m,qp:()=>g});var r=n(90508);n(1856);var a=n(9160),s=n(71350),l=n(49499),i=n(24377);function o(e){let{...t}=e;return(0,r.jsx)(s.Root,{"data-slot":"sheet",...t})}function d(e){let{...t}=e;return(0,r.jsx)(s.Trigger,{"data-slot":"sheet-trigger",...t})}function c(e){let{...t}=e;return(0,r.jsx)(s.Portal,{"data-slot":"sheet-portal",...t})}function u(e){let{className:t,...n}=e;return(0,r.jsx)(s.Overlay,{"data-slot":"sheet-overlay",className:(0,i.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...n})}let x=(0,l.F)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 border-b",bottom:"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 border-t",left:"data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm",right:"data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm"}},defaultVariants:{side:"right"}});function m(e){let{className:t,children:n,side:l="right",showCloseButton:o=!0,...d}=e;return(0,r.jsxs)(c,{children:[(0,r.jsx)(u,{}),(0,r.jsxs)(s.Content,{"data-slot":"sheet-content",className:(0,i.cn)(x({side:l}),t),...d,children:[n,o?(0,r.jsxs)(s.Close,{"data-slot":"sheet-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none",children:[(0,r.jsx)(a.A,{className:"size-4"}),(0,r.jsx)("span",{className:"sr-only",children:"Close"})]}):null]})]})}function f(e){let{className:t,...n}=e;return(0,r.jsx)("div",{"data-slot":"sheet-header",className:(0,i.cn)("flex flex-col gap-2 p-4",t),...n})}function g(e){let{className:t,...n}=e;return(0,r.jsx)(s.Title,{"data-slot":"sheet-title",className:(0,i.cn)("text-foreground text-lg font-semibold",t),...n})}function p(e){let{className:t,...n}=e;return(0,r.jsx)(s.Description,{"data-slot":"sheet-description",className:(0,i.cn)("text-muted-foreground text-sm",t),...n})}},71921:(e,t,n)=>{n.d(t,{MH:()=>eQ,jQ:()=>g,fF:()=>_,jH:()=>D,Bs:()=>q.Bs,Gm:()=>e1,Jk:()=>c.Jk,fb:()=>c.fb,le:()=>r.le});var r=n(95291),a=n(37627),s=n(90508),l=n(39268),i=n(57731),o=n(91385),d=n(24900),c=n(90094);function u(e){var t,n;let{connection:a,size:u}=e,x=(0,l.c)("agentConnections"),m=(0,r.Z5)(),f=(null==(t=a.agentName)?void 0:t.trim())||x("unknownAgent"),g=null!=(n=a.clientVersion)?n:x("versionUnknown"),p=(0,d.g9)(a.host),h=p.isUnknown?x("hostUnknown"):p.label,v=p.isUnknown?x("hostUnknown"):p.title;return(0,s.jsxs)("div",{className:"flex min-w-0 items-center gap-3",children:[(0,s.jsx)(o.AgentAvatar,{name:f,size:"lg"===u?48:"md"===u?40:36,className:"shrink-0 ".concat("lg"===u?"rounded-xl":"rounded-lg")}),(0,s.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,s.jsx)("div",{className:"truncate font-semibold text-foreground ".concat("lg"===u?"text-[20px]":"md"===u?"text-[16px]":"text-[14px]"),children:f}),(0,s.jsxs)("div",{className:"mt-1 flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[(0,s.jsx)(c.Mn,{cwd:a.cwd}),(0,s.jsx)(i.E,{variant:"secondary",className:"shrink-0 border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-2 py-0.5 text-[10px] font-medium text-muted-foreground",children:m(a.clientType)}),(0,s.jsxs)("span",{title:v,className:"truncate font-mono text-[11px] text-muted-foreground",children:["v",g," \xb7 ",h]})]})]})]})}var x=n(78307);n(21180);var m=n(71388),f=n(24377);function g(e){let{cwd:t,host:n,showHost:r=!0,className:a}=e,i=(0,l.c)(),o=(0,d.kn)(t),c=o.isUnknown?i(o.label):o.label,u=o.isUnknown?i(o.title):o.title,x=(0,d.g9)(n),g=x.isUnknown?i(x.label):x.label,p=x.isUnknown?i(x.title):x.title;return(0,s.jsxs)("span",{className:(0,f.cn)("inline-flex min-w-0 items-center gap-1.5",a),children:[(0,s.jsxs)("span",{title:u,className:(0,f.cn)("inline-flex min-w-0 items-center gap-1 rounded border border-border bg-background px-1.5 py-0.5","font-mono text-[10px]",o.isUnknown?"italic text-muted-foreground":"text-muted-foreground"),children:[(0,s.jsx)(m.A,{className:"size-2.5 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,s.jsx)("span",{className:"truncate",children:c})]}),r&&(0,s.jsx)("span",{title:p,className:"shrink-0 truncate font-mono text-[10px] text-muted-foreground",children:g})]})}var p=n(36550),h=n(1856),v=n(67587),b=n(85226),j=n(88853),w=n(50153),y=n(5329),N=n(22922),k=n(15972),C=n(91846),U=n(62990),A=n(67712),E=n(42305);function S(e){return e.map(e=>{var t,n;return{connectionUuid:e.uuid,host:null!=(t=e.host)?t:"",cwd:null!=(n=e.cwd)?n:null,effectiveStatus:e.effectiveStatus}})}async function T(e,t){return z(e,t)}function F(e){let{value:t,onChange:n,onSend:r,pending:a,disabled:i,disabledReason:o,placeholder:d,sendLabel:c,layout:u,controllableExecution:x,stuckTurnTarget:m}=e,f=(0,l.c)("agentConnections"),g=0===t.trim().length,h=i||a||g,v=(0,s.jsxs)(N.$,{type:"button",size:"sm",onClick:r,disabled:h,"aria-label":c,className:"h-8 shrink-0 gap-1.5 rounded-lg bg-primary px-3.5 text-[13px] font-medium text-white hover:bg-[#B56A44] disabled:bg-border disabled:text-[#9A9A9A]",children:[a?(0,s.jsx)(b.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,s.jsx)(j.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),c]}),y=null!=x?x:null,C=m?(0,s.jsx)(p.yw,{target:m,variant:"stuckTurn"}):y?"running"===y.status?(0,s.jsx)(p.yw,{target:y}):"interrupted"===y.status&&"user"===y.interruptedReason?(0,s.jsx)(p.MG,{exec:y}):"interrupted"===y.status&&"crash"===y.interruptedReason?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"text-[11px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:f("execCrashExited")}),(0,s.jsx)(p.MG,{exec:y})]}):null:null,U=(0,s.jsxs)("div",{className:"absolute bottom-2 right-2 z-10 flex shrink-0 items-center gap-2",children:[C,v]}),A=i?(0,s.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-[12px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:[(0,s.jsx)(w.A,{className:"h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,s.jsx)("span",{className:"min-w-0",children:o})]}):null;return(0,s.jsxs)("div",{className:"flex flex-col gap-2.5",children:[A,(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)(k.T,{value:t,onChange:e=>n(e.target.value),onKeyDown:e=>{(0,E.P)(e)||"Enter"===e.key&&!e.shiftKey&&(e.preventDefault(),h||r())},disabled:i||a,placeholder:d,rows:3,className:"min-h-[76px] resize-none rounded-xl border-border bg-card pb-12 text-[14px] text-foreground placeholder:text-[#9A9A9A] focus-visible:border-primary focus-visible:ring-primary/30"}),U]})]})}function M(e){let{sessionUuid:t,originOnline:n,layout:r="inline",controllableExecution:a,stuckTurnTarget:i,agentUuid:o,onlineConnections:d=[],onSessionStarted:c}=e,u=(0,l.c)("agentConnections"),x=(0,l.c)("daemonChat"),[m,f]=(0,h.useState)(""),[g,p]=(0,h.useState)(!1),[b,j]=(0,h.useState)(!1),w=!n&&!!o&&d.length>0,k=async()=>{let e=m.trim();if(0!==e.length){p(!0);try{let n=await (0,U.tm)("/api/daemon-sessions/".concat(t,"/instruction"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({instructionText:e})});if(!n.ok)return void v.oR.error(await z(n,u("instructionError")));f("")}catch(e){A.q.error("Failed to send daemon instruction:",e),v.oR.error(u("instructionError"))}finally{p(!1)}}};return(0,s.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,s.jsx)(F,{value:m,onChange:f,onSend:k,pending:g,disabled:!n,disabledReason:n?null:x(i?"originOfflineNoteStuckTurn":"originOfflineNote"),placeholder:x("replyPlaceholder"),sendLabel:u("send"),layout:r,controllableExecution:a,stuckTurnTarget:i}),w&&(b?(0,s.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,s.jsx)("span",{className:"text-[12px] font-medium text-muted-foreground",children:x("continueOnlineHelp")}),(0,s.jsx)(I,{sessionUuid:t,onlineConnections:d,layout:r,onRepointed:c})]}):(0,s.jsxs)(N.$,{type:"button",variant:"outline",size:"sm",onClick:()=>j(!0),className:"h-8 w-fit gap-1.5 rounded-lg border-[#E5D5C6] dark:border-[#33302a] bg-card text-[12px] font-medium text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-[#A65F3C]",children:[(0,s.jsx)(y.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),x("continueOnlineAction")]}))]})}function I(e){var t,n,r;let{sessionUuid:a,onlineConnections:i,layout:o,onRepointed:c}=e,u=(0,l.c)("agentConnections"),m=(0,l.c)("assignInstance"),f=(0,l.c)("daemonChat"),g=(0,h.useMemo)(()=>i.map(e=>{var t,n;return{connectionUuid:e.uuid,host:null!=(t=e.host)?t:"",cwd:null!=(n=e.cwd)?n:null,effectiveStatus:e.effectiveStatus}}),[i]),[p,b]=(0,h.useState)(null!=(n=null==(t=i[0])?void 0:t.uuid)?n:""),[w,y]=(0,h.useState)(""),[N,k]=(0,h.useState)(!1),C=null!=(r=g.find(e=>e.connectionUuid===p&&"online"===e.effectiveStatus))?r:null,E=(0,h.useMemo)(()=>new Set(g.map(e=>e.host)).size>1,[g]),S=async()=>{let e=w.trim();if(p&&0!==e.length){k(!0);try{let n=await (0,U.tm)("/api/daemon-sessions/".concat(a,"/repoint"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({connectionUuid:p,instructionText:e})});if(!n.ok)return void v.oR.error(await z(n,u("instructionError")));let r=null;try{var t;let e=await n.json();(null==e?void 0:e.success)&&(null==(t=e.data)?void 0:t.session)&&(r=e.data.session)}catch(e){}v.oR.success(f("continueOnlineStarted")),y(""),r&&(null==c||c(r))}catch(e){A.q.error("Failed to re-point daemon session:",e),v.oR.error(u("instructionError"))}finally{k(!1)}}},T=(()=>{if(!C)return null;let e=(0,d.kn)(C.cwd),t=e.isUnknown?m(e.label):e.label;if(E){let e=(0,d.g9)(C.host),n=e.isUnknown?m(e.label):e.label;return m("sendingToWithHost",{path:t,host:n})}return m("sendingTo",{path:t})})();return(0,s.jsxs)("div",{className:"flex flex-col gap-3 rounded-xl border border-dashed border-border bg-card p-4",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:m("workingDirectory")}),(0,s.jsx)(x.O,{instances:g,selectedConnectionUuid:p||null,onSelect:e=>b(e.connectionUuid),ariaLabel:u("pickConnection")})]}),T&&(0,s.jsxs)("div",{className:"flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[(0,s.jsx)(j.A,{className:"h-3 w-3 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,s.jsx)("span",{className:"min-w-0 truncate",children:T})]}),(0,s.jsx)(F,{value:w,onChange:y,onSend:S,pending:N,disabled:!C,disabledReason:C?null:m("offlineCantRun"),placeholder:u("sendInstructionPlaceholder"),sendLabel:u("send"),layout:o})]})}function R(e){var t,n,r;let{agentUuid:a,onlineConnections:i,layout:o,hideHeader:c=!1,onStarted:u}=e,m=(0,l.c)("agentConnections"),f=(0,l.c)("assignInstance"),g=(0,h.useMemo)(()=>S(i),[i]),[p,b]=(0,h.useState)(null!=(n=null==(t=i[0])?void 0:t.uuid)?n:""),[w,y]=(0,h.useState)(""),[N,k]=(0,h.useState)(!1),C=null!=(r=g.find(e=>e.connectionUuid===p&&"online"===e.effectiveStatus))?r:null,E=(0,h.useMemo)(()=>new Set(g.map(e=>e.host)).size>1,[g]),T=async()=>{let e=w.trim();if(p&&0!==e.length){k(!0);try{let n=await (0,U.tm)("/api/daemon-sessions/ad-hoc",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentUuid:a,connectionUuid:p,instructionText:e})});if(!n.ok)return void v.oR.error(await z(n,m("instructionError")));let r=null;try{var t;let e=await n.json();(null==e?void 0:e.success)&&(null==(t=e.data)?void 0:t.session)&&(r=e.data.session)}catch(e){}v.oR.success(m("adHocSessionStarted")),y(""),r&&(null==u||u(r))}catch(e){A.q.error("Failed to start ad-hoc daemon session:",e),v.oR.error(m("instructionError"))}finally{k(!1)}}},M=(()=>{if(!C)return null;let e=(0,d.kn)(C.cwd),t=e.isUnknown?f(e.label):e.label;if(E){let e=(0,d.g9)(C.host),n=e.isUnknown?f(e.label):e.label;return f("sendingToWithHost",{path:t,host:n})}return f("sendingTo",{path:t})})();return(0,s.jsxs)("div",{className:"flex flex-col gap-3 rounded-xl border border-dashed border-border bg-card p-4",children:[!c&&(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsx)("span",{className:"text-[13px] font-semibold text-foreground",children:m("adHocTitle")}),(0,s.jsx)("span",{className:"text-[12px] leading-relaxed text-muted-foreground",children:f("liveSendNote")})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:f("workingDirectory")}),(0,s.jsx)(x.O,{instances:g,selectedConnectionUuid:p||null,onSelect:e=>b(e.connectionUuid),ariaLabel:m("pickConnection")})]}),M&&(0,s.jsxs)("div",{className:"flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[(0,s.jsx)(j.A,{className:"h-3 w-3 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,s.jsx)("span",{className:"min-w-0 truncate",children:M})]}),(0,s.jsx)(F,{value:w,onChange:y,onSend:T,pending:N,disabled:!C,disabledReason:C?null:f("offlineCantRun"),placeholder:m("sendInstructionPlaceholder"),sendLabel:m("startSession"),layout:o})]})}async function z(e,t){try{let t=await e.json();if(t&&"string"==typeof t.error&&t.error)return t.error}catch(e){}return t}var B=n(17475),L=n(59208),q=n(18277),O=n(6930);class _ extends Error{constructor(e,t){super(null!=t?t:"Dispatch failed with status ".concat(e)),this.name="ConversationalDispatchError",this.status=e,this.serverMessage=t}}function D(e){var t,n,r,a,i,d,c;let{buildInstruction:u,dispatch:m,offlineFallback:f,onStarted:g,defaultAgentUuid:p,projectUuid:v}=e,w=(0,l.c)("conversationalEntry"),y=(0,L.kz)(),F=(0,h.useMemo)(()=>{var e;return(null!=(e=null==y?void 0:y.connections)?e:[]).filter(e=>"online"===e.effectiveStatus)},[null==y?void 0:y.connections]),[M,I]=(0,h.useState)(new Map),R=(0,h.useMemo)(()=>{let e=function(e){let t=new Map;for(let r of e){let e=t.get(r.agentUuid);if(e)e.connections.push(r);else{var n;t.set(r.agentUuid,{agentUuid:r.agentUuid,agentName:(null==(n=r.agentName)?void 0:n.trim())||r.agentUuid.slice(0,8),connections:[r]})}}return[...t.values()]}(F),t=new Set(e.map(e=>e.agentUuid));for(let[n,r]of M)t.has(n)||e.push({agentUuid:n,agentName:r.agentName,connections:[]});return e},[M,F]),[z,D]=(0,h.useState)(null);(0,h.useEffect)(()=>{if(!v)return void I(new Map);let e=!1;return(0,U.tm)("/api/projects/".concat(encodeURIComponent(v),"/agent-cwds")).then(async t=>{var n,r,a;if(!t.ok)return;let s=await t.json(),l=new Map;for(let e of null!=(r=null==s||null==(n=s.data)?void 0:n.agents)?r:[])e.preference&&l.set(e.agent.uuid,{agentName:e.agent.name,target:{actorUserUuid:"",source:"project_fixed",agentUuid:e.agent.uuid,host:e.preference.host,cwd:e.preference.cwd,availability:"valid"===e.preference.status?"ready":"offline"===e.preference.status?"offline":"invalid",promptPolicy:"suppress",connectionUuid:null,agentInstanceUuid:null!=(a=e.preference.anchorAgentInstanceUuid)?a:null}});e||I(l)}).catch(e=>A.q.error("Failed to load project Agent cwd preferences:",e)),()=>{e=!0}},[v]);let P=null!=(r=null!=(n=R.find(e=>e.agentUuid===z))?n:R.find(e=>e.agentUuid===p))?r:1===R.length?R[0]:null,H=P&&null!=(a=null==(t=M.get(P.agentUuid))?void 0:t.target)?a:null,[$,K]=(0,h.useState)(null),V=(0,h.useMemo)(()=>{var e;return S(null!=(e=null==P?void 0:P.connections)?e:[])},[P]),W=null!=(i=H?V.find(e=>e.host===H.host):V.find(e=>e.connectionUuid===$))?i:null,[Z,J]=(0,h.useState)(""),[Y,G]=(0,h.useState)(!1),Q=(0,h.useRef)(!1),[X,ee]=(0,h.useState)(null),et=Z.trim(),en=Z.length>3e3,er=Y||!P||!W||0===et.length||en,ea=async e=>{let t=await (0,U.tm)("/api/daemon-sessions/ad-hoc",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentUuid:e.agentUuid,connectionUuid:e.connectionUuid,instructionText:u?u(e.userText):e.userText})});if(!t.ok)throw new _(t.status,await T(t,""));try{var n;let e=await t.json();if((null==e?void 0:e.success)&&(null==(n=e.data)?void 0:n.session))return e.data.session}catch(e){}throw new _(t.status,null)},es=async()=>{if(!Q.current&&!er&&P&&W){Q.current=!0,G(!0),ee(null);try{let e=await (null!=m?m:ea)({agentUuid:P.agentUuid,connectionUuid:W.connectionUuid,userText:et});J(""),g(e)}catch(e){if(e instanceof _){ee(e.serverMessage||(409===e.status?w("connectionWentOffline"):w("sendError"))),409===e.status&&(null==y||y.refreshConnections());return}A.q.error("Failed to dispatch conversational entry:",e),ee(w("sendError"))}finally{Q.current=!1,G(!1)}}};if(0===F.length&&0===M.size)return(0,s.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,s.jsx)("p",{className:"text-[12.5px] leading-relaxed text-muted-foreground",children:w("noOnlineDaemon")}),null!=f?f:(0,s.jsx)(q.Bs,{variant:"compact"})]});let el=Z.length>=2500;return(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:w("agentLabel")}),(0,s.jsxs)(C.l6,{value:null!=(d=null==P?void 0:P.agentUuid)?d:"",onValueChange:e=>{D(e),K(null)},children:[(0,s.jsx)(C.bq,{"aria-label":w("agentLabel"),children:(0,s.jsx)(C.yv,{placeholder:w("agentPlaceholder")})}),(0,s.jsx)(C.gC,{children:R.map(e=>(0,s.jsx)(C.eb,{value:e.agentUuid,children:(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(o.AgentAvatar,{name:e.agentName,size:16,className:"rounded-full"}),(0,s.jsx)("span",{children:e.agentName})]})},e.agentUuid))})]})]}),P&&H&&"ready"!==H.availability?(0,s.jsx)(O.Y,{target:H}):P&&!H?(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:w("instanceLabel")}),(0,s.jsx)(x.O,{instances:V,selectedConnectionUuid:null!=(c=null==W?void 0:W.connectionUuid)?c:null,onSelect:e=>K(e.connectionUuid),ariaLabel:w("instanceLabel")})]}):P?null:(0,s.jsx)("p",{className:"text-[12px] text-muted-foreground",children:w("pickAgentFirst")}),(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)(k.T,{value:Z,onChange:e=>J(e.target.value),onKeyDown:e=>{(0,E.P)(e)||"Enter"===e.key&&!e.shiftKey&&(e.preventDefault(),er||es())},disabled:Y,placeholder:w("placeholder"),rows:5,className:"min-h-[120px] resize-none rounded-xl border-border bg-card text-[14px] text-foreground placeholder:text-[#9A9A9A] focus-visible:border-primary focus-visible:ring-primary/30"}),el&&(0,s.jsx)("span",{"aria-live":"polite",className:en?"self-end text-[11px] font-medium text-[#B3261E] dark:text-[#F08078]":"self-end text-[11px] text-muted-foreground",children:w("charCounter",{count:Z.length,max:3e3})})]}),X&&(0,s.jsxs)("div",{className:"flex items-start gap-1.5 text-[12px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:[(0,s.jsx)(B.A,{className:"mt-0.5 h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,s.jsx)("span",{className:"min-w-0",children:X})]}),(0,s.jsxs)(N.$,{type:"button",onClick:es,disabled:er,className:"gap-1.5 self-end rounded-lg bg-primary px-4 text-[13px] font-medium text-white hover:bg-[#B56A44] disabled:bg-border disabled:text-[#9A9A9A]",children:[Y?(0,s.jsx)(b.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,s.jsx)(j.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),X?w("retry"):w("send")]})]})}var P=n(48416),H=n(78134),$=n(97438),K=n(68923),V=n(37915),W=n(6748),Z=n(88591),J=n(10263),Y=n(57223);function G(e){let{status:t}=e;return"running"===t?(0,s.jsxs)("span",{"aria-hidden":!0,className:"relative inline-flex h-2.5 w-2.5 items-center justify-center",children:[(0,s.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-primary opacity-30 motion-safe:animate-ping"}),(0,s.jsx)("span",{className:"relative inline-flex h-1.5 w-1.5 rounded-full bg-primary"})]}):"interrupted"===t?(0,s.jsx)(Z.A,{"aria-hidden":!0,className:"h-3.5 w-3.5 text-[#B45309] dark:text-[#E0A34E]"}):"error"===t?(0,s.jsx)(B.A,{"aria-hidden":!0,className:"h-3.5 w-3.5 text-[#DC2626] dark:text-[#F08078]"}):(0,s.jsx)("span",{"aria-hidden":!0,className:"h-2 w-2 rounded-full bg-[#D7D2C9] dark:bg-[#2a2822]"})}function Q(e){let{row:t,selected:n,onSelect:a,nowMs:o}=e,d=(0,l.c)("daemonChat"),c=(0,r.Vq)(),u="running"===t.status?d("running"):"interrupted"===t.status?d("statusInterrupted"):"error"===t.status?d("statusError"):null;return(0,s.jsxs)(N.$,{variant:"ghost",onClick:a,"aria-current":n?"true":void 0,className:"relative h-auto w-full justify-start gap-0 rounded-none px-0 py-0 text-left transition-colors ".concat(n?"bg-[#FBF4EF] dark:bg-[#221e1b] hover:bg-[#FBF4EF] dark:hover:bg-[#26241f]":"bg-card hover:bg-background"),children:[n&&(0,s.jsx)("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-primary"}),(0,s.jsxs)("span",{className:"flex w-full items-center gap-3 px-4 py-3.5",children:[(0,s.jsx)("span",{className:"flex w-2.5 shrink-0 justify-center",children:(0,s.jsx)(G,{status:t.status})}),(0,s.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,s.jsxs)("span",{className:"flex items-center gap-1.5",children:[t.ideaAnchored&&(0,s.jsxs)(i.E,{variant:"secondary",className:"shrink-0 gap-1 border-0 bg-[#F3ECFB] dark:bg-[#221a30] px-1.5 py-0 text-[10px] font-medium text-[#7C5BC0] dark:text-[#B79AF0]",children:[(0,s.jsx)(J.A,{className:"h-2.5 w-2.5","aria-hidden":!0}),d("badgeIdea")]}),(0,s.jsx)("span",{className:"truncate text-[14px] font-semibold text-foreground",children:t.title})]}),(0,s.jsxs)("span",{className:"mt-0.5 flex items-center gap-1.5",children:[u&&(0,s.jsx)("span",{className:"text-[10px] font-semibold uppercase tracking-wide ".concat("running"===t.status?"text-primary":"error"===t.status?"text-[#DC2626] dark:text-[#F08078]":"text-[#B45309] dark:text-[#E0A34E]"),children:u}),(0,s.jsx)("span",{className:"truncate font-mono text-[10px] text-muted-foreground",children:c(t.session.lastTurnAt,o)})]})]})]})]})}function X(){return(0,s.jsxs)("div",{"aria-hidden":!0,className:"flex w-full items-center gap-3 px-4 py-3.5",children:[(0,s.jsx)("span",{className:"flex w-2.5 shrink-0 justify-center",children:(0,s.jsx)(Y.E,{className:"h-2.5 w-2.5 rounded-full"})}),(0,s.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,s.jsx)(Y.E,{className:"h-3.5 w-3/4 rounded"}),(0,s.jsx)(Y.E,{className:"mt-1.5 h-2.5 w-1/3 rounded"})]})]})}function ee(e){let{agents:t,selectedAgentUuid:n,onSelectAgent:a,rows:i,selectedSessionUuid:d,onSelectSession:c,onNewConversation:u,hasMore:x,loadingMore:m=!1,onLoadMore:f,loading:g=!1}=e,p=(0,l.c)("daemonChat"),h=(0,r.le)(),v=null===d;return(0,s.jsxs)("div",{className:"flex h-full flex-col gap-3",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-1.5 px-1",children:[(0,s.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:p("agentSelectLabel")}),(0,s.jsxs)(C.l6,{value:null!=n?n:void 0,onValueChange:a,children:[(0,s.jsx)(C.bq,{"aria-label":p("agentSelectLabel"),className:"w-full rounded-lg border-border bg-card text-[13px] text-foreground",children:(0,s.jsx)(C.yv,{placeholder:p("agentSelectPlaceholder")})}),(0,s.jsx)(C.gC,{children:t.map(e=>(0,s.jsx)(C.eb,{value:e.agentUuid,children:(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(o.AgentAvatar,{name:e.agentName,size:16,className:"rounded-full"}),(0,s.jsx)("span",{children:e.agentName})]})},e.agentUuid))})]})]}),(0,s.jsx)("div",{className:"px-1",children:(0,s.jsxs)(N.$,{type:"button",onClick:u,"aria-current":v?"true":void 0,className:"h-9 w-full justify-center gap-1.5 rounded-lg text-[13px] font-medium ".concat(v?"bg-primary text-white hover:bg-[#B56A44]":"border border-[#E5D2C2] dark:border-[#33302a] bg-[#FBF4EF] dark:bg-[#221e1b] text-primary hover:bg-[#F6E9DF] dark:hover:bg-[#26241f]"),children:[(0,s.jsx)(y.A,{className:"h-4 w-4","aria-hidden":!0}),p("newConversationButton")]})}),(0,s.jsxs)(P.Zp,{"aria-busy":g,className:"flex min-h-0 flex-1 flex-col gap-0 overflow-hidden rounded-2xl border-border bg-card p-0 shadow-none",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between px-4 py-3.5",children:[(0,s.jsx)("span",{className:"font-mono text-[11px] font-medium uppercase tracking-[1px] text-muted-foreground",children:p("listHeader")}),g?(0,s.jsx)(Y.E,{"aria-hidden":!0,className:"h-3 w-4 rounded"}):(0,s.jsx)("span",{className:"font-mono text-[11px] font-medium text-muted-foreground",children:i.length})]}),(0,s.jsx)("div",{className:"h-px w-full bg-[#EFEBE4] dark:bg-[#201e1b]"}),g?(0,s.jsx)("div",{"data-testid":"conversation-list-skeleton",className:"flex min-h-0 flex-1 flex-col overflow-y-auto",children:Array.from({length:5}).map((e,t)=>(0,s.jsxs)("div",{children:[(0,s.jsx)(X,{}),t<4&&(0,s.jsx)("div",{className:"h-px w-full bg-[#F2EEE7] dark:bg-[#201e1a]"})]},t))}):0===i.length?(0,s.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center gap-1.5 p-8 text-center",children:[(0,s.jsx)("p",{className:"text-[13px] font-medium text-muted-foreground",children:p("noSessions.title")}),(0,s.jsx)("p",{className:"max-w-[220px] text-[12px] leading-relaxed text-muted-foreground",children:p("noSessions.body")})]}):(0,s.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col overflow-y-auto",children:[i.map((e,t)=>(0,s.jsxs)("div",{children:[(0,s.jsx)(Q,{row:e,selected:d===e.session.uuid,onSelect:()=>c(e.session.uuid),nowMs:h}),t<i.length-1&&(0,s.jsx)("div",{className:"h-px w-full bg-[#F2EEE7] dark:bg-[#201e1a]"})]},e.session.uuid)),x&&(0,s.jsx)("div",{className:"px-4 py-3",children:(0,s.jsx)(N.$,{variant:"ghost",size:"sm",onClick:f,disabled:m,className:"h-8 w-full rounded-lg text-[12px] font-medium text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-primary",children:p(m?"loadingMore":"loadMore")})})]})]})]})}var et=n(94599),en=n(60532),er=n(25373),ea=n(30028),es=n(17730),el=n(44575),ei=n(89967),eo=n(64993),ed=n(81750),ec=n(94310),eu=n(17001);function ex(e){if("number"!=typeof e||!Number.isFinite(e)||e<0)return"0";if(e<1e3)return String(Math.round(e));let t=(e,t)=>{let n=e.toFixed(1).replace(/\.0$/,"");return"".concat(n).concat(t)};return e<1e6?t(e/1e3,"k"):t(e/1e6,"M")}function em(e){let{label:t,ariaLabel:n,rows:r}=e;return(0,s.jsxs)(eu.AM,{children:[(0,s.jsx)(eu.Wv,{asChild:!0,children:(0,s.jsxs)("button",{type:"button",className:"inline-flex cursor-pointer items-center gap-1 rounded-md bg-secondary px-1.5 py-0 text-[10px] font-medium tabular-nums text-muted-foreground outline-none focus-visible:ring-1 focus-visible:ring-ring","aria-label":n,children:[(0,s.jsx)(ec.A,{className:"h-2.5 w-2.5","aria-hidden":!0}),t]})}),(0,s.jsx)(eu.hl,{align:"start",className:"w-fit min-w-[8rem] rounded-md p-2",children:(0,s.jsx)("div",{className:"flex flex-col gap-0.5 text-[11px]",children:r.map(e=>(0,s.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,s.jsx)("span",{className:"opacity-70",children:e.label}),(0,s.jsx)("span",{className:"font-mono tabular-nums",children:e.value})]},e.label))})})]})}function ef(e){var t,n,r,a,i,o;let{usage:d}=e,c=(0,l.c)("daemonChat");if(!(d&&(null!=(t=d.inputTokens)?t:0)+(null!=(n=d.outputTokens)?n:0)+(null!=(r=d.cacheCreationTokens)?r:0)+(null!=(a=d.cacheReadTokens)?a:0)>0))return null;let u=(null!=(i=d.inputTokens)?i:0)+(null!=(o=d.outputTokens)?o:0),x=[];return null!=d.inputTokens&&x.push({label:c("usageInput"),value:d.inputTokens.toLocaleString()}),null!=d.outputTokens&&x.push({label:c("usageOutput"),value:d.outputTokens.toLocaleString()}),null!=d.cacheReadTokens&&x.push({label:c("usageCacheRead"),value:d.cacheReadTokens.toLocaleString()}),null!=d.cacheCreationTokens&&x.push({label:c("usageCacheWrite"),value:d.cacheCreationTokens.toLocaleString()}),d.model&&x.push({label:c("usageModel"),value:d.model}),(0,s.jsx)(em,{label:c("usageBadgeLabel",{total:ex(u)}),ariaLabel:c("usageBadgeAria",{total:u}),rows:x})}function eg(e){let{totalInputTokens:t,totalOutputTokens:n,totalCacheReadTokens:r,totalCacheCreationTokens:a}=e,i=(0,l.c)("daemonChat"),o=t+n;if(o<=0)return null;let d=[{label:i("usageInput"),value:t.toLocaleString()},{label:i("usageOutput"),value:n.toLocaleString()}];return r>0&&d.push({label:i("usageCacheRead"),value:r.toLocaleString()}),a>0&&d.push({label:i("usageCacheWrite"),value:a.toLocaleString()}),(0,s.jsx)(em,{label:i("usageBadgeLabel",{total:ex(o)}),ariaLabel:i("conversationUsageAria",{total:o}),rows:d})}var ep=n(12790),eh=n.n(ep),ev=n(32470),eb=n(83553),ej=n(69011),ew=n(77770),ey=n(84052),eN=n(4459),ek=n(23380),eC=n(29767),eU=n(30044),eA=n(72256),eE=n(20578),eS=n(16045),eT=n(82813);function eF(e){let{message:t,agentName:n}=e,r=(0,l.c)("daemonChat"),a="user"===t.role,i=a?r("roleYou"):n||r("roleAgent"),d=function(e){let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})}(t.createdAt);return(0,s.jsxs)("div",{className:"flex min-w-0 flex-col gap-1",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[!a&&(0,s.jsx)(o.AgentAvatar,{name:n||r("roleAgent"),size:"xs",className:"rounded-md"}),(0,s.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide ".concat(a?"text-primary":"text-muted-foreground"),children:i}),d&&(0,s.jsx)("span",{className:"font-mono text-[10px] tabular-nums text-muted-foreground",children:d})]}),a?(0,s.jsx)("p",{className:"whitespace-pre-wrap break-words text-[13px] leading-relaxed text-foreground",children:t.text}):(0,s.jsx)("div",{className:"prose prose-sm w-full min-w-0 max-w-full break-words text-[13px] leading-relaxed text-foreground [&_a]:break-all [&_code]:[overflow-wrap:anywhere] [&_img]:h-auto [&_img]:max-w-full [&_pre]:max-w-full [&_pre]:overflow-x-auto [&_table]:block [&_table]:max-w-full [&_table]:overflow-x-auto",children:(0,s.jsx)(eT.MarkdownContent,{children:t.text})})]})}let eM={task_assigned:{icon:ev.A,labelKey:"triggerTask"},mentioned:{icon:eb.A,labelKey:"triggerMention"},elaboration:{icon:ej.A,labelKey:"triggerElaboration"},elaboration_verified:{icon:ew.A,labelKey:"triggerElaborationVerified"},start_development:{icon:ey.A,labelKey:"triggerStartDevelopment"},yolo_requested:{icon:eN.A,labelKey:"triggerYoloRequested"},human_instruction:{icon:ek.A,labelKey:"triggerInstruction"},idea_creation_requested:{icon:eC.A,labelKey:"triggerIdeaCreation"},research_requested:{icon:eU.A,labelKey:"triggerResearch"},resume:{icon:eA.A,labelKey:"triggerResume"}};function eI(e){var t;return"idea_creation_requested"===e.trigger||"research_requested"===e.trigger?"":null!=(t=e.promptText)?t:""}function eR(e){var t,n,a;let{turn:o,agentName:d,linkedExecution:c,mergedEvents:u=[]}=e,x=(0,l.c)("daemonChat"),m=eM[o.trigger],f=null!=(n=null==m?void 0:m.icon)?n:ev.A,g=x(m?m.labelKey:"triggerUnknown"),p="running"===o.status,h="pending"===o.status,v="interrupted"===o.status,j="merged"===o.status,w="ended"===o.status||v,y=x("running"===o.status?"turnStatusRunning":"pending"===o.status?"turnStatusPending":v?"turnStatusInterrupted":j?"turnStatusMerged":"turnStatusEnded"),N=o.messages.filter(e=>!e.uuid.startsWith("synthetic:")),k=c?(0,r.BS)(c):null,C=x((null==c?void 0:c.entityType)==="idea"?"openIdea":"openTask"),U=eI(o),A=w&&"human_instruction"===o.trigger&&0===N.length&&U.trim().length>0,E=null!=(a=null==(t=o.relayError)?void 0:t.trim())?a:"",S=w&&0===N.length&&E.length>0;return(0,s.jsxs)("div",{className:"flex gap-3",children:[(0,s.jsx)("div",{"aria-hidden":!0,className:"relative w-[3px] shrink-0 rounded-full ".concat(p||h?"bg-primary":"bg-[#EFEBE4] dark:bg-[#201e1b]"),children:p&&(0,s.jsx)("span",{className:"absolute inset-0 rounded-full bg-primary opacity-40 motion-safe:animate-pulse"})}),(0,s.jsxs)("div",{className:"min-w-0 flex-1 pb-2",children:[(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-x-2.5 gap-y-1",children:[(0,s.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,s.jsx)(f,{className:"h-3.5 w-3.5 text-primary","aria-hidden":!0}),(0,s.jsx)("span",{className:"text-[12px] font-semibold uppercase tracking-wide text-foreground",children:g})]}),(0,s.jsx)("span",{className:"font-mono text-[10px] uppercase tracking-wide text-muted-foreground",children:x("turnLabel",{seq:o.seq})}),(0,s.jsxs)(i.E,{variant:"secondary",className:"gap-1 border-0 px-1.5 py-0 text-[10px] font-medium ".concat(p?"bg-[#FBF0E8] dark:bg-[#221e1b] text-primary":h?"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-[#9A8C7E]":v?"bg-[#F5EEE3] dark:bg-[#221e19] text-[#A8763E] dark:text-[#E0B070]":"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-muted-foreground"),title:v&&o.interruptedReason?o.interruptedReason:void 0,children:[p&&(0,s.jsx)(b.A,{className:"h-2.5 w-2.5 motion-safe:animate-spin","aria-hidden":!0}),y]}),(0,s.jsx)(ef,{usage:o.usage}),k&&(0,s.jsxs)(eh(),{href:k,className:"group inline-flex items-center gap-1 text-[11px] font-medium text-primary hover:text-[#B56A44]",children:[C,(0,s.jsx)(eE.A,{className:"h-3 w-3","aria-hidden":!0})]})]}),U.trim().length>0&&(0,s.jsx)("p",{className:"mt-2 whitespace-pre-wrap break-words rounded-lg bg-[#FCFBF8] dark:bg-[#1e1d1b] px-3 py-2 text-[13px] leading-relaxed text-muted-foreground",children:U}),(0,s.jsx)("div",{className:"mt-3 flex min-w-0 flex-col gap-3",children:N.length>0?N.map(e=>(0,s.jsx)(eF,{message:e,agentName:d},e.uuid)):j?(0,s.jsx)("p",{className:"text-[12px] italic text-muted-foreground",children:x("turnMergedNote")}):S?(0,s.jsxs)("div",{className:"flex flex-col gap-1 rounded-lg border border-[#EADFCB] dark:border-[#3a3222] bg-[#FBF5EA] dark:bg-[#221d14] px-3 py-2.5",children:[(0,s.jsx)("p",{className:"text-[12px] leading-relaxed text-[#8A6D3B] dark:text-[#D9B473]",children:x("turnRelayFailed")}),(0,s.jsx)("p",{className:"whitespace-pre-wrap break-words font-mono text-[11px] leading-relaxed text-[#A98B54] dark:text-[#B89355]",children:E})]}):A?(0,s.jsx)("div",{className:"flex flex-col gap-2 rounded-lg border border-[#EADFCB] dark:border-[#3a3222] bg-[#FBF5EA] dark:bg-[#221d14] px-3 py-2.5",children:(0,s.jsx)("p",{className:"text-[12px] leading-relaxed text-[#8A6D3B] dark:text-[#D9B473]",children:x("turnEndedNoReply")})}):(0,s.jsx)("p",{className:"text-[12px] italic text-muted-foreground",children:x("turnNoMessages")})}),u.length>0&&(0,s.jsxs)(ed.Nt,{className:"mt-3",children:[(0,s.jsxs)(ed.R6,{className:"group inline-flex items-center gap-1.5 rounded-md text-[12px] font-medium text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:[(0,s.jsx)(eS.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),x("turnMergedCount",{count:u.length}),(0,s.jsx)(es.A,{className:"h-3.5 w-3.5 transition-transform group-data-[state=open]:rotate-180","aria-hidden":!0})]}),(0,s.jsx)(ed.Ke,{className:"mt-2 flex flex-col gap-2.5",children:u.map(e=>(0,s.jsx)(ez,{turn:e.turn,linkedExecution:e.linkedExecution},e.turn.uuid))})]})]})]})}function ez(e){var t;let{turn:n,linkedExecution:a}=e,i=(0,l.c)("daemonChat"),o=eM[n.trigger],d=null!=(t=null==o?void 0:o.icon)?t:ev.A,c=i(o?o.labelKey:"triggerUnknown"),u=a?(0,r.BS)(a):null,x=i((null==a?void 0:a.entityType)==="idea"?"openIdea":"openTask"),m=eI(n).trim();return(0,s.jsxs)("div",{className:"flex min-w-0 flex-col gap-1 border-l border-border pl-3",children:[(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-x-2 gap-y-0.5",children:[(0,s.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,s.jsx)(d,{className:"h-3 w-3 text-muted-foreground","aria-hidden":!0}),(0,s.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:c})]}),(0,s.jsx)("span",{className:"font-mono text-[10px] uppercase tracking-wide text-muted-foreground",children:i("turnLabel",{seq:n.seq})}),u&&(0,s.jsxs)(eh(),{href:u,className:"group inline-flex items-center gap-1 text-[11px] font-medium text-primary hover:text-primary/80",children:[x,(0,s.jsx)(eE.A,{className:"h-3 w-3","aria-hidden":!0})]})]}),m.length>0&&(0,s.jsx)("p",{className:"whitespace-pre-wrap break-words text-[12px] leading-relaxed text-muted-foreground",children:m})]})}function eB(e){var t;let n=null!=(t=e.directIdeaUuid)?t:e.sessionId.includes("::")?e.sessionId.split("::")[0]:null;return n?{entityType:"idea",entityUuid:n}:{entityType:"daemon_session",entityUuid:e.sessionId}}function eL(e,t){return e.filter(e=>(function(e,t){let n=eB(t);return"idea"===n.entityType?"idea"===e.entityType&&e.entityUuid===n.entityUuid||e.directIdeaUuid===n.entityUuid:"daemon_session"===e.entityType&&e.entityUuid===n.entityUuid})(e,t))}function eq(e,t){var n;let r=eL(null!=(n=e[t.originConnectionUuid])?n:[],t);return r.length>0?r:eL(Object.values(e).flat(),t)}function eO(e){let{label:t,value:n,mono:r}=e;return(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"text-[10px] font-medium uppercase tracking-wide text-muted-foreground",children:t}),(0,s.jsx)("div",{className:"mt-0.5 truncate text-[13px] font-medium text-foreground ".concat(r?"font-mono":""),children:n})]})}function e_(e){let{cwd:t,host:n,crossHost:r}=e,a=(0,l.c)(),i=(0,l.c)("transcriptHeader"),o=(0,d.kn)(t),c=o.isUnknown?a(o.label):o.label,u=o.isUnknown?a(o.title):o.title,x=r?(0,d.g9)(n):null,f=x?x.isUnknown?a(x.label):x.label:null,g=x?x.isUnknown?a(x.title):x.title:null;return(0,s.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[(0,s.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1.5 rounded-md bg-[#F1ECE3] dark:bg-[#201e1a] px-2 py-0.5 ".concat(o.isUnknown?"italic text-muted-foreground":"text-muted-foreground"),title:"".concat(i("cwdAriaLabel"),": ").concat(u),"aria-label":"".concat(i("cwdAriaLabel"),": ").concat(u),children:[(0,s.jsx)(m.A,{className:"h-3 w-3 shrink-0 text-[#9A8C7E]","aria-hidden":!0}),(0,s.jsx)("span",{className:"truncate font-mono text-[11px] font-medium",children:c})]}),null!==f&&(0,s.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1 text-[11px] font-medium text-muted-foreground",title:"".concat(i("hostAriaLabel"),": ").concat(g),"aria-label":"".concat(i("hostAriaLabel"),": ").concat(g),children:[(0,s.jsx)(et.A,{className:"h-3 w-3 shrink-0","aria-hidden":!0}),(0,s.jsx)("span",{className:"truncate ".concat((null==x?void 0:x.isUnknown)?"italic":""),children:f})]})]})}function eD(e){let{backendSessionId:t}=e,n=(0,l.c)("daemonChat"),[r,a]=(0,h.useState)(!1),i=n(r?"sessionIdCopied":"copySessionId"),o=async()=>{try{var e;await (null==(e=navigator.clipboard)?void 0:e.writeText(t)),a(!0),setTimeout(()=>a(!1),2e3)}catch(e){A.q.error("Failed to copy session id:",e)}};return(0,s.jsxs)(N.$,{variant:"ghost",size:"sm",onClick:o,title:i,"aria-label":i,"aria-live":"polite",className:"inline-flex h-auto items-center gap-1.5 px-1.5 py-0.5 text-[12px] font-medium text-muted-foreground hover:bg-transparent hover:text-foreground",children:[r?(0,s.jsx)(en.A,{className:"h-3.5 w-3.5 text-green-600","aria-hidden":!0}):(0,s.jsx)(er.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),(0,s.jsx)("span",{className:r?"inline":"hidden lg:inline",children:i})]})}function eP(e){var t,n,a,o,d,c,x,m,f;let{session:g,turns:p,title:v,loading:j,error:y,originConnection:k,originOnline:C,originCrossHost:U=!1,sessionExecutions:A,executionsByUuid:E,footerLayout:S="inline",hasMoreEarlier:T,loadingEarlier:F,onLoadEarlier:I,originAgentOnlineConnections:R=[],onSessionStarted:z}=e,B=(0,l.c)("daemonChat"),L=(0,r.le)(),q=(0,r.pb)(),O=(0,r.l5)(),_=(null==k||null==(t=k.agentName)?void 0:t.trim())||B("roleAgent"),D=k&&(null==g?void 0:g.runtimeCwd)?{...k,cwd:g.runtimeCwd}:k,H=(0,h.useMemo)(()=>{var e;let t=p.find(e=>"running"===e.status);return null!=(e=null!=t?t:p[p.length-1])?e:null},[p]),$=(0,h.useMemo)(()=>(function(e){let t=[];for(let n of e){let e=t[t.length-1];"merged"===n.status&&e&&"merged"!==e.absorbing.status?e.merged.push(n):t.push({absorbing:n,merged:[]})}return t})(p),[p]),K=null!=(o=null==g?void 0:g.totalInputTokens)?o:0,V=null!=(d=null==g?void 0:g.totalOutputTokens)?d:0,W=null!=(c=null==g?void 0:g.totalCacheReadTokens)?c:0,Z=null!=(x=null==g?void 0:g.totalCacheCreationTokens)?x:0,J=(0,h.useMemo)(()=>{let e=A.find(e=>"running"===e.status);if(e)return e;let t=A.find(e=>"interrupted"===e.status&&"user"===e.interruptedReason);if(t)return t;let n=A.find(e=>"interrupted"===e.status&&"crash"===e.interruptedReason);return null!=n?n:null},[A]),Y=(0,h.useMemo)(()=>J&&"running"===J.status?J:null,[J]),G=(0,h.useMemo)(()=>p.some(e=>"running"===e.status),[p]),Q=(0,h.useMemo)(()=>{if(Y||!G||!g)return null;let{entityType:e,entityUuid:t}=eB(g);return{connectionUuid:g.originConnectionUuid,entityType:e,entityUuid:t,entityTitle:v}},[Y,G,g,v]),X=(0,h.useRef)(null),ee=null==(n=p[p.length-1])?void 0:n.uuid,et=null!=(m=null==(a=p[p.length-1])?void 0:a.messages.length)?m:0;(0,h.useEffect)(()=>{var e;null==(e=X.current)||e.scrollIntoView({block:"end"})},[ee,et]);let en=(null==g?void 0:g.status)==="ended";return(0,s.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-2 px-6 py-2.5 lg:gap-3 lg:py-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,s.jsx)("h3",{className:"truncate text-[17px] font-semibold text-foreground min-w-0",children:v}),D&&(0,s.jsx)("div",{className:"shrink-0",children:(0,s.jsx)(e_,{cwd:D.cwd,host:D.host,crossHost:U})})]}),(0,s.jsxs)(ed.Nt,{children:[(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[en&&(0,s.jsx)(i.E,{variant:"secondary",className:"border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-2 py-0.5 text-[10px] font-medium text-muted-foreground",children:B("statusEnded")}),H&&"running"===H.status&&(0,s.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-[11px] font-medium text-primary",children:[(0,s.jsxs)("span",{className:"relative inline-flex h-2 w-2 items-center justify-center",children:[(0,s.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-primary opacity-40 motion-safe:animate-ping"}),(0,s.jsx)("span",{className:"relative inline-flex h-1 w-1 rounded-full bg-primary"})]}),(0,s.jsx)("span",{className:"hidden sm:inline",children:B("running")}),(null==Y?void 0:Y.startedAt)&&(0,s.jsx)("span",{className:"font-mono tabular-nums text-primary",title:B("runningElapsedLabel"),children:O(Y.startedAt,L)})]}),(0,s.jsx)(eg,{totalInputTokens:K,totalOutputTokens:V,totalCacheReadTokens:W,totalCacheCreationTokens:Z}),((null==g?void 0:g.backendSessionId)||k)&&(0,s.jsxs)("div",{className:"ml-auto flex items-center gap-1",children:[(null==g?void 0:g.backendSessionId)&&(0,s.jsx)(eD,{backendSessionId:g.backendSessionId}),k&&(0,s.jsxs)(ed.R6,{className:"group inline-flex items-center gap-1.5 text-[12px] font-medium text-muted-foreground hover:text-foreground",children:[(0,s.jsx)(ea.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),B("detailsLabel"),(0,s.jsx)(es.A,{className:"h-3.5 w-3.5 transition-transform group-data-[state=open]:rotate-180","aria-hidden":!0})]})]})]}),D&&(0,s.jsx)(ed.Ke,{children:(0,s.jsxs)("div",{className:"mt-3 flex flex-col gap-3 rounded-xl border border-[#EFEBE4] dark:border-[#2a2a2e] bg-[#FCFBF8] dark:bg-[#1e1d1b] p-4",children:[(0,s.jsx)(u,{connection:D,size:"sm"}),(0,s.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[C&&(0,s.jsx)(eO,{label:B("detailUptime"),value:q(D.connectedAt,L),mono:!0}),(0,s.jsx)(eO,{label:B("detailHost"),value:""===D.host?B("detailsHostUnknown"):D.host,mono:!0})]})]})})]})]}),(0,s.jsx)("div",{className:"h-px w-full bg-[#EFEBE4] dark:bg-[#201e1b]"}),y?(0,s.jsx)("div",{className:"flex flex-1 items-center justify-center p-8",children:(0,s.jsxs)(P.Zp,{className:"items-center gap-3 rounded-2xl border-[#E7D9C9] dark:border-[#33302a] bg-[#FFF9F3] dark:bg-[#2a2113] p-8 text-center shadow-none",children:[(0,s.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-[#D9770615]",children:(0,s.jsx)(w.A,{className:"h-6 w-6 text-[#B45309] dark:text-[#E0A34E]"})}),(0,s.jsx)("h4",{className:"text-base font-semibold text-[#92400E] dark:text-[#E0A34E]",children:B("loadErrorTitle")}),(0,s.jsx)("p",{className:"max-w-md text-[13px] leading-relaxed text-muted-foreground",children:B("loadErrorBody")})]})}):j?(0,s.jsx)("div",{className:"flex flex-1 items-center justify-center p-8 text-[13px] text-muted-foreground",children:B("transcriptLoading")}):(0,s.jsx)(eo.F,{className:"daemon-transcript-scroll min-h-0 w-full flex-1",children:(0,s.jsxs)("div",{className:"flex w-full min-w-0 flex-col gap-3 px-6 py-3 lg:gap-5 lg:py-5",children:[(0,s.jsxs)("p",{className:"flex items-start gap-1.5 text-[11px] leading-relaxed text-muted-foreground",children:[(0,s.jsx)(el.A,{className:"mt-0.5 h-3 w-3 shrink-0","aria-hidden":!0}),(0,s.jsx)("span",{children:B("privacyNote")})]}),T&&(0,s.jsx)("div",{className:"flex justify-center",children:(0,s.jsxs)(N.$,{variant:"ghost",size:"sm",onClick:I,disabled:F,className:"h-8 gap-1.5 rounded-lg text-[12px] font-medium text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-primary",children:[F?(0,s.jsx)(b.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,s.jsx)(ei.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),B(F?"loadingEarlier":"loadEarlier")]})}),$.map(e=>{var t;return(0,s.jsx)(eR,{turn:e.absorbing,agentName:_,linkedExecution:e.absorbing.executionUuid&&null!=(t=E.get(e.absorbing.executionUuid))?t:null,mergedEvents:e.merged.map(e=>{var t;return{turn:e,linkedExecution:e.executionUuid&&null!=(t=E.get(e.executionUuid))?t:null}})},e.absorbing.uuid)}),(0,s.jsx)("div",{ref:X})]})}),!y&&g&&(0,s.jsx)("div",{className:"flex flex-col gap-3 border-t border-[#EFEBE4] dark:border-[#2a2a2e] bg-background px-6 py-2.5 lg:py-4",children:(0,s.jsx)(M,{sessionUuid:g.uuid,originOnline:C,layout:S,controllableExecution:J,stuckTurnTarget:Q,agentUuid:null!=(f=null==k?void 0:k.agentUuid)?f:null,onlineConnections:R,onSessionStarted:z})})]})}function eH(e){let{agentUuid:t,agentName:n,onlineConnections:r,onStarted:a}=e,i=(0,l.c)("daemonChat"),o=null!==t&&r.length>0;return(0,s.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-1.5 px-6 py-4",children:[(0,s.jsxs)("h3",{className:"flex items-center gap-2 text-[17px] font-semibold text-foreground",children:[(0,s.jsx)(y.A,{className:"h-[18px] w-[18px] text-primary","aria-hidden":!0}),i("newConversationTitle")]}),(0,s.jsx)("p",{className:"text-[13px] leading-relaxed text-muted-foreground",children:t?i("newConversationBody",{agent:n}):i("newConversationNoAgent")})]}),(0,s.jsx)("div",{className:"h-px w-full bg-[#EFEBE4] dark:bg-[#201e1b]"}),(0,s.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-y-auto px-6 py-5",children:o?(0,s.jsx)(R,{agentUuid:t,onlineConnections:r,layout:"inline",hideHeader:!0,onStarted:a}):(0,s.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center gap-2.5 rounded-xl border border-dashed border-[#E7D9C9] dark:border-[#33302a] bg-[#FFF9F3] dark:bg-[#2a2113] p-8 text-center",children:[(0,s.jsx)("div",{className:"flex h-11 w-11 items-center justify-center rounded-xl bg-[#D9770615]",children:(0,s.jsx)(w.A,{className:"h-5 w-5 text-[#B45309] dark:text-[#E0A34E]","aria-hidden":!0})}),(0,s.jsx)("p",{className:"text-[13px] font-medium text-[#92400E] dark:text-[#E0A34E]",children:i("newConversationNoOnlineTitle")}),(0,s.jsx)("p",{className:"max-w-[300px] text-[12px] leading-relaxed text-muted-foreground",children:i("newConversationNoOnlineBody")})]})})]})}function e$(e,t){if(0===e.length||t.seq>e[e.length-1].seq)return[...e,t];let n=e.findIndex(e=>e.seq>t.seq),r=-1===n?e.length:n;return[...e.slice(0,r),t,...e.slice(r)]}function eK(e,t){let n=new Map;for(let t of e)n.set(t.uuid,t);for(let e of t){let t=n.get(e.uuid);if(!t){n.set(e.uuid,e);continue}let r=new Set(t.messages.map(e=>e.uuid)),a=e.messages.filter(e=>!r.has(e.uuid));n.set(e.uuid,{...e,messages:[...t.messages,...a]})}return[...n.values()].sort((e,t)=>e.seq-t.seq)}function eV(e,t){let n=new Map;for(let e of t)n.set(e.uuid,e);for(let t of e)n.set(t.uuid,t);return[...n.values()].sort((e,t)=>e.lastTurnAt<t.lastTurnAt?1:-1)}function eW(){var e,t;let n=(0,l.c)("daemonChat"),{status:r,connections:a,executionsByConnection:i,setOpenSession:o,subscribeTranscript:d,focusTarget:c,clearChatFocusTarget:u}=(0,L.$d)(),[x,m]=(0,h.useState)([]),[f,g]=(0,h.useState)([]),[p,v]=(0,h.useState)("loading"),[b,j]=(0,h.useState)("idle"),[y,k]=(0,h.useState)(null),[C,E]=(0,h.useState)(!1),[S,T]=(0,h.useState)(!1),F=(0,h.useRef)(null),M=(0,h.useCallback)(()=>{if(F.current)return F.current;let e=(async()=>{try{let t=await (0,U.tm)("/api/daemon-sessions?view=agents");if(!t.ok)return void v("error");let n=await t.json();if(n.success){var e;m(null!=(e=n.data.agents)?e:[]),v("ok")}else v("error")}catch(e){A.q.error("Failed to fetch daemon agent index:",e),v("error")}})();return F.current=e,e.finally(()=>{F.current===e&&(F.current=null)}),e},[]);(0,h.useEffect)(()=>{M();let e=setInterval(M,15e3);return()=>clearInterval(e)},[M]);let I=(0,h.useRef)(0),R=(0,h.useCallback)(async(e,t)=>{let n=(null==t?void 0:t.merge)?I.current:++I.current;(null==t?void 0:t.merge)||j("loading");try{let a=await (0,U.tm)("/api/daemon-sessions?agentUuid=".concat(encodeURIComponent(e),"&limit=").concat(12));if(n!==I.current)return;if(!a.ok){(null==t?void 0:t.merge)||j("error");return}let s=await a.json();if(n!==I.current)return;if(s.success){var r;let n=s.data,a=null!=(r=n.sessions)?r:[];(null==t?void 0:t.merge)?g(e=>eV(a,e)):(g(t=>eV(a,t.filter(t=>t.agentUuid===e))),k(n.nextCursor),E(!!n.hasMore)),j("ok")}else(null==t?void 0:t.merge)||j("error")}catch(e){A.q.error("Failed to fetch daemon session page:",e),(null==t?void 0:t.merge)||j("error")}},[]),z=(0,h.useMemo)(()=>{let e=new Map;for(let n of a){var t;!e.has(n.agentUuid)&&(null==(t=n.agentName)?void 0:t.trim())&&e.set(n.agentUuid,n.agentName.trim())}return[...new Set([...a.map(e=>e.agentUuid),...x.map(e=>e.agentUuid)])].map(t=>{var r;return{agentUuid:t,agentName:null!=(r=e.get(t))?r:n("roleAgent")}})},[a,x,n]),B=(0,h.useMemo)(()=>{var e,t,n,r;return null!=(r=null!=(n=null==(e=x[0])?void 0:e.agentUuid)?n:null==(t=z[0])?void 0:t.agentUuid)?r:null},[x,z]),[O,_]=(0,h.useState)(null),D=O&&z.some(e=>e.agentUuid===O)?O:B;(0,h.useEffect)(()=>{!O&&"ok"===r&&"ok"===p&&B&&_(B)},[O,r,p,B]);let H=(0,h.useCallback)(e=>{var t,r,a;if(null==(t=e.title)?void 0:t.trim())return e.title.trim();if(e.directIdeaUuid)return(null==(a=e.ideaTitle)?void 0:a.trim())?e.ideaTitle.trim():n("conversationIdea",{id:e.directIdeaUuid.slice(0,8)});let s=null==(r=e.firstInstruction)?void 0:r.trim();if(s){let e=s.replace(/\s+/g," ").trim();return e.length>60?"".concat(e.slice(0,60).trimEnd(),"…"):e}return n("conversationAdHoc",{id:e.sessionId.slice(0,8)})},[n]),$=(0,h.useMemo)(()=>D?f.filter(e=>e.agentUuid===D).sort((e,t)=>e.lastTurnAt<t.lastTurnAt?1:-1).map(e=>({session:e,title:H(e),ideaAnchored:null!=e.directIdeaUuid,status:function(e,t){let n=eL(eq(e,t),t);if(n.some(e=>"running"===e.status))return"running";let r=n.find(e=>"interrupted"===e.status);return r?"user"===r.interruptedReason?"interrupted":"error":null}(i,e)})):[],[f,D,i,H]);(0,h.useEffect)(()=>{if(!D){g([]),k(null),E(!1),j("idle");return}R(D)},[D,R]),(0,h.useEffect)(()=>{if(!D)return;let e=setInterval(()=>{R(D,{merge:!0})},15e3);return()=>clearInterval(e)},[D,R]);let K=(0,h.useCallback)(async()=>{if(!D||S||!C||!y)return;let e=I.current;T(!0);try{let t=await (0,U.tm)("/api/daemon-sessions?agentUuid=".concat(encodeURIComponent(D),"&limit=").concat(12,"&before=").concat(encodeURIComponent(y)));if(e!==I.current||!t.ok)return;let n=await t.json();if(e!==I.current)return;if(n.success){let e=n.data;g(t=>{var n;return eV(t,null!=(n=e.sessions)?n:[])}),k(e.nextCursor),E(!!e.hasMore)}}catch(e){A.q.error("Failed to load more daemon sessions:",e)}finally{T(!1)}},[D,S,C,y]),[Z,J]=(0,h.useState)(null),[Y,G]=(0,h.useState)(!1),Q=(0,h.useRef)(null),X=(0,h.useRef)(null),et=(0,h.useRef)(a);(0,h.useEffect)(()=>{et.current=a},[a]);let en=(0,h.useCallback)(e=>Q.current===e&&(Q.current=null,X.current=null,J(t=>t===e?null:t),G(!1),!0),[]),er=(0,h.useMemo)(()=>{var e;return null!=(e=$.find(e=>e.session.uuid===Z))?e:null},[$,Z]),[ea,es]=(0,h.useState)(null),[el,ei]=(0,h.useState)([]),[eo,ed]=(0,h.useState)(!1),[ec,eu]=(0,h.useState)(!1),[ex,em]=(0,h.useState)(!1),[ef,eg]=(0,h.useState)(!1),[ep,eh]=(0,h.useState)(null),ev=(0,h.useRef)(0),eb=(0,h.useRef)(new Set);(0,h.useEffect)(()=>(o(Z),()=>o(null)),[Z,o]),(0,h.useEffect)(()=>{if(!Z){es(null),ei([]),eu(!1),em(!1),eh(null),eb.current=new Set;return}let e=++ev.current;eb.current=new Set,ed(!0),eu(!1),em(!1),eh(null),ei([]),(async()=>{try{let n=await (0,U.tm)("/api/daemon-sessions/".concat(Z));if(e!==ev.current)return;if(!n.ok){en(Z)||eu(!0);return}let r=await n.json();if(e!==ev.current)return;if(r.success){var t;let e=r.data;if(es(e),Q.current===Z){Q.current=null;let t=X.current===Z;X.current=null;let n=e.session,r=et.current.some(e=>e.uuid===n.originConnectionUuid&&"online"===e.effectiveStatus);t&&g(e=>eV([{uuid:n.uuid,agentUuid:n.agentUuid,sessionId:n.sessionId,directIdeaUuid:n.directIdeaUuid,originConnectionUuid:n.originConnectionUuid,status:n.status,title:n.title,lastTurnAt:n.lastTurnAt,originOnline:r,firstInstruction:null,ideaTitle:null}],e))}for(let n of null!=(t=e.turns)?t:[])("ended"===n.status||"interrupted"===n.status)&&eb.current.add(n.uuid);ei(t=>{var n;return eK(t,null!=(n=e.turns)?n:[])}),em(!!e.hasMore),eh(null!==e.oldestTurnSeq&&null!==e.oldestMsgSeq?{turnSeq:e.oldestTurnSeq,msgSeq:e.oldestMsgSeq}:null)}else en(Z)||eu(!0)}catch(t){if(e!==ev.current)return;A.q.error("Failed to fetch daemon session detail:",t),en(Z)||eu(!0)}finally{e===ev.current&&ed(!1)}})()},[Z,en]);let ej=(0,h.useCallback)(async()=>{if(!Z||ef||!ep)return;let{turnSeq:e,msgSeq:t}=ep,n=ev.current;eg(!0);try{let r=await (0,U.tm)("/api/daemon-sessions/".concat(Z,"?beforeTurnSeq=").concat(e,"&beforeMsgSeq=").concat(t));if(n!==ev.current||!r.ok)return;let a=await r.json();if(n!==ev.current)return;if(a.success){let e=a.data;ei(t=>{var n;return eK(null!=(n=e.turns)?n:[],t)}),em(!!e.hasMore),null!==e.oldestTurnSeq&&null!==e.oldestMsgSeq&&eh({turnSeq:e.oldestTurnSeq,msgSeq:e.oldestMsgSeq})}}catch(e){A.q.error("Failed to load earlier transcript turns:",e)}finally{eg(!1)}},[Z,ef,ep]);(0,h.useEffect)(()=>{if(Z)return d(e=>{if(ei(t=>(function(e,t){var n,r;let a=e.findIndex(e=>e.uuid===t.turn.uuid);if("turn_created"===t.trigger){let n={...t.turn,messages:[]};if(-1===a)return e$(e,n);let r=[...e];return r[a]={...n,messages:e[a].messages},r}if(-1===a)return e$(e,{...t.turn,messages:null!=(n=t.messages)?n:[]});let s=[...e];if("turn_status_changed"===t.trigger)return s[a]={...s[a],...t.turn},s;let l=new Set(s[a].messages.map(e=>e.uuid)),i=(null!=(r=t.messages)?r:[]).filter(e=>!l.has(e.uuid));return s[a]={...s[a],...t.turn,messages:[...s[a].messages,...i]},s})(t,e)),"turn_status_changed"===e.trigger){let t=function(e,t){var n,r,a,s,l;if("ended"!==t.status&&"interrupted"!==t.status)return null;let i=null!=(n=t.usage)?n:null;if(!i||e.has(t.uuid))return null;let o=null!=(r=i.inputTokens)?r:0,d=null!=(a=i.outputTokens)?a:0,c=null!=(s=i.cacheReadTokens)?s:0,u=null!=(l=i.cacheCreationTokens)?l:0;return 0===o&&0===d&&0===c&&0===u?null:{addInput:o,addOutput:d,addCacheRead:c,addCacheWrite:u}}(eb.current,e.turn);t&&es(n=>n?(eb.current.add(e.turn.uuid),{...n,session:{...n.session,totalInputTokens:n.session.totalInputTokens+t.addInput,totalOutputTokens:n.session.totalOutputTokens+t.addOutput,totalCacheReadTokens:n.session.totalCacheReadTokens+t.addCacheRead,totalCacheCreationTokens:n.session.totalCacheCreationTokens+t.addCacheWrite}}):n)}})},[Z,d]);let ew=(0,h.useMemo)(()=>{var e;let t=null==ea?void 0:ea.session.originConnectionUuid;return t&&null!=(e=a.find(e=>e.uuid===t))?e:null},[ea,a]),ey=(null==ew?void 0:ew.effectiveStatus)==="online",eN=(0,h.useMemo)(()=>{let e=null==ew?void 0:ew.agentUuid;if(!e)return!1;let t=new Set;for(let n of a)n.agentUuid===e&&""!==n.host&&t.add(n.host);return t.size>1},[ew,a]),ek=(0,h.useMemo)(()=>D?a.filter(e=>e.agentUuid===D&&"online"===e.effectiveStatus):[],[a,D]),eC=(0,h.useMemo)(()=>{let e=null==ew?void 0:ew.agentUuid;return e?a.filter(t=>t.agentUuid===e&&"online"===t.effectiveStatus):[]},[ew,a]),eU=null!=(t=null==(e=z.find(e=>e.agentUuid===D))?void 0:e.agentName)?t:n("roleAgent"),eA=(0,h.useMemo)(()=>{let e=null==ea?void 0:ea.session;return e?eq(i,e):[]},[ea,i]),eE=(0,h.useMemo)(()=>{let e=new Map;for(let t of eA)e.set(t.uuid,t);return e},[eA]),eS=er?er.title:ea?H(ea.session):"";(0,h.useEffect)(()=>{"loading"!==p&&Y&&Z&&Q.current!==Z&&!$.some(e=>e.session.uuid===Z)&&G(!1)},[$,p,Y,Z]);let eT=(0,h.useCallback)(e=>{Q.current=null,X.current=null,J(e)},[]),eF=(0,h.useCallback)(()=>{Q.current=null,X.current=null,J(null),G(!0)},[]),eM=(0,h.useCallback)(e=>{let t={uuid:e.uuid,agentUuid:e.agentUuid,sessionId:e.sessionId,directIdeaUuid:e.directIdeaUuid,originConnectionUuid:e.originConnectionUuid,status:e.status,title:e.title,lastTurnAt:e.lastTurnAt,originOnline:!0,firstInstruction:null,ideaTitle:null};g(n=>{let r=n.findIndex(e=>e.uuid===t.uuid);if(-1===r)return[t,...n];let a=[...n];return a[r]={...a[r],originConnectionUuid:e.originConnectionUuid,originOnline:!0,status:e.status,lastTurnAt:e.lastTurnAt},a}),es(t=>t&&t.session.uuid===e.uuid?{...t,session:{...t.session,originConnectionUuid:e.originConnectionUuid,status:e.status,lastTurnAt:e.lastTurnAt}}:t),J(e.uuid),M()},[M]);(0,h.useEffect)(()=>{c&&(_(c.agentUuid),c.sessionUuid?(Q.current=c.sessionUuid,X.current=f.some(e=>e.uuid===c.sessionUuid)?null:c.sessionUuid,J(c.sessionUuid),G(!0)):(Q.current=null,X.current=null,J(null)),u())},[c,u,f]);let{body:eI,listLoading:eR}=function(e){let t="loading"===e.listStatus,n="error"===e.listStatus&&0===e.sessionCount,r="ok"===e.listStatus&&0===e.sessionCount&&0===e.agentCount;return{body:n?"error":r?"no-agents":"body",listLoading:t}}({listStatus:p,sessionCount:(0,h.useMemo)(()=>x.reduce((e,t)=>e+t.sessionCount,0),[x]),agentCount:z.length}),ez=eR||"loading"===b,eB=e=>{var t;return(0,s.jsx)(eP,{session:null!=(t=null==ea?void 0:ea.session)?t:null,turns:el,title:eS,loading:eo,error:ec,originConnection:ew,originOnline:ey,originCrossHost:eN,sessionExecutions:eA,executionsByUuid:eE,footerLayout:e,hasMoreEarlier:ex,loadingEarlier:ef,onLoadEarlier:ej,originAgentOnlineConnections:eC,onSessionStarted:eM})},eO=eB("inline"),e_=(0,s.jsx)(eH,{agentUuid:D,agentName:eU,onlineConnections:ek,onStarted:eM}),eD=Z?eB("stacked"):e_;return(0,s.jsxs)("div",{className:"flex h-full min-h-0 flex-col bg-background",children:[Y&&(0,s.jsxs)("div",{className:"flex h-full min-h-0 flex-col lg:hidden",children:[(0,s.jsx)("div",{className:"flex shrink-0 items-center gap-1 border-b border-[#EFEBE4] dark:border-[#2a2a2e] bg-background px-3 py-2.5",children:(0,s.jsxs)(N.$,{variant:"ghost",size:"sm",onClick:()=>G(!1),className:"h-9 gap-1 px-2 text-[15px] font-normal text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-primary",children:[(0,s.jsx)(V.A,{className:"h-5 w-5"}),n("mobileBack")]})}),(0,s.jsx)("div",{className:"min-h-0 flex-1",children:eD})]}),(0,s.jsxs)("div",{className:"".concat(Y?"hidden lg:flex":"flex"," h-full min-h-0 flex-col gap-3 overflow-y-auto px-4 py-3 lg:overflow-hidden md:px-8 md:py-4 lg:gap-3 lg:px-8 lg:py-4"),children:[(0,s.jsx)("header",{className:"flex flex-col",children:(0,s.jsx)("h2",{className:"text-[22px] font-semibold text-foreground lg:text-[24px]",children:n("title")})}),"error"===eI?(0,s.jsxs)(P.Zp,{className:"items-center gap-3 rounded-2xl border-[#E7D9C9] dark:border-[#33302a] bg-[#FFF9F3] dark:bg-[#2a2113] p-8 text-center shadow-none md:p-12",children:[(0,s.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-[#D9770615]",children:(0,s.jsx)(w.A,{className:"h-6 w-6 text-[#B45309] dark:text-[#E0A34E]"})}),(0,s.jsx)("h3",{className:"text-base font-semibold text-[#92400E] dark:text-[#E0A34E]",children:n("loadErrorTitle")}),(0,s.jsx)("p",{className:"max-w-md text-[13px] leading-relaxed text-muted-foreground",children:n("loadErrorBody")})]}):"no-agents"===eI?(0,s.jsxs)(P.Zp,{className:"items-center gap-4 rounded-2xl border-border bg-card p-8 text-center shadow-none md:p-12",children:[(0,s.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-primary/[0.08]",children:(0,s.jsx)(W.A,{className:"h-6 w-6 text-primary"})}),(0,s.jsx)("h3",{className:"text-base font-semibold text-foreground",children:n("noAgents.title")}),(0,s.jsx)("p",{className:"max-w-md text-[13px] leading-relaxed text-muted-foreground",children:n("noAgents.body")}),(0,s.jsx)("div",{className:"w-full max-w-md text-left",children:(0,s.jsx)(q.Bs,{variant:"prominent"})})]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:"flex flex-col gap-3 lg:hidden",children:(0,s.jsx)(ee,{agents:z,selectedAgentUuid:D,onSelectAgent:e=>{_(e),J(null)},rows:$,selectedSessionUuid:Z,onSelectSession:e=>{eT(e),G(!0)},onNewConversation:eF,hasMore:C,loadingMore:S,onLoadMore:K,loading:ez})}),(0,s.jsxs)("div",{className:"hidden min-h-0 flex-1 gap-5 lg:flex",children:[(0,s.jsx)("div",{className:"flex w-[320px] shrink-0 flex-col",children:(0,s.jsx)(ee,{agents:z,selectedAgentUuid:D,onSelectAgent:e=>{_(e),J(null)},rows:$,selectedSessionUuid:Z,onSelectSession:eT,onNewConversation:eF,hasMore:C,loadingMore:S,onLoadMore:K,loading:ez})}),(0,s.jsx)(P.Zp,{className:"flex min-h-0 flex-1 flex-col overflow-hidden rounded-2xl border-border bg-card p-0 shadow-none",children:Z?eO:e_})]})]})]})]})}let eZ="(max-width: 639px)";function eJ(e){var t;if(!window.matchMedia)return()=>{};let n=window.matchMedia(eZ);return null==(t=n.addEventListener)||t.call(n,"change",e),()=>{var t;return null==(t=n.removeEventListener)?void 0:t.call(n,"change",e)}}function eY(){var e,t;return!!(null==(e=(t=window).matchMedia)?void 0:e.call(t,eZ).matches)}function eG(){return(0,s.jsx)("div",{"data-slot":"daemon-chat-sheet-body",className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:(0,s.jsx)(eW,{})})}function eQ(){let e=(0,l.c)("daemonChat"),{modalOpen:t,setModalOpen:n}=(0,L.$d)(),r=(0,h.useSyncExternalStore)(eJ,eY,()=>!1),a=(0,h.useRef)(null),i=(0,h.useRef)(null),o=(0,h.useRef)(null),d=(0,h.useCallback)(()=>{let e=a.current;e&&(e.style.transform="",e.style.transition="",e.style.willChange="")},[]),c=(0,h.useCallback)(()=>{null!==o.current&&(window.clearTimeout(o.current),o.current=null)},[]);(0,h.useEffect)(()=>()=>{c(),d()},[c,d]);let u=function(e){var t,r,s,l,c,u;let x=arguments.length>1&&void 0!==arguments[1]&&arguments[1],m=i.current;if(!m||m.pointerId!==e.pointerId)return;i.current=null,(null==(t=(r=e.currentTarget).hasPointerCapture)?void 0:t.call(r,e.pointerId))&&(null==(c=(u=e.currentTarget).releasePointerCapture)||c.call(u,e.pointerId));let f=Math.max(0,e.clientY-m.startY);if(!x&&f>=96){d(),n(!1);return}let g=a.current;if(!g)return;let p=null==(s=(l=window).matchMedia)?void 0:s.call(l,"(prefers-reduced-motion: reduce)").matches;g.style.transition=p?"none":"transform 180ms ease-out",g.style.transform="translate3d(0, 0, 0)",o.current=window.setTimeout(()=>{d(),o.current=null},200*!p)};return r?(0,s.jsx)(K.cj,{open:t,onOpenChange:n,children:(0,s.jsxs)(K.h,{ref:a,side:"bottom",showCloseButton:!1,"data-top-gap-px":16,className:"h-[calc(100dvh-1rem)] max-h-[calc(100dvh-1rem)] gap-0 overflow-hidden rounded-t-2xl border-x border-t p-0 pb-[env(safe-area-inset-bottom)]",children:[(0,s.jsxs)(H.bL,{children:[(0,s.jsx)(K.qp,{children:e("title")}),(0,s.jsx)(K.Qs,{children:e("subtitle")})]}),(0,s.jsx)("div",{"data-slot":"daemon-chat-sheet-handle",className:"flex h-7 shrink-0 touch-none cursor-grab items-center justify-center active:cursor-grabbing","aria-hidden":"true",onPointerDown:e=>{var t,n;e.isPrimary&&0===e.button&&(c(),d(),i.current={pointerId:e.pointerId,startY:e.clientY},null==(t=(n=e.currentTarget).setPointerCapture)||t.call(n,e.pointerId),a.current&&(a.current.style.transition="none",a.current.style.willChange="transform"))},onPointerMove:e=>{let t=i.current;if(!t||t.pointerId!==e.pointerId||!a.current)return;e.preventDefault();let n=Math.max(0,e.clientY-t.startY);a.current.style.transform="translate3d(0, ".concat(n,"px, 0)")},onPointerUp:u,onPointerCancel:e=>u(e,!0),children:(0,s.jsx)("div",{className:"h-1 w-10 rounded-full bg-muted-foreground/25"})}),(0,s.jsx)(eG,{})]})}):(0,s.jsx)($.lG,{open:t,onOpenChange:n,children:(0,s.jsxs)($.Cf,{className:"flex h-dvh max-h-dvh w-screen max-w-none flex-col gap-0 overflow-hidden rounded-none border-0 p-0 sm:h-[92vh] sm:max-h-[92vh] sm:w-[min(96vw,1100px)] sm:max-w-[min(96vw,1100px)] sm:rounded-lg sm:border",children:[(0,s.jsxs)(H.bL,{children:[(0,s.jsx)($.L3,{children:e("title")}),(0,s.jsx)($.rr,{children:e("subtitle")})]}),(0,s.jsx)(eG,{})]})})}var eX=n(43057),e0=n(16349);function e1(e){let{mention:t,displayName:n}=e,r=(0,l.c)("mention"),c=(0,l.c)("agentPresence"),{openChatForAgent:u}=(0,L.$d)(),{user:x}=(0,e0.As)(),{pinned:m,online:f,ownerUuid:g,host:p,cwd:v}=function(e){let{connections:t}=(0,L.$d)(),{uuid:n,pinnedHost:r,pinnedCwd:a,runtimeCwd:s}=e,l="pinnedHost"in e||"pinnedCwd"in e;return(0,h.useMemo)(()=>(function(e,t){var n,r,a,s,l,i;let o=void 0!==e.pinnedHost||void 0!==e.pinnedCwd,d=t.filter(t=>t.agentUuid===e.uuid);if(o){let t=null!=(a=e.pinnedHost)?a:null,n=null!=(s=e.pinnedCwd)?s:null,i=d.find(r=>e.runtimeCwd?r.host===t&&"online"===r.effectiveStatus:r.host===t&&r.cwd===n);return i?{pinned:!0,online:"online"===i.effectiveStatus,ownerUuid:i.ownerUuid,host:e.runtimeCwd?t:i.host,cwd:e.runtimeCwd?n:i.cwd}:{pinned:!0,online:!1,ownerUuid:null!=(l=null==(r=d[0])?void 0:r.ownerUuid)?l:null,host:t,cwd:n}}let c=d.find(e=>"online"===e.effectiveStatus);return{pinned:!1,online:void 0!==c,ownerUuid:null!=(i=null==(n=null!=c?c:d[0])?void 0:n.ownerUuid)?i:null,host:null,cwd:null}})(l?{uuid:n,pinnedHost:r,pinnedCwd:a,runtimeCwd:s}:{uuid:n},t),[t,n,r,a,s,l])}(void 0!==t.pinnedHost||void 0!==t.pinnedCwd?{uuid:t.uuid,pinnedHost:t.pinnedHost,pinnedCwd:t.pinnedCwd}:{uuid:t.uuid}),b=(null==x?void 0:x.uuid)!=null&&x.uuid===g&&f,j=r(f?"online":"offline"),w=m?(0,d.kn)(v):null,y=m?(0,d.g9)(null!=p?p:""):null;return(0,s.jsxs)(eu.AM,{children:[(0,s.jsx)(eu.Wv,{asChild:!0,children:(0,s.jsxs)(i.E,{variant:"secondary",className:"cursor-pointer gap-1 align-baseline","aria-label":r("badgeAria",{name:n,status:j}),children:[(0,s.jsx)(a.m,{online:f}),(0,s.jsxs)("span",{children:["@",n]})]})}),(0,s.jsx)(eu.hl,{className:"w-64",align:"start",children:(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(o.AgentAvatar,{name:n,size:"sm",className:"rounded-full"}),(0,s.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,s.jsx)("p",{className:"truncate text-sm font-semibold text-foreground",children:n}),(0,s.jsxs)("p",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,s.jsx)(a.m,{online:f}),j]})]})]}),m&&w&&y&&(0,s.jsxs)("dl",{className:"flex flex-col gap-1.5 text-xs",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,s.jsx)("dt",{className:"text-muted-foreground",children:r("workingDirectory")}),(0,s.jsx)("dd",{className:"truncate font-mono text-foreground",title:w.isUnknown?c("unknownPath"):w.title,children:w.isUnknown?c("unknownPath"):w.label})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,s.jsx)("dt",{className:"text-muted-foreground",children:r("host")}),(0,s.jsx)("dd",{className:"truncate font-mono text-foreground",title:y.isUnknown?c("unknownHost"):y.title,children:y.isUnknown?c("unknownHost"):y.label})]})]}),b&&(0,s.jsxs)(N.$,{size:"sm",variant:"outline",className:"w-full",onClick:()=>{u(t.uuid,m?{host:null!=p?p:"",cwd:null!=v?v:null}:void 0)},children:[(0,s.jsx)(eX.A,{}),r("openConversation")]})]})})]})}n(72530)},72530:(e,t,n)=>{n.d(t,{HM:()=>p,No:()=>x,wo:()=>m});var r=n(90508),a=n(1856),s=n(39268),l=n(62482),i=n(32470),o=n(37627),d=n(90094),c=n(36550),u=n(18277);function x(e){let{state:t}=e;return"error"===t?(0,r.jsx)("span",{"aria-hidden":!0,className:"inline-flex h-2.5 w-2.5 shrink-0 rounded-full bg-[#D97706] opacity-90"}):(0,r.jsx)("span",{className:"shrink-0",children:(0,r.jsx)(o.m,{online:"online"===t,size:"md"})})}function m(e,t){return"loading"===e?"loading":"error"===e?"error":t>0?"online":"idle"}function f(e){let{connection:t,executions:n,showHost:a,nowMs:o}=e,u=(0,s.c)("agentPresence"),x=(0,s.c)("agentConnections"),{text:m,dot:f}=(0,d.c0)(t,n,o),g=n.filter(e=>"running"===e.status),p=n.filter(e=>"queued"===e.status),h=g.length>0||p.length>0,v="online"===t.effectiveStatus;return(0,r.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,r.jsx)(d.A4,{connection:t,showHost:a,activity:m,dot:f}),h?(0,r.jsxs)("div",{className:"flex flex-col gap-4 pl-1",children:[g.length>0&&(0,r.jsx)(c.wL,{icon:l.A,label:x("execRunning"),count:g.length,children:g.map(e=>(0,r.jsx)(c.lb,{exec:e,nowMs:o,layout:"stacked"},e.uuid))}),p.length>0&&(0,r.jsx)(c.wL,{icon:i.A,label:x("execQueued"),count:p.length,children:p.map(e=>(0,r.jsx)(c.lb,{exec:e,nowMs:o,layout:"stacked"},e.uuid))})]}):v&&(0,r.jsx)("p",{className:"pl-1 text-[12px] text-muted-foreground",children:u("connectionIdle")})]})}function g(e){let{group:t,executionsByConnection:n,nowMs:a,expanded:s,onToggle:l}=e;return(0,r.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,r.jsx)(d.u,{group:t,expanded:s,onToggle:l}),s&&(0,r.jsx)("div",{className:"flex flex-col gap-3 pl-7",children:t.connections.map(e=>{var s;return(0,r.jsx)(f,{connection:e,executions:null!=(s=n[e.uuid])?s:[],showHost:t.multiHost,nowMs:a},e.uuid)})})]})}function p(e){let{groups:t,executionsByConnection:n,nowMs:s}=e,[l,i]=(0,a.useState)(new Set);return 0===t.length?(0,r.jsx)(u.Bs,{variant:"compact"}):(0,r.jsx)("div",{className:"flex flex-col gap-5",children:t.map(e=>(0,r.jsx)(g,{group:e,executionsByConnection:n,nowMs:s,expanded:l.has(e.agentUuid),onToggle:()=>{let t;return t=e.agentUuid,i(e=>{let n=new Set(e);return n.has(t)?n.delete(t):n.add(t),n})}},e.agentUuid))})}},78307:(e,t,n)=>{n.d(t,{C:()=>u,O:()=>f});var r=n(90508),a=n(1856),s=n(39268),l=n(71388),i=n(41033),o=n(24377),d=n(24900),c=n(37627);function u(e){return e.filter(e=>"online"===e.effectiveStatus)}function x(e){let{cwd:t,formatOptions:n}=e,a=(0,s.c)(),i=(0,d.kn)(t,n),c=i.isUnknown?a(i.label):i.label,u=i.isUnknown?a(i.title):i.title;return(0,r.jsxs)("span",{title:u,className:(0,o.cn)("inline-flex min-w-0 items-center gap-1.5 rounded-md border border-border bg-background px-2 py-0.5","font-mono text-xs",i.isUnknown?"text-muted-foreground italic":"text-foreground"),children:[(0,r.jsx)(l.A,{className:"size-3 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,r.jsx)("span",{className:"truncate",children:c})]})}function m(e){let{host:t,formatOptions:n}=e,a=(0,s.c)(),l=(0,d.g9)(t,n),i=l.isUnknown?a(l.label):l.label,o=l.isUnknown?a(l.title):l.title;return(0,r.jsx)("span",{title:o,className:"shrink-0 truncate font-mono text-[10px] text-muted-foreground",children:i})}function f(e){let{instances:t,selectedConnectionUuid:n,onSelect:l,className:d,cwdFormatOptions:u,hostFormatOptions:f,ariaLabel:g}=e,p=(0,s.c)("mentionInstance"),h=(0,a.useMemo)(()=>new Set(t.map(e=>e.host)).size>1,[t]),v=1===t.length?t[0]:null;return((0,a.useEffect)(()=>{v&&n!==v.connectionUuid&&l(v)},[v,n]),0===t.length)?(0,r.jsx)("div",{className:(0,o.cn)("py-2 text-xs text-muted-foreground",d),children:p("noInstances")}):(0,r.jsx)(i.z,{"aria-label":null!=g?g:p("title"),value:null!=n?n:void 0,onValueChange:e=>{let n=t.find(t=>t.connectionUuid===e);n&&l(n)},className:(0,o.cn)("gap-1.5",d),children:t.map(e=>{var t;let a=n===e.connectionUuid;return(0,r.jsxs)("div",{role:"presentation",tabIndex:-1,onClick:()=>l(e),className:(0,o.cn)("flex items-center gap-2.5 rounded-md border px-2.5 py-2 transition-colors","cursor-pointer border-border hover:bg-background",a&&"border-primary bg-background"),children:[(0,r.jsx)("span",{className:"flex shrink-0 items-center","aria-hidden":!0,children:(0,r.jsx)(c.m,{online:!0})}),(0,r.jsxs)("span",{className:"flex min-w-0 flex-1 items-center gap-2",children:[(0,r.jsx)(x,{cwd:e.cwd,formatOptions:u}),h&&(0,r.jsx)(m,{host:e.host,formatOptions:f})]}),(0,r.jsx)(i.C,{value:e.connectionUuid,"aria-label":null!=(t=e.cwd)?t:void 0,className:"shrink-0"})]},e.connectionUuid)})})}},81750:(e,t,n)=>{n.d(t,{Ke:()=>o,Nt:()=>l,R6:()=>i});var r=n(90508),a=n(38476),s=n(24377);function l(e){let{...t}=e;return(0,r.jsx)(a.Root,{"data-slot":"collapsible",...t})}function i(e){let{...t}=e;return(0,r.jsx)(a.Trigger,{"data-slot":"collapsible-trigger",...t})}function o(e){let{className:t,...n}=e;return(0,r.jsx)(a.Content,{"data-slot":"collapsible-content",className:(0,s.cn)("overflow-hidden data-[state=open]:animate-[collapsible-down_250ms_ease-in-out] data-[state=closed]:animate-[collapsible-up_200ms_ease-in-out]",t),...n})}},82813:(e,t,n)=>{n.d(t,{MarkdownContent:()=>U});var r=n(90508),a=n(1856),s=n(65700),l=n(39268);function i(e){let{entries:t}=e,n=(0,l.c)("markdown");return(0,r.jsx)("section",{"aria-label":n("frontmatterLabel"),className:"mb-4 rounded-lg border border-border bg-muted/40 px-4 py-3",children:(0,r.jsx)("dl",{className:"grid grid-cols-[minmax(0,auto)_minmax(0,1fr)] gap-x-4 gap-y-1.5 text-sm",children:t.map((e,t)=>(0,r.jsxs)("div",{className:"grid grid-cols-subgrid col-span-2",children:[(0,r.jsx)("dt",{className:"font-mono text-xs leading-5 text-muted-foreground break-words",children:e.key}),(0,r.jsx)("dd",{className:"leading-5 text-foreground break-words",children:""===e.value?(0,r.jsx)("span",{"aria-hidden":"true",children:"—"}):e.value})]},"".concat(e.key,"-").concat(t)))})})}var o=n(92691),d=n(68876);function c(e){var t,n;return null!=(n=null==(t=/^ref:([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$/i.exec(null!=e?e:""))?void 0:t[1].toLowerCase())?n:null}var u=n(24377);function x(e){var t;let{uuid:n,store:s,children:i}=e,c=(0,l.c)(),x=(0,a.useRef)(null),[m,f]=(0,a.useState)(!1);(0,a.useEffect)(()=>{if("undefined"==typeof IntersectionObserver)return void f(!0);let e=new IntersectionObserver(t=>{t.some(e=>e.isIntersecting)&&(f(!0),e.disconnect())});return x.current&&e.observe(x.current),()=>e.disconnect()},[]);let g=(0,a.useCallback)(e=>m?s.subscribe(n,e):()=>{},[s,n,m]),p=(0,a.useCallback)(()=>s.snapshot(n),[s,n]),h=(0,a.useSyncExternalStore)(g,p,s.serverSnapshot),v="ready"===h.status?h.reference:void 0,b=v?function(e){try{let t=new URL(e);return"https:"===t.protocol||"http:"===t.protocol?t.href:void 0}catch(e){return}}(v.url):void 0,j=v?"".concat(v.title," — ").concat(c(b?"references.citationOpen":"references.citationUnsafe")):c("references.citation".concat("loading"===h.status?"Loading":"missing"===h.status?"Missing":"Error"));return(0,r.jsxs)(o.m_,{children:[(0,r.jsx)(o.k$,{asChild:!0,children:(0,r.jsxs)("a",{ref:x,href:b,target:b?"_blank":void 0,rel:b?"noopener noreferrer":void 0,role:"link",tabIndex:0,"aria-disabled":!b,"aria-label":j,"data-citation-state":h.status,onMouseEnter:()=>{f(!0),s.refresh(n)},onFocus:()=>{f(!0),s.refresh(n)},className:(0,u.cn)("inline rounded-sm px-0.5 text-xs font-medium align-super focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",b?"text-primary hover:underline":"text-muted-foreground aria-disabled:text-muted-foreground"),children:["[",i,"]"]})}),(0,r.jsx)(o.ZI,{sideOffset:4,className:"max-w-[min(24rem,calc(100vw-2rem))] max-h-[var(--radix-tooltip-content-available-height)] overflow-y-auto whitespace-pre-wrap break-words [overflow-wrap:anywhere]",children:v?(0,r.jsxs)("span",{className:"flex flex-col gap-1",children:[(0,r.jsx)("span",{className:"font-semibold",children:v.title}),(0,r.jsx)("span",{children:(0,d.N2)(v.type)?c(d.qQ[v.type].labelKey):v.type}),(0,r.jsx)("span",{children:v.url}),(null==(t=v.notes)?void 0:t.trim())&&(0,r.jsx)("span",{children:v.notes}),!b&&(0,r.jsx)("span",{children:c("references.citationUnsafe")}),"ready"===h.status&&h.refreshError&&(0,r.jsx)("span",{children:c("references.citationRefreshError")})]}):j})]})}let m={status:"loading"},f=new Map;function g(){let e=new Map;function t(t){let n=e.get(t);if(!n||n.pending)return;let r=function(e){let t=f.get(e);if(!t){let n,r,a=new AbortController,s=new Promise((e,t)=>{r=()=>t(Error("Reference request canceled")),a.signal.addEventListener("abort",r,{once:!0}),n=setTimeout(()=>{t(Error("Reference request timed out")),a.abort()},1e4)}),l=(async()=>{let t=await fetch("/api/references/".concat(e),{credentials:"same-origin",cache:"no-store",signal:a.signal});if(404===t.status)return{status:"missing"};if(!t.ok)throw Error("Reference request failed");let n=await t.json();if(!n.success||!n.data)throw Error("Invalid reference response");return{status:"ready",reference:n.data}})();t={controller:a,consumers:0,promise:Promise.race([l,s]).finally(()=>{clearTimeout(n),a.signal.removeEventListener("abort",r),f.get(e)===t&&f.delete(e)})},f.set(e,t)}t.consumers++;let n=t;return{promise:n.promise,release:()=>{0==--n.consumers&&(n.controller.abort(),f.get(e)===n&&f.delete(e))}}}(t),a=!1,s=()=>{a||r.release(),a=!0};n.cancel=s,n.pending=(async()=>{let a;try{a=await r.promise}catch(e){a="ready"===n.state.status?{...n.state,refreshError:!0}:{status:"error"}}finally{s()}e.get(t)===n&&(n.state=a,n.pending=void 0,n.cancel=void 0,n.listeners.forEach(e=>e()))})()}return{snapshot:t=>{var n,r;return null!=(r=null==(n=e.get(t))?void 0:n.state)?r:m},serverSnapshot:()=>m,subscribe(n,r){let a=e.get(n);return a||(a={state:m,listeners:new Set},e.set(n,a)),a.listeners.add(r),t(n),()=>{if(a.listeners.delete(r),!a.listeners.size){var t;null==(t=a.cancel)||t.call(a),e.delete(n)}}},refresh:t,refreshAll:()=>e.forEach((e,n)=>t(n))}}let p=/^[A-Za-z0-9_.-]+$/,h=new Set(["{","[","|",">","&","*"]);var v=n(19169),b=n(26190);let j=v.a,w=(0,v.V)({themes:["github-dark","github-dark"]});v.a,b.a;let y={mermaid:{fullscreen:!0,download:!0,copy:!0,panZoom:!0}},N=(0,a.createContext)(null),k=(e,t,n)=>/^ref:/i.test(e)?"href"===t&&"a"===n.tagName&&c(e)?e:void 0:(0,s.Lv)(e,t,n);function C(e){var t;let{components:n,rehypePlugins:l,...i}=e,o=(0,a.useContext)(N),d=(0,a.useMemo)(()=>{let e=null==n?void 0:n.a;return{...n,a:function(t){let n=c(t.href);return n?(0,r.jsx)(x,{uuid:n,store:o,children:t.children}):void 0!==t.href&&e?(0,r.jsx)(e,{...t}):(0,r.jsx)("span",{className:"text-muted-foreground",children:t.children})}}},[n,o]),u=(0,a.useMemo)(()=>null==l?void 0:l.map(e=>{var t,n;let r=s.XX.sanitize;if(!Array.isArray(e)||!Array.isArray(r)||e[0]!==r[0])return e;let a=e[1];return[e[0],{...a,protocols:{...a.protocols,href:[...null!=(n=null==(t=a.protocols)?void 0:t.href)?n:[],"ref"]}}]}),[l]),m=null==(t=i.content.match(/\[[^\]]*\]\(ref:[^)]*\)/gi))?void 0:t.join("|");return(0,r.jsx)(s.eB,{...i,components:d,rehypePlugins:u},m)}function U(e){let{children:t,components:n,allowedTags:l,literalTagContent:d}=e,c=function(){let[e,t]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{let e=document.documentElement,n=()=>t(e.classList.contains("dark"));n();let r=new MutationObserver(n);return r.observe(e,{attributes:!0,attributeFilter:["class"]}),()=>r.disconnect()},[]),e}(),[u]=(0,a.useState)(g);(0,a.useEffect)(()=>(window.addEventListener("focus",u.refreshAll),()=>window.removeEventListener("focus",u.refreshAll)),[u]);let{entries:x,body:m}=(0,a.useMemo)(()=>(function(e){let t={entries:null,body:e};if(!e.startsWith("---"))return t;let n=0,r=()=>{if(n>=e.length)return null;let t=e.indexOf("\n",n),r=e.slice(n,-1===t?e.length:t);return n=-1===t?e.length:t+1,r.endsWith("\r")?r.slice(0,-1):r};if("---"!==r())return t;let a=[],s=-1;for(;;){let e=r();if(null===e)return t;if("---"===e||"..."===e){s=n;break}if(""===e.trim()||e.trimStart().startsWith("#"))continue;let l=e.indexOf(":");if(l<=0)return t;let i=e.slice(0,l);if(!p.test(i))return t;let o=e.slice(l+1);if(""!==o&&!/^[ \t]/.test(o))return t;let d=function(e){let t=e.trim();if(""===t)return"";let n=t[0];if('"'===n||"'"===n){let e=t.indexOf(n,1);if(e>0)return t.slice(1,e)}return t.replace(/[ \t]+#.*$/,"").trimEnd()}(o);if(""!==d&&h.has(d[0]))return t;a.push({key:i,value:d})}return 0===a.length?t:{entries:a,body:e.slice(s)}})(t),[t]),f=(0,a.useMemo)(()=>({config:{theme:c?"dark":"default"}}),[c]),v=(0,a.useMemo)(()=>({code:c?w:j,mermaid:b.a}),[c]);return(0,r.jsx)(N.Provider,{value:u,children:(0,r.jsxs)(o.Bc,{children:[x&&(0,r.jsx)(i,{entries:x}),(0,r.jsx)(s.jH,{plugins:v,controls:y,mermaid:f,components:n,allowedTags:l,literalTagContent:d,BlockComponent:C,urlTransform:k,children:m},c?"dark":"light")]})})}},90094:(e,t,n)=>{n.d(t,{A4:()=>k,Jk:()=>v,Mn:()=>y,c0:()=>w,fb:()=>b,u:()=>C});var r=n(90508),a=n(39268),s=n(51509),l=n(71388),i=n(68842),o=n(17730),d=n(24900),c=n(91385),u=n(22922),x=n(37627),m=n(95291);function f(e){let t=null==e?void 0:e.trim();return t?t.toLocaleLowerCase("en-US"):"￿"}function g(e){return null===e?"￿":e}function p(e,t){return e<t?-1:+(e>t)}function h(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return[...e].sort((e,n)=>{var r,a;return j(e,null!=(r=t[e.uuid])?r:[])-j(n,null!=(a=t[n.uuid])?a:[])||p(f(e.agentName),f(n.agentName))||p(e.agentUuid,n.agentUuid)||p(g(e.cwd),g(n.cwd))||p(e.host,n.host)||p(e.clientType,n.clientType)||p(e.uuid,n.uuid)})}function v(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=h(e,t),r=[],a=new Map;for(let e of n)a.has(e.agentUuid)||(a.set(e.agentUuid,[]),r.push(e.agentUuid)),a.get(e.agentUuid).push(e);return r.map(e=>{let t=a.get(e),n=new Set(t.map(e=>e.host)).size>1;return{agentUuid:e,agentName:t[0].agentName,clientType:t[0].clientType,connections:t,onlineCount:t.filter(e=>"online"===e.effectiveStatus).length,multiHost:n,singleHost:n?void 0:t[0].host}})}function b(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return h(e.filter(e=>"online"===e.effectiveStatus),t)}function j(e,t){return"online"!==e.effectiveStatus?3:t.some(e=>"running"===e.status)?0:t.some(e=>"queued"===e.status)?1:2}function w(e,t,n){let s=(0,a.c)("agentPresence.drilldown"),l=(0,m.l5)(),i=(0,m.Vq)(),o=function(e,t){if("online"!==e.effectiveStatus)return{state:"offline",runningStartedAt:null,queuedCount:0};let n=t.filter(e=>"running"===e.status),r=t.filter(e=>"queued"===e.status);if(n.length>0){var a;let e=[...n].sort((e,t)=>{var n,r;return(null!=(n=e.startedAt)?n:e.createdAt).localeCompare(null!=(r=t.startedAt)?r:t.createdAt)})[0];return{state:"running",runningStartedAt:null!=(a=e.startedAt)?a:e.createdAt,queuedCount:r.length}}return r.length>0?{state:"queued",runningStartedAt:null,queuedCount:r.length}:{state:"idle",runningStartedAt:null,queuedCount:0}}(e,t);switch(o.state){case"offline":return{text:s("offlineSince",{time:i(e.lastSeenAt,n)}),dot:(0,r.jsx)(x.m,{online:!1,size:"md"})};case"running":return{text:s("runningFor",{time:o.runningStartedAt?l(o.runningStartedAt,n):""}),dot:(0,r.jsx)("span",{"aria-hidden":!0,className:"inline-flex h-2.5 w-2.5 rounded-full bg-primary"})};case"queued":return{text:s("queuedCount",{count:o.queuedCount}),dot:(0,r.jsx)(x.m,{online:!0,size:"md"})};default:return{text:s("idle"),dot:(0,r.jsx)(x.m,{online:!0,size:"md"})}}}function y(e){let{cwd:t,formatOptions:n}=e,i=(0,a.c)("agentPresence"),o=(0,d.kn)(null!=t?t:null,n),c=o.isUnknown?i("unknownPath"):o.label,u=o.isUnknown?i("unknownPath"):o.title,x=o.isUnknown?s.A:l.A;return(0,r.jsxs)("span",{title:u,className:"inline-flex min-w-0 items-center gap-1.5 rounded-md bg-[#F0EDE8] dark:bg-[#1f1e1c] px-2 py-1",children:[(0,r.jsx)(x,{className:"h-3.5 w-3.5 shrink-0 text-[#9A8E7E]","aria-hidden":!0}),(0,r.jsx)("span",{className:"min-w-0 truncate font-mono text-[12px] font-semibold ".concat(o.isUnknown?"text-muted-foreground":"text-[#3A3631]"),children:c})]})}function N(e){let{host:t}=e,n=(0,a.c)("agentPresence"),s=(0,d.g9)(t),l=s.isUnknown?n("unknownHost"):s.label,o=s.isUnknown?n("unknownHost"):s.title;return(0,r.jsxs)("span",{title:o,className:"inline-flex min-w-0 max-w-[140px] shrink items-center gap-1 truncate font-mono text-[11px] text-muted-foreground",children:[(0,r.jsx)(i.A,{className:"h-3 w-3 shrink-0","aria-hidden":!0}),(0,r.jsx)("span",{className:"truncate",children:l})]})}function k(e){let{connection:t,showHost:n,activity:a,dot:s}=e,l="online"===t.effectiveStatus,i=n||!!a;return(0,r.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,r.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1",children:[(0,r.jsx)(y,{cwd:t.cwd}),i&&(0,r.jsxs)("div",{className:"flex min-w-0 items-center gap-1.5 pl-0.5",children:[n&&(0,r.jsx)(N,{host:t.host}),n&&a&&(0,r.jsx)("span",{"aria-hidden":!0,className:"shrink-0 text-[11px] text-[#C9C2B6]",children:"\xb7"}),a&&(0,r.jsx)("span",{className:"min-w-0 truncate text-[11px] text-muted-foreground",children:a})]})]}),(0,r.jsx)("span",{className:"shrink-0",children:null!=s?s:(0,r.jsx)(x.m,{online:l,size:"md"})})]})}function C(e){var t,n;let{group:s,expanded:l,onToggle:i}=e,d=(0,a.c)("agentPresence"),f=(0,a.c)("agentPresence.drilldown"),g=(0,a.c)("agentConnections"),p=(0,m.Z5)(),h=(null==(t=s.agentName)?void 0:t.trim())||g("unknownAgent"),v=s.onlineCount>0,b="function"==typeof i,j=new Set(s.connections.map(e=>e.host)).size,w=""===s.singleHost?d("unknownHost"):null!=(n=s.singleHost)?n:"",y=s.multiHost?"".concat(p(s.clientType)," \xb7 ").concat(f("hostsCount",{count:j})):"".concat(p(s.clientType)," \xb7 ").concat(w),N=(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(o.A,{className:"h-4 w-4 shrink-0 text-[#B7AE9F] transition-transform ".concat(b&&l?"rotate-180":""),"aria-hidden":!0}),(0,r.jsx)(c.AgentAvatar,{name:h,size:36,className:"rounded-lg"}),(0,r.jsxs)("div",{className:"min-w-0 flex-1 text-left",children:[(0,r.jsx)("div",{className:"truncate text-[14px] font-semibold text-foreground",children:h}),(0,r.jsx)("div",{className:"mt-0.5 truncate text-[12px] text-muted-foreground",children:y})]}),(0,r.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[(0,r.jsx)("span",{className:"text-[12px] text-muted-foreground",children:f("instancesCount",{count:s.connections.length})}),(0,r.jsx)(x.m,{online:v,size:"md"})]})]});return b?(0,r.jsx)(u.$,{type:"button",variant:"ghost",onClick:i,"aria-expanded":l,"aria-label":f(l?"collapseAgent":"expandAgent",{agent:h}),className:"flex h-auto w-full items-center justify-start gap-2.5 rounded-lg px-1.5 py-1 hover:bg-[#FBF4EF] dark:hover:bg-[#26241f]",children:N}):(0,r.jsx)("div",{className:"flex items-center gap-2.5",children:N})}},91846:(e,t,n)=>{n.d(t,{bq:()=>u,eb:()=>m,gC:()=>x,l6:()=>d,yv:()=>c});var r=n(90508);n(1856);var a=n(17730),s=n(60532),l=n(89967),i=n(48218),o=n(24377);function d(e){let{...t}=e;return(0,r.jsx)(i.Root,{"data-slot":"select",...t})}function c(e){let{...t}=e;return(0,r.jsx)(i.Value,{"data-slot":"select-value",...t})}function u(e){let{className:t,size:n="default",children:s,...l}=e;return(0,r.jsxs)(i.Trigger,{"data-slot":"select-trigger","data-size":n,className:(0,o.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...l,children:[s,(0,r.jsx)(i.Icon,{asChild:!0,children:(0,r.jsx)(a.A,{className:"size-4 opacity-50"})})]})}function x(e){let{className:t,children:n,position:a="item-aligned",align:s="center",...l}=e;return(0,r.jsx)(i.Portal,{children:(0,r.jsxs)(i.Content,{"data-slot":"select-content",className:(0,o.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md","popper"===a&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:a,align:s,...l,children:[(0,r.jsx)(f,{}),(0,r.jsx)(i.Viewport,{className:(0,o.cn)("p-1","popper"===a&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:n}),(0,r.jsx)(g,{})]})})}function m(e){let{className:t,children:n,...a}=e;return(0,r.jsxs)(i.Item,{"data-slot":"select-item",className:(0,o.cn)("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",t),...a,children:[(0,r.jsx)("span",{"data-slot":"select-item-indicator",className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,r.jsx)(i.ItemIndicator,{children:(0,r.jsx)(s.A,{className:"size-4"})})}),(0,r.jsx)(i.ItemText,{children:n})]})}function f(e){let{className:t,...n}=e;return(0,r.jsx)(i.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:(0,o.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,r.jsx)(l.A,{className:"size-4"})})}function g(e){let{className:t,...n}=e;return(0,r.jsx)(i.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:(0,o.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,r.jsx)(a.A,{className:"size-4"})})}},92691:(e,t,n)=>{n.d(t,{Bc:()=>l,ZI:()=>d,k$:()=>o,m_:()=>i});var r=n(90508);n(1856);var a=n(45841),s=n(24377);function l(e){let{delayDuration:t=0,...n}=e;return(0,r.jsx)(a.Provider,{"data-slot":"tooltip-provider",delayDuration:t,...n})}function i(e){let{...t}=e;return(0,r.jsx)(a.Root,{"data-slot":"tooltip",...t})}function o(e){let{...t}=e;return(0,r.jsx)(a.Trigger,{"data-slot":"tooltip-trigger",...t})}function d(e){let{className:t,sideOffset:n=0,children:l,...i}=e;return(0,r.jsx)(a.Portal,{children:(0,r.jsxs)(a.Content,{"data-slot":"tooltip-content",sideOffset:n,className:(0,s.cn)("bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",t),...i,children:[l,(0,r.jsx)(a.Arrow,{className:"bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}},95126:(e,t,n)=>{n.d(t,{D1:()=>o,Qb:()=>i,a7:()=>s,jj:()=>d});var r=n(90508),a=n(1856);let s="stream_reset",l=(0,a.createContext)(null);function i(e){let{children:t}=e,n=(0,a.useRef)(new Set),[i,o]=(0,a.useState)(0),[d,c]=(0,a.useState)(null),u=(0,a.useCallback)(e=>(n.current.add(e),()=>{n.current.delete(e)}),[]);(0,a.useEffect)(()=>{let e=null,t=()=>{e&&(e.close(),e=null)},r=()=>{t(),(e=new EventSource(!d?"/api/events":"/api/events?sessionUuid=".concat(encodeURIComponent(d)))).onopen=()=>{for(let e of(o(e=>e+1),n.current))e({type:s})},e.onmessage=e=>{let t;try{t=JSON.parse(e.data)}catch(e){return}for(let e of n.current)e(t)},e.onerror=()=>{}},a=()=>{"visible"===document.visibilityState&&(null==e||e.readyState!==EventSource.OPEN)&&r()};return r(),document.addEventListener("visibilitychange",a),()=>{t(),document.removeEventListener("visibilitychange",a)}},[d]),(0,a.useEffect)(()=>()=>{n.current.clear()},[]);let x=(0,a.useMemo)(()=>({subscribe:u,openGeneration:i,sessionUuid:d,setSessionUuid:c}),[u,i,d]);return(0,r.jsx)(l.Provider,{value:x,children:t})}function o(){let e=(0,a.useContext)(l);if(!e)throw Error("useDashboardEvents must be used within DashboardEventProvider");return e}function d(){return(0,a.useContext)(l)}},95291:(e,t,n)=>{n.d(t,{BS:()=>m,Vq:()=>l,Z5:()=>u,l5:()=>c,le:()=>s,pb:()=>d,tN:()=>x});var r=n(1856),a=n(39268);function s(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e3,[t,n]=(0,r.useState)(()=>Date.now());return(0,r.useEffect)(()=>{let t=setInterval(()=>n(Date.now()),e);return()=>clearInterval(t)},[e]),t}function l(){let e=(0,a.c)("time");return(0,r.useCallback)((t,n)=>{let r=n-new Date(t).getTime(),a=Math.floor(r/6e4),s=Math.floor(r/36e5),l=Math.floor(r/864e5);return a<1?e("justNow"):a<60?e("minutesAgo",{minutes:a}):s<24?e("hoursAgo",{hours:s}):e("daysAgo",{days:l})},[e])}function i(e){return e<10?"0".concat(e):String(e)}function o(){let e=(0,a.c)("agentConnections");return(0,r.useCallback)((t,n)=>{let r=Math.floor(Math.max(0,n-new Date(t).getTime())/1e3),a=Math.floor(r/86400),s=Math.floor(r%86400/3600),l=Math.floor(r%3600/60),o="".concat(i(s),":").concat(i(l),":").concat(i(r%60));return a>0?e("uptimeMonoDays",{days:a,time:o}):o},[e])}let d=o,c=o;function u(){let e=(0,a.c)("agentConnections");return(0,r.useCallback)(t=>{switch(t){case"claude_code":return e("clientClaudeCode");case"openclaw":return e("clientOpenclaw");case"codex":return e("clientCodex");case"kiro":return e("clientKiro");case"dsh":return e("clientDsh");case"pi":return e("clientPi");default:return e("clientUnknown")}},[e])}function x(){let e=(0,a.c)("agentConnections");return(0,r.useCallback)(t=>{switch(t){case"task":return e("entityTask");case"idea":return e("entityIdea");case"proposal":return e("entityProposal");case"document":return e("entityDocument");case"daemon_session":return e("entityConversation");default:return e("entityUnknown")}},[e])}function m(e){if(!e.projectUuid)return null;switch(e.entityType){case"task":return"/projects/".concat(e.projectUuid,"/tasks/").concat(e.entityUuid);case"idea":return"/projects/".concat(e.projectUuid,"/dashboard?panel=").concat(e.entityUuid);case"proposal":return"/projects/".concat(e.projectUuid,"/proposals/").concat(e.entityUuid);case"document":return"/projects/".concat(e.projectUuid,"/documents/").concat(e.entityUuid);default:return null}}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7777],{38280:(e,t,r)=>{r.d(t,{Dj:()=>n,gl:()=>s,sB:()=>i});let a=[{bg:"#F5C4B3",text:"#712B13",darkBg:"#4a2a1e",darkText:"#F5C4B3"},{bg:"#FAC775",text:"#633806",darkBg:"#4a3a1a",darkText:"#FAD79B"},{bg:"#CECBF6",text:"#3C3489",darkBg:"#2f2c52",darkText:"#CECBF6"},{bg:"#B5D4F4",text:"#0C447C",darkBg:"#1e3450",darkText:"#B5D4F4"},{bg:"#C0DD97",text:"#27500A",darkBg:"#2c3d1c",darkText:"#C0DD97"},{bg:"#9FE1CB",text:"#085041",darkBg:"#183d34",darkText:"#9FE1CB"},{bg:"#F4C0D1",text:"#72243E",darkBg:"#48242f",darkText:"#F4C0D1"},{bg:"#FADBB5",text:"#6B3A10",darkBg:"#463421",darkText:"#FADBB5"}];function n(e){let t=e.trim().split(/\s+/);return t.length>=2?(t[0][0]+t[1][0]).toUpperCase():e.slice(0,2).toUpperCase()}function s(e){let t=0;for(let r=0;r<e.length;r++)t=e.charCodeAt(r)+((t<<5)-t);return a[Math.abs(t)%a.length]}function i(e){return{"--icon-bg":e.bg,"--icon-text":e.text,"--icon-bg-dark":e.darkBg,"--icon-text-dark":e.darkText}}},70481:(e,t,r)=>{r.d(t,{O:()=>m});var a=r(90508),n=r(1856),s=r(39268),i=r(85226),l=r(59133),o=r(30366),c=r(97413),d=r(91385),u=r(22922),p=r(41837);let m=(0,n.forwardRef)(function(e,t){let{projectUuid:r,agentError:m,initialDrafts:x,onDraftsChange:g}=e,f=(0,s.c)(),[h,j]=(0,n.useState)([]),[v,b]=(0,n.useState)(()=>null!=x?x:{}),w=(0,n.useRef)(v),[N,C]=(0,n.useState)(new Set),[E,k]=(0,n.useState)(!0),[y,D]=(0,n.useState)(null),[S,A]=(0,n.useState)(!1),[B,T]=(0,n.useState)({}),O=(0,n.useCallback)(async()=>{k(!0),A(!1);try{let e=await fetch(r?"/api/projects/".concat(encodeURIComponent(r),"/agent-cwds"):"/api/projects/agent-cwd-options"),t=await e.json();if(!e.ok||!t.success)throw Error("load failed");j(t.data.agents)}catch(e){A(!0)}finally{k(!1)}},[r]);(0,n.useEffect)(()=>{O()},[O]);let F=(e,t)=>{w.current=e,b(e),C(t),null==g||g(e)};return(0,n.useImperativeHandle)(t,()=>({validate:async e=>{if(null==e?void 0:e.aborted)throw new DOMException("Aborted","AbortError");let t=[];for(let r of Object.values(v))try{let a=await (0,p.q)(r,e);if(null==e?void 0:e.aborted)throw new DOMException("Aborted","AbortError");if(t.push(a),w.current[r.agentUuid]===r){let e={...w.current,[r.agentUuid]:a};w.current=e,b(e),null==g||g(e)}}catch(a){if(null==e?void 0:e.aborted)throw new DOMException("Aborted","AbortError");if((a instanceof DOMException||a instanceof Error)&&"AbortError"===a.name)throw a;let t=a instanceof Error?a.message:"INTERNAL_ERROR";return T(e=>({...e,[r.agentUuid]:f("directoryBrowser.errors.".concat(t))})),D(r.agentUuid),null}return{upserts:t,clears:[...N]}}}),[N,v,g,f]),(0,a.jsxs)("div",{className:"flex min-w-0 flex-col gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h3",{className:"text-[14px] font-semibold text-foreground",children:f("projectSettings.agentCwds.title")}),(0,a.jsx)("p",{className:"mt-1 text-[12px] text-muted-foreground",children:f("projectSettings.agentCwds.description")})]}),E&&(0,a.jsxs)("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[(0,a.jsx)(i.A,{className:"size-4 animate-spin"}),f("projectSettings.agentCwds.loading")]}),S&&(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",role:"alert",children:[(0,a.jsx)("span",{className:"text-xs text-destructive",children:f("projectSettings.agentCwds.loadFailed")}),(0,a.jsxs)(u.$,{type:"button",size:"sm",variant:"outline",onClick:()=>void O(),children:[(0,a.jsx)(l.A,{className:"mr-2 size-3.5"}),f("common.retry")]})]}),!E&&!S&&0===h.length&&(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:f("projectSettings.agentCwds.emptyOnline")}),h.map(e=>{let t=v[e.agent.uuid],n=N.has(e.agent.uuid)?null:t?{host:t.host,cwd:t.cwd,status:"valid"}:e.preference;return(0,a.jsxs)("div",{className:"min-w-0 rounded-lg border border-border p-4",children:[(0,a.jsxs)("div",{className:"flex min-w-0 items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"flex min-w-0 items-start gap-2.5",children:[(0,a.jsx)(d.AgentAvatar,{name:e.agent.name,size:"sm",className:"mt-0.5 rounded-md"}),(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("p",{className:"truncate text-[13px] font-semibold",children:e.agent.name}),n?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("p",{className:"mt-1 break-all font-mono text-[11px]",children:n.cwd}),(0,a.jsx)("p",{className:"mt-1 truncate text-[11px] text-muted-foreground",children:n.host}),(0,a.jsx)("p",{className:"valid"===n.status?"mt-1 text-[11px] text-emerald-700 dark:text-emerald-400":"mt-1 text-[11px] text-destructive",children:f("projectSettings.agentCwds.status.".concat(n.status))})]}):(0,a.jsx)("p",{className:"mt-1 text-[11px] text-muted-foreground",children:f("projectSettings.agentCwds.notConfigured")})]})]}),(0,a.jsxs)("div",{className:"flex shrink-0 gap-1",children:[(0,a.jsx)(u.$,{type:"button",size:"icon",variant:"ghost",title:f(n?"projectSettings.agentCwds.replace":"projectSettings.agentCwds.configure"),"aria-label":f(n?"projectSettings.agentCwds.replace":"projectSettings.agentCwds.configure"),onClick:()=>D(y===e.agent.uuid?null:e.agent.uuid),children:(0,a.jsx)(o.A,{className:"size-4"})}),n&&(0,a.jsx)(u.$,{type:"button",size:"icon",variant:"ghost",className:"text-destructive",title:f("projectSettings.agentCwds.clear"),"aria-label":f("projectSettings.agentCwds.clear"),onClick:()=>(e=>{let t={...v};delete t[e];let a=new Set(N);r&&a.add(e),F(t,a)})(e.agent.uuid),children:(0,a.jsx)(c.A,{className:"size-4"})})]})]}),y===e.agent.uuid&&(0,a.jsxs)("div",{className:"mt-4 border-t border-border pt-4",children:[(0,a.jsx)(p.e,{agentUuid:e.agent.uuid,instances:e.onlineInstances,showConfirm:!1,onValidated:()=>void 0,onSelectionChange:t=>((e,t)=>{if(!e)return;let r=new Set(N);r.delete(t),F({...v,[t]:e},r),T(e=>{let r={...e};return delete r[t],r})})(t,e.agent.uuid)}),(B[e.agent.uuid]||(null==m?void 0:m.agentUuid)===e.agent.uuid)&&(0,a.jsx)("p",{className:"mt-2 text-xs text-destructive",role:"alert",children:B[e.agent.uuid]||(null==m?void 0:m.message)})]}),y!==e.agent.uuid&&(null==m?void 0:m.agentUuid)===e.agent.uuid&&(0,a.jsx)("p",{className:"mt-2 text-xs text-destructive",role:"alert",children:m.message})]},e.agent.uuid)})]})})},88064:(e,t,r)=>{r.d(t,{J:()=>i});var a=r(90508);r(1856);var n=r(58057),s=r(24377);function i(e){let{className:t,...r}=e;return(0,a.jsx)(n.Root,{"data-slot":"label",className:(0,s.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...r})}},88738:(e,t,r)=>{r.d(t,{C:()=>b});var a=r(90508),n=r(1856),s=r(91814),i=r(39268),l=r(67103),o=r(16544),c=r(60532),d=r(85226),u=r(5616),p=r(97438),m=r(22922),x=r(14554),g=r(88064),f=r(15972),h=r(42305),j=r(70481);let v=new Set(["BAD_REQUEST","UNAUTHORIZED","FORBIDDEN","NOT_FOUND","CONFLICT","VALIDATION_ERROR"]);function b(e){let{open:t,onOpenChange:r,groupUuid:b,groupName:w,onCreated:N}=e,C=(0,i.c)(),E=(0,s.r)(),[k,y]=(0,n.useState)("idle"),[D,S]=(0,n.useState)(""),[A,B]=(0,n.useState)(""),[T,O]=(0,n.useState)(null),[F,R]=(0,n.useState)(null),[U,I]=(0,n.useState)({}),P=(0,n.useRef)(null),_=(0,n.useRef)(null),G=(0,n.useRef)(!1),z=(0,n.useRef)({onOpenChange:r,onCreated:N,router:E}),$="success"===k;(0,n.useEffect)(()=>{z.current={onOpenChange:r,onCreated:N,router:E}}),(0,n.useEffect)(()=>(G.current=!0,()=>{G.current=!1;let e=_.current;null==e||e.controller.abort(),clearTimeout(null==e?void 0:e.timer),_.current=null}),[]),(0,n.useEffect)(()=>{let e=_.current;!t&&e&&(e.dismissed=!0,"validating"===e.phase&&(e.controller.abort(),_.current=null,y("idle")))},[t]);let M=w||C("projectGroups.ungrouped"),J=e=>G.current&&_.current===e,L=()=>{var e,t;return(null==(e=_.current)?void 0:e.phase)==="posting"||(null==(t=_.current)?void 0:t.phase)==="success"},H=e=>{if(L())return;let t=_.current;!e&&t&&(t.dismissed=!0,"validating"===t.phase&&(t.controller.abort(),_.current=null,y("idle"))),r(e)},K=()=>{var e,t;G.current&&(null==(e=(t=z.current).onCreated)||e.call(t)),G.current&&z.current.router.refresh()},V=async()=>{if(_.current||!G.current||!t||!D.trim())return;let e={controller:new AbortController,phase:"validating",dismissed:!1};_.current=e,y("validating");let r={name:D.trim(),description:A.trim()||void 0,groupUuid:b||void 0};O(null),R(null);let a=()=>{J(e)&&(clearTimeout(e.timer),_.current=null,y("idle"))},n=()=>{J(e)&&(clearTimeout(e.timer),e.phase="unconfirmed",y("unconfirmed"))},s=()=>{J(e)&&(e.phase="confirmed",y("confirmed")),K()};try{var i,l,o,c;let t=await (null==(i=P.current)?void 0:i.validate(e.controller.signal));if(!J(e)||e.controller.signal.aborted)return;if(!t)return void a();e.phase="posting",y("posting"),e.timer=setTimeout(n,2e4);let d=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...r,agentCwds:t.upserts.map(e=>{let{agentUuid:t,validationRequestUuid:r}=e;return{agentUuid:t,validationRequestUuid:r}})})});if(!G.current)return;let u=await d.json();if(!G.current)return;if(clearTimeout(e.timer),d.ok&&(null==u?void 0:u.success)===!0&&"string"==typeof(null==(l=u.data)?void 0:l.uuid)){if(!J(e)||e.dismissed)return void s();e.phase="success",y("success"),e.timer=setTimeout(()=>{if(J(e)){if(e.dismissed)return void s();S(""),B(""),I({}),a(),z.current.onOpenChange(!1),K()}},600)}else if((null==u?void 0:u.success)===!1&&d.status>=400&&d.status<500&&v.has(null==(o=u.error)?void 0:o.code)){if(!J(e)||(a(),e.dismissed))return;let t="string"==typeof u.error.message?u.error.message:C("projects.createFailed"),r=null==(c=u.error.details)?void 0:c.agentUuid;"string"==typeof r?R({agentUuid:r,message:t}):O(t)}else n()}catch(t){if(!J(e))return;"validating"===e.phase?(e.controller.signal.aborted||O(C("common.genericError")),a()):n()}};return(0,a.jsx)(p.lG,{open:t,onOpenChange:H,children:(0,a.jsxs)(p.Cf,{className:"flex max-h-[90svh] flex-col gap-0 overflow-hidden rounded-[16px] p-0 sm:max-w-[620px]",showCloseButton:!1,onEscapeKeyDown:e=>{L()&&e.preventDefault()},onInteractOutside:e=>{L()&&e.preventDefault()},children:[(0,a.jsx)(p.c7,{className:"flex flex-row items-center justify-between p-[20px_24px] border-b border-[#E5E2DC] dark:border-[#2a2a2e]",children:(0,a.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,a.jsx)(p.L3,{className:"text-lg font-semibold tracking-[-0.3px] text-foreground",children:C("projectGroups.newProjectTitle")}),(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:C("projectGroups.creatingIn",{groupName:M})})]})}),(0,a.jsx)(p.rr,{className:"sr-only",children:C("projectGroups.newProjectTitle")}),(0,a.jsxs)("div",{className:"flex min-h-0 flex-col gap-5 overflow-y-auto p-6",children:[("unconfirmed"===k||"confirmed"===k)&&(0,a.jsxs)("div",{role:"alert",className:"rounded-lg border border-border bg-muted p-3 text-sm text-foreground",children:[(0,a.jsx)("p",{children:C("confirmed"===k?"projects.creationConfirmed":"projects.creationUnconfirmed")}),"unconfirmed"===k&&(0,a.jsx)("p",{className:"mt-2 text-muted-foreground",children:C("projects.creationRetryWarning")}),(0,a.jsx)(m.$,{variant:"outline",className:"mt-3 h-auto whitespace-normal text-left",onClick:()=>{var e,t;((null==(e=_.current)?void 0:e.phase)==="unconfirmed"||(null==(t=_.current)?void 0:t.phase)==="confirmed")&&(clearTimeout(_.current.timer),_.current=null,y("idle"),O(null),R(null))},children:C("confirmed"===k?"projects.confirmAnotherCreation":"projects.confirmNewCreation")})]}),T&&(0,a.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:T}),(0,a.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,a.jsx)(g.J,{className:"text-[13px] font-medium text-foreground",children:C("projectGroups.projectTitle")}),(0,a.jsx)(x.p,{value:D,onChange:e=>S(e.target.value),placeholder:C("projectGroups.projectTitlePlaceholder"),className:"h-10 rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e]",onKeyDown:e=>{!(0,h.P)(e)&&"Enter"===e.key&&D.trim()&&V()}})]}),(0,a.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,a.jsx)(g.J,{className:"text-[13px] font-medium text-foreground",children:C("common.description")}),(0,a.jsx)(f.T,{value:A,onChange:e=>B(e.target.value),placeholder:C("projectGroups.projectDescriptionPlaceholder"),className:"min-h-[80px] rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e]"})]}),(0,a.jsx)("div",{className:"border-t border-border pt-5",children:(0,a.jsx)(j.O,{ref:P,agentError:F,initialDrafts:U,onDraftsChange:I})})]}),(0,a.jsxs)("div",{className:"flex justify-end gap-3 p-[16px_24px] border-t border-[#E5E2DC] dark:border-[#2a2a2e]",children:[(0,a.jsx)(m.$,{variant:"outline",onClick:()=>H(!1),disabled:"posting"===k||$,className:"rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e] text-[13px]",children:C("common.cancel")}),(0,a.jsx)(m.$,{onClick:V,disabled:"idle"!==k||!D.trim(),className:"rounded-lg bg-primary hover:bg-[#B56A42] text-white text-[13px] gap-1.5",children:(0,a.jsx)(l.N,{mode:"wait",children:$?(0,a.jsx)(o.P.span,{initial:{opacity:0,scale:.5},animate:{opacity:1,scale:1},exit:{opacity:0},transition:{duration:.15},className:"flex items-center gap-2",children:(0,a.jsx)(c.A,{className:"h-3.5 w-3.5"})},"success"):"validating"===k||"posting"===k?(0,a.jsxs)(o.P.span,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"flex items-center gap-2",children:[(0,a.jsx)(d.A,{className:"h-3.5 w-3.5 animate-spin"}),C("common.creating")]},"loading"):(0,a.jsxs)(o.P.span,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"flex items-center gap-2",children:[(0,a.jsx)(u.A,{className:"h-3.5 w-3.5"}),C("projectGroups.createProject")]},"idle")})})]})]})})}}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[79919],{14925:(e,s,t)=>{"use strict";t.d(s,{TaskViewToggle:()=>ex});var a=t(90508),r=t(1856),n=t(23675),d=t(39268),i=t(83064),l=t(18789),o=t(76111),c=t(5616),u=t(22922),x=t(57731),m=t(48416),p=t(62205),g=t(81531),h=t(91814),f=t(56770),b=t(30825),j=t(60532),k=t(9160),v=t(24377),y=t(17001),N=t(4365);function w(e){let{projectUuid:s}=e,t=(0,d.c)("tasks"),i=(0,h.r)(),l=(0,n.usePathname)(),o=(0,n.useSearchParams)(),[c,m]=(0,r.useState)(!1),[p,g]=(0,r.useState)([]),[w,F]=(0,r.useState)(new Set);(0,r.useEffect)(()=>{let e=o.get("proposalUuids");e?F(new Set(e.split(",").filter(Boolean))):F(new Set)},[o]),(0,r.useEffect)(()=>{let e=!1;return async function(){try{let t=await fetch("/api/projects/".concat(s,"/proposals/summary"));if(!t.ok)return;let a=await t.json();!e&&a.success&&g(a.data)}catch(e){}}(),()=>{e=!0}},[s]);let A=(0,r.useCallback)(e=>{let s=new URLSearchParams(o.toString());e.size>0?s.set("proposalUuids",Array.from(e).join(",")):s.delete("proposalUuids");let t=s.toString();i.replace("".concat(l).concat(t?"?".concat(t):""),{scroll:!1})},[i,l,o]),C=(0,r.useCallback)(e=>{F(s=>{let t=new Set(s);return t.has(e)?t.delete(e):t.add(e),A(t),t})},[A]),E=(0,r.useCallback)(()=>{F(new Set),A(new Set)},[A]),S=w.size>0;return(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5 text-sm text-muted-foreground shrink-0",children:[(0,a.jsx)(f.A,{className:"size-4"}),(0,a.jsxs)("span",{children:[t("proposalFilter.label"),":"]})]}),(0,a.jsxs)(y.AM,{open:c,onOpenChange:m,children:[(0,a.jsx)(y.Wv,{asChild:!0,children:(0,a.jsxs)(u.$,{variant:"outline",size:"sm",role:"combobox","aria-expanded":c,className:(0,v.cn)("justify-between gap-1 min-w-[120px] max-w-[200px] md:min-w-[160px] md:max-w-none",S&&"border-primary bg-[#FFF8F4] dark:bg-[#2a2016]"),children:[(0,a.jsx)("span",{className:"truncate",children:S?t("proposalFilter.filtered",{filtered:w.size,total:p.length}):t("proposalFilter.allProposals")}),(0,a.jsx)(b.A,{className:"size-4 shrink-0 opacity-50"})]})}),(0,a.jsx)(y.hl,{className:"w-[300px] p-0",align:"start",children:(0,a.jsxs)(N.uB,{children:[(0,a.jsx)(N.G7,{placeholder:t("proposalFilter.search")}),(0,a.jsxs)(N.oI,{children:[(0,a.jsx)(N.xL,{children:t("proposalFilter.noResults")}),(0,a.jsx)(N.L$,{children:p.map(e=>{let s=w.has(e.uuid);return(0,a.jsxs)(N.h_,{value:e.title,onSelect:()=>C(e.uuid),className:"flex items-center justify-between",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,a.jsx)("div",{className:(0,v.cn)("flex size-4 shrink-0 items-center justify-center rounded-sm border",s?"border-primary bg-primary text-white":"border-muted-foreground/30"),children:s&&(0,a.jsx)(j.A,{className:"size-3"})}),(0,a.jsx)("span",{className:"truncate",children:e.title})]}),(0,a.jsx)(x.E,{variant:"secondary",className:"ml-2 shrink-0",children:t("proposalFilter.taskCount",{count:e.taskCount})})]},e.uuid)})})]})]})})]}),S&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"flex flex-wrap gap-1 max-w-full",children:p.filter(e=>w.has(e.uuid)).map(e=>(0,a.jsxs)(x.E,{variant:"outline",className:"gap-1 border-primary bg-[#FFF8F4] dark:bg-[#2a2016] text-primary",children:[e.title,(0,a.jsx)("button",{type:"button",className:"ml-0.5 rounded-full hover:bg-primary/20",onClick:()=>C(e.uuid),children:(0,a.jsx)(k.A,{className:"size-3"})})]},e.uuid))}),(0,a.jsx)(u.$,{variant:"ghost",size:"xs",onClick:E,className:"text-muted-foreground",children:t("proposalFilter.clear")})]})]})}var F=t(1976),A=t(96213),C=t(44575),E=t(17475),S=t(68842),U=t(71921),D=t(91385),_=t(29532),P=t(43827);let B=(0,r.createContext)(null);var L=t(95725),z=t(66506);let M=e=>!e.isLayoutDirty&&e.willUpdate(!1),T=e=>{let{children:s,id:t,inherit:n=!0}=e,d=(0,r.useContext)(P.L),i=(0,r.useContext)(B),[l,o]=function(){let e=function(){let e=(0,r.useRef)(!1);return(0,z.E)(()=>(e.current=!0,()=>{e.current=!1}),[]),e}(),[s,t]=(0,r.useState)(0),a=(0,r.useCallback)(()=>{e.current&&t(s+1)},[s]);return[(0,r.useCallback)(()=>L.Gt.postRender(a),[a]),s]}(),c=(0,r.useRef)(null),u=d.id||i;null===c.current&&((e=>!0==(!0===e)||"id"===e)(n)&&u&&(t=t?u+"-"+t:u),c.current={id:t,group:!0===n&&d.group||function(){let e=new Set,s=new WeakMap,t=()=>e.forEach(M);return{add:a=>{e.add(a),s.set(a,a.addEventListener("willUpdate",t))},remove:a=>{e.delete(a);let r=s.get(a);r&&(r(),s.delete(a)),t()},dirty:t}}()});let x=(0,r.useMemo)(()=>({...c.current,forceRender:l}),[o]);return(0,a.jsx)(P.L.Provider,{value:x,children:s})};var R=t(16544),O=t(65626),K=t(97438),V=t(52217);let $=(0,V.createServerReference)("4028cc33d7b0b82df136e4251ffb39fa9507b0e6cc",V.callServer,void 0,V.findSourceMapURL,"fetchTasksAction"),q=(0,V.createServerReference)("70bc8ce4080d4fb527d4d9ecee177dad60fda603ac",V.callServer,void 0,V.findSourceMapURL,"moveTaskToColumnAction"),I=(0,V.createServerReference)("60623dd39deae9d87ec8879e8d5682b48792b27612",V.callServer,void 0,V.findSourceMapURL,"forceMoveTaskToColumnAction");var W=t(67712),G=t(4945),H=t(12959),Z=t(63964);let Y={open:"bg-[#FFF3E0] dark:bg-[#3a2a12] text-[#E65100] dark:text-[#F0A050]",assigned:"bg-[#E3F2FD] dark:bg-[#13253a] text-[#1976D2] dark:text-[#5AA9F0]",in_progress:"bg-[#E8F5E9] dark:bg-[#14281a] text-[#5A9E6F] dark:text-[#6FD19A]",to_verify:"bg-[#F3E5F5] dark:bg-[#281630] text-[#7B1FA2] dark:text-[#C98FE0]",done:"bg-[#E0F2F1] dark:bg-[#12292a] text-[#00796B] dark:text-[#4FD1C0]",closed:"bg-[#F5F5F5] dark:bg-[#1e1e20] text-[#9A9A9A]"},J={open:"open",assigned:"assigned",in_progress:"inProgress",to_verify:"toVerify",done:"done",closed:"closed"},Q={in_progress:"bg-[#FFF3E0] dark:bg-[#3a2a12] text-[#E65100] dark:text-[#F0A050]",assigned:"bg-[#E8F5E9] dark:bg-[#14281a] text-[#2E7D32] dark:text-[#5FD07E]",open:"bg-[#F5F5F5] dark:bg-[#1e1e20] text-muted-foreground",to_verify:"bg-[#E3F2FD] dark:bg-[#13253a] text-[#1565C0] dark:text-[#5AA9F0]"},X=[{id:"todo",labelKey:"todo",statuses:["open","assigned"]},{id:"in_progress",labelKey:"inProgress",statuses:["in_progress"]},{id:"to_verify",labelKey:"toVerify",statuses:["to_verify"]},{id:"done",labelKey:"done",statuses:["done","closed"]}];function ee(e){let{projectUuid:s,initialTasks:t,currentUserUuid:n,selectedTaskUuid:i,onTaskSelect:l,onPanelClose:o,proposalUuidFilter:c}=e,p=(0,d.c)(),[g,h]=(0,r.useState)(t),[f,b]=(0,r.useState)({}),[j,k]=(0,r.useState)(!1),[v,y]=(0,r.useState)(null),[N,w]=(0,r.useState)([]),[P,B]=(0,r.useState)(!1),[L,z]=(0,r.useState)([]),[M,V]=(0,r.useState)(!1),[ee,es]=(0,r.useState)(!1),et=(0,r.useCallback)(async()=>{let e=await $(s);if(e.success){let s=c?e.data.filter(e=>e.proposalUuid&&c.has(e.proposalUuid)):e.data;h(s);let t=await (0,H.h)(s.map(e=>e.uuid));t.success&&t.data&&b(t.data)}},[s,c]);(0,Z.eV)("task",et);let ea=(0,r.useRef)(c);(0,r.useEffect)(()=>{ea.current!==c&&(ea.current=c,et())},[c,et]),(0,r.useEffect)(()=>{0!==t.length&&(0,H.h)(t.map(e=>e.uuid)).then(e=>{e.success&&e.data&&b(e.data)})},[t]);let er=(0,r.useMemo)(()=>{var e;return i&&null!=(e=g.find(e=>e.uuid===i))?e:null},[i,g]),en=e=>g.filter(s=>e.includes(s.status)),ed=e=>en(e).reduce((e,s)=>e+(s.storyPoints||0),0),ei=async e=>{let t;es(!1);let{destination:a,source:r,draggableId:n}=e;if(!a||a.droppableId===r.droppableId&&a.index===r.index)return;let d=a.droppableId;r.droppableId;let i=g.find(e=>e.uuid===n);if(!i)return;if(X.find(e=>e.id===d),"todo"===d)t="assigned"===i.status?"assigned":"open";else if("in_progress"===d)t="in_progress";else if("to_verify"===d)t="to_verify";else{if("done"!==d)return;t="to_verify"===i.status?"done":"to_verify"}h(e=>e.map(e=>e.uuid===n?{...e,status:t}:e));let l=await q(n,d,s);if(l.success)et();else{if("blocked"in l&&l.blocked&&"blockers"in l){h(e=>e.map(e=>e.uuid===n?{...e,status:i.status}:e)),y(i),w(l.blockers),k(!0);return}h(e=>e.map(e=>e.uuid===n?{...e,status:i.status}:e)),"gateBlocked"in l&&l.gateBlocked&&(z("unresolvedCriteria"in l&&Array.isArray(l.unresolvedCriteria)?l.unresolvedCriteria:[]),B(!0))}},el=async()=>{if(v){V(!0);try{let e=await I(v.uuid,"in_progress");e.success?(k(!1),y(null),w([]),et()):W.q.error("Failed to force move task:",e.error)}finally{V(!1)}}},eo=()=>{k(!1),y(null),w([])};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(F.JY,{onDragStart:()=>{es(!0)},onDragEnd:ei,children:(0,a.jsx)(T,{children:(0,a.jsx)("div",{className:"flex flex-1 gap-4 overflow-x-auto pb-4",children:X.map(e=>{let s=en(e.statuses);return(0,a.jsxs)("div",{className:"flex w-[300px] flex-shrink-0 flex-col rounded-xl bg-secondary p-4",children:[(0,a.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("h3",{className:"font-medium text-foreground",children:p("status.".concat(e.labelKey))}),(0,a.jsx)("span",{className:"rounded-full bg-card px-2 py-0.5 text-xs font-medium text-muted-foreground",children:s.length})]}),ed(e.statuses)>0&&(0,a.jsxs)("span",{className:"flex items-center gap-1 text-xs text-[#9A9A9A]",children:[(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3",children:[(0,a.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,a.jsx)("polyline",{points:"12 6 12 12 16 14"})]}),ed(e.statuses),"h"]})]}),(0,a.jsx)(F.gL,{droppableId:e.id,children:(e,t)=>(0,a.jsxs)("div",{ref:e.innerRef,...e.droppableProps,className:"flex-1 space-y-3 overflow-y-auto min-h-[100px] rounded-lg pt-3 pr-3 transition-colors ".concat(t.isDraggingOver?"bg-border":""),children:[0!==s.length||t.isDraggingOver?s.map((e,s)=>{let t=!!e.dependsOn&&0!==e.dependsOn.length&&e.dependsOn.some(e=>"done"!==e.status&&"closed"!==e.status),r=(t?!e.dependsOn?[]:e.dependsOn.filter(e=>"done"!==e.status&&"closed"!==e.status):[]).map(e=>e.title).join(", ");return(0,a.jsx)(F.sx,{draggableId:e.uuid,index:s,children:(s,n)=>(0,a.jsx)("div",{ref:s.innerRef,...s.draggableProps,...s.dragHandleProps,onClick:()=>{n.isDragging||l(e.uuid)},style:s.draggableProps.style,children:(0,a.jsxs)(R.P.div,{className:"relative",layoutId:ee?void 0:"task-card-".concat(e.uuid),transition:O.Yv.spring,children:[f[e.uuid]>0&&(0,a.jsx)("div",{className:"absolute -top-3 -right-3 z-10 flex h-11 w-11 items-center justify-center rounded-full border-2 border-green-400 bg-card shadow-sm",children:(0,a.jsx)("img",{src:"/typing-animation.gif",alt:"",className:"h-8 w-8"})}),(0,a.jsx)(A.D,{entityType:"task",entityUuid:e.uuid,children:(0,a.jsxs)(m.Zp,{className:"cursor-pointer p-4 transition-all ".concat(t?"border-dashed border-[#D1D1D1] dark:border-[#3a3a40] opacity-60":"border-border hover:border-primary"," bg-card hover:shadow-sm ").concat(n.isDragging?"shadow-lg rotate-2":""),children:[(0,a.jsxs)("div",{className:"mb-2 flex items-start justify-between",children:[(0,a.jsx)(x.E,{className:Y[e.status]||"",children:p("status.".concat(J[e.status]||e.status))}),(0,a.jsx)("div",{className:"flex items-center gap-1.5",children:e.storyPoints&&(0,a.jsxs)("span",{className:"flex items-center gap-1 rounded bg-[#FFF3E0] dark:bg-[#3a2a12] px-2 py-0.5 text-xs font-medium text-[#E65100] dark:text-[#F0A050]",children:[(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3",children:[(0,a.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,a.jsx)("polyline",{points:"12 6 12 12 16 14"})]}),e.storyPoints,"h"]})})]}),(0,a.jsx)("h4",{className:"mb-1 font-medium text-foreground",children:e.title}),e.description&&(0,a.jsx)("p",{className:"mb-2 line-clamp-2 text-sm text-muted-foreground",children:e.description}),t&&(0,a.jsxs)("div",{className:"mb-2 flex items-center gap-1.5 rounded-md bg-[#FFF3E0] dark:bg-[#3a2a12] px-2 py-1",children:[(0,a.jsx)(C.A,{className:"h-3 w-3 shrink-0 text-[#E65100] dark:text-[#F0A050]"}),(0,a.jsx)("span",{className:"text-[9px] font-medium leading-tight text-[#E65100] dark:text-[#F0A050] line-clamp-1",children:p("tasks.blockedBy",{tasks:r})})]}),(0,a.jsxs)("div",{className:"flex items-start justify-between gap-2 text-xs text-[#9A9A9A]",children:[e.assignee?(0,a.jsxs)("span",{className:"flex min-w-0 flex-col gap-0.5",children:[(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,_.bB)(e.assignee)?(0,a.jsx)(D.AgentAvatar,{name:e.assignee.name,size:16,className:"shrink-0 rounded-full"}):(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3 shrink-0",children:[(0,a.jsx)("path",{d:"M12 8V4H8"}),(0,a.jsx)("rect",{width:"16",height:"12",x:"4",y:"8",rx:"2"})]}),(0,a.jsx)("span",{className:"truncate",children:e.assignee.name})]}),"agent_instance"===e.assignee.type&&e.assignee.instance&&(0,a.jsx)(U.jQ,{cwd:e.assignee.instance.cwd,host:e.assignee.instance.host,showHost:!1,className:"pl-4"})]}):"open"===e.status?(0,a.jsx)("span",{className:"text-primary",children:p("common.assign")}):(0,a.jsx)("span",{children:p("common.unassigned")}),(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[f[e.uuid]>0&&(0,a.jsxs)(x.E,{variant:"outline",className:"h-4 gap-1 border-green-300 dark:border-[#2a4a34] px-1.5 text-[10px] text-green-700 dark:text-[#6FD19A]",children:[(0,a.jsx)("span",{className:"inline-block h-1.5 w-1.5 rounded-full bg-green-500"}),p("sessions.workerCount",{count:f[e.uuid]})]}),e.acceptanceSummary&&e.acceptanceSummary.total>0&&(()=>{let s=e.acceptanceSummary,t="to_verify"===e.status,r=s.requiredPassed===s.required&&s.required>0,n=s.requiredFailed>0,d="bg-secondary text-muted-foreground";return t&&(d=r?"bg-green-50 text-green-700 dark:bg-[#14281a] dark:text-[#6FD19A]":n?"bg-red-50 text-[#C4574C] dark:bg-[#331619] dark:text-[#F0897E]":"bg-amber-50 text-[#D97706] dark:bg-[#332a12] dark:text-[#E0B44E]"),(0,a.jsxs)(x.E,{className:"h-4 gap-1 border-0 px-1.5 text-[9px] ".concat(d),children:[(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-2.5 w-2.5",children:[(0,a.jsx)("path",{d:"M9 11l3 3L22 4"}),(0,a.jsx)("path",{d:"M21 12v7a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2h11"})]}),s.passed,"/",s.total]})})()]})]})]})})]})})},e.uuid)}):(0,a.jsx)("div",{className:"flex h-24 items-center justify-center rounded-lg border-2 border-dashed border-border text-sm text-[#9A9A9A]",children:p("tasks.noTasks")}),e.placeholder]})})]},e.id)})})})}),er&&(0,a.jsx)(G.v,{task:er,projectUuid:s,currentUserUuid:n,onClose:o}),(0,a.jsx)(K.lG,{open:j,onOpenChange:e=>{e||eo()},children:(0,a.jsxs)(K.Cf,{className:"max-w-md rounded-2xl",children:[(0,a.jsxs)(K.c7,{children:[(0,a.jsxs)(K.L3,{className:"flex items-center gap-2",children:[(0,a.jsx)(E.A,{className:"h-5 w-5 text-[#E65100] dark:text-[#F0A050]"}),p("tasks.dependencyBlocked")]}),(0,a.jsx)(K.rr,{children:p("tasks.dependencyBlockedDescription")})]}),(0,a.jsxs)("div",{className:"rounded-lg bg-background p-3",children:[(0,a.jsx)("p",{className:"mb-2 text-xs font-medium text-muted-foreground",children:p("tasks.blockerList")}),(0,a.jsx)("div",{className:"space-y-2",children:N.map(e=>(0,a.jsxs)("div",{className:"flex items-center justify-between rounded-lg border border-border bg-card p-3",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("p",{className:"truncate text-sm font-medium text-foreground",children:e.title}),(0,a.jsxs)("div",{className:"mt-1 flex items-center gap-2",children:[e.assignee&&(0,a.jsxs)("span",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,_.bB)(e.assignee)&&(0,a.jsx)(D.AgentAvatar,{name:e.assignee.name,size:16,className:"shrink-0 rounded-full"}),e.assignee.name]}),e.sessionCheckin&&(0,a.jsxs)("span",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,a.jsx)(S.A,{className:"h-3 w-3"}),e.sessionCheckin.sessionName]})]})]}),(0,a.jsx)(x.E,{className:"shrink-0 ".concat(Q[e.status]||"bg-[#F5F5F5] dark:bg-[#1e1e20] text-muted-foreground"),children:p("status.".concat(J[e.status]||e.status))})]},e.uuid))})]}),(0,a.jsxs)(K.Es,{className:"gap-2 sm:gap-0",children:[(0,a.jsx)(u.$,{variant:"outline",onClick:eo,children:p("common.cancel")}),(0,a.jsx)(u.$,{className:"bg-[#E65100] hover:bg-[#BF4400] text-white",onClick:el,disabled:M,children:M?p("common.processing"):p("tasks.forceMove")})]})]})}),(0,a.jsx)(K.lG,{open:P,onOpenChange:B,children:(0,a.jsxs)(K.Cf,{className:"max-w-[520px] rounded-2xl p-0 gap-0",children:[(0,a.jsxs)(K.c7,{className:"px-6 pt-6 pb-4",children:[(0,a.jsxs)(K.L3,{className:"flex items-center gap-2.5",children:[(0,a.jsx)(E.A,{className:"h-5 w-5 text-[#C4574C] dark:text-[#F0897E]"}),p("acceptanceCriteria.title")]}),(0,a.jsx)(K.rr,{className:"text-[13px] leading-relaxed text-muted-foreground",children:p("acceptanceCriteria.gateBlocked",{count:L.filter(e=>e.required&&"passed"!==e.status).length})})]}),(0,a.jsxs)("div",{className:"px-6 pb-4 space-y-3",children:[(0,a.jsx)("p",{className:"text-[11px] font-semibold text-[#9A9A9A] uppercase tracking-wide",children:p("acceptanceCriteria.title")}),L.map(e=>(0,a.jsxs)("div",{className:"rounded-lg border p-3 space-y-2 ".concat("failed"===e.status?"border-red-200 dark:border-[#5a2a2e] bg-card":"border-border bg-card"),children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("div",{className:"h-2 w-2 rounded-full shrink-0 ".concat("failed"===e.status?"bg-[#C4574C]":"bg-[#F59E0B]")}),(0,a.jsx)("span",{className:"text-xs font-semibold text-foreground",children:e.description})]}),(0,a.jsxs)("div",{className:"flex items-center gap-2 pl-4",children:[(0,a.jsx)(x.E,{className:"text-[10px] border-0 ".concat("failed"===e.status?"bg-red-50 text-[#C4574C] dark:bg-[#331619] dark:text-[#F0897E]":"bg-amber-50 text-[#D97706] dark:bg-[#332a12] dark:text-[#E0B44E]"),children:p("acceptanceCriteria.status.".concat(e.status))}),(0,a.jsx)(x.E,{className:"text-[10px] border-0 bg-background text-muted-foreground",children:e.required?p("acceptanceCriteria.required"):p("acceptanceCriteria.optional")}),!e.evidence&&(0,a.jsx)("span",{className:"text-[10px] italic text-muted-foreground",children:p("acceptanceCriteria.noEvidence")})]}),e.evidence&&(0,a.jsxs)("div",{className:"rounded-md bg-red-50 dark:bg-[#331619] p-2 ml-4",children:[(0,a.jsx)("span",{className:"text-[10px] font-medium text-muted-foreground",children:p("acceptanceCriteria.verifyEvidence")}),(0,a.jsx)("p",{className:"text-[11px] text-foreground mt-0.5",children:e.evidence})]})]},e.uuid))]}),(0,a.jsx)(K.Es,{className:"border-t border-[#E5E2DC] dark:border-[#2a2a2e] px-6 py-4",children:(0,a.jsx)(u.$,{className:"rounded-lg bg-[#C4574C] hover:bg-[#A3433A] text-white",onClick:()=>B(!1),children:p("acceptanceCriteria.dismiss")})})]})})]})}var es=t(26145);t(33805);var et=t(85226),ea=t(49914),er=t(92745);let en=(0,V.createServerReference)("406867687d5aee957112c3b15921516740b6c64ac9",V.callServer,void 0,V.findSourceMapURL,"getProjectDependenciesAction");var ed=t(8325);function ei(e){let{projectUuid:s,onTaskSelect:t,refreshKey:i}=e,l=(0,d.c)(),o=(0,ea.W)(),c=(0,n.useSearchParams)(),[x,m,p]=(0,es.ck)([]),[g,h,f]=(0,es.fM)([]),[b,j]=(0,r.useState)(!0),[v,y]=(0,r.useState)(null),N=(0,r.useMemo)(()=>{let e=c.get("proposalUuids");if(!e)return null;let s=e.split(",").filter(Boolean);return s.length>0?new Set(s):null},[c]),w=(0,r.useCallback)(async()=>{j(!0);let e=await en(s),t=e.nodes,a=e.edges;if(N){let s=new Set((t=e.nodes.filter(e=>null!==e.proposalUuid&&N.has(e.proposalUuid))).map(e=>e.uuid));a=e.edges.filter(e=>s.has(e.from)&&s.has(e.to))}let r=t.map(e=>({id:e.uuid,type:"taskNode",position:{x:0,y:0},data:{title:e.title,status:e.status,priority:e.priority,proposalUuid:e.proposalUuid}})),n=a.map((e,s)=>({id:"e-".concat(s),source:e.to,target:e.from,...er.qK})),{nodes:d,edges:i}=(0,er.nF)(r,n);m(d),h(i),j(!1)},[s,N,m,h]);(0,r.useEffect)(()=>{w()},[w,i]);let F=(0,r.useCallback)(async e=>{if(!e.source||!e.target)return;y(null);let s=e.target,t=e.source,a=await (0,ed.w)(s,t);if(!a.success)return void y(a.error||l("tasks.failedToAddDep"));await w()},[w]),A=(0,r.useCallback)((e,s)=>{t(s.id)},[t]);return b?(0,a.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,a.jsx)(et.A,{className:"h-6 w-6 animate-spin text-muted-foreground"})}):0===x.length?(0,a.jsx)("div",{className:"flex flex-1 items-center justify-center text-sm text-muted-foreground",children:l("tasks.noTasksToDisplay")}):(0,a.jsxs)("div",{className:"flex-1 rounded-xl border border-border bg-[#FAFAF8] dark:bg-[#1e1e1c] relative",children:[v&&(0,a.jsxs)("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 z-10 rounded-lg bg-red-50 dark:bg-[#331619] border border-red-200 dark:border-[#5a2a2e] px-4 py-2 text-xs text-red-700 dark:text-[#F08078] shadow-sm",children:[v,(0,a.jsx)(u.$,{variant:"ghost",size:"icon",className:"ml-2 h-5 w-5 font-medium hover:text-red-900 dark:hover:text-[#F0A0A0]",onClick:()=>y(null),children:(0,a.jsx)(k.A,{className:"h-3 w-3"})})]}),(0,a.jsxs)(es.Gc,{colorMode:o?"dark":"light",nodes:x,edges:g,onNodesChange:p,onEdgesChange:f,onConnect:F,onNodeClick:A,nodeTypes:er.c_,fitView:!0,fitViewOptions:{padding:.2},minZoom:.3,maxZoom:1.5,proOptions:{hideAttribution:!0},zoomOnScroll:!0,zoomOnPinch:!0,panOnDrag:!0,children:[(0,a.jsx)(es.VS,{color:o?"#40392f":"#E5E0D8",gap:20}),(0,a.jsx)(es.H2,{className:"[&>button]:border-border [&>button]:bg-card [&>button]:text-foreground [&>button:hover]:bg-background"})]})]})}let el={open:"bg-[#FFF3E0] dark:bg-[#3a2a12] text-[#E65100] dark:text-[#F0A050]",assigned:"bg-[#E3F2FD] dark:bg-[#13253a] text-[#1976D2] dark:text-[#5AA9F0]",in_progress:"bg-[#E8F5E9] dark:bg-[#14281a] text-[#5A9E6F] dark:text-[#6FD19A]",to_verify:"bg-[#F3E5F5] dark:bg-[#281630] text-[#7B1FA2] dark:text-[#C98FE0]",done:"bg-[#E0F2F1] dark:bg-[#12292a] text-[#00796B] dark:text-[#4FD1C0]",closed:"bg-[#F5F5F5] dark:bg-[#1e1e20] text-[#9A9A9A]"},eo={open:"open",assigned:"assigned",in_progress:"inProgress",to_verify:"toVerify",done:"done",closed:"closed"},ec=[{id:"all",labelKey:"allStatuses",statuses:[]},{id:"todo",labelKey:"todo",statuses:["open","assigned"]},{id:"in_progress",labelKey:"inProgress",statuses:["in_progress"]},{id:"to_verify",labelKey:"toVerify",statuses:["to_verify"]},{id:"done",labelKey:"done",statuses:["done","closed"]}],eu={high:"bg-red-100 text-red-700",medium:"bg-yellow-100 text-yellow-700",low:"bg-blue-100 text-blue-700"};function ex(e){let{projectUuid:s,initialTasks:t,currentUserUuid:h,initialSelectedTaskUuid:f}=e,b=(0,d.c)(),j=(0,p.a)(),k=(0,n.useSearchParams)(),[v,y]=(0,r.useState)("kanban"),N="/projects/".concat(s,"/tasks"),{selectedId:F,openPanel:A,closePanel:C}=(0,g.T)(N,f),E=(0,r.useMemo)(()=>{let e=k.get("proposalUuids");if(!e)return null;let s=e.split(",").filter(Boolean);return s.length>0?new Set(s):null},[k]);(0,r.useEffect)(()=>{j&&"kanban"===v&&y("list")},[j]);let[S,U]=(0,r.useState)(!1),[P,B]=(0,r.useState)(0),[L,z]=(0,r.useState)("all"),M=(0,r.useMemo)(()=>{var e;return F&&null!=(e=t.find(e=>e.uuid===F))?e:null},[F,t]),T=(0,r.useCallback)(()=>{B(e=>e+1)},[]),O=(0,r.useMemo)(()=>E?t.filter(e=>e.proposalUuid&&E.has(e.proposalUuid)):t,[t,E]),K=(0,r.useMemo)(()=>{let e=ec.find(e=>e.id===L);return e&&0!==e.statuses.length?O.filter(s=>e.statuses.includes(s.status)):O},[O,L]);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"mb-4 overflow-x-auto",children:(0,a.jsx)(w,{projectUuid:s})}),(0,a.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1 rounded-lg bg-secondary p-1 w-fit",children:[j&&(0,a.jsxs)(u.$,{variant:"ghost",size:"sm",className:"h-8 gap-1.5 rounded-md px-3 text-xs ".concat("list"===v?"bg-card text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),onClick:()=>y("list"),children:[(0,a.jsx)(i.A,{className:"h-3.5 w-3.5"}),b("tasks.listView")]}),!j&&(0,a.jsxs)(u.$,{variant:"ghost",size:"sm",className:"h-8 gap-1.5 rounded-md px-3 text-xs ".concat("kanban"===v?"bg-card text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),onClick:()=>y("kanban"),children:[(0,a.jsx)(l.A,{className:"h-3.5 w-3.5"}),b("tasks.kanbanView")]}),(0,a.jsxs)(u.$,{variant:"ghost",size:"sm",className:"h-8 gap-1.5 rounded-md px-3 text-xs ".concat("dag"===v?"bg-card text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),onClick:()=>y("dag"),children:[(0,a.jsx)(o.A,{className:"h-3.5 w-3.5"}),b("tasks.dagView")]})]}),(0,a.jsxs)(u.$,{className:"bg-primary hover:bg-[#B56A42] text-white",onClick:()=>{C(),U(!0)},children:[(0,a.jsx)(c.A,{className:"mr-2 h-4 w-4"}),b("tasks.newTask")]})]}),"list"===v?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"mb-4 flex gap-1 overflow-x-auto border-b border-border pb-2",children:ec.map(e=>{let s=0===e.statuses.length?O.length:O.filter(s=>e.statuses.includes(s.status)).length;return(0,a.jsxs)(u.$,{variant:"ghost",size:"sm",className:"h-8 shrink-0 rounded-md px-3 text-xs ".concat(L===e.id?"bg-secondary text-foreground font-medium":"text-muted-foreground hover:text-foreground"),onClick:()=>z(e.id),children:["all"===e.id?b("tasks.".concat(e.labelKey)):b("status.".concat(e.labelKey)),(0,a.jsx)("span",{className:"ml-1.5 rounded-full bg-card px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground",children:s})]},e.id)})}),(0,a.jsx)("div",{className:"flex-1 space-y-2 overflow-y-auto",children:0===K.length?(0,a.jsx)(R.P.div,{initial:{opacity:0,scale:.98},animate:{opacity:1,scale:1},transition:{duration:.2,ease:[0,0,.2,1]},className:"flex h-24 items-center justify-center rounded-lg border-2 border-dashed border-border text-sm text-[#9A9A9A]",children:b("tasks.noTasks")}):K.map(e=>(0,a.jsxs)(m.Zp,{className:"cursor-pointer border-border bg-card p-4 transition-all hover:border-primary hover:shadow-sm",onClick:()=>A(e.uuid),children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("h4",{className:"font-medium text-foreground truncate",children:e.title}),e.description&&(0,a.jsx)("p",{className:"mt-1 line-clamp-1 text-sm text-muted-foreground",children:e.description})]}),(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[null!=e.storyPoints&&e.storyPoints>0&&(0,a.jsxs)("span",{className:"rounded bg-[#FFF3E0] dark:bg-[#3a2a12] px-2 py-0.5 text-xs font-medium text-[#E65100] dark:text-[#F0A050]",children:[e.storyPoints,"h"]}),(0,a.jsx)(x.E,{className:eu[e.priority]||"",children:b("priority.".concat(e.priority))}),(0,a.jsx)(x.E,{className:el[e.status]||"",children:b("status.".concat(eo[e.status]||e.status))})]})]}),e.assignee&&(0,a.jsxs)("div",{className:"mt-2 flex items-center gap-1.5 text-xs text-[#9A9A9A]",children:[(0,_.bB)(e.assignee)&&(0,a.jsx)(D.AgentAvatar,{name:e.assignee.name,size:16,className:"shrink-0 rounded-full"}),(0,a.jsx)("span",{className:"truncate",children:e.assignee.name})]})]},e.uuid))}),M&&(0,a.jsx)(G.v,{task:M,projectUuid:s,currentUserUuid:h,onClose:C,onDependencyChange:T})]}):"kanban"===v?(0,a.jsx)(ee,{projectUuid:s,initialTasks:O,currentUserUuid:h,selectedTaskUuid:F,onTaskSelect:A,onPanelClose:C,proposalUuidFilter:E}):(0,a.jsxs)("div",{className:"flex flex-1 flex-col",children:[(0,a.jsx)(ei,{projectUuid:s,onTaskSelect:e=>A(e),refreshKey:P}),M&&(0,a.jsx)(G.v,{task:M,projectUuid:s,currentUserUuid:h,onClose:C,onDependencyChange:T})]}),S&&!M&&(0,a.jsx)(G.v,{task:null,projectUuid:s,currentUserUuid:h,onClose:()=>U(!1),onCreated:()=>U(!1)})]})}},18789:(e,s,t)=>{"use strict";t.d(s,{A:()=>a});let a=(0,t(66206).A)("layout-grid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]])},62205:(e,s,t)=>{"use strict";t.d(s,{a:()=>r});var a=t(1856);function r(){let[e,s]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{let e=window.matchMedia("(max-width: 767px)");s(e.matches);let t=e=>s(e.matches);return e.addEventListener("change",t),()=>e.removeEventListener("change",t)},[]),e}},79919:(e,s,t)=>{Promise.resolve().then(t.bind(t,14925))}}]);