@chorus-aidlc/chorus 0.13.2 → 0.14.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 (714) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +485 -409
  3. package/.next/standalone/.next/app-path-routes-manifest.json +30 -27
  4. package/.next/standalone/.next/build-manifest.json +5 -5
  5. package/.next/standalone/.next/prerender-manifest.json +36 -36
  6. package/.next/standalone/.next/react-loadable-manifest.json +1 -1
  7. package/.next/standalone/.next/routes-manifest.json +16 -0
  8. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js +1 -1
  9. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js.nft.json +1 -1
  10. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js +2 -2
  12. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js.nft.json +1 -1
  13. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js +2 -2
  15. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js.nft.json +1 -1
  16. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +2 -2
  18. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js +2 -2
  21. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js +2 -2
  24. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js +2 -2
  27. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page_client-reference-manifest.js +1 -1
  29. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +2 -2
  30. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +2 -2
  33. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +2 -2
  36. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
  38. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
  39. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
  40. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
  41. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
  42. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js +3 -3
  45. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
  46. package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js +2 -2
  48. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/_not-found/page.js +2 -2
  51. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  52. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/_not-found.html +122 -1
  54. package/.next/standalone/.next/server/app/_not-found.rsc +18 -16
  55. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page.js +2 -2
  56. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/admin/companies/new/page.js +1 -1
  59. package/.next/standalone/.next/server/app/admin/companies/new/page.js.nft.json +1 -1
  60. package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
  61. package/.next/standalone/.next/server/app/admin/companies/new.html +122 -1
  62. package/.next/standalone/.next/server/app/admin/companies/new.rsc +25 -23
  63. package/.next/standalone/.next/server/app/admin/companies/page.js +1 -1
  64. package/.next/standalone/.next/server/app/admin/companies/page.js.nft.json +1 -1
  65. package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/admin/companies.html +122 -1
  67. package/.next/standalone/.next/server/app/admin/companies.rsc +25 -23
  68. package/.next/standalone/.next/server/app/admin/page.js +1 -1
  69. package/.next/standalone/.next/server/app/admin/page.js.nft.json +1 -1
  70. package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/admin.html +122 -1
  72. package/.next/standalone/.next/server/app/admin.rsc +25 -23
  73. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
  75. package/.next/standalone/.next/server/app/api/admin/login/route.js +1 -1
  76. package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/api/admin/session/route.js +1 -1
  78. package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/api/agent-connections/route.js.nft.json +1 -1
  80. package/.next/standalone/.next/server/app/api/agent-connections/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js +1 -1
  83. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js.nft.json +1 -1
  84. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  85. package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
  87. package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/app/api/auth/callback/route.js +1 -1
  89. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  90. package/.next/standalone/.next/server/app/api/auth/check-default/route.js +1 -1
  91. package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/api/auth/company-oidc/route.js +1 -1
  93. package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/.next/server/app/api/auth/default-login/route.js +1 -1
  95. package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
  96. package/.next/standalone/.next/server/app/api/auth/identify/route.js +1 -1
  97. package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/api/auth/me/route.js +1 -1
  100. package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
  101. package/.next/standalone/.next/server/app/api/auth/sync-token/route.js +1 -1
  102. package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
  103. package/.next/standalone/.next/server/app/api/comments/route.js +1 -1
  104. package/.next/standalone/.next/server/app/api/comments/route.js.nft.json +1 -1
  105. package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
  106. package/.next/standalone/.next/server/app/api/daemon/control/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-sessions/[sessionUuid]/instruction/route.js +1 -1
  129. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js.nft.json +1 -1
  130. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route_client-reference-manifest.js +1 -1
  131. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js +1 -1
  132. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js.nft.json +1 -1
  133. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js +1 -1
  135. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js.nft.json +1 -1
  136. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route_client-reference-manifest.js +1 -1
  137. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js +1 -1
  138. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js.nft.json +1 -1
  139. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route_client-reference-manifest.js +1 -1
  140. package/.next/standalone/.next/server/app/api/daemon-sessions/route.js +1 -1
  141. package/.next/standalone/.next/server/app/api/daemon-sessions/route.js.nft.json +1 -1
  142. package/.next/standalone/.next/server/app/api/daemon-sessions/route_client-reference-manifest.js +1 -1
  143. package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
  144. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js +1 -1
  145. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js.nft.json +1 -1
  146. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route_client-reference-manifest.js +1 -1
  147. package/.next/standalone/.next/server/app/api/events/notifications/route.js +1 -1
  148. package/.next/standalone/.next/server/app/api/events/notifications/route.js.nft.json +1 -1
  149. package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
  150. package/.next/standalone/.next/server/app/api/events/route.js +1 -1
  151. package/.next/standalone/.next/server/app/api/events/route.js.nft.json +1 -1
  152. package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  153. package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  154. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js +1 -1
  155. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js.nft.json +1 -1
  156. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
  157. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js +1 -1
  158. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js.nft.json +1 -1
  159. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
  160. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js +1 -1
  161. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js.nft.json +1 -1
  162. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
  163. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js +1 -1
  164. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js.nft.json +1 -1
  165. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route_client-reference-manifest.js +1 -1
  166. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js +1 -1
  167. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js.nft.json +1 -1
  168. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
  169. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js +1 -1
  170. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js.nft.json +1 -1
  171. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
  172. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route.js +1 -0
  173. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route.js.nft.json +1 -0
  174. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route_client-reference-manifest.js +1 -0
  175. package/.next/standalone/.next/server/app/api/ideas/conversational/route.js +1 -1
  176. package/.next/standalone/.next/server/app/api/ideas/conversational/route.js.nft.json +1 -1
  177. package/.next/standalone/.next/server/app/api/ideas/conversational/route_client-reference-manifest.js +1 -1
  178. package/.next/standalone/.next/server/app/api/mcp/route.js +6 -6
  179. package/.next/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
  180. package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  181. package/.next/standalone/.next/server/app/api/me/assignments/route.js +1 -1
  182. package/.next/standalone/.next/server/app/api/me/assignments/route.js.nft.json +1 -1
  183. package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
  184. package/.next/standalone/.next/server/app/api/mentionables/route.js +1 -1
  185. package/.next/standalone/.next/server/app/api/mentionables/route.js.nft.json +1 -1
  186. package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
  187. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js +1 -1
  188. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js.nft.json +1 -1
  189. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
  190. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js +1 -1
  191. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js.nft.json +1 -1
  192. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
  193. package/.next/standalone/.next/server/app/api/notifications/preferences/route.js +1 -1
  194. package/.next/standalone/.next/server/app/api/notifications/preferences/route.js.nft.json +1 -1
  195. package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
  196. package/.next/standalone/.next/server/app/api/notifications/read-all/route.js +1 -1
  197. package/.next/standalone/.next/server/app/api/notifications/read-all/route.js.nft.json +1 -1
  198. package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
  199. package/.next/standalone/.next/server/app/api/notifications/route.js +1 -1
  200. package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
  201. package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  202. package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js +1 -1
  203. package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js.nft.json +1 -1
  204. package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
  205. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
  206. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
  207. package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
  208. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
  209. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js +1 -1
  210. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js.nft.json +1 -1
  211. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
  212. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
  213. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
  214. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js +1 -1
  215. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js.nft.json +1 -1
  216. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
  217. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js +1 -1
  218. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js.nft.json +1 -1
  219. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
  220. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
  221. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
  222. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
  223. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js +1 -1
  224. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js.nft.json +1 -1
  225. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route_client-reference-manifest.js +1 -1
  226. package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
  227. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
  228. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js +1 -1
  229. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js.nft.json +1 -1
  230. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
  231. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js +1 -1
  232. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js.nft.json +1 -1
  233. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
  234. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  235. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
  236. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
  237. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
  238. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
  239. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
  240. package/.next/standalone/.next/server/app/api/references/[uuid]/route.js +1 -0
  241. package/.next/standalone/.next/server/app/api/references/[uuid]/route.js.nft.json +1 -0
  242. package/.next/standalone/.next/server/app/api/references/[uuid]/route_client-reference-manifest.js +1 -0
  243. package/.next/standalone/.next/server/app/api/references/route.js +1 -0
  244. package/.next/standalone/.next/server/app/api/references/route.js.nft.json +1 -0
  245. package/.next/standalone/.next/server/app/api/references/route_client-reference-manifest.js +1 -0
  246. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  247. package/.next/standalone/.next/server/app/api/session/route_client-reference-manifest.js +1 -1
  248. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js +1 -1
  249. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js.nft.json +1 -1
  250. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
  251. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js +1 -1
  252. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js.nft.json +1 -1
  253. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
  254. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js +1 -1
  255. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js.nft.json +1 -1
  256. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
  257. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js +1 -1
  258. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js.nft.json +1 -1
  259. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
  260. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js +1 -1
  261. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js.nft.json +1 -1
  262. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
  263. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js +1 -1
  264. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js.nft.json +1 -1
  265. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
  266. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js +1 -1
  267. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js.nft.json +1 -1
  268. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  269. package/.next/standalone/.next/server/app/index.html +122 -1
  270. package/.next/standalone/.next/server/app/index.rsc +22 -20
  271. package/.next/standalone/.next/server/app/login/admin/page.js +2 -2
  272. package/.next/standalone/.next/server/app/login/admin/page.js.nft.json +1 -1
  273. package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
  274. package/.next/standalone/.next/server/app/login/admin.html +122 -1
  275. package/.next/standalone/.next/server/app/login/admin.rsc +22 -20
  276. package/.next/standalone/.next/server/app/login/callback/page.js +2 -2
  277. package/.next/standalone/.next/server/app/login/callback/page.js.nft.json +1 -1
  278. package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
  279. package/.next/standalone/.next/server/app/login/callback.html +122 -1
  280. package/.next/standalone/.next/server/app/login/callback.rsc +22 -20
  281. package/.next/standalone/.next/server/app/login/page.js +2 -2
  282. package/.next/standalone/.next/server/app/login/page.js.nft.json +1 -1
  283. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  284. package/.next/standalone/.next/server/app/login/pick-workspace/page.js +2 -2
  285. package/.next/standalone/.next/server/app/login/pick-workspace/page.js.nft.json +1 -1
  286. package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
  287. package/.next/standalone/.next/server/app/login/pick-workspace.html +122 -1
  288. package/.next/standalone/.next/server/app/login/pick-workspace.rsc +22 -20
  289. package/.next/standalone/.next/server/app/login.html +122 -1
  290. package/.next/standalone/.next/server/app/login.rsc +22 -20
  291. package/.next/standalone/.next/server/app/onboarding/page.js +2 -2
  292. package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
  293. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  294. package/.next/standalone/.next/server/app/onboarding.html +122 -1
  295. package/.next/standalone/.next/server/app/onboarding.rsc +22 -20
  296. package/.next/standalone/.next/server/app/page.js +2 -2
  297. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  298. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  299. package/.next/standalone/.next/server/app/projects.html +122 -1
  300. package/.next/standalone/.next/server/app/projects.rsc +25 -23
  301. package/.next/standalone/.next/server/app/settings.html +122 -1
  302. package/.next/standalone/.next/server/app/settings.rsc +25 -23
  303. package/.next/standalone/.next/server/app-paths-manifest.json +30 -27
  304. package/.next/standalone/.next/server/chunks/1114.js +1 -0
  305. package/.next/standalone/.next/server/chunks/1173.js +1 -0
  306. package/.next/standalone/.next/server/chunks/1286.js +32 -0
  307. package/.next/standalone/.next/server/chunks/1559.js +2 -2
  308. package/.next/standalone/.next/server/chunks/2382.js +1 -0
  309. package/.next/standalone/.next/server/chunks/2463.js +1 -0
  310. package/.next/standalone/.next/server/chunks/2618.js +1 -1
  311. package/.next/standalone/.next/server/chunks/2961.js +1 -1
  312. package/.next/standalone/.next/server/chunks/3219.js +1 -1
  313. package/.next/standalone/.next/server/chunks/3419.js +1 -1
  314. package/.next/standalone/.next/server/chunks/{8322.js → 378.js} +125 -2
  315. package/.next/standalone/.next/server/chunks/4545.js +1 -0
  316. package/.next/standalone/.next/server/chunks/{5957.js → 4797.js} +1 -1
  317. package/.next/standalone/.next/server/chunks/4827.js +1 -1
  318. package/.next/standalone/.next/server/chunks/{1343.js → 5201.js} +2 -2
  319. package/.next/standalone/.next/server/chunks/5245.js +1 -0
  320. package/.next/standalone/.next/server/chunks/5300.js +1 -1
  321. package/.next/standalone/.next/server/chunks/6113.js +1 -1
  322. package/.next/standalone/.next/server/chunks/6207.js +1 -1
  323. package/.next/standalone/.next/server/chunks/6396.js +1 -0
  324. package/.next/standalone/.next/server/chunks/{796.js → 6492.js} +10 -10
  325. package/.next/standalone/.next/server/chunks/{8577.js → 6506.js} +3 -3
  326. package/.next/standalone/.next/server/chunks/6515.js +6 -0
  327. package/.next/standalone/.next/server/chunks/6646.js +1 -0
  328. package/.next/standalone/.next/server/chunks/679.js +1 -1
  329. package/.next/standalone/.next/server/chunks/7091.js +1 -0
  330. package/.next/standalone/.next/server/chunks/7364.js +1 -1
  331. package/.next/standalone/.next/server/chunks/7368.js +1 -1
  332. package/.next/standalone/.next/server/chunks/7530.js +1 -0
  333. package/.next/standalone/.next/server/chunks/7635.js +1 -0
  334. package/.next/standalone/.next/server/chunks/7762.js +1 -0
  335. package/.next/standalone/.next/server/chunks/8062.js +1 -0
  336. package/.next/standalone/.next/server/chunks/8204.js +1 -0
  337. package/.next/standalone/.next/server/chunks/8396.js +1 -0
  338. package/.next/standalone/.next/server/chunks/8454.js +1 -0
  339. package/.next/standalone/.next/server/chunks/920.js +1 -1
  340. package/.next/standalone/.next/server/chunks/9213.js +1 -0
  341. package/.next/standalone/.next/server/chunks/9378.js +1 -0
  342. package/.next/standalone/.next/server/chunks/951.js +1 -0
  343. package/.next/standalone/.next/server/chunks/9979.js +1 -0
  344. package/.next/standalone/.next/server/instrumentation.js +1 -1
  345. package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
  346. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  347. package/.next/standalone/.next/server/middleware-react-loadable-manifest.js +1 -1
  348. package/.next/standalone/.next/server/pages/404.html +122 -1
  349. package/.next/standalone/.next/server/pages/500.html +1 -1
  350. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  351. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  352. package/.next/standalone/.next/static/C9o43aSSZ0ebgki6mQ0-b/_buildManifest.js +1 -0
  353. package/.next/standalone/.next/static/chunks/11595.7784dfe509c100a4.js +1 -0
  354. package/.next/standalone/.next/static/chunks/{58037-55d7422c6b808356.js → 14655-4f3bc7f3044c42c1.js} +1 -1
  355. package/.next/standalone/.next/static/chunks/{15183-5734d279b26e9414.js → 15183-3f43af926186f7ef.js} +2 -2
  356. package/.next/standalone/.next/static/chunks/21188-43211c9e40bf0d63.js +10 -0
  357. package/.next/standalone/.next/static/chunks/21932-bce5ba937d1603e1.js +1 -0
  358. package/.next/standalone/.next/static/chunks/24537-ef5b301140cf3a58.js +1 -0
  359. package/.next/standalone/.next/static/chunks/27030-3ae1d0e29245b23e.js +1 -0
  360. package/.next/standalone/.next/static/chunks/27290-2f874213668491c8.js +124 -0
  361. package/.next/standalone/.next/static/chunks/28680-dff79c4467712199.js +1 -0
  362. package/.next/standalone/.next/static/chunks/32331-87ae9bc7517c7947.js +1 -0
  363. package/.next/standalone/.next/static/chunks/33456.3bd7ba05bd39259b.js +1 -0
  364. package/.next/standalone/.next/static/chunks/37985-e4683195e4ca2519.js +1 -0
  365. package/.next/standalone/.next/static/chunks/38366.e6e0132b8ba873d6.js +1 -0
  366. package/.next/standalone/.next/static/chunks/38526-7ffc4b7351c15bc4.js +1 -0
  367. package/.next/standalone/.next/static/chunks/39025-13049f9c48e08d6c.js +1 -0
  368. package/.next/standalone/.next/static/chunks/42605-029b5426175cdee9.js +1 -0
  369. package/.next/standalone/.next/static/chunks/43111-7a4e08dc82bb3022.js +1 -0
  370. package/.next/standalone/.next/static/chunks/4860.4803e40814d50dd0.js +1 -0
  371. package/.next/standalone/.next/static/chunks/4939-ff22e2b42ad57f7f.js +1 -0
  372. package/.next/standalone/.next/static/chunks/51603-7fa00971493ae223.js +1 -0
  373. package/.next/standalone/.next/static/chunks/78917-c0a9a11fe437a752.js +1 -0
  374. package/.next/standalone/.next/static/chunks/83285-db8ae107944eb6df.js +1 -0
  375. package/.next/standalone/.next/static/chunks/84169-5beb288902aea242.js +1 -0
  376. package/.next/standalone/.next/static/chunks/84219-09970ab1b85c61f0.js +1 -0
  377. package/.next/standalone/.next/static/chunks/86155-c9b7c2c08d3fa80e.js +1 -0
  378. package/.next/standalone/.next/static/chunks/{27378-9328bcc96ae9872e.js → 87325-dc3239012edcacdc.js} +1 -1
  379. package/.next/standalone/.next/static/chunks/89836-b5ab6a0b32c54f42.js +1 -0
  380. package/.next/standalone/.next/static/chunks/93346-1d4cd71b8713a8a6.js +1 -0
  381. package/.next/standalone/.next/static/chunks/94170-fb8ea86f938a27a5.js +1 -0
  382. package/.next/standalone/.next/static/chunks/99373.0457580c532530bc.js +1 -0
  383. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-00ff2f6753bb4603.js +1 -0
  384. package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/page-5824e6affe244f83.js +1 -0
  385. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page-55ce87d16bc689f3.js +1 -0
  386. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-e5202e9b7669576c.js +1 -0
  387. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-d9323dc8b6c974f7.js +1 -0
  388. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/page-c231207c3674aa54.js +1 -0
  389. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-20054b1cec8ed1d2.js +1 -0
  390. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-c83c5d1b4599e737.js +1 -0
  391. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-7bcaa11ee24b5754.js +1 -0
  392. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-7948aa8db4813091.js +1 -0
  393. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page-278d30ee1dd7e315.js +1 -0
  394. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/page-5a22db5f8504e61d.js +1 -0
  395. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/page-47a17dbadfbc75ad.js +1 -0
  396. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-7fbf5bc58d3dd5b0.js +1 -0
  397. package/.next/standalone/.next/static/chunks/app/admin/companies/[uuid]/page-b2458ed001dc8177.js +1 -0
  398. package/.next/standalone/.next/static/chunks/app/admin/companies/new/page-e35dce890d6dfd8d.js +1 -0
  399. package/.next/standalone/.next/static/chunks/app/admin/layout-c66ce38cbd88982a.js +1 -0
  400. package/.next/standalone/.next/static/chunks/app/api/admin/companies/[uuid]/route-55ce87d16bc689f3.js +1 -0
  401. package/.next/standalone/.next/static/chunks/app/api/admin/companies/route-55ce87d16bc689f3.js +1 -0
  402. package/.next/standalone/.next/static/chunks/app/api/admin/login/route-55ce87d16bc689f3.js +1 -0
  403. package/.next/standalone/.next/static/chunks/app/api/admin/session/route-55ce87d16bc689f3.js +1 -0
  404. package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-55ce87d16bc689f3.js +1 -0
  405. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-55ce87d16bc689f3.js +1 -0
  406. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-55ce87d16bc689f3.js +1 -0
  407. package/.next/standalone/.next/static/chunks/app/api/agents/route-55ce87d16bc689f3.js +1 -0
  408. package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-55ce87d16bc689f3.js +1 -0
  409. package/.next/standalone/.next/static/chunks/app/api/api-keys/route-55ce87d16bc689f3.js +1 -0
  410. package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-55ce87d16bc689f3.js +1 -0
  411. package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-55ce87d16bc689f3.js +1 -0
  412. package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-55ce87d16bc689f3.js +1 -0
  413. package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-55ce87d16bc689f3.js +1 -0
  414. package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-55ce87d16bc689f3.js +1 -0
  415. package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-55ce87d16bc689f3.js +1 -0
  416. package/.next/standalone/.next/static/chunks/app/api/auth/me/route-55ce87d16bc689f3.js +1 -0
  417. package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-55ce87d16bc689f3.js +1 -0
  418. package/.next/standalone/.next/static/chunks/app/api/comments/route-55ce87d16bc689f3.js +1 -0
  419. package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-55ce87d16bc689f3.js +1 -0
  420. package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-55ce87d16bc689f3.js +1 -0
  421. package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-55ce87d16bc689f3.js +1 -0
  422. package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-55ce87d16bc689f3.js +1 -0
  423. package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-55ce87d16bc689f3.js +1 -0
  424. package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-55ce87d16bc689f3.js +1 -0
  425. package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-55ce87d16bc689f3.js +1 -0
  426. package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-55ce87d16bc689f3.js +1 -0
  427. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-55ce87d16bc689f3.js +1 -0
  428. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-55ce87d16bc689f3.js +1 -0
  429. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-55ce87d16bc689f3.js +1 -0
  430. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-55ce87d16bc689f3.js +1 -0
  431. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-55ce87d16bc689f3.js +1 -0
  432. package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-55ce87d16bc689f3.js +1 -0
  433. package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-55ce87d16bc689f3.js +1 -0
  434. package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-55ce87d16bc689f3.js +1 -0
  435. package/.next/standalone/.next/static/chunks/app/api/events/route-55ce87d16bc689f3.js +1 -0
  436. package/.next/standalone/.next/static/chunks/app/api/health/route-55ce87d16bc689f3.js +1 -0
  437. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-55ce87d16bc689f3.js +1 -0
  438. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-55ce87d16bc689f3.js +1 -0
  439. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-55ce87d16bc689f3.js +1 -0
  440. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-55ce87d16bc689f3.js +1 -0
  441. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-55ce87d16bc689f3.js +1 -0
  442. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-55ce87d16bc689f3.js +1 -0
  443. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/wake-preview/route-55ce87d16bc689f3.js +1 -0
  444. package/.next/standalone/.next/static/chunks/app/api/ideas/conversational/route-55ce87d16bc689f3.js +1 -0
  445. package/.next/standalone/.next/static/chunks/app/api/mcp/route-55ce87d16bc689f3.js +1 -0
  446. package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-55ce87d16bc689f3.js +1 -0
  447. package/.next/standalone/.next/static/chunks/app/api/mentionables/route-55ce87d16bc689f3.js +1 -0
  448. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-55ce87d16bc689f3.js +1 -0
  449. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-55ce87d16bc689f3.js +1 -0
  450. package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-55ce87d16bc689f3.js +1 -0
  451. package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-55ce87d16bc689f3.js +1 -0
  452. package/.next/standalone/.next/static/chunks/app/api/notifications/route-55ce87d16bc689f3.js +1 -0
  453. package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-55ce87d16bc689f3.js +1 -0
  454. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-55ce87d16bc689f3.js +1 -0
  455. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-55ce87d16bc689f3.js +1 -0
  456. package/.next/standalone/.next/static/chunks/app/api/project-groups/route-55ce87d16bc689f3.js +1 -0
  457. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-55ce87d16bc689f3.js +1 -0
  458. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-55ce87d16bc689f3.js +1 -0
  459. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-55ce87d16bc689f3.js +1 -0
  460. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-55ce87d16bc689f3.js +1 -0
  461. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-55ce87d16bc689f3.js +1 -0
  462. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-55ce87d16bc689f3.js +1 -0
  463. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-55ce87d16bc689f3.js +1 -0
  464. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-55ce87d16bc689f3.js +1 -0
  465. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-55ce87d16bc689f3.js +1 -0
  466. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/resource-graph/route-55ce87d16bc689f3.js +1 -0
  467. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-55ce87d16bc689f3.js +1 -0
  468. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-55ce87d16bc689f3.js +1 -0
  469. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-55ce87d16bc689f3.js +1 -0
  470. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-55ce87d16bc689f3.js +1 -0
  471. package/.next/standalone/.next/static/chunks/app/api/projects/route-55ce87d16bc689f3.js +1 -0
  472. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-55ce87d16bc689f3.js +1 -0
  473. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-55ce87d16bc689f3.js +1 -0
  474. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-55ce87d16bc689f3.js +1 -0
  475. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-55ce87d16bc689f3.js +1 -0
  476. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-55ce87d16bc689f3.js +1 -0
  477. package/.next/standalone/.next/static/chunks/app/api/references/[uuid]/route-55ce87d16bc689f3.js +1 -0
  478. package/.next/standalone/.next/static/chunks/app/api/references/route-55ce87d16bc689f3.js +1 -0
  479. package/.next/standalone/.next/static/chunks/app/api/search/route-55ce87d16bc689f3.js +1 -0
  480. package/.next/standalone/.next/static/chunks/app/api/session/route-55ce87d16bc689f3.js +1 -0
  481. package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-55ce87d16bc689f3.js +1 -0
  482. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-55ce87d16bc689f3.js +1 -0
  483. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-55ce87d16bc689f3.js +1 -0
  484. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-55ce87d16bc689f3.js +1 -0
  485. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-55ce87d16bc689f3.js +1 -0
  486. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-55ce87d16bc689f3.js +1 -0
  487. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-55ce87d16bc689f3.js +1 -0
  488. package/.next/standalone/.next/static/chunks/app/layout-985054e973f66999.js +1 -0
  489. package/.next/standalone/.next/static/chunks/app/login/admin/page-f032b6db3bd20a2c.js +1 -0
  490. package/.next/standalone/.next/static/chunks/app/login/callback/page-ec23211506e688ee.js +1 -0
  491. package/.next/standalone/.next/static/chunks/app/login/page-9b34375d1b5579d7.js +1 -0
  492. package/.next/standalone/.next/static/chunks/app/login/pick-workspace/page-7e4664af2c787d08.js +1 -0
  493. package/.next/standalone/.next/static/chunks/app/onboarding/{page-8e20c8aa8ff90326.js → page-ece3f647133d446e.js} +1 -1
  494. package/.next/standalone/.next/static/chunks/app/page-79e2d32e69788bd2.js +1 -0
  495. package/.next/standalone/.next/static/chunks/webpack-96be8d6bd0d3d25f.js +1 -0
  496. package/.next/standalone/.next/static/css/5f09fa856a63632f.css +1 -0
  497. package/.next/standalone/package.json +4 -1
  498. package/.next/standalone/public/chorus-plugin/.claude-plugin/plugin.json +1 -1
  499. package/.next/standalone/public/chorus-plugin/skills/brainstorm/SKILL.md +1 -1
  500. package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +8 -1
  501. package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +1 -1
  502. package/.next/standalone/public/chorus-plugin/skills/idea/SKILL.md +32 -1
  503. package/.next/standalone/public/chorus-plugin/skills/openspec-aware/SKILL.md +1 -1
  504. package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +1 -1
  505. package/.next/standalone/public/chorus-plugin/skills/quick-dev/SKILL.md +1 -1
  506. package/.next/standalone/public/chorus-plugin/skills/review/SKILL.md +1 -1
  507. package/.next/standalone/public/chorus-plugin/skills/yolo/SKILL.md +1 -1
  508. package/.next/standalone/public/install-kiro.sh +350 -0
  509. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus-code-reviewer.json +10 -0
  510. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus-proposal-reviewer.json +10 -0
  511. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus-task-reviewer.json +10 -0
  512. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus.json +50 -0
  513. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus.md +62 -0
  514. package/.next/standalone/public/kiro-plugin/.kiro/settings/mcp.json +12 -0
  515. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-brainstorm/SKILL.md +158 -0
  516. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-develop/SKILL.md +421 -0
  517. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-idea/SKILL.md +332 -0
  518. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-openspec-aware/SKILL.md +434 -0
  519. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-proposal/SKILL.md +386 -0
  520. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-quick-dev/SKILL.md +193 -0
  521. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-review/SKILL.md +360 -0
  522. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-yolo/SKILL.md +547 -0
  523. package/.next/standalone/public/kiro-plugin/.kiro/steering/chorus.md +391 -0
  524. package/.next/standalone/public/kiro-plugin/bin/chorus-api.sh +392 -0
  525. package/.next/standalone/public/kiro-plugin/bin/on-agent-spawn.sh +81 -0
  526. package/.next/standalone/public/kiro-plugin/bin/on-post-submit-for-verify.sh +68 -0
  527. package/.next/standalone/public/kiro-plugin/bin/on-post-submit-proposal.sh +76 -0
  528. package/.next/standalone/public/kiro-plugin/bin/on-post-verify-task.sh +119 -0
  529. package/.next/standalone/public/kiro-plugin/bin/on-stop.sh +45 -0
  530. package/.next/standalone/public/kiro-plugin/bin/test-syntax.sh +108 -0
  531. package/.next/standalone/public/skill/brainstorm-chorus/SKILL.md +1 -1
  532. package/.next/standalone/public/skill/chorus/SKILL.md +8 -1
  533. package/.next/standalone/public/skill/code-reviewer-chorus/SKILL.md +1 -1
  534. package/.next/standalone/public/skill/develop-chorus/SKILL.md +1 -1
  535. package/.next/standalone/public/skill/idea-chorus/SKILL.md +32 -1
  536. package/.next/standalone/public/skill/package.json +1 -1
  537. package/.next/standalone/public/skill/proposal-chorus/SKILL.md +2 -1
  538. package/.next/standalone/public/skill/proposal-reviewer-chorus/SKILL.md +1 -1
  539. package/.next/standalone/public/skill/quick-dev-chorus/SKILL.md +1 -1
  540. package/.next/standalone/public/skill/review-chorus/SKILL.md +1 -1
  541. package/.next/standalone/public/skill/task-reviewer-chorus/SKILL.md +1 -1
  542. package/.next/standalone/public/skill/yolo-chorus/SKILL.md +1 -1
  543. package/README.ja.md +464 -0
  544. package/README.ko.md +463 -0
  545. package/README.md +8 -3
  546. package/README.zh.md +8 -3
  547. package/chorus.mjs +4 -0
  548. package/cli/client-args.mjs +19 -8
  549. package/cli/codex-session-map.mjs +9 -79
  550. package/cli/daemon-agent.mjs +12 -7
  551. package/cli/daemon-config.mjs +2 -2
  552. package/cli/daemon-install-config.mjs +213 -0
  553. package/cli/daemon-service.mjs +12 -7
  554. package/cli/daemon.mjs +68 -9
  555. package/cli/kiro-session-map.mjs +49 -0
  556. package/cli/kiro-spawner.mjs +409 -0
  557. package/cli/kiro-transcript.mjs +262 -0
  558. package/cli/prompts.mjs +19 -2
  559. package/cli/session-map.mjs +126 -0
  560. package/cli/spawner-select.mjs +7 -1
  561. package/cli/waker.mjs +18 -3
  562. package/package.json +4 -1
  563. package/prisma/migrations/20260710171801_add_reference_artifact/migration.sql +27 -0
  564. package/prisma/migrations/20260714091007_add_daemon_execution_direct_idea/migration.sql +2 -0
  565. package/prisma/schema.prisma +33 -0
  566. package/.next/standalone/.next/server/chunks/1463.js +0 -1
  567. package/.next/standalone/.next/server/chunks/1512.js +0 -1
  568. package/.next/standalone/.next/server/chunks/3371.js +0 -1
  569. package/.next/standalone/.next/server/chunks/3373.js +0 -1
  570. package/.next/standalone/.next/server/chunks/4958.js +0 -1
  571. package/.next/standalone/.next/server/chunks/5011.js +0 -1
  572. package/.next/standalone/.next/server/chunks/5631.js +0 -1
  573. package/.next/standalone/.next/server/chunks/6496.js +0 -1
  574. package/.next/standalone/.next/server/chunks/6817.js +0 -1
  575. package/.next/standalone/.next/server/chunks/704.js +0 -31
  576. package/.next/standalone/.next/server/chunks/7160.js +0 -1
  577. package/.next/standalone/.next/server/chunks/8448.js +0 -1
  578. package/.next/standalone/.next/server/chunks/8551.js +0 -1
  579. package/.next/standalone/.next/server/chunks/9516.js +0 -1
  580. package/.next/standalone/.next/server/chunks/9855.js +0 -6
  581. package/.next/standalone/.next/static/CIg9Mtv4fKIeKqPY5Rczv/_buildManifest.js +0 -1
  582. package/.next/standalone/.next/static/chunks/16467-dd4f928e725306c1.js +0 -1
  583. package/.next/standalone/.next/static/chunks/1892-9c03d4d3560ff572.js +0 -1
  584. package/.next/standalone/.next/static/chunks/225-7b0507c29df705f1.js +0 -1
  585. package/.next/standalone/.next/static/chunks/24459-3bc9657d71c77b47.js +0 -1
  586. package/.next/standalone/.next/static/chunks/38366.62260b57e5f4b09d.js +0 -1
  587. package/.next/standalone/.next/static/chunks/46055-f786ace4b994dc40.js +0 -1
  588. package/.next/standalone/.next/static/chunks/4860.18e9c1a01636e309.js +0 -1
  589. package/.next/standalone/.next/static/chunks/52064-74d81c8d682deb6b.js +0 -1
  590. package/.next/standalone/.next/static/chunks/57362-9ece5cc290dab705.js +0 -1
  591. package/.next/standalone/.next/static/chunks/63820-551bca4e19d0119c.js +0 -1
  592. package/.next/standalone/.next/static/chunks/64187-cff8a4b5e96fa8f9.js +0 -10
  593. package/.next/standalone/.next/static/chunks/68255-05c42a26602c6b37.js +0 -1
  594. package/.next/standalone/.next/static/chunks/71350-88c2649fc693c1e8.js +0 -1
  595. package/.next/standalone/.next/static/chunks/75752-cc8fafe132943baa.js +0 -1
  596. package/.next/standalone/.next/static/chunks/80350-20c953d484f262ff.js +0 -1
  597. package/.next/standalone/.next/static/chunks/84169-71a87d06871ec9df.js +0 -1
  598. package/.next/standalone/.next/static/chunks/89644-2fee0373b890e8e3.js +0 -1
  599. package/.next/standalone/.next/static/chunks/93346-b3e1ebe948fc623f.js +0 -1
  600. package/.next/standalone/.next/static/chunks/94743-aff8a51a7f7970a9.js +0 -1
  601. package/.next/standalone/.next/static/chunks/96752-ad15cc38599f12e2.js +0 -1
  602. package/.next/standalone/.next/static/chunks/97306-8834e12cdbeed920.js +0 -1
  603. package/.next/standalone/.next/static/chunks/99373.c4a36dcd46ec841e.js +0 -1
  604. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-a3747bde1ddaba52.js +0 -1
  605. package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/page-87b79c98e46fbd04.js +0 -1
  606. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page-47e1d397c5fcef9e.js +0 -1
  607. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-b2db3da2d7945904.js +0 -1
  608. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-0467d744b84aa2c2.js +0 -1
  609. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/page-7abff55f9bfebab3.js +0 -1
  610. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-b3b2b2ba3d60893e.js +0 -1
  611. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-0aff1fa7a814188c.js +0 -1
  612. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-6dbfbe5d97855e42.js +0 -1
  613. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-b8fbcac7224342db.js +0 -1
  614. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page-0a04a31e1b383094.js +0 -1
  615. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/page-e2a69b645ec9ae13.js +0 -1
  616. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/page-b760877bfcd12dff.js +0 -1
  617. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-111aed4d3319d64b.js +0 -1
  618. package/.next/standalone/.next/static/chunks/app/admin/companies/[uuid]/page-cc2fe0c5b749cd2f.js +0 -1
  619. package/.next/standalone/.next/static/chunks/app/admin/companies/new/page-4f3b3c449c61f6d2.js +0 -1
  620. package/.next/standalone/.next/static/chunks/app/admin/layout-50c9b40750f734be.js +0 -1
  621. package/.next/standalone/.next/static/chunks/app/api/admin/companies/[uuid]/route-47e1d397c5fcef9e.js +0 -1
  622. package/.next/standalone/.next/static/chunks/app/api/admin/companies/route-47e1d397c5fcef9e.js +0 -1
  623. package/.next/standalone/.next/static/chunks/app/api/admin/login/route-47e1d397c5fcef9e.js +0 -1
  624. package/.next/standalone/.next/static/chunks/app/api/admin/session/route-47e1d397c5fcef9e.js +0 -1
  625. package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-47e1d397c5fcef9e.js +0 -1
  626. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-47e1d397c5fcef9e.js +0 -1
  627. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-47e1d397c5fcef9e.js +0 -1
  628. package/.next/standalone/.next/static/chunks/app/api/agents/route-47e1d397c5fcef9e.js +0 -1
  629. package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-47e1d397c5fcef9e.js +0 -1
  630. package/.next/standalone/.next/static/chunks/app/api/api-keys/route-47e1d397c5fcef9e.js +0 -1
  631. package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-47e1d397c5fcef9e.js +0 -1
  632. package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-47e1d397c5fcef9e.js +0 -1
  633. package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-47e1d397c5fcef9e.js +0 -1
  634. package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-47e1d397c5fcef9e.js +0 -1
  635. package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-47e1d397c5fcef9e.js +0 -1
  636. package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-47e1d397c5fcef9e.js +0 -1
  637. package/.next/standalone/.next/static/chunks/app/api/auth/me/route-47e1d397c5fcef9e.js +0 -1
  638. package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-47e1d397c5fcef9e.js +0 -1
  639. package/.next/standalone/.next/static/chunks/app/api/comments/route-47e1d397c5fcef9e.js +0 -1
  640. package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-47e1d397c5fcef9e.js +0 -1
  641. package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-47e1d397c5fcef9e.js +0 -1
  642. package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-47e1d397c5fcef9e.js +0 -1
  643. package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-47e1d397c5fcef9e.js +0 -1
  644. package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-47e1d397c5fcef9e.js +0 -1
  645. package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-47e1d397c5fcef9e.js +0 -1
  646. package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-47e1d397c5fcef9e.js +0 -1
  647. package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-47e1d397c5fcef9e.js +0 -1
  648. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-47e1d397c5fcef9e.js +0 -1
  649. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-47e1d397c5fcef9e.js +0 -1
  650. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-47e1d397c5fcef9e.js +0 -1
  651. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-47e1d397c5fcef9e.js +0 -1
  652. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-47e1d397c5fcef9e.js +0 -1
  653. package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-47e1d397c5fcef9e.js +0 -1
  654. package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-47e1d397c5fcef9e.js +0 -1
  655. package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-47e1d397c5fcef9e.js +0 -1
  656. package/.next/standalone/.next/static/chunks/app/api/events/route-47e1d397c5fcef9e.js +0 -1
  657. package/.next/standalone/.next/static/chunks/app/api/health/route-47e1d397c5fcef9e.js +0 -1
  658. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-47e1d397c5fcef9e.js +0 -1
  659. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-47e1d397c5fcef9e.js +0 -1
  660. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-47e1d397c5fcef9e.js +0 -1
  661. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-47e1d397c5fcef9e.js +0 -1
  662. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-47e1d397c5fcef9e.js +0 -1
  663. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-47e1d397c5fcef9e.js +0 -1
  664. package/.next/standalone/.next/static/chunks/app/api/ideas/conversational/route-47e1d397c5fcef9e.js +0 -1
  665. package/.next/standalone/.next/static/chunks/app/api/mcp/route-47e1d397c5fcef9e.js +0 -1
  666. package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-47e1d397c5fcef9e.js +0 -1
  667. package/.next/standalone/.next/static/chunks/app/api/mentionables/route-47e1d397c5fcef9e.js +0 -1
  668. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-47e1d397c5fcef9e.js +0 -1
  669. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-47e1d397c5fcef9e.js +0 -1
  670. package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-47e1d397c5fcef9e.js +0 -1
  671. package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-47e1d397c5fcef9e.js +0 -1
  672. package/.next/standalone/.next/static/chunks/app/api/notifications/route-47e1d397c5fcef9e.js +0 -1
  673. package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-47e1d397c5fcef9e.js +0 -1
  674. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-47e1d397c5fcef9e.js +0 -1
  675. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-47e1d397c5fcef9e.js +0 -1
  676. package/.next/standalone/.next/static/chunks/app/api/project-groups/route-47e1d397c5fcef9e.js +0 -1
  677. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-47e1d397c5fcef9e.js +0 -1
  678. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-47e1d397c5fcef9e.js +0 -1
  679. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-47e1d397c5fcef9e.js +0 -1
  680. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-47e1d397c5fcef9e.js +0 -1
  681. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-47e1d397c5fcef9e.js +0 -1
  682. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-47e1d397c5fcef9e.js +0 -1
  683. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-47e1d397c5fcef9e.js +0 -1
  684. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-47e1d397c5fcef9e.js +0 -1
  685. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-47e1d397c5fcef9e.js +0 -1
  686. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/resource-graph/route-47e1d397c5fcef9e.js +0 -1
  687. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-47e1d397c5fcef9e.js +0 -1
  688. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-47e1d397c5fcef9e.js +0 -1
  689. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-47e1d397c5fcef9e.js +0 -1
  690. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-47e1d397c5fcef9e.js +0 -1
  691. package/.next/standalone/.next/static/chunks/app/api/projects/route-47e1d397c5fcef9e.js +0 -1
  692. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-47e1d397c5fcef9e.js +0 -1
  693. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-47e1d397c5fcef9e.js +0 -1
  694. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-47e1d397c5fcef9e.js +0 -1
  695. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-47e1d397c5fcef9e.js +0 -1
  696. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-47e1d397c5fcef9e.js +0 -1
  697. package/.next/standalone/.next/static/chunks/app/api/search/route-47e1d397c5fcef9e.js +0 -1
  698. package/.next/standalone/.next/static/chunks/app/api/session/route-47e1d397c5fcef9e.js +0 -1
  699. package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-47e1d397c5fcef9e.js +0 -1
  700. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-47e1d397c5fcef9e.js +0 -1
  701. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-47e1d397c5fcef9e.js +0 -1
  702. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-47e1d397c5fcef9e.js +0 -1
  703. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-47e1d397c5fcef9e.js +0 -1
  704. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-47e1d397c5fcef9e.js +0 -1
  705. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-47e1d397c5fcef9e.js +0 -1
  706. package/.next/standalone/.next/static/chunks/app/layout-e3a49e06950a057f.js +0 -1
  707. package/.next/standalone/.next/static/chunks/app/login/admin/page-d470135f7aab6c5e.js +0 -1
  708. package/.next/standalone/.next/static/chunks/app/login/callback/page-39a43f6d0245f8ca.js +0 -1
  709. package/.next/standalone/.next/static/chunks/app/login/page-acda3a31dc6a8280.js +0 -1
  710. package/.next/standalone/.next/static/chunks/app/login/pick-workspace/page-10683852baf17426.js +0 -1
  711. package/.next/standalone/.next/static/chunks/app/page-000b1349c8d5b652.js +0 -1
  712. package/.next/standalone/.next/static/chunks/webpack-3551a4c7f9bfe638.js +0 -1
  713. package/.next/standalone/.next/static/css/a80bf83b9122bfc5.css +0 -1
  714. /package/.next/standalone/.next/static/{CIg9Mtv4fKIeKqPY5Rczv → C9o43aSSZ0ebgki6mQ0-b}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[28680],{6985:(e,s,t)=>{t.d(s,{A:()=>a});let a=(0,t(66206).A)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},33896:(e,s,t)=>{t.d(s,{h:()=>r});var a=t(52217);let r=(0,a.createServerReference)("40cba7eba476ad3a06b79101da704c4c548dabd0df",a.callServer,void 0,a.findSourceMapURL,"getBatchWorkerCountsAction")},46422:(e,s,t)=>{t.d(s,{w:()=>r});var a=t(52217);let r=(0,a.createServerReference)("60714d4c7afb225477da48a465b621805b27b81d9f",a.callServer,void 0,a.findSourceMapURL,"addTaskDependencyAction")},59571:(e,s,t)=>{t.d(s,{v:()=>ey});var a=t(90508),r=t(1856),i=t(91814),n=t(39268),c=t(76111),l=t(9160),d=t(5616),o=t(70633),u=t(57893),m=t(5425),x=t(56770),p=t(85226),h=t(62898),g=t(42533),f=t(1861),v=t(66206);let b=(0,v.A)("timer",[["line",{x1:"10",x2:"14",y1:"2",y2:"2",key:"14vaq8"}],["line",{x1:"12",x2:"15",y1:"14",y2:"11",key:"17fdiu"}],["circle",{cx:"12",cy:"14",r:"8",key:"1e1u0o"}]]);var j=t(17475),N=t(60532),k=t(94903),A=t(62482),y=t(6985);let w=(0,v.A)("circle-check-big",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);var F=t(97413),C=t(57731),S=t(48416),E=t(22922),D=t(14554),R=t(15972),_=t(88064),T=t(64993),U=t(91846),q=t(51817),M=t(73693),B=t(84169),L=t(29532),P=t(52217);let I=(0,P.createServerReference)("60dd52a056e2bdad62e763211054323f494029bbc2",P.callServer,void 0,P.findSourceMapURL,"updateTaskStatusAction"),z=(0,P.createServerReference)("408a0b29e2af71ac59260f979c248d43b1c80addf7",P.callServer,void 0,P.findSourceMapURL,"createTaskAction"),$=(0,P.createServerReference)("40259bf65be47c0f51c8118d69cdbce667d6f92856",P.callServer,void 0,P.findSourceMapURL,"updateTaskFieldsAction"),V=(0,P.createServerReference)("601c59aec6d769bbe486f5ea1ccd3fd4270033fd73",P.callServer,void 0,P.findSourceMapURL,"deleteTaskAction"),W=(0,P.createServerReference)("60c39d15d7d5e2a58ed94b8c9b19f8724d4c47c3ee",P.callServer,void 0,P.findSourceMapURL,"markCriteriaAction"),J=(0,P.createServerReference)("604ce86807d55a87dcb46df6e4fe6ad5a9a342be2c",P.callServer,void 0,P.findSourceMapURL,"resetCriterionAction");var O=t(24537),H=t(54410);let G=(0,P.createServerReference)("40c45bb325d7a4ff92af8656e043759509d797907e",P.callServer,void 0,P.findSourceMapURL,"getTaskActivitiesAction"),X=(0,P.createServerReference)("409d5956f55ffeb4dbafef35cff17a8c49682002e0",P.callServer,void 0,P.findSourceMapURL,"getTaskSourceAction");var Z=t(97261),K=t(13108),Q=t(30028),Y=t(17722),ee=t(41033),es=t(78307),et=t(24900);let ea=(0,P.createServerReference)("00b55ac412724660fcc2944f0732e86675d07d87e4",P.callServer,void 0,P.findSourceMapURL,"getDeveloperAgentsAction"),er=(0,P.createServerReference)("40adc2ce26530fef2d53b454c50fe58d7ae4e58c4f",P.callServer,void 0,P.findSourceMapURL,"getAgentInstancesAction"),ei=(0,P.createServerReference)("404d88ba836ceedbda17e933b4b245b934df09d5a8",P.callServer,void 0,P.findSourceMapURL,"claimTaskAction"),en=(0,P.createServerReference)("70ead25f38c4f3d34218e47c0febad4caaa9b8748e",P.callServer,void 0,P.findSourceMapURL,"claimTaskToAgentAction"),ec=(0,P.createServerReference)("607522a12b1c20d12bc0fb698e687b2cc0c8bf7baf",P.callServer,void 0,P.findSourceMapURL,"claimTaskToUserAction"),el=(0,P.createServerReference)("4092a0b3c286d003873de674b9aa38c6a6614dc86e",P.callServer,void 0,P.findSourceMapURL,"releaseTaskAction");function ed(e){var s,t;let{task:c,projectUuid:l,currentUserUuid:d,onClose:o}=e,u=(0,n.c)(),x=(0,i.r)(),[h,g]=(0,r.useState)(!1),[f,v]=(0,r.useState)("self"),[b,j]=(0,r.useState)(""),[N,A]=(0,r.useState)(""),[y,w]=(0,r.useState)([]),[F,C]=(0,r.useState)([]),[S,D]=(0,r.useState)(!0),[R,T]=(0,r.useState)(null),[q,M]=(0,r.useState)([]),[B,L]=(0,r.useState)(!1),[P,I]=(0,r.useState)(null),z=!!c.assignee;(0,r.useEffect)(()=>{!async function(){D(!0);let e=await ea();w(e.agents||[]),C((e.users||[]).filter(e=>e.uuid!==d)),D(!1)}()},[d]),(0,r.useEffect)(()=>{if("agent"!==f||!b){M([]),I(null);return}let e=!1;return L(!0),I(null),er(b).then(s=>{e||M((0,es.C)(s.instances))}).finally(()=>{e||L(!1)}),()=>{e=!0}},[f,b]);let $=null!=(t=q.find(e=>e.connectionUuid===P))?t:null,V=new Set(q.map(e=>e.host)).size>1,W=async()=>{let e;if(g(!0),T(null),"self"===f)e=await ei(c.uuid);else if("agent"===f&&b){var s;e=await en(c.uuid,b,null!=(s=null==$?void 0:$.agentInstanceUuid)?s:void 0)}else if("user"===f&&N)e=await ec(c.uuid,N);else{if("release"!==f)return void g(!1);e=await el(c.uuid)}g(!1),(null==e?void 0:e.success)?(o(),x.refresh()):(null==e?void 0:e.error)&&T(e.error)},J="self"===f||"agent"===f&&b||"user"===f&&N||"release"===f&&z;return(0,a.jsxs)(Y._8,{open:!0,onOpenChange:e=>{e||o()},className:"bg-card sm:max-w-[400px]",header:(0,a.jsx)(Y.AI,{className:"text-base font-semibold text-foreground",children:u("tasks.assignTask")}),footer:(0,a.jsxs)("div",{className:"flex w-full items-center justify-end gap-4",children:[(0,a.jsx)(E.$,{variant:"outline",onClick:o,disabled:h,className:"border-border",children:u("common.cancel")}),(0,a.jsx)(E.$,{onClick:W,disabled:h||!J,className:"bg-primary hover:bg-[#B56A42] text-white",children:h?(0,a.jsx)(p.A,{className:"h-4 w-4 animate-spin"}):"release"===f?u("common.release"):function(){if("agent"!==f||!$)return u("common.assign");let e=(0,et.kn)($.cwd),s=e.isUnknown?u(e.label):e.label,t=(0,et.g9)($.host),a=t.isUnknown?u(t.label):t.label;return V?u("assignInstance.assignToWithHost",{path:s,host:a}):u("assignInstance.assignTo",{path:s})}()})]}),bodyClassName:"space-y-4",children:[(0,a.jsxs)("div",{className:"rounded-lg bg-background p-3",children:[(0,a.jsx)("p",{className:"text-[13px] font-medium text-foreground",children:c.title}),c.description&&(0,a.jsx)("p",{className:"mt-1 text-[11px] text-muted-foreground line-clamp-2",children:c.description})]}),z&&(0,a.jsx)("div",{className:"rounded-lg bg-[#E3F2FD] dark:bg-[#13253a] p-3",children:(0,a.jsxs)("p",{className:"text-xs text-[#1976D2] dark:text-[#5AA9F0]",children:[u("common.currentAssignee"),": ",(0,a.jsx)("span",{className:"font-medium",children:null==(s=c.assignee)?void 0:s.name})]})}),R&&(0,a.jsx)("div",{className:"rounded-lg bg-[#FEE2E2] dark:bg-[#331619] p-3",children:(0,a.jsx)("p",{className:"text-xs text-[#D32F2F] dark:text-[#F08078]",children:R})}),(0,a.jsx)("p",{className:"text-[13px] text-muted-foreground",children:u("assign.selectAssignee")}),S?(0,a.jsx)("div",{className:"flex items-center justify-center py-8",children:(0,a.jsx)(p.A,{className:"h-6 w-6 animate-spin text-[#9A9A9A]"})}):(0,a.jsxs)(ee.z,{value:f,onValueChange:e=>v(e),className:"space-y-3",children:[(0,a.jsxs)("div",{className:"rounded-[10px] p-4 transition-colors cursor-pointer ".concat("self"===f?"bg-[#FDF8F6] dark:bg-[#201d1b] border-2 border-primary":"bg-card border border-border hover:border-primary/50"),onClick:()=>v("self"),children:[(0,a.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,a.jsx)(ee.C,{value:"self",id:"self",className:"border-primary text-primary"}),(0,a.jsx)(_.J,{htmlFor:"self",className:"text-sm font-medium text-foreground cursor-pointer",children:u("assign.assignToMyself")})]}),(0,a.jsx)("p",{className:"mt-2 ml-6 text-xs text-muted-foreground leading-relaxed",children:u("assign.assignToMyselfDesc")})]}),(0,a.jsxs)("div",{className:"rounded-[10px] p-4 transition-colors ".concat("agent"===f?"bg-[#FDF8F6] dark:bg-[#201d1b] border-2 border-primary":"bg-card border border-border"),children:[(0,a.jsxs)("div",{className:"flex items-center gap-2.5 cursor-pointer",onClick:()=>v("agent"),children:[(0,a.jsx)(ee.C,{value:"agent",id:"agent",className:"border-primary text-primary"}),(0,a.jsx)(_.J,{htmlFor:"agent",className:"text-sm font-medium text-foreground cursor-pointer",children:u("assign.orAssignToAgent")})]}),(0,a.jsx)("p",{className:"mt-2 ml-6 text-xs text-muted-foreground leading-relaxed",children:u("tasks.onlySelectedAgentCanWork")}),"agent"===f&&(0,a.jsxs)("div",{className:"mt-3 ml-6 space-y-3",children:[(0,a.jsxs)(U.l6,{value:b,onValueChange:j,children:[(0,a.jsx)(U.bq,{className:"w-full border-border",children:(0,a.jsx)(U.yv,{placeholder:u("tasks.selectAgent")})}),(0,a.jsx)(U.gC,{className:"z-[120]",children:y.length>0?y.map(e=>(0,a.jsx)(U.eb,{value:e.uuid,children:(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(m.A,{className:"h-4 w-4 text-primary"}),(0,a.jsx)("span",{children:e.name})]})},e.uuid)):(0,a.jsx)("div",{className:"px-3 py-2 text-xs text-[#9A9A9A]",children:u("tasks.noAgentsAvailable")})})]}),b&&(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:u("assignInstance.workingDirectory")}),B?(0,a.jsxs)("div",{className:"flex items-center gap-2 py-2 text-xs text-[#9A9A9A]",children:[(0,a.jsx)(p.A,{className:"h-3.5 w-3.5 animate-spin"}),u("assignInstance.loadingInstances")]}):0===q.length?(0,a.jsx)("p",{className:"rounded-lg bg-background p-2.5 text-[11px] leading-relaxed text-muted-foreground",children:u("assignInstance.noInstances")}):(0,a.jsx)(es.O,{instances:q,selectedConnectionUuid:P,onSelect:e=>I(e.connectionUuid),ariaLabel:u("assignInstance.workingDirectory")}),(0,a.jsxs)("div",{className:"flex items-start gap-1.5 text-[11px] leading-relaxed text-[#9A8C7E]",children:[(0,a.jsx)(Q.A,{className:"mt-0.5 h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,a.jsx)("span",{children:u("assignInstance.pinNote")})]})]})]})]}),(0,a.jsxs)("div",{className:"rounded-[10px] p-4 transition-colors ".concat("user"===f?"bg-[#FDF8F6] dark:bg-[#201d1b] border-2 border-primary":"bg-card border border-border"),children:[(0,a.jsxs)("div",{className:"flex items-center gap-2.5 cursor-pointer",onClick:()=>v("user"),children:[(0,a.jsx)(ee.C,{value:"user",id:"user",className:"border-primary text-primary"}),(0,a.jsx)(_.J,{htmlFor:"user",className:"text-sm font-medium text-foreground cursor-pointer",children:u("assign.orAssignToUser")})]}),"user"===f&&(0,a.jsx)("div",{className:"mt-3 ml-6",children:(0,a.jsxs)(U.l6,{value:N,onValueChange:A,children:[(0,a.jsx)(U.bq,{className:"w-full border-border",children:(0,a.jsx)(U.yv,{placeholder:u("tasks.selectUser")})}),(0,a.jsx)(U.gC,{className:"z-[120]",children:F.length>0?F.map(e=>(0,a.jsx)(U.eb,{value:e.uuid,children:(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(k.A,{className:"h-4 w-4 text-muted-foreground"}),(0,a.jsx)("span",{children:e.name||e.email})]})},e.uuid)):(0,a.jsx)("div",{className:"px-3 py-2 text-xs text-[#9A9A9A]",children:u("tasks.noUsersAvailable")})})]})})]}),z&&(0,a.jsxs)("div",{className:"rounded-[10px] p-4 transition-colors cursor-pointer ".concat("release"===f?"bg-[#FDF8F6] dark:bg-[#201d1b] border-2 border-primary":"bg-card border border-border hover:border-primary/50"),onClick:()=>v("release"),children:[(0,a.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,a.jsx)(ee.C,{value:"release",id:"release",className:"border-primary text-primary"}),(0,a.jsx)(_.J,{htmlFor:"release",className:"text-sm font-medium text-foreground cursor-pointer",children:u("assign.releaseAssignee")})]}),(0,a.jsx)("p",{className:"mt-2 ml-6 text-xs text-muted-foreground leading-relaxed",children:u("assign.releaseAssigneeDesc")})]})]})]})}let eo=(0,P.createServerReference)("40aa5a92f5c6504ccf6022cb405ba298b31f79e274",P.callServer,void 0,P.findSourceMapURL,"getTaskDependenciesAction"),eu=(0,P.createServerReference)("40a52493cf6eb5ad91d6a02abdaca60c7b9d8feb65",P.callServer,void 0,P.findSourceMapURL,"getProjectTasksForDependencyAction");var em=t(46422);let ex=(0,P.createServerReference)("60895b7198b1fe2decacbac5ea137868c30e5c3f3d",P.callServer,void 0,P.findSourceMapURL,"removeTaskDependencyAction"),ep=(0,P.createServerReference)("40b20945b30054e0e4ce9c051749fe4eec44325a15",P.callServer,void 0,P.findSourceMapURL,"getTaskSessionsAction");var eh=t(38106),eg=t(16544),ef=t(65626),ev=t(90795);let eb={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]"},ej={open:"open",assigned:"assigned",in_progress:"inProgress",to_verify:"toVerify",done:"done",closed:"closed"},eN={low:"bg-[#F5F5F5] dark:bg-[#1e1e20] text-[#9A9A9A]",medium:"bg-[#FFF3E0] dark:bg-[#3a2a12] text-[#E65100] dark:text-[#F0A050]",high:"bg-[#FEE2E2] dark:bg-[#331619] text-[#D32F2F] dark:text-[#F08078]",critical:"bg-[#FFCDD2] dark:bg-[#3a181c] text-[#B71C1C] dark:text-[#F08078]"},ek={low:"lowPriority",medium:"mediumPriority",high:"highPriority",critical:"criticalPriority"};function eA(e,s){let t=new Date(e),a=new Date().getTime()-t.getTime(),r=Math.floor(a/6e4),i=Math.floor(a/36e5),n=Math.floor(a/864e5);return r<1?s("time.justNow"):r<60?s("time.minutesAgo",{minutes:r}):i<24?s("time.hoursAgo",{hours:i}):n<7?s("time.daysAgo",{days:n}):(0,eh.r)(t)}function ey(e){var s,t;let{task:v,projectUuid:P,currentUserUuid:Q,mode:Y="overlay",onClose:ee,onCreated:es,onDependencyChange:et,onBack:ea}=e,er=(0,n.c)(),ei=(0,i.r)(),[en,ec]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=setTimeout(()=>ec(!0),300);return()=>clearTimeout(e)},[]);let[el,ey]=(0,r.useState)(!1),[ew,eF]=(0,r.useState)([]),[eC,eS]=(0,r.useState)(!0),[eE,eD]=(0,r.useState)(null),[eR,e_]=(0,r.useState)(!1),[eT,eU]=(0,r.useState)([]),[eq,eM]=(0,r.useState)([]),[eB,eL]=(0,r.useState)(!1),[eP,eI]=(0,r.useState)([]),[ez,e$]=(0,r.useState)(null),[eV,eW]=(0,r.useState)([]),[eJ,eO]=(0,r.useState)([]),eH=null===v,[eG,eX]=(0,r.useState)(eH),[eZ,eK]=(0,r.useState)((null==v?void 0:v.title)||""),[eQ,eY]=(0,r.useState)((null==v?void 0:v.description)||""),[e0,e1]=(0,r.useState)((null==v?void 0:v.priority)||"medium"),[e2,e5]=(0,r.useState)((null==v?void 0:v.storyPoints)!=null?String(v.storyPoints):""),[e9,e3]=(0,r.useState)((null!=(s=null==v?void 0:v.acceptanceCriteriaItems)?s:[]).map(e=>{var s;return{description:e.description,required:null==(s=e.required)||s}})),[e4,e6]=(0,r.useState)(!1),[e7,e8]=(0,r.useState)(null),[se,ss]=(0,r.useState)(!1),st=(0,L.RU)(null!=(t=null==v?void 0:v.assignee)?t:null,{type:"user",uuid:Q}),sa=st&&(null==v?void 0:v.status)==="assigned",sr=st&&(null==v?void 0:v.status)==="in_progress",si=(null==v?void 0:v.status)==="to_verify";(0,r.useEffect)(()=>{async function e(){eS(!0),eF((await G(v.uuid)).activities),eS(!1)}async function s(){v.proposalUuid&&eD(await X(v.proposalUuid))}async function t(){eL(!0);let[e,s]=await Promise.all([eo(v.uuid),eu(P)]);eU(e.dependsOn),eM(e.dependedBy),eI(s.tasks),eL(!1)}async function a(){let e=await ep(v.uuid);e.success&&e.data&&eW(e.data)}v&&(e(),s(),t(),a())},[null==v?void 0:v.uuid,null==v?void 0:v.proposalUuid,P]),(0,r.useEffect)(()=>{eH&&e();async function e(){eI((await eu(P)).tasks)}},[eH,P]),(0,r.useEffect)(()=>{if(v){var e;eX(!1),eK(v.title),eY(v.description||""),e1(v.priority),e5(null!=v.storyPoints?String(v.storyPoints):""),e3((null!=(e=v.acceptanceCriteriaItems)?e:[]).map(e=>{var s;return{description:e.description,required:null==(s=e.required)||s}})),e8(null)}},[null==v?void 0:v.uuid,null==v?void 0:v.title,null==v?void 0:v.description,null==v?void 0:v.priority,null==v?void 0:v.storyPoints,null==v?void 0:v.acceptanceCriteriaItems]);let sn=async e=>{if(!v)return;ey(!0);let s=await I(v.uuid,e);ey(!1),s.success&&(ee(),ei.refresh())},sc=()=>{if(eH)return void ee();if(eX(!1),v){var e;eK(v.title),eY(v.description||""),e1(v.priority),e5(null!=v.storyPoints?String(v.storyPoints):""),e3((null!=(e=v.acceptanceCriteriaItems)?e:[]).map(e=>{var s;return{description:e.description,required:null==(s=e.required)||s}}))}e8(null)},sl=async()=>{if(!eZ.trim())return void e8(er("tasks.titleRequired"));e6(!0),e8(null);let e=e2.trim()?parseFloat(e2):null;if(eH){let s=await z({projectUuid:P,title:eZ.trim(),description:eQ.trim()||void 0,priority:e0,storyPoints:e,acceptanceCriteria:null});e6(!1),s.success?(eJ.length>0&&s.taskUuid&&(await Promise.all(eJ.map(e=>(0,em.w)(s.taskUuid,e.uuid))),null==et||et()),null==es||es(),ee(),ei.refresh()):e8(s.error||er("tasks.createFailed"))}else{var s;let t=(null!=(s=v.acceptanceCriteriaItems)?s:[]).map(e=>{var s;return{description:e.description,required:null==(s=e.required)||s}}),a=e9.filter(e=>e.description.trim().length>0),r=(0,K.K)(t,a);if(r&&0===a.length){e6(!1),e8(er("acceptanceCriteria.atLeastOneRequired"));return}let i=await $({taskUuid:v.uuid,projectUuid:P,title:eZ.trim(),description:eQ.trim()||null,priority:e0,storyPoints:e,...r?{acceptanceCriteriaItems:a.map(e=>({description:e.description.trim(),required:e.required}))}:{}});e6(!1),i.success?(eX(!1),ei.refresh()):e8(i.error||er("tasks.updateFailed"))}},sd=async()=>{if(!v)return;ss(!0);let e=await V(v.uuid,P);ss(!1),e.success&&(ee(),ei.refresh())},so=async e=>{if(!v)return;e$(null);let s=await (0,em.w)(v.uuid,e);if(s.success){let s=eP.find(s=>s.uuid===e);s&&eU(e=>[...e,s]),null==et||et()}else e$(s.error||er("tasks.failedToAddDep"))},su=async e=>{if(!v)return;e$(null);let s=await ex(v.uuid,e);s.success?(eU(s=>s.filter(s=>s.uuid!==e)),null==et||et()):e$(s.error||er("tasks.failedToRemoveDep"))},sm=async e=>{if(!v)return;e$(null);let s=await ex(e,v.uuid);s.success?(eM(s=>s.filter(s=>s.uuid!==e)),null==et||et()):e$(s.error||er("tasks.failedToRemoveDep"))},sx=eP.filter(e=>e.uuid!==(null==v?void 0:v.uuid)&&!eT.some(s=>s.uuid===e.uuid)),sp=eP.filter(e=>!eJ.some(s=>s.uuid===e.uuid)),sh="sidebyside"===Y;return(0,a.jsxs)(a.Fragment,{children:[!sh&&(0,a.jsx)("div",{className:"fixed inset-0 z-40 bg-black/20",onClick:ee}),(0,a.jsxs)("div",{className:"fixed top-14 md:top-0 flex h-[calc(100%-3.5rem)] md:h-full w-full md:w-[480px] flex-col bg-card shadow-xl border-l border-border ".concat(sh?"z-40 ".concat(en?"":"animate-in slide-in-from-right duration-300"):"z-50 right-0 ".concat(en?"":"animate-in slide-in-from-right duration-300")),style:sh?{right:"".concat(ev.L8,"px")}:void 0,children:[(0,a.jsxs)("div",{className:"flex items-center justify-between border-b border-secondary px-6 py-5",children:[ea&&(0,a.jsx)(E.$,{variant:"ghost",size:"icon",className:"mr-2 h-8 w-8 shrink-0",onClick:ea,children:(0,a.jsx)(o.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,a.jsx)("div",{className:"flex-1 min-w-0",children:eG?(0,a.jsx)("h2",{className:"text-base font-semibold text-foreground",children:eH?er("tasks.createTaskTitle"):er("tasks.editTask")}):v?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("h2",{className:"text-base font-semibold text-foreground truncate",children:v.title}),(0,a.jsxs)("div",{className:"mt-1.5 flex items-center gap-2",children:[(0,a.jsx)(C.E,{className:eb[v.status]||"",children:er("status.".concat(ej[v.status]||v.status))}),(0,a.jsx)(C.E,{className:eN[v.priority]||"",children:er("priority.".concat(ek[v.priority]||v.priority))}),v.storyPoints&&(0,a.jsxs)("span",{className:"rounded bg-secondary px-2 py-0.5 text-xs font-medium text-muted-foreground",children:[v.storyPoints,"h"]})]})]}):null}),(0,a.jsxs)("div",{className:"flex items-center gap-2 ml-4",children:[v&&!eG&&(0,a.jsxs)(E.$,{variant:"outline",size:"sm",className:"h-8 gap-1.5 border-border text-foreground",onClick:()=>{var e;v&&(eK(v.title),eY(v.description||""),e1(v.priority),e5(null!=v.storyPoints?String(v.storyPoints):""),e3((null!=(e=v.acceptanceCriteriaItems)?e:[]).map(e=>{var s;return{description:e.description,required:null==(s=e.required)||s}})),e8(null),eX(!0))},children:[(0,a.jsx)(u.A,{className:"h-3.5 w-3.5 text-muted-foreground"}),(0,a.jsx)("span",{className:"text-xs",children:er("common.edit")})]}),(0,a.jsx)(E.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-border",onClick:eG&&!eH?sc:ee,children:(0,a.jsx)(l.A,{className:"h-4 w-4 text-muted-foreground"})})]})]}),(0,a.jsx)(T.F,{className:"flex-1 min-h-0 [&_[data-slot=scroll-area-viewport]>div]:!block",children:(0,a.jsx)("div",{className:"flex min-h-full flex-col px-6 py-5",children:eG?(0,a.jsxs)("div",{className:"space-y-5",children:[e7&&(0,a.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:e7}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(_.J,{htmlFor:"edit-title",className:"text-[13px] font-medium text-foreground",children:er("tasks.titleLabel")}),(0,a.jsx)(D.p,{id:"edit-title",value:eZ,onChange:e=>eK(e.target.value),className:"border-border text-sm focus-visible:ring-primary",autoFocus:!0})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(_.J,{htmlFor:"edit-description",className:"text-[13px] font-medium text-foreground",children:er("tasks.descriptionLabel")}),(0,a.jsx)(R.T,{id:"edit-description",value:eQ,onChange:e=>eY(e.target.value),rows:4,className:"border-border text-sm resize-none focus-visible:ring-primary"})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(_.J,{htmlFor:"edit-priority",className:"text-[13px] font-medium text-foreground",children:er("tasks.priorityLabel")}),(0,a.jsxs)(U.l6,{value:e0,onValueChange:e1,children:[(0,a.jsx)(U.bq,{className:"border-border text-sm focus:ring-primary",children:(0,a.jsx)(U.yv,{})}),(0,a.jsxs)(U.gC,{children:[(0,a.jsx)(U.eb,{value:"low",children:er("priority.low")}),(0,a.jsx)(U.eb,{value:"medium",children:er("priority.medium")}),(0,a.jsx)(U.eb,{value:"high",children:er("priority.high")})]})]})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(_.J,{htmlFor:"edit-story-points",className:"text-[13px] font-medium text-foreground",children:er("tasks.storyPointsLabel")}),(0,a.jsx)(D.p,{id:"edit-story-points",type:"number",min:"0",step:"0.5",value:e2,onChange:e=>e5(e.target.value),className:"border-border text-sm focus-visible:ring-primary"})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(_.J,{className:"text-[13px] font-medium text-foreground",children:er("acceptanceCriteria.title")}),(0,a.jsx)(K.C,{items:e9,onChange:e3})]}),eH&&(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(_.J,{className:"text-[13px] font-medium text-foreground",children:er("tasks.dependencies")}),eJ.length>0&&(0,a.jsx)("div",{className:"space-y-1.5",children:eJ.map(e=>(0,a.jsxs)("div",{className:"group flex items-center justify-between rounded-lg bg-background p-2.5",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 shrink-0 text-primary"}),(0,a.jsx)("span",{className:"text-xs text-foreground truncate",children:e.title}),(0,a.jsx)(C.E,{className:"shrink-0 text-[10px] ".concat(eb[e.status]||""),children:er("status.".concat(ej[e.status]||e.status))})]}),(0,a.jsx)(E.$,{type:"button",variant:"ghost",size:"icon",className:"h-6 w-6 opacity-0 group-hover:opacity-100 transition-opacity ml-2 shrink-0",onClick:()=>eO(s=>s.filter(s=>s.uuid!==e.uuid)),children:(0,a.jsx)(l.A,{className:"h-3.5 w-3.5 text-[#9A9A9A] hover:text-[#D32F2F]"})})]},e.uuid))}),sp.length>0&&(0,a.jsxs)(U.l6,{onValueChange:e=>{let s=eP.find(s=>s.uuid===e);s&&eO(e=>[...e,s])},children:[(0,a.jsx)(U.bq,{className:"h-8 border-border text-xs text-muted-foreground focus:ring-primary",children:(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(d.A,{className:"h-3 w-3"}),(0,a.jsx)(U.yv,{placeholder:er("tasks.addDependency")})]})}),(0,a.jsx)(U.gC,{children:sp.map(e=>(0,a.jsx)(U.eb,{value:e.uuid,children:(0,a.jsx)("span",{className:"truncate",children:e.title})},e.uuid))})]},eJ.length)]})]}):v?(0,a.jsxs)(eg.P.div,{variants:ef.qG,initial:"initial",animate:"animate",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:er("common.assignee")}),(0,a.jsx)("div",{className:"mt-2 flex items-center gap-2.5 rounded-lg bg-background p-3",children:v.assignee?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(M.eu,{className:"h-7 w-7",children:(0,a.jsx)(M.q5,{className:(0,L.bB)(v.assignee)?"bg-primary text-white":"bg-border text-muted-foreground",children:(0,L.bB)(v.assignee)?(0,a.jsx)(m.A,{className:"h-3.5 w-3.5"}):v.assignee.name.charAt(0).toUpperCase()})}),(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-foreground",children:v.assignee.name}),(0,a.jsx)("div",{className:"text-xs text-muted-foreground",children:(0,L.bB)(v.assignee)?"".concat(er("common.agent")," • ").concat(v.assignee.assignedAt?(0,eh.r)(v.assignee.assignedAt):""):er("common.user")}),"agent_instance"===v.assignee.type&&v.assignee.instance&&(0,a.jsx)("div",{className:"mt-1",children:(0,a.jsx)(B.jQ,{cwd:v.assignee.instance.cwd,host:v.assignee.instance.host})})]})]}):(0,a.jsx)("span",{className:"text-sm text-[#9A9A9A]",children:er("common.unassigned")})})]}),eV.length>0&&(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:er("sessions.activeWorkers")}),(0,a.jsx)("div",{className:"mt-2 space-y-1.5",children:eV.map(e=>(0,a.jsxs)("div",{className:"flex items-center gap-2.5 rounded-lg bg-background p-2.5",children:[(0,a.jsx)("div",{className:"h-2 w-2 rounded-full bg-green-500 flex-shrink-0"}),(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("div",{className:"text-xs font-medium text-foreground truncate",children:e.sessionName}),(0,a.jsxs)("div",{className:"text-[10px] text-[#9A9A9A]",children:[e.agentName," \xb7 ",eA(e.checkinAt,er)]})]})]},e.sessionUuid))})]}),(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:er("common.description")}),(0,a.jsx)("div",{className:"mt-2",children:v.description?(0,a.jsx)("div",{className:"prose prose-sm max-w-none text-[13px] leading-relaxed text-foreground",children:(0,a.jsx)(Z.MarkdownContent,{children:v.description})}):(0,a.jsx)("p",{className:"text-sm italic text-[#9A9A9A]",children:er("common.noDescription")})})]}),v.acceptanceCriteria&&!(v.acceptanceCriteriaItems&&v.acceptanceCriteriaItems.length>0)&&(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:er("tasks.acceptanceCriteria")}),(0,a.jsx)("div",{className:"mt-2",children:(0,a.jsx)("div",{className:"prose prose-sm max-w-none text-[13px] leading-relaxed text-foreground",children:(0,a.jsx)(Z.MarkdownContent,{children:v.acceptanceCriteria})})})]}),eE&&(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:er("common.source")}),(0,a.jsx)("a",{href:"/projects/".concat(P,"/proposals/").concat(eE.uuid),className:"mt-2 flex items-center justify-between rounded-lg bg-background p-3 hover:bg-[#F0EDE5] dark:hover:bg-[#26241f] transition-colors",children:(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(x.A,{className:"h-3.5 w-3.5 text-primary"}),(0,a.jsx)("span",{className:"text-xs text-foreground",children:eE.title})]})})]}),(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:er("tasks.dependencies")}),ez&&(0,a.jsx)("div",{className:"mt-2 rounded-lg bg-destructive/10 p-2.5 text-xs text-destructive",children:ez}),eB?(0,a.jsx)("div",{className:"mt-2 flex items-center justify-center py-4",children:(0,a.jsx)(p.A,{className:"h-4 w-4 animate-spin text-[#9A9A9A]"})}):(0,a.jsxs)(a.Fragment,{children:[eT.length>0&&(0,a.jsxs)("div",{className:"mt-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5 mb-1.5",children:[(0,a.jsx)(h.A,{className:"h-3 w-3 text-[#9A9A9A]"}),(0,a.jsx)("span",{className:"text-[10px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:er("tasks.dependsOn")})]}),(0,a.jsx)("div",{className:"space-y-1.5",children:eT.map(e=>(0,a.jsxs)("div",{className:"group flex items-center justify-between rounded-lg bg-background p-3",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 shrink-0 text-primary"}),(0,a.jsx)("span",{className:"text-xs text-foreground truncate",children:e.title}),(0,a.jsx)(C.E,{className:"shrink-0 text-[10px] ".concat(eb[e.status]||""),children:er("status.".concat(ej[e.status]||e.status))})]}),(0,a.jsx)(E.$,{variant:"ghost",size:"icon",className:"h-6 w-6 opacity-0 group-hover:opacity-100 transition-opacity ml-2 shrink-0",onClick:()=>su(e.uuid),children:(0,a.jsx)(l.A,{className:"h-3.5 w-3.5 text-[#9A9A9A] hover:text-[#D32F2F]"})})]},e.uuid))})]}),eq.length>0&&(0,a.jsxs)("div",{className:"mt-3",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5 mb-1.5",children:[(0,a.jsx)(h.A,{className:"h-3 w-3 rotate-180 text-[#9A9A9A]"}),(0,a.jsx)("span",{className:"text-[10px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:er("tasks.blockedByThis")})]}),(0,a.jsx)("div",{className:"space-y-1.5",children:eq.map(e=>(0,a.jsxs)("div",{className:"group flex items-center justify-between rounded-lg bg-background p-3",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,a.jsx)("span",{className:"text-xs text-foreground truncate",children:e.title}),(0,a.jsx)(C.E,{className:"shrink-0 text-[10px] ".concat(eb[e.status]||""),children:er("status.".concat(ej[e.status]||e.status))})]}),(0,a.jsx)(E.$,{variant:"ghost",size:"icon",className:"h-6 w-6 opacity-0 group-hover:opacity-100 transition-opacity ml-2 shrink-0",onClick:()=>sm(e.uuid),children:(0,a.jsx)(l.A,{className:"h-3.5 w-3.5 text-[#9A9A9A] hover:text-[#D32F2F]"})})]},e.uuid))})]}),0===eT.length&&0===eq.length&&(0,a.jsx)("p",{className:"mt-2 text-sm italic text-[#9A9A9A]",children:er("tasks.noDependencies")}),sx.length>0&&(0,a.jsx)("div",{className:"mt-3",children:(0,a.jsxs)(U.l6,{onValueChange:e=>so(e),children:[(0,a.jsx)(U.bq,{className:"h-8 border-border text-xs text-muted-foreground focus:ring-primary",children:(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(d.A,{className:"h-3 w-3"}),(0,a.jsx)(U.yv,{placeholder:er("tasks.addDependency")})]})}),(0,a.jsx)(U.gC,{children:sx.map(e=>(0,a.jsx)(U.eb,{value:e.uuid,children:(0,a.jsx)("span",{className:"truncate",children:e.title})},e.uuid))})]},eT.length)})]})]}),v&&v.acceptanceCriteriaItems&&v.acceptanceCriteriaItems.length>0&&(()=>{let e=v.acceptanceCriteriaItems,s=v.acceptanceSummary,t=e=>"passed"===e?(0,a.jsx)(g.A,{className:"h-4 w-4 text-green-600 dark:text-[#6FD19A]"}):"failed"===e?(0,a.jsx)(f.A,{className:"h-4 w-4 text-red-600 dark:text-[#F08078]"}):(0,a.jsx)(b,{className:"h-4 w-4 text-yellow-600 dark:text-[#E0B44E]"}),r=e=>"passed"===e?"bg-green-50 text-green-700 dark:bg-[#14281a] dark:text-[#6FD19A]":"failed"===e?"bg-red-50 text-red-700 dark:bg-[#331619] dark:text-[#F08078]":"bg-yellow-50 text-yellow-700 dark:bg-[#332a12] dark:text-[#E0B44E]",i=async(e,s)=>{(await W(v.uuid,[{uuid:e,status:s}])).success&&ei.refresh()};return(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:er("acceptanceCriteria.title")}),s&&(0,a.jsx)(C.E,{className:r(v.acceptanceStatus||"pending"),variant:"secondary",children:er("acceptanceCriteria.progress",{passed:s.passed,total:s.total})})]}),(0,a.jsxs)("div",{className:"mt-2 space-y-2",children:[e.map(e=>(0,a.jsx)(S.Zp,{className:"p-3",children:(0,a.jsxs)("div",{className:"flex items-start gap-2",children:[(0,a.jsx)("div",{className:"mt-0.5 shrink-0",children:t(e.status)}),(0,a.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,a.jsx)("span",{className:"text-xs text-foreground",children:e.description}),(0,a.jsx)(C.E,{variant:"outline",className:"text-[10px] shrink-0",children:e.required?er("acceptanceCriteria.required"):er("acceptanceCriteria.optional")})]}),(0,a.jsxs)("div",{className:"mt-2 space-y-1",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 text-[10px]",children:[(0,a.jsx)("span",{className:"text-[#9A9A9A] w-20 shrink-0",children:er("acceptanceCriteria.devSelfCheck")}),(0,a.jsxs)(C.E,{className:"text-[10px] ".concat(r(e.devStatus)),variant:"secondary",children:[t(e.devStatus),(0,a.jsx)("span",{className:"ml-1",children:er("acceptanceCriteria.status.".concat(e.devStatus))})]})]}),(0,a.jsxs)("div",{className:"flex items-center gap-2 text-[10px]",children:[(0,a.jsx)("span",{className:"text-[#9A9A9A] w-20 shrink-0",children:er("acceptanceCriteria.verification")}),(0,a.jsxs)(C.E,{className:"text-[10px] ".concat(r(e.status)),variant:"secondary",children:[t(e.status),(0,a.jsx)("span",{className:"ml-1",children:er("acceptanceCriteria.status.".concat(e.status))})]})]})]}),e.devEvidence&&(0,a.jsxs)("div",{className:"mt-2 rounded bg-background p-2",children:[(0,a.jsx)("span",{className:"text-[10px] font-medium text-[#9A9A9A]",children:er("acceptanceCriteria.devEvidence")}),(0,a.jsx)("p",{className:"text-[11px] text-foreground mt-0.5",children:e.devEvidence})]}),e.evidence&&(0,a.jsxs)("div",{className:"mt-2 rounded bg-background p-2",children:[(0,a.jsx)("span",{className:"text-[10px] font-medium text-[#9A9A9A]",children:er("acceptanceCriteria.verifyEvidence")}),(0,a.jsx)("p",{className:"text-[11px] text-foreground mt-0.5",children:e.evidence})]}),"pending"===e.status?(0,a.jsxs)("div",{className:"mt-2 flex gap-2",children:[(0,a.jsxs)(E.$,{size:"sm",variant:"outline",className:"h-8 min-h-[44px] sm:min-h-0 flex-1 sm:flex-none text-xs text-green-700 dark:text-[#6FD19A] border-green-200 dark:border-[#2a4a34] hover:bg-green-50 dark:hover:bg-[#14281a]",onClick:()=>i(e.uuid,"passed"),children:[(0,a.jsx)(g.A,{className:"h-3.5 w-3.5 mr-1"}),er("acceptanceCriteria.pass")]}),(0,a.jsxs)(E.$,{size:"sm",variant:"outline",className:"h-8 min-h-[44px] sm:min-h-0 flex-1 sm:flex-none text-xs text-red-700 dark:text-[#F08078] border-red-200 dark:border-[#5a2a2e] hover:bg-red-50 dark:hover:bg-[#331619]",onClick:()=>i(e.uuid,"failed"),children:[(0,a.jsx)(f.A,{className:"h-3.5 w-3.5 mr-1"}),er("acceptanceCriteria.fail")]})]}):(0,a.jsx)("div",{className:"mt-2",children:(0,a.jsx)(E.$,{size:"sm",variant:"ghost",className:"h-7 min-h-[44px] sm:min-h-0 text-xs text-[#9A9A9A] hover:text-foreground",onClick:async()=>{(await J(v.uuid,e.uuid)).success&&ei.refresh()},children:er("acceptanceCriteria.undoVerification")})})]})]})},e.uuid)),s&&(s.requiredPending>0||s.requiredFailed>0)&&(0,a.jsxs)("div",{className:"flex items-center gap-2 rounded-lg bg-yellow-50 dark:bg-[#332a12] p-3 mt-2",children:[(0,a.jsx)(j.A,{className:"h-4 w-4 text-yellow-600 dark:text-[#E0B44E] shrink-0"}),(0,a.jsx)("span",{className:"text-xs text-yellow-700 dark:text-[#E0B44E]",children:er("acceptanceCriteria.gateBlocked",{count:s.requiredPending+s.requiredFailed})})]}),s&&0===s.requiredPending&&0===s.requiredFailed&&s.required>0&&(0,a.jsxs)("div",{className:"flex items-center gap-2 rounded-lg bg-green-50 dark:bg-[#14281a] p-3 mt-2",children:[(0,a.jsx)(g.A,{className:"h-4 w-4 text-green-600 dark:text-[#6FD19A] shrink-0"}),(0,a.jsx)("span",{className:"text-xs text-green-700 dark:text-[#6FD19A]",children:er("acceptanceCriteria.gateReady")})]})]})]})})(),(0,a.jsxs)("div",{className:"mt-5 flex-1",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:er("common.activity")}),(0,a.jsx)("div",{className:"mt-2 space-y-3",children:eC?(0,a.jsx)("div",{className:"flex items-center justify-center py-4",children:(0,a.jsx)(p.A,{className:"h-4 w-4 animate-spin text-[#9A9A9A]"})}):0===ew.length?(0,a.jsx)("p",{className:"text-sm text-[#9A9A9A] italic",children:er("common.noActivity")}):ew.map(e=>(0,a.jsxs)("div",{className:"flex items-start gap-2.5",children:[(0,a.jsx)("div",{className:"flex h-5 w-5 items-center justify-center rounded-full bg-secondary",children:(0,a.jsx)("div",{className:"h-2 w-2 rounded-full ".concat(function(e){switch(e){case"task_created":return"bg-primary";case"task_assigned":case"task_claimed":return"bg-[#1976D2]";case"task_started":return"bg-[#5A9E6F]";case"task_submitted":return"bg-[#7B1FA2]";case"task_completed":case"task_verified":return"bg-[#00796B]";case"task_released":return"bg-[#E65100]";default:return"bg-muted-foreground"}}(e.action))})}),(0,a.jsxs)("div",{className:"flex-1",children:[(0,a.jsx)("p",{className:"text-xs text-foreground",children:function(e,s){let t=e.sessionName?"".concat(e.actorName," / ").concat(e.sessionName):e.actorName,{action:a}=e;switch(a){case"task_created":return s("activity.taskCreated",{actor:t});case"task_assigned":return s("activity.taskAssigned",{actor:t});case"task_claimed":return s("activity.taskClaimed",{actor:t});case"task_started":return s("activity.taskStarted",{actor:t});case"task_submitted":return s("activity.taskSubmitted",{actor:t});case"task_completed":case"task_verified":return s("activity.taskCompleted",{actor:t});case"task_released":return s("activity.taskReleased",{actor:t});case"task_status_changed":return s("activity.taskStatusChanged",{actor:t});default:return"".concat(t,": ").concat(a)}}(e,er)}),(0,a.jsx)("p",{className:"text-[10px] text-[#9A9A9A]",children:eA(e.createdAt,er)})]})]},e.uuid))})]}),(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:er("references.title")}),(0,a.jsx)("div",{className:"mt-2",children:(0,a.jsx)(H.ReferencesSection,{targetType:"task",targetUuid:v.uuid,canWrite:!0,compact:!0})})]}),(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:er("comments.title")}),(0,a.jsx)("div",{className:"mt-3",children:(0,a.jsx)(O.$m,{targetType:"task",targetUuid:v.uuid,currentUserUuid:Q,compact:!0})})]})]}):null})}),(0,a.jsx)("div",{className:"border-t border-secondary px-6 py-4",children:(0,a.jsx)("div",{className:"flex items-center gap-3",children:eG?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(E.$,{variant:"outline",className:"border-border",onClick:sc,disabled:e4,children:er("common.cancel")}),(0,a.jsx)(E.$,{className:"bg-primary hover:bg-[#B56A42] text-white",onClick:sl,disabled:e4||!eZ.trim(),children:e4?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(p.A,{className:"mr-2 h-4 w-4 animate-spin"}),er("common.saving")]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(N.A,{className:"mr-2 h-4 w-4"}),eH?er("common.create"):er("tasks.saveChanges")]})})]}):v?(0,a.jsxs)(a.Fragment,{children:["done"!==v.status&&"closed"!==v.status&&(0,a.jsxs)(E.$,{variant:"outline",className:"border-border",onClick:()=>e_(!0),disabled:el,children:[(0,a.jsx)(k.A,{className:"mr-2 h-4 w-4"}),er("common.assign")]}),sa&&(0,a.jsxs)(E.$,{className:"flex-1 bg-[#1976D2] hover:bg-[#1565C0] text-white",onClick:()=>sn("in_progress"),disabled:el,children:[(0,a.jsx)(A.A,{className:"mr-2 h-4 w-4"}),er("tasks.startWork")]}),sr&&(0,a.jsxs)(E.$,{className:"flex-1 bg-[#7B1FA2] hover:bg-[#6A1B9A] text-white",onClick:()=>sn("to_verify"),disabled:el,children:[(0,a.jsx)(y.A,{className:"mr-2 h-4 w-4"}),er("tasks.submitForReview")]}),si&&(0,a.jsxs)(E.$,{className:"flex-1 bg-[#22C55E] hover:bg-[#16A34A] text-white",onClick:()=>sn("done"),disabled:el,children:[(0,a.jsx)(w,{className:"mr-2 h-4 w-4"}),er("tasks.markAsVerified")]}),("done"===v.status||"closed"===v.status)&&(0,a.jsx)("div",{className:"text-sm text-[#9A9A9A] text-center w-full",children:er("tasks.taskCompleted")}),(0,a.jsx)("div",{className:"ml-auto",children:(0,a.jsxs)(q.Lt,{children:[(0,a.jsx)(q.tv,{asChild:!0,children:(0,a.jsx)(E.$,{variant:"outline",size:"icon",className:"h-9 w-9 border-border text-[#D32F2F] dark:text-[#F08078] hover:bg-[#FFEBEE] dark:hover:bg-[#331619] hover:text-[#D32F2F] hover:border-[#D32F2F]",children:(0,a.jsx)(F.A,{className:"h-4 w-4"})})}),(0,a.jsxs)(q.EO,{children:[(0,a.jsxs)(q.wd,{children:[(0,a.jsx)(q.r7,{children:er("tasks.deleteTask")}),(0,a.jsx)(q.$v,{children:er("tasks.deleteTaskConfirm",{title:v.title})})]}),(0,a.jsxs)(q.ck,{children:[(0,a.jsx)(q.Zr,{children:er("common.cancel")}),(0,a.jsx)(q.Rx,{variant:"destructive",onClick:sd,disabled:se,children:se?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(p.A,{className:"mr-2 h-4 w-4 animate-spin"}),er("common.delete")]}):er("common.delete")})]})]})]})})]}):null})})]}),v&&eR&&(0,a.jsx)(ed,{task:v,projectUuid:P,currentUserUuid:Q,onClose:()=>e_(!1)})]})}},70633:(e,s,t)=>{t.d(s,{A:()=>a});let a=(0,t(66206).A)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},81531:(e,s,t)=>{t.d(s,{T:()=>i});var a=t(1856),r=t(23675);function i(e,s){var t;let i=(0,r.useSearchParams)(),n=(0,a.useRef)(!1),c=!n.current;n.current=!0;let l=null!=(t=i.get("panel"))?t:c&&null!=s?s:null,d=i.get("tab"),o=(0,a.useCallback)((s,t)=>{let a=new URLSearchParams(window.location.search);s?a.set("panel",s):a.delete("panel"),t?a.set("tab",t):a.delete("tab");let r=a.toString();return r?"".concat(e,"?").concat(r):e},[e]),u=(0,a.useCallback)((e,s)=>{window.history.replaceState(null,"",o(e,s))},[o]),m=(0,a.useCallback)(()=>{window.history.replaceState(null,"",o(null))},[o]),x=(0,a.useCallback)(e=>{l&&window.history.replaceState(null,"",o(l,e))},[o,l]);return{selectedId:l,selectedTab:d,openPanel:u,closePanel:m,switchTab:x}}},90795:(e,s,t)=>{t.d(s,{Bj:()=>l,L8:()=>r,Wl:()=>d,_5:()=>c,eT:()=>i,fw:()=>n});var a=t(38106);let r=480;function i(e){switch(e){case"done":return"bg-[#00796B]";case"in_progress":return"bg-[#1976D2]";case"to_verify":return"bg-[#7B1FA2]";case"open":case"assigned":return"bg-[#E65100]";case"closed":return"bg-[#9A9A9A]";default:return"bg-[#D9D9D9]"}}function n(e,s){let t=new Date(e),r=new Date().getTime()-t.getTime(),i=Math.floor(r/6e4),n=Math.floor(r/36e5),c=Math.floor(r/864e5);return i<1?s("time.justNow"):i<60?s("time.minutesAgo",{minutes:i}):n<24?s("time.hoursAgo",{hours:n}):c<7?s("time.daysAgo",{days:c}):(0,a.r)(t)}let c={todo:"bg-[#FFF3E0] text-[#E65100] dark:bg-[#3a2a12] dark:text-[#F0A050]",in_progress:"bg-[#E3F2FD] text-[#1976D2] dark:bg-[#13253a] dark:text-[#5AA9F0]",human_conduct_required:"bg-[#F3E5F5] text-[#7B1FA2] dark:bg-[#281630] dark:text-[#C98FE0]",done:"bg-[#E0F2F1] text-[#00796B] dark:bg-[#12292a] dark:text-[#4FD1C0]"},l={todo:"todo",in_progress:"inProgress",human_conduct_required:"humanConductRequired",done:"done"},d={open:"open",researching:"researching",answer_questions:"answerQuestions",planning:"planning",review_proposal:"reviewProposal",building:"building",verify_work:"verifyWork",done:"done"}},92745:(e,s,t)=>{t.d(s,{_u:()=>A,c_:()=>f,nF:()=>k,qK:()=>j});var a=t(90508),r=t(1856),i=t(26145),n=t(75380);t(33805);var c=t(10196),l=t.n(c),d=t(39268),o=t(57731),u=t(49914);let m={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-muted-foreground"},x={open:"#E65100",assigned:"#1976D2",in_progress:"#5A9E6F",to_verify:"#7B1FA2",done:"#00796B",closed:"#9A9A9A"},p={low:"priority.low",medium:"priority.medium",high:"priority.high",critical:"priority.critical"},h={open:"status.open",assigned:"status.assigned",in_progress:"status.inProgress",to_verify:"status.toVerify",done:"status.done",closed:"status.closed"},g={low:"bg-[#9A9A9A]",medium:"bg-[#E65100]",high:"bg-[#D32F2F]",critical:"bg-[#B71C1C]"},f={taskNode:function(e){let{data:s}=e,t=(0,d.c)();return(0,a.jsxs)("div",{className:"rounded-lg border-2 border-[#E5E2DC] dark:border-[#2a2a2e] bg-card px-4 py-3 shadow-sm min-w-[200px] max-w-[260px] cursor-pointer hover:border-primary transition-colors",children:[(0,a.jsx)(i.h7,{type:"target",position:n.yX.Top,className:"!bg-primary !w-2 !h-2"}),(0,a.jsxs)("div",{className:"flex items-center gap-2 mb-1.5",children:[(0,a.jsx)(o.E,{className:"text-[10px] ".concat(m[s.status]||""),children:t(h[s.status]||s.status)}),(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("div",{className:"h-1.5 w-1.5 rounded-full ".concat(g[s.priority]||"")}),(0,a.jsx)("span",{className:"text-[10px] text-muted-foreground",children:t(p[s.priority]||s.priority)})]})]}),(0,a.jsx)("p",{className:"text-xs font-medium text-foreground leading-snug line-clamp-2",children:s.title}),(0,a.jsx)(i.h7,{type:"source",position:n.yX.Bottom,className:"!bg-primary !w-2 !h-2"})]})}},v={taskNode:function(e){let{data:s}=e,t=x[s.status]||"#E5E0D8";return(0,a.jsxs)("div",{className:"rounded-md border-[1.5px] bg-card px-2.5 py-1.5 shadow-sm",style:{borderColor:t,width:b},children:[(0,a.jsx)(i.h7,{type:"target",position:n.yX.Top,className:"!bg-primary !w-1.5 !h-1.5"}),(0,a.jsx)("p",{className:"text-[10px] font-medium text-foreground leading-tight line-clamp-2",children:s.title}),(0,a.jsx)(i.h7,{type:"source",position:n.yX.Bottom,className:"!bg-primary !w-1.5 !h-1.5"})]})}},b=150,j={animated:!0,style:{stroke:"#C67A52",strokeWidth:2},markerEnd:{type:"arrowclosed",color:"#C67A52"}},N={animated:!0,style:{stroke:"#C67A52",strokeWidth:1.5},markerEnd:{type:"arrowclosed",color:"#C67A52"}};function k(e,s,t){var a,r,i,n;let c=null!=(a=null==t?void 0:t.nodeWidth)?a:240,d=null!=(r=null==t?void 0:t.nodeHeight)?r:80,o=new(l()).graphlib.Graph;return o.setDefaultEdgeLabel(()=>({})),o.setGraph({rankdir:"TB",nodesep:null!=(i=null==t?void 0:t.nodesep)?i:50,ranksep:null!=(n=null==t?void 0:t.ranksep)?n:80}),e.forEach(e=>{o.setNode(e.id,{width:c,height:d})}),s.forEach(e=>{o.setEdge(e.source,e.target)}),l().layout(o),{nodes:e.map(e=>{let s=o.node(e.id);return{...e,position:{x:s.x-c/2,y:s.y-d/2}}}),edges:s}}function A(e){let{tasks:s,edges:t,readonly:n=!1,compact:c=!1,height:l,onNodeClick:o,className:m}=e,x=(0,d.c)(),p=(0,u.W)(),{layoutedNodes:h,layoutedEdges:g}=(0,r.useMemo)(()=>{let e=s.map(e=>{var s;return{id:e.uuid,type:"taskNode",position:{x:0,y:0},data:{title:e.title,status:e.status,priority:e.priority,proposalUuid:null!=(s=e.proposalUuid)?s:null}}}),a=k(e,t.map((e,s)=>({id:"e-".concat(s),source:e.to,target:e.from,...c?N:j})),c?{nodeWidth:b,nodeHeight:50,nodesep:20,ranksep:40}:void 0);return{layoutedNodes:a.nodes,layoutedEdges:a.edges}},[s,t,c]);return 0===s.length?(0,a.jsx)("div",{className:"flex items-center justify-center text-sm text-muted-foreground ".concat(m||""),style:l?{height:l}:void 0,children:x("tasks.noTasksToDisplay")}):(0,a.jsx)("div",{className:"rounded-[10px] border border-border bg-[#F7F6F3] dark:bg-[#1e1d1b] ".concat(m||""),style:l?{height:l}:void 0,children:(0,a.jsxs)(i.Gc,{colorMode:p?"dark":"light",nodes:h,edges:g,nodeTypes:c?v:f,onNodeClick:o?(e,s)=>o(s.id):void 0,fitView:!0,fitViewOptions:{padding:.2},minZoom:.3,maxZoom:1.5,proOptions:{hideAttribution:!0},nodesDraggable:!n,nodesConnectable:!n,elementsSelectable:!n,panOnDrag:!0,zoomOnScroll:!0,children:[(0,a.jsx)(i.VS,{color:p?"#40392f":"#E5E0D8",gap:20}),!n&&(0,a.jsx)(i.H2,{className:"[&>button]:border-border [&>button]:bg-card [&>button]:text-foreground [&>button:hover]:bg-background"})]})})}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[32331],{3848:(e,t,r)=>{r.d(t,{L:()=>l});var a=r(90508),s=r(1856),n=r(39268),i=r(92691);function l(e){let{notes:t}=e,r=(0,n.c)(),[l,d]=(0,s.useState)(!1),o=null==t?void 0:t.trim();if(!o)return null;let c=(0,a.jsx)("button",{type:"button",onClick:()=>d(e=>!e),"aria-expanded":l,"aria-label":r("references.toggleNotes"),className:"mt-1 w-full cursor-pointer text-left text-xs leading-relaxed text-muted-foreground ".concat(l?"block":"line-clamp-2"),children:o});return l?c:(0,a.jsx)(i.Bc,{delayDuration:200,children:(0,a.jsxs)(i.m_,{children:[(0,a.jsx)(i.k$,{asChild:!0,children:c}),(0,a.jsx)(i.ZI,{className:"max-w-xs whitespace-pre-wrap break-words",children:o})]})})}},4365:(e,t,r)=>{r.d(t,{G7:()=>d,L$:()=>u,h_:()=>m,oI:()=>o,uB:()=>l,xL:()=>c});var a=r(90508);r(1856);var s=r(64731),n=r(30044),i=r(24377);function l(e){let{className:t,...r}=e;return(0,a.jsx)(s.uB,{"data-slot":"command",className:(0,i.cn)("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",t),...r})}function d(e){let{className:t,...r}=e;return(0,a.jsxs)("div",{"data-slot":"command-input-wrapper",className:"flex h-9 items-center gap-2 border-b px-3",children:[(0,a.jsx)(n.A,{className:"size-4 shrink-0 opacity-50"}),(0,a.jsx)(s.uB.Input,{"data-slot":"command-input",className:(0,i.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",t),...r})]})}function o(e){let{className:t,...r}=e;return(0,a.jsx)(s.uB.List,{"data-slot":"command-list",className:(0,i.cn)("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",t),...r})}function c(e){let{...t}=e;return(0,a.jsx)(s.uB.Empty,{"data-slot":"command-empty",className:"py-6 text-center text-sm",...t})}function u(e){let{className:t,...r}=e;return(0,a.jsx)(s.uB.Group,{"data-slot":"command-group",className:(0,i.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",t),...r})}function m(e){let{className:t,...r}=e;return(0,a.jsx)(s.uB.Item,{"data-slot":"command-item",className:(0,i.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",t),...r})}},12210:(e,t,r)=>{r.d(t,{d:()=>i});var a=r(90508);r(1856);var s=r(60322),n=r(24377);function i(e){let{className:t,...r}=e;return(0,a.jsx)(s.Root,{"data-slot":"switch",className:(0,n.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",t),...r,children:(0,a.jsx)(s.Thumb,{"data-slot":"switch-thumb",className:(0,n.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")})})}},13108:(e,t,r)=>{r.d(t,{C:()=>c,K:()=>m});var a=r(90508),s=r(39268),n=r(97413),i=r(5616),l=r(22922),d=r(14554),o=r(12210);function c(e){let{items:t,onChange:r,disabled:c}=e,u=(0,s.c)(),m=(e,a)=>{let s=t.slice();s[e]={...s[e],...a},r(s)};return(0,a.jsxs)("div",{className:"space-y-3",children:[t.length>0&&(0,a.jsx)("div",{className:"space-y-2",children:t.map((e,s)=>(0,a.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-[#E5E2DC] dark:border-[#2a2a2e] bg-background p-2.5",children:[(0,a.jsx)("div",{className:"flex-1 min-w-0",children:(0,a.jsx)(d.p,{value:e.description,onChange:e=>m(s,{description:e.target.value}),placeholder:u("acceptanceCriteria.criterionPlaceholder"),className:"border-[#E5E2DC] dark:border-[#2a2a2e] text-sm focus-visible:ring-primary h-8",disabled:c})}),(0,a.jsxs)("div",{className:"flex items-center gap-2 shrink-0 pt-1",children:[(0,a.jsx)(o.d,{checked:e.required,onCheckedChange:e=>m(s,{required:e}),className:"data-[state=checked]:bg-primary",disabled:c}),(0,a.jsx)("span",{className:"text-[10px] font-medium text-muted-foreground min-w-[52px]",children:e.required?u("acceptanceCriteria.required"):u("acceptanceCriteria.optional")}),(0,a.jsx)(l.$,{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:()=>{r(t.filter((e,t)=>t!==s))},disabled:c,type:"button",children:(0,a.jsx)(n.A,{className:"h-3 w-3"})})]})]},s))}),(0,a.jsxs)(l.$,{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:()=>{r([...t,{description:"",required:!0}])},disabled:c,type:"button",children:[(0,a.jsx)(i.A,{className:"h-3 w-3"}),u("acceptanceCriteria.addCriterion")]})]})}function u(e){return{description:e.description.trim(),required:!!e.required}}function m(e,t){if(e.length!==t.length)return!0;for(let r=0;r<e.length;r++){let a=u(e[r]),s=u(t[r]);if(a.description!==s.description||a.required!==s.required)return!0}return!1}},14554:(e,t,r)=>{r.d(t,{p:()=>n});var a=r(90508);r(1856);var s=r(24377);function n(e){let{className:t,type:r,...n}=e;return(0,a.jsx)("input",{type:r,"data-slot":"input",className:(0,s.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","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",t),...n})}},17722:(e,t,r)=>{r.d(t,{AI:()=>l,_8:()=>i});var a=r(90508);r(1856);var s=r(97438),n=r(24377);function i(e){let{open:t,onOpenChange:r,header:i,footer:l,children:d,className:o,bodyClassName:c,zIndexClassName:u="z-[110]",showCloseButton:m=!0}=e;return(0,a.jsx)(s.lG,{open:t,onOpenChange:r,children:(0,a.jsxs)(s.Cf,{className:(0,n.cn)("flex max-h-[85svh] flex-col gap-0 overflow-hidden p-0",u,o),overlayClassName:u,showCloseButton:m,children:[(0,a.jsx)(s.c7,{className:"shrink-0 border-b border-border px-6 py-5 text-left",children:i}),(0,a.jsx)("div",{className:(0,n.cn)("min-h-0 flex-1 overflow-y-auto px-6 py-4",c),children:d}),(0,a.jsx)(s.Es,{className:"shrink-0 border-t border-border px-6 py-5",children:l})]})})}let l=s.L3},25147:(e,t,r)=>{r.d(t,{j:()=>s});var a=r(52217);let s=(0,a.createServerReference)("60ee00e0f81186986ceb2159c1e052bd817d18cb2a",a.callServer,void 0,a.findSourceMapURL,"listReferencesAction")},29532:(e,t,r)=>{function a(e,t){return!!e&&!!t&&("user"===e.type?"user"===t.type&&e.uuid===t.uuid:"agent"===e.type?"agent"===t.type&&e.uuid===t.uuid:"agent_instance"===e.type&&"agent"===t.type&&!!e.agentUuid&&e.agentUuid===t.uuid)}function s(e){return!!e&&("agent"===e.type||"agent_instance"===e.type)}r.d(t,{RU:()=>a,bB:()=>s})},49914:(e,t,r)=>{r.d(t,{W:()=>s});var a=r(1856);function s(){let[e,t]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{let e=document.documentElement,r=()=>t(e.classList.contains("dark"));r();let a=new MutationObserver(r);return a.observe(e,{attributes:!0,attributeFilter:["class"]}),()=>a.disconnect()},[]),e}},54410:(e,t,r)=>{r.d(t,{ReferencesSection:()=>E});var a=r(90508),s=r(1856),n=r(91814),i=r(39268),l=r(34956),d=r(20578),o=r(57893),c=r(85226),u=r(97413),m=r(5616),p=r(57731),x=r(22922),f=r(14554),h=r(88064),g=r(15972),b=r(97438),v=r(91846),y=r(51817),j=r(25147),N=r(52217);let w=(0,N.createServerReference)("40a3be0e8df8105be8e95ce2817f37df569258c449",N.callServer,void 0,N.findSourceMapURL,"updateReferenceAction"),k=(0,N.createServerReference)("40437b7a932280e774aa74a05bf1adb8ccbdeeb213",N.callServer,void 0,N.findSourceMapURL,"createReferenceAction"),C=(0,N.createServerReference)("404a62707a781921fafbd2a52756250160b5bc1806",N.callServer,void 0,N.findSourceMapURL,"deleteReferenceAction");var R=r(68876),S=r(3848);function E(e){let{targetType:t,targetUuid:r,canWrite:N,initialReferences:E,compact:_=!1}=e,A=(0,i.c)(),F=(0,n.r)(),[L,q]=(0,s.useState)(null!=E?E:[]),[O,z]=(0,s.useState)(void 0!==E),[B,$]=(0,s.useState)(!1),[D,P]=(0,s.useState)(null),[K,I]=(0,s.useState)("docs"),[U,G]=(0,s.useState)(""),[J,M]=(0,s.useState)(""),[Q,T]=(0,s.useState)(""),[Z,V]=(0,s.useState)(null),[W,Y]=(0,s.useState)(!1),[H,X]=(0,s.useState)(null),ee=(0,s.useCallback)(async()=>{let e=await (0,j.j)(t,r);e.success&&q(e.references),z(!0)},[t,r]);(0,s.useEffect)(()=>{void 0===E&&ee()},[E,ee]);let et=async()=>{if(!U.trim())return void V(A("references.urlRequired"));if(!J.trim())return void V(A("references.titleRequired"));Y(!0),V(null);let e=Q.trim()?Q.trim():null,a=D?await w({uuid:D.uuid,type:K,url:U.trim(),title:J.trim(),notes:e}):await k({targetType:t,targetUuid:r,type:K,url:U.trim(),title:J.trim(),notes:e});Y(!1),a.success?($(!1),await ee(),F.refresh()):V(a.error||(D?A("references.updateFailed"):A("references.addFailed")))},er=async e=>{X(e);let t=await C(e);X(null),t.success&&(await ee(),F.refresh())};return(0,a.jsxs)("div",{className:_?"space-y-2":"space-y-2.5",children:[0===L.length?(0,a.jsx)("p",{className:"text-sm italic text-muted-foreground",children:O?A("references.empty"):A("references.loading")}):(0,a.jsx)("div",{className:"space-y-2",children:L.map(e=>{var t,r;let s=(0,R.N2)(e.type)?R.qQ[e.type]:null,n=null!=(t=null==s?void 0:s.icon)?t:l.A;return(0,a.jsx)("div",{className:"group rounded-lg border border-border bg-background p-3",children:(0,a.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("div",{className:"mb-1 flex items-center gap-2",children:(0,a.jsxs)(p.E,{className:"gap-1 border-0 text-[10px] font-medium ".concat(null!=(r=null==s?void 0:s.badgeClass)?r:"bg-secondary text-muted-foreground"),children:[(0,a.jsx)(n,{className:"h-3 w-3"}),s?A(s.labelKey):e.type]})}),(0,a.jsxs)("a",{href:e.url,target:"_blank",rel:"noopener noreferrer",title:e.title,className:"flex min-w-0 items-center gap-1 text-sm font-medium text-primary hover:underline",children:[(0,a.jsx)("span",{className:"truncate",children:e.title}),(0,a.jsx)(d.A,{className:"h-3 w-3 shrink-0"})]}),(0,a.jsx)(S.L,{notes:e.notes})]}),N&&(0,a.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,a.jsx)(x.$,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>{var t;P(e),I(e.type),G(e.url),M(e.title),T(null!=(t=e.notes)?t:""),V(null),$(!0)},"aria-label":A("references.editReference"),children:(0,a.jsx)(o.A,{className:"h-3.5 w-3.5 text-muted-foreground"})}),(0,a.jsxs)(y.Lt,{children:[(0,a.jsx)(y.tv,{asChild:!0,children:(0,a.jsx)(x.$,{variant:"ghost",size:"icon",className:"h-7 w-7","aria-label":A("references.deleteReference"),children:H===e.uuid?(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 animate-spin text-muted-foreground"}):(0,a.jsx)(u.A,{className:"h-3.5 w-3.5 text-destructive"})})}),(0,a.jsxs)(y.EO,{children:[(0,a.jsxs)(y.wd,{children:[(0,a.jsx)(y.r7,{children:A("references.deleteReference")}),(0,a.jsx)(y.$v,{children:A("references.deleteConfirm",{title:e.title})})]}),(0,a.jsxs)(y.ck,{children:[(0,a.jsx)(y.Zr,{children:A("common.cancel")}),(0,a.jsx)(y.Rx,{variant:"destructive",onClick:()=>er(e.uuid),children:A("common.delete")})]})]})]})]})]})},e.uuid)})}),N&&(0,a.jsxs)(x.$,{variant:"outline",size:"sm",className:"h-8 w-full gap-1.5 border-border border-dashed text-xs text-muted-foreground",onClick:()=>{P(null),I("docs"),G(""),M(""),T(""),V(null),$(!0)},children:[(0,a.jsx)(m.A,{className:"h-3.5 w-3.5"}),A("references.addReference")]}),(0,a.jsx)(b.lG,{open:B,onOpenChange:$,children:(0,a.jsxs)(b.Cf,{className:"sm:max-w-[480px]",children:[(0,a.jsx)(b.c7,{children:(0,a.jsx)(b.L3,{children:D?A("references.editReference"):A("references.addReference")})}),(0,a.jsxs)("div",{className:"space-y-4 py-2",children:[Z&&(0,a.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:Z}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(h.J,{htmlFor:"ref-type",className:"text-[13px] font-medium text-foreground",children:A("references.typeLabel")}),(0,a.jsxs)(v.l6,{value:K,onValueChange:I,children:[(0,a.jsx)(v.bq,{id:"ref-type",className:"border-border focus:ring-primary",children:(0,a.jsx)(v.yv,{})}),(0,a.jsx)(v.gC,{children:R.mP.map(e=>(0,a.jsx)(v.eb,{value:e,children:A(R.qQ[e].labelKey)},e))})]})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)(h.J,{htmlFor:"ref-url",className:"text-[13px] font-medium text-foreground",children:[A("references.urlLabel")," *"]}),(0,a.jsx)(f.p,{id:"ref-url",value:U,onChange:e=>G(e.target.value),placeholder:A("references.urlPlaceholder"),className:"border-border focus-visible:ring-primary",autoFocus:!0})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)(h.J,{htmlFor:"ref-title",className:"text-[13px] font-medium text-foreground",children:[A("references.titleLabel")," *"]}),(0,a.jsx)(f.p,{id:"ref-title",value:J,onChange:e=>M(e.target.value),placeholder:A("references.titlePlaceholder"),className:"border-border focus-visible:ring-primary"})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(h.J,{htmlFor:"ref-notes",className:"text-[13px] font-medium text-foreground",children:A("references.notesLabel")}),(0,a.jsx)(g.T,{id:"ref-notes",value:Q,onChange:e=>T(e.target.value),placeholder:A("references.notesPlaceholder"),rows:3,className:"resize-none border-border focus-visible:ring-primary"})]})]}),(0,a.jsxs)(b.Es,{children:[(0,a.jsx)(x.$,{variant:"outline",onClick:()=>$(!1),disabled:W,className:"border-border",children:A("common.cancel")}),(0,a.jsx)(x.$,{onClick:et,disabled:W||!U.trim()||!J.trim(),className:"bg-primary hover:bg-primary/90 text-primary-foreground",children:W?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(c.A,{className:"mr-2 h-4 w-4 animate-spin"}),A("common.saving")]}):D?A("common.save"):A("references.add")})]})]})})]})}},65626:(e,t,r)=>{r.d(t,{K5:()=>d,Rf:()=>l,Yv:()=>a,bK:()=>i,qG:()=>n,tE:()=>s});let a={fast:.15,normal:.2,slow:.3,easeOut:[0,0,.2,1],easeInOut:[.4,0,.2,1],stagger:.04,staggerFast:.03,spring:{type:"spring",stiffness:500,damping:30},tween:{type:"tween",duration:.2,ease:[0,0,.2,1]}},s={initial:{opacity:0,y:8},animate:{opacity:1,y:0,transition:{duration:a.normal,ease:a.easeOut}},exit:{opacity:0,y:-4,transition:{duration:a.fast,ease:a.easeOut}}},n={initial:{opacity:0},animate:{opacity:1,transition:{duration:a.normal,ease:a.easeOut}},exit:{opacity:0,transition:{duration:a.fast,ease:a.easeOut}}};a.normal,a.easeOut,a.fast,a.easeOut;let i={initial:{},animate:{transition:{staggerChildren:a.stagger}}},l={initial:{opacity:0,y:8},animate:{opacity:1,y:0,transition:{duration:a.normal,ease:a.easeOut}}},d={initial:{opacity:0,scale:.95,y:-4},animate:{opacity:1,scale:1,y:0,transition:{duration:a.fast,ease:a.easeOut}},exit:{opacity:0,scale:.95,y:-4,transition:{duration:a.fast,ease:a.easeOut}}}},68876:(e,t,r)=>{r.d(t,{N2:()=>o,mP:()=>l,qQ:()=>d});var a=r(25167),s=r(81235),n=r(27472),i=r(18267);let l=["docs","repo","issue_pr","paper_blog"],d={docs:{labelKey:"references.typeDocs",badgeClass:"bg-blue-50 text-blue-700 dark:bg-[#13253a] dark:text-[#5AA9F0]",icon:a.A},repo:{labelKey:"references.typeRepo",badgeClass:"bg-green-50 text-green-700 dark:bg-[#14281a] dark:text-[#6FD19A]",icon:s.A},issue_pr:{labelKey:"references.typeIssuePr",badgeClass:"bg-purple-50 text-purple-700 dark:bg-[#281630] dark:text-[#C98FE0]",icon:n.A},paper_blog:{labelKey:"references.typePaperBlog",badgeClass:"bg-amber-50 text-amber-700 dark:bg-[#332a12] dark:text-[#E0B44E]",icon:i.A}};function o(e){return l.includes(e)}},88064:(e,t,r)=>{r.d(t,{J:()=>i});var a=r(90508);r(1856);var s=r(58057),n=r(24377);function i(e){let{className:t,...r}=e;return(0,a.jsx)(s.Root,{"data-slot":"label",className:(0,n.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})}},92691:(e,t,r)=>{r.d(t,{Bc:()=>i,ZI:()=>o,k$:()=>d,m_:()=>l});var a=r(90508);r(1856);var s=r(45841),n=r(24377);function i(e){let{delayDuration:t=0,...r}=e;return(0,a.jsx)(s.Provider,{"data-slot":"tooltip-provider",delayDuration:t,...r})}function l(e){let{...t}=e;return(0,a.jsx)(s.Root,{"data-slot":"tooltip",...t})}function d(e){let{...t}=e;return(0,a.jsx)(s.Trigger,{"data-slot":"tooltip-trigger",...t})}function o(e){let{className:t,sideOffset:r=0,children:i,...l}=e;return(0,a.jsx)(s.Portal,{children:(0,a.jsxs)(s.Content,{"data-slot":"tooltip-content",sideOffset:r,className:(0,n.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),...l,children:[i,(0,a.jsx)(s.Arrow,{className:"bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[33456],{33456:e=>{e.exports=JSON.parse('{"common":{"appName":"Chorus","loading":"로딩 중...","save":"저장","cancel":"취소","delete":"삭제","edit":"수정","create":"만들기","search":"검색","done":"완료","copy":"복사","copied":"복사됨!","back":"뒤로","viewAll":"전체 보기","showMore":"더 보기","showLess":"간략히 보기","signOut":"로그아웃","optional":"선택 사항","unassigned":"미배정","agent":"에이전트","user":"사용자","status":"상태","priority":"우선순위","type":"유형","created":"생성일","updated":"수정일","version":"버전","description":"설명","details":"상세 정보","content":"내용","assignment":"배정","noDescription":"설명이 없습니다","noContent":"내용이 없습니다","creating":"생성 중...","processing":"처리 중...","saving":"저장 중...","claim":"가져가기","release":"해제","assign":"배정","reassign":"재배정","verify":"검증","reject":"거부","approve":"승인","selectProject":"프로젝트를 선택해 주세요","assignee":"담당자","activity":"활동","noActivity":"아직 활동이 없습니다","source":"출처","currentAssignee":"현재 담당자","failedToAssign":"배정에 실패했습니다","actions":"작업","genericError":"오류가 발생했습니다. 다시 시도해 주세요.","unknown":"알 수 없음","system":"시스템","confirmDelete":"정말 삭제하시겠습니까?"},"theme":{"toggleLabel":"테마","light":"라이트","dark":"다크","system":"시스템"},"activity":{"taskCreated":"{actor}님이 이 작업을 생성했습니다","taskAssigned":"{actor}님이 이 작업에 배정되었습니다","taskClaimed":"{actor}님이 이 작업을 가져갔습니다","taskStarted":"{actor}님이 이 작업을 시작했습니다","taskSubmitted":"{actor}님이 이 작업을 검토 요청했습니다","taskCompleted":"{actor}님이 이 작업을 완료했습니다","taskReleased":"{actor}님이 이 작업을 해제했습니다","taskStatusChanged":"{actor}님이 작업 상태를 변경했습니다","ideaCreated":"{actor}님이 이 아이디어를 생성했습니다","ideaAssigned":"{actor}님이 이 아이디어에 배정되었습니다","ideaClaimed":"{actor}님이 이 아이디어를 가져갔습니다","ideaReleased":"{actor}님이 이 아이디어를 해제했습니다","ideaStatusChanged":"{actor}님이 아이디어 상태를 변경했습니다","ideaEdited":"{actor}님이 아이디어를 수정했습니다","ideaReparented":"{actor}님이 아이디어의 상위 항목을 변경했습니다","elaborationStarted":"{actor}님이 요구사항 구체화를 시작했습니다","elaborationAnswered":"{actor}님이 요구사항 구체화에 답변했습니다","elaborationSkipped":"{actor}님이 요구사항 구체화를 건너뛰었습니다","elaborationResolved":"{actor}님이 요구사항 구체화를 해결했습니다","elaborationFollowup":"{actor}님이 후속 요구사항 구체화를 요청했습니다","genericAction":"{actor}님이 {action}을(를) 수행했습니다","entityIdea":"아이디어","entityProposal":"제안","entityTask":"작업","entityDocument":"문서","entityProject":"프로젝트","actionCreated":"생성함","actionUpdated":"수정함","actionApproved":"승인함","actionRejected":"거부함","actionClaimed":"가져감","actionCompleted":"완료함","actionRevoked":"취소함","title":"활동","subtitle":"프로젝트 전반의 최근 활동","noActivity":"아직 활동이 없습니다","noActivityDesc":"회원님과 에이전트가 이 프로젝트에서 작업하면 여기에 활동이 표시됩니다.","loadingActivity":"활동을 불러오는 중..."},"comments":{"title":"댓글","noComments":"아직 댓글이 없습니다","addComment":"댓글을 입력하세요... (@를 입력해 멘션)","roleAgent":"에이전트","roleHuman":"사람","onBehalfOf":"{name}님을 대신하여","showMore":"더 보기","showLess":"간략히 보기","loadError":"댓글을 불러오지 못했습니다","retry":"다시 시도","loadingMore":"더 불러오는 중...","noMoreComments":"더 이상 댓글이 없습니다"},"mentions":{"noResults":"결과 없음","searchPlaceholder":"멘션할 이름을 입력하세요..."},"assign":{"selectAssignee":"이 작업을 배정할 방법을 선택하세요","assignToMyself":"나에게 배정","assignToMyselfDesc":"회원님의 모든 개발자 에이전트가 이 작업을 확인하고 처리할 수 있습니다","orAssignToUser":"다른 사용자에게 배정","orAssignToAgent":"특정 에이전트에게 배정","releaseAssignee":"해제 (담당자 지우기)","releaseAssigneeDesc":"현재 담당자를 제거하고 이 작업을 다시 배정 가능하게 만듭니다"},"assignInstance":{"workingDirectory":"작업 디렉터리","loadingInstances":"작업 디렉터리를 불러오는 중…","noInstances":"이 에이전트에 온라인 상태인 데몬이 없습니다. 작업은 배정되고 에이전트에게 알림이 전송되며, 다음에 온라인 상태가 되면 이를 처리합니다.","pinNote":"자율 웨이크는 여기서 고정한 정확한 (호스트, 경로)로 이 작업을 전달합니다. 온라인 상태인 인스턴스만 고정할 수 있습니다. 경로는 프로젝트에서 추론되지 않습니다.","ideaPinNote":"아이디어가 고정의 기준이 됩니다. 이 에이전트의 제안, 작업, 자율 웨이크는 여기서 고정한 (호스트, 경로)를 상속받습니다. 온라인 상태인 인스턴스만 고정할 수 있습니다. 설정하지 않으면 일반 에이전트로 배정됩니다.","assignTo":"{path}에 배정","assignToWithHost":"{path} \xb7 {host}에 배정","sendingTo":"{path}로 전송 중","sendingToWithHost":"{path} \xb7 {host}로 전송 중","liveSendNote":"지금 바로 지시를 전송합니다. 실시간 전송은 경로가 온라인 상태여야 합니다.","offlineCantRun":"오프라인 — 다시 연결될 때까지 실행할 수 없습니다"},"time":{"justNow":"방금 전","minutesAgo":"{minutes}분 전","hoursAgo":"{hours}시간 전","daysAgo":"{days}일 전","today":"오늘","yesterday":"어제"},"nav":{"projects":"프로젝트","settings":"설정","overview":"개요","documents":"문서","proposals":"제안","tasks":"작업","graph":"그래프","activity":"활동","logout":"로그아웃","newProject":"새 프로젝트","backToProjects":"프로젝트","openMenu":"메뉴 열기"},"priority":{"low":"낮음","medium":"보통","high":"높음","lowPriority":"낮은 우선순위","mediumPriority":"보통 우선순위","highPriority":"높은 우선순위","critical":"긴급","criticalPriority":"긴급 우선순위"},"status":{"open":"열림","active":"활성","draft":"초안","pending":"검토 대기","pendingReview":"검토 대기","approved":"승인됨","rejected":"거부됨","done":"완료","inProgress":"진행 중","todo":"할 일","toVerify":"검증 대기","claimed":"가져감","current":"현재","assigned":"배정됨","completed":"완료됨","closed":"종료됨","elaborating":"구체화 중","elaborated":"구체화됨","proposalCreated":"제안 생성됨","proposal_created":"제안 생성됨","needHumanInput":"사람 입력 필요","humanConductRequired":"사람의 처리 필요"},"admin":{"title":"슈퍼 관리자","dashboard":"대시보드","welcome":"Chorus 슈퍼 관리자에 오신 것을 환영합니다","email":"이메일","emailPlaceholder":"you@company.com","password":"비밀번호","passwordPlaceholder":"비밀번호를 입력하세요","signingIn":"로그인 중...","signInAsAdmin":"슈퍼 관리자로 로그인","backToEmail":"이메일로 돌아가기","totalCompanies":"전체 회사 수","registeredOrgs":"등록된 조직","registeredOrgsCount":"등록된 조직 {count}개","totalUsers":"전체 사용자 수","humanUsers":"모든 회사의 사람 사용자","totalAgents":"전체 에이전트 수","aiAgents":"모든 회사의 AI 에이전트","quickActions":"빠른 작업","commonTasks":"자주 사용하는 관리 작업","addCompany":"회사 추가","addCompanyDesc":"새 조직을 등록합니다","manageCompanies":"회사 관리","manageCompaniesDesc":"조직을 보고 설정합니다","companies":"회사","oidcRedirectUri":"OIDC 리디렉션 URI (콜백 URL)","oidcRedirectUriDesc":"OIDC 공급자에서 허용된 리디렉션 URI로 이 URL을 설정하세요","tableName":"이름","tableEmailDomains":"이메일 도메인","tableOidcStatus":"OIDC 상태","tableUsers":"사용자","tableAgents":"에이전트","tableActions":"작업","noCompanies":"등록된 회사가 없습니다.","addFirstCompany":"첫 회사 추가하기","oidcConfigured":"설정됨","oidcNotConfigured":"설정되지 않음","deleteCompanyConfirm":"\\"{name}\\"을(를) 삭제하시겠습니까? 이 작업은 되돌릴 수 없습니다.","deleteCompanyConfirmFull":"\\"{name}\\"을(를) 삭제하시겠습니까? 이 작업은 되돌릴 수 없으며 관련된 모든 데이터가 삭제됩니다.","failedToDelete":"회사를 삭제하지 못했습니다","networkError":"네트워크 오류입니다. 다시 시도해 주세요.","backToCompanies":"회사 목록으로 돌아가기","deleteCompany":"회사 삭제","createdOn":"{date}에 생성됨","companyNotFound":"회사를 찾을 수 없습니다","failedToLoad":"회사를 불러오지 못했습니다","failedToUpdate":"회사를 수정하지 못했습니다","companyUpdated":"회사 정보가 성공적으로 수정되었습니다","projects":"프로젝트","basicInfo":"기본 정보","companyName":"회사 이름","emailDomains":"이메일 도메인","emailDomainsPlaceholder":"acme.com, acme.org","emailDomainsHelp":"쉼표로 구분된 이메일 도메인 목록","oidcConfig":"OIDC 설정","oidcEnabled":"사용","oidcConfigDesc":"싱글 사인온 인증을 위한 OpenID Connect(PKCE)를 설정합니다. 발급자 URL과 클라이언트 ID를 모두 입력하면 OIDC가 활성화됩니다.","oidcIssuerUrl":"OIDC 발급자 URL","oidcIssuerUrlPlaceholder":"https://login.microsoftonline.com/tenant-id/v2.0","oidcIssuerUrlHelp":"OpenID Connect 디스커버리 엔드포인트 URL","clientId":"클라이언트 ID","clientIdPlaceholder":"예: 12345678-abcd-efgh-ijkl-123456789012","clientIdHelp":"OAuth 2.0 클라이언트 ID (PKCE 모드, 시크릿 불필요)","saveChanges":"변경사항 저장","createCompany":"회사 만들기","createCompanyDesc":"새 회사를 설정하고 OIDC 인증을 구성합니다","emailDomain":"이메일 도메인","emailDomainHelp":"이 이메일 도메인을 사용하는 사용자는 이 회사로 연결됩니다","required":"필수","companyNamePlaceholder":"예: Acme Corporation","emailDomainPlaceholder":"예: acme.com","invalidCredentials":"잘못된 인증 정보입니다","createCompanyFailed":"회사를 만들지 못했습니다"},"dashboard":{"title":"대시보드","subtitle":"프로젝트 활동 개요","welcome":"Chorus에 오신 것을 환영합니다","welcomeDesc":"첫 프로젝트를 만들거나 기존 프로젝트를 선택하여 시작하세요.","viewProjects":"프로젝트 보기","createProject":"프로젝트 만들기","quickActions":"빠른 작업","addNewIdea":"새 아이디어","reviewProposals":"제안 검토","viewTaskBoard":"작업 보드","recentActivity":"최근 활동","activityPlaceholder":"활동 피드가 여기에 표시됩니다","taskPipeline":"작업 파이프라인","totalTasks":"전체 {count}개","todoCount":"할 일 ({count})","inProgressCount":"진행 중 ({count})","toVerifyCount":"검증 대기 ({count})","doneCount":"완료 ({count})","noRecentTasks":"아직 작업이 없습니다","noRecentActivity":"아직 활동이 없습니다","viewAll":"전체 보기","settings":"설정"},"projectSettings":{"title":"프로젝트 설정","basicInfo":"기본 정보","projectName":"프로젝트 이름","description":"설명","saveChanges":"변경사항 저장","saving":"저장 중...","saveSuccess":"프로젝트가 성공적으로 수정되었습니다","saveFailed":"프로젝트를 수정하지 못했습니다","dangerZone":"위험 구역","deleteTitle":"이 프로젝트 삭제","deleteDescription":"이 프로젝트와 모든 데이터를 영구적으로 제거합니다. 이 작업은 되돌릴 수 없습니다."},"projects":{"title":"프로젝트","subtitle":"프로젝트를 관리하고 진행 상황을 추적하세요","newProject":"새 프로젝트","noProjects":"아직 프로젝트가 없습니다","noProjectsDesc":"첫 프로젝트를 만들어 AI 에이전트와 협업을 시작하세요.","createFirst":"첫 프로젝트 만들기","onboarding":{"welcomeTitle":"Chorus에 오신 것을 환영합니다","welcomeDesc":"Chorus는 프로젝트 그룹과 프로젝트로 작업을 구성합니다. 워크스페이스를 설정해 보겠습니다.","whatIsGroupTitle":"프로젝트 그룹","whatIsGroupDesc":"관련 프로젝트를 담는 컨테이너입니다. 팀, 제품 라인, 이니셔티브라고 생각하면 됩니다 — 예: \\"모바일 앱\\" 또는 \\"3분기 출시\\".","whatIsProjectTitle":"프로젝트","whatIsProjectDesc":"실제 작업이 이루어지는 곳입니다. 각 프로젝트는 고유한 아이디어, 제안, 문서, 작업을 가지며, AI 에이전트는 프로젝트 안에서 협업합니다.","step1Title":"1단계: 프로젝트 그룹 만들기","step1Desc":"워크스페이스 구성부터 시작하세요. 관련 프로젝트를 담을 그룹을 만듭니다.","step2Title":"2단계: 프로젝트 만들기","step2Desc":"그룹 안에 프로젝트를 추가하세요. 여기서 아이디어를 기록하고 AI 에이전트에게 작업을 배정합니다.","createGroupBtn":"프로젝트 그룹 만들기","agentTipTitle":"관리자 에이전트가 있나요? AI에게 설정을 맡기세요","agentTipDesc":"아래 프롬프트를 복사해 관리자 에이전트에게 전달하면 프로젝트 그룹과 프로젝트를 자동으로 만들어 줍니다:","agentPrompt":"워크스페이스 설정을 도와주세요. \\"{groupDesc}\\" 설명으로 \\"{groupName}\\" 프로젝트 그룹을 만든 다음, 그 안에 \\"{projectName}\\" 프로젝트를 만들어 주세요.","agentPromptDefault":"워크스페이스 설정을 도와주세요. 간단한 설명과 함께 \\"My Team\\"이라는 프로젝트 그룹을 만든 다음, 그 안에 초기 프로젝트를 만들어 주세요.","copiedPrompt":"프롬프트가 복사되었습니다!"},"ideas":"개 아이디어","tasks":"개 작업","docs":"개 문서","loadingProjects":"프로젝트를 불러오는 중...","createFailed":"프로젝트를 만들지 못했습니다","activeProjects":"활성 프로젝트","totalTasks":"전체 작업","openProposals":"열린 제안","ideasCaptured":"기록된 아이디어","taskProgress":"작업 진행률","createNewProject":"새 프로젝트 만들기","createNewProjectDesc":"새 프로젝트를 시작하고 팀을 초대하세요","updated":"수정됨","listView":"목록","gridView":"그리드","empty":"비어 있음","complete":"완료","createNew":{"title":"새 프로젝트 만들기","subtitle":"프로젝트 세부 정보를 설정한 뒤 아이디어를 PM 에이전트에게 배정하세요","gettingStartedTitle":"시작하기","gettingStartedDesc":"아래 기본 정보를 입력하세요. 생성 후에는 아이디어를 추가하고 제안 생성을 위해 PM 에이전트에게 배정할 수 있습니다.","basicInfo":"기본 정보","projectName":"프로젝트 이름","projectNamePlaceholder":"예: Project Alpha","descriptionLabel":"설명","descriptionPlaceholder":"이 프로젝트에 대해 간단히 설명해 주세요...","initialIdeas":"초기 아이디어","initialIdeasDesc":"PM 에이전트가 제안을 생성할 때 참고할 초기 생각이나 요구사항을 공유하세요","ideaPlaceholder":"예: OAuth를 지원하는 사용자 인증이 필요합니다...","addAnother":"아이디어 추가","documents":"문서","documentsDesc":"PM 에이전트가 분석할 PRD, 기술 설계, 참고 문서를 업로드하세요","dragDrop":"파일을 여기로 드래그하거나 클릭하여 찾아보기","fileTypes":"마크다운(.md) 문서","createProject":"프로젝트 만들기"}},"ideas":{"title":"아이디어","subtitle":"프로젝트를 위한 아이디어를 기록하고 추적하세요","newIdea":"새 아이디어","all":"전체","whatIsYourIdea":"어떤 아이디어인가요?","addMoreDetails":"세부 정보 추가...","noIdeas":"아직 아이디어가 없습니다","noIdeasFiltered":"{status} 상태의 아이디어가 없습니다","startByAdding":"첫 아이디어를 추가해 보세요. AI 에이전트가 분석을 위해 아이디어를 가져갈 수 있습니다.","ideasWithStatus":"이 상태의 아이디어가 여기에 표시됩니다.","addFirstIdea":"첫 아이디어 추가","loadingIdeas":"아이디어를 불러오는 중...","ideaNotFound":"아이디어를 찾을 수 없습니다","backToIdeas":"아이디어 목록으로 돌아가기","claimIdea":"아이디어 가져가기","assignIdea":"아이디어 배정","source":"출처:","assignedToMe":"나에게 배정됨","usedInProposal":"제안에 사용됨","noIdeasWithStatus":"{status} 상태의 아이디어가 없습니다","selectIdeaAssignee":"이 아이디어를 배정할 방법을 선택하세요","assignToMyselfIdeaDesc":"회원님의 모든 PM 에이전트가 이 아이디어를 확인하고 처리할 수 있습니다","orAssignToPmAgent":"특정 PM 에이전트에게 배정","onlySelectedPmAgentCanWork":"선택한 PM 에이전트만 이 아이디어를 처리할 수 있습니다","selectPmAgent":"PM 에이전트 선택","noPmAgentsAvailable":"사용 가능한 PM 에이전트가 없습니다","releaseIdeaAssigneeDesc":"현재 담당자를 제거하고 이 아이디어를 다시 배정 가능하게 만듭니다","proposalGenerated":"제안 생성됨","viewProposal":"제안 보기","assignedTo":"배정 대상","titleLabel":"제목","submit":"제출","editIdea":"아이디어 수정","saveChanges":"변경사항 저장","titleRequired":"제목은 필수입니다","updateFailed":"아이디어를 수정하지 못했습니다","deleteIdea":"아이디어 삭제","deleteIdeaConfirm":"\\"{title}\\"을(를) 삭제하시겠습니까? 이 작업은 되돌릴 수 없습니다.","createFailed":"아이디어를 만들지 못했습니다","noProjectsFound":"프로젝트를 찾을 수 없습니다","moveFailed":"아이디어를 이동하지 못했습니다","moving":"이동 중...","ungrouped":"미분류","actions":{"move":"프로젝트로 이동..."},"moveDialog":{"title":"다른 프로젝트로 아이디어 이동","description":"대상 프로젝트를 선택하세요. 연결된 제안, 문서, 작업, 활동 기록이 이 아이디어와 함께 이동됩니다.","targetProjectLabel":"대상 프로젝트","targetProjectPlaceholder":"프로젝트 선택...","searchProjects":"프로젝트 검색...","previewLoading":"영향도를 계산하는 중...","previewSummary":"이동 대상: 아이디어 {ideas}개(파생 포함), 제안 {proposals}개, 문서 {documents}개, 작업 {tasks}개, 활동 {activities}개.","previewWarning":"이 작업은 되돌릴 수 없습니다.","confirm":"이동 확인","cancel":"취소","error":"이동 실패: {message}","successToast":"아이디어 {ideas}개를 이동했습니다 — 제안 {proposals}개, 문서 {documents}개, 작업 {tasks}개, 활동 {activities}개가 업데이트되었습니다.","viewMovedIdea":"보기"}},"tasks":{"title":"작업","subtitle":"작업 관리를 위한 칸반 보드","newTask":"새 작업","agentHours":"에이전트 총 소요 시간","noTasks":"작업 없음","loadingTasks":"작업을 불러오는 중...","taskNotFound":"작업을 찾을 수 없습니다","backToTasks":"작업 목록으로 돌아가기","claimTask":"작업 가져가기","assignTask":"작업 배정","statusProgress":"상태 진행률","subtasks":"하위 작업","parentTask":"상위 작업","storyPoints":"스토리 포인트","acceptanceCriteria":"수락 기준","startWork":"작업 시작","submitForReview":"검토 요청","markAsVerified":"검증 완료로 표시","taskCompleted":"작업 완료됨","noActionsAvailable":"사용 가능한 작업이 없습니다","onlySelectedAgentCanWork":"선택한 에이전트만 이 작업을 처리할 수 있습니다","selectAgent":"에이전트 선택","selectUser":"사용자 선택","noAgentsAvailable":"사용 가능한 에이전트가 없습니다","noUsersAvailable":"다른 사용자가 없습니다","editTask":"작업 수정","createTaskTitle":"작업 만들기","deleteTask":"작업 삭제","deleteTaskConfirm":"\\"{title}\\"을(를) 삭제하시겠습니까? 이 작업은 되돌릴 수 없습니다.","titleLabel":"제목","titleRequired":"제목은 필수입니다","descriptionLabel":"설명","priorityLabel":"우선순위","storyPointsLabel":"스토리 포인트 (시간)","acceptanceCriteriaLabel":"수락 기준","saveChanges":"변경사항 저장","createFailed":"작업을 만들지 못했습니다","updateFailed":"작업을 수정하지 못했습니다","dependencies":"의존성","dependsOn":"선행 작업","blockedByThis":"이 작업에 막힌 항목","noDependencies":"의존성 없음","addDependency":"의존성 추가","failedToAddDep":"의존성을 추가하지 못했습니다","failedToRemoveDep":"의존성을 제거하지 못했습니다","noTasksToDisplay":"표시할 작업이 없습니다","kanbanView":"칸반","dagView":"DAG","listView":"목록","allStatuses":"전체","dependencyBlocked":"의존성이 해결되지 않음","dependencyBlockedDescription":"이 작업에는 해결되지 않은 의존성이 있습니다. 진행 중으로 이동하면 문제가 발생할 수 있습니다.","forceMove":"강제 이동","forceMoveConfirm":"이 작업을 진행 중으로 이동하시겠습니까? 의존성이 아직 완료되지 않았습니다.","blockerList":"차단 중인 작업","blockedTooltip":"해결되지 않은 의존성 {count}개로 인해 차단됨","blockedBy":"차단 항목: {tasks}","noActiveSession":"활성 세션 없음","forceStatusChange":"상태 강제 변경","proposalFilter":{"label":"제안","allProposals":"모든 제안","clear":"지우기","search":"제안 검색...","taskCount":"작업 {count}개","filtered":"{total}개 중 {filtered}개 제안","noResults":"제안을 찾을 수 없습니다","filteredSubtitle":"{total}개 중 {filtered}개 작업 (필터링됨)"}},"proposals":{"pageTitle":"제안","subtitle":"AI가 생성한 제안을 검토하고 승인하세요","all":"전체","pendingReview":"검토 대기","noProposals":"아직 제안이 없습니다","noProposalsDesc":"제안은 PM 에이전트가 아이디어를 분석할 때 생성됩니다. 생성되면 여기에 표시되어 검토할 수 있습니다.","loadingProposals":"제안을 불러오는 중...","proposalNotFound":"제안을 찾을 수 없습니다","backToProposals":"제안 목록으로 돌아가기","sourceIdea":"출처 아이디어","sourceIdeas":"출처 아이디어","noSourceIdeas":"출처 아이디어 없음","awaitingReview":"검토 대기 중","reviewInstructions":"내용을 검토하고 이 제안을 승인하거나 거부하세요.","basedOn":"기반","documentDrafts":"문서 초안","documents":"문서","taskDrafts":"작업 초안","tasks":"작업","emptyContainer":"이 제안 컨테이너는 비어 있습니다. 문서나 작업을 추가하세요.","inputType":"입력 유형","creatorType":"생성자 유형","containerSummary":"컨테이너 요약","inputs":"입력","discussion":"토론","reviewInfo":"검토 정보","reviewedBy":"검토자","reviewedAt":"검토 일시","reviewNote":"검토 메모","requestChanges":"수정 요청","approveProposal":"제안 승인","approveProposalDesc":"제안 작성자에게 전달할 메모를 선택적으로 추가하세요 (예: 에이전트를 위한 지시사항).","approveNotePlaceholder":"메모 추가 (선택 사항)...","rejectProposal":"제안 거부","rejectProposalDesc":"이 제안을 거부하는 이유를 입력해 주세요.","rejectReasonPlaceholder":"거부 사유를 입력하세요...","rejectionReason":"거부 사유","createProposal":"제안 만들기","basicInfo":"기본 정보","title":"제목","titlePlaceholder":"제안 제목을 입력하세요...","descriptionPlaceholder":"이 제안에 대해 설명해 주세요...","selectSourceIdeas":"출처 아이디어 선택","noAvailableIdeas":"사용 가능한 아이디어가 없습니다. 먼저 아이디어를 가져가야 합니다.","titleRequired":"제목은 필수입니다","selectAtLeastOneIdea":"하나 이상의 아이디어를 선택해 주세요","createFailed":"제안을 만들지 못했습니다","createAndEdit":"만들고 편집","addDocumentDraft":"문서 추가","addTaskDraft":"작업 추가","editDraft":"수정","deleteDraft":"삭제","documentType":"문서 유형","documentTitle":"문서 제목","documentContent":"내용 (마크다운)","taskTitle":"작업 제목","taskDescription":"설명","taskPriority":"우선순위","taskStoryPoints":"스토리 포인트 (시간)","taskAcceptanceCriteria":"수락 기준","submitForReview":"검토 요청","draftNotice":"이 제안은 초안 상태입니다. 내용을 추가하고 준비되면 검토를 요청하세요.","draftStatus":"초안","confirmSubmit":"이 제안을 검토 요청하시겠습니까?","confirmSubmitDesc":"제출하면 검토가 완료될 때까지 제안 내용을 수정할 수 없습니다.","completed":"완료됨","typeNewDocument":"신규 문서","typeDocumentUpdate":"문서 업데이트","typeTaskBreakdown":"작업 분할","typeDocumentAndTasks":"문서 + 작업","tasksCount":"작업 {count}개","closeProposal":"제안 종료","closeProposalDesc":"이 제안을 종료하면 되돌릴 수 없습니다. 사유를 입력해 주세요.","closeReasonPlaceholder":"종료 사유를 입력하세요...","closedNotice":"이 제안은 영구적으로 종료되었습니다.","revokeProposal":"승인 취소","revokeProposalDesc":"이 작업은 이 제안으로 생성된 모든 작업을 종료하고 모든 문서를 삭제합니다. 제안은 초안 상태로 돌아갑니다.","revokeReasonPlaceholder":"취소 사유를 입력하세요...","revokeTasksToClose":"종료할 작업 {count}개","revokeDocsToDelete":"삭제할 문서 {count}개","failedToSaveDocDraft":"문서 초안을 저장하지 못했습니다","failedToSaveTaskDraft":"작업 초안을 저장하지 못했습니다","docTypePrd":"PRD","docTypeTechDesign":"기술 설계","docTypeAdr":"ADR","docTypeSpec":"명세서","docTypeGuide":"가이드","docSubtitlePrd":"제품 요구사항 문서","docSubtitleTechDesign":"기술 설계 문서","docSubtitleAdr":"아키텍처 결정 기록","docSubtitleSpec":"명세서","docSubtitleGuide":"가이드","acCount":"수락 기준 {count}개","depCount":"의존성 {count}개","storyPointsPlaceholder":"예: 4","cardsView":"카드","dependencyExists":"이미 존재하는 의존성입니다","cyclicDependency":"의존성을 추가할 수 없습니다: 순환이 발생합니다","failedToAddDependency":"의존성을 추가하지 못했습니다","taskDraftDetails":"작업 초안 세부 정보","newTaskDraft":"새 작업 초안","editTaskDraft":"수정","deleteTaskDraft":"작업 초안 삭제","deleteTaskDraftConfirm":"이 작업 초안을 삭제하시겠습니까?","dependsOn":"선행 작업","noDependencies":"의존성 없음","addDependency":"의존성 추가","selectDependency":"작업 선택...","removeDependency":"제거","viewMode":"보기","taskDraftSaved":"작업 초안이 저장되었습니다","deleteProposal":"제안 삭제","deleteProposalDesc":"이 제안을 삭제하시겠습니까? 이 작업은 되돌릴 수 없습니다."},"proposalValidation":{"title":"제출 체크리스트","passed":"모든 검사를 통과했습니다","hasErrors":"제출하기 전에 오류를 수정하세요","loading":"검사를 실행하는 중...","error":"오류","warning":"경고","info":"정보","errorCount":"오류 {count}개","warningCount":"경고 {count}개","E1":"PRD 문서를 하나 이상 포함해야 합니다","E2":"문서 \\"{title}\\"의 내용이 부족합니다 (최소 100자)","E3":"작업을 하나 이상 포함해야 합니다","E4":"입력 아이디어를 하나 이상 연결해야 합니다","E5":"아이디어 \\"{title}\\"에 해결되지 않은 구체화 항목이 있습니다","W1":"기술 설계 문서를 추가하는 것을 고려해 보세요","W2":"작업 \\"{title}\\"에 설명이 없습니다","E-AC":"작업 \\"{title}\\"에 수락 기준이 없습니다","W4":"여러 작업이 있지만 의존성이 정의되지 않았습니다","W5":"제안에 설명이 없습니다","I1":"작업 \\"{title}\\"에 우선순위가 설정되지 않았습니다","I2":"작업 \\"{title}\\"에 스토리 포인트가 산정되지 않았습니다"},"documents":{"title":"문서","subtitle":"PRD, 명세서, 프로젝트 문서","newDocument":"새 문서","all":"전체","noDocuments":"아직 문서가 없습니다","noDocumentsDesc":"문서는 제안이 승인되면 생성됩니다. 직접 문서를 만들 수도 있습니다.","createDocument":"문서 만들기","loadingDocuments":"문서를 불러오는 중...","documentNotFound":"문서를 찾을 수 없습니다","backToDocuments":"문서 목록으로 돌아가기","updated":"{date}에 수정됨","sourceProposal":"출처 제안","viewProposal":"제안 보기","versionHistory":"버전 기록","previousVersions":"개 이전 버전","documentContent":"문서 내용...","saveChanges":"변경사항 저장","titleLabel":"제목","titleRequired":"제목은 필수입니다","titlePlaceholder":"문서 제목을 입력하세요","typeLabel":"유형","uploadMarkdown":"마크다운 파일 (선택 사항)","clickToUpload":"클릭하여 마크다운 파일 업로드","characters":"자","createFailed":"문서를 만들지 못했습니다","typePrd":"PRD","typeSpec":"명세서","typeDesign":"디자인","typeTechDesign":"기술 설계","typeAdr":"ADR","typeGuide":"가이드","typeNote":"메모","typeReport":"리포트","typeOther":"기타","deleteDocument":"문서 삭제","deleteDocumentDescription":"\\"{title}\\"이(가) 영구적으로 삭제됩니다. 이 작업은 되돌릴 수 없습니다.","deleteSuccess":"문서가 삭제되었습니다.","deleteFailed":"문서를 삭제하지 못했습니다.","deleteFailedNotFound":"이 문서는 더 이상 존재하지 않습니다."},"references":{"title":"참고 자료","empty":"공식 문서, 참고 구현체 또는 이슈 스레드를 연결해 근거를 마련하세요.","loading":"참고 자료를 불러오는 중...","add":"추가","addReference":"참고 자료 추가","editReference":"참고 자료 편집","deleteReference":"참고 자료 삭제","deleteConfirm":"참고 자료 \\"{title}\\"이(가) 영구적으로 삭제됩니다. 이 작업은 되돌릴 수 없습니다.","typeLabel":"유형","typeDocs":"문서","typeRepo":"저장소","typeIssuePr":"이슈 / PR","typePaperBlog":"논문 / 블로그","urlLabel":"URL","urlPlaceholder":"https://example.com/...","urlRequired":"URL을 입력하세요","titleLabel":"제목","titlePlaceholder":"짧은 제목을 입력하세요","titleRequired":"제목을 입력하세요","notesLabel":"메모","notesPlaceholder":"선택 사항: 요약 또는 관련성 설명","addFailed":"참고 자료 추가에 실패했습니다","updateFailed":"참고 자료 업데이트에 실패했습니다","deleteFailed":"참고 자료 삭제에 실패했습니다","countLabel":"참고 자료 {count}개","toggleNotes":"전체 메모 보기"},"export":{"exportDocument":"내보내기","exportAs":"{format}(으)로 내보내기","formatMd":"마크다운 (.md)","formatPdf":"PDF (.pdf)","formatDocx":"Word (.docx)","exporting":"내보내는 중...","exportSuccess":"문서를 성공적으로 내보냈습니다","exportError":"문서를 내보내지 못했습니다","fetchingContent":"문서를 불러오는 중..."},"settings":{"title":"설정","subtitle":"계정 및 에이전트 구성을 관리하세요","breadcrumb":"Chorus / 설정","language":"언어","languageDesc":"선호하는 언어를 선택하세요","agents":"에이전트","agentsDesc":"개인 에이전트가 Chorus에 접근할 수 있도록 API 키를 만드세요. 각 키에는 서로 다른 역할을 배정할 수 있습니다.","createApiKey":"API 키 만들기","noApiKeys":"아직 API 키가 없습니다. 하나 만들어 시작하세요.","roles":"역할:","developerAgent":"개발자 에이전트","developerAgentDesc":"작업 실행, 코드 작성, 이슈 보고, 커밋","pmAgent":"PM 에이전트","pmAgentDesc":"요구사항 분석, 제안 작성, 작업 관리","adminAgent":"관리자 에이전트","adminAgentDesc":"사람 수준의 권한: 제안 승인, 작업 검증, 프로젝트 생성","created":"생성됨","apiKeyCreated":"API 키가 생성되었습니다","apiKeyCreatedDesc":"지금 이 키를 복사해 두세요. 다시 확인할 수 없습니다!","installGuideIntro":"지금 바로 에이전트를 연결하세요 — 아래에서 클라이언트를 선택하세요. 위의 키는 스니펫에 포함되어 있으며 다시 표시되지 않습니다.","name":"이름","namePlaceholder":"내 에이전트 키","agentRoles":"에이전트 역할","agentRolesDesc":"이 API 키가 접근할 수 있는 역할을 선택하세요.","agentPersona":"에이전트 페르소나","agentPersonaDesc":"프리셋을 선택하거나 직접 페르소나를 작성하세요. 이는 모든 상호작용에서 에이전트의 행동 방식을 정의합니다.","agentPersonaDescNoRoles":"모든 상호작용에서 이 에이전트가 어떻게 행동해야 하는지 정의하세요.","personaPlaceholder":"이 에이전트가 어떻게 행동해야 하는지 설명하세요. 예: \'당신은 명확함과 간결함을 중시하는 유용한 어시스턴트입니다...\'","personaHint":"페르소나는 매 체크인마다 에이전트의 컨텍스트에 주입됩니다.","personaHintNoRoles":"에이전트를 위한 맞춤 페르소나를 작성하세요.","creating":"생성 중...","confirmDelete":"이 API 키를 삭제하시겠습니까?","confirmDeleteTitle":"API 키 삭제","confirmDeleteDesc":"이 API 키를 삭제하시겠습니까? 이 작업은 되돌릴 수 없습니다.","editAgent":"에이전트 수정","saveChanges":"변경사항 저장","saving":"저장 중...","editAgentDesc":"이 에이전트의 이름, 역할, 페르소나를 수정하세요.","updateSuccess":"에이전트가 성공적으로 수정되었습니다","updateFailed":"에이전트를 수정하지 못했습니다","setupGuide":"설정 가이드","setupGuideDesc":"AI 에이전트 연결을 단계별로 설정하세요","openSetupGuide":"설정 가이드 열기","effectivePermissions":"적용된 권한","noEffectivePermissions":"부여된 권한이 없습니다","customRole":"사용자 지정"},"login":{"title":"Chorus","subtitle":"AI-인간 협업 플랫폼","email":"이메일","emailPlaceholder":"you@company.com","continue":"계속","checking":"확인 중...","helpText":"이메일을 입력해 로그인하거나 계정을 만드세요","networkError":"네트워크 오류입니다. 다시 시도해 주세요.","processingLogin":"로그인 처리 중...","sessionExpired":"세션이 만료되었습니다. 다시 로그인해 주세요.","completingAuth":"인증을 완료하는 중...","registeringUser":"사용자를 등록하는 중...","loginSuccess":"로그인에 성공했습니다! 이동 중...","authFailed":"인증에 실패했습니다","backToLogin":"로그인으로 돌아가기","noOrganizationFound":"이 이메일에 해당하는 조직을 찾을 수 없습니다","defaultAuth":{"title":"로그인","email":"이메일","password":"비밀번호","submit":"로그인","error":"이메일 또는 비밀번호가 올바르지 않습니다","ssoLink":"SSO로 로그인","orDivider":"또는"},"pickWorkspace":{"title":"워크스페이스 선택","subtitle":"회원님의 이메일은 {count}개의 워크스페이스에 등록되어 있습니다. 로그인할 워크스페이스를 선택하세요.","differentEmail":"다른 이메일 사용","loading":"워크스페이스를 불러오는 중...","noCandidates":"이 이메일에 대한 워크스페이스를 찾을 수 없습니다.","errorLoading":"워크스페이스를 불러오지 못했습니다. 다시 시도해 주세요."},"rolePicker":{"title":"이 이메일은 여러 방법으로 로그인할 수 있습니다. 계속할 방법을 선택하세요.","superAdmin":"슈퍼 관리자로 로그인","regularUser":"비밀번호로 로그인","oidcCompany":"{company}(으)로 로그인","oidcCompanyFallback":"SSO로 로그인","back":"다른 이메일 사용"}},"projectOverview":{"loadingProject":"프로젝트를 불러오는 중...","notFoundTitle":"프로젝트를 찾을 수 없습니다","backToProjects":"프로젝트 목록으로 돌아가기","settings":"설정","quickActions":"빠른 작업","addIdea":"아이디어 추가","viewKanban":"칸반 보기","browseDocuments":"문서 둘러보기","ideasSubtext":"열림 {open}개, 진행 중 {inProgress}개","tasksSubtext":"열림 {open}개, 검증 대기 {toVerify}개","documentsSubtext":"PRD, 명세서, 메모","proposalsSubtext":"검토 대기 {pending}개","deleteProject":"프로젝트 삭제","deleteProjectConfirm":"\\"{name}\\"을(를) 삭제하시겠습니까? 이 작업은 되돌릴 수 없으며 연결된 모든 아이디어, 제안, 작업, 문서, 활동이 영구적으로 삭제됩니다."},"personas":{"devPm":"개발 중심 PM","devPmDesc":"당신은 개발자 경험을 우선시하고 개발자 친화적인 제품을 만드는 프로덕트 매니저입니다. 기술적 제약을 이해하고 엔지니어링 팀과 효과적으로 소통합니다.","fullPm":"종합형 PM","fullPmDesc":"당신은 대상 사용자의 실제 문제를 해결하는 제품을 만든다는 마인드셋을 가진 종합적인 프로덕트 매니저입니다. 비즈니스 목표, 사용자 요구, 기술적 실현 가능성의 균형을 맞춥니다.","simplePm":"심플 PM","simplePmDesc":"당신은 과도한 설계를 피하고 핵심 기능을 우선시하는 집중형 프로덕트 매니저입니다. 빠르게 출시하고, 피드백을 수집하고, 신속하게 반복하는 것을 신조로 삼습니다.","seniorDev":"시니어 개발자","seniorDevDesc":"당신은 확장 가능한 시스템 구축에 폭넓은 경험을 가진 시니어 소프트웨어 개발자입니다. 깔끔하고 유지보수하기 쉬운 코드를 작성하며 모범 사례를 따릅니다. 주니어 개발자를 멘토링하고 아키텍처 결정을 내립니다.","fullstackDev":"풀스택 개발자","fullstackDevDesc":"당신은 전체 스택에서 유연하게 작업할 수 있는 풀스택 개발자입니다. API 구축, 데이터베이스 설계, 반응형 UI 제작이 가능합니다. 사용자 경험과 성능을 우선시합니다.","pragmaticDev":"실용주의 개발자","pragmaticDevDesc":"당신은 빠르게 동작하는 솔루션을 제공하는 데 집중하는 실용적인 개발자입니다. 섣부른 최적화를 피하고, 핵심 경로에 대한 테스트를 작성하며, 복잡한 추상화보다 단순한 솔루션을 선호합니다.","carefulAdmin":"신중한 관리자","carefulAdminDesc":"당신은 승인 전에 모든 제안과 작업을 철저히 검토하는 신중한 관리자입니다. 수락 기준이 충족되었는지 확인하고, 잠재적 문제를 점검하며, 판단 근거를 문서화합니다. 확신이 서지 않을 때는 무작정 승인하기보다 명확한 설명을 요청하는 것을 선호합니다.","efficientAdmin":"효율적인 관리자","efficientAdminDesc":"당신은 품질 기준을 유지하면서도 승인 프로세스를 간소화하는 효율적인 관리자입니다. 팀의 작업을 신뢰하지만 필요한 점검은 수행합니다. 기본적인 품질 게이트를 충족하는지 확인하면서 작업을 신속하게 진행시키는 데 집중합니다."},"sessions":{"title":"세션","activeSessions":"활성 세션","noSessions":"지난 한 시간 동안 활성 세션이 없습니다","close":"닫기","reopen":"다시 열기","closeConfirm":"이 세션을 닫으시겠습니까?","statusActive":"활성","statusInactive":"비활성","statusClosed":"닫힘","activeWorkers":"활성 작업자","workerCount":"작업자 {count}명","checkedInSince":"{time}에 체크인함","lastActive":"{time} 마지막 활동","checkins":"작업 {count}개"},"pixelCanvas":{"title":"워크스페이스"},"notifications":{"title":"알림","markAllRead":"모두 읽음으로 표시","noNotifications":"알림이 없습니다","noUnread":"읽지 않은 알림이 없습니다","viewAll":"전체 보기","tabAll":"전체","tabUnread":"읽지 않음","justNow":"방금 전","minutesAgo":"{count}분 전","hoursAgo":"{count}시간 전","daysAgo":"{count}일 전","projectBadge":"프로젝트","notificationPreferences":"알림 설정","loadMore":"더 보기","viewDetail":"보기","types":{"proposal_approved":"제안이 승인됨","proposal_rejected":"제안이 거부됨","proposal_submitted":"제안이 제출됨","task_assigned":"작업이 배정됨","task_status_changed":"작업 상태가 변경됨","task_submitted_for_verify":"작업이 검증 요청됨","task_verified":"작업이 검증됨","task_reopened":"작업이 다시 열림","comment_added":"새 댓글","idea_claimed":"아이디어를 가져감","elaboration_requested":"구체화가 요청됨","elaboration_answered":"구체화에 답변함","mentioned":"회원님이 멘션되었습니다","agent_checkin":"에이전트가 성공적으로 연결됨","report_created":"새 리포트"},"preferences":{"title":"알림 설정","description":"알림을 발생시킬 이벤트를 설정하세요","taskEvents":"작업 이벤트","proposalEvents":"제안 이벤트","ideaEvents":"아이디어 이벤트","commentEvents":"댓글 이벤트","taskAssigned":"작업 배정됨","taskStatusChanged":"작업 상태 변경됨","taskVerified":"작업 검증됨","taskReopened":"작업 다시 열림","proposalSubmitted":"제안 제출됨","proposalApproved":"제안 승인됨","proposalRejected":"제안 거부됨","ideaClaimed":"아이디어 가져감","commentAdded":"댓글 추가됨","elaborationEvents":"구체화 이벤트","elaborationRequested":"구체화 요청됨","elaborationAnswered":"구체화 답변됨","mentionEvents":"멘션 이벤트","mentioned":"댓글이나 콘텐츠에서 멘션됨"}},"elaboration":{"title":"요구사항 구체화","answeredCounter":"{total}개 중 {answered}개 답변함","roundLabel":"{number}차","validated":"검증됨","pendingAnswers":"답변 대기 중","statusAnswered":"답변함","appendedBadge":"후속","noAnswer":"답변 없음","otherOption":"기타","otherPlaceholder":"구체적으로 입력해 주세요...","submitAnswers":"답변 제출","confirmAnswerAria":"답변 확인","submitting":"제출 중...","submitFailed":"답변 제출에 실패했습니다","navCounter":"{total} 중 {current}","questionCount":"질문 {count}개","somethingElse":"다른 항목","skipButton":"구체화 건너뛰기","skipConfirmTitle":"구체화를 건너뛰시겠습니까?","skipConfirmDescription":"구조화된 질의응답 없이 요구사항을 해결됨으로 표시합니다. 명확하고 단순한 요청에만 건너뛰는 것이 좋습니다.","skipReasonLabel":"건너뛰는 이유","skipReasonPlaceholder":"예: 재현 단계가 명확한 버그 수정","skipReasonRequired":"이유를 입력해 주세요","verifyButton":"구체화 검증","verifying":"검증 중...","verifyFailed":"구체화를 검증하지 못했습니다","verifiedQueuedHint":"검증됨 — 에이전트가 이용 가능해지면 제안을 작성합니다.","category":{"functional":"기능적","nonFunctional":"비기능적","businessContext":"비즈니스 맥락","technicalContext":"기술적 맥락","userScenario":"사용자 시나리오","scope":"범위"}},"startDevelopment":{"button":"개발 시작","starting":"시작 중...","startedHint":"개발이 시작되었습니다 — 에이전트가 남은 작업을 실행하고 있습니다","offlineHint":"에이전트 오프라인 — 재연결 시 사용 가능","errorAgentOffline":"배정된 에이전트가 오프라인입니다. 다시 연결된 후 개발을 시작하세요.","errorInstanceOffline":"이 아이디어는 오프라인 상태인 데몬 인스턴스에 고정되어 있습니다. 해당 인스턴스가 다시 연결된 후 개발을 시작하세요.","errorNoApprovedProposal":"이 아이디어에는 승인된 제안이 아직 없습니다","errorNoUnfinishedTasks":"모든 작업이 이미 완료되었습니다","errorAssigneeNotAgent":"이 아이디어의 담당자는 에이전트가 아닙니다","errorGeneric":"개발을 시작하지 못했습니다"},"yolo":{"button":"Yolo","cancel":"취소","confirmTitle":"이 아이디어에 Yolo를 실행하시겠습니까?","confirmDescription":"Yolo는 배정된 에이전트를 깨워 yolo 스킬에 따라 구체화, 제안, 실행, 검증까지 이 아이디어를 자동으로 완료까지 진행시킵니다. 회원님의 승인 없이는 풀 리퀘스트를 병합하거나 푸시하지 않습니다. 계속하시겠습니까?","confirmCta":"Yolo 실행","starting":"시작 중...","startedHint":"Yolo가 시작되었습니다 — 에이전트가 이 아이디어를 완료까지 진행시키고 있습니다","offlineHint":"에이전트 오프라인 — 재연결 시 사용 가능","errorAgentOffline":"배정된 에이전트가 오프라인입니다. 다시 연결된 후 Yolo를 실행하세요.","errorInstanceOffline":"이 아이디어는 오프라인 상태인 데몬 인스턴스에 고정되어 있습니다. 해당 인스턴스가 다시 연결된 후 Yolo를 실행하세요.","errorAssigneeNotAgent":"이 아이디어의 담당자는 에이전트가 아닙니다","errorGeneric":"Yolo를 시작하지 못했습니다"},"projectGroups":{"newProjectGroup":"새 프로젝트 그룹","projectCount":"개 프로젝트","complete":"완료","openIdeas":"개 열린 아이디어","viewDashboard":"대시보드 보기","ungrouped":"미분류","noProjectsInGroup":"아직 이 그룹에 프로젝트가 없습니다.","newGroupTitle":"새 프로젝트 그룹","groupName":"그룹 이름","groupNamePlaceholder":"예: 모바일 앱","descriptionOptional":"설명 (선택 사항)","descriptionPlaceholder":"이 그룹에 대해 간단히 설명해 주세요...","createGroup":"그룹 만들기","createFailed":"프로젝트 그룹을 만들지 못했습니다","newProjectTitle":"새 프로젝트","creatingIn":"생성 위치: {groupName}","projectTitle":"프로젝트 이름","projectTitlePlaceholder":"예: Project Alpha","projectDescriptionPlaceholder":"이 프로젝트에 대해 간단히 설명해 주세요...","createProject":"프로젝트 만들기","moveTitle":"프로젝트를 다른 그룹으로 이동하시겠습니까?","moveDescription":"\\"{projectName}\\"을(를) {sourceGroupName} 그룹에서 {targetGroupName} 그룹으로 이동합니다.","confirmMove":"이동 확인","moveFailed":"프로젝트를 이동하지 못했습니다","manageGroup":"그룹 관리","saveChanges":"변경사항 저장","saving":"저장 중...","cancel":"취소","deleteGroup":"이 그룹 삭제","deleteConfirmTitle":"정말 삭제하시겠습니까?","deleteConfirmDesc":"이 작업은 되돌릴 수 없습니다. 이 그룹에 있는 프로젝트를 어떻게 처리할지 선택하세요.","deleteKeepProjects":"프로젝트 {count}개를 미분류로 이동","deleteWithProjects":"프로젝트 {count}개 영구 삭제","confirmDelete":"그룹 삭제","deleting":"삭제 중..."},"groupDashboard":{"subtitle":"프로젝트 {count}개 \xb7 통합 대시보드","editGroup":"그룹 수정","manageProjects":"프로젝트 관리","statProjects":"프로젝트","statTotalTasks":"전체 작업","statCompletionRate":"완료율","statOpenIdeas":"열린 아이디어","statActiveProposals":"활성 제안","projectsInGroup":"이 그룹의 프로젝트","newProject":"새 프로젝트","projectStats":"작업 {tasks}개 \xb7 완료율 {completion}%","noProjects":"아직 이 그룹에 프로젝트가 없습니다","noProjectsHint":"위의 \\"새 프로젝트\\"를 클릭해 추가하세요"},"acceptanceCriteria":{"title":"수락 기준","noItems":"구조화된 수락 기준이 없습니다","status":{"pending":"대기 중","passed":"통과","failed":"실패","notStarted":"시작 전","inProgress":"진행 중"},"acceptanceStatus":{"not_started":"시작 전","in_progress":"진행 중","passed":"모두 통과","failed":"실패"},"required":"필수","optional":"선택","devSelfCheck":"개발자 자체 점검","verification":"검증","evidence":"증빙","pass":"통과","fail":"실패","undoVerification":"취소","devEvidence":"개발 증빙","verifyEvidence":"검증 증빙","noEvidence":"증빙 없음","dismiss":"닫기","progress":"{total}개 중 {passed}개 검증됨","requiredProgress":"필수 {required}개 중 {passed}개 통과","gateBlocked":"검증 불가: 필수 기준 {count}개가 아직 통과하지 않았습니다","gateReady":"모든 필수 기준을 통과했습니다","addCriterion":"기준 추가","removeCriterion":"제거","criterionPlaceholder":"수락 기준을 설명해 주세요...","atLeastOneRequired":"설명이 비어 있지 않은 수락 기준을 하나 이상 입력해야 합니다."},"onboarding":{"skip":"나중에 하기","next":"다음","back":"뒤로","steps":{"welcome":"환영","createAgent":"에이전트 만들기","copyKey":"키 복사","installGuide":"설치","testConnection":"테스트","completion":"완료"},"welcome":{"title":"Chorus에 오신 것을 환영합니다","description":"Chorus는 AI-인간 협업 플랫폼입니다. AI 에이전트는 제안하고, 사람은 검증합니다 — 체계적인 개발 라이프사이클을 통해서요.","getStarted":"시작하기","pipelineTitle":"AI 기반 개발 라이프사이클","pipeline":{"idea":"아이디어","proposal":"제안","task":"작업","execute":"실행","verify":"검증","done":"완료"}},"completion":{"title":"모든 준비가 끝났습니다!","description":"에이전트 설정이 완료되어 협업할 준비가 되었습니다. 프로젝트를 만들거나 설정을 살펴보며 시작해 보세요.","summary":"설정 요약","agentName":"에이전트 이름","agentRoles":"역할","agentPreset":"프리셋","agentPermissions":"권한","permissionsCount":"권한 {count}개","goToProjects":"프로젝트로 이동","goToSettings":"설정으로 이동"},"createAgent":{"title":"AI 에이전트 만들기","description":"회원님의 워크플로에 맞는 권한과 페르소나로 AI 에이전트를 설정하세요. 에이전트를 위한 API 키가 생성됩니다.","nameLabel":"에이전트 이름","namePlaceholder":"예: my-dev-agent","personaLabel":"페르소나 (선택 사항)","personaPlaceholder":"이 에이전트가 어떻게 행동해야 하는지 설명하세요 — 어조, 우선순위, 제약사항.","personaHint":"페르소나는 에이전트의 행동을 형성하기 위해 시스템 프롬프트에 추가됩니다.","submit":"에이전트 만들기","creating":"에이전트를 생성하는 중..."},"copyKey":{"title":"API 키 복사","description":"이 API 키를 안전한 곳에 저장하세요. AI 에이전트 클라이언트를 설정할 때 필요합니다.","warning":"지금 이 키를 복사해 두세요. 다시 확인할 수 없습니다!","copy":"키 복사","copied":"복사됨!"},"install":{"description":"AI 에이전트 클라이언트를 선택하고 아래 설정 안내를 따르세요.","tabs":{"claudeCode":"Claude Code","codex":"Codex","kiro":"Kiro","opencode":"OpenCode","openClaw":"OpenClaw","other":"기타 에이전트"},"claudeCode":{"step1Title":"1단계: 환경 변수 설정","step1Tip":"팁: 지속적으로 사용하려면 ~/.bashrc 또는 ~/.zshrc에 추가하세요.","step2Title":"2단계: Claude Code를 열고 다음을 실행하세요"},"codex":{"step1Title":"1단계: 환경 변수 설정","step1Tip":"팁: 지속적으로 사용하려면 ~/.bashrc 또는 ~/.zshrc에 추가하세요.","step2Title":"2단계: Codex 설치 프로그램 실행","step2Tip":"이 스크립트는 플러그인 마켓플레이스를 등록하고 MCP 서버 항목을 ~/.codex/config.toml에 기록합니다.","step3Title":"3단계: 연결 확인","step3Desc":"Codex를 열고 Chorus에 체크인하도록 요청하세요 — 예: \\"check in to chorus\\"라고 입력합니다."},"kiro":{"step1Title":"1단계: 환경 변수 설정","step1Tip":"팁: Kiro CLI가 시작 시 읽을 수 있도록 ~/.bashrc 또는 ~/.zshrc에 추가하세요.","step2Title":"2단계: Kiro 설치 프로그램 실행","step2Tip":"기본적으로 ~/.kiro/에 전역 설치되어 모든 디렉터리에서 Chorus를 사용할 수 있습니다. 현재 디렉터리의 .kiro/에만 설치하려면 플래그를 추가하세요: bash -s -- --workspace.","step3Title":"3단계: 연결 확인","step3Desc":"Kiro CLI를 열고 /chorus-idea 스킬을 활성화하거나, Chorus 에이전트로 바로 시작하세요: kiro-cli --agent chorus."},"opencode":{"step1Title":"1단계: 환경 변수 설정","step1Tip":"팁: OpenCode 시작 시 플러그인이 읽을 수 있도록 ~/.bashrc 또는 ~/.zshrc에 추가하세요.","step2Title":"2단계: Chorus 플러그인 활성화","step2Tip":"설치 프로그램은 ~/.config/opencode/opencode.json의 \\"plugin\\" 배열에 \\"opencode-chorus\\"를 멱등하게 추가합니다. 셸 rc 파일은 건드리지 않습니다. OpenCode는 처음 실행 시 Bun을 통해 플러그인을 설치합니다.","step3Title":"3단계: 연결 확인","step3Desc":"OpenCode를 열고 에이전트에게 \\"check in to chorus\\"라고 요청하세요. 연결에 성공하면 이 단계는 자동으로 다음으로 넘어갑니다.","troubleshootingTitle":"문제 해결","issueCache":{"title":"플러그인이 로드되지 않음","fix":"`rm -rf ~/.cache/opencode/packages/opencode-chorus@latest`로 플러그인 캐시를 지우고 OpenCode를 다시 시작하세요."},"issueEnv":{"title":"환경 변수가 적용되지 않음","fix":"CHORUS_URL과 CHORUS_API_KEY가 내보내진(export) 셸에서 OpenCode를 실행했는지 확인하세요. 필요하면 셸 rc 파일을 다시 source하세요."},"issueCheckin":{"title":"체크인이 응답하지 않음","fix":"CHORUS_API_KEY에 오타나 공백이 있는지 다시 확인하세요. 그래도 플러그인이 로드되지 않으면 OpenCode를 업그레이드해 보세요."}},"openClaw":{"step1Title":"1단계: 플러그인 설치","step2Title":"2단계: ~/.openclaw/openclaw.json 편집","step3Title":"3단계: OpenClaw 게이트웨이 재시작","step3Desc":"새 설정을 적용하려면 OpenClaw 게이트웨이 프로세스를 재시작하세요.","step4Title":"4단계: 연결 확인","step4Desc":"OpenClaw 채팅 창에서 다음 명령어를 입력하세요:","troubleshootingTitle":"문제 해결","troubleshootingError":"\\"Wake agent failed: HTTP 405\\"","troubleshootingFix":"이 오류는 훅(hooks)이 활성화되지 않았음을 의미합니다. openclaw.json 설정에서 \\"hooks.enabled\\"를 true로 설정하고 게이트웨이를 재시작하세요."},"other":{"description":"아래 프롬프트를 복사하여 AI 에이전트에게 전달해 Chorus 연결을 설정하세요."}},"testConnection":{"title":"연결 테스트","waiting":"에이전트의 연결을 기다리는 중...","waitingFor":"{name}의 체크인을 기다리는 중","connected":"에이전트가 성공적으로 연결되었습니다!","checkinHint":"이 프롬프트를 복사해 에이전트에게 보내 연결을 확인하세요:","checkinPrompt":"chorus_checkin()을 실행하여 Chorus에 연결하고 연결을 확인해 주세요."},"placeholder":{"createAgent":"이 단계에서는 AI 에이전트를 만들 수 있습니다. 곧 제공됩니다.","copyKey":"이 단계에서는 API 키를 복사할 수 있습니다. 곧 제공됩니다.","installGuide":"이 단계에서는 설치를 안내합니다. 곧 제공됩니다.","testConnection":"이 단계에서는 에이전트 연결을 테스트합니다. 곧 제공됩니다."}},"ideaTracker":{"overview":"개요","overviewSubtitle":"아이디어, 제안, 작업을 한눈에 추적하세요","tabs":{"ideas":"아이디어","lineage":"계보","stats":"통계"},"badge":{"open":"열림","researching":"조사 중","answerQuestions":"질문에 답변","planning":"계획 중","reviewProposal":"제안 검토","building":"개발 중","verifyWork":"작업 검증","done":"완료","closed":"종료됨"},"status":{"todo":"할 일","inProgress":"진행 중","humanConductRequired":"사람의 처리 필요","done":"완료"},"lineage":{"derivedCount":"파생 {count}개","title":"계보","derivedFrom":"파생 출처","setParent":"상위 항목 설정","changeParent":"상위 항목 변경","derivedIdeas":"파생된 아이디어","derive":"파생","deriveIdea":"새 아이디어 파생","noParent":"상위 항목 없음","setParentTitle":"상위 아이디어 설정","setParentDescription":"\\"{title}\\"의 상위 아이디어를 선택하세요. 같은 프로젝트의 아이디어만 선택할 수 있으며, 아이디어는 자기 자신이나 하위 항목의 하위로 설정할 수 없습니다 (순환이 발생하기 때문입니다).","searchPlaceholder":"아이디어 검색...","detach":"분리 (최상위로 만들기)","cycleBlocked":"하위 항목 \xb7 순환 발생","cycleWarning":"회색으로 표시된 아이디어는 이 아이디어의 하위 항목입니다. 선택하면 순환이 발생하므로 비활성화되어 있습니다.","noCandidates":"이 프로젝트에 선택 가능한 아이디어가 없습니다","pickerTruncated":"처음 200개의 아이디어만 표시됩니다. 원하는 상위 항목이 보이지 않으면 제목으로 검색해 좁혀보세요.","save":"상위 항목으로 설정","saveFailed":"상위 항목 설정에 실패했습니다","deriveFailed":"아이디어 파생에 실패했습니다","container":"테마","containerDescription":"테마는 관련된 하위 아이디어를 묶어 공통 방향을 정합니다. 구체화는 가능하지만 실제 작업은 테마에서 파생한 아이디어에서 이루어지며, 테마 자체는 제안을 작성하지 않습니다.","containerBadge":"테마","typeIdea":"아이디어","typeTheme":"테마","makeContainer":"테마로 설정","containerHint":"테마는 하위 아이디어를 파생하며 진행됩니다.","childrenDone":"{done}/{total} 완료"},"actions":{"newIdea":"새 아이디어","untitledIdea":"제목 없는 아이디어","search":"아이디어 검색...","retry":"다시 시도","assign":"배정","reassign":"재배정"},"empty":{"noIdeas":"아직 아이디어가 없습니다","getStarted":"아이디어는 구체화, 제안, 작업으로 이어집니다 — 하나 만들어 시작해 보세요","noResults":"검색과 일치하는 아이디어가 없습니다","groupEmpty":"이 상태의 아이디어가 없습니다"},"newIdea":{"title":"새 아이디어","ideaTitle":"제목","titlePlaceholder":"어떤 아이디어인가요?","description":"설명","descriptionPlaceholder":"아이디어를 명확히 하는 데 도움이 되는 배경, 목표, 세부 정보를 추가하세요...","modeForm":"양식 작성","modeConversation":"에이전트에게 설명","modeConversationOfflineHint":"에이전트에게 설명하려면 온라인 상태인 데몬이 필요합니다.","decompose":"하위 아이디어로 나누도록 도와주세요","decomposeHint":"테마를 생성하고, 에이전트가 확인용 하위 아이디어 후보를 제안하도록 합니다."},"error":{"loadFailed":"아이디어를 불러오지 못했습니다","createFailed":"아이디어를 만들지 못했습니다"},"loading":"로딩 중...","justNow":"방금 전","minutesAgo":"{minutes}분 전","hoursAgo":"{hours}시간 전","daysAgo":"{days}일 전","stats":{"totalIdeas":"전체 아이디어","totalTasks":"전체 작업","totalProposals":"전체 제안","totalDocuments":"전체 문서","openCount":"열림 {count}개","activeCount":"활성 {count}개","pendingCount":"대기 중 {count}개","taskPipeline":"작업 파이프라인","totalCount":"전체 {count}개","todoCount":"할 일: {count}","inProgressCount":"진행 중: {count}","toVerifyCount":"검증 대기: {count}","doneCount":"완료: {count}","noTasks":"아직 작업이 없습니다","recentActivity":"최근 활동","viewAll":"전체 보기","noActivity":"최근 활동이 없습니다"},"panel":{"notFound":"아이디어를 찾을 수 없습니다","loadFailed":"아이디어를 불러오지 못했습니다","verifyingPlaceholder":"검증이 진행 중입니다...","donePlaceholder":"이 아이디어는 완료되었습니다.","elaborationStatus":"구체화 상태","elaborationRounds":"구체화 질의응답","elaborationNotStarted":"아직 시작하지 않음","elaborationNotStartedDesc":"요구사항 구체화를 시작하려면 이 아이디어를 에이전트에게 배정하세요.","elaborationWaiting":"에이전트 대기 중","elaborationWaitingDesc":"PM 에이전트가 곧 구체화를 시작합니다.","elaboration":{"pendingAnswers":"답변 대기 중","validating":"검증 중","resolved":"해결됨"},"noProposals":"아직 이 아이디어에 연결된 제안이 없습니다","viewProposal":"전체 제안 보기","tabs":{"overview":"개요","elaboration":"구체화","proposal":"제안","tasks":"작업","activity":"활동"},"timeline":{"ideaCreated":"아이디어 생성됨","elaboration":"구체화","proposal":"제안","tasksProgress":"작업","noElaboration":"시작 전","elaborationComplete":"해결됨 (질문 {count}개)","elaborationInProgress":"진행 중","elaborationSkipped":"건너뜀","noProposal":"아직 생성되지 않음","proposalApproved":"승인됨","proposalsApproved":"{total}개 중 {count}개 승인됨","proposalPending":"검토 대기","proposalDraft":"초안","proposalRejected":"거부됨","tasksComplete":"{total}개 중 {done}개 완료","noTasks":"아직 작업이 없습니다","createdBy":"{name}님이 생성함","documents":"문서 {count}개","tasks":"작업 {count}개","rounds":"{count}회","moreItems":"외 {count}개 더"},"taskList":{"inProgress":"진행 중","toVerify":"검증 대기","open":"열림","done":"완료","noTasks":"사용 가능한 작업이 없습니다","assigned":"배정됨","closed":"종료됨","summary":"{total}개 중 {done}개 완료","acSummary":"{total}개 중 {passed}개 기준 통과","agentWorking":"에이전트 {count}명 작업 중","workersActive":"작업자 {count}명","viewKanban":"칸반"},"activityTab":{"activity":"활동","comments":"댓글"}}},"search":{"placeholder":"작업, 아이디어, 제안, 문서 검색...","scopeGlobal":"전체","scopeGroup":"그룹","scopeProject":"이 프로젝트","filterAll":"전체","filterTasks":"작업","filterIdeas":"아이디어","filterProposals":"제안","filterDocuments":"문서","filterProjects":"프로젝트","noResults":"결과를 찾을 수 없습니다","resultCount":"결과 {count}개","entityType":{"task":"작업","idea":"아이디어","proposal":"제안","document":"문서","project":"프로젝트","project_group":"그룹"}},"agent":{"permissions":{"title":"권한","description":"프리셋으로 시작하거나 권한 매트릭스를 직접 사용자 지정하세요.","presetLabel":"프리셋","presetAdmin":"관리자","presetPm":"PM","presetDev":"개발자","presetCustom":"사용자 지정","resourceHeader":"리소스","resources":{"idea":"아이디어","proposal":"제안","document":"문서","task":"작업","project":"프로젝트"},"actions":{"read":"읽기","write":"쓰기","admin":"관리"},"help":{"admin":"승인/검증/다시 열기를 포함해 모든 리소스에 대한 전체 접근 권한입니다. 관리 업무를 담당하는 에이전트에게 권장합니다.","pm":"작업 계획 및 진행: 아이디어, 제안, 문서, 작업, 프로젝트를 관리합니다. 승인이나 검증 권한은 없습니다.","dev":"작업 실행: 아이디어, 제안, 문서, 프로젝트를 읽고 작업을 생성 및 수정합니다. 승인이나 검증은 할 수 없습니다.","custom":"개별 권한을 직접 선택합니다. 관리(승인/검증/종료) 관련 작업은 사용자 지정 모드에서만 설정할 수 있습니다."}}},"idea":{"reportsList":"보고서","reportsAcrossProposals":"승인된 모든 제안 전체"},"agentConnections":{"title":"에이전트 연결","subtitle":"회원님을 대신해 Chorus에 연결된 로컬 에이전트를 실시간으로 확인합니다. 회원님 소유의 연결만 표시됩니다.","summary":"{total}개 중 {online}개 온라인","loading":"연결을 불러오는 중...","railHeader":"연결","statusOnline":"온라인","statusOffline":"오프라인","fieldHost":"호스트","fieldUptime":"가동 시간","fieldLastActive":"마지막 활동","fieldStarted":"시작 시각","hostUnknown":"알 수 없는 호스트","startedUnknown":"알 수 없음","versionUnknown":"?","unknownAgent":"알 수 없는 에이전트","clientClaudeCode":"Claude Code","clientOpenclaw":"OpenClaw","clientCodex":"Codex","clientKiro":"Kiro","clientUnknown":"알 수 없는 클라이언트","uptimeMonoDays":"{days}일 {time}","mobileBack":"연결","selectPrompt":"세부 정보를 보려면 연결을 선택하세요.","execTitle":"실행","execRunning":"실행 중","execQueued":"대기 중","execInterrupted":"중단됨","execInterruptedUser":"중단됨","execInterruptedCrash":"충돌함","execCrashExited":"오류로 종료됨","execWaiting":"대기 중","execLoading":"실행 상태를 불러오는 중...","execElapsedLabel":"시작 후 경과 시간","execSession":"아이디어: {idea}","execEmptyTitle":"실행 중인 작업 없음","execEmptyBody":"이 연결에는 현재 실행 중이거나 대기 중인 작업이 없습니다. 데몬이 작업을 받으면 여기에 표시됩니다.","empty":{"title":"아직 에이전트 연결이 없습니다"},"loadErrorTitle":"연결을 불러올 수 없습니다","loadErrorBody":"연결 서비스에 접근할 수 없습니다. 목록이 비어 있는 것이 아니라 불러오기 문제입니다 — 에이전트는 여전히 온라인 상태일 수 있습니다. 자동으로 다시 시도합니다.","execEntityUnknown":"알 수 없는 리소스","execConversation":"대화","entityTask":"작업","entityIdea":"아이디어","entityProposal":"제안","entityDocument":"문서","entityUnknown":"리소스","interrupt":"중단","interrupting":"중단하는 중…","interruptAria":"이 실행 중인 작업 중단","interruptConfirmTitle":"이 실행을 중단하시겠습니까?","interruptConfirmBody":"\\"{title}\\"에 대한 데몬의 실행 중인 세션을 중지합니다. 에이전트에게 정상적으로 중지하도록 요청하며, 응답하지 않으면 강제로 중지됩니다. 이후 이 페이지에서 다시 시작할 수 있습니다.","interruptConfirmAction":"중단","interruptSuccess":"\\"{title}\\"에 대한 중단을 요청했습니다.","interruptError":"중단 요청에 실패했습니다. 다시 시도해 주세요.","resume":"재개","resuming":"재개하는 중…","resumeAria":"이 중단된 실행 재개","resumeSuccess":"\\"{title}\\"에 대한 재개를 요청했습니다.","resumeError":"재개 요청에 실패했습니다. 다시 시도해 주세요.","sendInstruction":"지시 보내기","sendInstructionPlaceholder":"이 세션에 대한 지시를 입력하세요…","send":"보내기","instructionHint":"Cmd/Ctrl + Enter를 눌러 전송하세요.","instructionCounter":"{count} / {max}","instructionSent":"지시가 전송되었습니다.","instructionError":"지시를 전달하지 못했습니다. 다시 시도해 주세요.","instructionEmpty":"전송하기 전에 지시를 입력하세요.","instructionTooLong":"지시가 너무 깁니다. {max}자 이하로 줄여 주세요.","originOnlineTag":"출처 온라인","originOfflineTag":"출처 오프라인","originOffline":"이 세션의 출처 데몬이 오프라인이라 읽기 전용입니다. 대신 새 대화를 시작하세요.","noOnlineConnection":"이 에이전트에는 전송할 수 있는 온라인 연결이 없습니다. 데몬을 시작한 후 지시를 보내세요.","targetConversation":"대화","newConversation":"새 대화","sessionIdeaLabel":"아이디어 {id}","sessionAdHocLabel":"세션 {id}","adHocTitle":"새 세션 시작","adHocBody":"온라인 연결을 선택하고 첫 지시를 보내세요. 새 세션은 해당 연결의 시작 디렉터리에서 실행됩니다.","pickConnection":"연결","pickConnectionPlaceholder":"온라인 연결 선택","startSession":"세션 시작","adHocSessionStarted":"세션이 시작되었습니다. 에이전트가 곧 이를 처리합니다.","entityConversation":"대화"},"daemonChat":{"title":"대화","subtitle":"에이전트가 수행한 작업을 턴 단위로 확인하세요. 대화를 이어가거나 인라인으로 중단할 수 있습니다.","agentSelectLabel":"에이전트","agentSelectPlaceholder":"에이전트 선택","agentSessionCount":"대화 {count}개","listHeader":"대화","loadMore":"더 보기","loadEarlier":"이전 메시지 불러오기","loadingEarlier":"이전 메시지를 불러오는 중…","loading":"대화를 불러오는 중…","transcriptLoading":"대화 기록을 불러오는 중…","mobileBack":"대화","conversationAdHoc":"대화 {id}","conversationIdea":"아이디어 {id}","badgeIdea":"아이디어","running":"실행 중","runningElapsedLabel":"이번 실행 시작 후 경과 시간","statusActive":"활성","statusEnded":"종료됨","statusInterrupted":"중단됨","statusError":"오류","turnStatusPending":"대기 중","turnStatusRunning":"실행 중","turnStatusInterrupted":"중단됨","turnStatusEnded":"종료됨","triggerTask":"작업","triggerMention":"멘션","triggerElaboration":"구체화","triggerInstruction":"지시","triggerResume":"재개","triggerUnknown":"턴","turnLabel":"{seq}번째 턴","openTask":"작업 열기","openIdea":"아이디어 열기","roleYou":"회원님","roleAgent":"에이전트","turnNoMessages":"이 턴에 대해 보존된 기록이 없습니다.","privacyNote":"대화 기록은 에이전트의 데몬이 보고한 것으로, 로컬 파일 경로가 포함될 수 있습니다. 가장 최근 메시지만 보관됩니다.","noAgents":{"title":"아직 대화가 없습니다","body":"작업, 멘션, 구체화, 또는 회원님이 보낸 지시로 에이전트가 깨어나면 그 대화가 여기에 표시됩니다."},"noSessions":{"title":"이 에이전트에 대한 대화가 없습니다","body":"작성창에서 지시를 보내 대화를 시작하세요."},"newConversationButton":"새 대화","newConversationTitle":"새 대화","newConversationBody":"{agent}에게 첫 지시를 보내세요. 선택한 연결에서 새 세션이 시작됩니다.","newConversationNoAgent":"왼쪽에서 에이전트를 선택한 다음 첫 지시를 보내 대화를 시작하세요.","newConversationNoOnlineTitle":"온라인 연결 없음","newConversationNoOnlineBody":"이 에이전트에는 대화할 수 있는 온라인 데몬이 없습니다. 데몬을 시작한 후 여기서 지시를 보내세요.","replyPlaceholder":"이 대화에 답장…","selectPrompt":"대화 기록을 보려면 대화를 선택하세요.","loadErrorTitle":"이 대화를 불러올 수 없습니다","loadErrorBody":"대화 기록 서비스에 접근할 수 없습니다. 대화가 비어 있는 것이 아니라 불러오기 문제입니다. 다시 열면 재시도합니다.","originOfflineNote":"이 대화의 출처 데몬이 오프라인이라 읽기 전용입니다. 기록은 계속 표시되며, 전송하려면 온라인 디렉터리에서 이어가세요.","continueOnlineAction":"온라인 디렉터리에서 이어가기","continueOnlineHelp":"같은 대화를 유지하면서 이 에이전트의 온라인 작업 디렉터리 중 하나에서 이어갑니다. 새로 시작하는 형태로 이어지며 (위의 기록은 읽기 전용 컨텍스트로 남습니다).","continueOnlineStarted":"온라인 디렉터리에서 이어가는 중","detailsLabel":"연결 세부 정보","detailsHostUnknown":"알 수 없는 호스트","detailUptime":"가동 시간","detailHost":"호스트","detailStarted":"시작 시각","copySessionId":"세션 ID 복사","sessionIdCopied":"복사됨!"},"agentPresence":{"online":"온라인","onlineUnit":"에이전트 {count}명 온라인","loading":"에이전트 확인 중…","unavailable":"에이전트를 사용할 수 없습니다","pillAria":"온라인 에이전트 — 세부 정보 열기","popoverTitle":"온라인 에이전트","connectionIdle":"유휴 상태 — 실행 중이거나 대기 중인 작업이 없습니다.","viewAll":"전체 보기","unknownPath":"알 수 없는 경로","unknownHost":"알 수 없는 호스트","drilldown":{"instancesCount":"인스턴스 {count}개","hostsCount":"호스트 {count}대","expandAgent":"{agent}의 작업 디렉터리 표시","collapseAgent":"{agent}의 작업 디렉터리 숨기기","idle":"유휴","runningFor":"실행 중 \xb7 {time}","queuedCount":"대기 중 {count}개","offlineSince":"오프라인 \xb7 {time}","fieldPath":"작업 디렉터리"}},"transcriptHeader":{"cwdAriaLabel":"작업 디렉터리","hostAriaLabel":"호스트"},"conversationalEntry":{"noOnlineDaemon":"현재 온라인 상태인 에이전트 데몬이 없습니다. 대화로 아이디어를 설명하려면 하나를 시작하세요:","agentLabel":"에이전트","agentPlaceholder":"에이전트 선택","instanceLabel":"작업 디렉터리","pickAgentFirst":"온라인 작업 디렉터리를 보려면 먼저 에이전트를 선택하세요.","placeholder":"원하는 것을 설명하세요 — 에이전트가 여기서부터 처리합니다…","charCounter":"{count} / {max}","connectionWentOffline":"해당 데몬이 방금 오프라인 상태가 되었습니다. 다른 인스턴스를 선택하고 다시 시도하세요.","sendError":"에이전트에 연결하지 못했습니다. 다시 시도해 주세요.","send":"에이전트에게 전송","retry":"다시 시도"},"daemonConnectCta":{"headline":"다음 단계: 에이전트를 계속 온라인 상태로 유지하세요","body":"장기 실행 데몬을 실행하면 에이전트가 온라인 상태를 유지하며 배정된 작업을 받을 수 있습니다.","bodyLong":"플러그인을 설치하면 일회성 연결만 설정되며 에이전트를 온라인 상태로 유지하지는 않습니다. 터미널에서 장기 실행 데몬을 실행해 에이전트가 계속 연결된 상태로 배정된 작업을 자동으로 받도록 하세요.","loginNote":"처음이신가요? {command}으로 한 번 로그인하세요.","copy":"복사","copied":"복사됨!","learnMore":"에이전트 연결에 대해 더 알아보기"},"mention":{"online":"온라인","offline":"오프라인","activeCount":"활성 {count}개","idle":"유휴","openConversation":"대화 열기","host":"호스트","workingDirectory":"작업 디렉터리","badgeAria":"{name} — {status}"},"mentionInstance":{"title":"어느 작업 디렉터리인가요?","subtitle":"{name}은(는) 호스트 {hosts}대에서 인스턴스 {count}개로 실행 중입니다.","confirm":"인스턴스 고정","cancel":"취소","noInstances":"실행 중인 인스턴스가 없습니다"},"wakeCwdPicker":{"title":"실행할 작업 디렉터리를 선택하세요","subtitle":"{name}은(는) 호스트 {hosts}대에서 인스턴스 {count}개로 온라인 상태입니다. 고정하고 깨울 인스턴스를 선택하세요.","confirm":"고정하고 계속","cancel":"취소"},"graph":{"title":"그래프","subtitle":"이 프로젝트의 아이디어, 제안, 작업, 문서를 마인드맵으로 표현합니다.","emptyTitle":"아직 그래프로 표시할 항목이 없습니다","emptyDesc":"이 프로젝트에 아이디어, 제안, 작업, 문서가 생기면 연결된 마인드맵으로 여기에 표시됩니다.","loading":"그래프를 불러오는 중…","loadFailed":"프로젝트 그래프를 불러올 수 없습니다.","expandAll":"모두 펼치기","collapseAll":"모두 접기","filters":{"idea":"아이디어","proposal":"제안","task":"작업","document":"문서"},"nodeType":{"idea":"아이디어","proposal":"제안","task":"작업","document":"문서"},"edgeKind":{"derive":"파생","lineage":"계보","depends":"의존"},"controls":{"open":"그래프 컨트롤 표시","close":"그래프 컨트롤 숨기기"},"search":{"placeholder":"노드 검색…","clear":"검색 지우기","noMatches":"일치하는 항목 없음","count":"{total} 중 {current}","prev":"이전 일치","next":"다음 일치"},"tooltip":{"loading":"로딩 중…"},"zoom":{"in":"확대","out":"축소","fit":"화면에 맞추기"},"status":{"unknown":"알 수 없음"}}}')}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[37985],{5329:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("message-circle-plus",[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}],["path",{d:"M8 12h8",key:"1wcyev"}],["path",{d:"M12 8v8",key:"napkw2"}]])},6748:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("messages-square",[["path",{d:"M16 10a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 14.286V4a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z",key:"1n2ejm"}],["path",{d:"M20 9a2 2 0 0 1 2 2v10.286a.71.71 0 0 1-1.212.502l-2.202-2.202A2 2 0 0 0 17.172 19H10a2 2 0 0 1-2-2v-1",key:"1qfcsi"}]])},10263:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]])},13142:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("octagon-x",[["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z",key:"2d38gg"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]])},17475:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},20578:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]])},21104:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]])},23217:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("square-check-big",[["path",{d:"M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344",key:"2acyp4"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]])},23380:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("pen-line",[["path",{d:"M13 21h8",key:"1jsn5i"}],["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}]])},24705:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("party-popper",[["path",{d:"M5.8 11.3 2 22l10.7-3.79",key:"gwxi1d"}],["path",{d:"M4 3h.01",key:"1vcuye"}],["path",{d:"M22 8h.01",key:"1mrtc2"}],["path",{d:"M15 2h.01",key:"1cjtqr"}],["path",{d:"M22 20h.01",key:"1mrys2"}],["path",{d:"m22 2-2.24.75a2.9 2.9 0 0 0-1.96 3.12c.1.86-.57 1.63-1.45 1.63h-.38c-.86 0-1.6.6-1.76 1.44L14 10",key:"hbicv8"}],["path",{d:"m22 13-.82-.33c-.86-.34-1.82.2-1.98 1.11c-.11.7-.72 1.22-1.43 1.22H17",key:"1i94pl"}],["path",{d:"m11 2 .33.82c.34.86-.2 1.82-1.11 1.98C9.52 4.9 9 5.52 9 6.23V7",key:"1cofks"}],["path",{d:"M11 13c1.93 1.93 2.83 4.17 2 5-.83.83-3.07-.07-5-2-1.93-1.93-2.83-4.17-2-5 .83-.83 3.07.07 5 2Z",key:"4kbmks"}]])},25373:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]])},29767:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]])},30028:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]])},32470:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("list-checks",[["path",{d:"M13 5h8",key:"a7qcls"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 19h8",key:"c3s6r1"}],["path",{d:"m3 17 2 2 4-4",key:"1jhpwq"}],["path",{d:"m3 7 2 2 4-4",key:"1obspn"}]])},37915:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]])},39180:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]])},42533:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]])},43057:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]])},44575:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]])},50153:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("wifi-off",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]])},51509:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("folder-x",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}],["path",{d:"m9.5 10.5 5 5",key:"ra9qjz"}],["path",{d:"m14.5 10.5-5 5",key:"l2rkpq"}]])},52309:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},58057:(e,t,a)=>{a.r(t),a.d(t,{Label:()=>o,Root:()=>d});var r=a(1856),n=a(93367),l=a(90508),o=r.forwardRef((e,t)=>(0,l.jsx)(n.sG.label,{...e,ref:t,onMouseDown:t=>{var a;t.target.closest("button, input, select, textarea")||(null==(a=e.onMouseDown)||a.call(e,t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));o.displayName="Label";var d=o},59133:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]])},62482:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]])},62898:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]])},67103:(e,t,a)=>{a.d(t,{N:()=>v});var r=a(90508),n=a(1856),l=a(43827),o=a(66071),d=a(66506),i=a(95535),c=a(63605),s=a(8334);function h(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}class p extends n.Component{getSnapshotBeforeUpdate(e){let t=this.props.childRef.current;if((0,c.s)(t)&&e.isPresent&&!this.props.isPresent&&!1!==this.props.pop){let e=t.offsetParent,a=(0,c.s)(e)&&e.offsetWidth||0,r=(0,c.s)(e)&&e.offsetHeight||0,n=getComputedStyle(t),l=this.props.sizeRef.current;l.height=parseFloat(n.height),l.width=parseFloat(n.width),l.top=t.offsetTop,l.left=t.offsetLeft,l.right=a-l.width-l.left,l.bottom=r-l.height-l.top}return null}componentDidUpdate(){}render(){return this.props.children}}function u(e){var t,a;let{children:l,isPresent:o,anchorX:d,anchorY:i,root:c,pop:u}=e,y=(0,n.useId)(),k=(0,n.useRef)(null),f=(0,n.useRef)({width:0,height:0,top:0,left:0,right:0,bottom:0}),{nonce:m}=(0,n.useContext)(s.Q),x=function(...e){return n.useCallback(function(...e){return t=>{let a=!1,r=e.map(e=>{let r=h(e,t);return a||"function"!=typeof r||(a=!0),r});if(a)return()=>{for(let t=0;t<r.length;t++){let a=r[t];"function"==typeof a?a():h(e[t],null)}}}}(...e),e)}(k,null!=(a=null==(t=l.props)?void 0:t.ref)?a:null==l?void 0:l.ref);return(0,n.useInsertionEffect)(()=>{let{width:e,height:t,top:a,left:r,right:n,bottom:l}=f.current;if(o||!1===u||!k.current||!e||!t)return;k.current.dataset.motionPopId=y;let s=document.createElement("style");m&&(s.nonce=m);let h=null!=c?c:document.head;return h.appendChild(s),s.sheet&&s.sheet.insertRule('\n [data-motion-pop-id="'.concat(y,'"] {\n position: absolute !important;\n width: ').concat(e,"px !important;\n height: ").concat(t,"px !important;\n ").concat("left"===d?"left: ".concat(r):"right: ".concat(n),"px !important;\n ").concat("bottom"===i?"bottom: ".concat(l):"top: ".concat(a),"px !important;\n }\n ")),()=>{var e;null==(e=k.current)||e.removeAttribute("data-motion-pop-id"),h.contains(s)&&h.removeChild(s)}},[o]),(0,r.jsx)(p,{isPresent:o,childRef:k,sizeRef:f,pop:u,children:!1===u?l:n.cloneElement(l,{ref:x})})}let y=e=>{let{children:t,initial:a,isPresent:l,onExitComplete:d,custom:c,presenceAffectsLayout:s,mode:h,anchorX:p,anchorY:y,root:f}=e,m=(0,o.M)(k),x=(0,n.useId)(),v=!0,A=(0,n.useMemo)(()=>(v=!1,{id:x,initial:a,isPresent:l,custom:c,onExitComplete:e=>{for(let t of(m.set(e,!0),m.values()))if(!t)return;d&&d()},register:e=>(m.set(e,!1),()=>m.delete(e))}),[l,m,d]);return s&&v&&(A={...A}),(0,n.useMemo)(()=>{m.forEach((e,t)=>m.set(t,!1))},[l]),n.useEffect(()=>{l||m.size||!d||d()},[l]),t=(0,r.jsx)(u,{pop:"popLayout"===h,isPresent:l,anchorX:p,anchorY:y,root:f,children:t}),(0,r.jsx)(i.t.Provider,{value:A,children:t})};function k(){return new Map}var f=a(99672);let m=e=>e.key||"";function x(e){let t=[];return n.Children.forEach(e,e=>{(0,n.isValidElement)(e)&&t.push(e)}),t}let v=e=>{let{children:t,custom:a,initial:i=!0,onExitComplete:c,presenceAffectsLayout:s=!0,mode:h="sync",propagate:p=!1,anchorX:u="left",anchorY:k="top",root:v}=e,[A,b]=(0,f.xQ)(p),g=(0,n.useMemo)(()=>x(t),[t]),M=p&&!A?[]:g.map(m),w=(0,n.useRef)(!0),C=(0,n.useRef)(g),j=(0,o.M)(()=>new Map),z=(0,n.useRef)(new Set),[R,q]=(0,n.useState)(g),[E,L]=(0,n.useState)(g);(0,d.E)(()=>{w.current=!1,C.current=g;for(let e=0;e<E.length;e++){let t=m(E[e]);M.includes(t)?(j.delete(t),z.current.delete(t)):!0!==j.get(t)&&j.set(t,!1)}},[E,M.length,M.join("-")]);let I=[];if(g!==R){let e=[...g];for(let t=0;t<E.length;t++){let a=E[t],r=m(a);M.includes(r)||(e.splice(t,0,a),I.push(a))}return"wait"===h&&I.length&&(e=I),L(x(e)),q(g),null}let{forceRender:V}=(0,n.useContext)(l.L);return(0,r.jsx)(r.Fragment,{children:E.map(e=>{let t=m(e),n=(!p||!!A)&&(g===E||M.includes(t));return(0,r.jsx)(y,{isPresent:n,initial:(!w.current||!!i)&&void 0,custom:a,presenceAffectsLayout:s,mode:h,root:v,onExitComplete:n?void 0:()=>{if(z.current.has(t)||!j.has(t))return;z.current.add(t),j.set(t,!0);let e=!0;j.forEach(t=>{t||(e=!1)}),e&&(null==V||V(),L(C.current),p&&(null==b||b()),c&&c())},anchorX:u,anchorY:k,children:e},t)})})}},68842:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]])},69011:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("circle-question-mark",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},71388:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]])},72256:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("rotate-cw",[["path",{d:"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8",key:"1p45f6"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}]])},79834:(e,t,a)=>{a.r(t),a.d(t,{Content:()=>L,List:()=>q,Root:()=>R,Tabs:()=>v,TabsContent:()=>C,TabsList:()=>b,TabsTrigger:()=>M,Trigger:()=>E,createTabsScope:()=>k});var r=a(1856),n=a(33328),l=a(21032),o=a(94782),d=a(19900),i=a(93367),c=a(72599),s=a(66249),h=a(40577),p=a(90508),u="Tabs",[y,k]=(0,l.A)(u,[o.RG]),f=(0,o.RG)(),[m,x]=y(u),v=r.forwardRef((e,t)=>{let{__scopeTabs:a,value:r,onValueChange:n,defaultValue:l,orientation:o="horizontal",dir:d,activationMode:y="automatic",...k}=e,f=(0,c.jH)(d),[x,v]=(0,s.i)({prop:r,onChange:n,defaultProp:null!=l?l:"",caller:u});return(0,p.jsx)(m,{scope:a,baseId:(0,h.B)(),value:x,onValueChange:v,orientation:o,dir:f,activationMode:y,children:(0,p.jsx)(i.sG.div,{dir:f,"data-orientation":o,...k,ref:t})})});v.displayName=u;var A="TabsList",b=r.forwardRef((e,t)=>{let{__scopeTabs:a,loop:r=!0,...n}=e,l=x(A,a),d=f(a);return(0,p.jsx)(o.bL,{asChild:!0,...d,orientation:l.orientation,dir:l.dir,loop:r,children:(0,p.jsx)(i.sG.div,{role:"tablist","aria-orientation":l.orientation,...n,ref:t})})});b.displayName=A;var g="TabsTrigger",M=r.forwardRef((e,t)=>{let{__scopeTabs:a,value:r,disabled:l=!1,...d}=e,c=x(g,a),s=f(a),h=j(c.baseId,r),u=z(c.baseId,r),y=r===c.value;return(0,p.jsx)(o.q7,{asChild:!0,...s,focusable:!l,active:y,children:(0,p.jsx)(i.sG.button,{type:"button",role:"tab","aria-selected":y,"aria-controls":u,"data-state":y?"active":"inactive","data-disabled":l?"":void 0,disabled:l,id:h,...d,ref:t,onMouseDown:(0,n.mK)(e.onMouseDown,e=>{l||0!==e.button||!1!==e.ctrlKey?e.preventDefault():c.onValueChange(r)}),onKeyDown:(0,n.mK)(e.onKeyDown,e=>{[" ","Enter"].includes(e.key)&&c.onValueChange(r)}),onFocus:(0,n.mK)(e.onFocus,()=>{let e="manual"!==c.activationMode;y||l||!e||c.onValueChange(r)})})})});M.displayName=g;var w="TabsContent",C=r.forwardRef((e,t)=>{let{__scopeTabs:a,value:n,forceMount:l,children:o,...c}=e,s=x(w,a),h=j(s.baseId,n),u=z(s.baseId,n),y=n===s.value,k=r.useRef(y);return r.useEffect(()=>{let e=requestAnimationFrame(()=>k.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,p.jsx)(d.C,{present:l||y,children:a=>{let{present:r}=a;return(0,p.jsx)(i.sG.div,{"data-state":y?"active":"inactive","data-orientation":s.orientation,role:"tabpanel","aria-labelledby":h,hidden:!r,id:u,tabIndex:0,...c,ref:t,style:{...e.style,animationDuration:k.current?"0s":void 0},children:r&&o})}})});function j(e,t){return"".concat(e,"-trigger-").concat(t)}function z(e,t){return"".concat(e,"-content-").concat(t)}C.displayName=w;var R=v,q=b,E=M,L=C},83553:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("at-sign",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8",key:"7n84p3"}]])},88591:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("circle-pause",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"10",x2:"10",y1:"15",y2:"9",key:"c1nkhi"}],["line",{x1:"14",x2:"14",y1:"15",y2:"9",key:"h65svq"}]])},88853:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("send-horizontal",[["path",{d:"M3.714 3.048a.498.498 0 0 0-.683.627l2.843 7.627a2 2 0 0 1 0 1.396l-2.842 7.627a.498.498 0 0 0 .682.627l18-8.5a.5.5 0 0 0 0-.904z",key:"117uat"}],["path",{d:"M6 12h16",key:"s4cdu5"}]])},93134:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("clock-3",[["path",{d:"M12 6v6h4",key:"135r8i"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]])},94152:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]])},94599:(e,t,a)=>{a.d(t,{A:()=>r});let r=(0,a(66206).A)("server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]])},98861:(e,t,a)=>{a.r(t),a.d(t,{Checkbox:()=>b,CheckboxIndicator:()=>M,Indicator:()=>M,Root:()=>b,createCheckboxScope:()=>k,unstable_BubbleInput:()=>C,unstable_CheckboxBubbleInput:()=>C,unstable_CheckboxProvider:()=>x,unstable_CheckboxTrigger:()=>A,unstable_Provider:()=>x,unstable_Trigger:()=>A});var r=a(1856),n=a(34124),l=a(21032),o=a(33328),d=a(66249),i=a(72009),c=a(3705),s=a(19900),h=a(93367),p=a(90508),u="Checkbox",[y,k]=(0,l.A)(u),[f,m]=y(u);function x(e){let{__scopeCheckbox:t,checked:a,children:n,defaultChecked:l,disabled:o,form:i,name:c,onCheckedChange:s,required:h,value:y="on",internal_do_not_use_render:k}=e,[m,x]=(0,d.i)({prop:a,defaultProp:null!=l&&l,onChange:s,caller:u}),[v,A]=r.useState(null),[b,g]=r.useState(null),M=r.useRef(!1),w=!v||!!i||!!v.closest("form"),C={checked:m,disabled:o,setChecked:x,control:v,setControl:A,name:c,form:i,value:y,hasConsumerStoppedPropagationRef:M,required:h,defaultChecked:!j(l)&&l,isFormControl:w,bubbleInput:b,setBubbleInput:g};return(0,p.jsx)(f,{scope:t,...C,children:"function"==typeof k?k(C):n})}var v="CheckboxTrigger",A=r.forwardRef((e,t)=>{let{__scopeCheckbox:a,onKeyDown:l,onClick:d,...i}=e,{control:c,value:s,disabled:u,checked:y,required:k,setControl:f,setChecked:x,hasConsumerStoppedPropagationRef:A,isFormControl:b,bubbleInput:g}=m(v,a),M=(0,n.s)(t,f),w=r.useRef(y);return r.useEffect(()=>{let e=null==c?void 0:c.form;if(e){let t=()=>x(w.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[c,x]),(0,p.jsx)(h.sG.button,{type:"button",role:"checkbox","aria-checked":j(y)?"mixed":y,"aria-required":k,"data-state":z(y),"data-disabled":u?"":void 0,disabled:u,value:s,...i,ref:M,onKeyDown:(0,o.mK)(l,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:(0,o.mK)(d,e=>{x(e=>!!j(e)||!e),g&&b&&(A.current=e.isPropagationStopped(),A.current||e.stopPropagation())})})});A.displayName=v;var b=r.forwardRef((e,t)=>{let{__scopeCheckbox:a,name:r,checked:n,defaultChecked:l,required:o,disabled:d,value:i,onCheckedChange:c,form:s,...h}=e;return(0,p.jsx)(x,{__scopeCheckbox:a,checked:n,defaultChecked:l,disabled:d,required:o,onCheckedChange:c,name:r,form:s,value:i,internal_do_not_use_render:e=>{let{isFormControl:r}=e;return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(A,{...h,ref:t,__scopeCheckbox:a}),r&&(0,p.jsx)(C,{__scopeCheckbox:a})]})}})});b.displayName=u;var g="CheckboxIndicator",M=r.forwardRef((e,t)=>{let{__scopeCheckbox:a,forceMount:r,...n}=e,l=m(g,a);return(0,p.jsx)(s.C,{present:r||j(l.checked)||!0===l.checked,children:(0,p.jsx)(h.sG.span,{"data-state":z(l.checked),"data-disabled":l.disabled?"":void 0,...n,ref:t,style:{pointerEvents:"none",...e.style}})})});M.displayName=g;var w="CheckboxBubbleInput",C=r.forwardRef((e,t)=>{let{__scopeCheckbox:a,...l}=e,{control:o,hasConsumerStoppedPropagationRef:d,checked:s,defaultChecked:u,required:y,disabled:k,name:f,value:x,form:v,bubbleInput:A,setBubbleInput:b}=m(w,a),g=(0,n.s)(t,b),M=(0,i.Z)(s),C=(0,c.X)(o);r.useEffect(()=>{if(!A)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!d.current;if(M!==s&&e){let a=new Event("click",{bubbles:t});A.indeterminate=j(s),e.call(A,!j(s)&&s),A.dispatchEvent(a)}},[A,M,s,d]);let z=r.useRef(!j(s)&&s);return(0,p.jsx)(h.sG.input,{type:"checkbox","aria-hidden":!0,defaultChecked:null!=u?u:z.current,required:y,disabled:k,name:f,value:x,form:v,...l,tabIndex:-1,ref:g,style:{...l.style,...C,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function j(e){return"indeterminate"===e}function z(e){return j(e)?"indeterminate":e?"checked":"unchecked"}C.displayName=w}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[38366],{15985:(e,t,r)=>{r.r(t),r.d(t,{ForceGraphCanvas:()=>I,MindMapCanvas:()=>N,centerTransformFor:()=>D,fitTransformFor:()=>O,pinchTransform:()=>j,resolveFocusAlpha:()=>S});var l=r(90508),a=r(1856),n=r(39268),i=r(5616),o=r(66206);let s=(0,o.A)("minus",[["path",{d:"M5 12h14",key:"1ays0h"}]]),u=(0,o.A)("maximize",[["path",{d:"M8 3H5a2 2 0 0 0-2 2v3",key:"1dcmit"}],["path",{d:"M21 8V5a2 2 0 0 0-2-2h-3",key:"1e4gt3"}],["path",{d:"M3 16v3a2 2 0 0 0 2 2h3",key:"wsl5sc"}],["path",{d:"M16 21h3a2 2 0 0 0 2-2v-3",key:"18trek"}]]);var d=r(22922),c=r(92691),f=r(47754),g=r(30423),h=r(76542);let x="#F0EEEA",p="#332e29",m={open:{labelKeySuffix:"open",fg:"#888780",darkFg:"#aba29a"},researching:{labelKeySuffix:"researching",fg:"#7F77DD",darkFg:"#A99FF0"},answer_questions:{labelKeySuffix:"answerQuestions",fg:"#C47A20",darkFg:"#E0A050"},planning:{labelKeySuffix:"planning",fg:"#7F77DD",darkFg:"#A99FF0"},review_proposal:{labelKeySuffix:"reviewProposal",fg:"#C47A20",darkFg:"#E0A050"},building:{labelKeySuffix:"building",fg:"#7F77DD",darkFg:"#A99FF0"},verify_work:{labelKeySuffix:"verifyWork",fg:"#C47A20",darkFg:"#E0A050"},done:{labelKeySuffix:"done",fg:"#1D9E75",darkFg:"#4FD1A0"},closed:{labelKeySuffix:"closed",fg:"#888780",darkFg:"#aba29a"}},y={draft:"bg-[#F5F5F5] text-[#6B6B6B] dark:bg-[#1e1e20] dark:text-[#aba29a]",pending:"bg-[#FFF3E0] text-[#E65100] dark:bg-[#3a2a12] dark:text-[#F0A050]",approved:"bg-[#E8F5E9] text-[#2E7D32] dark:bg-[#14281a] dark:text-[#5FD07E]",rejected:"bg-[#FFEBEE] text-[#C62828] dark:bg-[#331619] dark:text-[#F0897E]",revised:"bg-[#F5F5F5] text-[#6B6B6B] dark:bg-[#1e1e20] dark:text-[#aba29a]",closed:"bg-[#F5F5F5] text-[#9A9A9A] dark:bg-[#1e1e20] dark:text-[#a8a29a]"},b={open:"bg-[#FFF3E0] text-[#E65100] dark:bg-[#3a2a12] dark:text-[#F0A050]",assigned:"bg-[#E3F2FD] text-[#1976D2] dark:bg-[#13253a] dark:text-[#5AA9F0]",in_progress:"bg-[#E8F5E9] text-[#5A9E6F] dark:bg-[#14281a] dark:text-[#6FD19A]",to_verify:"bg-[#F3E5F5] text-[#7B1FA2] dark:bg-[#281630] dark:text-[#C98FE0]",done:"bg-[#E0F2F1] text-[#00796B] dark:bg-[#12292a] dark:text-[#4FD1C0]",closed:"bg-[#F5F5F5] text-[#9A9A9A] dark:bg-[#1e1e20] dark:text-[#a8a29a]"},F={open:"open",draft:"draft",pending:"pendingReview",approved:"approved",rejected:"rejected",revised:"draft",assigned:"assigned",in_progress:"inProgress",to_verify:"toVerify",done:"done",closed:"closed"},k={prd:"bg-[#E3F2FD] text-[#1976D2] dark:bg-[#13253a] dark:text-[#5AA9F0]",tech_design:"bg-[#F3E5F5] text-[#7B1FA2] dark:bg-[#281630] dark:text-[#C98FE0]",adr:"bg-[#FFF8E1] text-[#9A6B00] dark:bg-[#332a12] dark:text-[#E0B44E]",spec:"bg-[#E8F5E9] text-[#5A9E6F] dark:bg-[#14281a] dark:text-[#6FD19A]",guide:"bg-[#E0F2F1] text-[#00796B] dark:bg-[#12292a] dark:text-[#4FD1C0]",report:"bg-[#FFF8E1] text-[#9A6B00] dark:bg-[#332a12] dark:text-[#E0B44E]",design:"bg-[#F3E5F5] text-[#7B1FA2] dark:bg-[#281630] dark:text-[#C98FE0]",note:"bg-[#FFF3E0] text-[#E65100] dark:bg-[#3a2a12] dark:text-[#F0A050]",other:"bg-[#F5F5F5] text-[#6B6B6B] dark:bg-[#1e1e20] dark:text-[#aba29a]"},v={prd:"documents.typePrd",tech_design:"documents.typeTechDesign",adr:"documents.typeAdr",spec:"documents.typeSpec",guide:"documents.typeGuide",report:"documents.typeReport",design:"documents.typeDesign",note:"documents.typeNote",other:"documents.typeOther"},M={labelKey:"graph.status.unknown",colorClass:"bg-[#F5F5F5] text-[#6B6B6B] dark:bg-[#1e1e20] dark:text-[#aba29a]",bg:"#F5F5F5",fg:"#6B6B6B",darkBg:"#1e1e20",darkFg:"#aba29a"};function E(e){let t=e.match(/dark:bg-\[(#[0-9A-Fa-f]{3,8})\]/),r=e.match(/dark:text-\[(#[0-9A-Fa-f]{3,8})\]/),l=e.replace(/dark:bg-\[#[0-9A-Fa-f]{3,8}\]/g,"").replace(/dark:text-\[#[0-9A-Fa-f]{3,8}\]/g,""),a=l.match(/bg-\[(#[0-9A-Fa-f]{3,8})\]/),n=l.match(/text-\[(#[0-9A-Fa-f]{3,8})\]/),i=a?a[1]:M.bg,o=n?n[1]:M.fg;return{bg:i,fg:o,darkBg:t?t[1]:i,darkFg:r?r[1]:o}}function w(e){let{title:t,x:r,y:a}=e;return(0,l.jsx)("div",{"data-testid":"node-tooltip",role:"tooltip",className:"pointer-events-none absolute z-20 max-w-[260px] rounded-lg border border-border bg-card px-3 py-2 shadow-lg",style:{left:r,top:a},children:(0,l.jsx)("p",{className:"text-sm font-medium leading-snug text-foreground",children:t})})}Object.keys(m),Object.keys(y),Object.keys(b),Object.keys(k);let A={idea:"#7C4DFF",proposal:"#2563EB",task:"#E8833A",document:"#00897B"},C={idea:"#9B82FF",proposal:"#5A8DEF",task:"#F0964E",document:"#1CA695"},B={idea:["M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5","M9 18h6","M10 22h4"],proposal:["M9 2h6a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1z","M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2","M12 11h4","M12 16h4","M8 11h.01","M8 16h.01"],task:["M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344","m9 11 3 3L22 4"],document:["M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z","M14 2v5a1 1 0 0 0 1 1h5","M10 9H8","M16 13H8","M16 17H8"]},T={derive:"#CFC6B6",lineage:"#7C4DFF",depends:"#E8833A"};function S(e,t,r){return t?t.has(e)?1:.18:r&&r.size>0?r.has(e)?1:.18:1}function D(e,t,r){return{scale:r,tx:t.width/2-e.x*r,ty:t.height/2-e.y*r}}function j(e,t){let r=Math.min(2.5,Math.max(.2,e.view.scale*(t.dist/e.dist))),l=(e.midpoint.x-e.view.tx)/e.view.scale,a=(e.midpoint.y-e.view.ty)/e.view.scale;return{scale:r,tx:t.midpoint.x-l*r,ty:t.midpoint.y-a*r}}let z={bg:"#FAF8F4",cardFill:"#FFFFFF",cardBorder:"#EAE4DB",divider:"#EFEAE2",title:"#2C2C2C"},P={bg:"#211e1c",cardFill:"#29231f",cardBorder:"#40392f",divider:"#332e29",title:"#f0ebe4"},R=e=>1-Math.pow(1-e,3);function N(e){var t;let{nodes:r,links:o,selectedId:N,onNodeClick:I,matchIds:V=null,currentMatchId:Y=null,centerNodeId:X=null}=e,{getPresence:$}=(0,f.xQ)(),q=(0,n.c)(),Z=(0,a.useMemo)(()=>({idea:q("graph.nodeType.idea"),proposal:q("graph.nodeType.proposal"),task:q("graph.nodeType.task"),document:q("graph.nodeType.document")}),[q]),G=(0,a.useCallback)(e=>{if(!e.status)return null;let t=function(e,t){if(!t||"unknown"===t)return M;if("idea"===e){let e=m[t];if(!e)return M;let r="bg-[".concat(x,"] text-[").concat(e.fg,"] ")+"dark:bg-[".concat(p,"] dark:text-[").concat(e.darkFg,"]");return{labelKey:"ideaTracker.badge.".concat(e.labelKeySuffix),colorClass:r,bg:x,fg:e.fg,darkBg:p,darkFg:e.darkFg}}if("document"===e){let e=k[t],r=v[t];if(!e||!r)return M;let{bg:l,fg:a,darkBg:n,darkFg:i}=E(e);return{labelKey:r,colorClass:e,bg:l,fg:a,darkBg:n,darkFg:i}}let r=("proposal"===e?y:b)[t],l=F[t];if(!r||!l)return M;let{bg:a,fg:n,darkBg:i,darkFg:o}=E(r);return{labelKey:"status.".concat(l),colorClass:r,bg:a,fg:n,darkBg:i,darkFg:o}}(e.type,e.status),r="undefined"!=typeof document&&document.documentElement.classList.contains("dark");return{bg:r?t.darkBg:t.bg,fg:r?t.darkFg:t.fg,label:q(t.labelKey)}},[q]),Q=(0,a.useRef)(null),U=(0,a.useRef)(null),[J,ee]=(0,a.useState)({width:800,height:600}),[et,er]=(0,a.useState)(null),[el,ea]=(0,a.useState)(null),en=(0,a.useRef)(el);en.current=el;let ei=(0,a.useMemo)(()=>(0,h.U)(r,o),[r,o]),eo=(0,a.useMemo)(()=>{let e=new Map;for(let t of r)e.set(t.id,t);return e},[r]),es=et&&null!=(t=eo.get(et))?t:null,eu=ei.treeParentById,ed=(0,a.useMemo)(()=>{let e=new Map;for(let t of r)e.set(t.id,new Set);for(let[r,l]of eu){var t;null==(t=e.get(l))||t.add(r)}return e},[r,eu]),ec=null!=et?et:N,ef=(0,a.useMemo)(()=>{if(!ec||!eo.has(ec))return null;let e=new Set([ec]),t=ec;for(;void 0!==t;){let r=eu.get(t);if(void 0===r||e.has(r))break;e.add(r),t=r}let r=[ec];for(;r.length;){var l;let t=r.pop();for(let a of null!=(l=ed.get(t))?l:[])e.has(a)||(e.add(a),r.push(a))}return e},[ec,eo,eu,ed]),eg=(0,a.useRef)(new Map),eh=(0,a.useRef)(new Map),ex=(0,a.useRef)({scale:1,tx:0,ty:0}),ep=(0,a.useRef)(!1),em=(0,a.useRef)(null);(0,a.useEffect)(()=>{var e,t;let r=eg.current,l=eh.current,a=performance.now(),n=ei.positions;for(let[t,i]of n){let n=eo.get(t);if(!n)continue;let o={x:i.x,y:i.y},s=r.get(t);if(s&&!s.exit){let r=null!=(e=l.get(t))?e:s.to;(r.x!==o.x||r.y!==o.y)&&(s.from={...r},s.to=o,s.start=a,s.enter=!1),s.node=n}else r.set(t,{from:{...o},to:o,start:a,enter:!0,exit:!1,node:n}),l.set(t,{...o})}for(let[e,i]of r)n.has(e)||i.exit||(i.exit=!0,i.enter=!1,i.start=a,i.from=null!=(t=l.get(e))?t:i.to,i.to=i.from);eF()},[ei,eo]),(0,a.useEffect)(()=>{let e=Q.current;if(!e)return;let t=(e,t)=>ee({width:Math.max(1,Math.floor(e)),height:Math.max(1,Math.floor(t))}),r=new ResizeObserver(e=>{var r;let l=null==(r=e[0])?void 0:r.contentRect;l&&t(l.width,l.height)});return r.observe(e),t(e.clientWidth,e.clientHeight),()=>r.disconnect()},[]),(0,a.useEffect)(()=>{!ep.current&&0!==ei.positions.size&&(J.width<=1||J.height<=1||(ep.current=!0,function(e,t,r){let l=O(e,t);l&&(r.current=l)}(ei,J,ex),eF()))},[ei,J]);let ey=(0,a.useCallback)(()=>{var e;em.current=null;let t=U.current;if(!t)return;let l=t.getContext("2d");if(!l)return;let a=window.devicePixelRatio||1,{width:n,height:i}=J,s=Math.floor(n*a),u=Math.floor(i*a);t.width!==s&&(t.width=s),t.height!==u&&(t.height=u);let d=ex.current,c=eg.current,f=eh.current,h=performance.now(),x=!1;for(let[e,t]of c){let r=Math.min(1,(h-t.start)/300),l=R(r);r<1&&(x=!0),t.exit?(f.set(e,{...t.from}),r>=1&&(c.delete(e),f.delete(e))):f.set(e,{x:t.from.x+(t.to.x-t.from.x)*l,y:t.from.y+(t.to.y-t.from.y)*l})}let p="undefined"!=typeof document&&document.documentElement.classList.contains("dark")?P:z;for(let[e,t]of(l.setTransform(a,0,0,a,0,0),l.fillStyle=p.bg,l.fillRect(0,0,n,i),l.setTransform(a*d.scale,0,0,a*d.scale,a*d.tx,a*d.ty),function(e,t){var r,l,a,n,i,o,s;let{links:u,treeParentById:d,rendered:c,anims:f,hoverId:g,selectedId:h,focusLineage:x}=t,p=null!=g?g:h,m=e=>d.get(e.target)===e.source;for(let t of u){if(!m(t))continue;let a=c.get(t.source),n=c.get(t.target);if(!a||!n||(null==(r=f.get(t.source))?void 0:r.exit)||(null==(l=f.get(t.target))?void 0:l.exit))continue;let i=!p||(o=x,s=t,!!o&&o.has(s.source)&&o.has(s.target)),u=T[t.kind];e.save(),e.strokeStyle=i?u:H(u,.35),e.lineWidth=p&&(t.source===p||t.target===p)?2.4:1.5,function(e,t,r){let l=t.x+100,a=t.y,n=r.x-100,i=r.y,o=l+(n-l)/2;e.beginPath(),e.moveTo(l,a),e.bezierCurveTo(o,a,o,i,n,i)}(e,a,n),e.stroke(),K(e,a,n,e.strokeStyle),e.restore()}for(let t of u){if(m(t))continue;let r=c.get(t.source),l=c.get(t.target);if(!r||!l||(null==(a=f.get(t.source))?void 0:a.exit)||(null==(n=f.get(t.target))?void 0:n.exit))continue;let o=!!p&&(t.source===p||t.target===p||null!=x&&(x.has(t.source)||x.has(t.target))),s=null!=(i=T[t.kind])?i:"#E8833A";e.save(),e.setLineDash([6,5]),e.lineWidth=o?2:1.2,e.strokeStyle=o?s:H(s,.18),function(e,t,r){let l=(t.x+r.x)/2,a=(t.y+r.y)/2-Math.min(40,.15*Math.abs(r.x-t.x));e.beginPath(),e.moveTo(t.x,t.y),e.quadraticCurveTo(l,a,r.x,r.y)}(e,r,l),e.stroke(),o&&K(e,r,l,s),e.restore()}}(l,{links:o,treeParentById:eu,rendered:f,anims:c,hoverId:et,selectedId:N,focusLineage:ef}),c)){let r=f.get(e);if(!r)continue;let a=R(Math.min(1,(h-t.start)/300)),n=1,i=1;t.enter?(n=a,i=.85+.15*a):t.exit&&(n=1-a,i=1-.1*a),function(e,t,r,l){let{surface:a,opacity:n,scale:i,hoverId:o,selectedId:s,focusLineage:u,matchIds:d,currentMatchId:c,getPresence:f,typeLabels:h,resolveStatusPill:x}=l,p=t.type,m="undefined"!=typeof document&&document.documentElement.classList.contains("dark"),y=(m?C:A)[p],b=S(t.id,u,d),F=t.id===s,k=t.id===o,v=null!=c&&t.id===c;e.save(),e.globalAlpha=n*b,1!==i&&(e.translate(r.x,r.y),e.scale(i,i),e.translate(-r.x,-r.y));let M=r.x-100,E=r.y-23,w=f(p,t.id),T=w.find(e=>"mutate"===e.action),D=null!=T?T:w[w.length-1];if(D){let t=(0,g.j)(D.agentName);e.save(),e.shadowColor=t,e.shadowBlur=18,e.lineWidth=2.5,e.strokeStyle=t,T||e.setLineDash([5,4]),L(e,M-4,E-4,208,54,15),e.stroke(),e.restore(),e.save(),e.setLineDash([]),e.font="600 9px ui-sans-serif, system-ui";let r=D.agentName,l=e.measureText(r).width+12,a=E-4-15-3;e.fillStyle=t,L(e,M,a,l,15,5),e.fill(),e.fillStyle="#FFFFFF",e.textAlign="left",e.textBaseline="middle",e.fillText(r,M+6,a+7.5+.5),e.restore()}(k||F)&&(e.save(),e.shadowColor=y,e.shadowBlur=k?26:16,e.fillStyle=y,e.globalAlpha=0,L(e,M,E,200,46,12),e.fill(),e.restore()),e.fillStyle=a.cardFill,e.strokeStyle=F?y:a.cardBorder,e.lineWidth=F?2:1,L(e,M,E,200,46,12),e.fill(),e.stroke(),v&&(e.save(),e.globalAlpha=n,e.strokeStyle="#EC4899",e.lineWidth=2.5,L(e,M-3,E-3,206,52,14),e.stroke(),e.restore());let j=M+8,z=r.y-15;m?(e.fillStyle=H(y,.22),L(e,j,z,30,30,9),e.fill(),_(e,B[p],j,z,30,y)):(e.fillStyle=y,L(e,j,z,30,30,9),e.fill(),_(e,B[p],j,z,30));let P=!!t.hasAffordance,R=j+30+10,N=M+200-(P?40:12),I=N-R,K=r.y-8;e.textAlign="left",e.textBaseline="alphabetic",e.font="600 9px ui-monospace, monospace",e.fillStyle=y,e.fillText(h[p],R,K);let O=e.measureText(h[p]).width,V=x(t);if(V){let t=N-(R+O+6);if(t>=16){e.font="600 9px ui-sans-serif, system-ui";let r=W(e,V.label,t-10),l=Math.min(t,e.measureText(r).width+10),a=N-l,n=K-12+2;e.fillStyle=V.bg,L(e,a,n,l,12,5),e.fill(),e.fillStyle=V.fg,e.textBaseline="middle",e.fillText(r,a+5,n+6+.5),e.textBaseline="alphabetic"}}if(e.fillStyle=a.title,e.font="500 12px ui-sans-serif, system-ui",e.textAlign="left",e.fillText(W(e,t.title,I-4),R,r.y+7),P){var Y;let l=M+200-40;e.strokeStyle=a.divider,e.lineWidth=1,e.beginPath(),e.moveTo(l,E+7),e.lineTo(l,E+46-7),e.stroke(),e.fillStyle=H(y,k?.16:.08),L(e,l+4,E+6,30,34,8),e.fill();let n=l+20-1,i=!t.expanded,o=null!=(Y=t.childCount)?Y:0;e.strokeStyle=y,e.lineWidth=2,e.lineCap="round";let s=i&&o>0?r.y-4:r.y;e.beginPath(),e.moveTo(n-5,s),e.lineTo(n+5,s),i&&(e.moveTo(n,s-5),e.lineTo(n,s+5)),e.stroke(),i&&o>0&&(e.fillStyle=y,e.font="600 9px ui-sans-serif, system-ui",e.textAlign="center",e.textBaseline="middle",e.fillText("".concat(o),n,r.y+9))}e.restore()}(l,t.node,r,{surface:p,opacity:n,scale:i,hoverId:et,selectedId:N,focusLineage:ef,matchIds:V,currentMatchId:Y,getPresence:$,typeLabels:Z,resolveStatusPill:G})}let m=et?f.get(et):void 0,y=!!et&&(null==(e=c.get(et))?void 0:e.exit);if(m&&!y){let e=m.x*d.scale+d.tx,t=m.y*d.scale+d.ty,r=100*d.scale,l=e+r+12,a=l+260<=n-8?l:e-r-12-260;a=Math.max(8,Math.min(a,n-260-8));let o=t-32;o=Math.max(8,Math.min(o,i-64-8)),ea(e=>e&&.5>Math.abs(e.x-a)&&.5>Math.abs(e.y-o)?e:{x:a,y:o})}else null!==en.current&&ea(null);(x||function(e,t){for(let r of t)if(e(r.type,r.id).length>0)return!0;return!1}($,r))&&eF()},[J,o,eu,et,N,ef,V,Y,$,r,Z,G]),eb=(0,a.useRef)(ey);eb.current=ey;let eF=(0,a.useCallback)(()=>{null==em.current&&(em.current=requestAnimationFrame(()=>eb.current()))},[]);(0,a.useEffect)(()=>{if("undefined"==typeof document)return;let e=new MutationObserver(()=>eF());return e.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),()=>e.disconnect()},[eF]),(0,a.useEffect)(()=>{eF()},[et,N,ef,V,Y,J,$,eF]),(0,a.useEffect)(()=>{if(!X||J.width<=1||J.height<=1)return;let e=ei.positions.get(X);e&&(ex.current=D(e,J,ex.current.scale),eF())},[X,ei,J,eF]),(0,a.useEffect)(()=>()=>{null!=em.current&&(cancelAnimationFrame(em.current),em.current=null),null!=eA.current&&(clearTimeout(eA.current),eA.current=null)},[]);let ek=(0,a.useRef)(null),ev=(0,a.useRef)(new Map),eM=(0,a.useRef)(null),eE=(0,a.useRef)(!1),ew=(0,a.useRef)(null),eA=(0,a.useRef)(null),eC=(0,a.useCallback)(()=>{null!==eA.current&&(clearTimeout(eA.current),eA.current=null)},[]),eB=(0,a.useCallback)(()=>{let e=[...ev.current.values()];if(2!==e.length)return null;let[t,r]=e,l=r.x-t.x,a=r.y-t.y;return{midpoint:{x:(t.x+r.x)/2,y:(t.y+r.y)/2},dist:Math.hypot(l,a)||1}},[]),eT=(0,a.useCallback)((e,t)=>{let r=ex.current;return{x:(e-r.tx)/r.scale,y:(t-r.ty)/r.scale}},[]),eS=(0,a.useCallback)((e,t)=>{let r=eh.current;for(let[a,n]of eg.current){if(n.exit)continue;let i=r.get(a);if(i&&e>=i.x-100&&e<=i.x+100&&t>=i.y-23&&t<=i.y+23){var l;return null!=(l=n.node)?l:null}}return null},[]),eD=(0,a.useCallback)(e=>{var t,r,l;let a=null==(t=U.current)?void 0:t.getBoundingClientRect();if(!a)return;let n=e.clientX-a.left,i=e.clientY-a.top;if(ev.current.set(e.pointerId,{x:n,y:i}),null==(r=(l=e.target).setPointerCapture)||r.call(l,e.pointerId),ev.current.size>=2){eE.current=!0;let e=eB();e&&(eM.current={...e,view:{...ex.current}}),ek.current&&(ek.current.moved=!0),eC();return}ek.current={startX:n,startY:i,origTx:ex.current.tx,origTy:ex.current.ty,moved:!1}},[eB,eC]),ej=(0,a.useCallback)(e=>{var t;let r=null==(t=U.current)?void 0:t.getBoundingClientRect();if(!r)return;let l=e.clientX-r.left,a=e.clientY-r.top;ev.current.has(e.pointerId)&&ev.current.set(e.pointerId,{x:l,y:a});let n=eM.current;if(n){let e=eB();e&&(ex.current=j(n,e),eF());return}let i=ek.current;if(i){let e=l-i.startX,t=a-i.startY;!i.moved&&Math.abs(e)+Math.abs(t)>3&&(i.moved=!0),i.moved&&(ex.current={...ex.current,tx:i.origTx+e,ty:i.origTy+t},eF());return}let o=eT(l,a),s=eS(o.x,o.y),u=s?s.id:null;er(e=>e===u?e:u)},[eS,eT,eF,eB]),ez=(0,a.useCallback)((e,t)=>{var r;let l=ex.current,a=O(ei,J),n=Math.min(2.5,(null!=(r=null==a?void 0:a.scale)?r:l.scale)*2),i=(e-l.tx)/l.scale,o=(t-l.ty)/l.scale;ex.current={scale:n,tx:e-i*n,ty:t-o*n},eF()},[ei,J,eF]),eP=(0,a.useCallback)(e=>{var t,r,l;let a=null==(t=U.current)?void 0:t.getBoundingClientRect();if(ev.current.delete(e.pointerId),null==(r=(l=e.target).releasePointerCapture)||r.call(l,e.pointerId),ev.current.size<2&&(eM.current=null),eE.current){ek.current=null,0===ev.current.size&&(eE.current=!1);return}let n=ek.current;if(ek.current=null,!a||(null==n?void 0:n.moved))return;let i=e.clientX-a.left,o=e.clientY-a.top,s=performance.now(),u=ew.current;if(u&&s-u.t<=300&&30>=Math.hypot(i-u.x,o-u.y)){ew.current=null,eC();let e=O(ei,J);null!==e&&.01>Math.abs(ex.current.scale-e.scale)?ez(i,o):e&&(ex.current=e,eF());return}ew.current={x:i,y:o,t:s};let d=eT(i,o),c=eS(d.x,d.y);if(!c)return;let f=!1;if(c.hasAffordance){let e=eh.current.get(c.id);if(e){let t=e.x+100;d.x>=t-40&&23>=Math.abs(d.y-e.y)&&(f=!0)}}if("touch"===e.pointerType&&!f){eC();let{id:e,type:t}=c;eA.current=setTimeout(()=>{eA.current=null,I(e,t,!1)},300);return}I(c.id,c.type,f)},[eS,eT,I,ei,J,ez,eF,eC]),eR=(0,a.useCallback)(e=>{var t,r;ev.current.delete(e.pointerId),null==(t=(r=e.target).releasePointerCapture)||t.call(r,e.pointerId),ev.current.size<2&&(eM.current=null),0===ev.current.size&&(ek.current=null,eE.current=!1)},[]),eN=(0,a.useCallback)((e,t,r)=>{let l=ex.current,a=Math.min(2.5,Math.max(.2,l.scale*e)),n=(t-l.tx)/l.scale,i=(r-l.ty)/l.scale;ex.current={scale:a,tx:t-n*a,ty:r-i*a},eF()},[eF]),eI=(0,a.useRef)(eN);eI.current=eN,(0,a.useEffect)(()=>{let e=U.current;if(!e)return;let t=t=>{let r=e.getBoundingClientRect(),l=t.clientX-r.left,a=t.clientY-r.top;t.preventDefault();let n=t.ctrlKey?.01:.0015;eI.current(Math.exp(-t.deltaY*n),l,a)};return e.addEventListener("wheel",t,{passive:!1}),()=>e.removeEventListener("wheel",t)},[eF]);let e_=(0,a.useCallback)(()=>{eN(1.3,J.width/2,J.height/2)},[eN,J.width,J.height]),eK=(0,a.useCallback)(()=>{eN(.7692307692307692,J.width/2,J.height/2)},[eN,J.width,J.height]),eL=(0,a.useCallback)(()=>{let e=O(ei,J);e&&(ex.current=e,eF())},[ei,J,eF]),eW=ei.positions.size>0;return(0,l.jsxs)("div",{ref:Q,className:"absolute inset-0",children:[(0,l.jsx)("canvas",{ref:U,className:"block h-full w-full touch-none",style:{width:J.width,height:J.height,cursor:et?"pointer":"grab"},onPointerDown:eD,onPointerMove:ej,onPointerUp:eP,onPointerCancel:eR,onPointerLeave:()=>er(null)}),es&&el&&(0,l.jsx)(w,{title:es.title,x:el.x,y:el.y}),eW&&(0,l.jsx)(c.Bc,{delayDuration:300,children:(0,l.jsxs)("div",{className:"absolute bottom-3 left-3 flex flex-col gap-1 rounded-lg border border-border bg-card/95 p-1 shadow-sm backdrop-blur-sm",children:[(0,l.jsxs)(c.m_,{children:[(0,l.jsx)(c.k$,{asChild:!0,children:(0,l.jsx)(d.$,{type:"button",variant:"ghost",size:"icon-sm",onClick:e_,"aria-label":q("graph.zoom.in"),"data-testid":"graph-zoom-in",className:"text-muted-foreground",children:(0,l.jsx)(i.A,{className:"h-4 w-4"})})}),(0,l.jsx)(c.ZI,{side:"right",children:q("graph.zoom.in")})]}),(0,l.jsxs)(c.m_,{children:[(0,l.jsx)(c.k$,{asChild:!0,children:(0,l.jsx)(d.$,{type:"button",variant:"ghost",size:"icon-sm",onClick:eK,"aria-label":q("graph.zoom.out"),"data-testid":"graph-zoom-out",className:"text-muted-foreground",children:(0,l.jsx)(s,{className:"h-4 w-4"})})}),(0,l.jsx)(c.ZI,{side:"right",children:q("graph.zoom.out")})]}),(0,l.jsxs)(c.m_,{children:[(0,l.jsx)(c.k$,{asChild:!0,children:(0,l.jsx)(d.$,{type:"button",variant:"ghost",size:"icon-sm",onClick:eL,"aria-label":q("graph.zoom.fit"),"data-testid":"graph-zoom-fit",className:"text-muted-foreground",children:(0,l.jsx)(u,{className:"h-4 w-4"})})}),(0,l.jsx)(c.ZI,{side:"right",children:q("graph.zoom.fit")})]})]})})]})}let I=N;function _(e,t,r,l,a){let n=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"#FFFFFF",i=.22*a,o=(a-2*i)/24;for(let a of(e.save(),e.translate(r+i,l+i),e.scale(o,o),e.strokeStyle=n,e.lineWidth=2,e.lineCap="round",e.lineJoin="round",t))e.stroke(new Path2D(a));e.restore()}function K(e,t,r,l){let a=r.x-100,n=r.y,i=Math.atan2(n-t.y,a-t.x);e.save(),e.setLineDash([]),e.fillStyle=l,e.beginPath(),e.moveTo(a,n),e.lineTo(a-6*Math.cos(i-Math.PI/6),n-6*Math.sin(i-Math.PI/6)),e.lineTo(a-6*Math.cos(i+Math.PI/6),n-6*Math.sin(i+Math.PI/6)),e.closePath(),e.fill(),e.restore()}function L(e,t,r,l,a,n){let i=Math.min(n,l/2,a/2);e.beginPath(),e.moveTo(t+i,r),e.arcTo(t+l,r,t+l,r+a,i),e.arcTo(t+l,r+a,t,r+a,i),e.arcTo(t,r+a,t,r,i),e.arcTo(t,r,t+l,r,i),e.closePath()}function W(e,t,r){if(e.measureText(t).width<=r)return t;let l=0,a=t.length;for(;l<a;){let n=l+a+1>>1;e.measureText(t.slice(0,n)+"…").width<=r?l=n:a=n-1}return t.slice(0,l)+"…"}function H(e,t){let r=Math.round(255*t).toString(16).padStart(2,"0");return"".concat(e).concat(r)}function O(e,t){let r=1/0,l=1/0,a=-1/0,n=-1/0;for(let t of e.positions.values())t.x-100<r&&(r=t.x-100),t.x+100>a&&(a=t.x+100),t.y-23<l&&(l=t.y-23),t.y+23>n&&(n=t.y+23);if(!Number.isFinite(r))return null;let i=a-r||1,o=n-l||1,s=Math.min(2,Math.max(.2,Math.min((t.width-120)/i,(t.height-120)/o))),u=(r+a)/2,d=(l+n)/2;return{scale:s,tx:t.width/2-u*s,ty:t.height/2-d*s}}}}]);