@chorus-aidlc/chorus 0.14.2 → 0.14.4

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 (497) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +438 -431
  3. package/.next/standalone/.next/app-path-routes-manifest.json +49 -48
  4. package/.next/standalone/.next/build-manifest.json +5 -5
  5. package/.next/standalone/.next/prerender-manifest.json +33 -33
  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 +2 -2
  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 +2 -2
  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 +3 -3
  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_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
  63. package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/api/agent-connections/route_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
  67. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
  75. package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
  76. package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
  78. package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route.js +1 -0
  81. package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route.js.nft.json +1 -0
  82. package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route_client-reference-manifest.js +1 -0
  83. package/.next/standalone/.next/server/app/api/daemon/control/route_client-reference-manifest.js +1 -1
  84. package/.next/standalone/.next/server/app/api/daemon/execution-state/route_client-reference-manifest.js +1 -1
  85. package/.next/standalone/.next/server/app/api/daemon/executions/route_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route_client-reference-manifest.js +1 -1
  87. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route_client-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/app/api/daemon/resume/route_client-reference-manifest.js +1 -1
  89. package/.next/standalone/.next/server/app/api/daemon/transcript/route_client-reference-manifest.js +1 -1
  90. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js +1 -1
  91. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route_client-reference-manifest.js +1 -1
  93. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route_client-reference-manifest.js +1 -1
  96. package/.next/standalone/.next/server/app/api/daemon-sessions/route_client-reference-manifest.js +1 -1
  97. package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/api/events/notifications/route.js +5 -5
  100. package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
  101. package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  102. package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  103. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
  105. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
  106. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route_client-reference-manifest.js +1 -1
  107. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
  108. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
  109. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/ideas/conversational/route_client-reference-manifest.js +1 -1
  111. package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  112. package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
  113. package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
  114. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
  115. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
  116. package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
  117. package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
  118. package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  119. package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
  120. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
  121. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
  122. package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
  123. package/.next/standalone/.next/server/app/api/project-visits/pin/route_client-reference-manifest.js +1 -1
  124. package/.next/standalone/.next/server/app/api/project-visits/route_client-reference-manifest.js +1 -1
  125. package/.next/standalone/.next/server/app/api/project-visits/visit/route_client-reference-manifest.js +1 -1
  126. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
  127. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
  128. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
  129. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
  130. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
  131. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
  132. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
  133. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
  135. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route_client-reference-manifest.js +1 -1
  136. package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
  137. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
  138. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
  139. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
  140. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  141. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
  142. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
  143. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
  144. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
  145. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
  146. package/.next/standalone/.next/server/app/api/references/[uuid]/route_client-reference-manifest.js +1 -1
  147. package/.next/standalone/.next/server/app/api/references/route_client-reference-manifest.js +1 -1
  148. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  149. package/.next/standalone/.next/server/app/api/session/route_client-reference-manifest.js +1 -1
  150. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
  151. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
  152. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
  153. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
  154. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
  155. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
  156. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  157. package/.next/standalone/.next/server/app/index.html +2 -2
  158. package/.next/standalone/.next/server/app/index.rsc +2 -2
  159. package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
  160. package/.next/standalone/.next/server/app/login/admin.html +2 -2
  161. package/.next/standalone/.next/server/app/login/admin.rsc +2 -2
  162. package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
  163. package/.next/standalone/.next/server/app/login/callback.html +2 -2
  164. package/.next/standalone/.next/server/app/login/callback.rsc +2 -2
  165. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  166. package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
  167. package/.next/standalone/.next/server/app/login/pick-workspace.html +2 -2
  168. package/.next/standalone/.next/server/app/login/pick-workspace.rsc +2 -2
  169. package/.next/standalone/.next/server/app/login.html +2 -2
  170. package/.next/standalone/.next/server/app/login.rsc +2 -2
  171. package/.next/standalone/.next/server/app/onboarding/page.js +2 -2
  172. package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
  173. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  174. package/.next/standalone/.next/server/app/onboarding.html +2 -2
  175. package/.next/standalone/.next/server/app/onboarding.rsc +3 -3
  176. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  177. package/.next/standalone/.next/server/app/projects.html +2 -2
  178. package/.next/standalone/.next/server/app/projects.rsc +3 -3
  179. package/.next/standalone/.next/server/app/settings.html +2 -2
  180. package/.next/standalone/.next/server/app/settings.rsc +4 -4
  181. package/.next/standalone/.next/server/app-paths-manifest.json +49 -48
  182. package/.next/standalone/.next/server/chunks/1114.js +1 -1
  183. package/.next/standalone/.next/server/chunks/1318.js +1 -1
  184. package/.next/standalone/.next/server/chunks/1559.js +1 -1
  185. package/.next/standalone/.next/server/chunks/2004.js +1 -0
  186. package/.next/standalone/.next/server/chunks/2112.js +1 -0
  187. package/.next/standalone/.next/server/chunks/{1286.js → 2282.js} +3 -3
  188. package/.next/standalone/.next/server/chunks/2570.js +2 -2
  189. package/.next/standalone/.next/server/chunks/2618.js +1 -1
  190. package/.next/standalone/.next/server/chunks/{6492.js → 2789.js} +2 -2
  191. package/.next/standalone/.next/server/chunks/2961.js +1 -1
  192. package/.next/standalone/.next/server/chunks/3219.js +1 -1
  193. package/.next/standalone/.next/server/chunks/4070.js +1 -0
  194. package/.next/standalone/.next/server/chunks/4827.js +1 -1
  195. package/.next/standalone/.next/server/chunks/5245.js +1 -1
  196. package/.next/standalone/.next/server/chunks/6113.js +1 -1
  197. package/.next/standalone/.next/server/chunks/6207.js +1 -1
  198. package/.next/standalone/.next/server/chunks/6506.js +2 -2
  199. package/.next/standalone/.next/server/chunks/679.js +1 -1
  200. package/.next/standalone/.next/server/chunks/7368.js +1 -1
  201. package/.next/standalone/.next/server/chunks/7530.js +1 -1
  202. package/.next/standalone/.next/server/chunks/8540.js +1 -0
  203. package/.next/standalone/.next/server/chunks/920.js +1 -1
  204. package/.next/standalone/.next/server/chunks/9213.js +1 -1
  205. package/.next/standalone/.next/server/chunks/9378.js +1 -1
  206. package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
  207. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  208. package/.next/standalone/.next/server/pages/404.html +2 -2
  209. package/.next/standalone/.next/server/pages/500.html +1 -1
  210. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  211. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  212. package/.next/standalone/.next/static/WVmgQzimrMNvGtHx6Cqm1/_buildManifest.js +1 -0
  213. package/.next/standalone/.next/static/chunks/{11595.fbbfc784ff9ee566.js → 11595.c580c5690d176cce.js} +1 -1
  214. package/.next/standalone/.next/static/chunks/{13867-a95a4555fcb7b13b.js → 14160-7bcee6e9e8bc5233.js} +1 -1
  215. package/.next/standalone/.next/static/chunks/{32331-87ae9bc7517c7947.js → 18351-2a408c4f57ddb3a7.js} +1 -1
  216. package/.next/standalone/.next/static/chunks/24870-5b0be64361f5ef70.js +1 -0
  217. package/.next/standalone/.next/static/chunks/26232-110019cebde19691.js +1 -0
  218. package/.next/standalone/.next/static/chunks/{33456.b67f1146831e9f2b.js → 33456.c48dc366aa90b234.js} +1 -1
  219. package/.next/standalone/.next/static/chunks/{37985-e4683195e4ca2519.js → 33806-cb339e86820a87c4.js} +1 -1
  220. package/.next/standalone/.next/static/chunks/{38526-7ffc4b7351c15bc4.js → 37938-c09acf52d7f85cb4.js} +1 -1
  221. package/.next/standalone/.next/static/chunks/{4860.3491d748fdde968e.js → 4860.baf6a285246198af.js} +1 -1
  222. package/.next/standalone/.next/static/chunks/{33277-9926b461045318b3.js → 60178-d6276df1c07d7735.js} +2 -2
  223. package/.next/standalone/.next/static/chunks/68326-924445654ed47e6f.js +1 -0
  224. package/.next/standalone/.next/static/chunks/78917-1498676a1ffe5ded.js +1 -0
  225. package/.next/standalone/.next/static/chunks/94470-1076452151689267.js +1 -0
  226. package/.next/standalone/.next/static/chunks/94643-7c7f2efab0640658.js +1 -0
  227. package/.next/standalone/.next/static/chunks/{99373.827383575665ce2f.js → 99373.ad871bd0bbfc5eb7.js} +1 -1
  228. package/.next/standalone/.next/static/chunks/app/(dashboard)/{layout-12d81eedb519461c.js → layout-78259279cf6c6919.js} +1 -1
  229. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page-8cf720e8efb6ac7d.js +1 -0
  230. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/{page-996b8a87b4b986f1.js → page-59dcf0ba7ce877ec.js} +1 -1
  231. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-d6c226fd56b5ebb5.js +1 -0
  232. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/{page-c231207c3674aa54.js → page-2c9d3f4c6e0ff807.js} +1 -1
  233. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/{page-c62c7d7cf9833060.js → page-af35d50848f01875.js} +1 -1
  234. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-cb6fdf592863833c.js +1 -0
  235. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-596d97796dd55e2f.js +1 -0
  236. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/{page-7948aa8db4813091.js → page-ed9415921188b4d3.js} +1 -1
  237. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/{page-8eea1e0cea60758f.js → page-ebf4c28014025b7b.js} +1 -1
  238. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/{page-658f31ac6a28ec82.js → page-bbde7e85e3388813.js} +1 -1
  239. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-e60bc39bf2957f77.js +1 -0
  240. package/.next/standalone/.next/static/chunks/app/api/admin/companies/[uuid]/route-8cf720e8efb6ac7d.js +1 -0
  241. package/.next/standalone/.next/static/chunks/app/api/admin/companies/route-8cf720e8efb6ac7d.js +1 -0
  242. package/.next/standalone/.next/static/chunks/app/api/admin/login/route-8cf720e8efb6ac7d.js +1 -0
  243. package/.next/standalone/.next/static/chunks/app/api/admin/session/route-8cf720e8efb6ac7d.js +1 -0
  244. package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-8cf720e8efb6ac7d.js +1 -0
  245. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-8cf720e8efb6ac7d.js +1 -0
  246. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-8cf720e8efb6ac7d.js +1 -0
  247. package/.next/standalone/.next/static/chunks/app/api/agents/route-8cf720e8efb6ac7d.js +1 -0
  248. package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-8cf720e8efb6ac7d.js +1 -0
  249. package/.next/standalone/.next/static/chunks/app/api/api-keys/route-8cf720e8efb6ac7d.js +1 -0
  250. package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-8cf720e8efb6ac7d.js +1 -0
  251. package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-8cf720e8efb6ac7d.js +1 -0
  252. package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-8cf720e8efb6ac7d.js +1 -0
  253. package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-8cf720e8efb6ac7d.js +1 -0
  254. package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-8cf720e8efb6ac7d.js +1 -0
  255. package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-8cf720e8efb6ac7d.js +1 -0
  256. package/.next/standalone/.next/static/chunks/app/api/auth/me/route-8cf720e8efb6ac7d.js +1 -0
  257. package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-8cf720e8efb6ac7d.js +1 -0
  258. package/.next/standalone/.next/static/chunks/app/api/comments/route-8cf720e8efb6ac7d.js +1 -0
  259. package/.next/standalone/.next/static/chunks/app/api/daemon/connection-heartbeat/route-8cf720e8efb6ac7d.js +1 -0
  260. package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-8cf720e8efb6ac7d.js +1 -0
  261. package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-8cf720e8efb6ac7d.js +1 -0
  262. package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-8cf720e8efb6ac7d.js +1 -0
  263. package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-8cf720e8efb6ac7d.js +1 -0
  264. package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-8cf720e8efb6ac7d.js +1 -0
  265. package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-8cf720e8efb6ac7d.js +1 -0
  266. package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-8cf720e8efb6ac7d.js +1 -0
  267. package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-8cf720e8efb6ac7d.js +1 -0
  268. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-8cf720e8efb6ac7d.js +1 -0
  269. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-8cf720e8efb6ac7d.js +1 -0
  270. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-8cf720e8efb6ac7d.js +1 -0
  271. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-8cf720e8efb6ac7d.js +1 -0
  272. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-8cf720e8efb6ac7d.js +1 -0
  273. package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-8cf720e8efb6ac7d.js +1 -0
  274. package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-8cf720e8efb6ac7d.js +1 -0
  275. package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-8cf720e8efb6ac7d.js +1 -0
  276. package/.next/standalone/.next/static/chunks/app/api/events/route-8cf720e8efb6ac7d.js +1 -0
  277. package/.next/standalone/.next/static/chunks/app/api/health/route-8cf720e8efb6ac7d.js +1 -0
  278. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-8cf720e8efb6ac7d.js +1 -0
  279. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-8cf720e8efb6ac7d.js +1 -0
  280. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-8cf720e8efb6ac7d.js +1 -0
  281. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-8cf720e8efb6ac7d.js +1 -0
  282. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-8cf720e8efb6ac7d.js +1 -0
  283. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-8cf720e8efb6ac7d.js +1 -0
  284. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/wake-preview/route-8cf720e8efb6ac7d.js +1 -0
  285. package/.next/standalone/.next/static/chunks/app/api/ideas/conversational/route-8cf720e8efb6ac7d.js +1 -0
  286. package/.next/standalone/.next/static/chunks/app/api/mcp/route-8cf720e8efb6ac7d.js +1 -0
  287. package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-8cf720e8efb6ac7d.js +1 -0
  288. package/.next/standalone/.next/static/chunks/app/api/mentionables/route-8cf720e8efb6ac7d.js +1 -0
  289. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-8cf720e8efb6ac7d.js +1 -0
  290. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-8cf720e8efb6ac7d.js +1 -0
  291. package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-8cf720e8efb6ac7d.js +1 -0
  292. package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-8cf720e8efb6ac7d.js +1 -0
  293. package/.next/standalone/.next/static/chunks/app/api/notifications/route-8cf720e8efb6ac7d.js +1 -0
  294. package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-8cf720e8efb6ac7d.js +1 -0
  295. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-8cf720e8efb6ac7d.js +1 -0
  296. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-8cf720e8efb6ac7d.js +1 -0
  297. package/.next/standalone/.next/static/chunks/app/api/project-groups/route-8cf720e8efb6ac7d.js +1 -0
  298. package/.next/standalone/.next/static/chunks/app/api/project-visits/pin/route-8cf720e8efb6ac7d.js +1 -0
  299. package/.next/standalone/.next/static/chunks/app/api/project-visits/route-8cf720e8efb6ac7d.js +1 -0
  300. package/.next/standalone/.next/static/chunks/app/api/project-visits/visit/route-8cf720e8efb6ac7d.js +1 -0
  301. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-8cf720e8efb6ac7d.js +1 -0
  302. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-8cf720e8efb6ac7d.js +1 -0
  303. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-8cf720e8efb6ac7d.js +1 -0
  304. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-8cf720e8efb6ac7d.js +1 -0
  305. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-8cf720e8efb6ac7d.js +1 -0
  306. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-8cf720e8efb6ac7d.js +1 -0
  307. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-8cf720e8efb6ac7d.js +1 -0
  308. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-8cf720e8efb6ac7d.js +1 -0
  309. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-8cf720e8efb6ac7d.js +1 -0
  310. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/resource-graph/route-8cf720e8efb6ac7d.js +1 -0
  311. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-8cf720e8efb6ac7d.js +1 -0
  312. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-8cf720e8efb6ac7d.js +1 -0
  313. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-8cf720e8efb6ac7d.js +1 -0
  314. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-8cf720e8efb6ac7d.js +1 -0
  315. package/.next/standalone/.next/static/chunks/app/api/projects/route-8cf720e8efb6ac7d.js +1 -0
  316. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-8cf720e8efb6ac7d.js +1 -0
  317. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-8cf720e8efb6ac7d.js +1 -0
  318. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-8cf720e8efb6ac7d.js +1 -0
  319. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-8cf720e8efb6ac7d.js +1 -0
  320. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-8cf720e8efb6ac7d.js +1 -0
  321. package/.next/standalone/.next/static/chunks/app/api/references/[uuid]/route-8cf720e8efb6ac7d.js +1 -0
  322. package/.next/standalone/.next/static/chunks/app/api/references/route-8cf720e8efb6ac7d.js +1 -0
  323. package/.next/standalone/.next/static/chunks/app/api/search/route-8cf720e8efb6ac7d.js +1 -0
  324. package/.next/standalone/.next/static/chunks/app/api/session/route-8cf720e8efb6ac7d.js +1 -0
  325. package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-8cf720e8efb6ac7d.js +1 -0
  326. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-8cf720e8efb6ac7d.js +1 -0
  327. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-8cf720e8efb6ac7d.js +1 -0
  328. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-8cf720e8efb6ac7d.js +1 -0
  329. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-8cf720e8efb6ac7d.js +1 -0
  330. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-8cf720e8efb6ac7d.js +1 -0
  331. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-8cf720e8efb6ac7d.js +1 -0
  332. package/.next/standalone/.next/static/chunks/app/onboarding/{page-b178eb3215360d91.js → page-006bf9e9d6a991f1.js} +1 -1
  333. package/.next/standalone/.next/static/chunks/{webpack-567d9ffe31a0a5ee.js → webpack-af2cb28ef7bbd7c2.js} +1 -1
  334. package/.next/standalone/.next/static/css/f46eab37c942ff33.css +1 -0
  335. package/.next/standalone/package.json +1 -1
  336. package/.next/standalone/public/chorus-plugin/.claude-plugin/plugin.json +1 -1
  337. package/.next/standalone/public/chorus-plugin/bin/on-post-verify-task.sh +1 -1
  338. package/.next/standalone/public/chorus-plugin/bin/verify-document-roundtrip.sh +28 -0
  339. package/.next/standalone/public/chorus-plugin/skills/brainstorm/SKILL.md +1 -1
  340. package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +1 -1
  341. package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +1 -1
  342. package/.next/standalone/public/chorus-plugin/skills/idea/SKILL.md +1 -1
  343. package/.next/standalone/public/chorus-plugin/skills/openspec-aware/SKILL.md +8 -4
  344. package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +1 -1
  345. package/.next/standalone/public/chorus-plugin/skills/quick-dev/SKILL.md +1 -1
  346. package/.next/standalone/public/chorus-plugin/skills/review/SKILL.md +1 -1
  347. package/.next/standalone/public/chorus-plugin/skills/yolo/SKILL.md +1 -1
  348. package/.next/standalone/public/install-kiro.sh +1 -1
  349. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-brainstorm/SKILL.md +1 -1
  350. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-develop/SKILL.md +1 -1
  351. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-idea/SKILL.md +1 -1
  352. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-openspec-aware/SKILL.md +8 -4
  353. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-proposal/SKILL.md +1 -1
  354. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-quick-dev/SKILL.md +1 -1
  355. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-review/SKILL.md +1 -1
  356. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-yolo/SKILL.md +1 -1
  357. package/.next/standalone/public/kiro-plugin/bin/chorus-api.sh +1 -1
  358. package/.next/standalone/public/kiro-plugin/bin/verify-document-roundtrip.sh +28 -0
  359. package/.next/standalone/public/skill/brainstorm-chorus/SKILL.md +1 -1
  360. package/.next/standalone/public/skill/chorus/SKILL.md +1 -1
  361. package/.next/standalone/public/skill/code-reviewer-chorus/SKILL.md +1 -1
  362. package/.next/standalone/public/skill/develop-chorus/SKILL.md +1 -1
  363. package/.next/standalone/public/skill/idea-chorus/SKILL.md +1 -1
  364. package/.next/standalone/public/skill/package.json +1 -1
  365. package/.next/standalone/public/skill/proposal-chorus/SKILL.md +1 -1
  366. package/.next/standalone/public/skill/proposal-reviewer-chorus/SKILL.md +1 -1
  367. package/.next/standalone/public/skill/quick-dev-chorus/SKILL.md +1 -1
  368. package/.next/standalone/public/skill/review-chorus/SKILL.md +1 -1
  369. package/.next/standalone/public/skill/task-reviewer-chorus/SKILL.md +1 -1
  370. package/.next/standalone/public/skill/yolo-chorus/SKILL.md +1 -1
  371. package/README.md +2 -0
  372. package/cli/claude-spawner.mjs +4 -0
  373. package/cli/client-args.mjs +15 -8
  374. package/cli/codex-spawner.mjs +41 -10
  375. package/cli/codex-usage-map.mjs +115 -0
  376. package/cli/daemon-agent.mjs +56 -6
  377. package/cli/daemon-install-config.mjs +129 -0
  378. package/cli/daemon-rest-client.mjs +34 -3
  379. package/cli/daemon.mjs +32 -1
  380. package/cli/sse-listener.mjs +82 -5
  381. package/cli/turn-reporter.mjs +17 -5
  382. package/cli/upload-hooks.mjs +337 -12
  383. package/cli/waker.mjs +68 -13
  384. package/package.json +1 -1
  385. package/prisma/migrations/20260723014810_add_turn_relay_error/migration.sql +2 -0
  386. package/prisma/migrations/20260724031955_add_turn_token_usage/migration.sql +6 -0
  387. package/prisma/migrations/20260724082248_add_session_cache_rollup/migration.sql +3 -0
  388. package/prisma/schema.prisma +27 -0
  389. package/.next/standalone/.next/server/chunks/1173.js +0 -1
  390. package/.next/standalone/.next/server/chunks/3407.js +0 -1
  391. package/.next/standalone/.next/server/chunks/595.js +0 -1
  392. package/.next/standalone/.next/server/chunks/7762.js +0 -1
  393. package/.next/standalone/.next/static/XTQkt8fOQEK4mZkZTFQ_E/_buildManifest.js +0 -1
  394. package/.next/standalone/.next/static/chunks/24537-7d71bf10329d1be1.js +0 -1
  395. package/.next/standalone/.next/static/chunks/27030-19cd50b9d47b3be6.js +0 -1
  396. package/.next/standalone/.next/static/chunks/28680-f9c5e04f67982cb6.js +0 -1
  397. package/.next/standalone/.next/static/chunks/73510-c338cef00ca3cfaf.js +0 -1
  398. package/.next/standalone/.next/static/chunks/78917-a297b76c6daa9f5d.js +0 -1
  399. package/.next/standalone/.next/static/chunks/84219-09970ab1b85c61f0.js +0 -1
  400. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page-d1c49cfe592deeb8.js +0 -1
  401. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-77771ef395e19922.js +0 -1
  402. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-d098269dcaa06de7.js +0 -1
  403. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-7bcaa11ee24b5754.js +0 -1
  404. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-7fbf5bc58d3dd5b0.js +0 -1
  405. package/.next/standalone/.next/static/chunks/app/api/admin/companies/[uuid]/route-d1c49cfe592deeb8.js +0 -1
  406. package/.next/standalone/.next/static/chunks/app/api/admin/companies/route-d1c49cfe592deeb8.js +0 -1
  407. package/.next/standalone/.next/static/chunks/app/api/admin/login/route-d1c49cfe592deeb8.js +0 -1
  408. package/.next/standalone/.next/static/chunks/app/api/admin/session/route-d1c49cfe592deeb8.js +0 -1
  409. package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-d1c49cfe592deeb8.js +0 -1
  410. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-d1c49cfe592deeb8.js +0 -1
  411. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-d1c49cfe592deeb8.js +0 -1
  412. package/.next/standalone/.next/static/chunks/app/api/agents/route-d1c49cfe592deeb8.js +0 -1
  413. package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-d1c49cfe592deeb8.js +0 -1
  414. package/.next/standalone/.next/static/chunks/app/api/api-keys/route-d1c49cfe592deeb8.js +0 -1
  415. package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-d1c49cfe592deeb8.js +0 -1
  416. package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-d1c49cfe592deeb8.js +0 -1
  417. package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-d1c49cfe592deeb8.js +0 -1
  418. package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-d1c49cfe592deeb8.js +0 -1
  419. package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-d1c49cfe592deeb8.js +0 -1
  420. package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-d1c49cfe592deeb8.js +0 -1
  421. package/.next/standalone/.next/static/chunks/app/api/auth/me/route-d1c49cfe592deeb8.js +0 -1
  422. package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-d1c49cfe592deeb8.js +0 -1
  423. package/.next/standalone/.next/static/chunks/app/api/comments/route-d1c49cfe592deeb8.js +0 -1
  424. package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-d1c49cfe592deeb8.js +0 -1
  425. package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-d1c49cfe592deeb8.js +0 -1
  426. package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-d1c49cfe592deeb8.js +0 -1
  427. package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-d1c49cfe592deeb8.js +0 -1
  428. package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-d1c49cfe592deeb8.js +0 -1
  429. package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-d1c49cfe592deeb8.js +0 -1
  430. package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-d1c49cfe592deeb8.js +0 -1
  431. package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-d1c49cfe592deeb8.js +0 -1
  432. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-d1c49cfe592deeb8.js +0 -1
  433. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-d1c49cfe592deeb8.js +0 -1
  434. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-d1c49cfe592deeb8.js +0 -1
  435. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-d1c49cfe592deeb8.js +0 -1
  436. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-d1c49cfe592deeb8.js +0 -1
  437. package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-d1c49cfe592deeb8.js +0 -1
  438. package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-d1c49cfe592deeb8.js +0 -1
  439. package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-d1c49cfe592deeb8.js +0 -1
  440. package/.next/standalone/.next/static/chunks/app/api/events/route-d1c49cfe592deeb8.js +0 -1
  441. package/.next/standalone/.next/static/chunks/app/api/health/route-d1c49cfe592deeb8.js +0 -1
  442. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-d1c49cfe592deeb8.js +0 -1
  443. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-d1c49cfe592deeb8.js +0 -1
  444. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-d1c49cfe592deeb8.js +0 -1
  445. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-d1c49cfe592deeb8.js +0 -1
  446. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-d1c49cfe592deeb8.js +0 -1
  447. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-d1c49cfe592deeb8.js +0 -1
  448. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/wake-preview/route-d1c49cfe592deeb8.js +0 -1
  449. package/.next/standalone/.next/static/chunks/app/api/ideas/conversational/route-d1c49cfe592deeb8.js +0 -1
  450. package/.next/standalone/.next/static/chunks/app/api/mcp/route-d1c49cfe592deeb8.js +0 -1
  451. package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-d1c49cfe592deeb8.js +0 -1
  452. package/.next/standalone/.next/static/chunks/app/api/mentionables/route-d1c49cfe592deeb8.js +0 -1
  453. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-d1c49cfe592deeb8.js +0 -1
  454. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-d1c49cfe592deeb8.js +0 -1
  455. package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-d1c49cfe592deeb8.js +0 -1
  456. package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-d1c49cfe592deeb8.js +0 -1
  457. package/.next/standalone/.next/static/chunks/app/api/notifications/route-d1c49cfe592deeb8.js +0 -1
  458. package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-d1c49cfe592deeb8.js +0 -1
  459. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-d1c49cfe592deeb8.js +0 -1
  460. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-d1c49cfe592deeb8.js +0 -1
  461. package/.next/standalone/.next/static/chunks/app/api/project-groups/route-d1c49cfe592deeb8.js +0 -1
  462. package/.next/standalone/.next/static/chunks/app/api/project-visits/pin/route-d1c49cfe592deeb8.js +0 -1
  463. package/.next/standalone/.next/static/chunks/app/api/project-visits/route-d1c49cfe592deeb8.js +0 -1
  464. package/.next/standalone/.next/static/chunks/app/api/project-visits/visit/route-d1c49cfe592deeb8.js +0 -1
  465. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-d1c49cfe592deeb8.js +0 -1
  466. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-d1c49cfe592deeb8.js +0 -1
  467. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-d1c49cfe592deeb8.js +0 -1
  468. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-d1c49cfe592deeb8.js +0 -1
  469. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-d1c49cfe592deeb8.js +0 -1
  470. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-d1c49cfe592deeb8.js +0 -1
  471. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-d1c49cfe592deeb8.js +0 -1
  472. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-d1c49cfe592deeb8.js +0 -1
  473. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-d1c49cfe592deeb8.js +0 -1
  474. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/resource-graph/route-d1c49cfe592deeb8.js +0 -1
  475. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-d1c49cfe592deeb8.js +0 -1
  476. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-d1c49cfe592deeb8.js +0 -1
  477. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-d1c49cfe592deeb8.js +0 -1
  478. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-d1c49cfe592deeb8.js +0 -1
  479. package/.next/standalone/.next/static/chunks/app/api/projects/route-d1c49cfe592deeb8.js +0 -1
  480. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-d1c49cfe592deeb8.js +0 -1
  481. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-d1c49cfe592deeb8.js +0 -1
  482. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-d1c49cfe592deeb8.js +0 -1
  483. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-d1c49cfe592deeb8.js +0 -1
  484. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-d1c49cfe592deeb8.js +0 -1
  485. package/.next/standalone/.next/static/chunks/app/api/references/[uuid]/route-d1c49cfe592deeb8.js +0 -1
  486. package/.next/standalone/.next/static/chunks/app/api/references/route-d1c49cfe592deeb8.js +0 -1
  487. package/.next/standalone/.next/static/chunks/app/api/search/route-d1c49cfe592deeb8.js +0 -1
  488. package/.next/standalone/.next/static/chunks/app/api/session/route-d1c49cfe592deeb8.js +0 -1
  489. package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-d1c49cfe592deeb8.js +0 -1
  490. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-d1c49cfe592deeb8.js +0 -1
  491. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-d1c49cfe592deeb8.js +0 -1
  492. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-d1c49cfe592deeb8.js +0 -1
  493. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-d1c49cfe592deeb8.js +0 -1
  494. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-d1c49cfe592deeb8.js +0 -1
  495. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-d1c49cfe592deeb8.js +0 -1
  496. package/.next/standalone/.next/static/css/617133917710c831.css +0 -1
  497. /package/.next/standalone/.next/static/{XTQkt8fOQEK4mZkZTFQ_E → WVmgQzimrMNvGtHx6Cqm1}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ "use strict";exports.id=4070,exports.ids=[4070],exports.modules={2852:(a,b,c)=>{c.d(b,{J:()=>g});var d=c(10837);c(21968);var e=c(13277),f=c(96307);function g({className:a,...b}){return(0,d.jsx)(e.Root,{"data-slot":"label",className:(0,f.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",a),...b})}},7086:(a,b,c)=>{function d(a,b){return!!a&&!!b&&("user"===a.type?"user"===b.type&&a.uuid===b.uuid:"agent"===a.type?"agent"===b.type&&a.uuid===b.uuid:"agent_instance"===a.type&&"agent"===b.type&&!!a.agentUuid&&a.agentUuid===b.uuid)}function e(a){return!!a&&("agent"===a.type||"agent_instance"===a.type)}c.d(b,{RU:()=>d,bB:()=>e})},10297:(a,b,c)=>{c.d(b,{G7:()=>i,L$:()=>l,h_:()=>m,oI:()=>j,uB:()=>h,xL:()=>k});var d=c(10837);c(21968);var e=c(28918),f=c(75888),g=c(96307);function h({className:a,...b}){return(0,d.jsx)(e.uB,{"data-slot":"command",className:(0,g.cn)("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",a),...b})}function i({className:a,...b}){return(0,d.jsxs)("div",{"data-slot":"command-input-wrapper",className:"flex h-9 items-center gap-2 border-b px-3",children:[(0,d.jsx)(f.A,{className:"size-4 shrink-0 opacity-50"}),(0,d.jsx)(e.uB.Input,{"data-slot":"command-input",className:(0,g.cn)("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",a),...b})]})}function j({className:a,...b}){return(0,d.jsx)(e.uB.List,{"data-slot":"command-list",className:(0,g.cn)("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",a),...b})}function k({...a}){return(0,d.jsx)(e.uB.Empty,{"data-slot":"command-empty",className:"py-6 text-center text-sm",...a})}function l({className:a,...b}){return(0,d.jsx)(e.uB.Group,{"data-slot":"command-group",className:(0,g.cn)("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",a),...b})}function m({className:a,...b}){return(0,d.jsx)(e.uB.Item,{"data-slot":"command-item",className:(0,g.cn)("relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-hidden data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",a),...b})}},21863:(a,b,c)=>{c.d(b,{j:()=>e});var d=c(42377);let e=(0,d.createServerReference)("6082a654eef56b1738c603740f4b7acfdcf9547d27",d.callServer,void 0,d.findSourceMapURL,"listReferencesAction")},26078:(a,b,c)=>{c.d(b,{RU:()=>h,s8:()=>g});let d={developer_agent:["idea:read","proposal:read","document:read","project:read","task:read","task:write"],pm_agent:["idea:read","idea:write","proposal:read","proposal:write","document:read","document:write","task:read","task:write","project:read","project:write"],admin_agent:["idea:read","idea:write","idea:admin","proposal:read","proposal:write","proposal:admin","document:read","document:write","document:admin","task:read","task:write","task:admin","project:read","project:write","project:admin"]},e=["read","write","admin"],f=new Set(["idea","proposal","document","task","project"].flatMap(a=>e.map(b=>`${a}:${b}`)));function g(a){return f.has(a)}function h(a,b){let c=new Set;if(a)for(let b of a){let a=d[b.endsWith("_agent")?b:`${b}_agent`];if(a)for(let b of a)c.add(b)}if(b)for(let a of b)g(a)&&c.add(a);return c}},28774:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A8:()=>q,CG:()=>o,Iq:()=>n,RB:()=>l,Sn:()=>i,d5:()=>m,ic:()=>p,tN:()=>k,x4:()=>j});var e=c(71255),f=c(77219),g=c(26078),h=a([e,f]);async function i({companyUuid:a,name:b,roles:c,ownerUuid:d,persona:f,systemPrompt:g,permissions:h}){return e.z.agent.create({data:{companyUuid:a,name:b,roles:c,ownerUuid:d,persona:f,systemPrompt:g,...void 0!==h&&{permissions:h}},select:{uuid:!0,name:!0,roles:!0,permissions:!0,persona:!0,systemPrompt:!0,ownerUuid:!0,createdAt:!0}})}async function j(a,b,c){if(c&&!await e.z.agent.findFirst({where:{uuid:a,companyUuid:c},select:{uuid:!0}}))throw Error("Agent not found");return e.z.agent.update({where:{uuid:a},data:b,select:{uuid:!0,name:!0,roles:!0,permissions:!0,persona:!0,systemPrompt:!0,ownerUuid:!0,lastActiveAt:!0,createdAt:!0}})}async function k(a,b){return e.z.apiKey.updateMany({where:{agentUuid:a,revokedAt:null},data:{name:b}})}async function l(a){return e.z.agent.delete({where:{uuid:a}})}async function m(a,b,c,d){let f={companyUuid:a,revokedAt:null,...d&&{agent:{ownerUuid:d}}},[g,h]=await Promise.all([e.z.apiKey.findMany({where:f,skip:b,take:c,orderBy:{createdAt:"desc"},include:{agent:{select:{uuid:!0,name:!0,roles:!0,permissions:!0,persona:!0}}}}),e.z.apiKey.count({where:f})]);return{apiKeys:g,total:h}}async function n({companyUuid:a,agentUuid:b,name:c,expiresAt:d}){let{key:g,hash:h,prefix:i}=(0,f.XH)();return{...await e.z.apiKey.create({data:{companyUuid:a,agentUuid:b,keyHash:h,keyPrefix:i,name:c,expiresAt:d},select:{uuid:!0,keyPrefix:!0,name:!0,expiresAt:!0,createdAt:!0}}),key:g}}async function o(a,b,c){return e.z.apiKey.findFirst({where:{uuid:b,companyUuid:a,...c&&{agent:{ownerUuid:c}}},select:{uuid:!0,agentUuid:!0,revokedAt:!0}})}async function p(a,b,c){return(await e.z.agent.findMany({where:{companyUuid:a,...c&&{ownerUuid:c}},select:{uuid:!0,name:!0,roles:!0,permissions:!0,ownerUuid:!0},orderBy:{name:"asc"}})).filter(a=>(0,g.RU)(a.roles,a.permissions).has(b)).map(({uuid:a,name:b,roles:c,ownerUuid:d})=>({uuid:a,name:b,roles:c,ownerUuid:d}))}async function q(a){return e.z.user.findMany({where:{companyUuid:a},select:{uuid:!0,name:!0,email:!0},orderBy:{name:"asc"}})}[e,f]=h.then?(await h)():h,d()}catch(a){d(a)}})},46398:(a,b,c)=>{c.d(b,{N2:()=>j,mP:()=>h,qQ:()=>i});var d=c(84797),e=c(97731),f=c(40260),g=c(96101);let h=["docs","repo","issue_pr","paper_blog"],i={docs:{labelKey:"references.typeDocs",badgeClass:"bg-blue-50 text-blue-700 dark:bg-[#13253a] dark:text-[#5AA9F0]",icon:d.A},repo:{labelKey:"references.typeRepo",badgeClass:"bg-green-50 text-green-700 dark:bg-[#14281a] dark:text-[#6FD19A]",icon:e.A},issue_pr:{labelKey:"references.typeIssuePr",badgeClass:"bg-purple-50 text-purple-700 dark:bg-[#281630] dark:text-[#C98FE0]",icon:f.A},paper_blog:{labelKey:"references.typePaperBlog",badgeClass:"bg-amber-50 text-amber-700 dark:bg-[#332a12] dark:text-[#E0B44E]",icon:g.A}};function j(a){return h.includes(a)}},52178:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Y9:()=>l,bv:()=>n,jD:()=>k,t1:()=>m});var e=c(2613);c(50785);var f=c(9259),g=c(52768),h=c(97307),i=c(12217),j=a([f,g]);[f,g]=j.then?(await j)():j;let o=g.Sy;async function k(a,b){let c=await (0,f.d)();if(!c)return{success:!1,error:"unauthorized"};if(!o.includes(a))return{success:!1,error:`Invalid target type: ${a}`};try{let d=await (0,g.Xo)({companyUuid:c.companyUuid,targetType:a,targetUuid:b});return{success:!0,references:d}}catch(c){return h.default.error({err:c,targetType:a,targetUuid:b},"Failed to list references"),{success:!1,error:"Failed to load references"}}}async function l(a){let b=await (0,f.d)();if(!b)return{success:!1,error:"unauthorized"};if(!o.includes(a.targetType))return{success:!1,error:`Invalid target type: ${a.targetType}`};try{let c=await (0,g.kA)({companyUuid:b.companyUuid,targetType:a.targetType,targetUuid:a.targetUuid,type:a.type,url:a.url,title:a.title,notes:a.notes??null,createdByType:"user",createdByUuid:b.actorUuid});return{success:!0,reference:c}}catch(b){h.default.error({err:b},"Failed to create reference");let a=b instanceof Error?b.message:"Failed to add reference";return{success:!1,error:a}}}async function m(a){let b=await (0,f.d)();if(!b)return{success:!1,error:"unauthorized"};try{let c=await (0,g.Xp)(b.companyUuid,a.uuid,{...void 0!==a.type?{type:a.type}:{},...void 0!==a.url?{url:a.url}:{},...void 0!==a.title?{title:a.title}:{},...void 0!==a.notes?{notes:a.notes}:{}});return{success:!0,reference:c}}catch(c){h.default.error({err:c,uuid:a.uuid},"Failed to update reference");let b=c instanceof Error?c.message:"Failed to update reference";return{success:!1,error:b}}}async function n(a){let b=await (0,f.d)();if(!b)return{success:!1,error:"unauthorized"};try{return await (0,g.bA)(b.companyUuid,a),{success:!0}}catch(c){h.default.error({err:c,uuid:a},"Failed to delete reference");let b=c instanceof Error?c.message:"Failed to delete reference";return{success:!1,error:b}}}(0,i.D)([k,l,m,n]),(0,e.A)(k,"6082a654eef56b1738c603740f4b7acfdcf9547d27",null),(0,e.A)(l,"4053fbf9cd773cf00605c209ba2023ddd325a6d1b8",null),(0,e.A)(m,"40cd33ae38e5fbe446ff77b214f6bfd7bc8404121e",null),(0,e.A)(n,"40a2cb756321aa0763b67248286ce61a28bafb3b9b",null),d()}catch(a){d(a)}})},52768:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Sy:()=>u,Xo:()=>o,Xp:()=>q,bA:()=>r,kA:()=>p});var e=c(71255),f=c(92633),g=c(62729),h=c(67738),i=c(97307),j=a([e,f,h]);[e,f,h]=j.then?(await j)():j;let s=i.default.child({module:"reference-artifact.service"}),t=["docs","repo","issue_pr","paper_blog"],u=["proposal","task","idea"],v={uuid:!0,targetType:!0,targetUuid:!0,type:!0,url:!0,title:!0,notes:!0,createdByType:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0};async function k(a){let b=await (0,f.LS)(a.createdByUuid,"user"===a.createdByType||"agent"===a.createdByType?a.createdByType:void 0);return{uuid:a.uuid,targetType:a.targetType,targetUuid:a.targetUuid,type:a.type,url:a.url,title:a.title,notes:a.notes??null,createdBy:b,createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()}}function l(a){if(!t.includes(a))throw Error(`Invalid reference type: ${a}`)}function m(a){let b="string"==typeof a?a.trim():"";if(!b||!/^https?:\/\//i.test(b))throw Error(`Invalid reference url: ${a}`)}async function n(a,b,c){switch(b){case"proposal":{let b=await e.z.proposal.findFirst({where:{uuid:c,companyUuid:a},select:{projectUuid:!0}});if(!b)throw Error(`Target proposal with UUID ${c} not found`);return b.projectUuid}case"task":{let b=await e.z.task.findFirst({where:{uuid:c,companyUuid:a},select:{projectUuid:!0}});if(!b)throw Error(`Target task with UUID ${c} not found`);return b.projectUuid}case"idea":{let b=await e.z.idea.findFirst({where:{uuid:c,companyUuid:a},select:{projectUuid:!0}});if(!b)throw Error(`Target idea with UUID ${c} not found`);return b.projectUuid}default:throw Error(`Unsupported reference targetType: ${b}`)}}async function o({companyUuid:a,targetType:b,targetUuid:c}){let d=await e.z.referenceArtifact.findMany({where:{companyUuid:a,targetType:b,targetUuid:c},orderBy:{createdAt:"asc"},select:v});return Promise.all(d.map(a=>k(a)))}async function p(a){let{companyUuid:b,targetType:c,targetUuid:d,type:f,url:i,title:j,notes:o}=a;l(f),m(i);let p=await n(b,c,d),q=await e.z.referenceArtifact.create({data:{companyUuid:b,targetType:c,targetUuid:d,type:f,url:i,title:j,notes:o??null,createdByType:a.createdByType,createdByUuid:a.createdByUuid},select:v});try{g.B.emitChange({companyUuid:b,projectUuid:p,entityType:c,entityUuid:d,action:"updated",actorUuid:a.createdByUuid})}catch(a){s.warn({err:a,referenceUuid:q.uuid,targetType:c,targetUuid:d},"Failed to emit change event for reference artifact")}try{await h.createActivity({companyUuid:b,projectUuid:p,targetType:c,targetUuid:d,actorType:a.createdByType,actorUuid:a.createdByUuid,action:"reference_added",value:{referenceUuid:q.uuid,type:q.type,url:q.url,title:q.title}})}catch(a){s.warn({err:a,referenceUuid:q.uuid,targetType:c,targetUuid:d},"Failed to record reference_added Activity")}return k(q)}async function q(a,b,{type:c,url:d,title:f,notes:g}){if(void 0!==c&&l(c),void 0!==d&&m(d),!await e.z.referenceArtifact.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}}))throw Error(`Reference with UUID ${b} not found`);let h={};void 0!==c&&(h.type=c),void 0!==d&&(h.url=d),void 0!==f&&(h.title=f),void 0!==g&&(h.notes=g);let i=await e.z.referenceArtifact.update({where:{uuid:b},data:h,select:v});return k(i)}async function r(a,b){if(!await e.z.referenceArtifact.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}}))throw Error(`Reference with UUID ${b} not found`);await e.z.referenceArtifact.delete({where:{uuid:b}})}d()}catch(a){d(a)}})},61206:(a,b,c)=>{c.d(b,{L:()=>h});var d=c(10837),e=c(21968),f=c(9222),g=c(99127);function h({notes:a}){let b=(0,f.c)(),[c,h]=(0,e.useState)(!1),i=a?.trim();if(!i)return null;let j=(0,d.jsx)("button",{type:"button",onClick:()=>h(a=>!a),"aria-expanded":c,"aria-label":b("references.toggleNotes"),className:`mt-1 w-full cursor-pointer text-left text-xs leading-relaxed text-muted-foreground ${c?"block":"line-clamp-2"}`,children:i});return c?j:(0,d.jsx)(g.Bc,{delayDuration:200,children:(0,d.jsxs)(g.m_,{children:[(0,d.jsx)(g.k$,{asChild:!0,children:j}),(0,d.jsx)(g.ZI,{className:"max-w-xs whitespace-pre-wrap break-words",children:i})]})})}},71990:(a,b,c)=>{c.d(b,{ReferencesSection:()=>C});var d=c(10837),e=c(21968),f=c(68884),g=c(9222),h=c(59876),i=c(35312),j=c(87461),k=c(86460),l=c(79543),m=c(92900),n=c(49599),o=c(42424),p=c(9994),q=c(2852),r=c(20170),s=c(11568),t=c(55732),u=c(6019),v=c(21863),w=c(42377);let x=(0,w.createServerReference)("40cd33ae38e5fbe446ff77b214f6bfd7bc8404121e",w.callServer,void 0,w.findSourceMapURL,"updateReferenceAction"),y=(0,w.createServerReference)("4053fbf9cd773cf00605c209ba2023ddd325a6d1b8",w.callServer,void 0,w.findSourceMapURL,"createReferenceAction"),z=(0,w.createServerReference)("40a2cb756321aa0763b67248286ce61a28bafb3b9b",w.callServer,void 0,w.findSourceMapURL,"deleteReferenceAction");var A=c(46398),B=c(61206);function C({targetType:a,targetUuid:b,canWrite:c,initialReferences:w,compact:C=!1}){let D=(0,g.c)(),E=(0,f.r)(),[F,G]=(0,e.useState)(w??[]),[H,I]=(0,e.useState)(void 0!==w),[J,K]=(0,e.useState)(!1),[L,M]=(0,e.useState)(null),[N,O]=(0,e.useState)("docs"),[P,Q]=(0,e.useState)(""),[R,S]=(0,e.useState)(""),[T,U]=(0,e.useState)(""),[V,W]=(0,e.useState)(null),[X,Y]=(0,e.useState)(!1),[Z,$]=(0,e.useState)(null),_=(0,e.useCallback)(async()=>{let c=await (0,v.j)(a,b);c.success&&G(c.references),I(!0)},[a,b]),aa=async()=>{if(!P.trim())return void W(D("references.urlRequired"));if(!R.trim())return void W(D("references.titleRequired"));Y(!0),W(null);let c=T.trim()?T.trim():null,d=L?await x({uuid:L.uuid,type:N,url:P.trim(),title:R.trim(),notes:c}):await y({targetType:a,targetUuid:b,type:N,url:P.trim(),title:R.trim(),notes:c});Y(!1),d.success?(K(!1),await _(),E.refresh()):W(d.error||(L?D("references.updateFailed"):D("references.addFailed")))},ab=async a=>{$(a);let b=await z(a);$(null),b.success&&(await _(),E.refresh())};return(0,d.jsxs)("div",{className:C?"space-y-2":"space-y-2.5",children:[0===F.length?(0,d.jsx)("p",{className:"text-sm italic text-muted-foreground",children:H?D("references.empty"):D("references.loading")}):(0,d.jsx)("div",{className:"space-y-2",children:F.map(a=>{let b=(0,A.N2)(a.type)?A.qQ[a.type]:null,e=b?.icon??h.A;return(0,d.jsx)("div",{className:"group rounded-lg border border-border bg-background p-3",children:(0,d.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsx)("div",{className:"mb-1 flex items-center gap-2",children:(0,d.jsxs)(n.E,{className:`gap-1 border-0 text-[10px] font-medium ${b?.badgeClass??"bg-secondary text-muted-foreground"}`,children:[(0,d.jsx)(e,{className:"h-3 w-3"}),b?D(b.labelKey):a.type]})}),(0,d.jsxs)("a",{href:a.url,target:"_blank",rel:"noopener noreferrer",title:a.title,className:"flex min-w-0 items-center gap-1 text-sm font-medium text-primary hover:underline",children:[(0,d.jsx)("span",{className:"truncate",children:a.title}),(0,d.jsx)(i.A,{className:"h-3 w-3 shrink-0"})]}),(0,d.jsx)(B.L,{notes:a.notes})]}),c&&(0,d.jsxs)("div",{className:"flex shrink-0 items-center gap-0.5 transition-opacity md:opacity-0 md:group-hover:opacity-100 md:focus-within:opacity-100",children:[(0,d.jsx)(o.$,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>{M(a),O(a.type),Q(a.url),S(a.title),U(a.notes??""),W(null),K(!0)},"aria-label":D("references.editReference"),children:(0,d.jsx)(j.A,{className:"h-3.5 w-3.5 text-muted-foreground"})}),(0,d.jsxs)(u.Lt,{children:[(0,d.jsx)(u.tv,{asChild:!0,children:(0,d.jsx)(o.$,{variant:"ghost",size:"icon",className:"h-7 w-7","aria-label":D("references.deleteReference"),children:Z===a.uuid?(0,d.jsx)(k.A,{className:"h-3.5 w-3.5 animate-spin text-muted-foreground"}):(0,d.jsx)(l.A,{className:"h-3.5 w-3.5 text-destructive"})})}),(0,d.jsxs)(u.EO,{children:[(0,d.jsxs)(u.wd,{children:[(0,d.jsx)(u.r7,{children:D("references.deleteReference")}),(0,d.jsx)(u.$v,{children:D("references.deleteConfirm",{title:a.title})})]}),(0,d.jsxs)(u.ck,{children:[(0,d.jsx)(u.Zr,{children:D("common.cancel")}),(0,d.jsx)(u.Rx,{variant:"destructive",onClick:()=>ab(a.uuid),children:D("common.delete")})]})]})]})]})]})},a.uuid)})}),c&&(0,d.jsxs)(o.$,{variant:"outline",size:"sm",className:"h-8 w-full gap-1.5 border-border border-dashed text-xs text-muted-foreground",onClick:()=>{M(null),O("docs"),Q(""),S(""),U(""),W(null),K(!0)},children:[(0,d.jsx)(m.A,{className:"h-3.5 w-3.5"}),D("references.addReference")]}),(0,d.jsx)(s.lG,{open:J,onOpenChange:K,children:(0,d.jsxs)(s.Cf,{className:"sm:max-w-[480px]",children:[(0,d.jsx)(s.c7,{children:(0,d.jsx)(s.L3,{children:L?D("references.editReference"):D("references.addReference")})}),(0,d.jsxs)("div",{className:"space-y-4 py-2",children:[V&&(0,d.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:V}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(q.J,{htmlFor:"ref-type",className:"text-[13px] font-medium text-foreground",children:D("references.typeLabel")}),(0,d.jsxs)(t.l6,{value:N,onValueChange:O,children:[(0,d.jsx)(t.bq,{id:"ref-type",className:"border-border focus:ring-primary",children:(0,d.jsx)(t.yv,{})}),(0,d.jsx)(t.gC,{children:A.mP.map(a=>(0,d.jsx)(t.eb,{value:a,children:D(A.qQ[a].labelKey)},a))})]})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)(q.J,{htmlFor:"ref-url",className:"text-[13px] font-medium text-foreground",children:[D("references.urlLabel")," *"]}),(0,d.jsx)(p.p,{id:"ref-url",value:P,onChange:a=>Q(a.target.value),placeholder:D("references.urlPlaceholder"),className:"border-border focus-visible:ring-primary",autoFocus:!0})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)(q.J,{htmlFor:"ref-title",className:"text-[13px] font-medium text-foreground",children:[D("references.titleLabel")," *"]}),(0,d.jsx)(p.p,{id:"ref-title",value:R,onChange:a=>S(a.target.value),placeholder:D("references.titlePlaceholder"),className:"border-border focus-visible:ring-primary"})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(q.J,{htmlFor:"ref-notes",className:"text-[13px] font-medium text-foreground",children:D("references.notesLabel")}),(0,d.jsx)(r.T,{id:"ref-notes",value:T,onChange:a=>U(a.target.value),placeholder:D("references.notesPlaceholder"),rows:3,className:"resize-none border-border focus-visible:ring-primary"})]})]}),(0,d.jsxs)(s.Es,{children:[(0,d.jsx)(o.$,{variant:"outline",onClick:()=>K(!1),disabled:X,className:"border-border",children:D("common.cancel")}),(0,d.jsx)(o.$,{onClick:aa,disabled:X||!P.trim()||!R.trim(),className:"bg-primary hover:bg-primary/90 text-primary-foreground",children:X?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(k.A,{className:"mr-2 h-4 w-4 animate-spin"}),D("common.saving")]}):L?D("common.save"):D("references.add")})]})]})})]})}},73908:(a,b,c)=>{c.d(b,{C:()=>k,K:()=>m});var d=c(10837),e=c(9222),f=c(79543),g=c(92900),h=c(42424),i=c(9994),j=c(88536);function k({items:a,onChange:b,disabled:c}){let k=(0,e.c)(),l=(c,d)=>{let e=a.slice();e[c]={...e[c],...d},b(e)};return(0,d.jsxs)("div",{className:"space-y-3",children:[a.length>0&&(0,d.jsx)("div",{className:"space-y-2",children:a.map((e,g)=>(0,d.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-[#E5E2DC] dark:border-[#2a2a2e] bg-background p-2.5",children:[(0,d.jsx)("div",{className:"flex-1 min-w-0",children:(0,d.jsx)(i.p,{value:e.description,onChange:a=>l(g,{description:a.target.value}),placeholder:k("acceptanceCriteria.criterionPlaceholder"),className:"border-[#E5E2DC] dark:border-[#2a2a2e] text-sm focus-visible:ring-primary h-8",disabled:c})}),(0,d.jsxs)("div",{className:"flex items-center gap-2 shrink-0 pt-1",children:[(0,d.jsx)(j.d,{checked:e.required,onCheckedChange:a=>l(g,{required:a}),className:"data-[state=checked]:bg-primary",disabled:c}),(0,d.jsx)("span",{className:"text-[10px] font-medium text-muted-foreground min-w-[52px]",children:e.required?k("acceptanceCriteria.required"):k("acceptanceCriteria.optional")}),(0,d.jsx)(h.$,{variant:"outline",size:"sm",className:"h-7 w-7 p-0 border-[#E5E2DC] dark:border-[#2a2a2e] text-muted-foreground hover:text-[#D32F2F] hover:border-[#D32F2F] hover:bg-[#FFEBEE] dark:hover:bg-[#331619]",onClick:()=>{b(a.filter((a,b)=>b!==g))},disabled:c,type:"button",children:(0,d.jsx)(f.A,{className:"h-3 w-3"})})]})]},g))}),(0,d.jsxs)(h.$,{variant:"outline",size:"sm",className:"h-8 gap-1.5 border-[#E5E2DC] dark:border-[#2a2a2e] text-xs text-muted-foreground hover:text-primary hover:border-primary",onClick:()=>{b([...a,{description:"",required:!0}])},disabled:c,type:"button",children:[(0,d.jsx)(g.A,{className:"h-3 w-3"}),k("acceptanceCriteria.addCriterion")]})]})}function l(a){return{description:a.description.trim(),required:!!a.required}}function m(a,b){if(a.length!==b.length)return!0;for(let c=0;c<a.length;c++){let d=l(a[c]),e=l(b[c]);if(d.description!==e.description||d.required!==e.required)return!0}return!1}},74798:(a,b,c)=>{c.d(b,{W:()=>e});var d=c(21968);function e(){let[a,b]=(0,d.useState)(!1);return a}},77219:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{XH:()=>h});var e=c(55511),f=c(71255);c(97307);var g=a([f]);f=(g.then?(await g)():g)[0];let i="cho_";function h(){var a;let b=(0,e.randomBytes)(32).toString("base64url"),c=`${i}${b}`,d=(a=c,(0,e.createHash)("sha256").update(a).digest("hex")),f=`${i}${b.slice(0,4)}...${b.slice(-4)}`;return{key:c,hash:d,prefix:f}}d()}catch(a){d(a)}})},88536:(a,b,c)=>{c.d(b,{d:()=>g});var d=c(10837);c(21968);var e=c(15644),f=c(96307);function g({className:a,...b}){return(0,d.jsx)(e.Root,{"data-slot":"switch",className:(0,f.cn)("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:ring-ring/50 inline-flex h-5 w-9 shrink-0 items-center rounded-full border-2 border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",a),...b,children:(0,d.jsx)(e.Thumb,{"data-slot":"switch-thumb",className:(0,f.cn)("bg-background pointer-events-none block size-4 rounded-full ring-0 shadow-lg transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0")})})}},94214:(a,b,c)=>{c.d(b,{AI:()=>h,_8:()=>g});var d=c(10837);c(21968);var e=c(11568),f=c(96307);function g({open:a,onOpenChange:b,header:c,footer:g,children:h,className:i,bodyClassName:j,zIndexClassName:k="z-[110]",showCloseButton:l=!0}){return(0,d.jsx)(e.lG,{open:a,onOpenChange:b,children:(0,d.jsxs)(e.Cf,{className:(0,f.cn)("flex max-h-[85svh] flex-col gap-0 overflow-hidden p-0",k,i),overlayClassName:k,showCloseButton:l,children:[(0,d.jsx)(e.c7,{className:"shrink-0 border-b border-border px-6 py-5 text-left",children:c}),(0,d.jsx)("div",{className:(0,f.cn)("min-h-0 flex-1 overflow-y-auto px-6 py-4",j),children:h}),(0,d.jsx)(e.Es,{className:"shrink-0 border-t border-border px-6 py-5",children:g})]})})}let h=e.L3},99127:(a,b,c)=>{c.d(b,{Bc:()=>g,ZI:()=>j,k$:()=>i,m_:()=>h});var d=c(10837);c(21968);var e=c(80501),f=c(96307);function g({delayDuration:a=0,...b}){return(0,d.jsx)(e.Provider,{"data-slot":"tooltip-provider",delayDuration:a,...b})}function h({...a}){return(0,d.jsx)(e.Root,{"data-slot":"tooltip",...a})}function i({...a}){return(0,d.jsx)(e.Trigger,{"data-slot":"tooltip-trigger",...a})}function j({className:a,sideOffset:b=0,children:c,...g}){return(0,d.jsx)(e.Portal,{children:(0,d.jsxs)(e.Content,{"data-slot":"tooltip-content",sideOffset:b,className:(0,f.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",a),...g,children:[c,(0,d.jsx)(e.Arrow,{className:"bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}}};
@@ -1 +1 @@
1
- "use strict";exports.id=4827,exports.ids=[4827],exports.modules={27473:(a,b,c)=>{c.d(b,{hD:()=>h,OG:()=>k,YB:()=>m,mA:()=>l,FB:()=>j});var d=c(70936),e=c(7046),f=c(65582);let g=new(c(16698)).AsyncLocalStorage;class h extends Error{constructor(a,b,c=400,d){super(b),this.code=a,this.status=c,this.details=d,this.name="ApiError"}}let i={P2002:"Unique constraint violation",P2025:"Record not found",P2003:"Foreign key constraint violation"};function j(a){return async(b,c)=>{let j=crypto.randomUUID(),k=(0,f.q)({requestId:j});return g.run({requestId:j,logger:k},async()=>{try{return await a(b,c)}catch(a){if((g.getStore()?.logger??f.default).error({err:a},"API error"),a instanceof h)return d.NextResponse.json({success:!1,error:{code:a.code,message:a.message,details:a.details}},{status:a.status});if(a&&"object"==typeof a&&"code"in a){let b=i[a.code];if(b){if("P2025"===a.code)return e.sO.notFound();if("P2002"===a.code)return e.sO.conflict(b);return e.sO.database(b)}}if(a instanceof Error)return e.sO.internal("Internal server error");return e.sO.internal()}})}}async function k(a){try{return await a.json()}catch{throw new h("BAD_REQUEST","Invalid JSON body",400)}}function l(a){let b=new URL(a.url),c={};return b.searchParams.forEach((a,b)=>{c[b]=a}),c}function m(a){let b=l(a),c=Math.max(1,parseInt(b.page||"1",10)),d=Math.min(100,Math.max(1,parseInt(b.pageSize||"20",10)));return{page:c,pageSize:d,skip:(c-1)*d,take:d}}},97515:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{BP:()=>x,IH:()=>r,Mx:()=>t,_R:()=>v,hx:()=>s,qU:()=>o,vA:()=>h,y8:()=>u});var e=c(52618),f=c(65582),g=a([e]);e=(g.then?(await g)():g)[0];let w=["claude_code","openclaw","codex","kiro"],x=9e4;function h(a){return null!==a&&"conflict"in a}function i(a,b,c=Date.now()){return"online"===a&&c-b.getTime()<=x}function j(a){let b=i(a.status,a.lastSeenAt)?"online":"offline";return{uuid:a.uuid,agentUuid:a.agentUuid,agentName:a.agent?.name??null,ownerUuid:a.agent?.ownerUuid??null,clientType:a.clientType,clientVersion:a.clientVersion,host:a.host,cwd:a.cwd,startedAt:a.startedAt?a.startedAt.toISOString():null,status:a.status,effectiveStatus:b,connectedAt:a.connectedAt.toISOString(),lastSeenAt:a.lastSeenAt.toISOString(),disconnectedAt:a.disconnectedAt?a.disconnectedAt.toISOString():null,agentInstanceUuid:a.agentInstanceUuid??null}}function k(a){let b=a?.trim();return b?b.toLocaleLowerCase("en-US"):"￿"}function l(a){return null===a?"￿":a}function m(a,b){return a<b?-1:+(a>b)}function n(a){return[...a].sort((a,b)=>a.effectiveStatus!==b.effectiveStatus?"online"===a.effectiveStatus?-1:1:m(k(a.agentName),k(b.agentName))||m(a.agentUuid,b.agentUuid)||m(l(a.cwd),l(b.cwd))||m(a.host,b.host)||m(a.clientType,b.clientType)||m(a.uuid,b.uuid))}function o(a){let b=a.get("clientType")??"",c=a.get("clientVersion"),d=a.get("host"),e=a.get("cwd"),f=null,g=a.get("startedAt");if(g){let a=new Date(g);Number.isNaN(a.getTime())||(f=a)}return{clientType:b,clientVersion:c??null,host:d??null,cwd:e??null,startedAt:f}}async function p(a,b,c,d){let g={companyUuid:a,agentUuid:b,host:c,cwd:d};try{if(null===d){let d=await e.z.agentInstance.findFirst({where:{companyUuid:a,agentUuid:b,host:c,cwd:null},select:{uuid:!0}});if(d)return(await e.z.agentInstance.update({where:{uuid:d.uuid},data:{updatedAt:new Date},select:{uuid:!0}})).uuid;return(await e.z.agentInstance.create({data:g,select:{uuid:!0}})).uuid}return(await e.z.agentInstance.upsert({where:{companyUuid_agentUuid_host_cwd:{companyUuid:a,agentUuid:b,host:c,cwd:d}},create:g,update:{updatedAt:new Date},select:{uuid:!0}})).uuid}catch(e){return f.default.error({err:e,companyUuid:a,agentUuid:b,host:c,cwd:d},"Failed to upsert AgentInstance; connection will register with a null instance link"),null}}async function q(a,b,c,d,f){for(let g of(await e.z.daemonConnection.findMany({where:{agentUuid:a,host:b,cwd:c},select:{status:!0,lastSeenAt:!0,startedAt:!0,clientType:!0}}))){if(!i(g.status,g.lastSeenAt,f))continue;let a=null!==d&&null!==g.startedAt&&g.startedAt.getTime()===d.getTime(),b=null===d&&null===g.startedAt;if(!a&&!b)return{incumbentStartedAt:g.startedAt,incumbentClientType:g.clientType}}return null}async function r(a,b,d){var g;if(g=d.clientType,!w.includes(g))return null;let h=d.host??"",i=d.cwd??null,j=new Date;try{if(null!==i){let c=await q(b,h,i,d.startedAt??null,j.getTime());if(c)return f.default.warn({companyUuid:a,agentUuid:b,host:h,cwd:i,incumbentStartedAt:c.incumbentStartedAt,incomingStartedAt:d.startedAt??null,incumbentClientType:c.incumbentClientType,incomingClientType:d.clientType},"Skipping daemon connection registration: a live daemon already holds this (agent, host, cwd)"),{conflict:!0,host:h,cwd:i}}let g=await p(a,b,h,i),k={companyUuid:a,agentUuid:b,clientType:d.clientType,clientVersion:d.clientVersion??null,host:h,cwd:i,startedAt:d.startedAt??null,status:"online",connectedAt:j,lastSeenAt:j,disconnectedAt:null,agentInstanceUuid:g},l={companyUuid:a,clientVersion:d.clientVersion??null,startedAt:d.startedAt??null,status:"online",connectedAt:j,lastSeenAt:j,disconnectedAt:null,agentInstanceUuid:g};if(null===i){let a=await e.z.daemonConnection.findFirst({where:{agentUuid:b,clientType:d.clientType,host:h,cwd:null},select:{uuid:!0}});if(a){let b=await e.z.daemonConnection.update({where:{uuid:a.uuid},data:l,select:{uuid:!0,connectedAt:!0}});return{uuid:b.uuid,connectedAt:b.connectedAt}}let c=await e.z.daemonConnection.create({data:k,select:{uuid:!0,connectedAt:!0}});return{uuid:c.uuid,connectedAt:c.connectedAt}}let m=await e.z.daemonConnection.findFirst({where:{agentUuid:b,clientType:d.clientType,host:h,cwd:i},select:{uuid:!0,startedAt:!0}}),n=await e.z.daemonConnection.upsert({where:{agentUuid_clientType_host_cwd:{agentUuid:b,clientType:d.clientType,host:h,cwd:i}},create:k,update:l,select:{uuid:!0,connectedAt:!0}}),o=d.startedAt??null,r=m?.startedAt instanceof Date?m.startedAt:null;return m&&null!==r&&null!==o&&r.getTime()!==o.getTime()&&Promise.all([c.e(8481),c.e(7578),c.e(3419),c.e(1114)]).then(c.bind(c,34853)).then(({reconcileOrphanTurns:b})=>b(a,n.uuid,{force:!0})).catch(b=>{f.default.error({err:b,companyUuid:a,connectionUuid:n.uuid},"New-generation orphan-turn reconcile failed to dispatch")}),{uuid:n.uuid,connectedAt:n.connectedAt}}catch(c){return f.default.error({err:c,companyUuid:a,agentUuid:b,clientType:d.clientType},"Failed to register daemon connection"),null}}async function s(a,b){try{await e.z.daemonConnection.updateMany({where:{uuid:b.uuid,companyUuid:a,connectedAt:b.connectedAt},data:{status:"offline",disconnectedAt:new Date}})}catch(c){f.default.error({err:c,companyUuid:a,connectionUuid:b.uuid},"Failed to mark daemon connection disconnected")}}async function t(a,b){try{await e.z.daemonConnection.updateMany({where:{uuid:b.uuid,companyUuid:a,connectedAt:b.connectedAt},data:{status:"online",lastSeenAt:new Date}})}catch(c){f.default.error({err:c,companyUuid:a,connectionUuid:b.uuid},"Failed to touch daemon connection")}}async function u(a,b){let c=await e.z.daemonConnection.findMany({where:{companyUuid:a,agent:{ownerUuid:b}},include:{agent:{select:{name:!0,ownerUuid:!0}}}});return n(c.map(j))}async function v(a,b){let c=await e.z.daemonConnection.findMany({where:{companyUuid:a,agentUuid:b},include:{agent:{select:{name:!0,ownerUuid:!0}}}});return n(c.map(j))}d()}catch(a){d(a)}})}};
1
+ "use strict";exports.id=4827,exports.ids=[4827],exports.modules={27473:(a,b,c)=>{c.d(b,{hD:()=>h,OG:()=>k,YB:()=>m,mA:()=>l,FB:()=>j});var d=c(70936),e=c(7046),f=c(65582);let g=new(c(16698)).AsyncLocalStorage;class h extends Error{constructor(a,b,c=400,d){super(b),this.code=a,this.status=c,this.details=d,this.name="ApiError"}}let i={P2002:"Unique constraint violation",P2025:"Record not found",P2003:"Foreign key constraint violation"};function j(a){return async(b,c)=>{let j=crypto.randomUUID(),k=(0,f.q)({requestId:j});return g.run({requestId:j,logger:k},async()=>{try{return await a(b,c)}catch(a){if((g.getStore()?.logger??f.default).error({err:a},"API error"),a instanceof h)return d.NextResponse.json({success:!1,error:{code:a.code,message:a.message,details:a.details}},{status:a.status});if(a&&"object"==typeof a&&"code"in a){let b=i[a.code];if(b){if("P2025"===a.code)return e.sO.notFound();if("P2002"===a.code)return e.sO.conflict(b);return e.sO.database(b)}}if(a instanceof Error)return e.sO.internal("Internal server error");return e.sO.internal()}})}}async function k(a){try{return await a.json()}catch{throw new h("BAD_REQUEST","Invalid JSON body",400)}}function l(a){let b=new URL(a.url),c={};return b.searchParams.forEach((a,b)=>{c[b]=a}),c}function m(a){let b=l(a),c=Math.max(1,parseInt(b.page||"1",10)),d=Math.min(100,Math.max(1,parseInt(b.pageSize||"20",10)));return{page:c,pageSize:d,skip:(c-1)*d,take:d}}},97515:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{BP:()=>x,IH:()=>r,Mx:()=>t,_R:()=>v,hx:()=>s,qU:()=>o,vA:()=>h,y8:()=>u});var e=c(52618),f=c(65582),g=a([e]);e=(g.then?(await g)():g)[0];let w=["claude_code","openclaw","codex","kiro"],x=9e4;function h(a){return null!==a&&"conflict"in a}function i(a,b,c=Date.now()){return"online"===a&&c-b.getTime()<=x}function j(a){let b=i(a.status,a.lastSeenAt)?"online":"offline";return{uuid:a.uuid,agentUuid:a.agentUuid,agentName:a.agent?.name??null,ownerUuid:a.agent?.ownerUuid??null,clientType:a.clientType,clientVersion:a.clientVersion,host:a.host,cwd:a.cwd,startedAt:a.startedAt?a.startedAt.toISOString():null,status:a.status,effectiveStatus:b,connectedAt:a.connectedAt.toISOString(),lastSeenAt:a.lastSeenAt.toISOString(),disconnectedAt:a.disconnectedAt?a.disconnectedAt.toISOString():null,agentInstanceUuid:a.agentInstanceUuid??null}}function k(a){let b=a?.trim();return b?b.toLocaleLowerCase("en-US"):"￿"}function l(a){return null===a?"￿":a}function m(a,b){return a<b?-1:+(a>b)}function n(a){return[...a].sort((a,b)=>a.effectiveStatus!==b.effectiveStatus?"online"===a.effectiveStatus?-1:1:m(k(a.agentName),k(b.agentName))||m(a.agentUuid,b.agentUuid)||m(l(a.cwd),l(b.cwd))||m(a.host,b.host)||m(a.clientType,b.clientType)||m(a.uuid,b.uuid))}function o(a){let b=a.get("clientType")??"",c=a.get("livenessAck"),d=a.get("clientVersion"),e=a.get("host"),f=a.get("cwd"),g=null,h=a.get("startedAt");if(h){let a=new Date(h);Number.isNaN(a.getTime())||(g=a)}return{clientType:b,livenessAck:c??null,clientVersion:d??null,host:e??null,cwd:f??null,startedAt:g}}async function p(a,b,c,d){let g={companyUuid:a,agentUuid:b,host:c,cwd:d};try{if(null===d){let d=await e.z.agentInstance.findFirst({where:{companyUuid:a,agentUuid:b,host:c,cwd:null},select:{uuid:!0}});if(d)return(await e.z.agentInstance.update({where:{uuid:d.uuid},data:{updatedAt:new Date},select:{uuid:!0}})).uuid;return(await e.z.agentInstance.create({data:g,select:{uuid:!0}})).uuid}return(await e.z.agentInstance.upsert({where:{companyUuid_agentUuid_host_cwd:{companyUuid:a,agentUuid:b,host:c,cwd:d}},create:g,update:{updatedAt:new Date},select:{uuid:!0}})).uuid}catch(e){return f.default.error({err:e,companyUuid:a,agentUuid:b,host:c,cwd:d},"Failed to upsert AgentInstance; connection will register with a null instance link"),null}}async function q(a,b,c,d,f){for(let g of(await e.z.daemonConnection.findMany({where:{agentUuid:a,host:b,cwd:c},select:{status:!0,lastSeenAt:!0,startedAt:!0,clientType:!0}}))){if(!i(g.status,g.lastSeenAt,f))continue;let a=null!==d&&null!==g.startedAt&&g.startedAt.getTime()===d.getTime(),b=null===d&&null===g.startedAt;if(!a&&!b)return{incumbentStartedAt:g.startedAt,incumbentClientType:g.clientType}}return null}async function r(a,b,d){var g;if(g=d.clientType,!w.includes(g))return null;let h=d.host??"",i=d.cwd??null,j=new Date;try{if(null!==i){let c=await q(b,h,i,d.startedAt??null,j.getTime());if(c)return f.default.warn({companyUuid:a,agentUuid:b,host:h,cwd:i,incumbentStartedAt:c.incumbentStartedAt,incomingStartedAt:d.startedAt??null,incumbentClientType:c.incumbentClientType,incomingClientType:d.clientType},"Skipping daemon connection registration: a live daemon already holds this (agent, host, cwd)"),{conflict:!0,host:h,cwd:i}}let g=await p(a,b,h,i),k={companyUuid:a,agentUuid:b,clientType:d.clientType,clientVersion:d.clientVersion??null,host:h,cwd:i,startedAt:d.startedAt??null,status:"online",connectedAt:j,lastSeenAt:j,disconnectedAt:null,agentInstanceUuid:g},l={companyUuid:a,clientVersion:d.clientVersion??null,startedAt:d.startedAt??null,status:"online",connectedAt:j,lastSeenAt:j,disconnectedAt:null,agentInstanceUuid:g};if(null===i){let a=await e.z.daemonConnection.findFirst({where:{agentUuid:b,clientType:d.clientType,host:h,cwd:null},select:{uuid:!0}});if(a){let b=await e.z.daemonConnection.update({where:{uuid:a.uuid},data:l,select:{uuid:!0,connectedAt:!0}});return{uuid:b.uuid,connectedAt:b.connectedAt}}let c=await e.z.daemonConnection.create({data:k,select:{uuid:!0,connectedAt:!0}});return{uuid:c.uuid,connectedAt:c.connectedAt}}let m=await e.z.daemonConnection.findFirst({where:{agentUuid:b,clientType:d.clientType,host:h,cwd:i},select:{uuid:!0,startedAt:!0}}),n=await e.z.daemonConnection.upsert({where:{agentUuid_clientType_host_cwd:{agentUuid:b,clientType:d.clientType,host:h,cwd:i}},create:k,update:l,select:{uuid:!0,connectedAt:!0}}),o=d.startedAt??null,r=m?.startedAt instanceof Date?m.startedAt:null;return m&&null!==r&&null!==o&&r.getTime()!==o.getTime()&&Promise.all([c.e(8481),c.e(7578),c.e(3419),c.e(1114)]).then(c.bind(c,34853)).then(({reconcileOrphanTurns:b})=>b(a,n.uuid,{force:!0})).catch(b=>{f.default.error({err:b,companyUuid:a,connectionUuid:n.uuid},"New-generation orphan-turn reconcile failed to dispatch")}),{uuid:n.uuid,connectedAt:n.connectedAt}}catch(c){return f.default.error({err:c,companyUuid:a,agentUuid:b,clientType:d.clientType},"Failed to register daemon connection"),null}}async function s(a,b){try{await e.z.daemonConnection.updateMany({where:{uuid:b.uuid,companyUuid:a,connectedAt:b.connectedAt},data:{status:"offline",disconnectedAt:new Date}})}catch(c){f.default.error({err:c,companyUuid:a,connectionUuid:b.uuid},"Failed to mark daemon connection disconnected")}}async function t(a,b,c){try{return(await e.z.daemonConnection.updateMany({where:{uuid:b.uuid,companyUuid:a,connectedAt:b.connectedAt,...c?{agentUuid:c}:{}},data:{status:"online",lastSeenAt:new Date}})).count>0}catch(c){return f.default.error({err:c,companyUuid:a,connectionUuid:b.uuid},"Failed to touch daemon connection"),!1}}async function u(a,b){let c=await e.z.daemonConnection.findMany({where:{companyUuid:a,agent:{ownerUuid:b}},include:{agent:{select:{name:!0,ownerUuid:!0}}}});return n(c.map(j))}async function v(a,b){let c=await e.z.daemonConnection.findMany({where:{companyUuid:a,agentUuid:b},include:{agent:{select:{name:!0,ownerUuid:!0}}}});return n(c.map(j))}d()}catch(a){d(a)}})}};