vibedoc 1.11.0 → 1.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (818) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +5 -1
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +70 -14
  5. package/.next/routes-manifest.json +24 -0
  6. package/.next/server/app/(app)/activity/page.js.nft.json +1 -1
  7. package/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -1
  8. package/.next/server/app/(app)/board/page.js.nft.json +1 -1
  9. package/.next/server/app/(app)/board/page_client-reference-manifest.js +1 -1
  10. package/.next/server/app/(app)/chat/page.js.nft.json +1 -1
  11. package/.next/server/app/(app)/chat/page_client-reference-manifest.js +1 -1
  12. package/.next/server/app/(app)/docs/page.js.nft.json +1 -1
  13. package/.next/server/app/(app)/docs/page_client-reference-manifest.js +1 -1
  14. package/.next/server/app/(app)/explorer/page.js.nft.json +1 -1
  15. package/.next/server/app/(app)/explorer/page_client-reference-manifest.js +1 -1
  16. package/.next/server/app/(app)/getting-started/page/app-paths-manifest.json +3 -0
  17. package/.next/server/app/(app)/getting-started/page/build-manifest.json +20 -0
  18. package/.next/server/app/(app)/getting-started/page/next-font-manifest.json +11 -0
  19. package/.next/server/app/(app)/getting-started/page/react-loadable-manifest.json +1 -0
  20. package/.next/server/app/(app)/getting-started/page/server-reference-manifest.json +4 -0
  21. package/.next/server/app/(app)/getting-started/page.js +15 -0
  22. package/.next/server/app/(app)/getting-started/page.js.map +5 -0
  23. package/.next/server/app/(app)/getting-started/page.js.nft.json +1 -0
  24. package/.next/server/app/(app)/getting-started/page_client-reference-manifest.js +3 -0
  25. package/.next/server/app/(app)/graph/page.js.nft.json +1 -1
  26. package/.next/server/app/(app)/graph/page_client-reference-manifest.js +1 -1
  27. package/.next/server/app/(app)/manual-tests/page.js.nft.json +1 -1
  28. package/.next/server/app/(app)/manual-tests/page_client-reference-manifest.js +1 -1
  29. package/.next/server/app/(app)/memory/page.js.nft.json +1 -1
  30. package/.next/server/app/(app)/memory/page_client-reference-manifest.js +1 -1
  31. package/.next/server/app/(app)/roadmap/page.js.nft.json +1 -1
  32. package/.next/server/app/(app)/roadmap/page_client-reference-manifest.js +1 -1
  33. package/.next/server/app/(app)/settings/page.js.nft.json +1 -1
  34. package/.next/server/app/(app)/settings/page_client-reference-manifest.js +1 -1
  35. package/.next/server/app/(app)/setup/page.js.nft.json +1 -1
  36. package/.next/server/app/(app)/setup/page_client-reference-manifest.js +1 -1
  37. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  38. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  39. package/.next/server/app/_global-error.html +1 -1
  40. package/.next/server/app/_global-error.rsc +1 -1
  41. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  42. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  43. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  44. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  45. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  46. package/.next/server/app/_not-found.html +1 -1
  47. package/.next/server/app/_not-found.rsc +2 -2
  48. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  49. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  50. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  51. package/.next/server/app/activity.html +1 -1
  52. package/.next/server/app/activity.rsc +7 -7
  53. package/.next/server/app/activity.segments/!KGFwcCk/activity/__PAGE__.segment.rsc +5 -5
  54. package/.next/server/app/activity.segments/_full.segment.rsc +7 -7
  55. package/.next/server/app/activity.segments/_tree.segment.rsc +2 -2
  56. package/.next/server/app/api/activity/route.js +2 -3
  57. package/.next/server/app/api/activity/route.js.nft.json +1 -1
  58. package/.next/server/app/api/chat/route.js +2 -2
  59. package/.next/server/app/api/chat/route.js.nft.json +1 -1
  60. package/.next/server/app/api/context/route.js +2 -3
  61. package/.next/server/app/api/context/route.js.nft.json +1 -1
  62. package/.next/server/app/api/conversations/route.js +3 -4
  63. package/.next/server/app/api/conversations/route.js.nft.json +1 -1
  64. package/.next/server/app/api/decisions/route.js +2 -3
  65. package/.next/server/app/api/decisions/route.js.nft.json +1 -1
  66. package/.next/server/app/api/docs/graph/route.js +2 -4
  67. package/.next/server/app/api/docs/graph/route.js.nft.json +1 -1
  68. package/.next/server/app/api/docs/links/route.js +2 -4
  69. package/.next/server/app/api/docs/links/route.js.nft.json +1 -1
  70. package/.next/server/app/api/docs/route.js +2 -3
  71. package/.next/server/app/api/docs/route.js.nft.json +1 -1
  72. package/.next/server/app/api/explorer/route.js +3 -4
  73. package/.next/server/app/api/explorer/route.js.nft.json +1 -1
  74. package/.next/server/app/api/mcp/route.js +3 -4
  75. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  76. package/.next/server/app/api/memory/entries/delete/route.js +3 -4
  77. package/.next/server/app/api/memory/entries/delete/route.js.nft.json +1 -1
  78. package/.next/server/app/api/memory/entries/merge/route.js +3 -4
  79. package/.next/server/app/api/memory/entries/merge/route.js.nft.json +1 -1
  80. package/.next/server/app/api/memory/entries/merge/undo/route.js +3 -4
  81. package/.next/server/app/api/memory/entries/merge/undo/route.js.nft.json +1 -1
  82. package/.next/server/app/api/memory/entries/restore/route.js +3 -4
  83. package/.next/server/app/api/memory/entries/restore/route.js.nft.json +1 -1
  84. package/.next/server/app/api/memory/entries/route.js +2 -3
  85. package/.next/server/app/api/memory/entries/route.js.nft.json +1 -1
  86. package/.next/server/app/api/memory/entries/save/route.js +3 -4
  87. package/.next/server/app/api/memory/entries/save/route.js.nft.json +1 -1
  88. package/.next/server/app/api/memory/graph/route.js +3 -4
  89. package/.next/server/app/api/memory/graph/route.js.nft.json +1 -1
  90. package/.next/server/app/api/memory/health/dismiss/route.js +3 -4
  91. package/.next/server/app/api/memory/health/dismiss/route.js.nft.json +1 -1
  92. package/.next/server/app/api/memory/health/route.js +2 -3
  93. package/.next/server/app/api/memory/health/route.js.nft.json +1 -1
  94. package/.next/server/app/api/memory/history/route.js +2 -4
  95. package/.next/server/app/api/memory/history/route.js.nft.json +1 -1
  96. package/.next/server/app/api/memory/restore/route/app-paths-manifest.json +3 -0
  97. package/.next/server/app/api/memory/restore/route/build-manifest.json +12 -0
  98. package/.next/server/app/api/memory/restore/route/server-reference-manifest.json +4 -0
  99. package/.next/server/app/api/memory/restore/route.js +8 -0
  100. package/.next/server/app/api/memory/restore/route.js.map +5 -0
  101. package/.next/server/app/api/memory/restore/route.js.nft.json +1 -0
  102. package/.next/server/app/api/memory/restore/route_client-reference-manifest.js +3 -0
  103. package/.next/server/app/api/memory/route.js +2 -3
  104. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  105. package/.next/server/app/api/memory/versions/route/app-paths-manifest.json +3 -0
  106. package/.next/server/app/api/memory/versions/route/build-manifest.json +12 -0
  107. package/.next/server/app/api/memory/versions/route/server-reference-manifest.json +4 -0
  108. package/.next/server/app/api/memory/versions/route.js +7 -0
  109. package/.next/server/app/api/memory/versions/route.js.map +5 -0
  110. package/.next/server/app/api/memory/versions/route.js.nft.json +1 -0
  111. package/.next/server/app/api/memory/versions/route_client-reference-manifest.js +3 -0
  112. package/.next/server/app/api/plan/apply/route.js +3 -4
  113. package/.next/server/app/api/plan/apply/route.js.nft.json +1 -1
  114. package/.next/server/app/api/projects/route.js +2 -3
  115. package/.next/server/app/api/projects/route.js.nft.json +1 -1
  116. package/.next/server/app/api/registry/route.js +2 -3
  117. package/.next/server/app/api/registry/route.js.nft.json +1 -1
  118. package/.next/server/app/api/roadmap/create/route.js +3 -4
  119. package/.next/server/app/api/roadmap/create/route.js.nft.json +1 -1
  120. package/.next/server/app/api/roadmap/delete/route.js +3 -4
  121. package/.next/server/app/api/roadmap/delete/route.js.nft.json +1 -1
  122. package/.next/server/app/api/roadmap/generate/route.js +3 -4
  123. package/.next/server/app/api/roadmap/generate/route.js.nft.json +1 -1
  124. package/.next/server/app/api/roadmap/layout/route.js +3 -4
  125. package/.next/server/app/api/roadmap/layout/route.js.nft.json +1 -1
  126. package/.next/server/app/api/roadmap/restore/route.js +3 -4
  127. package/.next/server/app/api/roadmap/restore/route.js.nft.json +1 -1
  128. package/.next/server/app/api/roadmap/route.js +2 -3
  129. package/.next/server/app/api/roadmap/route.js.nft.json +1 -1
  130. package/.next/server/app/api/roadmap/update/route.js +3 -4
  131. package/.next/server/app/api/roadmap/update/route.js.nft.json +1 -1
  132. package/.next/server/app/api/sessions/route.js +2 -3
  133. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  134. package/.next/server/app/api/settings/route.js +2 -3
  135. package/.next/server/app/api/settings/route.js.nft.json +1 -1
  136. package/.next/server/app/api/setup/generate/route.js +2 -3
  137. package/.next/server/app/api/setup/generate/route.js.nft.json +1 -1
  138. package/.next/server/app/api/setup/write/route.js +2 -3
  139. package/.next/server/app/api/setup/write/route.js.nft.json +1 -1
  140. package/.next/server/app/api/summary/route.js +2 -3
  141. package/.next/server/app/api/summary/route.js.nft.json +1 -1
  142. package/.next/server/app/api/tasks/bulk/route.js +3 -4
  143. package/.next/server/app/api/tasks/bulk/route.js.nft.json +1 -1
  144. package/.next/server/app/api/tasks/create/route.js +2 -3
  145. package/.next/server/app/api/tasks/create/route.js.nft.json +1 -1
  146. package/.next/server/app/api/tasks/delete/route.js +3 -4
  147. package/.next/server/app/api/tasks/delete/route.js.nft.json +1 -1
  148. package/.next/server/app/api/tasks/manual-tests/route.js +3 -3
  149. package/.next/server/app/api/tasks/manual-tests/route.js.nft.json +1 -1
  150. package/.next/server/app/api/tasks/restore/route.js +3 -4
  151. package/.next/server/app/api/tasks/restore/route.js.nft.json +1 -1
  152. package/.next/server/app/api/tasks/review/route.js +3 -4
  153. package/.next/server/app/api/tasks/review/route.js.nft.json +1 -1
  154. package/.next/server/app/api/tasks/route.js +2 -3
  155. package/.next/server/app/api/tasks/route.js.nft.json +1 -1
  156. package/.next/server/app/api/tasks/update/route.js +3 -4
  157. package/.next/server/app/api/tasks/update/route.js.nft.json +1 -1
  158. package/.next/server/app/api/views/route.js +2 -3
  159. package/.next/server/app/api/views/route.js.nft.json +1 -1
  160. package/.next/server/app/board.html +1 -1
  161. package/.next/server/app/board.rsc +7 -7
  162. package/.next/server/app/board.segments/!KGFwcCk/board/__PAGE__.segment.rsc +5 -5
  163. package/.next/server/app/board.segments/_full.segment.rsc +7 -7
  164. package/.next/server/app/board.segments/_tree.segment.rsc +2 -2
  165. package/.next/server/app/chat.html +1 -1
  166. package/.next/server/app/chat.rsc +6 -6
  167. package/.next/server/app/chat.segments/!KGFwcCk/chat/__PAGE__.segment.rsc +6 -6
  168. package/.next/server/app/chat.segments/_full.segment.rsc +6 -6
  169. package/.next/server/app/chat.segments/_tree.segment.rsc +2 -2
  170. package/.next/server/app/docs.html +1 -1
  171. package/.next/server/app/docs.rsc +7 -7
  172. package/.next/server/app/docs.segments/!KGFwcCk/docs/__PAGE__.segment.rsc +5 -5
  173. package/.next/server/app/docs.segments/_full.segment.rsc +7 -7
  174. package/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
  175. package/.next/server/app/explorer.html +1 -1
  176. package/.next/server/app/explorer.rsc +7 -7
  177. package/.next/server/app/explorer.segments/!KGFwcCk/explorer/__PAGE__.segment.rsc +9 -11
  178. package/.next/server/app/explorer.segments/_full.segment.rsc +7 -7
  179. package/.next/server/app/explorer.segments/_tree.segment.rsc +2 -2
  180. package/.next/server/app/getting-started.html +1 -0
  181. package/.next/server/app/getting-started.meta +31 -0
  182. package/.next/server/app/getting-started.rsc +31 -0
  183. package/.next/server/app/getting-started.segments/!KGFwcCk/getting-started/__PAGE__.segment.rsc +32 -0
  184. package/.next/server/app/getting-started.segments/_full.segment.rsc +31 -0
  185. package/.next/server/app/getting-started.segments/_tree.segment.rsc +5 -0
  186. package/.next/server/app/graph.html +1 -1
  187. package/.next/server/app/graph.rsc +6 -6
  188. package/.next/server/app/graph.segments/!KGFwcCk/graph/__PAGE__.segment.rsc +5 -5
  189. package/.next/server/app/graph.segments/_full.segment.rsc +6 -6
  190. package/.next/server/app/graph.segments/_tree.segment.rsc +2 -2
  191. package/.next/server/app/index.html +1 -1
  192. package/.next/server/app/index.rsc +2 -2
  193. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  194. package/.next/server/app/index.segments/_full.segment.rsc +2 -2
  195. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  196. package/.next/server/app/manual-tests.html +1 -1
  197. package/.next/server/app/manual-tests.rsc +7 -7
  198. package/.next/server/app/manual-tests.segments/!KGFwcCk/manual-tests/__PAGE__.segment.rsc +9 -11
  199. package/.next/server/app/manual-tests.segments/_full.segment.rsc +7 -7
  200. package/.next/server/app/manual-tests.segments/_tree.segment.rsc +2 -2
  201. package/.next/server/app/memory.html +1 -1
  202. package/.next/server/app/memory.rsc +7 -7
  203. package/.next/server/app/memory.segments/!KGFwcCk/memory/__PAGE__.segment.rsc +5 -5
  204. package/.next/server/app/memory.segments/_full.segment.rsc +7 -7
  205. package/.next/server/app/memory.segments/_tree.segment.rsc +2 -2
  206. package/.next/server/app/page.js.nft.json +1 -1
  207. package/.next/server/app/page_client-reference-manifest.js +1 -1
  208. package/.next/server/app/roadmap.html +1 -1
  209. package/.next/server/app/roadmap.rsc +7 -7
  210. package/.next/server/app/roadmap.segments/!KGFwcCk/roadmap/__PAGE__.segment.rsc +5 -5
  211. package/.next/server/app/roadmap.segments/_full.segment.rsc +7 -7
  212. package/.next/server/app/roadmap.segments/_tree.segment.rsc +2 -2
  213. package/.next/server/app/settings.html +1 -1
  214. package/.next/server/app/settings.rsc +6 -6
  215. package/.next/server/app/settings.segments/!KGFwcCk/settings/__PAGE__.segment.rsc +11 -9
  216. package/.next/server/app/settings.segments/_full.segment.rsc +6 -6
  217. package/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  218. package/.next/server/app/setup.html +1 -1
  219. package/.next/server/app/setup.rsc +6 -6
  220. package/.next/server/app/setup.segments/!KGFwcCk/setup/__PAGE__.segment.rsc +9 -11
  221. package/.next/server/app/setup.segments/_full.segment.rsc +6 -6
  222. package/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  223. package/.next/server/app/welcome/page/app-paths-manifest.json +3 -0
  224. package/.next/server/app/welcome/page/build-manifest.json +20 -0
  225. package/.next/server/app/welcome/page/next-font-manifest.json +11 -0
  226. package/.next/server/app/welcome/page/react-loadable-manifest.json +1 -0
  227. package/.next/server/app/welcome/page/server-reference-manifest.json +4 -0
  228. package/.next/server/app/welcome/page.js +13 -0
  229. package/.next/server/app/welcome/page.js.map +5 -0
  230. package/.next/server/app/welcome/page.js.nft.json +1 -0
  231. package/.next/server/app/welcome/page_client-reference-manifest.js +3 -0
  232. package/.next/server/app/welcome.html +1 -0
  233. package/.next/server/app/welcome.meta +26 -0
  234. package/.next/server/app/welcome.rsc +27 -0
  235. package/.next/server/app/welcome.segments/_full.segment.rsc +27 -0
  236. package/.next/server/app/welcome.segments/_tree.segment.rsc +5 -0
  237. package/.next/server/app/welcome.segments/welcome/__PAGE__.segment.rsc +29 -0
  238. package/.next/server/app-paths-manifest.json +5 -1
  239. package/.next/server/chunks/{11mp_@anthropic-ai_sdk_01gyja3._.js → 11mp_@anthropic-ai_sdk_0-smxh7._.js} +1 -1
  240. package/.next/server/chunks/{11mp_@anthropic-ai_sdk_02lx_j3._.js → 11mp_@anthropic-ai_sdk_0-upxuo._.js} +1 -1
  241. package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0-r4g2t._.js → 11mp_@anthropic-ai_sdk_00stvd0._.js} +1 -1
  242. package/.next/server/chunks/{11mp_@anthropic-ai_sdk_05iv23g._.js → 11mp_@anthropic-ai_sdk_05tlp4j._.js} +1 -1
  243. package/.next/server/chunks/11mp_@anthropic-ai_sdk_06i1jku._.js +3 -0
  244. package/.next/server/chunks/11mp_@anthropic-ai_sdk_06pqlwo._.js +3 -0
  245. package/.next/server/chunks/11mp_@anthropic-ai_sdk_06q_bm6._.js +3 -0
  246. package/.next/server/chunks/11mp_@anthropic-ai_sdk_098dref._.js +3 -0
  247. package/.next/server/chunks/11mp_@anthropic-ai_sdk_09q07e_._.js +3 -0
  248. package/.next/server/chunks/11mp_@anthropic-ai_sdk_09r9wsn._.js +3 -0
  249. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0_rnqa6._.js +3 -0
  250. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0ch0mdl._.js +3 -0
  251. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0didq3m._.js +3 -0
  252. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0dwtv_z._.js +3 -0
  253. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0e8sqia._.js +3 -0
  254. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0gk-rze._.js +3 -0
  255. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0gywxp1._.js +3 -0
  256. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0h4l0yx._.js +3 -0
  257. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0hjmy82._.js +3 -0
  258. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0jbmnx_._.js +3 -0
  259. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0l7teck._.js +3 -0
  260. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0ldf-lc._.js +3 -0
  261. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0oe9p6l._.js +3 -0
  262. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0ppgi2h._.js +3 -0
  263. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0ydb8nm._.js +3 -0
  264. package/.next/server/chunks/11mp_@anthropic-ai_sdk_11hsr1e._.js +3 -0
  265. package/.next/server/chunks/11mp_@anthropic-ai_sdk_14pgcis._.js +3 -0
  266. package/.next/server/chunks/11mp_@anthropic-ai_sdk_15_sqq8._.js +3 -0
  267. package/.next/server/chunks/11mp_@anthropic-ai_sdk_16up-b0._.js +3 -0
  268. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1_jm94w._.js +3 -0
  269. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1aswx0v._.js +3 -0
  270. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1bkea9c._.js +3 -0
  271. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1d41_6l._.js +3 -0
  272. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1d959rx._.js +3 -0
  273. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1eughke._.js +3 -0
  274. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ev29eb._.js +3 -0
  275. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1faxy2m._.js +3 -0
  276. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1lginb1._.js +3 -0
  277. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1pg6fky._.js +3 -0
  278. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1qfho5e._.js +3 -0
  279. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1r9e6jv._.js +3 -0
  280. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1tjlpeq._.js +3 -0
  281. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1wcdj4f._.js +3 -0
  282. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1x25dnb._.js +3 -0
  283. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ywjkuh._.js +3 -0
  284. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1zbnql3._.js +3 -0
  285. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1zbnql3._.js.map +1 -0
  286. package/.next/server/chunks/11mp_@anthropic-ai_sdk_208gclq._.js +3 -0
  287. package/.next/server/chunks/11mp_@anthropic-ai_sdk_208gclq._.js.map +1 -0
  288. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_07rnikd._.js +3 -0
  289. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0cxqkzo._.js +3 -0
  290. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0iemvsj._.js +3 -0
  291. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0losy1p._.js +3 -0
  292. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0q2-o56._.js +3 -0
  293. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0v9tonm._.js +3 -0
  294. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0ve_28v._.js +3 -0
  295. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0vta7f6._.js +3 -0
  296. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0xme80s._.js +3 -0
  297. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_12tnhho._.js +3 -0
  298. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_14-nnf3._.js +3 -0
  299. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_14e0xcw._.js +3 -0
  300. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1cbywiw._.js +3 -0
  301. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1d4fc7y._.js +3 -0
  302. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1e89sld._.js +3 -0
  303. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1emt011._.js +3 -0
  304. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1jgaffx._.js +3 -0
  305. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1m9p_w8._.js +3 -0
  306. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1mtv1gy._.js +3 -0
  307. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1plmrbl._.js +3 -0
  308. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1toqkb5._.js +3 -0
  309. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1yc8ml3._.js +3 -0
  310. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1ycnogk._.js +3 -0
  311. package/.next/server/chunks/[root-of-the-server]__02ym03p._.js +3 -0
  312. package/.next/server/chunks/[root-of-the-server]__02ym03p._.js.map +1 -0
  313. package/.next/server/chunks/[root-of-the-server]__04qfxm4._.js +3 -0
  314. package/.next/server/chunks/[root-of-the-server]__04qfxm4._.js.map +1 -0
  315. package/.next/server/chunks/[root-of-the-server]__04t339z._.js +3 -0
  316. package/.next/server/chunks/[root-of-the-server]__04t339z._.js.map +1 -0
  317. package/.next/server/chunks/[root-of-the-server]__05b72pa._.js +3 -0
  318. package/.next/server/chunks/[root-of-the-server]__05b72pa._.js.map +1 -0
  319. package/.next/server/chunks/[root-of-the-server]__05jwgm-._.js +261 -0
  320. package/.next/server/chunks/[root-of-the-server]__05jwgm-._.js.map +1 -0
  321. package/.next/server/chunks/{[root-of-the-server]__0rh8yfn._.js → [root-of-the-server]__06ikdrx._.js} +2 -2
  322. package/.next/server/chunks/{[root-of-the-server]__0rh8yfn._.js.map → [root-of-the-server]__06ikdrx._.js.map} +1 -1
  323. package/.next/server/chunks/[root-of-the-server]__06x7kjp._.js +3 -0
  324. package/.next/server/chunks/{[root-of-the-server]__1wbho9e._.js.map → [root-of-the-server]__06x7kjp._.js.map} +1 -1
  325. package/.next/server/chunks/[root-of-the-server]__07-qwkc._.js +3 -0
  326. package/.next/server/chunks/[root-of-the-server]__07-qwkc._.js.map +1 -0
  327. package/.next/server/chunks/[root-of-the-server]__0_j-3zy._.js +3 -0
  328. package/.next/server/chunks/{[root-of-the-server]__1r_0uma._.js.map → [root-of-the-server]__0_j-3zy._.js.map} +1 -1
  329. package/.next/server/chunks/{[root-of-the-server]__0pz59qo._.js → [root-of-the-server]__0_paned._.js} +2 -2
  330. package/.next/server/chunks/[root-of-the-server]__0_paned._.js.map +1 -0
  331. package/.next/server/chunks/{[root-of-the-server]__0rikmqn._.js → [root-of-the-server]__0adl8c2._.js} +2 -2
  332. package/.next/server/chunks/[root-of-the-server]__0be-1oe._.js +3 -0
  333. package/.next/server/chunks/[root-of-the-server]__0be-1oe._.js.map +1 -0
  334. package/.next/server/chunks/[root-of-the-server]__0c7qnhb._.js +3 -0
  335. package/.next/server/chunks/{[root-of-the-server]__0vf-0gp._.js.map → [root-of-the-server]__0c7qnhb._.js.map} +1 -1
  336. package/.next/server/chunks/[root-of-the-server]__0dfd91u._.js +3 -0
  337. package/.next/server/chunks/[root-of-the-server]__0dfd91u._.js.map +1 -0
  338. package/.next/server/chunks/[root-of-the-server]__0e_zpd3._.js +3 -0
  339. package/.next/server/chunks/[root-of-the-server]__0e_zpd3._.js.map +1 -0
  340. package/.next/server/chunks/[root-of-the-server]__0efnsph._.js +3 -0
  341. package/.next/server/chunks/[root-of-the-server]__0efnsph._.js.map +1 -0
  342. package/.next/server/chunks/{[root-of-the-server]__1sn6-7a._.js → [root-of-the-server]__0gbhsr4._.js} +2 -2
  343. package/.next/server/chunks/{[root-of-the-server]__1sn6-7a._.js.map → [root-of-the-server]__0gbhsr4._.js.map} +1 -1
  344. package/.next/server/chunks/[root-of-the-server]__0pb7dzk._.js +261 -0
  345. package/.next/server/chunks/[root-of-the-server]__0pb7dzk._.js.map +1 -0
  346. package/.next/server/chunks/[root-of-the-server]__0q-h0w3._.js +3 -0
  347. package/.next/server/chunks/[root-of-the-server]__0q-h0w3._.js.map +1 -0
  348. package/.next/server/chunks/{[root-of-the-server]__1yh-4vk._.js → [root-of-the-server]__0r_831n._.js} +2 -2
  349. package/.next/server/chunks/[root-of-the-server]__0s9wedh._.js +3 -0
  350. package/.next/server/chunks/[root-of-the-server]__0s9wedh._.js.map +1 -0
  351. package/.next/server/chunks/{[root-of-the-server]__08v3p50._.js → [root-of-the-server]__0tzsbyx._.js} +2 -2
  352. package/.next/server/chunks/[root-of-the-server]__0uyhc_4._.js +3 -0
  353. package/.next/server/chunks/[root-of-the-server]__0uyhc_4._.js.map +1 -0
  354. package/.next/server/chunks/[root-of-the-server]__0z2h080._.js +3 -0
  355. package/.next/server/chunks/[root-of-the-server]__0z2h080._.js.map +1 -0
  356. package/.next/server/chunks/[root-of-the-server]__1-f1pzo._.js +3 -0
  357. package/.next/server/chunks/{[root-of-the-server]__0b6w_wb._.js.map → [root-of-the-server]__1-f1pzo._.js.map} +1 -1
  358. package/.next/server/chunks/[root-of-the-server]__120uun8._.js +3 -0
  359. package/.next/server/chunks/{[root-of-the-server]__05us508._.js.map → [root-of-the-server]__120uun8._.js.map} +1 -1
  360. package/.next/server/chunks/[root-of-the-server]__12qs29o._.js +261 -0
  361. package/.next/server/chunks/[root-of-the-server]__12qs29o._.js.map +1 -0
  362. package/.next/server/chunks/{[root-of-the-server]__1r67yrn._.js → [root-of-the-server]__146-7zt._.js} +2 -2
  363. package/.next/server/chunks/[root-of-the-server]__146-7zt._.js.map +1 -0
  364. package/.next/server/chunks/[root-of-the-server]__17_dic_._.js +3 -0
  365. package/.next/server/chunks/[root-of-the-server]__17_dic_._.js.map +1 -0
  366. package/.next/server/chunks/[root-of-the-server]__19a04nn._.js +3 -0
  367. package/.next/server/chunks/{[root-of-the-server]__0hg1r2b._.js.map → [root-of-the-server]__19a04nn._.js.map} +1 -1
  368. package/.next/server/chunks/[root-of-the-server]__1_q8upn._.js +3 -0
  369. package/.next/server/chunks/[root-of-the-server]__1ar-16i._.js +3 -0
  370. package/.next/server/chunks/[root-of-the-server]__1ar-16i._.js.map +1 -0
  371. package/.next/server/chunks/[root-of-the-server]__1egi_4t._.js +3 -0
  372. package/.next/server/chunks/[root-of-the-server]__1egi_4t._.js.map +1 -0
  373. package/.next/server/chunks/[root-of-the-server]__1eh1p2_._.js +3 -0
  374. package/.next/server/chunks/[root-of-the-server]__1eh1p2_._.js.map +1 -0
  375. package/.next/server/chunks/[root-of-the-server]__1gwdudg._.js +3 -0
  376. package/.next/server/chunks/{[root-of-the-server]__18dt3sr._.js.map → [root-of-the-server]__1gwdudg._.js.map} +1 -1
  377. package/.next/server/chunks/{[root-of-the-server]__0wc_gnr._.js → [root-of-the-server]__1hz94ca._.js} +2 -2
  378. package/.next/server/chunks/[root-of-the-server]__1jyx430._.js +3 -0
  379. package/.next/server/chunks/{[root-of-the-server]__1wcd2x9._.js.map → [root-of-the-server]__1jyx430._.js.map} +1 -1
  380. package/.next/server/chunks/[root-of-the-server]__1meifxd._.js +3 -0
  381. package/.next/server/chunks/[root-of-the-server]__1meifxd._.js.map +1 -0
  382. package/.next/server/chunks/[root-of-the-server]__1mn0d5e._.js +3 -0
  383. package/.next/server/chunks/[root-of-the-server]__1mn0d5e._.js.map +1 -0
  384. package/.next/server/chunks/[root-of-the-server]__1o-hldt._.js +3 -0
  385. package/.next/server/chunks/{[root-of-the-server]__1pjwaan._.js.map → [root-of-the-server]__1o-hldt._.js.map} +1 -1
  386. package/.next/server/chunks/[root-of-the-server]__1ocnzl5._.js +3 -0
  387. package/.next/server/chunks/[root-of-the-server]__1ocnzl5._.js.map +1 -0
  388. package/.next/server/chunks/{[root-of-the-server]__06ndlro._.js → [root-of-the-server]__1pf07ha._.js} +2 -2
  389. package/.next/server/chunks/{[root-of-the-server]__0zy73pu._.js → [root-of-the-server]__1rtj94g._.js} +2 -2
  390. package/.next/server/chunks/{[root-of-the-server]__11nbc9e._.js.map → [root-of-the-server]__1rtj94g._.js.map} +1 -1
  391. package/.next/server/chunks/[root-of-the-server]__1rz7a1h._.js +3 -0
  392. package/.next/server/chunks/[root-of-the-server]__1rz7a1h._.js.map +1 -0
  393. package/.next/server/chunks/[root-of-the-server]__1s7yctb._.js +3 -0
  394. package/.next/server/chunks/{[root-of-the-server]__0rggulw._.js.map → [root-of-the-server]__1s7yctb._.js.map} +1 -1
  395. package/.next/server/chunks/[root-of-the-server]__1tebaoq._.js +3 -0
  396. package/.next/server/chunks/[root-of-the-server]__1tebaoq._.js.map +1 -0
  397. package/.next/server/chunks/[root-of-the-server]__1uh0213._.js +3 -0
  398. package/.next/server/chunks/{[root-of-the-server]__1skrybv._.js.map → [root-of-the-server]__1uh0213._.js.map} +1 -1
  399. package/.next/server/chunks/[root-of-the-server]__1vj_u-e._.js +3 -0
  400. package/.next/server/chunks/{[root-of-the-server]__1p6-0l0._.js.map → [root-of-the-server]__1vj_u-e._.js.map} +1 -1
  401. package/.next/server/chunks/{[root-of-the-server]__1_qenei._.js → [root-of-the-server]__20ctbhx._.js} +2 -2
  402. package/.next/server/chunks/{[root-of-the-server]__1_qenei._.js.map → [root-of-the-server]__20ctbhx._.js.map} +1 -1
  403. package/.next/server/chunks/[root-of-the-server]__20nzp64._.js +3 -0
  404. package/.next/server/chunks/{[root-of-the-server]__1r67yrn._.js.map → [root-of-the-server]__20nzp64._.js.map} +1 -1
  405. package/.next/server/chunks/_04byth9._.js +19 -18
  406. package/.next/server/chunks/_04byth9._.js.map +1 -1
  407. package/.next/server/chunks/_0safx0g._.js +3 -3
  408. package/.next/server/chunks/_0safx0g._.js.map +1 -1
  409. package/.next/server/chunks/_1au4syj._.js +1 -1
  410. package/.next/server/chunks/_1au4syj._.js.map +1 -1
  411. package/.next/server/chunks/_1b5fqxy._.js +1 -1
  412. package/.next/server/chunks/_1b5fqxy._.js.map +1 -1
  413. package/.next/server/chunks/_1ivswa9._.js +1 -1
  414. package/.next/server/chunks/_1ivswa9._.js.map +1 -1
  415. package/.next/server/chunks/_1si7nb_._.js +2 -2
  416. package/.next/server/chunks/_1si7nb_._.js.map +1 -1
  417. package/.next/server/chunks/_next-internal_server_app_api_memory_restore_route_actions_0679kmo.js +3 -0
  418. package/.next/server/chunks/_next-internal_server_app_api_memory_versions_route_actions_13mix75.js +3 -0
  419. package/.next/server/chunks/ssr/{0_nd_mermaid_dist_mermaid_core_mjs_0y_edkq._.js → 0_nd_mermaid_dist_mermaid_core_mjs_1trh599._.js} +2 -2
  420. package/.next/server/chunks/ssr/{1u84_katex_dist_katex_mjs_0yg8zto._.js → 1u84_katex_dist_katex_mjs_0wukkxe._.js} +1 -1
  421. package/.next/server/chunks/ssr/[root-of-the-server]__0dn-5g9._.js +3 -0
  422. package/.next/server/chunks/ssr/[root-of-the-server]__0dn-5g9._.js.map +1 -0
  423. package/.next/server/chunks/ssr/{[root-of-the-server]__08z0szh._.js → [root-of-the-server]__0p_ieww._.js} +1 -1
  424. package/.next/server/chunks/ssr/[root-of-the-server]__1_4pq0_._.js +3 -0
  425. package/.next/server/chunks/ssr/[root-of-the-server]__1_4pq0_._.js.map +1 -0
  426. package/.next/server/chunks/ssr/{[root-of-the-server]__1wdwnnp._.js → [root-of-the-server]__1ecvjg8._.js} +1 -1
  427. package/.next/server/chunks/ssr/_04xff_2._.js +1 -1
  428. package/.next/server/chunks/ssr/_04xff_2._.js.map +1 -1
  429. package/.next/server/chunks/ssr/_09qa3fe._.js +3 -0
  430. package/.next/server/chunks/ssr/_09qa3fe._.js.map +1 -0
  431. package/.next/server/chunks/ssr/_0_74-q8._.js +3 -0
  432. package/.next/server/chunks/ssr/_0_74-q8._.js.map +1 -0
  433. package/.next/server/chunks/ssr/_0cv0ugs._.js +3 -0
  434. package/.next/server/chunks/ssr/_0cv0ugs._.js.map +1 -0
  435. package/.next/server/chunks/ssr/_0ghj-vx._.js +1 -1
  436. package/.next/server/chunks/ssr/_0ghj-vx._.js.map +1 -1
  437. package/.next/server/chunks/ssr/_0hck6f0._.js +3 -0
  438. package/.next/server/chunks/ssr/_0hck6f0._.js.map +1 -0
  439. package/.next/server/chunks/ssr/_0o8t6j-._.js +3 -0
  440. package/.next/server/chunks/ssr/_0o8t6j-._.js.map +1 -0
  441. package/.next/server/chunks/ssr/_0p_5o4z._.js +23 -0
  442. package/.next/server/chunks/ssr/_0p_5o4z._.js.map +1 -0
  443. package/.next/server/chunks/ssr/_0rmo9r-._.js +1 -1
  444. package/.next/server/chunks/ssr/_0rmo9r-._.js.map +1 -1
  445. package/.next/server/chunks/ssr/_0ust7tw._.js +1 -1
  446. package/.next/server/chunks/ssr/_0ust7tw._.js.map +1 -1
  447. package/.next/server/chunks/ssr/_1c46ap6._.js +23 -0
  448. package/.next/server/chunks/ssr/_1c46ap6._.js.map +1 -0
  449. package/.next/server/chunks/ssr/_1gxjjvh._.js +1 -1
  450. package/.next/server/chunks/ssr/_1gxjjvh._.js.map +1 -1
  451. package/.next/server/chunks/ssr/_1jjs63r._.js +131 -0
  452. package/.next/server/chunks/ssr/_1jjs63r._.js.map +1 -0
  453. package/.next/server/chunks/ssr/_1kcyxnh._.js +3 -0
  454. package/.next/server/chunks/ssr/_1kcyxnh._.js.map +1 -0
  455. package/.next/server/chunks/ssr/_1lvbdeq._.js +3 -0
  456. package/.next/server/chunks/ssr/_1lvbdeq._.js.map +1 -0
  457. package/.next/server/chunks/ssr/_1rewjdw._.js +3 -0
  458. package/.next/server/chunks/ssr/_1rewjdw._.js.map +1 -0
  459. package/.next/server/chunks/ssr/_1tv---f._.js +3 -0
  460. package/.next/server/chunks/ssr/_1tv---f._.js.map +1 -0
  461. package/.next/server/chunks/ssr/_1zyvi-w._.js +3 -0
  462. package/.next/server/chunks/ssr/_1zyvi-w._.js.map +1 -0
  463. package/.next/server/chunks/ssr/_next-internal_server_app_(app)_getting-started_page_actions_18jod7i.js +3 -0
  464. package/.next/server/chunks/ssr/_next-internal_server_app_welcome_page_actions_1unjea7.js +3 -0
  465. package/.next/server/chunks/ssr/{node_modules__pnpm_03mp7qw._.js → node_modules__pnpm_0-6sq9f._.js} +2 -2
  466. package/.next/server/chunks/ssr/{node_modules__pnpm_0jampur._.js → node_modules__pnpm_0-vta96._.js} +1 -1
  467. package/.next/server/chunks/ssr/{node_modules__pnpm_00f4yhs._.js → node_modules__pnpm_04qn321._.js} +1 -1
  468. package/.next/server/chunks/ssr/{node_modules__pnpm_0tn5pg3._.js → node_modules__pnpm_06r-oci._.js} +1 -1
  469. package/.next/server/chunks/ssr/{node_modules__pnpm_0iu4132._.js → node_modules__pnpm_0fe8aya._.js} +1 -1
  470. package/.next/server/chunks/ssr/{node_modules__pnpm_0oyo3yo._.js → node_modules__pnpm_0hpufx1._.js} +2 -2
  471. package/.next/server/chunks/ssr/{node_modules__pnpm_0j_-le7._.js → node_modules__pnpm_0k5j0_5._.js} +2 -2
  472. package/.next/server/chunks/ssr/node_modules__pnpm_0k5j0_5._.js.map +1 -0
  473. package/.next/server/chunks/ssr/{node_modules__pnpm_0x5wj-4._.js → node_modules__pnpm_0kv8p99._.js} +2 -2
  474. package/.next/server/chunks/ssr/{node_modules__pnpm_06_8fr8._.js → node_modules__pnpm_0m-_au1._.js} +1 -1
  475. package/.next/server/chunks/ssr/{node_modules__pnpm_1zme4rg._.js → node_modules__pnpm_0mrjd3b._.js} +1 -1
  476. package/.next/server/chunks/ssr/{node_modules__pnpm_0mqeoh-._.js → node_modules__pnpm_0p2ufg5._.js} +2 -2
  477. package/.next/server/chunks/ssr/{node_modules__pnpm_03mpmzx._.js → node_modules__pnpm_0r2omyh._.js} +1 -1
  478. package/.next/server/chunks/ssr/{node_modules__pnpm_0_e05ka._.js → node_modules__pnpm_0uh9zwf._.js} +1 -1
  479. package/.next/server/chunks/ssr/{node_modules__pnpm_035haet._.js → node_modules__pnpm_0ujugl_._.js} +1 -1
  480. package/.next/server/chunks/ssr/{node_modules__pnpm_0lkvbt-._.js → node_modules__pnpm_0v-_iaj._.js} +1 -1
  481. package/.next/server/chunks/ssr/{node_modules__pnpm_0rq9x9q._.js → node_modules__pnpm_0xin4nu._.js} +2 -2
  482. package/.next/server/chunks/ssr/{node_modules__pnpm_139-v1i._.js → node_modules__pnpm_1-zfovp._.js} +1 -1
  483. package/.next/server/chunks/ssr/{node_modules__pnpm_1i_chik._.js → node_modules__pnpm_11p7w0z._.js} +1 -1
  484. package/.next/server/chunks/ssr/{node_modules__pnpm_1jgju12._.js → node_modules__pnpm_16l16l0._.js} +1 -1
  485. package/.next/server/chunks/ssr/{node_modules__pnpm_1n9oeu0._.js → node_modules__pnpm_16vl5yb._.js} +1 -1
  486. package/.next/server/chunks/ssr/{node_modules__pnpm_1ydeqw6._.js → node_modules__pnpm_1alnvos._.js} +1 -1
  487. package/.next/server/chunks/ssr/{node_modules__pnpm_03an60e._.js → node_modules__pnpm_1e_74v6._.js} +1 -1
  488. package/.next/server/chunks/ssr/{node_modules__pnpm_2045l51._.js → node_modules__pnpm_1kvkjrs._.js} +1 -1
  489. package/.next/server/chunks/ssr/{node_modules__pnpm_0zz55xq._.js → node_modules__pnpm_1l4yejo._.js} +1 -1
  490. package/.next/server/chunks/ssr/node_modules__pnpm_1l4yejo._.js.map +1 -0
  491. package/.next/server/chunks/ssr/{node_modules__pnpm_1ws3ez9._.js → node_modules__pnpm_1uly489._.js} +1 -1
  492. package/.next/server/chunks/ssr/{node_modules__pnpm_1zum4yd._.js → node_modules__pnpm_1xntybk._.js} +1 -1
  493. package/.next/server/chunks/ssr/{node_modules__pnpm_09nd7ia._.js → node_modules__pnpm_20g30gl._.js} +1 -1
  494. package/.next/server/chunks/ssr/src_app_(app)_activity_page_tsx_13jd6bn._.js +1 -1
  495. package/.next/server/chunks/ssr/src_app_(app)_activity_page_tsx_13jd6bn._.js.map +1 -1
  496. package/.next/server/chunks/ssr/src_app_(app)_board_page_tsx_0gpfc77._.js +1 -1
  497. package/.next/server/chunks/ssr/src_app_(app)_board_page_tsx_0gpfc77._.js.map +1 -1
  498. package/.next/server/chunks/ssr/src_app_(app)_getting-started_page_tsx_0dgdc6p._.js +3 -0
  499. package/.next/server/chunks/ssr/src_app_(app)_getting-started_page_tsx_0dgdc6p._.js.map +1 -0
  500. package/.next/server/chunks/ssr/src_app_(app)_layout_tsx_1yu5hom._.js +1 -1
  501. package/.next/server/chunks/ssr/src_app_(app)_layout_tsx_1yu5hom._.js.map +1 -1
  502. package/.next/server/chunks/ssr/src_app_(app)_manual-tests_page_tsx_01tnunf._.js +1 -1
  503. package/.next/server/chunks/ssr/src_app_(app)_manual-tests_page_tsx_01tnunf._.js.map +1 -1
  504. package/.next/server/chunks/ssr/src_app_(app)_memory_page_tsx_19jhb1c._.js +3 -3
  505. package/.next/server/chunks/ssr/src_app_(app)_memory_page_tsx_19jhb1c._.js.map +1 -1
  506. package/.next/server/chunks/ssr/src_app_(app)_roadmap_page_tsx_0vcq3jr._.js +2 -2
  507. package/.next/server/chunks/ssr/src_app_(app)_roadmap_page_tsx_0vcq3jr._.js.map +1 -1
  508. package/.next/server/chunks/ssr/src_components_chat_ChatView_tsx_0h5j-e2._.js +1 -1
  509. package/.next/server/chunks/ssr/src_components_chat_ChatView_tsx_0h5j-e2._.js.map +1 -1
  510. package/.next/server/chunks/ssr/src_context_ChatContext_tsx_0lowp8p._.js +2 -2
  511. package/.next/server/chunks/ssr/src_context_ChatContext_tsx_0lowp8p._.js.map +1 -1
  512. package/.next/server/middleware-build-manifest.js +3 -3
  513. package/.next/server/next-font-manifest.js +1 -1
  514. package/.next/server/next-font-manifest.json +8 -0
  515. package/.next/server/pages/404.html +1 -1
  516. package/.next/server/pages/500.html +1 -1
  517. package/.next/server/prefetch-hints.json +33 -0
  518. package/.next/server/server-reference-manifest.js +1 -1
  519. package/.next/server/server-reference-manifest.json +1 -1
  520. package/.next/static/chunks/056pca8ms7k-9.js +1 -0
  521. package/.next/static/chunks/07hf_3iqpzmvo.css +1 -0
  522. package/.next/static/chunks/09-kkj4oxfqu1.js +1 -0
  523. package/.next/static/chunks/0fvkvef41i5ka.js +1 -0
  524. package/.next/static/chunks/{1xxzt2y2ttqql.js → 0kmyxrtasrg2e.js} +1 -1
  525. package/.next/static/chunks/11plpfj6j22fq.js +3 -0
  526. package/.next/static/chunks/{3ly7b47esdb7j.js → 1on4c-091wzdq.js} +1 -1
  527. package/.next/static/chunks/22vfp8880q59s.js +1 -0
  528. package/.next/static/chunks/2kf1_d5fndxdb.js +1 -0
  529. package/.next/static/chunks/{0_8ovyz2sbr3p.js → 2m7a38m38tx5y.js} +1 -1
  530. package/.next/static/chunks/31q2_z_ekk94r.js +1 -0
  531. package/.next/static/chunks/34lxzt8ahe_9n.js +1 -0
  532. package/.next/static/chunks/3fgzdr870mbms.js +2 -0
  533. package/.next/static/chunks/3gzt07wmbrocf.js +12 -0
  534. package/.next/static/chunks/3j_ko3wq2nvby.js +1 -0
  535. package/.next/static/chunks/3l3l7u2t-n2fh.js +3 -0
  536. package/.next/static/chunks/3l4yjycfav_7a.js +1 -0
  537. package/.next/static/chunks/3s8g1yx5n4kmt.js +1 -0
  538. package/.next/static/chunks/3v8szq-k4jtkg.js +1 -0
  539. package/.next/static/chunks/3xp-i_0-8cq9_.js +1 -0
  540. package/.next/static/chunks/41mb4xnwp-aq_.js +1 -0
  541. package/README.md +9 -2
  542. package/bin/vibedoc.check.mts +25 -0
  543. package/bin/vibedoc.mjs +9 -0
  544. package/docs/getting-started.md +93 -0
  545. package/package.json +3 -1
  546. package/.next/server/chunks/0_g__next_1qpfvou._.js +0 -158
  547. package/.next/server/chunks/0_g__next_1qpfvou._.js.map +0 -1
  548. package/.next/server/chunks/11mp_@anthropic-ai_sdk_05oneea._.js +0 -3
  549. package/.next/server/chunks/11mp_@anthropic-ai_sdk_07fgg-l._.js +0 -3
  550. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0_5gzfy._.js +0 -3
  551. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0_jynr-._.js +0 -3
  552. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0aykesf._.js +0 -3
  553. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0br_1fc._.js +0 -3
  554. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0cd5lu7._.js +0 -3
  555. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0ckxhy7._.js +0 -3
  556. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0e5qkuv._.js +0 -3
  557. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0el8pm6._.js +0 -3
  558. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0i4w8fv._.js +0 -3
  559. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0i7ckik._.js +0 -3
  560. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0l1p4c6._.js +0 -3
  561. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0m-xqs_._.js +0 -3
  562. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0nltdmf._.js +0 -3
  563. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0qxmzg8._.js +0 -3
  564. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0spr_aj._.js +0 -3
  565. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0th0pyh._.js +0 -3
  566. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0x21fif._.js +0 -3
  567. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1-7bj56._.js +0 -3
  568. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1-efoj1._.js +0 -3
  569. package/.next/server/chunks/11mp_@anthropic-ai_sdk_13vu693._.js +0 -3
  570. package/.next/server/chunks/11mp_@anthropic-ai_sdk_13w62gi._.js +0 -3
  571. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1887ce1._.js +0 -3
  572. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1_jq3yb._.js +0 -3
  573. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1agvp6h._.js +0 -3
  574. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1b1-3vt._.js +0 -3
  575. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ekldtb._.js +0 -3
  576. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ezcndt._.js +0 -3
  577. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1gr-orf._.js +0 -3
  578. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1hf-884._.js +0 -3
  579. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ndwnmb._.js +0 -3
  580. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1rdesfd._.js +0 -3
  581. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1s8h60-._.js +0 -3
  582. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1tgk9wk._.js +0 -3
  583. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1uugb45._.js +0 -3
  584. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1vcxmui._.js +0 -3
  585. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1x63qpm._.js +0 -3
  586. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1y5oj_h._.js +0 -3
  587. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1z0q4jj._.js +0 -3
  588. package/.next/server/chunks/11mp_@anthropic-ai_sdk_20j6dn7._.js +0 -3
  589. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_00nr0dy._.js +0 -3
  590. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_06kgcr0._.js +0 -3
  591. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_07kod-g._.js +0 -3
  592. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0_va-1q._.js +0 -3
  593. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0dr79hc._.js +0 -3
  594. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0ew4_uw._.js +0 -3
  595. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0iy714m._.js +0 -3
  596. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0n6aq49._.js +0 -3
  597. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0ncvuil._.js +0 -3
  598. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0vilstf._.js +0 -3
  599. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0ybdfbv._.js +0 -3
  600. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0z31-c0._.js +0 -3
  601. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0zu51ny._.js +0 -3
  602. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_13-fsm5._.js +0 -3
  603. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_13lk7wf._.js +0 -3
  604. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1ao3e3l._.js +0 -3
  605. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1ck6z1z._.js +0 -3
  606. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1dm3so9._.js +0 -3
  607. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1jxtz_6._.js +0 -3
  608. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1pdl5qg._.js +0 -3
  609. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1tzpss1._.js +0 -3
  610. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1x_0sf4._.js +0 -3
  611. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1x_fy5x._.js +0 -3
  612. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1xx8_-m._.js +0 -3
  613. package/.next/server/chunks/[root-of-the-server]__05us508._.js +0 -3
  614. package/.next/server/chunks/[root-of-the-server]__09oyvwa._.js +0 -3
  615. package/.next/server/chunks/[root-of-the-server]__09oyvwa._.js.map +0 -1
  616. package/.next/server/chunks/[root-of-the-server]__0b6w_wb._.js +0 -3
  617. package/.next/server/chunks/[root-of-the-server]__0cxmrop._.js +0 -3
  618. package/.next/server/chunks/[root-of-the-server]__0cxmrop._.js.map +0 -1
  619. package/.next/server/chunks/[root-of-the-server]__0exzf-v._.js +0 -3
  620. package/.next/server/chunks/[root-of-the-server]__0exzf-v._.js.map +0 -1
  621. package/.next/server/chunks/[root-of-the-server]__0fn-a8c._.js +0 -126
  622. package/.next/server/chunks/[root-of-the-server]__0fn-a8c._.js.map +0 -1
  623. package/.next/server/chunks/[root-of-the-server]__0gnil0m._.js +0 -3
  624. package/.next/server/chunks/[root-of-the-server]__0gnil0m._.js.map +0 -1
  625. package/.next/server/chunks/[root-of-the-server]__0hg1r2b._.js +0 -3
  626. package/.next/server/chunks/[root-of-the-server]__0hk-9ll._.js +0 -3
  627. package/.next/server/chunks/[root-of-the-server]__0hk-9ll._.js.map +0 -1
  628. package/.next/server/chunks/[root-of-the-server]__0i1yba1._.js +0 -3
  629. package/.next/server/chunks/[root-of-the-server]__0i1yba1._.js.map +0 -1
  630. package/.next/server/chunks/[root-of-the-server]__0khz7sy._.js +0 -3
  631. package/.next/server/chunks/[root-of-the-server]__0khz7sy._.js.map +0 -1
  632. package/.next/server/chunks/[root-of-the-server]__0lf11mz._.js +0 -3
  633. package/.next/server/chunks/[root-of-the-server]__0lf11mz._.js.map +0 -1
  634. package/.next/server/chunks/[root-of-the-server]__0lix3ru._.js +0 -3
  635. package/.next/server/chunks/[root-of-the-server]__0lix3ru._.js.map +0 -1
  636. package/.next/server/chunks/[root-of-the-server]__0pvi3ku._.js +0 -126
  637. package/.next/server/chunks/[root-of-the-server]__0pvi3ku._.js.map +0 -1
  638. package/.next/server/chunks/[root-of-the-server]__0pz59qo._.js.map +0 -1
  639. package/.next/server/chunks/[root-of-the-server]__0rggulw._.js +0 -3
  640. package/.next/server/chunks/[root-of-the-server]__0s8v5i-._.js +0 -3
  641. package/.next/server/chunks/[root-of-the-server]__0s8v5i-._.js.map +0 -1
  642. package/.next/server/chunks/[root-of-the-server]__0usdydm._.js +0 -3
  643. package/.next/server/chunks/[root-of-the-server]__0usdydm._.js.map +0 -1
  644. package/.next/server/chunks/[root-of-the-server]__0vf-0gp._.js +0 -3
  645. package/.next/server/chunks/[root-of-the-server]__0xldguc._.js +0 -3
  646. package/.next/server/chunks/[root-of-the-server]__0xldguc._.js.map +0 -1
  647. package/.next/server/chunks/[root-of-the-server]__11nbc9e._.js +0 -3
  648. package/.next/server/chunks/[root-of-the-server]__11rp-qx._.js +0 -3
  649. package/.next/server/chunks/[root-of-the-server]__11rp-qx._.js.map +0 -1
  650. package/.next/server/chunks/[root-of-the-server]__15c5snv._.js +0 -3
  651. package/.next/server/chunks/[root-of-the-server]__15c5snv._.js.map +0 -1
  652. package/.next/server/chunks/[root-of-the-server]__18dt3sr._.js +0 -3
  653. package/.next/server/chunks/[root-of-the-server]__1a7d63a._.js +0 -3
  654. package/.next/server/chunks/[root-of-the-server]__1a7d63a._.js.map +0 -1
  655. package/.next/server/chunks/[root-of-the-server]__1e68zmx._.js +0 -3
  656. package/.next/server/chunks/[root-of-the-server]__1e68zmx._.js.map +0 -1
  657. package/.next/server/chunks/[root-of-the-server]__1ef-hw_._.js +0 -3
  658. package/.next/server/chunks/[root-of-the-server]__1ef-hw_._.js.map +0 -1
  659. package/.next/server/chunks/[root-of-the-server]__1jel07j._.js +0 -3
  660. package/.next/server/chunks/[root-of-the-server]__1jel07j._.js.map +0 -1
  661. package/.next/server/chunks/[root-of-the-server]__1la-6xe._.js +0 -3
  662. package/.next/server/chunks/[root-of-the-server]__1la-6xe._.js.map +0 -1
  663. package/.next/server/chunks/[root-of-the-server]__1p6-0l0._.js +0 -3
  664. package/.next/server/chunks/[root-of-the-server]__1pjwaan._.js +0 -3
  665. package/.next/server/chunks/[root-of-the-server]__1qcy2l0._.js +0 -3
  666. package/.next/server/chunks/[root-of-the-server]__1qcy2l0._.js.map +0 -1
  667. package/.next/server/chunks/[root-of-the-server]__1r_0uma._.js +0 -3
  668. package/.next/server/chunks/[root-of-the-server]__1skrybv._.js +0 -3
  669. package/.next/server/chunks/[root-of-the-server]__1vnine1._.js +0 -126
  670. package/.next/server/chunks/[root-of-the-server]__1vnine1._.js.map +0 -1
  671. package/.next/server/chunks/[root-of-the-server]__1wbho9e._.js +0 -3
  672. package/.next/server/chunks/[root-of-the-server]__1wcd2x9._.js +0 -3
  673. package/.next/server/chunks/[root-of-the-server]__1zhd93r._.js +0 -3
  674. package/.next/server/chunks/[root-of-the-server]__1zhd93r._.js.map +0 -1
  675. package/.next/server/chunks/ssr/_0kob2si._.js +0 -151
  676. package/.next/server/chunks/ssr/_0kob2si._.js.map +0 -1
  677. package/.next/server/chunks/ssr/_0me5_6x._.js +0 -3
  678. package/.next/server/chunks/ssr/_0me5_6x._.js.map +0 -1
  679. package/.next/server/chunks/ssr/_0pg63il._.js +0 -3
  680. package/.next/server/chunks/ssr/_0pg63il._.js.map +0 -1
  681. package/.next/server/chunks/ssr/_16b4hkt._.js +0 -3
  682. package/.next/server/chunks/ssr/_16b4hkt._.js.map +0 -1
  683. package/.next/server/chunks/ssr/_190c11r._.js +0 -3
  684. package/.next/server/chunks/ssr/_190c11r._.js.map +0 -1
  685. package/.next/server/chunks/ssr/_1cz8dnu._.js +0 -3
  686. package/.next/server/chunks/ssr/_1cz8dnu._.js.map +0 -1
  687. package/.next/server/chunks/ssr/_1feybpz._.js +0 -3
  688. package/.next/server/chunks/ssr/_1feybpz._.js.map +0 -1
  689. package/.next/server/chunks/ssr/_1r_t_wi._.js +0 -3
  690. package/.next/server/chunks/ssr/_1t8it2w._.js +0 -3
  691. package/.next/server/chunks/ssr/_1t8it2w._.js.map +0 -1
  692. package/.next/static/chunks/036fex6o238at.css +0 -1
  693. package/.next/static/chunks/03tzhv775qv5m.js +0 -1
  694. package/.next/static/chunks/05rjl54wa6y43.js +0 -1
  695. package/.next/static/chunks/1b9r_vdcewfu7.js +0 -1
  696. package/.next/static/chunks/1c459q7xpgq6r.js +0 -3
  697. package/.next/static/chunks/1c5ibgojv8jdi.js +0 -3
  698. package/.next/static/chunks/1c_8t2kecjnua.js +0 -1
  699. package/.next/static/chunks/1pmgcotwq-_yh.js +0 -1
  700. package/.next/static/chunks/1v63qs4kxxcfh.js +0 -1
  701. package/.next/static/chunks/2-0lpccy0f8bk.js +0 -2
  702. package/.next/static/chunks/263i_dcdizuvd.js +0 -1
  703. package/.next/static/chunks/2mf5us3y9wd9g.js +0 -1
  704. package/.next/static/chunks/36s2k2k_w-or8.js +0 -1
  705. package/.next/static/chunks/37u2gjz5dzhep.js +0 -1
  706. package/.next/static/chunks/3ctec-7mnm19m.js +0 -1
  707. package/.next/static/chunks/3rtr962aa09nh.js +0 -12
  708. package/.next/static/chunks/42c9smmpcu4re.js +0 -1
  709. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0-r4g2t._.js.map → 11mp_@anthropic-ai_sdk_0-smxh7._.js.map} +0 -0
  710. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_01gyja3._.js.map → 11mp_@anthropic-ai_sdk_0-upxuo._.js.map} +0 -0
  711. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_02lx_j3._.js.map → 11mp_@anthropic-ai_sdk_00stvd0._.js.map} +0 -0
  712. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_05iv23g._.js.map → 11mp_@anthropic-ai_sdk_05tlp4j._.js.map} +0 -0
  713. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_05oneea._.js.map → 11mp_@anthropic-ai_sdk_06i1jku._.js.map} +0 -0
  714. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_07fgg-l._.js.map → 11mp_@anthropic-ai_sdk_06pqlwo._.js.map} +0 -0
  715. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0_5gzfy._.js.map → 11mp_@anthropic-ai_sdk_06q_bm6._.js.map} +0 -0
  716. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0_jynr-._.js.map → 11mp_@anthropic-ai_sdk_098dref._.js.map} +0 -0
  717. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0aykesf._.js.map → 11mp_@anthropic-ai_sdk_09q07e_._.js.map} +0 -0
  718. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0br_1fc._.js.map → 11mp_@anthropic-ai_sdk_09r9wsn._.js.map} +0 -0
  719. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0cd5lu7._.js.map → 11mp_@anthropic-ai_sdk_0_rnqa6._.js.map} +0 -0
  720. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0ckxhy7._.js.map → 11mp_@anthropic-ai_sdk_0ch0mdl._.js.map} +0 -0
  721. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0e5qkuv._.js.map → 11mp_@anthropic-ai_sdk_0didq3m._.js.map} +0 -0
  722. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0el8pm6._.js.map → 11mp_@anthropic-ai_sdk_0dwtv_z._.js.map} +0 -0
  723. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0i4w8fv._.js.map → 11mp_@anthropic-ai_sdk_0e8sqia._.js.map} +0 -0
  724. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0i7ckik._.js.map → 11mp_@anthropic-ai_sdk_0gk-rze._.js.map} +0 -0
  725. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0l1p4c6._.js.map → 11mp_@anthropic-ai_sdk_0gywxp1._.js.map} +0 -0
  726. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0m-xqs_._.js.map → 11mp_@anthropic-ai_sdk_0h4l0yx._.js.map} +0 -0
  727. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0nltdmf._.js.map → 11mp_@anthropic-ai_sdk_0hjmy82._.js.map} +0 -0
  728. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0qxmzg8._.js.map → 11mp_@anthropic-ai_sdk_0jbmnx_._.js.map} +0 -0
  729. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0spr_aj._.js.map → 11mp_@anthropic-ai_sdk_0l7teck._.js.map} +0 -0
  730. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0th0pyh._.js.map → 11mp_@anthropic-ai_sdk_0ldf-lc._.js.map} +0 -0
  731. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0x21fif._.js.map → 11mp_@anthropic-ai_sdk_0oe9p6l._.js.map} +0 -0
  732. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1-7bj56._.js.map → 11mp_@anthropic-ai_sdk_0ppgi2h._.js.map} +0 -0
  733. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1-efoj1._.js.map → 11mp_@anthropic-ai_sdk_0ydb8nm._.js.map} +0 -0
  734. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_13vu693._.js.map → 11mp_@anthropic-ai_sdk_11hsr1e._.js.map} +0 -0
  735. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_13w62gi._.js.map → 11mp_@anthropic-ai_sdk_14pgcis._.js.map} +0 -0
  736. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1887ce1._.js.map → 11mp_@anthropic-ai_sdk_15_sqq8._.js.map} +0 -0
  737. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1_jq3yb._.js.map → 11mp_@anthropic-ai_sdk_16up-b0._.js.map} +0 -0
  738. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1agvp6h._.js.map → 11mp_@anthropic-ai_sdk_1_jm94w._.js.map} +0 -0
  739. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1b1-3vt._.js.map → 11mp_@anthropic-ai_sdk_1aswx0v._.js.map} +0 -0
  740. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1ekldtb._.js.map → 11mp_@anthropic-ai_sdk_1bkea9c._.js.map} +0 -0
  741. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1ezcndt._.js.map → 11mp_@anthropic-ai_sdk_1d41_6l._.js.map} +0 -0
  742. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1gr-orf._.js.map → 11mp_@anthropic-ai_sdk_1d959rx._.js.map} +0 -0
  743. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1hf-884._.js.map → 11mp_@anthropic-ai_sdk_1eughke._.js.map} +0 -0
  744. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1ndwnmb._.js.map → 11mp_@anthropic-ai_sdk_1ev29eb._.js.map} +0 -0
  745. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1rdesfd._.js.map → 11mp_@anthropic-ai_sdk_1faxy2m._.js.map} +0 -0
  746. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1s8h60-._.js.map → 11mp_@anthropic-ai_sdk_1lginb1._.js.map} +0 -0
  747. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1tgk9wk._.js.map → 11mp_@anthropic-ai_sdk_1pg6fky._.js.map} +0 -0
  748. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1uugb45._.js.map → 11mp_@anthropic-ai_sdk_1qfho5e._.js.map} +0 -0
  749. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1vcxmui._.js.map → 11mp_@anthropic-ai_sdk_1r9e6jv._.js.map} +0 -0
  750. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1x63qpm._.js.map → 11mp_@anthropic-ai_sdk_1tjlpeq._.js.map} +0 -0
  751. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1y5oj_h._.js.map → 11mp_@anthropic-ai_sdk_1wcdj4f._.js.map} +0 -0
  752. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1z0q4jj._.js.map → 11mp_@anthropic-ai_sdk_1x25dnb._.js.map} +0 -0
  753. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_20j6dn7._.js.map → 11mp_@anthropic-ai_sdk_1ywjkuh._.js.map} +0 -0
  754. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_00nr0dy._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_07rnikd._.js.map} +0 -0
  755. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_06kgcr0._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0cxqkzo._.js.map} +0 -0
  756. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_07kod-g._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0iemvsj._.js.map} +0 -0
  757. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0_va-1q._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0losy1p._.js.map} +0 -0
  758. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0dr79hc._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0q2-o56._.js.map} +0 -0
  759. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0ew4_uw._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0v9tonm._.js.map} +0 -0
  760. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0iy714m._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0ve_28v._.js.map} +0 -0
  761. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0n6aq49._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0vta7f6._.js.map} +0 -0
  762. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0ncvuil._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0xme80s._.js.map} +0 -0
  763. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0vilstf._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_12tnhho._.js.map} +0 -0
  764. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0ybdfbv._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_14-nnf3._.js.map} +0 -0
  765. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0z31-c0._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_14e0xcw._.js.map} +0 -0
  766. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0zu51ny._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1cbywiw._.js.map} +0 -0
  767. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_13-fsm5._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1d4fc7y._.js.map} +0 -0
  768. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_13lk7wf._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1e89sld._.js.map} +0 -0
  769. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1ao3e3l._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1emt011._.js.map} +0 -0
  770. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1ck6z1z._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1jgaffx._.js.map} +0 -0
  771. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1dm3so9._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1m9p_w8._.js.map} +0 -0
  772. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1jxtz_6._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1mtv1gy._.js.map} +0 -0
  773. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1pdl5qg._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1plmrbl._.js.map} +0 -0
  774. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1tzpss1._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1toqkb5._.js.map} +0 -0
  775. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1x_0sf4._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1yc8ml3._.js.map} +0 -0
  776. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1x_fy5x._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1ycnogk._.js.map} +0 -0
  777. /package/.next/server/chunks/{[root-of-the-server]__0rikmqn._.js.map → [root-of-the-server]__0adl8c2._.js.map} +0 -0
  778. /package/.next/server/chunks/{[root-of-the-server]__08v3p50._.js.map → [root-of-the-server]__0r_831n._.js.map} +0 -0
  779. /package/.next/server/chunks/{[root-of-the-server]__0wc_gnr._.js.map → [root-of-the-server]__0tzsbyx._.js.map} +0 -0
  780. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1xx8_-m._.js.map → [root-of-the-server]__1_q8upn._.js.map} +0 -0
  781. /package/.next/server/chunks/{[root-of-the-server]__1yh-4vk._.js.map → [root-of-the-server]__1hz94ca._.js.map} +0 -0
  782. /package/.next/server/chunks/{[root-of-the-server]__06ndlro._.js.map → [root-of-the-server]__1pf07ha._.js.map} +0 -0
  783. /package/.next/server/chunks/{[root-of-the-server]__0zy73pu._.js.map → _next-internal_server_app_api_memory_restore_route_actions_0679kmo.js.map} +0 -0
  784. /package/.next/server/chunks/{ssr/0_nd_mermaid_dist_mermaid_core_mjs_0y_edkq._.js.map → _next-internal_server_app_api_memory_versions_route_actions_13mix75.js.map} +0 -0
  785. /package/.next/server/chunks/ssr/{1u84_katex_dist_katex_mjs_0yg8zto._.js.map → 0_nd_mermaid_dist_mermaid_core_mjs_1trh599._.js.map} +0 -0
  786. /package/.next/server/chunks/ssr/{_1r_t_wi._.js.map → 1u84_katex_dist_katex_mjs_0wukkxe._.js.map} +0 -0
  787. /package/.next/server/chunks/ssr/{[root-of-the-server]__08z0szh._.js.map → [root-of-the-server]__0p_ieww._.js.map} +0 -0
  788. /package/.next/server/chunks/ssr/{[root-of-the-server]__1wdwnnp._.js.map → [root-of-the-server]__1ecvjg8._.js.map} +0 -0
  789. /package/.next/server/chunks/ssr/{node_modules__pnpm_00f4yhs._.js.map → _next-internal_server_app_(app)_getting-started_page_actions_18jod7i.js.map} +0 -0
  790. /package/.next/server/chunks/ssr/{node_modules__pnpm_0j_-le7._.js.map → _next-internal_server_app_welcome_page_actions_1unjea7.js.map} +0 -0
  791. /package/.next/server/chunks/ssr/{node_modules__pnpm_03mp7qw._.js.map → node_modules__pnpm_0-6sq9f._.js.map} +0 -0
  792. /package/.next/server/chunks/ssr/{node_modules__pnpm_0jampur._.js.map → node_modules__pnpm_0-vta96._.js.map} +0 -0
  793. /package/.next/server/chunks/ssr/{node_modules__pnpm_0zz55xq._.js.map → node_modules__pnpm_04qn321._.js.map} +0 -0
  794. /package/.next/server/chunks/ssr/{node_modules__pnpm_0tn5pg3._.js.map → node_modules__pnpm_06r-oci._.js.map} +0 -0
  795. /package/.next/server/chunks/ssr/{node_modules__pnpm_0iu4132._.js.map → node_modules__pnpm_0fe8aya._.js.map} +0 -0
  796. /package/.next/server/chunks/ssr/{node_modules__pnpm_0oyo3yo._.js.map → node_modules__pnpm_0hpufx1._.js.map} +0 -0
  797. /package/.next/server/chunks/ssr/{node_modules__pnpm_0x5wj-4._.js.map → node_modules__pnpm_0kv8p99._.js.map} +0 -0
  798. /package/.next/server/chunks/ssr/{node_modules__pnpm_06_8fr8._.js.map → node_modules__pnpm_0m-_au1._.js.map} +0 -0
  799. /package/.next/server/chunks/ssr/{node_modules__pnpm_1zme4rg._.js.map → node_modules__pnpm_0mrjd3b._.js.map} +0 -0
  800. /package/.next/server/chunks/ssr/{node_modules__pnpm_0mqeoh-._.js.map → node_modules__pnpm_0p2ufg5._.js.map} +0 -0
  801. /package/.next/server/chunks/ssr/{node_modules__pnpm_03mpmzx._.js.map → node_modules__pnpm_0r2omyh._.js.map} +0 -0
  802. /package/.next/server/chunks/ssr/{node_modules__pnpm_0_e05ka._.js.map → node_modules__pnpm_0uh9zwf._.js.map} +0 -0
  803. /package/.next/server/chunks/ssr/{node_modules__pnpm_035haet._.js.map → node_modules__pnpm_0ujugl_._.js.map} +0 -0
  804. /package/.next/server/chunks/ssr/{node_modules__pnpm_0lkvbt-._.js.map → node_modules__pnpm_0v-_iaj._.js.map} +0 -0
  805. /package/.next/server/chunks/ssr/{node_modules__pnpm_0rq9x9q._.js.map → node_modules__pnpm_0xin4nu._.js.map} +0 -0
  806. /package/.next/server/chunks/ssr/{node_modules__pnpm_139-v1i._.js.map → node_modules__pnpm_1-zfovp._.js.map} +0 -0
  807. /package/.next/server/chunks/ssr/{node_modules__pnpm_1i_chik._.js.map → node_modules__pnpm_11p7w0z._.js.map} +0 -0
  808. /package/.next/server/chunks/ssr/{node_modules__pnpm_1jgju12._.js.map → node_modules__pnpm_16l16l0._.js.map} +0 -0
  809. /package/.next/server/chunks/ssr/{node_modules__pnpm_1n9oeu0._.js.map → node_modules__pnpm_16vl5yb._.js.map} +0 -0
  810. /package/.next/server/chunks/ssr/{node_modules__pnpm_1ydeqw6._.js.map → node_modules__pnpm_1alnvos._.js.map} +0 -0
  811. /package/.next/server/chunks/ssr/{node_modules__pnpm_03an60e._.js.map → node_modules__pnpm_1e_74v6._.js.map} +0 -0
  812. /package/.next/server/chunks/ssr/{node_modules__pnpm_2045l51._.js.map → node_modules__pnpm_1kvkjrs._.js.map} +0 -0
  813. /package/.next/server/chunks/ssr/{node_modules__pnpm_1ws3ez9._.js.map → node_modules__pnpm_1uly489._.js.map} +0 -0
  814. /package/.next/server/chunks/ssr/{node_modules__pnpm_1zum4yd._.js.map → node_modules__pnpm_1xntybk._.js.map} +0 -0
  815. /package/.next/server/chunks/ssr/{node_modules__pnpm_09nd7ia._.js.map → node_modules__pnpm_20g30gl._.js.map} +0 -0
  816. /package/.next/static/{5hNes2Kijr5IvUPPw-ez9 → BQD2S1kA-_gIYFyMKyJ2F}/_buildManifest.js +0 -0
  817. /package/.next/static/{5hNes2Kijr5IvUPPw-ez9 → BQD2S1kA-_gIYFyMKyJ2F}/_clientMiddlewareManifest.js +0 -0
  818. /package/.next/static/{5hNes2Kijr5IvUPPw-ez9 → BQD2S1kA-_gIYFyMKyJ2F}/_ssgManifest.js +0 -0
@@ -1,2 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,690457,e=>{"use strict";var t=e.i(83790);let s={name:"corner-up-left",size:24,node:[["path",{d:"M20 20v-7a4 4 0 0 0-4-4H4",key:"1nkjon"}],["path",{d:"M9 14 4 9l5-5",key:"102s5s"}]]};s.node;let a=(0,t.default)(s);e.s(["CornerUpLeft",0,a],690457)},996627,e=>{"use strict";var t=e.i(83790);let s={name:"ruler",size:24,node:[["path",{d:"M21.3 15.3a2.4 2.4 0 0 1 0 3.4l-2.6 2.6a2.4 2.4 0 0 1-3.4 0L2.7 8.7a2.41 2.41 0 0 1 0-3.4l2.6-2.6a2.41 2.41 0 0 1 3.4 0Z",key:"icamh8"}],["path",{d:"m14.5 12.5 2-2",key:"inckbg"}],["path",{d:"m11.5 9.5 2-2",key:"fmmyf7"}],["path",{d:"m8.5 6.5 2-2",key:"vc6u1g"}],["path",{d:"m17.5 15.5 2-2",key:"wo5hmg"}]]};s.node;let a=(0,t.default)(s);e.s(["Ruler",0,a],996627)},592381,e=>{"use strict";var t=e.i(72345),s=e.i(180338),a=e.i(975157),n=e.i(980376),i=e.i(998822),r=e.i(464750),l=e.i(653288),o=e.i(138324),d=e.i(363216),u=e.i(837001),c=e.i(675964),p=e.i(811613),x=e.i(690457),m=e.i(628137),h=e.i(666326),f=e.i(192871),b=e.i(475850),g=e.i(248070),j=e.i(424991),v=e.i(996627),k=e.i(458055),w=e.i(343253),N=e.i(755146),y=e.i(574990),S=e.i(694628),C=e.i(508540),M=e.i(901778),T=e.i(650312),z=e.i(692172),D=e.i(651581),I=e.i(903763),O=e.i(564849),$=e.i(723528),A=e.i(763371),F=e.i(244267),L=e.i(481523),R=e.i(67874);let P={todo:["in-progress","paused"],"in-progress":["done","review","blocked","paused","todo"],review:[],blocked:["in-progress","cancelled"],paused:["in-progress","todo"],done:["todo"],cancelled:["todo"]},U={"in-progress":"start",review:"to review",done:"done",blocked:"blocked",paused:"pause",todo:"backlog",cancelled:"cancel"};function q({task:e,onNavigate:s}){let a=e.phase&&"—"!==e.phase?(0,T.epicOf)(e.phase):null;return(0,t.jsxs)(t.Fragment,{children:[a?.id&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(o.default,{href:`/roadmap?item=${a.id}`,onClick:s,title:a.title,className:"hover:text-txt",children:a.id}),(0,t.jsx)(c.ChevronRight,{className:"size-3 shrink-0","aria-hidden":!0})]}),(0,t.jsx)("span",{children:e.id}),(0,t.jsx)($.AgentMark,{attach:{kind:"task",id:e.id}})]})}let E="w-full rounded-md border border-border bg-bg px-2.5 py-1.5 text-sm text-txt focus:border-accent/60 focus:outline-hidden";function W({task:e,rootParam:n,onDone:i}){let[r]=(0,s.useState)(e),[l,o]=(0,s.useState)(e.title),[d,u]=(0,s.useState)("—"===e.size?"":e.size),[c,p]=(0,s.useState)("—"===e.phase?"":e.phase),[x,m]=(0,s.useState)("—"===e.dependsOn?"":e.dependsOn),[h,f]=(0,s.useState)(e.due??""),[b,g]=(0,s.useState)(!1),[j,v]=(0,s.useState)(null),k=e=>"—"===e.trim()?"":e.trim();async function w(){let t={};if(l.trim()&&l.trim()!==r.title&&(t.title=l),d.trim()!==k(r.size)&&(t.size=d),c.trim()!==k(r.phase)&&(t.phase=c),x.trim()!==k(r.dependsOn)&&(t.dependsOn=x),(h||null)!==r.due&&(t.due=h||null),0===Object.keys(t).length)return i();g(!0),v(null);try{await (0,O.updateTask)(e.id,t,n),i()}catch(e){v(e.message),g(!1)}}return(0,t.jsxs)("form",{onSubmit:e=>{e.preventDefault(),w()},onKeyDown:e=>{"Escape"===e.key&&(e.stopPropagation(),i())},className:"flex flex-col gap-3 px-5 py-4 border-b border-border shrink-0 bg-surface2/40",children:[(0,t.jsxs)("label",{className:"flex flex-col gap-1 text-xs text-muted",children:["Title",(0,t.jsx)("input",{autoFocus:!0,value:l,onChange:e=>o(e.target.value),className:E})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,t.jsxs)("label",{className:"flex flex-col gap-1 text-xs text-muted",children:["Size",(0,t.jsx)("input",{value:d,onChange:e=>u(e.target.value),placeholder:"S / M / L",className:E})]}),(0,t.jsxs)("label",{className:"flex flex-col gap-1 text-xs text-muted",children:["Due",(0,t.jsx)("input",{type:"date",value:h,onChange:e=>f(e.target.value),className:(0,a.cn)(E,"scheme-light dark:scheme-dark")})]})]}),(0,t.jsxs)("label",{className:"flex flex-col gap-1 text-xs text-muted",children:["Epic / phase",(0,t.jsx)("input",{value:c,onChange:e=>p(e.target.value),placeholder:"R054 — Item actions",className:E})]}),(0,t.jsxs)("label",{className:"flex flex-col gap-1 text-xs text-muted",children:["Depends on",(0,t.jsx)("input",{value:x,onChange:e=>m(e.target.value),placeholder:"T001, T002",className:(0,a.cn)(E,"font-mono")})]}),j&&(0,t.jsx)("p",{role:"alert",className:"text-xs text-danger",children:j}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("button",{type:"submit",disabled:b,className:"text-xs px-2.5 py-1 rounded-sm bg-accent text-accent-fg transition-[filter] hover:brightness-110 disabled:opacity-40",children:"Save"}),(0,t.jsx)("button",{type:"button",onClick:i,disabled:b,className:"text-xs text-muted hover:text-txt",children:"Cancel"})]})]})}function B({taskId:e,onDone:a}){let{rootParam:n}=(0,A.useApp)(),[i,r]=(0,s.useState)(!1),[l,o]=(0,s.useState)(""),[d,c]=(0,s.useState)(!1),[p,m]=(0,s.useState)(null);async function h(t){c(!0),m(null);try{let s=await fetch(`/api/tasks/review${n}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:e,action:t,note:l})});if(!s.ok)throw Error((await s.json().catch(()=>null))?.error??`Request failed (${s.status})`);a()}catch(e){m(e.message),c(!1)}}return(0,t.jsxs)("div",{className:"flex flex-col gap-2 px-5 py-3 border-b border-border shrink-0 bg-accent/5",children:[(0,t.jsx)("p",{className:"text-xs text-muted",children:"Waiting for your review. Approving moves it to done; sending it back returns it to the queue with your note."}),i?(0,t.jsxs)("div",{className:"flex flex-col gap-2 animate-fade-in",children:[(0,t.jsx)("textarea",{autoFocus:!0,value:l,onChange:e=>o(e.target.value),rows:3,placeholder:"What needs to change? The agent reads this first.","aria-label":"Send back note",className:"w-full resize-none rounded-md border border-border bg-bg px-2.5 py-2 text-sm text-txt placeholder:text-muted focus:border-accent/60 focus:outline-hidden"}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("button",{onClick:()=>h("send-back"),disabled:d||!l.trim(),className:"inline-flex items-center gap-1.5 text-xs px-2.5 py-1 rounded-sm bg-amber/15 border border-amber/40 text-amber transition-colors hover:bg-amber/25 disabled:opacity-40",children:[(0,t.jsx)(x.CornerUpLeft,{className:"size-3.5"})," Send back"]}),(0,t.jsx)("button",{onClick:()=>{r(!1),o("")},disabled:d,className:"text-xs text-muted hover:text-txt",children:"Cancel"})]})]}):(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("button",{onClick:()=>h("approve"),disabled:d,className:"inline-flex items-center gap-1.5 text-xs px-2.5 py-1 rounded-sm bg-teal/15 border border-teal/40 text-teal transition-colors hover:bg-teal/25 disabled:opacity-40",children:[(0,t.jsx)(u.Check,{className:"size-3.5"})," Approve"]}),(0,t.jsxs)("button",{onClick:()=>r(!0),disabled:d,className:"inline-flex items-center gap-1.5 text-xs px-2.5 py-1 rounded-sm bg-surface2 border border-border text-muted transition-colors hover:text-txt hover:border-border2",children:[(0,t.jsx)(x.CornerUpLeft,{className:"size-3.5"})," Send back…"]})]}),p&&(0,t.jsx)("p",{role:"alert",className:"text-xs text-danger",children:p})]})}function G({entries:e}){return e.length?(0,t.jsxs)("div",{className:"flex flex-col gap-2 px-5 py-3 border-b border-border shrink-0",children:[(0,t.jsx)("p",{className:"font-mono text-[10px] uppercase tracking-widest text-muted",children:"Review history"}),(0,t.jsx)("ul",{className:"flex flex-col gap-2",children:[...e].reverse().map((e,s)=>(0,t.jsxs)("li",{className:"flex flex-col gap-0.5",children:[(0,t.jsxs)("span",{className:"flex items-center gap-2 text-xs",children:[(0,t.jsx)("span",{className:(0,a.cn)("font-medium","approved"===e.outcome?"text-teal":"text-amber"),children:"approved"===e.outcome?"Approved":"Changes requested"}),(0,t.jsx)("span",{className:"font-mono text-[10px] text-muted",children:e.at.replace("T"," ").replace(/:\d\dZ$/,"Z")})]}),e.note&&(0,t.jsx)("p",{className:"whitespace-pre-wrap text-xs text-muted",children:e.note})]},s))})]}):null}e.s(["TaskDetailPanel",0,function({task:e,onClose:u,onMove:c}){var x;let $,[E,H]=(0,s.useState)(e);e&&e!==E&&H(e);let K=E&&P[E.status]||[],{chats:X,showAbout:J}=(0,F.useChats)(),{rootParam:Z}=(0,A.useApp)(),V=E?(0,L.chatFor)(X,{kind:"task",id:E.id}):void 0,[_,Q]=(0,s.useState)(null),Y=!!E&&_===E.id,[ee,et]=(0,s.useState)(null),[es,ea]=(0,s.useState)(!1),en=(0,y.useStatusDefs)(),ei=()=>{E&&(u(),J({kind:"task",id:E.id}))};async function er(){if(E){et(null);try{await (0,O.deleteTaskWithUndo)(E,Z),u()}catch(e){et(e.message)}}}return(0,I.useItemCommands)(e&&E&&!Y?`${E.id} \xb7 ${E.title}`:null,E?[{action:"edit",label:"Edit",run:()=>Q(E.id)},{action:"status",label:"Change status…",run:()=>ea(!0)},{action:"chat",label:"Chat about task",run:ei},{action:"remove",label:"Delete",run:()=>{er()}}]:[]),(0,t.jsx)(n.Sheet,{open:!!e,onOpenChange:e=>{e||u()},children:(0,t.jsx)(n.SheetContent,{side:"right","aria-describedby":void 0,className:"p-0 gap-0 sm:max-w-[420px] border-border flex flex-col",children:E&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(C.ItemPanelHeader,{kicker:(0,t.jsx)(q,{task:E,onNavigate:u}),title:(0,t.jsx)(n.SheetTitle,{className:"text-base font-semibold leading-snug text-txt",children:E.title}),menu:(0,t.jsxs)(N.DropdownMenu,{open:es,onOpenChange:ea,children:[(0,t.jsx)(N.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button","aria-label":`Actions for ${E.id}`,className:"ml-auto grid size-6 place-items-center rounded-md text-muted hover:bg-surface2 hover:text-txt",children:(0,t.jsx)(g.MoreHorizontal,{className:"size-4"})})}),(0,t.jsxs)(N.DropdownMenuContent,{align:"end",className:"w-56",children:[(0,t.jsxs)(N.DropdownMenuItem,{onSelect:()=>Q(E.id),children:[(0,t.jsx)(j.Pencil,{})," Edit",(0,t.jsx)(N.DropdownMenuShortcut,{children:(0,I.itemKeyLabel)("edit")})]}),(0,t.jsxs)(N.DropdownMenuSub,{children:[(0,t.jsxs)(N.DropdownMenuSubTrigger,{children:[(0,t.jsx)(r.StatusIcon,{status:(0,S.displayStatus)(E)})," Status",(0,t.jsx)(N.DropdownMenuShortcut,{children:(0,I.itemKeyLabel)("status")})]}),(0,t.jsx)(N.DropdownMenuSubContent,{children:en.map(e=>(0,t.jsxs)(N.DropdownMenuItem,{disabled:e.id===(0,S.displayStatus)(E),onSelect:()=>c(E.id,e.id),children:[(0,t.jsx)(r.StatusIcon,{status:e.id})," ",e.label]},e.id))})]}),(0,t.jsxs)(N.DropdownMenuItem,{onSelect:ei,children:[(0,t.jsx)(b.MessageSquare,{})," Chat about task",(0,t.jsx)(N.DropdownMenuShortcut,{children:(0,I.itemKeyLabel)("chat")})]}),(0,t.jsx)(N.DropdownMenuSeparator,{}),(0,t.jsxs)(N.DropdownMenuItem,{onSelect:er,className:"text-danger focus:text-danger",children:[(0,t.jsx)(k.Trash2,{})," Delete",(0,t.jsx)(N.DropdownMenuShortcut,{children:(0,I.itemKeyLabel)("remove")})]})]})]}),properties:($=(x=E).phase&&"—"!==x.phase?(0,T.epicOf)(x.phase):null,[{label:"Status",icon:p.CircleDashed,value:(0,t.jsx)(M.TaskStatusField,{task:x,chip:!0})},{label:"Priority",icon:m.Flag,value:(0,t.jsx)(M.TaskPriorityField,{task:x})},{label:"Owner",icon:w.User,value:(0,t.jsx)(M.TaskOwnerField,{task:x})},{label:"Due",icon:d.Calendar,value:(0,t.jsx)(M.TaskDueField,{task:x,children:x.due?(0,t.jsx)(D.DueChip,{due:x.due,state:(0,z.dueState)(x.due,"done"===x.status?"done":"planned",(0,z.localToday)())}):(0,t.jsx)("span",{className:"text-muted",children:"—"})})},{label:"Size",icon:v.Ruler,value:(0,t.jsx)(M.TaskSizeField,{task:x})},{label:"Epic",icon:f.Map,value:$&&(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5",children:[$.id&&(0,t.jsx)("span",{className:"font-mono text-[11px] text-muted",children:$.id}),(0,t.jsx)("span",{className:"truncate",children:$.title})]})}])}),ee&&(0,t.jsx)("p",{role:"alert",className:"px-5 py-2 text-xs text-danger border-b border-border",children:ee}),Y&&(0,t.jsx)(W,{task:E,rootParam:Z,onDone:()=>Q(null)},`edit-${E.id}`),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 px-5 py-3 border-b border-border shrink-0",children:[K.map(e=>(0,t.jsxs)("button",{onClick:()=>{c(E.id,e),u()},className:"inline-flex items-center gap-1.5 text-xs px-2.5 py-1 rounded-sm bg-surface2 border border-border text-muted hover:text-txt hover:border-border2 transition-colors",children:[(0,t.jsx)(r.StatusIcon,{status:e,className:"size-3"})," ",U[e]||e]},e)),(0,t.jsxs)("button",{onClick:()=>{u(),J({kind:"task",id:E.id})},className:"ml-auto inline-flex items-center gap-1.5 text-xs px-2.5 py-1 rounded-sm bg-accent text-accent-fg transition-[filter] hover:brightness-110",children:[(0,t.jsx)(b.MessageSquare,{className:"size-3.5"})," ",V?"Open chat":"Chat about task"]})]}),"review"===E.status&&(0,t.jsx)(B,{taskId:E.id,onDone:u},`review-${E.id}`),(0,t.jsxs)("div",{className:"flex-1 overflow-y-auto",children:[(0,t.jsx)("div",{className:"px-5 py-4",children:E.raw?(0,t.jsx)(i.MarkdownRenderer,{content:function(e){let t=e.split("\n"),s=t.findIndex(e=>e.startsWith("# "));for(s=s<0?0:s+1;s<t.length&&(""===t[s].trim()||/^\*\*[^*]+:\*\*/.test(t[s]));)s++;return t.slice(s).join("\n")}(E.raw)}):(0,t.jsx)("p",{className:"text-sm text-muted",children:"No content available."})}),(0,t.jsxs)("section",{"aria-label":"Activity",className:"border-t border-border",children:[E.manualTests&&(0,t.jsxs)(o.default,{href:`/manual-tests#${E.id}`,onClick:u,className:"group flex items-center gap-2 px-5 py-2.5 border-b border-border shrink-0 text-xs text-muted hover:bg-surface2 hover:text-txt transition-colors",children:[(0,t.jsx)(h.FlaskConical,{className:"size-3.5"}),(0,t.jsxs)("span",{className:(0,a.cn)("font-mono",E.manualTests.done===E.manualTests.total&&"text-teal"),children:[E.manualTests.done,"/",E.manualTests.total]}),"manual tests ticked",(0,t.jsx)("span",{className:"ml-auto text-accent opacity-0 transition-opacity group-hover:opacity-100",children:"Open checklist →"})]}),(0,t.jsx)(G,{entries:(0,R.reviewHistory)(E.raw??"")}),(0,t.jsx)(l.TaskSessions,{taskId:E.id,onNavigate:u},E.id)]})]})]})})})}])},901778,e=>{"use strict";var t=e.i(72345),s=e.i(818748),a=e.i(763371),n=e.i(65112),i=e.i(35032),r=e.i(464750),l=e.i(775549),o=e.i(574990),d=e.i(694628),u=e.i(650312),c=e.i(222581);let p=["XS","S","M","L","XL"],x=(0,t.jsx)("span",{className:"font-mono text-[11px] text-muted",children:"—"}),m=e=>(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs text-muted",children:[(0,t.jsx)(s.Minus,{className:"size-3.5","aria-hidden":!0}),e]});e.s(["TaskDueField",0,function({task:e,children:s}){let{updateTaskFields:i}=(0,a.useApp)();return(0,t.jsx)(n.InlineDate,{label:`Due date of ${e.id}`,value:e.due,onChange:t=>i(e.id,{due:t}),children:s??(e.due?(0,t.jsx)("span",{className:"font-mono text-xs",children:e.due}):x)})},"TaskOwnerField",0,function({task:e,children:s}){let{updateTaskFields:r,board:l}=(0,a.useApp)(),o=[...new Set(["ai:claude",...Object.values(l??{}).flat().map(e=>e.owner).filter(e=>!!e?.startsWith("ai:"))])].sort(),d=[{value:"human",label:"Human",node:(0,t.jsx)(i.OwnerChip,{owner:"human",className:"text-xs"})},...o.map(e=>({value:e,label:(0,c.ownerLabel)(e),node:(0,t.jsx)(i.OwnerChip,{owner:e,className:"text-xs"})})),{value:"",label:"No owner",node:m("No owner")}];return(0,t.jsx)(n.InlineSelect,{label:`Owner of ${e.id}`,value:e.owner??"",options:d,onChange:t=>r(e.id,{owner:t||null}),children:s??(e.owner?(0,t.jsx)(i.OwnerChip,{owner:e.owner,className:"text-xs"}):x)})},"TaskPriorityField",0,function({task:e}){let{updateTaskFields:s}=(0,a.useApp)();return(0,t.jsx)(l.PriorityField,{label:`Priority of ${e.id}`,value:e.priority??null,onChange:t=>s(e.id,{priority:t}),empty:x})},"TaskSizeField",0,function({task:e,children:s}){let{updateTaskFields:i}=(0,a.useApp)(),r=(0,u.sizeOf)(e),l=[...p.map(e=>({value:e,label:e,node:(0,t.jsx)("span",{className:"font-mono",children:e})})),{value:"",label:"No size",node:m("No size")}];return(0,t.jsx)(n.InlineSelect,{label:`Size of ${e.id}`,value:r??"",options:l,onChange:t=>i(e.id,{size:t||"—"}),children:s??(r?(0,t.jsx)("span",{className:"font-mono text-xs",children:r}):x)})},"TaskStatusField",0,function({task:e,chip:s=!1}){let{moveTask:i}=(0,a.useApp)(),l=(0,o.useStatusDefs)(),u=(0,d.displayStatus)(e),c=l.map(e=>({value:e.id,label:e.label,node:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(r.StatusIcon,{status:e.id}),e.label]})}));return(0,t.jsx)(n.InlineSelect,{label:`Status of ${e.id}`,value:u,options:c,onChange:t=>i(e.id,t),children:s?(0,t.jsx)(r.StatusChip,{status:u}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(r.StatusIcon,{status:u}),(0,t.jsx)("span",{className:"truncate text-xs",children:l.find(e=>e.id===u)?.label??u})]})})}])},653288,e=>{"use strict";var t=e.i(72345),s=e.i(180338),a=e.i(910172),n=e.i(479432),i=e.i(343253),r=e.i(763371),l=e.i(329090);e.s(["TaskSessions",0,function({taskId:e,onNavigate:o}){let{rootParam:d}=(0,r.useApp)(),u=(0,a.useRouter)(),[c,p]=(0,s.useState)(null);return(0,s.useEffect)(()=>{let t=d?`${d}&`:"?";fetch(`/api/sessions${t}taskId=${encodeURIComponent(e)}`).then(e=>e.json()).then(e=>p(Array.isArray(e)?e:[])).catch(()=>p([]))},[d,e]),(0,t.jsxs)("div",{className:"px-5 py-3 border-b border-border shrink-0",children:[(0,t.jsx)("p",{className:"mb-2 text-xs font-mono uppercase tracking-wide text-muted",children:"Sessions"}),null===c?null:0===c.length?(0,t.jsx)("p",{className:"text-xs text-muted",children:"No recorded sessions"}):(0,t.jsx)("div",{className:"flex max-h-40 flex-col gap-1 overflow-y-auto",children:c.map(e=>(0,t.jsxs)("button",{onClick:()=>{o(),u.push(`/activity?session=${encodeURIComponent(e.id)}`)},className:"flex items-center gap-2 rounded-sm px-2 py-1 text-left text-xs hover:bg-surface2",children:["ai"===e.actor?(0,t.jsx)(n.Bot,{"aria-hidden":!0,className:"size-3.5 shrink-0 text-muted"}):(0,t.jsx)(i.User,{"aria-hidden":!0,className:"size-3.5 shrink-0 text-muted"}),(0,t.jsx)("span",{className:"sr-only",children:"ai"===e.actor?"Agent session":"Human session"}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-muted",children:(0,l.timeAgo)(e.start)}),(0,t.jsx)("span",{className:"truncate text-txt",children:e.headline})]},e.id))})]})}])},564849,e=>{"use strict";var t=e.i(673635);async function s(e,t){let s=await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),a=await s.json().catch(()=>null);if(!s.ok)throw Error(a?.error??`Request failed (${s.status})`);return a}async function a(e,a){let{task:n,links:i}=await s(`/api/tasks/delete${a}`,{id:e.id});(0,t.undoToast)(`Deleted ${n.id}`,async()=>{await s(`/api/tasks/restore${a}`,{file:n.file,raw:n.raw,links:i})})}e.s(["deleteTaskWithUndo",0,a,"updateTask",0,(e,t,a)=>s(`/api/tasks/update${a}`,{id:e,patch:t}).then(e=>e.task)])},650312,e=>{"use strict";let t=["status","epic","size","due","deps","tests","agent","owner"],s=["board","table","epic","timeline"],a={board:"Board",table:"Table",epic:"By epic",timeline:"Timeline"};function n(e){let s={kind:e,filters:[],sorts:[],group:"epic",subGroup:"none",q:"",properties:[...t],scale:"active"};return"board"===e?{...s,group:"none",subGroup:"epic",properties:["epic","size","deps","tests","agent","owner"]}:"table"===e?{...s,sorts:[{prop:"status",dir:"asc"},{prop:"id",dir:"asc"}]}:s}let i=s.map(e=>({...n(e),id:e,name:a[e]})),r=["in-progress","review","todo","blocked","paused","done","cancelled"],l={"in-progress":"In progress",review:"Review",todo:"Todo",blocked:"Blocked",paused:"Paused",done:"Done",cancelled:"Cancelled"},o=["XS","S","M","L","XL"],d=(e,t)=>e.localeCompare(t,void 0,{numeric:!0}),u=e=>"done"!==e.status&&"cancelled"!==e.status;function c(e){return[...new Set((e.dependsOn.match(/\bT\d+\b/gi)??[]).map(e=>e.toUpperCase()))]}function p(e){let t=e.trim().match(/^(R\d+)\b\s*(?:[—–:-]\s*)?(.*)$/i);return t?{id:t[1].toUpperCase(),title:t[2].trim()}:{id:null,title:e.trim()}}function x(e){let t=e.size.trim().match(/^(XS|XL|S|M|L)\b/i);return t?t[1].toUpperCase():null}function m(e,t){return"todo"===e.status&&c(e).every(e=>t.get(e)?.status==="done")}let h=["status","epic","size","due","deps","tests","agent","ready","owner"],f=["is","is-not","before","after","is-set","not-set"],b=["status","id","epic","size","due","title"],g=["status","epic","size","owner","none"],j=["epic","size","none"],v=["active","day","week"],k=(e,t,s)=>null!==t&&e.includes(t)?t:s,w=e=>e.map(e=>("desc"===e.dir?"-":"")+e.prop).join(",");e.s(["DEFAULT_VIEWS",0,i,"applyView",0,function(e,t,s){let a=new Map(e.map(e=>[e.id,e])),n=t.filters.some(e=>"status"===e.prop&&"is"===e.op&&e.value.includes("cancelled")),i=t.q.trim().toLowerCase();return e.filter(e=>n||"cancelled"!==e.status).filter(e=>!i||e.id.toLowerCase().includes(i)||e.title.toLowerCase().includes(i)).filter(e=>t.filters.every(t=>(function(e,t,s,a){let n=e=>"is"===t.op?t.value.includes(e):"is-not"!==t.op||!t.value.includes(e),i=e=>"is-set"===t.op?e:"not-set"!==t.op||!e;switch(t.prop){case"status":return n(e.customStatus??e.status);case"epic":return n(p(e.phase).id??"none");case"size":return n(x(e)??"none");case"due":if("before"===t.op)return!!e.due&&!!t.value[0]&&e.due<t.value[0];if("after"===t.op)return!!e.due&&!!t.value[0]&&e.due>t.value[0];return i(!!e.due);case"deps":return i(c(e).length>0);case"tests":return i(null!==e.manualTests);case"agent":return i(s.agentTasks.has(e.id));case"ready":return i(m(e,a));case"owner":return n("human"===e.owner?"human":e.owner?.startsWith("ai:")?"ai":"none")}})(e,t,s,a))).sort((e,s)=>{for(let a of t.sorts){let t=function(e,t,s){switch(s){case"status":return r.indexOf(e.status)-r.indexOf(t.status);case"id":return d(e.id,t.id);case"title":return e.title.localeCompare(t.title);case"epic":{let s=p(e.phase).id,a=p(t.phase).id;return s===a?0:null===s?1:null===a?-1:d(s,a)}case"size":{let s=o.indexOf(x(e)??""),a=o.indexOf(x(t)??"");return s===a?0:s<0?1:a<0?-1:s-a}case"due":return e.due===t.due?0:null===e.due?1:null===t.due?-1:e.due.localeCompare(t.due)}}(e,s,a.prop);if(t)return"desc"!==a.dir||function(e,t,s){let a=e=>"due"===s?e.due:"epic"===s?p(e.phase).id:"size"===s?o.includes(x(e)??"")?"x":null:"x";return null===a(e)!=(null===a(t))}(e,s,a.prop)?t:-t}return d(e.id,s.id)})},"depOutline",0,function(e){let t=new Set(e.map(e=>e.id)),s=new Map;for(let a of e){let e=c(a).find(e=>e!==a.id&&t.has(e));e&&s.set(a.id,e)}let a=new Map;for(let t of e){let e=s.get(t.id);e&&a.set(e,[...a.get(e)??[],t])}let n=[],i=new Set,r=(e,t,s)=>{if(!i.has(e.id))for(let l of(i.add(e.id),n.push({task:e,depth:Math.min(t,4),alsoAfter:c(e).filter(t=>t!==s&&t!==e.id)}),a.get(e.id)??[]))r(l,t+1,e.id)};for(let t of e)s.has(t.id)||r(t,0,null);for(let t of e)r(t,0,null);return n},"epicOf",0,p,"foldAxis",0,function(e,t){let s=e.map(e=>{let t=Math.max((e.endMs-e.startMs)*.05,6e4);return{startMs:e.startMs-t,endMs:e.endMs+t}}).sort((e,t)=>e.startMs-t.startMs),a=[];for(let e of s){let s=a[a.length-1];s&&e.startMs-s.endMs<t?s.endMs=Math.max(s.endMs,e.endMs):a.push({...e})}return a},"fromParams",0,function(e){let a=k(s,e.get("view"),"board"),i=n(a),r=e.get("s"),l=e.get("f"),o=e.get("p");return{kind:a,group:k(g,e.get("g"),i.group),subGroup:k(j,e.get("sg"),i.subGroup),sorts:null===r?i.sorts:r.split(",").filter(Boolean).flatMap(e=>{let t=e.startsWith("-"),s=t?e.slice(1):e;return b.includes(s)?[{prop:s,dir:t?"desc":"asc"}]:[]}),filters:l?l.split(";").flatMap(e=>{let[t,s,...a]=e.split(":");if(!h.includes(t)||!f.includes(s))return[];let n=a.join(":"),i=[];try{i=a.length?n.split("|").map(decodeURIComponent):[]}catch{return[]}return[{prop:t,op:s,value:i}]}):[],q:e.get("q")??"",properties:null===o?i.properties:[...new Set(o.split(",").filter(e=>t.includes(e)))],scale:k(v,e.get("sc"),i.scale)}},"groupTasks",0,function(e,t,s){if(!e.length)return[];if("none"===t)return[{key:"all",label:"All tasks",epicId:null,tasks:e}];let a=new Map,n=e=>"status"===t?e.customStatus??e.status:"size"===t?x(e)??"none":"owner"===t?e.owner??"none":p(e.phase).id??"none";for(let t of e){let e=n(t),s=a.get(e);s?s.push(t):a.set(e,[t])}let i=(e,t,s=null)=>({key:e,label:t,epicId:s,tasks:a.get(e)??[]});if("status"===t)return s?s.filter(e=>a.has(e.id)).map(e=>i(e.id,e.label)):r.filter(e=>a.has(e)).map(e=>i(e,l[e]));if("size"===t)return[...o,"none"].filter(e=>a.has(e)).map(e=>i(e,"none"===e?"No size":e));if("owner"===t)return["human",...[...a.keys()].filter(e=>e.startsWith("ai:")).sort(),"none"].filter(e=>a.has(e)).map(e=>i(e,"human"===e?"Human":"none"===e?"No owner":`${e.slice(3)} (AI)`));let c=e=>(a.get(e)??[]).filter(u).map(e=>e.id).sort(d)[0]??null,m=[...a.keys()].filter(e=>"none"!==e).sort((e,t)=>{let s=c(e),a=c(t);return s&&a?d(s,a)||d(e,t):s||a?s?-1:1:d(t,e)}).map(e=>{let t=(a.get(e)??[]).map(e=>p(e.phase).title).find(Boolean);return i(e,t||e,e)});return a.has("none")&&m.push(i("none","No epic")),m},"isDirty",0,function(e,t){let s=e=>JSON.stringify([e.kind,e.filters,e.sorts,e.group,e.subGroup,[...e.properties].sort(),e.scale]);return s(e)!==s(t)},"isReady",0,m,"sizeOf",0,x,"timelineBars",0,function(e,t,s){let a=new Map;for(let e of t){if("task_updated"!==e.type||!e.taskId)continue;let t=Date.parse(e.timestamp);if(Number.isNaN(t))continue;let s=a.get(e.taskId)??[];s.push({ms:t,status:e.taskStatus}),a.set(e.taskId,s)}let n=[];for(let t of e){let e=a.get(t.id)?.sort((e,t)=>e.ms-t.ms);if(!e?.length)continue;let i=(e.find(e=>"in-progress"===e.status)??e[0]).ms,r=e[e.length-1].ms,l=e.filter(e=>"done"===e.status).pop()?.ms,o="done"!==t.status&&"cancelled"!==t.status,d="done"===t.status?l??r:o?s:r;n.push({taskId:t.id,epicId:p(t.phase).id,startMs:i,endMs:Math.max(d,i),status:t.status,open:o})}return n},"toParams",0,function(e){let t=n(e.kind),s=new URLSearchParams;return"board"!==e.kind&&s.set("view",e.kind),e.group!==t.group&&s.set("g",e.group),e.subGroup!==t.subGroup&&s.set("sg",e.subGroup),w(e.sorts)!==w(t.sorts)&&s.set("s",w(e.sorts)),e.filters.length&&s.set("f",e.filters.map(e=>[e.prop,e.op,...e.value.length?[e.value.map(encodeURIComponent).join("|")]:[]].join(":")).join(";")),e.q&&s.set("q",e.q),e.properties.join(",")!==t.properties.join(",")&&s.set("p",e.properties.join(",")),e.scale!==t.scale&&s.set("sc",e.scale),s}])},67874,e=>{"use strict";let t=/^###\s+(\S+)\s+—\s+(approved|changes requested)\s*$/;function s(e){let s=e.split("\n"),a=function(e){let t,s=(t=!1,e.map(e=>/^\s*```/.test(e)?(t=!t,!0):t)),a=e.findIndex((e,t)=>!s[t]&&"## Review"===e.trim());if(a<0)return null;let n=e.findIndex((e,t)=>t>a&&!s[t]&&/^##\s/.test(e));return[a,n<0?e.length:n]}(s);if(!a)return[];let n=[];for(let e of s.slice(a[0]+1,a[1])){let s=e.match(t);if(s)n.push({at:s[1],outcome:s[2],note:""});else if(n.length){let t=n[n.length-1];t.note=t.note?`${t.note}
2
- ${e}`:e}}return n.map(e=>({...e,note:e.note.trim()}))}e.s(["latestReview",0,function(e){let t=s(e);return t[t.length-1]??null},"reviewHistory",0,s])}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,270379,e=>{"use strict";var t=e.i(83790);let a={name:"arrow-up",size:24,node:[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]};a.node;let s=(0,t.default)(a);e.s(["ArrowUp",0,s],270379)},732460,e=>{"use strict";var t=e.i(83790);let a={name:"book-open",size:24,node:[["path",{d:"M12 5v16",key:"1f6ucr"}],["path",{d:"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z",key:"1fyvmf"}]]};a.node;let s=(0,t.default)(a);e.s(["BookOpen",0,s],732460)},479432,e=>{"use strict";var t=e.i(83790);let a={name:"bot",size:24,node:[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]};a.node;let s=(0,t.default)(a);e.s(["Bot",0,s],479432)},628137,e=>{"use strict";var t=e.i(83790);let a={name:"flag",size:24,node:[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]]};a.node;let s=(0,t.default)(a);e.s(["Flag",0,s],628137)},520708,e=>{"use strict";var t=e.i(83790);let a={name:"lightbulb",size:24,node:[["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"}]]};a.node;let s=(0,t.default)(a);e.s(["Lightbulb",0,s],520708)},155515,e=>{"use strict";var t=e.i(83790);let a={name:"plus",size:24,node:[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]};a.node;let s=(0,t.default)(a);e.s(["Plus",0,s],155515)},678677,e=>{"use strict";var t=e.i(83790);let a={name:"scale",size:24,node:[["path",{d:"M12 3v18",key:"108xh3"}],["path",{d:"m19 8 3 8a5 5 0 0 1-6 0zV7",key:"zcdpyk"}],["path",{d:"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1",key:"1yorad"}],["path",{d:"m5 8 3 8a5 5 0 0 1-6 0zV7",key:"eua70x"}],["path",{d:"M7 21h10",key:"1b0cd5"}]]};a.node;let s=(0,t.default)(a);e.s(["Scale",0,s],678677)},161863,e=>{"use strict";var t=e.i(83790);let a={name:"search",size:24,node:[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]};a.node;let s=(0,t.default)(a);e.s(["Search",0,s],161863)},458055,e=>{"use strict";var t=e.i(83790);let a={name:"trash",size:24,node:[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],aliases:["trash-2"]};a.node;let s=(0,t.default)(a);e.s(["Trash2",0,s],458055)},496016,e=>{"use strict";var t=e.i(83790);let a={name:"unlink",size:24,node:[["path",{d:"m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71",key:"yqzxt4"}],["path",{d:"m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71",key:"4qinb0"}],["line",{x1:"8",x2:"8",y1:"2",y2:"5",key:"1041cp"}],["line",{x1:"2",x2:"5",y1:"8",y2:"8",key:"14m1p5"}],["line",{x1:"16",x2:"16",y1:"19",y2:"22",key:"rzdirn"}],["line",{x1:"19",x2:"22",y1:"16",y2:"16",key:"ox905f"}]]};a.node;let s=(0,t.default)(a);e.s(["Unlink",0,s],496016)},343253,e=>{"use strict";var t=e.i(83790);let a={name:"user",size:24,node:[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]};a.node;let s=(0,t.default)(a);e.s(["User",0,s],343253)},782630,956537,e=>{"use strict";var t=e.i(72345),a=e.i(180338),s=e.i(910172),n=e.i(270379),r=e.i(83790);let i={name:"arrow-up-right",size:24,node:[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]]};i.node;let l=(0,r.default)(i);e.s(["ArrowUpRight",0,l],956537);let d={name:"maximize-2",size:24,node:[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]]};d.node;let o=(0,r.default)(d),c={name:"square",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]};c.node;let p=(0,r.default)(c);var x=e.i(458055),h=e.i(763371),u=e.i(244267),m=e.i(998822),f=e.i(975157),b=e.i(481523);function g({proposal:e,onResolve:s}){let{rootParam:n,openDoc:r}=(0,h.useApp)(),[i,l]=(0,a.useState)(null),[d,o]=(0,a.useState)(null),[c,p]=(0,a.useState)(!1);(0,a.useEffect)(()=>{fetch(`/api/docs${n}&read=${encodeURIComponent(e.path)}`).then(e=>e.ok?e.json():null).then(t=>l(t?.path===e.path.replace(/^\.\//,"")&&"string"==typeof t.content?t.content:"")).catch(()=>l(""))},[e.path,n]);let x=(0,a.useMemo)(()=>null===i?null:function(e,t){let a=e;for(let[e,s]of t.entries()){if("string"!=typeof s?.old_string||"string"!=typeof s?.new_string)return{error:`Edit ${e+1}: old_string and new_string must be strings`};if(""===s.old_string){if(""!==a)return{error:`Edit ${e+1}: empty old_string is only allowed for a new, empty doc`};a=s.new_string;continue}let t=a.indexOf(s.old_string);if(-1===t)return{error:`Edit ${e+1}: old_string not found in the doc`};if(-1!==a.indexOf(s.old_string,t+1))return{error:`Edit ${e+1}: old_string matches more than once; include more surrounding text`};a=a.slice(0,t)+s.new_string+a.slice(t+s.old_string.length)}return{content:a}}(i,e.edits),[i,e.edits]),u=null!==x&&"error"in x?x.error:null,m=(0,a.useMemo)(()=>{var e;let t,a;return null===i||!x||"error"in x?[]:(t=(e=function(e,t){let a=e.split("\n"),s=t.split("\n"),n=0;for(;n<a.length&&n<s.length&&a[n]===s[n];)n++;let r=a.length,i=s.length;for(;r>n&&i>n&&a[r-1]===s[i-1];)r--,i--;let l=a.slice(n,r),d=s.slice(n,i),o=Array.from({length:l.length+1},()=>Array(d.length+1).fill(0));for(let e=l.length-1;e>=0;e--)for(let t=d.length-1;t>=0;t--)o[e][t]=l[e]===d[t]?o[e+1][t+1]+1:Math.max(o[e+1][t],o[e][t+1]);let c=[],p=0,x=0;for(;p<l.length||x<d.length;)p<l.length&&x<d.length&&l[p]===d[x]?(c.push({op:" ",text:l[p]}),p++,x++):p<l.length&&(x===d.length||o[p+1][x]>=o[p][x+1])?(c.push({op:"-",text:l[p]}),p++):(c.push({op:"+",text:d[x]}),x++);return[...a.slice(0,n).map(e=>({op:" ",text:e})),...c,...a.slice(r).map(e=>({op:" ",text:e}))]}(i,x.content)).map(()=>!1),e.forEach((a,s)=>{if(" "!==a.op)for(let a=Math.max(0,s-2);a<=Math.min(e.length-1,s+2);a++)t[a]=!0}),a=[],e.forEach((e,s)=>{t[s]?a.push(e):"number"==typeof a[a.length-1]?a[a.length-1]=a[a.length-1]+1:a.push(1)}),a)},[i,x]),b=m.filter(e=>"number"!=typeof e&&"+"===e.op).length,y=m.filter(e=>"number"!=typeof e&&"-"===e.op).length;async function k(){p(!0),o(null);try{let t=await fetch(`/api/docs${n}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e.path,edits:e.edits,actor:"ai"})});if(!t.ok)throw Error((await t.json().catch(()=>null))?.error??"Save failed");s("accepted")}catch(e){o(e.message)}finally{p(!1)}}return(0,t.jsxs)("div",{className:"my-2 rounded-md border border-border overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1.5 bg-surface2 border-b border-border",children:[(0,t.jsx)("button",{onClick:()=>r(e.path),className:"text-xs font-mono text-accent truncate hover:underline",title:e.path,children:e.path}),(0,t.jsxs)("span",{className:"text-[10px] font-mono text-teal-400",children:["+",b]}),(0,t.jsxs)("span",{className:"text-[10px] font-mono text-red-400",children:["-",y]})]}),e.summary&&(0,t.jsx)("div",{className:"px-2 py-1 text-xs text-muted border-b border-border",children:e.summary}),(0,t.jsxs)("div",{className:"max-h-72 overflow-auto text-[11px] font-mono leading-5",children:[null===i&&(0,t.jsx)("div",{className:"px-2 py-1 text-muted",children:"Loading diff…"}),u&&(0,t.jsxs)("div",{className:"px-2 py-1 text-red-400",children:["Doc changed since this proposal (",u,"). Ask the agent to propose again."]}),null!==i&&!u&&0===m.length&&(0,t.jsx)("div",{className:"px-2 py-1 text-muted",children:"No changes"}),m.map((e,a)=>"number"==typeof e?(0,t.jsxs)("div",{className:"px-2 text-muted bg-surface2/50",children:["⋯ ",e," unchanged line",e>1?"s":""]},a):(0,t.jsxs)("div",{className:(0,f.cn)("px-2 whitespace-pre-wrap break-words","+"===e.op&&"bg-teal-500/10 text-teal-300","-"===e.op&&"bg-red-500/10 text-red-300 line-through decoration-red-400/40"),children:[e.op," ",e.text||" "]},a))]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1.5 border-t border-border",children:["pending"===e.status?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:k,disabled:c||null===i||!!u,className:"text-xs px-2 py-0.5 rounded-sm bg-accent/20 text-accent hover:bg-accent/30 disabled:opacity-50",children:c?"Applying…":"Accept"}),(0,t.jsx)("button",{onClick:()=>s("rejected"),disabled:c,className:"text-xs px-2 py-0.5 rounded-sm text-muted hover:text-txt",children:"Reject"})]}):(0,t.jsx)("span",{className:(0,f.cn)("text-xs","accepted"===e.status?"text-teal-400":"text-muted"),children:"accepted"===e.status?"✓ Applied":"Rejected"}),d&&(0,t.jsx)("span",{className:"text-xs text-red-400 truncate",children:d})]})]})}function y({proposal:e,onResolve:s}){let{rootParam:n,openDoc:r}=(0,h.useApp)(),i=e.plan,l="breakdown"===i.kind?i.tasks:[],d="roadmap"===i.kind?i.horizons??[]:[],o="roadmap"===i.kind?i.epics??[]:[],c="breakdown"===i.kind?(i.epic??"").trim().toUpperCase():"",p="breakdown"===i.kind?i.newEpic:void 0,[x,u]=(0,a.useState)(new Map),[m,f]=(0,a.useState)(new Set),[b,g]=(0,a.useState)(null),[j,v]=(0,a.useState)(null),[N,w]=(0,a.useState)(!1);(0,a.useEffect)(()=>{fetch(`/api/roadmap${n}`).then(e=>e.ok?e.json():null).then(e=>u(new Map((e?.items??[]).map(e=>[e.id,e.title])))).catch(()=>u(new Map))},[n]);let S=("breakdown"===i.kind?l.map(e=>e.key):[...d,...o].map(e=>e.key)).filter(e=>!m.has(e)),$="pending"===e.status,M=new Set(d.map(e=>e.key)),z=(e,a,s,n,r=!1)=>(0,t.jsx)(k,{rowKey:e,title:a,meta:s,body:n,indent:r,checked:!m.has(e),disabled:!$||N,onToggle:()=>{v(null),f(t=>{let a=new Set(t),s=a.has(e);for(let t of M.has(e)?[e,...o.filter(t=>t.parent.trim()===e).map(e=>e.key)]:[e])s?a.delete(t):a.add(t);let n=o.find(t=>t.key===e)?.parent.trim();return s&&n&&M.has(n)&&a.delete(n),a})},open:b===e,onOpen:()=>g(b===e?null:e)},e),C=e=>e.trim().split("\n")[0]??"",A=[...new Set(o.map(e=>e.parent.trim()).filter(e=>!M.has(e)))];async function E(){w(!0),v(null);try{let e=await fetch(`/api/plan/apply${n}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({plan:i,selected:S})}),t=await e.json().catch(()=>null);if(!e.ok)throw Error(t?.error??`Apply failed (${e.status})`);s("accepted",t?.created??[],[...m])}catch(e){v(e.message)}finally{w(!1)}}return(0,t.jsxs)("div",{className:"my-2 rounded-md border border-border overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1.5 bg-surface2 border-b border-border",children:[(0,t.jsx)("span",{className:"text-[10px] font-mono uppercase tracking-widest text-muted",children:"Plan"}),"breakdown"===i.kind?(0,t.jsxs)(t.Fragment,{children:[c?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-xs font-mono text-accent",children:c}),(0,t.jsx)("span",{className:"text-xs text-txt truncate",children:x.get(c)??""})]}):p?(0,t.jsxs)("span",{className:"text-xs text-txt truncate",children:["New epic: ",p.title,(0,t.jsxs)("span",{className:"text-muted",children:[" (under ",p.parent.trim().toUpperCase()," ",x.get(p.parent.trim().toUpperCase())??"",")"]})]}):(0,t.jsx)("span",{className:"text-xs text-muted",children:"No epic"}),(0,t.jsxs)("span",{className:"ml-auto text-[10px] font-mono text-muted",children:[l.length," tasks"]})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-xs text-txt",children:"Roadmap"}),(0,t.jsxs)("span",{className:"ml-auto text-[10px] font-mono text-muted",children:[d.length?`${d.length} horizons \xb7 `:"",o.length," epics"]})]})]}),(0,t.jsxs)("ul",{className:"max-h-80 overflow-auto",children:[l.map(e=>z(e.key,e.title,[e.size,e.dependsOn?.length?`after ${e.dependsOn.join(", ")}`:null,e.due?`due ${e.due}`:null].filter(Boolean).join(" · "),e.body)),d.map(e=>[z(e.key,e.title,"new horizon",e.body),...o.filter(t=>t.parent.trim()===e.key).map(e=>z(e.key,e.title,C(e.body),e.body,!0))]),A.map(e=>[(0,t.jsxs)("li",{className:"px-2 py-1.5 border-b border-border text-xs text-muted",children:[(0,t.jsx)("span",{className:"font-mono text-accent mr-1",children:e.toUpperCase()}),x.get(e.toUpperCase())??""]},`parent-${e}`),...o.filter(t=>t.parent.trim()===e).map(e=>z(e.key,e.title,C(e.body),e.body,!0))])]}),j&&(0,t.jsx)("div",{className:"px-2 py-1 text-xs text-red-400 whitespace-pre-wrap border-t border-border",children:j}),(0,t.jsx)("div",{className:"flex items-center gap-2 px-2 py-1.5 border-t border-border",children:$?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:E,disabled:N||0===S.length,className:"text-xs px-2 py-0.5 rounded-sm bg-accent/20 text-accent hover:bg-accent/30 disabled:opacity-50",children:N?"Creating…":`Accept (${S.length})`}),(0,t.jsx)("button",{onClick:()=>s("rejected",[],[]),disabled:N,className:"text-xs px-2 py-0.5 rounded-sm text-muted hover:text-txt",children:"Reject"})]}):"accepted"===e.status?(0,t.jsxs)("span",{className:"text-xs text-teal-400",children:["✓ Created"," ",(e.created??[]).map((e,a)=>(0,t.jsxs)("span",{children:[a>0&&", ",(0,t.jsx)("button",{onClick:()=>r(e.file),className:"font-mono hover:underline",children:e.id})]},e.id))]}):(0,t.jsx)("span",{className:"text-xs text-muted",children:"Rejected"})})]})}function k({rowKey:e,title:a,meta:s,body:n,indent:r,checked:i,disabled:l,onToggle:d,open:o,onOpen:c}){return(0,t.jsxs)("li",{"data-plan-row":e,className:"border-b border-border last:border-b-0",children:[(0,t.jsxs)("div",{className:(0,f.cn)("flex items-start gap-2 px-2 py-1.5",r&&"pl-6"),children:[(0,t.jsx)("input",{type:"checkbox","aria-label":`Include ${a}`,checked:i,disabled:l,onChange:d,className:"mt-0.5 accent-accent"}),(0,t.jsxs)("button",{onClick:c,className:"flex-1 min-w-0 text-left",children:[(0,t.jsxs)("div",{className:(0,f.cn)("text-xs text-txt",!i&&"line-through text-muted"),children:[(0,t.jsx)("span",{className:"font-mono text-muted mr-1",children:e}),a]}),s&&(0,t.jsx)("div",{className:"text-[10px] font-mono text-muted truncate",children:s})]})]}),o&&n&&(0,t.jsx)("div",{className:"px-3 pb-2 border-t border-border bg-surface2/40",children:(0,t.jsx)(m.MarkdownRenderer,{content:n,className:"text-xs"})})]})}var j=e.i(702197),v=e.i(844081);let N="grid size-8 shrink-0 place-items-center rounded-md text-muted transition-colors duration-(--duration-fast) hover:bg-surface2 hover:text-txt";function w({chat:e,hidden:s,wide:n}){let{send:r,resolveProposal:i,resolvePlan:l,answerQuestions:d}=(0,u.useChats)(),o=(0,a.useRef)(null),c=e.messages;return(0,a.useEffect)(()=>{let e=o.current;e&&!s&&(e.scrollTop=e.scrollHeight)},[c,s]),(0,t.jsx)("div",{ref:o,hidden:s,role:"log","aria-live":"polite",className:"min-h-0 flex-1 overflow-y-auto",children:(0,t.jsxs)("div",{className:(0,f.cn)("mx-auto flex flex-col gap-5 px-5 py-6 text-sm",n?"max-w-3xl":"max-w-none"),children:[0===c.length&&(0,t.jsx)(M,{chat:e,onPick:t=>r(e.id,t)}),c.map((a,s)=>(0,t.jsx)(S,{m:a,thinking:e.busy&&s===c.length-1,busy:e.busy,onProposal:(t,a,s)=>i(e.id,t,a,s),onPlan:(t,a,s,n)=>l(e.id,t,a,s,n),onAnswers:(t,a)=>d(e.id,t,a)},s))]})})}function S({m:e,thinking:a,busy:s,onProposal:n,onPlan:r,onAnswers:i}){return"user"===e.role?(0,t.jsx)("div",{className:"flex justify-end animate-fade-in",children:(0,t.jsx)("div",{className:"max-w-[85%] whitespace-pre-wrap rounded-2xl rounded-br-md border border-accent/20 bg-accent/10 px-3.5 py-2 text-txt",children:e.text})}):(0,t.jsxs)("div",{className:"flex gap-3 animate-fade-in",children:[(0,t.jsx)("div",{className:"mt-0.5 grid size-6 shrink-0 place-items-center rounded-md bg-linear-to-br from-accent to-teal text-[10px] text-white","aria-hidden":!0,children:"⬡"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1 space-y-2",children:[e.tools.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap gap-1",children:e.tools.map((e,a)=>(0,t.jsx)("span",{className:"rounded-sm border border-border bg-surface2 px-1.5 py-0.5 font-mono text-[10px] text-muted animate-slide-in",children:e},a))}),e.proposals.map(e=>(0,t.jsx)(g,{proposal:e,onResolve:t=>n(e.id,e.path,t)},e.id)),e.plans.map(e=>(0,t.jsx)(y,{proposal:e,onResolve:(t,a,s)=>r(e,t,a,s)},e.id)),e.questions.map(e=>(0,t.jsx)(j.QuestionCard,{set:e,disabled:s,onSubmit:t=>i(e,t)},e.id)),e.text&&(0,t.jsx)(m.MarkdownRenderer,{content:e.text,className:"text-sm"}),a&&!e.text&&!e.error&&(0,t.jsx)($,{}),e.error&&(0,t.jsx)("p",{className:"whitespace-pre-wrap text-xs text-danger",children:e.error})]})]})}function $(){return(0,t.jsxs)("span",{className:"inline-flex items-center gap-2 text-xs text-muted",children:[(0,t.jsx)("span",{className:"inline-flex gap-1","aria-hidden":!0,children:[0,150,300].map(e=>(0,t.jsx)("span",{className:"size-1.5 rounded-full bg-accent animate-pulse-dot",style:{animationDelay:`${e}ms`}},e))}),"Thinking…"]})}function M({chat:e,onPick:a}){let s=e.attach;return(0,t.jsxs)("div",{className:"flex flex-col items-start gap-4 py-6 animate-fade-in",children:[(0,t.jsx)("div",{className:"grid size-9 place-items-center rounded-lg bg-linear-to-br from-accent to-teal text-sm text-white","aria-hidden":!0,children:"⬡"}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-lg font-semibold text-txt",children:s?`Ask about ${s.id}`:"Ask the agent"}),(0,t.jsx)("p",{className:"mt-1 max-w-md text-sm text-muted",children:s?`The agent reads ${"epic"===s.kind?"the epic and its tasks":"the task"} first. It proposes changes; nothing is written until you accept.`:"It reads your docs, tasks and roadmap and proposes edits you review. Runs on your local Claude Code login."})]}),(0,t.jsx)("div",{className:"flex flex-col gap-1.5",children:(0,b.suggestions)(s).map((e,s)=>(0,t.jsxs)("button",{type:"button",onClick:()=>a(e),style:{animationDelay:`${60*s}ms`},className:"group flex items-center gap-2 rounded-lg border border-border px-3 py-2 text-left text-sm text-txt/90 transition-colors duration-(--duration-fast) animate-slide-in [animation-fill-mode:both] hover:border-accent/50 hover:bg-accent/5",children:[(0,t.jsx)(l,{className:"size-3.5 text-muted transition-transform duration-(--duration-fast) group-hover:-translate-y-px group-hover:translate-x-px group-hover:text-accent"}),e]},e))})]})}function z({chat:e,wide:r}){let{send:i,stop:l,queue:d}=(0,u.useChats)(),{selectedDoc:o}=(0,h.useApp)(),c=(0,s.usePathname)(),[x,m]=(0,a.useState)(""),b="/docs"===c?o?.path:void 0,g=e.messages[e.messages.length-1],y=!!g?.questions.some(e=>!e.answers),k=Math.min(8,Math.max(1,x.split("\n").length));function j(){x.trim()&&!e.busy&&(i(e.id,x),m(""))}return(0,t.jsx)("div",{className:"shrink-0 px-5 pb-4 pt-1",children:(0,t.jsxs)("div",{className:(0,f.cn)("mx-auto rounded-xl border border-border bg-surface2 transition-[border-color,box-shadow] duration-(--duration-base) focus-within:border-accent/60 focus-within:shadow-[0_0_0_3px_rgb(var(--rgb-accent)/0.12)]",r?"max-w-3xl":"max-w-none"),children:[(0,t.jsx)("textarea",{autoFocus:!d.some(t=>t.id===e.id),value:x,onChange:e=>m(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||e.nativeEvent.isComposing||(e.preventDefault(),j())},rows:k,placeholder:e.busy?"Agent is working…":y?"Answer the questions above…":"Ask the agent… (Enter to send)",className:"block w-full resize-none bg-transparent px-3.5 pt-3 text-sm text-txt placeholder:text-muted focus:outline-hidden"}),(0,t.jsxs)("div",{className:"flex items-center gap-2 px-2.5 pb-2 pt-1",children:[(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-[10px] text-muted",children:b?`@ ${b}`:"Shift+Enter for a new line"}),e.busy?(0,t.jsxs)("button",{type:"button",onClick:()=>l(e.id),title:"Stop the agent",className:"grid size-7 place-items-center rounded-full border border-border text-muted transition-colors hover:text-txt",children:[(0,t.jsx)(p,{className:"size-3 fill-current"}),(0,t.jsx)("span",{className:"sr-only",children:"Stop"})]}):(0,t.jsxs)("button",{type:"button",onClick:j,disabled:!x.trim(),title:"Send (Enter)",className:"grid size-7 place-items-center rounded-full bg-accent text-accent-fg transition-[opacity,transform] duration-(--duration-fast) enabled:hover:scale-105 disabled:opacity-30",children:[(0,t.jsx)(n.ArrowUp,{className:"size-3.5"}),(0,t.jsx)("span",{className:"sr-only",children:"Send"})]})]})]})})}e.s(["ChatView",0,function({chatId:e,variant:n,onExpand:r,onNavigate:i}){let{chats:l,stop:d,remove:c,notice:h,dismissNotice:m}=(0,u.useChats)(),g=(0,s.useRouter)(),y=l.find(t=>t.id===e),[k,j]=(0,a.useState)([e]);if(k.includes(e)||j([...k,e]),!y)return(0,t.jsx)("div",{className:"grid h-full place-items-center p-8 text-sm text-muted",children:"This chat was closed."});let S=(0,b.chatStatus)(y);return(0,t.jsxs)("section",{"aria-label":`Chat: ${y.title}`,className:"flex h-full min-h-0 flex-col",children:[(0,t.jsxs)("header",{className:(0,f.cn)("flex h-14 shrink-0 items-center gap-3 border-b border-border px-5","modal"===n&&"pr-14"),children:[(0,t.jsx)(v.StatusMarker,{status:S,showIdle:!0}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("h2",{className:"truncate text-sm font-medium text-txt",children:y.title}),(0,t.jsx)("p",{className:"font-mono text-[10px] text-muted",children:b.STATUS_LABEL[S]})]}),y.attach&&(0,t.jsx)("button",{type:"button",onClick:()=>{var e;return y.attach&&(e=(0,v.attachHref)(y.attach),void(i?.(),g.push(e)))},title:`Open ${y.attach.id} in the ${"epic"===y.attach.kind?"roadmap":"board"}`,className:"rounded-full border border-border px-2 py-1 text-muted transition-colors duration-(--duration-fast) hover:border-accent/50 hover:text-accent",children:(0,t.jsx)(v.AttachLabel,{attach:y.attach})}),y.busy&&(0,t.jsxs)("button",{type:"button",onClick:()=>d(y.id),title:"Stop the agent",className:N,children:[(0,t.jsx)(p,{className:"size-3.5 fill-current"}),(0,t.jsx)("span",{className:"sr-only",children:"Stop"})]}),"modal"===n&&r&&(0,t.jsxs)("button",{type:"button",onClick:r,title:"Open as page",className:N,children:[(0,t.jsx)(o,{className:"size-3.5"}),(0,t.jsx)("span",{className:"sr-only",children:"Open as page"})]}),"page"===n&&(0,t.jsx)("button",{type:"button",onClick:()=>c(y.id),"aria-label":`Delete ${y.title}`,title:"Delete chat",className:(0,f.cn)(N,"hover:text-danger"),children:(0,t.jsx)(x.Trash2,{className:"size-3.5"})})]}),k.map(a=>{let s=l.find(e=>e.id===a);return s?(0,t.jsx)(w,{chat:s,hidden:a!==e,wide:"page"===n},a):null}),h&&(0,t.jsxs)("div",{role:"status",className:"mx-5 mb-2 flex items-start gap-2 rounded-md border border-amber/30 bg-amber/10 px-3 py-2 text-xs text-amber animate-fade-in",children:[(0,t.jsx)("span",{className:"flex-1",children:h}),(0,t.jsx)("button",{onClick:m,"aria-label":"Dismiss",className:"leading-none text-muted hover:text-txt",children:"×"})]}),(0,t.jsx)(z,{chat:y,wide:"page"===n},y.id)]})}],782630)},862249,805102,e=>{"use strict";let t;var a=e.i(72345),s=e.i(180338),n=e.i(910172),r=e.i(732460),i=e.i(406952),l=e.i(628137),d=e.i(520708),o=e.i(678677),c=e.i(763371),p=e.i(464750),x=e.i(694628);let h=[{kind:"task",label:"Tasks"},{kind:"epic",label:"Epics"},{kind:"adr",label:"ADRs"},{kind:"doc",label:"Docs"},{kind:"entry",label:"Entries"}],u={epic:l.Flag,adr:o.Scale,doc:i.FileText,entry:d.Lightbulb,task:r.BookOpen};function m(e){let t=(0,n.useRouter)(),{openDoc:a}=(0,c.useApp)();return s=>{"task"===s.kind?t.push(`/board?task=${s.id}`):"epic"===s.kind?t.push(`/roadmap?item=${s.id}`):"entry"===s.kind?e(s.id):a(s.path)}}e.s(["EntryRelated",0,function({entryId:e,onOpenEntry:t}){let{rootParam:n,summary:r,board:i}=(0,c.useApp)(),l=m(t),[d,o]=(0,s.useState)(null);(0,s.useEffect)(()=>{let t=!0;return fetch(`/api/memory/graph${n}&entry=${encodeURIComponent(e)}`).then(e=>e.json()).then(e=>{t&&o(e.nodes?e:{nodes:[],edges:[]})}).catch(e=>{console.warn("Loading entry links failed",e),t&&o({nodes:[],edges:[]})}),()=>{t=!1}},[e,n,r]);let f=(0,s.useMemo)(()=>new Map(Object.values(i??{}).flat().map(e=>[e.id,e])),[i]),b=(0,s.useMemo)(()=>new Map((d?.nodes??[]).map(e=>[e.id,e])),[d]),g=e=>e.map(e=>b.get(e)).filter(e=>!!e),y=g((d?.edges??[]).filter(t=>t.from===e).map(e=>e.to)),k=g((d?.edges??[]).filter(t=>t.to===e).map(e=>e.from)),j=e=>{let t="task"===e.kind?f.get(e.id):void 0,s=t?(0,x.displayStatus)(t):"epic"===e.kind?e.status:void 0,n=u[e.kind];return(0,a.jsx)("li",{children:(0,a.jsxs)("button",{type:"button",onClick:()=>l(e),title:e.path,className:"flex w-full items-center gap-2 rounded-md px-2 py-1 text-left text-sm outline-none hover:bg-surface2 focus-visible:ring-2 focus-visible:ring-accent",children:[s?(0,a.jsx)(p.StatusIcon,{status:s,className:"size-3.5 shrink-0"}):(0,a.jsx)(n,{className:"size-3.5 shrink-0 text-muted","aria-hidden":!0}),"doc"!==e.kind&&(0,a.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted",children:e.id}),(0,a.jsx)("span",{className:"min-w-0 truncate text-txt",children:e.label})]})},e.id)},v=(e,t)=>(0,a.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,a.jsx)("h4",{className:"text-[11px] font-semibold uppercase tracking-wider text-muted",children:e}),h.map(({kind:e,label:s})=>{let n=t.filter(t=>t.kind===e);return n.length?(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"px-2 text-[11px] text-muted",children:s}),(0,a.jsx)("ul",{children:n.map(j)})]},e):null})]});return(0,a.jsxs)("section",{"aria-label":"Related",className:"mt-5 flex flex-col gap-3 border-t border-border pt-4",children:[(0,a.jsx)("h3",{className:"text-xs font-semibold text-txt",children:"Related"}),null===d?(0,a.jsx)("p",{className:"text-xs text-muted",children:"Loading links…"}):y.length||k.length?(0,a.jsxs)(a.Fragment,{children:[y.length>0&&v("Links to",y),k.length>0&&v("Linked from",k)]}):(0,a.jsx)("p",{className:"text-xs text-muted",children:"No links yet. Mention a task, epic or doc in the entry to link it."})]})},"GROUPS",0,h,"KIND_ICON",0,u,"useOpenNode",0,m],862249);let f=new Set(["doc_updated","doc_created","doc_deleted","doc_renamed","task_created","task_updated","roadmap_updated","memory_updated","decision_logged"]),b=0,g=new Set;function y(e){return g.add(e),()=>{g.delete(e)}}function k(){return(0,s.useSyncExternalStore)(y,()=>b,()=>0)}window.addEventListener("vibedoc:sse",function(e){f.has(e.detail?.type)&&(clearTimeout(t),t=setTimeout(()=>{b++,j.clear(),g.forEach(e=>e())},250))});let j=new Map;function v(e){let t=j.get(e);if(!t){let a=t=fetch(e).then(async e=>{let t=await e.json().catch(()=>null);if(!e.ok)throw Error(t?.error??`${e.status} ${e.statusText}`);return t});a.catch(()=>{j.get(e)===a&&j.delete(e)}),j.set(e,a)}return t}e.s(["LINK_EVENTS",0,f,"fetchLinkJson",0,v,"useDocLinks",0,function(e){let{rootParam:t}=(0,c.useApp)(),[a,n]=(0,s.useState)(null),r=k();return(0,s.useEffect)(()=>{if(!e)return;let a=!0;return v(`/api/docs/links${t}&path=${encodeURIComponent(e)}`).then(t=>{a&&n({path:e,links:{out:t.out??[],in:t.in??[],broken:t.broken??[],stale:t.stale??[],targets:t.targets??{}}})}).catch(t=>{console.warn("Loading doc links failed",t),a&&n({path:e,links:{out:[],in:[],broken:[],stale:[],targets:{}}})}),()=>{a=!1}},[e,t,r]),e&&a?.path===e?a.links:null},"useLinkGeneration",0,k],805102)},35032,222581,e=>{"use strict";var t=e.i(72345),a=e.i(479432),s=e.i(343253),n=e.i(975157);function r(e){return"human"===e?"human":e?.startsWith("ai:")?"ai":"none"}function i(e){return"human"===e?"Human":e?.startsWith("ai:")?e.slice(3):"No owner"}e.s(["ownerKind",0,r,"ownerLabel",0,i],222581),e.s(["OwnerChip",0,function({owner:e,className:l}){let d=r(e);if("none"===d)return null;let o="ai"===d?a.Bot:s.User;return(0,t.jsxs)("span",{title:`Owner: ${i(e)}`,className:(0,n.cn)("inline-flex items-center gap-1 text-[11px] text-muted",l),children:[(0,t.jsx)(o,{className:(0,n.cn)("size-3.5 shrink-0","ai"===d&&"text-accent"),"aria-hidden":!0}),i(e)]})}],35032)},644138,e=>{"use strict";let t=new Set(["a","b","c","x","y","z","path","name","slug","title","foo","bar","wikilinks","example"]),a=e=>String(Number(e)).padStart(3,"0");function s(e){return e.startsWith("ADR-")?`ADR-${a(e.slice(4))}`:e.startsWith("E")?`E${a(e.slice(1))}`:e}function n(e,t){let a,n=function(e){let t=[];for(let a of e.replace(/\\/g,"/").split("/"))if(a&&"."!==a)if(".."===a){if(!t.length)return null;t.pop()}else t.push(a);return t.join("/")}(e)??e,r=(n.split("/").pop()??n).replace(/\.md$/i,""),i=(/^#\s+(.+?)\s*$/m.exec(t)?.[1]??"").replace(/!?\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/\[\[([^\]|]+)(?:\|([^\]]+))?\]\]/g,(e,t,a)=>a??t).replace(/(\*\*|\*|~~|`)(\S(?:.*?\S)?)\1/g,"$2").replace(/(^|\W)(__|_)(\S(?:.*?\S)?)\2(?=\W|$)/g,"$1$3").replace(/<[^>]+>/g,"").trim(),l=/[^.][.!]$/.test(i)?"":i,d=e=>l.replace(RegExp(`^${e}\\s*[:—–-]\\s*`),"")||r;return(a=/^plans\/tasks\/(T\d{3,})[^/]*\.md$/.exec(n))?{id:a[1],kind:"task",label:d(a[1]),path:n}:(a=/^plans\/roadmap\/(R\d{3,})[^/]*\.md$/.exec(n))?{id:a[1],kind:"epic",label:d(a[1]),path:n}:(a=/^memory\/entries\/(E\d+)[^/]*\.md$/.exec(n))?{id:s(a[1]),kind:"entry",label:d(a[1]),path:n}:(a=/(?:^|\/)(ADR-\d+)[^/]*\.md$/.exec(n))?{id:s(a[1]),kind:"adr",label:d(a[1]),path:n}:{id:n,kind:"doc",label:l||r,path:n}}new WeakMap;let r=["doc","adr"],i=/^(?:Entry )?(E\d+|T\d{3,}|R\d{3,}|ADR-\d+)\b/,l=new Set(["doc_updated","doc_created"]);e.s(["GRAPH_DEFAULT_KINDS",0,r,"docNode",0,n,"graphHref",0,function(e){let t=new URLSearchParams({node:e,focus:"1"}),a=n(e,"").kind;return r.includes(a)||t.set("kinds",[...r,a].join(",")),`/graph?${t}`},"isExampleTarget",0,function(e){let a=(e.split("/").pop()??"").replace(/\.md$/i,"").replace(/^(?:ADR-\d+|[TRE]\d+)-/,"");return t.has(a.toLowerCase())},"touchedPaths",0,function(e,t,a){let s=new Map;for(let e of t)s.set(e.id,e.path),s.set(e.path,e.path);let n=new Set;for(let t of e){if(!(Date.parse(t.timestamp)>=a))continue;let e=[t.taskId,i.exec(t.title)?.[1]];for(let a of(l.has(t.type)&&e.push(t.detail),"doc_renamed"===t.type&&e.push(t.title.split(" → ")[1]),"memory_updated"!==t.type||t.title.startsWith("Entry ")||e.push("memory/MEMORY.md"),e)){let e=a?s.get(a.trim()):void 0;e&&n.add(e)}}return n}])}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,788293,463464,t=>{"use strict";var e=t.i(83790);let s={name:"zap",size:24,node:[["path",{d:"M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z",key:"1v7up4"}]]};s.node;let a=(0,e.default)(s);t.s(["Zap",0,a],788293);let n={name:"settings",size:24,node:[["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"}]]};n.node;let o=(0,e.default)(n);t.s(["Settings",0,o],463464)},528427,t=>{t.v(e=>Promise.all(["static/chunks/3wehcul43z-up.js","static/chunks/090qol92bm3lm.js","static/chunks/16amofje8v-rw.js","static/chunks/2a46a9zwq8i_j.js","static/chunks/3rmz5_d6ve6ut.js","static/chunks/3ezb3p4b8ibl2.js","static/chunks/2uhr8khh963wn.js","static/chunks/2zy289po30i-l.js","static/chunks/2rubn40gv6g5w.js","static/chunks/25-4d7lo7j_n3.js"].map(e=>t.l(e))).then(()=>e(20832)))},476785,t=>{"use strict";var e=t.i(180338);let s=()=>()=>{};t.s(["useOrigin",0,function(){return(0,e.useSyncExternalStore)(s,()=>window.location.origin,()=>"")}])},573009,t=>{"use strict";var e=t.i(243668);t.s(["applyAccent",0,function(t){document.documentElement.setAttribute("data-accent",t)},"applyFontSize",0,function(t){document.documentElement.setAttribute("data-font-size",t)},"applyFonts",0,function(t){let s=document.documentElement;s.setAttribute("data-font-sans",t.fontSans??e.DEFAULT_SETTINGS.fontSans),s.setAttribute("data-font-mono",t.fontMono??e.DEFAULT_SETTINGS.fontMono)},"applyTheme",0,function(t){let e=document.documentElement,s=window.matchMedia("(prefers-color-scheme: dark)").matches;e.classList.toggle("dark","dark"===t||"system"===t&&s)}])},478096,22829,t=>{"use strict";let e=(t,e)=>`${t} ${e}${1===t?"":"s"}`;t.s(["catchUp",0,function(t,e){let s=t.filter(t=>Date.parse(t.end)>=e);return{sessions:s.length,tasksDone:new Set(s.flatMap(t=>t.tasks.filter(t=>"done"===t.lastStatus).map(t=>t.id))).size,docs:new Set(s.flatMap(t=>t.docs)).size,decisions:s.reduce((t,e)=>t+e.decisions.length,0)}},"groupSessions",0,function(t,s={}){let a=s.gapMs??18e5,n=[...t].sort((t,e)=>t.timestamp.localeCompare(e.timestamp)),o=new Map,i=new Map;for(let t of n){let e=t.sessionId;if(!e){let s=Date.parse(t.timestamp),n=i.get(t.actor);(!n||"session_start"===t.type||s-n.lastAt>a)&&(n={id:`legacy_${t.id}`,lastAt:s},i.set(t.actor,n)),n.lastAt=s,e=n.id}let s=o.get(e);s?s.push(t):o.set(e,[t])}return[...o].map(([t,s])=>(function(t,s){let a=new Map,n=new Set,o=[],i=!1,l=0;for(let t of s){"task_updated"===t.type&&t.taskId&&t.taskStatus&&a.set(t.taskId,t.taskStatus);let e=function(t){switch(t.type){case"doc_created":return t.detail??t.title.replace(/^Created: /,"");case"doc_deleted":return t.title.replace(/^Deleted /,"");case"doc_renamed":return t.title.split(" → ")[1]??null;default:return null}}(t);e&&n.add(e),"decision_logged"===t.type&&o.push(t.title),"memory_updated"===t.type&&(i=!0),"roadmap_updated"===t.type&&l++}let c=[...a].map(([t,e])=>({id:t,lastStatus:e})),r=c.filter(t=>"done"===t.lastStatus).length,d=[c.length?`${e(c.length,"task")} moved${r?` (${r} done)`:""}`:"",n.size?`${e(n.size,"doc")} changed`:"",o.length?e(o.length,"ADR"):"",l?e(l,"roadmap edit"):"",i?"memory updated":""].filter(Boolean);return{id:t,actor:s[0].actor,start:s[0].timestamp,end:s[s.length-1].timestamp,eventCount:s.length,eventIds:s.map(t=>t.id),tasks:c,docs:[...n],decisions:o,memoryUpdated:i,headline:d.join(" · ")||e(s.length,"event")}})(t,s)).sort((t,e)=>e.start.localeCompare(t.start))},"isLive",0,function(t,e=Date.now(),s=3e5){return e-Date.parse(t.end)<s},"sessionDuration",0,function(t){let e=Math.round((Date.parse(t.end)-Date.parse(t.start))/6e4);return e<1?"<1m":e<60?`${e}m`:`${Math.floor(e/60)}h ${e%60}m`}],478096);var s=t.i(83790);let a={name:"activity",size:24,node:[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]};a.node;let n=(0,s.default)(a);t.s(["Activity",0,n],22829)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,456526,e=>{e.v(t=>Promise.all(["static/chunks/0uy8t2jirrcbm.js"].map(t=>e.l(t))).then(()=>t(136507)))},973121,e=>{e.v(e=>Promise.resolve().then(()=>e(588395)))},248070,65112,775549,e=>{"use strict";var t=e.i(83790);let a={name:"ellipsis",size:24,node:[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],aliases:["more-horizontal"]};a.node;let n=(0,t.default)(a);e.s(["MoreHorizontal",0,n],248070);var i=e.i(72345),s=e.i(975157),l=e.i(940837),r=e.i(180338),o=e.i(837001),d=e.i(755146);let c=e=>e.stopPropagation(),u="inline-flex min-w-0 items-center gap-1 rounded-sm px-1 -mx-1 text-left outline-hidden hover:bg-surface2 focus-visible:ring-2 focus-visible:ring-accent/60";function m({label:e,value:t,options:a,onChange:n,children:l,className:r}){return(0,i.jsxs)(d.DropdownMenu,{children:[(0,i.jsx)(d.DropdownMenuTrigger,{asChild:!0,children:(0,i.jsx)("button",{type:"button","aria-label":e,draggable:!1,onClick:c,onKeyDown:c,onPointerDown:c,className:(0,s.cn)(u,r),children:l})}),(0,i.jsx)(d.DropdownMenuContent,{align:"start",className:"max-h-72 w-48 overflow-y-auto",onClick:c,onKeyDown:c,children:a.map(e=>(0,i.jsxs)(d.DropdownMenuItem,{onSelect:()=>{e.value!==t&&n(e.value)},children:[e.node??e.label,e.value===t&&(0,i.jsx)(o.Check,{className:"ml-auto size-3.5 text-muted","aria-hidden":!0})]},e.value))})]})}e.s(["InlineDate",0,function({label:e,value:t,onChange:a,children:n,className:l}){let[o,d]=(0,r.useState)(!1),[m,p]=(0,r.useState)(t??""),h=()=>{d(!1),(m||null)!==t&&a(m||null)};return o?(0,i.jsx)("input",{type:"date",autoFocus:!0,"aria-label":e,value:m,onChange:e=>p(e.target.value),onClick:c,onPointerDown:c,onKeyDown:e=>{c(e),"Enter"===e.key&&(e.preventDefault(),h()),"Escape"===e.key&&(e.preventDefault(),d(!1))},onBlur:h,className:"h-6 rounded-sm border border-accent/60 bg-bg px-1 font-mono text-[11px] text-txt scheme-light outline-hidden dark:scheme-dark"}):(0,i.jsx)("button",{type:"button","aria-label":e,draggable:!1,onClick:e=>{c(e),p(t??""),d(!0)},onKeyDown:c,className:(0,s.cn)(u,l),children:n})},"InlineSelect",0,m,"InlineText",0,function({label:e,value:t,onChange:a,children:n,className:l,placeholder:o,startEditing:d=!1,onCancel:m}){let[p,h]=(0,r.useState)(d),[x,f]=(0,r.useState)(t??""),g=()=>{h(!1);let e=x.trim()||null;e!==t?a(e):e||m?.()};return p?(0,i.jsx)("input",{autoFocus:!0,"aria-label":e,value:x,placeholder:o,onChange:e=>f(e.target.value),onClick:c,onPointerDown:c,onKeyDown:e=>{c(e),"Enter"===e.key&&(e.preventDefault(),g()),"Escape"===e.key&&(e.preventDefault(),h(!1),m?.())},onBlur:g,className:"h-7 w-full min-w-0 rounded-sm border border-accent/60 bg-bg px-1.5 text-[13px] text-txt outline-hidden placeholder:text-muted"}):(0,i.jsx)("button",{type:"button","aria-label":e,draggable:!1,onClick:e=>{c(e),f(t??""),h(!0)},onKeyDown:c,className:(0,s.cn)(u,l),children:n})}],65112);let p={P0:"bg-danger/12 text-danger",P1:"bg-amber/12 text-amber",P2:"bg-surface2 text-txt",P3:"bg-surface2 text-muted"};function h({priority:e,className:t}){return(0,i.jsx)("span",{className:(0,s.cn)("inline-flex h-4 shrink-0 items-center rounded-sm px-1 font-mono text-[10px] font-medium leading-none",p[e],t),children:e})}let x=[...l.PRIORITIES.map(e=>({value:e,label:e,node:(0,i.jsx)(h,{priority:e})})),{value:"",label:"No priority",node:(0,i.jsx)("span",{className:"text-muted",children:"No priority"})}];e.s(["PriorityBadge",0,h,"PriorityField",0,function({label:e,value:t,onChange:a,empty:n}){return(0,i.jsx)(m,{label:e,value:t??"",options:x,onChange:e=>a(e||null),children:t?(0,i.jsx)(h,{priority:t}):n??(0,i.jsx)("span",{className:"text-muted",children:"—"})})}],775549)},246978,e=>{"use strict";var t=e.i(83790);let a={name:"folder-input",size:24,node:[["path",{d:"M2 9V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-1",key:"fm4g5t"}],["path",{d:"M2 13h10",key:"pgb2dq"}],["path",{d:"m9 16 3-3-3-3",key:"6m91ic"}]]};a.node;let n=(0,t.default)(a);e.s(["FolderInput",0,n],246978)},875581,107308,487486,e=>{"use strict";var t=e.i(83790);let a={name:"folder",size:24,node:[["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"}]]};a.node;let n=(0,t.default)(a);e.s(["Folder",0,n],875581);var i=e.i(180338),s=e.i(543836),l=e.i(264145),r=e.i(315671),o=e.i(44532),d=e.i(166100),c=e.i(978238),u=e.i(997611),m=e.i(432567),p=e.i(72345),h=Object.defineProperty,x=(e,t)=>h(e,"name",{value:t,configurable:!0}),f="Collapsible",[g,y]=(0,l.createContextScope)(f),[v,b]=g(f),k=i.forwardRef(x(function(e,t){let{__scopeCollapsible:a,open:n,defaultOpen:s,disabled:l,onOpenChange:o,...d}=e,[u,h]=(0,r.useControllableState)({prop:n,defaultProp:s??!1,onChange:o,caller:f});return(0,p.jsx)(v,{scope:a,disabled:l,contentId:(0,m.useId)(),open:u,onOpenToggle:i.useCallback(()=>h(e=>!e),[h]),children:(0,p.jsx)(c.Primitive.div,{"data-state":C(u),"data-disabled":l?"":void 0,...d,ref:t})})},"Collapsible")),j=i.forwardRef(x(function(e,t){let{__scopeCollapsible:a,...n}=e,i=b("CollapsibleTrigger",a);return(0,p.jsx)(c.Primitive.button,{type:"button","aria-controls":i.open?i.contentId:void 0,"aria-expanded":i.open||!1,"data-state":C(i.open),"data-disabled":i.disabled?"":void 0,disabled:i.disabled,...n,ref:t,onClick:(0,s.composeEventHandlers)(e.onClick,i.onOpenToggle)})},"CollapsibleTrigger")),w="CollapsibleContent",M=i.forwardRef(x(function(e,t){let{forceMount:a,...n}=e,i=b(w,e.__scopeCollapsible);return(0,p.jsx)(u.Presence,{present:a||i.open,children:({present:e})=>(0,p.jsx)(z,{...n,ref:t,present:e})})},"CollapsibleContent")),z=i.forwardRef(x(function(e,t){let{__scopeCollapsible:a,present:n,children:s,...l}=e,r=b(w,a),[u,m]=i.useState(n),h=i.useRef(null),x=(0,d.useComposedRefs)(t,h),f=i.useRef(0),g=f.current,y=i.useRef(0),v=y.current,k=r.open||u,j=i.useRef(k),M=i.useRef(void 0);return i.useEffect(()=>{let e=requestAnimationFrame(()=>j.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,o.useLayoutEffect)(()=>{let e=h.current;if(e){M.current=M.current||{transitionDuration:e.style.transitionDuration,animationName:e.style.animationName},e.style.transitionDuration="0s",e.style.animationName="none";let t=e.getBoundingClientRect();f.current=t.height,y.current=t.width,j.current||(e.style.transitionDuration=M.current.transitionDuration,e.style.animationName=M.current.animationName),m(n)}},[r.open,n]),(0,p.jsx)(c.Primitive.div,{"data-state":C(r.open),"data-disabled":r.disabled?"":void 0,id:r.contentId,hidden:!k,...l,ref:x,style:{"--radix-collapsible-content-height":g?`${g}px`:void 0,"--radix-collapsible-content-width":v?`${v}px`:void 0,...e.style},children:k&&s})},"CollapsibleContentImpl"));function C(e){return e?"open":"closed"}x(C,"getState"),e.s(["Collapsible",0,k,"CollapsibleContent",0,M,"CollapsibleTrigger",0,j],107308);var N=e.i(294237),P=e.i(975157);let D=(0,N.cva)("inline-flex items-center rounded-full border border-border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-hidden focus:ring-2 focus:ring-accent focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-accent text-accent-fg hover:bg-accent/80",secondary:"border-transparent bg-surface2 text-txt hover:bg-surface2/80",destructive:"border-transparent bg-danger text-destructive-foreground hover:bg-danger/80",outline:"text-txt"}},defaultVariants:{variant:"default"}});e.s(["Badge",0,function({className:e,variant:t,...a}){return(0,p.jsx)("div",{className:(0,P.cn)(D({variant:t}),e),...a})}],487486)},880790,e=>{"use strict";var t=e.i(83790);let a={name:"list-checks",size:24,node:[["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"}]]};a.node;let n=(0,t.default)(a);e.s(["ListChecks",0,n],880790)},226230,e=>{"use strict";var t=e.i(83790);let a={name:"list-filter",size:24,node:[["path",{d:"M2 5h20",key:"1fs1ex"}],["path",{d:"M6 12h12",key:"8npq4p"}],["path",{d:"M9 19h6",key:"456am0"}]]};a.node;let n=(0,t.default)(a);e.s(["ListFilter",0,n],226230)},475850,e=>{"use strict";var t=e.i(83790);let a={name:"message-square",size:24,node:[["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"}]]};a.node;let n=(0,t.default)(a);e.s(["MessageSquare",0,n],475850)},818748,e=>{"use strict";var t=e.i(83790);let a={name:"minus",size:24,node:[["path",{d:"M5 12h14",key:"1ays0h"}]]};a.node;let n=(0,t.default)(a);e.s(["Minus",0,n],818748)},424991,e=>{"use strict";var t=e.i(83790);let a={name:"pencil",size:24,node:[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]};a.node;let n=(0,t.default)(a);e.s(["Pencil",0,n],424991)},496699,e=>{"use strict";var t=e.i(83790);let a={name:"refresh-cw",size:24,node:[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]};a.node;let n=(0,t.default)(a);e.s(["RefreshCw",0,n],496699)},434864,e=>{"use strict";var t=e.i(83790);let a={name:"type",size:24,node:[["path",{d:"M12 4v16",key:"1654pz"}],["path",{d:"M4 7V5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2",key:"e0r10z"}],["path",{d:"M9 20h6",key:"s66wpe"}]]};a.node;let n=(0,t.default)(a);e.s(["Type",0,n],434864)},172856,798103,394512,e=>{"use strict";var t=e.i(83790);let a={name:"users",size:24,node:[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]};a.node;let n=(0,t.default)(a);e.s(["Users",0,n],172856);let i={name:"code-xml",size:24,node:[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]],aliases:["code-2"]};i.node;let s=(0,t.default)(i);e.s(["Code2",0,s],798103);let l={name:"list",size:24,node:[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]]};l.node;let r=(0,t.default)(l);e.s(["List",0,r],394512)},169155,e=>{e.v(t=>Promise.all(["static/chunks/09_ppmd5llmj7.js","static/chunks/0ui2glzbpp23i.js"].map(t=>e.l(t))).then(()=>t(518762)))},685361,e=>{e.v(t=>Promise.all(["static/chunks/3f6_nfqj52vj9.js","static/chunks/0ui2glzbpp23i.js"].map(t=>e.l(t))).then(()=>t(304544)))},892171,e=>{e.v(t=>Promise.all(["static/chunks/15urlbk7lut04.js","static/chunks/0ui2glzbpp23i.js"].map(t=>e.l(t))).then(()=>t(714931)))},329090,e=>{"use strict";var t=e.i(72345),a=e.i(343253),n=e.i(83790);let i={name:"file-pen",size:24,node:[["path",{d:"M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34",key:"o6klzx"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z",key:"zhnas1"}]],aliases:["file-edit"]};i.node;let s=(0,n.default)(i);var l=e.i(760930);let r={name:"file-search",size:24,node:[["path",{d:"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",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["circle",{cx:"11.5",cy:"14.5",r:"2.5",key:"1bq0ko"}],["path",{d:"M13.3 16.3 15 18",key:"2quom7"}]]};r.node;let o=(0,n.default)(r);var d=e.i(406952);let c={name:"file-x",size:24,node:[["path",{d:"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",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m14.5 12.5-5 5",key:"b62r18"}],["path",{d:"m9.5 12.5 5 5",key:"1rk7el"}]]};c.node;let u=(0,n.default)(c);var m=e.i(880790),p=e.i(192871),h=e.i(15205),x=e.i(496699),f=e.i(678677),g=e.i(737152),y=e.i(464750);let v={task_updated:m.ListChecks,decision_logged:f.Scale,memory_updated:g.Brain,doc_read:o,doc_created:l.FilePlus,doc_updated:d.FileText,doc_deleted:u,doc_renamed:s,session_start:h.Plug,registry_rebuilt:x.RefreshCw,roadmap_updated:p.Map},b=e=>new Date(e).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",hourCycle:"h23"});e.s(["ActivityEventRow",0,function({event:e,showActor:n=!1}){let i=v[e.type]??d.FileText;return(0,t.jsxs)("div",{className:"grid grid-cols-[2.75rem_1.5rem_minmax(0,1fr)] items-start py-1.5",children:[(0,t.jsx)("time",{dateTime:e.timestamp,title:new Date(e.timestamp).toLocaleString(),className:"pt-px text-right font-mono text-[11px] leading-5 text-muted tabular-nums",children:b(e.timestamp)}),(0,t.jsx)("span",{className:"flex justify-center pt-[3px]",children:"task_updated"===e.type&&e.taskStatus?(0,t.jsx)(y.StatusIcon,{status:e.taskStatus}):(0,t.jsx)(i,{className:"size-3.5 text-muted","aria-hidden":!0})}),(0,t.jsxs)("div",{className:"flex min-w-0 flex-col gap-0.5 sm:flex-row sm:items-baseline sm:gap-2",children:[(0,t.jsx)("span",{className:"min-w-0 text-sm leading-5 text-txt sm:shrink-0 sm:max-w-[60%] sm:truncate",children:e.title}),e.detail&&(0,t.jsx)("span",{className:"min-w-0 truncate text-xs leading-5 text-muted",children:e.detail}),n&&"human"===e.actor&&(0,t.jsxs)("span",{className:"flex shrink-0 items-center gap-1 font-mono text-[10px] text-muted sm:ml-auto",children:[(0,t.jsx)(a.User,{className:"size-3","aria-hidden":!0}),"you"]})]})]})},"clock",0,b,"timeAgo",0,function(e){let t=(Date.now()-new Date(e).getTime())/1e3;return t<60?"just now":t<3600?`${Math.floor(t/60)}m ago`:t<86400?`${Math.floor(t/3600)}h ago`:`${Math.floor(t/86400)}d ago`}],329090)},813346,e=>{e.v(t=>Promise.all(["static/chunks/2x6eh3w-u8lk4.js"].map(t=>e.l(t))).then(()=>t(318103)))},508540,e=>{"use strict";var t=e.i(72345),a=e.i(975157);function n({properties:e,className:i,children:s}){let l=e.filter(e=>null!==e.value&&void 0!==e.value&&!1!==e.value);return 0!==l.length||s?(0,t.jsxs)("dl",{className:(0,a.cn)("grid grid-cols-[minmax(6.5rem,8.5rem)_minmax(0,1fr)] items-center gap-x-2 text-[13px]",i),children:[l.map(e=>(0,t.jsxs)("div",{className:"contents",children:[(0,t.jsxs)("dt",{className:"flex min-h-8 min-w-0 items-center gap-2 text-muted",children:[e.icon&&(0,t.jsx)(e.icon,{className:"size-3.5 shrink-0","aria-hidden":!0}),(0,t.jsx)("span",{className:"min-w-0 truncate",children:e.label})]}),(0,t.jsx)("dd",{className:"flex min-h-8 min-w-0 items-center gap-2 text-txt",children:e.value})]},e.id??String(e.label))),s&&(0,t.jsx)("div",{className:"col-span-2 flex min-h-8 items-center",children:s})]}):null}e.s(["ItemPanelHeader",0,function({kicker:e,title:i,menu:s,properties:l,className:r,children:o}){return(0,t.jsxs)("header",{"data-item-header":!0,className:(0,a.cn)("flex shrink-0 flex-col gap-2 border-b border-border px-5 pb-4 pt-4",r),children:[(0,t.jsxs)("div",{className:"flex min-h-7 items-center gap-2 pr-8 font-mono text-[11px] text-muted",children:[(0,t.jsx)("div",{className:"flex min-w-0 flex-1 items-center gap-1",children:e}),s]}),(0,t.jsx)("div",{className:"text-base font-semibold leading-snug text-txt",children:i}),(0,t.jsx)(n,{properties:l,className:"-my-0.5"}),o]})},"PropertyRows",0,n])}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,955787,e=>{"use strict";var t=e.i(72345),s=e.i(180338),a=e.i(910172),n=e.i(763371),r=e.i(155515),l=e.i(244267),i=e.i(605663),o=e.i(650312),d=e.i(83790);let c={name:"bookmark",size:24,node:[["path",{d:"M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z",key:"oz39mx"}]]};c.node;let u=(0,d.default)(c),x={name:"chart-gantt",size:24,node:[["path",{d:"M10 6h8",key:"zvc2xc"}],["path",{d:"M12 16h6",key:"yi5mkt"}],["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M8 11h7",key:"wz2hg0"}]]};x.node;let p=(0,d.default)(x);var m=e.i(709948),h=e.i(506534),b=e.i(424991);let f={name:"rotate-ccw",size:24,node:[["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"}]]};f.node;let g=(0,d.default)(f),j={name:"square-kanban",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M8 7v7",key:"1x2jlm"}],["path",{d:"M12 7v4",key:"xawao1"}],["path",{d:"M16 7v9",key:"1hp2iy"}]],aliases:["kanban-square"]};j.node;let v=(0,d.default)(j),N={name:"table-2",size:24,node:[["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}]]};N.node;let w=(0,d.default)(N);var k=e.i(458055),y=e.i(975157),S=e.i(755146);let M={board:v,table:w,epic:h.ListTree,timeline:p},C=["board","table","epic","timeline"],z="focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent",D=(0,y.cn)("relative inline-flex h-9 shrink-0 items-center gap-1.5 whitespace-nowrap border-b-2 border-transparent px-0.5 text-[13px] font-medium","transition-colors duration-(--duration-fast) ease-out-soft",z),T="rounded-sm border border-border2 bg-surface2 px-1 py-0.5 font-mono text-[10px] leading-none text-txt";function $({views:e,activeId:a,onSelect:n,onNew:l,onRename:i,onDelete:o,customizedIds:d,onRestore:c}){let x=[...e.filter(e=>C.includes(e.id)),...e.filter(e=>!C.includes(e.id))],[p,h]=(0,s.useState)(null),f=(0,s.useRef)(new Map),j=(0,s.useRef)(null);return(0,s.useEffect)(()=>{let e=j.current;if(!e)return;let t=f.current.get(e);t&&(t.focus(),j.current=null)}),(0,t.jsxs)("div",{role:"group","aria-label":"Views",className:"flex items-center gap-4 overflow-x-auto border-b border-border [scrollbar-width:none]",children:[x.map(e=>{let s=C.includes(e.id),r=s?M[e.kind]:u,l=e.id===a;return p===e.id?(0,t.jsx)(I,{initial:e.name,onDone:(t,s)=>{h(null),s&&(j.current=e.id),t&&t!==e.name&&i(e.id,t)}},e.id):(0,t.jsxs)("span",{className:"inline-flex shrink-0 items-center",children:[(0,t.jsxs)("button",{ref:t=>{t?f.current.set(e.id,t):f.current.delete(e.id)},type:"button","aria-pressed":l,title:s?void 0:`Saved view: ${e.name}`,onClick:()=>n(e.id),className:(0,y.cn)(D,l?"text-txt":"text-muted hover:text-txt"),children:[(0,t.jsx)(r,{"aria-hidden":!0,className:s?"size-[15px]":"size-3.5"}),e.name,l&&(0,t.jsx)("span",{"aria-hidden":!0,className:"absolute inset-x-0 -bottom-0.5 h-0.5 bg-accent [view-transition-name:board-view-tab]"})]}),l&&(!s||d.includes(e.id))&&(0,t.jsxs)(S.DropdownMenu,{children:[(0,t.jsx)(S.DropdownMenuTrigger,{"aria-label":`View options for ${e.name}`,className:(0,y.cn)("ml-0.5 inline-flex size-6 items-center justify-center rounded-sm text-muted hover:bg-surface2 hover:text-txt",z),children:(0,t.jsx)(m.ChevronDown,{"aria-hidden":!0,className:"size-3.5"})}),(0,t.jsx)(S.DropdownMenuContent,{align:"start",children:s?(0,t.jsxs)(S.DropdownMenuItem,{onSelect:()=>{j.current=e.id,c(e.id)},children:[(0,t.jsx)(g,{"aria-hidden":!0,className:"size-3.5"}),"Restore default"]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(S.DropdownMenuItem,{onSelect:()=>h(e.id),children:[(0,t.jsx)(b.Pencil,{"aria-hidden":!0,className:"size-3.5"}),"Rename"]}),(0,t.jsxs)(S.DropdownMenuItem,{onSelect:()=>{o(e.id)&&(j.current=e.kind)},className:"text-danger focus:text-danger",children:[(0,t.jsx)(k.Trash2,{"aria-hidden":!0,className:"size-3.5"}),"Delete view"]})]})})]})]},e.id)}),(0,t.jsx)("button",{type:"button","aria-label":"New view",title:"New view",onClick:l,className:(0,y.cn)(D,"border-transparent text-muted hover:text-txt"),children:(0,t.jsx)(r.Plus,{"aria-hidden":!0,className:"size-[15px]"})}),(0,t.jsx)("span",{className:"grow"}),(0,t.jsxs)("span",{className:"hidden shrink-0 items-center gap-1.5 pb-1.5 text-[11px] text-muted sm:flex",children:[(0,t.jsx)("kbd",{className:T,children:"v"}),"next view",(0,t.jsx)("kbd",{className:(0,y.cn)(T,"ml-1.5"),children:"1"}),"–",(0,t.jsx)("kbd",{className:T,children:"4"})]})]})}function I({initial:e,onDone:a}){let[n,r]=(0,s.useState)(e),l=(0,s.useRef)(null),i=(0,s.useRef)(!1),o=(e,t=!1)=>{i.current||(i.current=!0,a(e.trim(),t))};return(0,s.useEffect)(()=>{let e=setTimeout(()=>l.current?.select(),0);return()=>clearTimeout(e)},[]),(0,t.jsx)("input",{ref:l,"aria-label":"View name",value:n,maxLength:60,onChange:e=>r(e.target.value),onBlur:()=>o(n),onKeyDown:t=>{"Enter"===t.key&&o(n,!0),"Escape"===t.key&&(t.stopPropagation(),o(e,!0))},className:"my-1 h-7 w-40 shrink-0 rounded-md border border-accent bg-bg px-2 text-[13px] text-txt outline-hidden"})}var E=e.i(169777),O=e.i(270379);let R={name:"arrow-up-down",size:24,node:[["path",{d:"m21 16-4 4-4-4",key:"f6ql7i"}],["path",{d:"M17 20V4",key:"1ejh1v"}],["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}]]};R.node;let L=(0,d.default)(R);var F=e.i(226230);let A={name:"rows-3",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M21 9H3",key:"1338ky"}],["path",{d:"M21 15H3",key:"9uk58r"}]],aliases:["panels-top-bottom"]};A.node;let P=(0,d.default)(A);var q=e.i(161863);let _={name:"sliders-horizontal",size:24,node:[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]]};_.node;let U=(0,d.default)(_);var W=e.i(765470),V=e.i(464750),G=e.i(574990);let H=[{prop:"status",label:"Status"},{prop:"epic",label:"Epic"},{prop:"size",label:"Size"},{prop:"due",label:"Due"},{prop:"deps",label:"Depends on"},{prop:"tests",label:"Tests"},{prop:"agent",label:"Agent"},{prop:"ready",label:"Ready"},{prop:"owner",label:"Owner"}],K=Object.fromEntries(H.map(e=>[e.prop,e.label])),B={status:{is:"is","is-not":"is not"},epic:{is:"is","is-not":"is not"},size:{is:"is","is-not":"is not"},due:{before:"is before",after:"is after","is-set":"is set","not-set":"is not set"},deps:{"is-set":"anything","not-set":"nothing"},tests:{"is-set":"reported","not-set":"not reported"},agent:{"is-set":"is active","not-set":"is not active"},ready:{"is-set":"yes","not-set":"no"},owner:{is:"is","is-not":"is not"}},X=["status","epic","size","owner"],J={human:"Human",ai:"AI agent",none:"No owner"},Y=["XS","S","M","L","XL"],Z=[{prop:"status",label:"Status"},{prop:"id",label:"ID"},{prop:"epic",label:"Epic"},{prop:"size",label:"Size"},{prop:"due",label:"Due"},{prop:"title",label:"Title"}],Q=[{value:"status",label:"Status"},{value:"epic",label:"Epic"},{value:"size",label:"Size"},{value:"owner",label:"Owner"},{value:"none",label:"None"}],ee=[{value:"epic",label:"Epic"},{value:"size",label:"Size"},{value:"none",label:"None"}],et=[{key:"status",label:"Status"},{key:"epic",label:"Epic"},{key:"size",label:"Size"},{key:"due",label:"Due"},{key:"deps",label:"Depends on"},{key:"tests",label:"Tests"},{key:"agent",label:"Agent"},{key:"owner",label:"Owner"}];function es(e,t){switch(e){case"status":return{prop:e,op:"is-not",value:["done"]};case"epic":return{prop:e,op:"is",value:[(t.find(e=>e.open)??t[0])?.id??"none"]};case"size":return{prop:e,op:"is",value:["M"]};case"due":let s;return{prop:e,op:"before",value:[(s=new Date,`${s.getFullYear()}-${String(s.getMonth()+1).padStart(2,"0")}-${String(s.getDate()).padStart(2,"0")}`)]};case"owner":return{prop:e,op:"is",value:["ai"]};default:return{prop:e,op:"is-set",value:[]}}}let ea="focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-1 focus-visible:ring-offset-bg",en=(0,y.cn)("inline-flex h-8 items-center gap-1.5 whitespace-nowrap rounded-md border border-transparent px-2.5 text-xs font-medium text-muted","transition-colors duration-(--duration-fast) ease-out-soft hover:bg-surface2 hover:text-txt",ea),er="border-border2 bg-surface2 text-txt",el=(0,y.cn)("h-7.5 min-w-0 rounded-md border border-border bg-bg px-2 text-[13px] text-txt",ea),ei="rounded-sm border border-border2 bg-surface2 px-1 py-0.5 font-mono text-[10px] leading-none text-txt",eo=(0,y.cn)("inline-flex size-7 shrink-0 items-center justify-center rounded-md text-muted hover:bg-surface2 hover:text-txt disabled:opacity-40 disabled:hover:bg-transparent",ea);function ed({open:e,onOpenChange:a,label:n,trigger:r,triggerClassName:l,panelClassName:i,anchorClassName:o,children:d}){let c=(0,s.useRef)(null),u=(0,s.useRef)(null),x=(0,s.useRef)(null),p=(0,s.useRef)(a),m=(0,s.useId)();return(0,s.useEffect)(()=>{p.current=a}),(0,s.useEffect)(()=>{if(!e)return;x.current?.querySelector("button, input, select")?.focus();let t=e=>{c.current?.contains(e.target)||p.current(!1)};return document.addEventListener("pointerdown",t),()=>document.removeEventListener("pointerdown",t)},[e]),(0,t.jsxs)("div",{ref:c,className:(0,y.cn)("max-sm:flex max-sm:flex-1",o??"sm:relative"),children:[(0,t.jsx)("button",{ref:u,type:"button","aria-expanded":e,"aria-haspopup":"dialog","aria-controls":e?m:void 0,onClick:()=>a(!e),className:l,children:r}),e&&(0,t.jsx)("div",{ref:x,id:m,role:"dialog","aria-label":n,onKeyDown:e=>{"Escape"===e.key&&(e.stopPropagation(),a(!1),u.current?.focus())},className:(0,y.cn)("absolute top-full z-30 mt-1 rounded-lg border border-border2 bg-surface p-3 text-txt shadow-lg","origin-top-right animate-in fade-in-0 zoom-in-[0.98] slide-in-from-top-1 duration-(--duration-fast) ease-out-soft",i),children:d})]})}function ec({state:e,onChange:a,epics:n,dirty:l,activeIsBuiltIn:i,onSave:o,onSaveAs:d,onReset:c,searchInputId:u,filterOpen:x,onFilterOpenChange:p}){let[m,h]=(0,s.useState)(!1),b=t=>a({...e,...t}),[f,g]=(0,s.useState)(e.q),[j,v]=(0,s.useState)(e.q),[N,w]=(0,s.useState)(null);e.q!==j&&(v(e.q),e.q===N?w(null):null===N&&g(e.q));let k=t=>{g(t),w(t===e.q?null:t),b({q:t})},M="timeline"===e.kind,C="board"===e.kind,z=M?Q.filter(e=>"epic"===e.value||"none"===e.value):Q,D=Q.find(t=>t.value===e.group)?.label??"None",T=ee.find(t=>t.value===e.subGroup)?.label??"None",$="max-sm:h-9 max-sm:flex-1 max-sm:justify-center max-sm:border-border";return(0,t.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,t.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center sm:gap-1",children:[(0,t.jsxs)("label",{className:"flex h-8 w-full items-center gap-2 rounded-md border border-border bg-bg px-2.5 text-[13px] text-muted focus-within:border-accent sm:w-65 max-sm:h-9",children:[(0,t.jsx)(q.Search,{"aria-hidden":!0,className:"size-3.5 shrink-0"}),(0,t.jsx)("span",{className:"sr-only",children:"Filter by title or ID"}),(0,t.jsx)("input",{id:u,type:"search",value:f,placeholder:"Filter by title or ID…",onChange:e=>k(e.target.value),onKeyDown:e=>{"Escape"===e.key&&(f?k(""):e.currentTarget.blur())},className:"min-w-0 grow bg-transparent text-txt outline-hidden placeholder:text-muted [&::-webkit-search-cancel-button]:hidden"}),(0,t.jsx)("kbd",{className:(0,y.cn)(ei,"max-sm:hidden"),children:"/"})]}),(0,t.jsx)("span",{className:"grow max-sm:hidden"}),(0,t.jsxs)("div",{className:"relative flex gap-1.5 max-sm:w-full sm:static sm:gap-1",children:[(0,t.jsx)(ed,{open:x,onOpenChange:p,label:"Filter",triggerClassName:(0,y.cn)(en,$,(x||e.filters.length>0)&&er),panelClassName:"inset-x-0 sm:left-auto sm:right-0 sm:w-140",trigger:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(F.ListFilter,{"aria-hidden":!0,className:"size-3.5"}),"Filter",e.filters.length>0&&(0,t.jsx)("span",{className:"font-mono text-txt",children:e.filters.length}),(0,t.jsx)("kbd",{className:(0,y.cn)(ei,"ml-0.5 max-sm:hidden"),children:"f"})]}),children:(0,t.jsx)(em,{filters:e.filters,epics:n,onChange:e=>b({filters:e})})}),(0,t.jsx)(ed,{open:m,onOpenChange:h,label:"Sort",triggerClassName:(0,y.cn)(en,$,(m||e.sorts.length>0)&&er),panelClassName:"inset-x-0 sm:left-auto sm:right-0 sm:w-95",trigger:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(L,{"aria-hidden":!0,className:"size-3.5"}),"Sort",e.sorts.length>0&&(0,t.jsx)("span",{className:"font-mono text-txt",children:e.sorts.length})]}),children:(0,t.jsx)(ef,{sorts:e.sorts,onChange:e=>b({sorts:e})})}),(0,t.jsxs)(S.DropdownMenu,{children:[(0,t.jsxs)(S.DropdownMenuTrigger,{className:(0,y.cn)(en,$,C&&"max-md:hidden"),children:[(0,t.jsx)(P,{"aria-hidden":!0,className:"size-3.5"}),(0,t.jsx)("span",{className:"max-sm:hidden",children:"Group"}),C?(0,t.jsxs)("span",{className:"text-txt",children:["Status","none"!==e.subGroup&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"px-1 text-muted",children:"›"}),T]})]}):(0,t.jsx)("span",{className:"text-txt",children:D})]}),(0,t.jsx)(S.DropdownMenuContent,{align:"end",children:C?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(S.DropdownMenuLabel,{className:"text-xs text-muted",children:"Swimlanes"}),(0,t.jsx)(S.DropdownMenuRadioGroup,{value:e.subGroup,onValueChange:e=>b({subGroup:e}),children:ee.map(e=>(0,t.jsx)(S.DropdownMenuRadioItem,{value:e.value,children:e.label},e.value))})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(S.DropdownMenuLabel,{className:"text-xs text-muted",children:"Group by"}),(0,t.jsx)(S.DropdownMenuRadioGroup,{value:e.group,onValueChange:e=>b({group:e}),children:z.map(e=>(0,t.jsx)(S.DropdownMenuRadioItem,{value:e.value,children:e.label},e.value))})]})})]}),!M&&(0,t.jsxs)(S.DropdownMenu,{children:[(0,t.jsxs)(S.DropdownMenuTrigger,{className:(0,y.cn)(en,"max-sm:hidden"),children:[(0,t.jsx)(U,{"aria-hidden":!0,className:"size-3.5"}),"Properties"]}),(0,t.jsxs)(S.DropdownMenuContent,{align:"end",children:[(0,t.jsx)(S.DropdownMenuLabel,{className:"text-xs text-muted",children:"Show"}),et.map(s=>(0,t.jsx)(S.DropdownMenuCheckboxItem,{checked:e.properties.includes(s.key),onSelect:e=>e.preventDefault(),onCheckedChange:t=>b({properties:et.map(e=>e.key).filter(a=>a===s.key?!0===t:e.properties.includes(a))}),children:s.label},s.key))]})]})]})]}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[e.filters.map((s,a)=>(0,t.jsx)(ex,{rule:s,onRemove:()=>b({filters:e.filters.filter((e,t)=>t!==a)})},a)),(0,t.jsxs)("button",{type:"button",onClick:()=>p(!0),className:(0,y.cn)(en,"h-6.5 px-2"),children:[(0,t.jsx)(r.Plus,{"aria-hidden":!0,className:"size-3.25"}),"Add filter"]}),(0,t.jsx)("span",{className:"grow"}),l&&(0,t.jsx)(ep,{activeIsBuiltIn:i,onSave:o,onSaveAs:d,onReset:c})]})]})}function eu(e){return"is"===e.op&&e.value.length>1?"is any of":B[e.prop][e.op]??e.op}function ex({rule:e,onRemove:s}){var a;let n="is-set"!==e.op&&"not-set"!==e.op,r=(a=(0,V.useStatusLabel)(),"status"===e.prop?{text:e.value.map(a).join(", "),mono:!1}:"epic"===e.prop?{text:e.value.map(e=>"none"===e?"No epic":e).join(", "),mono:!e.value.includes("none")}:"owner"===e.prop?{text:e.value.map(e=>J[e]??e).join(", "),mono:!1}:{text:e.value.join(", "),mono:!0}),l=`${K[e.prop]} ${eu(e)}${n?` ${r.text}`:""}`;return(0,t.jsxs)("span",{className:"inline-flex h-6.5 max-w-full items-center gap-1.5 rounded-sm border border-border2 bg-surface pl-2.25 pr-1 text-xs text-txt",children:[(0,t.jsxs)("span",{className:"truncate",children:[(0,t.jsx)("b",{className:"font-medium text-muted",children:K[e.prop]})," ",eu(e),n&&(0,t.jsxs)(t.Fragment,{children:[" ",(0,t.jsx)("span",{className:(0,y.cn)("text-txt",r.mono&&"font-mono text-[11px]"),children:r.text||"—"})]})]}),(0,t.jsx)("button",{type:"button","aria-label":`Remove filter: ${l}`,onClick:s,className:(0,y.cn)("inline-flex rounded-xs p-0.75 text-muted hover:text-txt",ea),children:(0,t.jsx)(W.X,{"aria-hidden":!0,className:"size-3"})})]})}function ep({activeIsBuiltIn:e,onSave:a,onSaveAs:n,onReset:r}){let[l,i]=(0,s.useState)(!1),[o,d]=(0,s.useState)("");return l?(0,t.jsxs)("form",{className:"flex items-center gap-1.5",onSubmit:e=>{let t;e.preventDefault(),(t=o.trim())&&(n(t),i(!1),d(""))},children:[(0,t.jsx)("input",{autoFocus:!0,"aria-label":"New view name",placeholder:"View name",value:o,maxLength:60,onChange:e=>d(e.target.value),onKeyDown:e=>{"Escape"===e.key&&(e.stopPropagation(),i(!1))},className:"h-7 w-44 rounded-md border border-accent bg-bg px-2 text-[13px] text-txt outline-hidden placeholder:text-muted"}),(0,t.jsx)("button",{type:"submit",disabled:!o.trim(),className:(0,y.cn)(en,er,"h-7 disabled:opacity-40"),children:"Save"}),(0,t.jsx)("button",{type:"button",onClick:()=>i(!1),className:(0,y.cn)(en,"h-7"),children:"Cancel"})]}):(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[(0,t.jsx)("span",{className:"mr-1 text-xs text-muted",children:"Unsaved changes"}),(0,t.jsx)("button",{type:"button",onClick:r,className:(0,y.cn)(en,"text-txt"),children:"Reset"}),(0,t.jsx)("button",{type:"button",onClick:()=>i(!0),className:(0,y.cn)(en,"text-txt"),children:e?"Save as new view":"Save as new"}),(0,t.jsxs)("button",{type:"button",onClick:a,className:(0,y.cn)(en,er),children:[(0,t.jsx)(u,{"aria-hidden":!0,className:"size-3.25"}),"Save view"]})]})}function em({filters:e,epics:a,onChange:n}){let l=(t,s)=>n(e.map((e,a)=>a===t?s:e)),i=(0,s.useId)();return(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{id:i,className:"mb-2.5 ml-0.5 text-xs font-semibold",children:"Show tasks where"}),0===e.length&&(0,t.jsx)("p",{className:"mb-1 ml-0.5 text-xs text-muted",children:"No filters yet. Every task shows except cancelled ones."}),(0,t.jsx)("ul",{"aria-labelledby":i,className:"flex flex-col gap-1.5",children:e.map((s,r)=>{let i=Object.entries(B[s.prop]),o=r+1;return(0,t.jsxs)("li",{className:"flex flex-wrap items-center gap-1.5 text-xs text-muted sm:grid sm:grid-cols-[48px_120px_100px_minmax(0,1fr)_28px]",children:[(0,t.jsx)("span",{className:"w-10 pl-1 sm:w-auto",children:0===r?"Where":"and"}),(0,t.jsx)("select",{"aria-label":`Rule ${o} property`,value:s.prop,onChange:e=>l(r,es(e.target.value,a)),className:(0,y.cn)(el,"w-32.5 sm:w-auto"),children:H.map(e=>(0,t.jsx)("option",{value:e.prop,children:e.label},e.prop))}),(0,t.jsx)("select",{"aria-label":`Rule ${o} condition`,value:s.op,onChange:e=>{let t=e.target.value,n="is-set"===t||"not-set"===t?[]:s.value.length?s.value:es(s.prop,a).value;l(r,{...s,op:t,value:n})},className:(0,y.cn)(el,"w-27.5 sm:w-auto"),children:i.map(([e,s])=>(0,t.jsx)("option",{value:e,children:s},e))}),(0,t.jsx)("span",{className:"min-w-0 grow basis-40 sm:basis-auto",children:(0,t.jsx)(eh,{rule:s,n:o,epics:a,onChange:e=>l(r,{...s,value:e})})}),(0,t.jsx)("button",{type:"button","aria-label":`Remove rule ${o}`,onClick:()=>n(e.filter((e,t)=>t!==r)),className:eo,children:(0,t.jsx)(W.X,{"aria-hidden":!0,className:"size-3.5"})})]},r)})}),(0,t.jsxs)("div",{className:"mt-2.5 flex flex-wrap items-center gap-1.5 border-t border-border pt-2.5",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>n([...e,es("status",a)]),className:en,children:[(0,t.jsx)(r.Plus,{"aria-hidden":!0,className:"size-3.5"}),"Add rule"]}),(0,t.jsx)("span",{className:"grow"}),(0,t.jsx)("span",{className:"text-[11px] text-muted max-sm:hidden",children:"Rules combine with and"})]})]})}function eh({rule:e,n:s,epics:a,onChange:n}){return"is-set"===e.op||"not-set"===e.op?null:"due"===e.prop?(0,t.jsx)("input",{type:"date","aria-label":`Rule ${s} date`,value:e.value[0]??"",onChange:e=>n(e.target.value?[e.target.value]:[]),className:(0,y.cn)(el,"w-full scheme-dark")}):X.includes(e.prop)?(0,t.jsx)(eb,{rule:e,n:s,epics:a,onChange:n}):null}function eb({rule:e,n:a,epics:n,onChange:r}){let[l,i]=(0,s.useState)(!1),o=(0,G.useStatusDefs)(),d=(0,V.useStatusLabel)(),c="status"===e.prop?o.map(e=>({value:e.id,node:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(V.StatusIcon,{status:e.id}),e.label]})})):"epic"===e.prop?[{value:"none",node:(0,t.jsx)("span",{className:"text-muted",children:"No epic"})},...n.map(e=>({value:e.id,node:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"font-mono text-[11px] text-muted",children:e.id}),(0,t.jsx)("span",{className:"truncate",children:e.title})]})}))]:"owner"===e.prop?Object.entries(J).map(([e,s])=>({value:e,node:(0,t.jsx)("span",{children:s})})):Y.map(e=>({value:e,node:(0,t.jsx)("span",{className:"font-mono",children:e})})),u=e.value[0],x=u?"status"===e.prop?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(V.StatusIcon,{status:u}),(0,t.jsx)("span",{className:"truncate",children:d(u)})]}):"owner"===e.prop?(0,t.jsx)("span",{className:"truncate",children:J[u]??u}):"epic"===e.prop&&"none"!==u?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"font-mono text-[11px] text-muted",children:u}),(0,t.jsx)("span",{className:"truncate",children:n.find(e=>e.id===u)?.title??""})]}):(0,t.jsx)("span",{className:(0,y.cn)("truncate","size"===e.prop&&"font-mono"),children:"none"===u?"No epic":u}):(0,t.jsx)("span",{className:"text-muted",children:"Choose…"});return(0,t.jsx)(ed,{open:l,onOpenChange:i,label:`${K[e.prop]} values`,anchorClassName:"relative",triggerClassName:(0,y.cn)(el,"flex w-full items-center gap-1.5 text-left"),panelClassName:"left-0 z-40 max-h-64 w-64 overflow-y-auto p-1",trigger:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("span",{className:"sr-only",children:["Rule ",a," values: "]}),x,e.value.length>1&&(0,t.jsxs)("span",{className:"font-mono text-[11px] text-muted",children:["+",e.value.length-1]}),(0,t.jsx)("span",{className:"grow"}),(0,t.jsx)(m.ChevronDown,{"aria-hidden":!0,className:"size-3.5 shrink-0 text-muted"})]}),children:(0,t.jsx)("ul",{className:"flex flex-col",children:c.map(s=>(0,t.jsx)("li",{children:(0,t.jsxs)("label",{className:"flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-[13px] text-txt hover:bg-surface2",children:[(0,t.jsx)("input",{type:"checkbox",checked:e.value.includes(s.value),onChange:t=>r(t.target.checked?[...e.value,s.value]:e.value.filter(e=>e!==s.value)),className:"size-3.5 accent-accent"}),(0,t.jsx)("span",{className:"flex min-w-0 items-center gap-1.5",children:s.node})]})},s.value))})})}function ef({sorts:e,onChange:s}){let a=(t,a)=>s(e.map((e,s)=>s===t?a:e)),n=(t,a)=>{let n=[...e];[n[t],n[t+a]]=[n[t+a],n[t]],s(n)},l=Z.filter(t=>!e.some(e=>e.prop===t.prop));return(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-2.5 ml-0.5 text-xs font-semibold",children:"Sort by"}),0===e.length&&(0,t.jsx)("p",{className:"mb-1 ml-0.5 text-xs text-muted",children:"Default order: by ID."}),(0,t.jsx)("ol",{className:"flex flex-col gap-1.5",children:e.map((r,l)=>{let i=l+1,o=Z.find(e=>e.prop===r.prop)?.label??r.prop;return(0,t.jsxs)("li",{className:"flex items-center gap-1",children:[(0,t.jsx)("button",{type:"button","aria-label":`Move ${o} sort up`,disabled:0===l,onClick:()=>n(l,-1),className:eo,children:(0,t.jsx)(O.ArrowUp,{"aria-hidden":!0,className:"size-3.5"})}),(0,t.jsx)("button",{type:"button","aria-label":`Move ${o} sort down`,disabled:l===e.length-1,onClick:()=>n(l,1),className:eo,children:(0,t.jsx)(E.ArrowDown,{"aria-hidden":!0,className:"size-3.5"})}),(0,t.jsx)("select",{"aria-label":`Sort ${i} property`,value:r.prop,onChange:e=>a(l,{...r,prop:e.target.value}),className:(0,y.cn)(el,"ml-0.5 grow"),children:Z.filter(t=>t.prop===r.prop||!e.some(e=>e.prop===t.prop)).map(e=>(0,t.jsx)("option",{value:e.prop,children:e.label},e.prop))}),(0,t.jsxs)("select",{"aria-label":`Sort ${i} direction`,value:r.dir,onChange:e=>a(l,{...r,dir:e.target.value}),className:(0,y.cn)(el,"w-37.5"),children:[(0,t.jsx)("option",{value:"asc",children:"status"===r.prop?"Workflow order":"Ascending"}),(0,t.jsx)("option",{value:"desc",children:"status"===r.prop?"Reverse workflow":"Descending"})]}),(0,t.jsx)("button",{type:"button","aria-label":`Remove ${o} sort`,onClick:()=>s(e.filter((e,t)=>t!==l)),className:eo,children:(0,t.jsx)(W.X,{"aria-hidden":!0,className:"size-3.5"})})]},r.prop)})}),(0,t.jsx)("div",{className:"mt-2.5 border-t border-border pt-2.5",children:(0,t.jsxs)("button",{type:"button",disabled:!l.length,onClick:()=>s([...e,{prop:l[0].prop,dir:"asc"}]),className:(0,y.cn)(en,"disabled:opacity-40"),children:[(0,t.jsx)(r.Plus,{"aria-hidden":!0,className:"size-3.5"}),"Add sort"]})}),(0,t.jsx)("p",{className:"mx-0.5 mt-2 text-[11px] leading-normal text-muted",children:"Workflow order: In progress → Review → Todo → Blocked → Done. Ties fall back to ID."})]})}var eg=e.i(675964),ej=e.i(694628),ev=e.i(138324);let eN={name:"corner-down-right",size:24,node:[["path",{d:"m15 10 5 5-5 5",key:"qqa56n"}],["path",{d:"M4 4v7a4 4 0 0 0 4 4h12",key:"z08zvw"}]]};eN.node;let ew=(0,d.default)(eN);var ek=e.i(690457),ey=e.i(666326),eS=e.i(248070);let eM={name:"panel-right-open",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}],["path",{d:"m10 15-3-3 3-3",key:"1pgupc"}]]};eM.node;let eC=(0,d.default)(eM);var ez=e.i(564849),eD=e.i(35032),eT=e.i(901778),e$=e.i(673635),eI=e.i(723528),eE=e.i(67874);let eO=["status","epic","size","due","deps","tests","agent","owner"];function eR({task:e,onOpen:a,properties:n=eO,selected:r=!1,onSelect:l}){let[i,d]=(0,s.useState)(!1),c=n.includes("epic")&&e.phase?(0,o.epicOf)(e.phase):null,u="todo"===e.status&&e.raw?(0,eE.latestReview)(e.raw):null,x=n.includes("size")?(0,o.sizeOf)(e):null,p="done"===e.status||"cancelled"===e.status,m=n.includes("deps")?e.dependsOn.match(/\bT\d+\b/g)??[]:[],h=n.includes("tests")?e.manualTests:null,b=u?.outcome==="changes requested";return(0,t.jsxs)("div",{draggable:!0,role:"button",tabIndex:0,"aria-label":`${e.id} ${e.title}`,"aria-pressed":l?r:void 0,onClick:e=>{l&&(e.shiftKey||e.metaKey||e.ctrlKey)?l():a()},onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),a())},onDragStart:t=>{t.dataTransfer.setData("taskId",e.id),t.dataTransfer.effectAllowed="move",d(!0)},onDragEnd:()=>d(!1),style:{viewTransitionName:`task-${e.file.replace(/[^a-zA-Z0-9_-]/g,"_")}`},className:(0,y.cn)("group cursor-pointer rounded-lg border border-border bg-surface px-3 py-2.5 text-left outline-hidden","transition-[border-color,background-color,opacity,box-shadow] duration-(--duration-fast)","hover:border-border2 hover:bg-surface2/50 focus-visible:border-accent/60 focus-visible:shadow-[0_0_0_3px_rgb(var(--rgb-accent)/0.15)]",i&&"cursor-grabbing opacity-50",r&&"border-accent bg-accent/5 hover:border-accent"),children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 font-mono text-[11px] text-muted",children:[(0,t.jsx)("span",{children:e.id}),n.includes("agent")&&(0,t.jsx)(eI.AgentDot,{attach:{kind:"task",id:e.id}}),n.includes("owner")&&e.owner&&(0,t.jsx)(eT.TaskOwnerField,{task:e,children:(0,t.jsx)(eD.OwnerChip,{owner:e.owner,className:"text-[10px] [&_svg]:size-3"})}),(0,t.jsx)("span",{className:"flex-1"}),n.includes("due")&&e.due&&!p&&(0,t.jsx)(eT.TaskDueField,{task:e,children:(0,t.jsx)("span",{title:"Due",children:e.due.slice(5)})}),x&&(0,t.jsx)(eT.TaskSizeField,{task:e,children:(0,t.jsx)("span",{title:e.size,className:"rounded-sm bg-surface2 px-1 text-[10px]",children:x})}),(0,t.jsx)(eL,{task:e,onOpen:a})]}),(0,t.jsx)("p",{className:(0,y.cn)("mt-1 line-clamp-2 text-[13px] font-medium leading-snug",p?"text-muted":"text-txt"),children:e.title}),(c||b||m.length>0||h)&&(0,t.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-x-2 gap-y-1.5",children:[c&&(0,t.jsxs)("span",{className:"inline-flex min-w-0 max-w-full items-center gap-1 text-[11px] text-muted",title:e.phase,children:[c.id&&(0,t.jsx)("span",{className:"font-mono text-[10px]",children:c.id}),(0,t.jsx)("span",{className:"truncate",children:c.title})]}),b&&(0,t.jsxs)("span",{title:u?.note,className:"inline-flex items-center gap-1 rounded-sm border border-amber/40 bg-amber/5 px-1.5 py-0.5 text-[10px] text-amber",children:[(0,t.jsx)(ek.CornerUpLeft,{className:"size-3","aria-hidden":!0})," changes requested"]}),m.length>0&&(0,t.jsxs)("span",{title:`Depends on ${m.join(", ")}`,className:"inline-flex items-center gap-1 font-mono text-[10px] text-muted",children:[(0,t.jsx)(ew,{className:"size-3","aria-label":"Depends on"}),m.join(", ")]}),h&&(0,t.jsxs)(ev.default,{href:`/manual-tests#${e.id}`,draggable:!1,onClick:e=>e.stopPropagation(),title:`Manual tests: ${h.done} of ${h.total} ticked`,className:(0,y.cn)("inline-flex items-center gap-1 rounded-sm border px-1.5 py-0.5 font-mono text-[10px] transition-colors hover:border-accent/50",h.done===h.total?"border-teal/30 bg-teal/5 text-teal":"border-border text-muted"),children:[(0,t.jsx)(ey.FlaskConical,{className:"size-3","aria-hidden":!0}),h.done,"/",h.total]})]})]})}function eL({task:e,onOpen:s}){let{rootParam:a}=(0,n.useApp)(),r=e=>e.stopPropagation();return(0,t.jsxs)(S.DropdownMenu,{children:[(0,t.jsx)(S.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button",draggable:!1,"aria-label":`Actions for ${e.id}`,onClick:r,onKeyDown:r,className:"-my-1 -mr-1 grid size-5 place-items-center rounded-sm text-muted opacity-0 transition-opacity hover:bg-surface2 hover:text-txt focus-visible:opacity-100 group-hover:opacity-100 data-[state=open]:opacity-100",children:(0,t.jsx)(eS.MoreHorizontal,{className:"size-3.5"})})}),(0,t.jsxs)(S.DropdownMenuContent,{align:"end",className:"w-40",onClick:r,onKeyDown:r,children:[(0,t.jsxs)(S.DropdownMenuItem,{onSelect:s,children:[(0,t.jsx)(eC,{})," Open"]}),(0,t.jsx)(S.DropdownMenuSeparator,{}),(0,t.jsxs)(S.DropdownMenuItem,{onSelect:()=>{(0,ez.deleteTaskWithUndo)(e,a).catch(e=>(0,e$.toast)(e.message))},className:"text-danger focus:text-danger",children:[(0,t.jsx)(k.Trash2,{})," Delete"]})]})]})}let eF=["in-progress","review","todo","blocked","paused","done"],eA={todo:"bg-border2","in-progress":"bg-amber",review:"bg-accent",blocked:"bg-danger",paused:"bg-muted/60",done:"bg-teal",cancelled:"bg-border"},eP=e=>"done"===e.status||"cancelled"===e.status,eq=(e,t)=>t.id.localeCompare(e.id,void 0,{numeric:!0}),e_=(e,t)=>e.filter(e=>(0,ej.displayStatus)(e)===t||"done"===t&&"cancelled"===e.status);function eU({tasks:e,state:a,onOpenTask:n,onMoveTask:r,selected:l,onToggleSelect:i}){let[d,c]=(0,s.useState)(!1),u=(0,G.useStatusDefs)(),x=(0,V.useStatusLabel)(),p=u.filter(e=>"cancelled"!==e.id).map(e=>e.id),h=[...u.filter(e=>"cancelled"!==e.id)].sort((e,t)=>eF.indexOf(e.category)-eF.indexOf(t.category)).map(e=>e.id),[b,f]=(0,s.useState)(!1),[g,j]=(0,s.useState)({}),[v,N]=(0,s.useState)(!1),[w,k]=(0,s.useState)(!1);if(0===e.length)return(0,t.jsxs)("div",{className:"grid place-items-center rounded-lg border border-dashed border-border px-4 py-12 text-center",children:[(0,t.jsx)("p",{className:"text-sm font-medium text-txt",children:"No tasks match these filters."}),(0,t.jsx)("p",{className:"mt-1 text-xs text-muted",children:"Remove a filter or clear the search to see more."})]});let S="none"===a.subGroup?null:(0,o.groupTasks)(e,a.subGroup),M="epic"===a.subGroup?a.properties.filter(e=>"epic"!==e):a.properties,C=e=>(0,t.jsx)(eR,{task:e,properties:M,onOpen:()=>n(e),selected:l?.has(e.id),onSelect:i&&(()=>i([e.id]))},e.id),z=S?.filter(e=>!e.tasks.every(eP))??[],D=S?.filter(e=>e.tasks.every(eP))??[],T=v?0:Math.max(0,D.length-4),$=[...z,...D.slice(0,D.length-T)],I="epic"===a.subGroup?"epics":"sizes",E=d||D.some(e=>g[e.key]),O=()=>{E?(c(!1),j(e=>Object.fromEntries(Object.entries(e).filter(([e])=>!D.some(t=>t.key===e))))):c(!0)},R={gridTemplateColumns:p.map(e=>("done"!==e||E)&&("paused"!==e||b)?"minmax(0,1fr)":"140px").join(" ")},L=(e,s)=>p.map(a=>{let l=e_(e,a);return(0,t.jsx)(eW,{status:a,onMoveTask:r,children:("done"!==a||E)&&("paused"!==a||b)?l.length?("done"===a?[...l].sort(eq):l).map(C):s&&!w?null:(0,t.jsx)("div",{className:"grid h-11 place-items-center rounded-lg border border-dashed border-border text-[11px] text-muted/70",children:s?"":"Drop a task here"}):(0,t.jsx)(eV,{tasks:l,noun:"done"===a?"done":"paused",compact:s,dragging:w,onOpenTask:n})},a)});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"hidden md:block",onDragStartCapture:()=>k(!0),onDragEndCapture:()=>k(!1),children:[(0,t.jsx)("div",{className:(0,y.cn)("grid gap-3 border-b border-border",S&&"pl-7.5"),style:R,children:p.map(s=>{let a;return(0,t.jsx)(eW,{status:s,onMoveTask:r,header:!0,children:(0,t.jsxs)("div",{className:"flex min-w-0 items-center gap-1.5 px-0.5 pb-2 text-xs font-semibold text-txt",children:[(0,t.jsx)(V.StatusIcon,{status:s}),(0,t.jsx)("h2",{className:"truncate",children:x(s)}),(0,t.jsx)("span",{className:"font-mono font-normal text-muted tabular-nums",children:e_(e,s).length}),("done"===s||"paused"===s)&&(a="done"===s?E:b,(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"flex-1"}),(0,t.jsx)("button",{type:"button",onClick:"done"===s?O:()=>f(e=>!e),"aria-expanded":a,"aria-label":`${a?"Collapse":"Expand"} ${x(s)}`,className:"-my-1 grid size-6 place-items-center rounded-md text-muted outline-hidden transition-colors duration-(--duration-fast) hover:bg-surface2 hover:text-txt focus-visible:ring-2 focus-visible:ring-accent/60",children:(0,t.jsx)(eg.ChevronRight,{className:(0,y.cn)("size-3.5 transition-transform duration-(--duration-base) ease-out-soft",a&&"rotate-180"),"aria-hidden":!0})})]}))]})},s)})}),S?(0,t.jsxs)(t.Fragment,{children:[$.map(e=>{let s=e.tasks.every(eP),a=g[e.key]??!s,n=e.tasks.filter(eP).length;return(0,t.jsxs)("section",{"aria-label":e.epicId?`${e.epicId} ${e.label}`:e.label,children:[(0,t.jsxs)("button",{type:"button",onClick:()=>j(t=>({...t,[e.key]:!a})),"aria-expanded":a,className:"mt-1.5 flex h-8.5 w-full items-center gap-2.5 rounded-md px-1.5 text-left outline-hidden transition-colors duration-(--duration-fast) hover:bg-surface2 focus-visible:ring-2 focus-visible:ring-accent/60",children:[a?(0,t.jsx)(m.ChevronDown,{className:"size-3.5 shrink-0 text-muted","aria-hidden":!0}):(0,t.jsx)(eg.ChevronRight,{className:"size-3.5 shrink-0 text-muted","aria-hidden":!0}),e.epicId&&(0,t.jsx)("span",{className:"font-mono text-[11px] text-muted",children:e.epicId}),(0,t.jsx)("span",{className:"min-w-0 truncate text-[13px] font-semibold text-txt",children:e.label}),(0,t.jsx)("span",{className:"flex w-30 shrink-0 gap-0.5","aria-hidden":!0,children:e.tasks.map(e=>(0,t.jsx)("span",{className:(0,y.cn)("h-1 flex-1 rounded-full",eA[e.status])},e.id))}),(0,t.jsxs)("span",{className:"font-mono text-[11px] text-muted tabular-nums","aria-label":`${n} of ${e.tasks.length} done`,children:[(0,t.jsx)("span",{className:"text-txt",children:n}),"/",e.tasks.length]}),s&&(0,t.jsx)("span",{className:"text-xs text-muted",children:"all done"})]}),(0,t.jsx)("div",{className:(0,y.cn)("grid transition-[grid-template-rows,opacity] duration-(--duration-base) ease-out-soft",a?"grid-rows-[1fr] opacity-100":"grid-rows-[0fr] opacity-0"),children:(0,t.jsx)("div",{className:"min-h-0 overflow-hidden",inert:!a,children:(0,t.jsx)("div",{className:"grid gap-3 pt-2 pb-1 pl-7.5",style:R,children:L(e.tasks,!0)})})})]},e.key)}),T>0&&(0,t.jsxs)("p",{className:"mt-2 ml-9 text-xs text-muted",children:["+ ",(0,t.jsx)("span",{className:"font-mono",children:T})," more ",I,", all done ·"," ",(0,t.jsx)("button",{type:"button",onClick:()=>N(!0),className:"rounded-sm text-txt underline decoration-accent underline-offset-2 outline-hidden hover:decoration-txt focus-visible:ring-2 focus-visible:ring-accent/60",children:"Show"})]})]}):(0,t.jsx)("div",{className:"grid gap-3 pt-3",style:R,children:L(e,!1)})]}),(0,t.jsxs)("div",{className:"md:hidden",children:[e.every(eP)&&(0,t.jsx)("p",{className:"mt-3.5 text-sm text-muted",children:"Nothing open. Every task here is done."}),h.map(s=>{let a=e_(e,s);if(!a.length)return null;let n="done"===s&&!d||"paused"===s&&!b;return(0,t.jsxs)("section",{"aria-label":x(s),children:[(0,t.jsxs)("h2",{className:"mt-3.5 mb-2 flex items-center gap-1.5 text-xs font-semibold text-txt",children:[(0,t.jsx)(V.StatusIcon,{status:s}),x(s),(0,t.jsx)("span",{className:"font-mono font-normal text-muted tabular-nums",children:a.length}),(0,t.jsx)("span",{className:"h-px flex-1 bg-border"}),("done"===s||"paused"===s)&&(0,t.jsx)("button",{type:"button",onClick:()=>("done"===s?c:f)(e=>!e),"aria-expanded":!n,className:"min-h-11 rounded-md px-2 text-xs font-normal text-muted outline-hidden hover:text-txt focus-visible:ring-2 focus-visible:ring-accent/60",children:n?"Show":"Hide"})]}),!n&&(0,t.jsx)("div",{className:"flex flex-col gap-2",children:("done"===s?[...a].sort(eq):a).map(C)})]},s)})]})]})}function eW({status:e,onMoveTask:a,header:n=!1,children:r}){let[l,i]=(0,s.useState)(!1);return(0,t.jsx)("div",{"data-column":n?void 0:e,"data-column-header":n?e:void 0,className:(0,y.cn)("flex min-w-0 flex-col gap-2 rounded-lg",!n&&"min-h-11","transition-[background-color,box-shadow] duration-(--duration-fast)",l&&"bg-accent/5 shadow-[0_0_0_1px_rgb(var(--rgb-accent)/0.5)]"),onDragOver:e=>{e.preventDefault(),i(!0)},onDragLeave:e=>{e.currentTarget.contains(e.relatedTarget)||i(!1)},onDrop:t=>{t.preventDefault(),i(!1);let s=t.dataTransfer.getData("taskId");s&&a(s,e)},children:r})}function eV({tasks:e,noun:s,compact:a,dragging:n,onOpenTask:r}){if(!e.length)return a&&!n?null:(0,t.jsx)("div",{className:"grid h-11 place-items-center rounded-lg border border-dashed border-border text-[11px] text-muted/70",children:a?"":"Drop here"});let l=[...e].sort(eq).slice(0,5);return(0,t.jsxs)("div",{className:"flex flex-col gap-1 rounded-lg border border-dashed border-border2 px-2 py-1.5 text-[11px] text-muted",children:[(0,t.jsx)("span",{className:"flex flex-wrap gap-x-1.5 font-mono",children:l.map(e=>(0,t.jsx)("button",{type:"button",onClick:()=>r(e),title:e.title,className:"rounded-sm text-txt outline-hidden hover:text-accent focus-visible:ring-2 focus-visible:ring-accent/60",children:e.id},e.id))}),(0,t.jsxs)("span",{children:[(0,t.jsx)("span",{className:"font-mono",children:e.length})," ",s]})]})}var eG=e.i(479432),eH=e.i(837001),eK=e.i(818748),eB=e.i(692172);let eX=["status","epic","owner","size","due","deps","tests","agent"],eJ={status:"Status",epic:"Epic",size:"Size",due:"Due",deps:"Depends on",tests:"Tests",agent:"Agent",owner:"Owner"},eY={status:"w-[120px]",epic:"w-[170px]",size:"w-[56px]",due:"w-[92px]",deps:"w-[140px]",tests:"w-[72px]",agent:"w-[88px]",owner:"w-[104px]"},eZ=new Set(["epic","size","deps","tests","owner"]),eQ=new Set(["id","title","status","epic","size","due"]),e0={todo:"bg-border2","in-progress":"bg-amber",review:"bg-accent",blocked:"bg-danger",paused:"bg-muted/60",done:"bg-teal",cancelled:"bg-border"},e1="font-mono text-[11px] text-muted",e2="focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-accent";function e5({tasks:e,state:a,agentTasks:n,onOpenTask:r,onSort:l,selected:i=new Set,onToggleSelect:d}){let c=(0,G.useStatusDefs)(),u=eX.filter(e=>a.properties.includes(e)),x="none"===a.group?[{key:"all",label:"All tasks",epicId:null,tasks:e}]:(0,o.groupTasks)(e,a.group,c),[p,m]=(0,s.useState)({}),h=(0,eB.localToday)();if(0===e.length)return(0,t.jsxs)("div",{className:"rounded-lg border border-border px-4 py-12 text-center",children:[(0,t.jsx)("p",{className:"text-sm text-txt",children:"No tasks match these filters."}),(0,t.jsx)("p",{className:"mt-1 text-xs text-muted",children:"Remove a filter or clear the search to see more."})]});let b=3+u.length,f=e.every(e=>i.has(e.id)),g=!f&&e.some(e=>i.has(e.id)),j=e=>eZ.has(e)?"hidden md:table-cell":"",v=(e,s,n="")=>{let r=a.sorts.findIndex(t=>t.prop===e),i=r>=0?a.sorts[r]:null;if(!eQ.has(e))return(0,t.jsx)("th",{scope:"col",className:(0,y.cn)("px-2.5 text-left font-medium",n),children:s},e);let o=i?.dir==="desc"?E.ArrowDown:O.ArrowUp;return(0,t.jsx)("th",{scope:"col","aria-sort":0===r?i?.dir==="desc"?"descending":"ascending":"none",className:(0,y.cn)("px-1 text-left font-medium",n),children:(0,t.jsxs)("button",{type:"button",title:"Click to sort · Shift-click to add a sort",onClick:t=>{var s,n;let r,i;return l((s=a.sorts,n=t.shiftKey,r=s.findIndex(t=>t.prop===e),i=e=>({prop:e.prop,dir:"asc"===e.dir?"desc":"asc"}),n?r<0?[...s,{prop:e,dir:"asc"}]:s.map((e,t)=>t===r?i(e):e):1===s.length&&0===r?[i(s[0])]:[{prop:e,dir:"asc"}]))},className:(0,y.cn)("inline-flex h-7 items-center gap-1 rounded-sm px-1.5 transition-colors duration-(--duration-fast) ease-out-soft hover:bg-surface2 hover:text-txt",i&&"text-txt",e2),children:[s,i&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(o,{className:"size-3","aria-hidden":!0}),(0,t.jsx)("span",{className:"font-mono text-[10px] text-muted",children:r+1})]})]})},e)},N=e=>{let s="done"===e.status||"cancelled"===e.status;return(0,t.jsxs)("tr",{onClick:t=>{t.target.closest("button")||r(e)},className:(0,y.cn)("h-9 cursor-pointer border-b border-border text-[13px] transition-colors duration-(--duration-fast) ease-out-soft last:border-b-0 hover:bg-surface2",i.has(e.id)&&"bg-accent/5"),children:[(0,t.jsx)("td",{className:"pl-3",onClick:e=>e.stopPropagation(),children:(0,t.jsx)(e3,{label:`Select ${e.id}`,checked:i.has(e.id),onChange:()=>d?.([e.id])})}),(0,t.jsx)("td",{className:(0,y.cn)("px-2.5",e1),children:e.id}),(0,t.jsx)("td",{className:"min-w-0 px-1",children:(0,t.jsx)("button",{type:"button",onClick:()=>r(e),title:e.title,className:(0,y.cn)("block w-full truncate rounded-sm px-1.5 py-1 text-left font-medium",s?"text-muted":"text-txt",e2),children:e.title})}),u.map(s=>((e,s)=>{let a=(0,y.cn)("px-2.5",j(s));switch(s){case"status":return(0,t.jsx)("td",{className:a,children:(0,t.jsx)(eT.TaskStatusField,{task:e})},s);case"epic":{let n=(0,o.epicOf)(e.phase);return(0,t.jsx)("td",{className:a,children:n.id||n.title?(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5 text-xs",children:[n.id&&(0,t.jsx)("span",{className:e1,children:n.id}),(0,t.jsx)("span",{className:"truncate text-muted",children:n.title})]}):(0,t.jsx)("span",{className:e1,children:"—"})},s)}case"size":return(0,t.jsx)("td",{className:(0,y.cn)(a,e1),children:(0,t.jsx)(eT.TaskSizeField,{task:e})},s);case"owner":return(0,t.jsx)("td",{className:a,children:(0,t.jsx)(eT.TaskOwnerField,{task:e})},s);case"due":{let n=!!e.due&&"done"!==e.status&&"cancelled"!==e.status&&e.due<h;return(0,t.jsx)("td",{className:(0,y.cn)(a,e1),children:(0,t.jsx)(eT.TaskDueField,{task:e,children:(0,t.jsx)("span",{className:(0,y.cn)("font-mono text-[11px]",n?"text-amber":e.due?"text-muted":"text-muted/70"),children:e.due??"—"})})},s)}case"deps":{let n=e.dependsOn.match(/T\d+/g);return(0,t.jsx)("td",{className:(0,y.cn)(a,e1,"truncate"),children:n?n.join(", "):"—"},s)}case"tests":return(0,t.jsx)("td",{className:(0,y.cn)(a,e1),children:e.manualTests?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,t.jsx)(ey.FlaskConical,{className:"size-3","aria-hidden":!0}),e.manualTests.done,"/",e.manualTests.total]}):"—"},s);case"agent":return(0,t.jsx)("td",{className:a,children:n.has(e.id)?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 text-[11px] text-txt",children:[(0,t.jsx)(eG.Bot,{className:"size-3.5 text-accent","aria-hidden":!0}),"working"]}):(0,t.jsx)("span",{className:e1,children:"—"})},s)}})(e,s))]},e.id)};return(0,t.jsx)("div",{className:"overflow-x-auto rounded-lg border border-border",children:(0,t.jsxs)("table",{className:"w-full min-w-[580px] table-fixed border-collapse md:min-w-[760px]",children:[(0,t.jsxs)("colgroup",{children:[(0,t.jsx)("col",{className:"w-[34px]"}),(0,t.jsx)("col",{className:"w-[72px]"}),(0,t.jsx)("col",{className:"w-[200px] md:w-auto"}),u.map(e=>(0,t.jsx)("col",{className:(0,y.cn)(eY[e],eZ.has(e)&&"hidden md:table-column")},e))]}),(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{className:"h-[34px] border-b border-border2 bg-bg text-[11px] text-muted",children:[(0,t.jsx)("th",{scope:"col",className:"pl-3 text-left",children:(0,t.jsx)(e3,{label:"Select all shown tasks",checked:f,mixed:g,onChange:()=>d?.(e.map(e=>e.id),!f)})}),v("id","ID"),v("title","Title"),u.map(e=>v(e,eJ[e],j(e)))]})}),x.map(e=>{let s=e.tasks.filter(e=>"done"===e.status).length,n=e.tasks.length>0&&e.tasks.every(e=>"done"===e.status||"cancelled"===e.status),r="none"===a.group||(p[e.key]??!n);return(0,t.jsxs)("tbody",{children:["none"!==a.group&&(0,t.jsx)("tr",{className:"h-[38px] border-b border-border bg-surface",children:(0,t.jsx)("th",{scope:"rowgroup",colSpan:b,className:"p-0 text-left font-normal",children:(0,t.jsxs)("button",{type:"button","aria-expanded":r,onClick:()=>m(t=>({...t,[e.key]:!r})),className:(0,y.cn)("flex h-[38px] w-full items-center gap-2.5 px-2 text-left transition-colors duration-(--duration-fast) ease-out-soft hover:bg-surface2",e2),children:[(0,t.jsx)(eg.ChevronRight,{className:(0,y.cn)("size-3.5 shrink-0 text-muted transition-transform duration-(--duration-fast) ease-out-soft",r&&"rotate-90"),"aria-hidden":!0}),e.epicId&&(0,t.jsx)("span",{className:e1,children:e.epicId}),(0,t.jsx)("span",{className:"min-w-0 truncate text-[13px] font-semibold text-txt",children:e.label}),(0,t.jsx)("span",{className:"flex w-[110px] shrink-0 gap-0.5","aria-hidden":!0,children:e.tasks.map(e=>(0,t.jsx)("span",{className:(0,y.cn)("h-1 flex-1 rounded-full",e0[e.status])},e.id))}),(0,t.jsxs)("span",{className:e1,children:[(0,t.jsx)("span",{className:"text-txt",children:s}),"/",e.tasks.length]})]})})}),r&&e.tasks.map(N)]},e.key)})]})})}function e3({label:e,checked:s,mixed:a=!1,onChange:n}){return(0,t.jsxs)("span",{className:"relative inline-flex size-4 align-middle",children:[(0,t.jsx)("input",{type:"checkbox","aria-label":e,checked:s,ref:e=>{e&&(e.indeterminate=a)},onChange:n,className:(0,y.cn)("peer size-4 cursor-pointer appearance-none rounded-sm border border-muted bg-bg transition-colors duration-(--duration-fast)","checked:border-accent checked:bg-accent hover:border-txt focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent",a&&"border-accent")}),a?(0,t.jsx)(eK.Minus,{strokeWidth:3,className:"pointer-events-none absolute inset-0.5 size-3 text-accent","aria-hidden":!0}):(0,t.jsx)(eH.Check,{strokeWidth:3,className:"pointer-events-none absolute inset-0.5 size-3 text-accent-fg opacity-0 peer-checked:opacity-100","aria-hidden":!0})]})}let e4={name:"play",size:24,node:[["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"}]]};e4.node;let e8=(0,d.default)(e4),e6="focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",e7={todo:"bg-border2","in-progress":"bg-amber",review:"bg-accent",blocked:"bg-danger",paused:"bg-muted/60",done:"bg-teal",cancelled:"bg-border2"},e9=e=>parseInt(e.replace(/\D/g,""),10)||0,te=(e,t)=>e9(e.id)-e9(t.id),tt=e=>e.dependsOn.match(/T\d+/g)??[];function ts({tasks:e,allTasks:a,agentTasks:n,onOpenTask:r}){let[l,i]=(0,s.useState)(new Set),[d,c]=(0,s.useState)(!1),u=(0,s.useMemo)(()=>new Map(a.map(e=>[e.id,e])),[a]),x=(0,s.useMemo)(()=>(0,o.groupTasks)(e,"epic"),[e]),{firstReady:p,upNext:m}=(0,s.useMemo)(()=>{let e=new Set,t=[],s=[];for(let a of x){let n=[...a.tasks].sort(te),r=n.filter(e=>(0,o.isReady)(e,u));for(let a of(r[0]&&e.add(r[0].id),t.push(...r),n)){if("todo"!==a.status&&"blocked"!==a.status)continue;let e=tt(a).filter(e=>u.get(e)?.status!=="done");1===e.length&&s.push({task:a,on:e[0]})}}return{firstReady:e,upNext:[...t.map(e=>({task:e,on:null})),...s].slice(0,5)}},[x,u]);if(0===e.length)return(0,t.jsxs)("div",{className:"px-8 py-16 text-center",children:[(0,t.jsx)("p",{className:"text-sm font-medium text-txt",children:"No tasks match these filters."}),(0,t.jsx)("p",{className:"mt-1 text-xs text-muted",children:"Clear a filter or the search to see more epics."})]});let h=e=>i(t=>{let s=new Set(t);return s.has(e)?s.delete(e):s.add(e),s}),b=0,f=[],g=x.map(e=>{let s=function(e){if(e.some(e=>"in-progress"===e.status||"review"===e.status))return"in-progress";let t=e.filter(e=>"done"!==e.status&&"cancelled"!==e.status);return t.length>0&&t.every(e=>"blocked"===e.status)?"blocked":e.length>0&&e.every(e=>"done"===e.status)?"done":"todo"}(e.tasks);return"done"!==s||l.has(e.key)?(0,t.jsx)(tr,{group:e,status:s,collapsible:"done"===s,onCollapse:()=>h(e.key),firstReady:p,agentTasks:n,onOpenTask:r},e.key):++b>3&&!d?(f.push(e),null):(0,t.jsx)(tn,{group:e,onExpand:()=>h(e.key)},e.key)});return(0,t.jsxs)("div",{className:"grid gap-6 px-4 pt-[18px] pb-8 sm:px-8 lg:grid-cols-[minmax(0,1fr)_280px]",children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-col gap-3.5",children:[g,f.length>0&&(0,t.jsxs)("p",{className:"mx-0.5 text-xs text-muted",children:["+ ",(0,t.jsx)("span",{className:"font-mono",children:f.slice(0,3).map(e=>e.epicId??e.label).join(", ")}),f.length>3&&(0,t.jsxs)(t.Fragment,{children:[" and ",(0,t.jsx)("span",{className:"font-mono",children:f.length-3})," more"]}),", all done ·"," ",(0,t.jsx)("button",{type:"button",onClick:()=>c(!0),className:(0,y.cn)("rounded-sm text-txt underline decoration-accent underline-offset-2 hover:decoration-txt",e6),children:"Show"})]})]}),(0,t.jsxs)("aside",{"aria-label":"Up next",className:"flex flex-col gap-2.5 lg:pt-1",children:[(0,t.jsx)("p",{className:"text-xs font-semibold text-txt",children:"Up next"}),0===m.length&&(0,t.jsx)("p",{className:"text-xs text-muted",children:"Nothing is ready right now."}),m.map(({task:e,on:s})=>(0,t.jsxs)("button",{type:"button",onClick:()=>r(e),className:(0,y.cn)("flex flex-col gap-1.5 rounded-lg border border-border bg-surface px-[11px] py-[9px] text-left transition-colors duration-(--duration-fast) ease-out-soft hover:border-border2",s&&"opacity-90",e6),children:[(0,t.jsxs)("span",{className:(0,y.cn)("flex items-center gap-1.5 text-xs",s?"text-muted":"text-txt"),children:[(0,t.jsx)(V.StatusIcon,{status:e.status}),(0,t.jsx)("span",{className:"font-mono text-[11px] text-muted",children:e.id}),s?(0,t.jsxs)(t.Fragment,{children:["Waiting on ",(0,t.jsx)("span",{className:"font-mono",children:s})]}):"Ready"]}),(0,t.jsx)("span",{className:"text-[13px] font-medium text-txt",children:e.title})]},e.id)),(0,t.jsxs)("p",{className:"mt-1.5 text-[11px] leading-normal text-muted",children:["Same order as ",(0,t.jsx)("span",{className:"font-mono",children:"vibedoc_next_task"}),": a task is ready when everything it depends on is done."]})]})]})}function ta({tasks:e}){let s=e.filter(e=>"done"===e.status).length;return(0,t.jsxs)("span",{className:"shrink-0 font-mono text-[11px] text-muted",children:[(0,t.jsx)("span",{className:"text-txt",children:s}),"/",e.length]})}function tn({group:e,onExpand:s}){return(0,t.jsxs)("button",{type:"button","aria-expanded":!1,onClick:s,className:(0,y.cn)("flex h-10 items-center gap-3 rounded-lg border border-border bg-surface px-4 text-left transition-colors duration-(--duration-fast) ease-out-soft hover:bg-surface2",e6),children:[(0,t.jsx)(eg.ChevronRight,{className:"size-3.5 shrink-0 text-muted","aria-hidden":!0}),e.epicId&&(0,t.jsx)("span",{className:"font-mono text-[11px] text-muted",children:e.epicId}),(0,t.jsx)("span",{className:"min-w-0 truncate text-sm font-medium text-muted",children:e.label}),(0,t.jsx)("span",{className:"flex-1"}),(0,t.jsx)(V.StatusIcon,{status:"done"}),(0,t.jsx)(ta,{tasks:e.tasks})]})}function tr({group:e,status:a,collapsible:n,onCollapse:r,firstReady:l,agentTasks:i,onOpenTask:d}){let c=(0,s.useMemo)(()=>(0,o.depOutline)(e.tasks),[e.tasks]),u=V.STATUS_META[a],x=[...e.tasks].sort(te);return(0,t.jsxs)("section",{className:"flex flex-col gap-2.5 rounded-lg border border-border bg-surface px-3.5 pt-3.5 pb-2.5",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-baseline gap-x-3 gap-y-1 px-0.5",children:[e.epicId&&(0,t.jsx)("span",{className:"font-mono text-[11px] text-muted",children:e.epicId}),(0,t.jsx)("h2",{className:"m-0 min-w-0 text-[1.1rem] font-semibold text-txt",children:e.label}),(0,t.jsxs)("span",{className:(0,y.cn)("inline-flex items-center gap-1.5 self-center text-xs",u.text),children:[(0,t.jsx)(V.StatusIcon,{status:a}),u.label]}),(0,t.jsx)("span",{className:"flex-1"}),(0,t.jsx)(ta,{tasks:e.tasks}),n&&(0,t.jsx)("button",{type:"button","aria-expanded":!0,onClick:r,className:(0,y.cn)("self-center rounded-sm text-xs text-muted hover:text-txt",e6),children:"Collapse"})]}),(0,t.jsx)("div",{className:"flex gap-[3px] px-0.5","aria-hidden":!0,children:x.map(e=>(0,t.jsx)("span",{className:(0,y.cn)("h-[5px] flex-1 rounded-full",e7[e.status])},e.id))}),(0,t.jsx)("ul",{className:"flex flex-col",children:c.map(({task:e,depth:s,alsoAfter:a})=>{let n="done"===e.status,r=(0,o.sizeOf)(e);return(0,t.jsx)("li",{children:(0,t.jsxs)("button",{type:"button",onClick:()=>d(e),style:{paddingLeft:16+26*s},className:(0,y.cn)("relative flex h-[38px] w-full items-center gap-2.5 rounded-md pr-3 text-left transition-colors duration-(--duration-fast) ease-out-soft hover:bg-surface2",e6),children:[s>0&&(0,t.jsx)("span",{"aria-hidden":!0,style:{left:2+26*s},className:"absolute top-0 bottom-1/2 w-2.5 rounded-bl-md border-b border-l border-border2"}),(0,t.jsx)(V.StatusIcon,{status:e.status}),(0,t.jsx)("span",{className:"font-mono text-[11px] text-muted",children:e.id}),(0,t.jsx)("span",{className:(0,y.cn)("min-w-0 truncate text-[13.5px] font-medium",n?"text-muted":"text-txt"),children:e.title}),a.length>0&&(0,t.jsxs)("span",{className:"hidden shrink-0 font-mono text-[10px] text-muted sm:inline",children:["also after ",a.join(", ")]}),l.has(e.id)&&(0,t.jsxs)("span",{className:"inline-flex h-5 shrink-0 items-center gap-1 rounded-sm border border-accent px-[7px] text-[11px] text-txt",children:[(0,t.jsx)(e8,{className:"size-2.5 text-accent","aria-hidden":!0}),"Ready · next for the agent"]}),i.has(e.id)&&(0,t.jsxs)("span",{className:"inline-flex shrink-0 items-center gap-1 text-[11px] text-txt",children:[(0,t.jsx)(eG.Bot,{className:"size-3 text-accent","aria-hidden":!0}),"working"]}),(0,t.jsx)("span",{className:"flex-1"}),r&&(0,t.jsx)("span",{className:"font-mono text-[10px] text-muted",children:r})]})},e.id)})})]})}let tl=[{value:"active",label:"Active time"},{value:"day",label:"Day"},{value:"week",label:"Week"}],ti=e=>new Date(e).toLocaleTimeString("en-GB",{hour:"2-digit",minute:"2-digit",hour12:!1}),to=e=>new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric"}),td=e=>{let t=new Date(e);return t.setHours(0,0,0,0),t.getTime()};function tc(e){let t=Math.round(e/6e4);if(t<60)return`${t}m`;let s=Math.floor(t/60);return s>=24?`${Math.round(t/60)}h`:t%60?`${s}h ${t%60}m`:`${s}h`}function tu(e,t){for(let s of e)if(t>=s.startMs&&t<=s.endMs){let e=s.endMs-s.startMs||1;return s.x+(t-s.startMs)/e*s.width}return null}function tx({tasks:e,state:a,agentTasks:n,onOpenTask:r,events:l,loading:i,onScale:d}){let c=function(e=3e4){let[t,a]=(0,s.useState)(()=>Date.now());return(0,s.useEffect)(()=>{let t=setInterval(()=>a(Date.now()),e);return()=>clearInterval(t)},[e]),t}(),u=a.scale,x=(0,s.useMemo)(()=>(0,o.timelineBars)(e,l,c),[e,l,c]),p=(0,s.useMemo)(()=>(function(e,t,s){if(!e.length)return[];if("active"===t){let t=0;return(0,o.foldAxis)(e,18e5).map((e,s)=>{s>0&&(t+=56);let a=Math.max(170,(e.endMs-e.startMs)/6e4*2.2),n={...e,x:t,width:a};return t+=a,n})}let a=Math.min(...e.map(e=>e.startMs)),n=Math.max(...e.map(e=>e.endMs),e.some(e=>e.open)?s:0),r=td(a),l=td(n)+864e5;return[{startMs:r,endMs:l,x:0,width:(l-r)*("day"===t?11111111111111112e-21:1388888888888889e-21)}]})(x,u,c),[x,u,c]),m=(0,s.useMemo)(()=>(function(e,t){let s=[];for(let a of e){let e=a.endMs-a.startMs,n="week"===t?864e5:"day"===t?216e5:e<=108e5?18e5:e<=288e5?36e5:108e5,r="active"===t?Math.ceil(a.startMs/n)*n:a.startMs;for(let e=r;e<=a.endMs;e+=n){let n=tu([a],e);null!=n&&s.push({x:n,label:"week"===t?to(e):"day"===t?"00:00"===ti(e)?to(e):ti(e):null})}}return s})(p,u),[p,u]),h=(0,s.useMemo)(()=>{let t=new Map(x.map(e=>[e.taskId,e]));return(0,o.groupTasks)(e,a.group).map(e=>{let s=e.tasks.filter(e=>t.has(e.id)).map(e=>({task:e,bar:t.get(e.id)})).sort((e,t)=>e.bar.startMs-t.bar.startMs),a=e.tasks.filter(e=>!t.has(e.id)&&"done"!==e.status&&"cancelled"!==e.status),n=(0,o.depOutline)(a).map(e=>e.task),r=!n.length&&e.tasks.every(e=>"done"===e.status||"cancelled"===e.status);return{group:e,worked:s,planned:n,compact:r}}).filter(e=>e.worked.length||e.planned.length)},[e,x,a.group]),b=p.length?p[p.length-1].x+p[p.length-1].width:0,f=b+200,g=tu(p,c),j=p.length?p[p.length-1].x:null,v=(0,s.useRef)(null),N=(0,s.useRef)(null);(0,s.useEffect)(()=>{let e=v.current;if(!e||null==j||N.current===u)return;N.current=u;let t=e.querySelector("[data-gutter]")?.offsetWidth??0;e.scrollLeft=null!=g?g-(e.clientWidth-t)/2:Math.min(e.scrollWidth-e.clientWidth,j-16)},[g,u,j]);let w=(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,t.jsx)("span",{className:"text-xs text-muted max-sm:hidden",children:"Scale"}),(0,t.jsx)("div",{role:"group","aria-label":"Timeline scale",className:"flex rounded-md border border-border p-0.5",children:tl.map(e=>(0,t.jsx)("button",{type:"button","aria-pressed":u===e.value,onClick:()=>d(e.value),className:(0,y.cn)("h-6 rounded-[5px] border border-transparent px-2.5 text-xs font-medium text-muted outline-none transition-colors duration-(--duration-fast) ease-out-soft","hover:bg-surface2 hover:text-txt focus-visible:ring-2 focus-visible:ring-accent",u===e.value&&"border-border2 bg-surface2 text-txt"),children:e.label},e.value))}),"active"===u&&(0,t.jsx)("span",{className:"ml-2 text-xs text-muted max-sm:hidden",children:"Idle gaps folded"})]});if(!e.length)return(0,t.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,t.jsx)("div",{className:"flex justify-end",children:w}),(0,t.jsxs)("div",{className:"rounded-lg border border-dashed border-border px-6 py-10 text-center",children:[(0,t.jsx)("p",{className:"text-sm text-txt",children:"No tasks match these filters."}),(0,t.jsx)("p",{className:"mt-1 text-xs text-muted",children:"Clear a filter or the search to see more of the timeline."})]})]});if(i&&!l.length)return(0,t.jsxs)("div",{className:"flex flex-col gap-4","aria-busy":"true","aria-label":"Loading timeline",children:[(0,t.jsx)("div",{className:"flex justify-end",children:w}),[0,1,2].map(e=>(0,t.jsxs)("div",{className:"flex gap-4 border-b border-border pb-4",children:[(0,t.jsx)("div",{className:"h-9 w-[200px] animate-pulse rounded bg-surface2"}),(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-1.5 pt-1",children:[(0,t.jsx)("div",{className:"h-3.5 w-1/3 animate-pulse rounded-sm bg-surface2",style:{marginLeft:`${10+15*e}%`}}),(0,t.jsx)("div",{className:"h-3.5 w-1/5 animate-pulse rounded-sm bg-surface2",style:{marginLeft:`${30+10*e}%`}})]})]},e))]});let k=e.some(e=>e.due);return(0,t.jsxs)("div",{className:"flex min-w-0 flex-col gap-3",children:[(0,t.jsx)("div",{className:"flex justify-end",children:w}),!x.length&&(0,t.jsx)("p",{className:"text-sm text-muted",children:"No task moves in the activity log yet — bars appear once tasks move to In progress."}),(0,t.jsx)("div",{ref:v,className:"min-w-0 overflow-x-auto overscroll-x-contain",children:(0,t.jsxs)("div",{className:(0,y.cn)("relative","[--gw:110px] sm:[--gw:220px]"),style:{width:`calc(var(--gw) + ${f}px)`},children:[(0,t.jsxs)("div",{className:"flex",style:{height:36},children:[(0,t.jsx)("div",{"data-gutter":!0,className:"sticky left-0 z-20 w-(--gw) shrink-0 bg-bg"}),(0,t.jsxs)("div",{className:"relative",style:{width:f},children:[p.map((e,s)=>(0,t.jsxs)("div",{children:["active"===u&&(0,t.jsx)("div",{className:"absolute bottom-0 truncate border-b border-border2 font-mono text-[11px] text-txt",style:{left:e.x,width:e.width,height:28},children:to(e.startMs)===to(e.endMs)?`${to(e.startMs)} \xb7 ${ti(e.startMs)}–${ti(e.endMs)}`:`${to(e.startMs)} ${ti(e.startMs)} – ${to(e.endMs)} ${ti(e.endMs)}`}),"active"===u&&s>0&&(0,t.jsx)("span",{className:"absolute bottom-0 flex justify-center font-mono text-[10px] whitespace-nowrap text-muted",style:{left:e.x-56,width:56,height:28},title:`Idle gap of ${tc(e.startMs-p[s-1].endMs)} folded`,children:tc(e.startMs-p[s-1].endMs)})]},e.startMs)),"active"!==u&&p.length>0&&(0,t.jsx)("div",{className:"absolute bottom-0 border-b border-border2",style:{left:0,width:b,height:28},children:m.map(e=>e.label&&(0,t.jsx)("span",{className:"absolute top-0 pl-1 font-mono text-[11px] whitespace-nowrap text-txt",style:{left:e.x},children:e.label},e.x))}),null!=g&&(0,t.jsx)("span",{className:"absolute top-0 z-10 -translate-x-1/2 rounded bg-accent px-1.5 py-0.5 font-mono text-[10px] text-accent-fg",style:{left:g},children:ti(c)})]})]}),h.map(({group:e,worked:s,planned:a,compact:l},i)=>{let o=Math.max(52,(l?1:s.length+a.length)*20+20),d=(s.reduce((e,t)=>{let s=tu(p,t.bar.endMs);return null==s?e:Math.max(e??0,s)},null)??g??0)+8;return(0,t.jsxs)("section",{className:"flex border-b border-border","aria-label":e.epicId?`${e.epicId} ${e.label}`:e.label,children:[(0,t.jsxs)("div",{className:"sticky left-0 z-20 flex w-(--gw) shrink-0 flex-col gap-0.5 bg-bg py-2.5 pr-2 sm:pr-4",children:[e.epicId&&(0,t.jsx)("span",{className:"font-mono text-[11px] text-muted",children:e.epicId}),(0,t.jsx)("span",{className:"line-clamp-2 text-[13px] leading-tight font-semibold text-txt sm:line-clamp-none",title:e.label,children:e.label})]}),(0,t.jsxs)("div",{className:"relative",style:{width:f,height:o},children:[m.map(e=>(0,t.jsx)("span",{"aria-hidden":!0,className:"absolute inset-y-0 w-px bg-border opacity-60",style:{left:e.x}},e.x)),"active"===u&&p.slice(1).map(e=>(0,t.jsx)("span",{"aria-hidden":!0,className:"absolute inset-y-0 border-l border-dashed border-border2",style:{left:e.x-28}},e.startMs)),null!=g&&(0,t.jsx)("span",{"aria-hidden":!0,className:"absolute inset-y-0 z-10 w-px bg-accent",style:{left:g}}),s.map(({task:e,bar:s},a)=>{var o;let d,c=tu(p,s.startMs)??0,u=Math.max(4,(tu(p,s.endMs)??c)-c),x=10+(l?0:a)*20,m=n.has(e.id),h=s.open&&"in-progress"===s.status,b=h?`${e.id} \xb7 in progress since ${ti(s.startMs)}`:s.open?`${e.id} \xb7 ${V.STATUS_META[s.status].label.toLowerCase()}, first moved ${to(s.startMs)} ${ti(s.startMs)}`:`${e.id} \xb7 worked ${to(s.startMs)} ${ti(s.startMs)}–${ti(s.endMs)}`,f=(o=e.due,(d=o?.match(/^(\d{4})-(\d{2})-(\d{2})$/))?new Date(Number(d[1]),Number(d[2])-1,Number(d[3])).getTime():null),g=null==f?null:tu(p,f);return(0,t.jsxs)("div",{children:[(0,t.jsx)("button",{type:"button",title:`${b} — ${e.title}`,"aria-label":`${b} — ${e.title}`,onClick:()=>r(e),className:(0,y.cn)("absolute h-3.5 origin-left animate-grow-x rounded-[3px] outline-none transition-opacity duration-(--duration-fast) ease-out-soft hover:opacity-80","focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-1 focus-visible:ring-offset-bg",h?"bg-amber":"done"===s.status?"bg-teal":"bg-border2"),style:{left:c,width:u,top:x+3,animationDelay:`${Math.min(40*i,240)}ms`}}),!l&&(0,t.jsxs)("span",{className:(0,y.cn)("pointer-events-none absolute font-mono text-[10px] leading-[14px] whitespace-nowrap",h?"text-txt":"text-muted"),style:{left:c+u+6,top:x+3},children:[e.id,h&&(m?" · agent working":" · in progress")]}),null!=g&&(0,t.jsx)(tp,{x:g,top:x+3,due:e.due})]},e.id)}),a.map((e,a)=>{let n=10+(s.length+a)*20;return(0,t.jsxs)("button",{type:"button",onClick:()=>r(e),title:`${e.id} \xb7 planned — ${e.title}`,"aria-label":`${e.id} \xb7 planned — ${e.title}`,className:"group absolute flex items-center gap-1.5 rounded-sm outline-none focus-visible:ring-2 focus-visible:ring-accent",style:{left:d,top:n+3},children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"h-3.5 w-6 rounded-[3px] border border-dashed border-muted transition-colors duration-(--duration-fast) group-hover:border-txt"}),(0,t.jsxs)("span",{className:"font-mono text-[10px] leading-[14px] whitespace-nowrap text-txt",children:[e.id," · planned"]})]},e.id)})]})]},e.key)})]})}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-2 text-[11px] text-muted",children:[(0,t.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"h-2 w-[18px] rounded-sm bg-teal"}),"Worked: first move to In progress → Done (activity log)"]}),(0,t.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"h-2 w-[18px] rounded-sm bg-amber"}),"In progress now"]}),(0,t.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"h-2 w-[18px] rounded-sm border border-dashed border-muted"}),"Planned: queued in dependency order"]}),(0,t.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"size-2.5 rotate-45 border border-txt"}),k?"Due date":"Due date (none set in these tasks)"]})]})]})}function tp({x:e,top:s,due:a}){return(0,t.jsx)("span",{role:"img","aria-label":`Due ${a}`,title:`Due ${a}`,className:"absolute size-2.5 -translate-x-1/2 rotate-45 border border-txt bg-bg",style:{left:e,top:s+2}})}let tm={name:"chevron-up",size:24,node:[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]};tm.node;let th=(0,d.default)(tm);var tb=e.i(246978),tf=e.i(903763);async function tg(e,t){let s=await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),a=await s.json().catch(()=>null);if(!s.ok)throw Error(a?.error??`Request failed (${s.status})`);return a}let tj="inline-flex h-8 items-center gap-1.5 rounded-md px-2.5 text-xs text-txt hover:bg-surface transition-colors";function tv({ids:e,onClear:a}){let{rootParam:r}=(0,n.useApp)(),[l,i]=(0,s.useState)([]),[o,d]=(0,s.useState)(!1),[c,u]=(0,s.useState)(!1),x=(0,G.useStatusDefs)();async function p(t,s){d(!0);try{let n=await tg(`/api/tasks/bulk${r}`,{ids:e,action:t});a(),s?.(n)}catch(e){(0,e$.toast)(e.message)}finally{d(!1)}}(0,s.useEffect)(()=>{fetch(`/api/roadmap${r}`).then(e=>e.ok?e.json():null).then(e=>i((e?.items??[]).filter(e=>null!==e.parent&&"done"!==e.status))).catch(()=>i([]))},[r]);let m=()=>p({delete:!0},({deleted:e})=>{(0,e$.undoToast)(`Deleted ${e.length} task${1===e.length?"":"s"}`,async()=>{for(let{task:t,links:s}of[...e].reverse())await tg(`/api/tasks/restore${r}`,{file:t.file,raw:t.raw,links:s})})});return(0,tf.useItemCommands)(`${e.length} selected task${1===e.length?"":"s"}`,[{action:"status",label:"Change status…",run:()=>u(!0)},{action:"remove",label:`Delete ${e.length} task${1===e.length?"":"s"}`,run:m}]),(0,t.jsxs)("div",{role:"toolbar","aria-label":"Bulk actions",className:"fixed bottom-6 left-1/2 z-50 flex -translate-x-1/2 animate-slide-in items-center gap-1 rounded-lg border border-border bg-surface2 p-1 pl-3 shadow-xl",children:[(0,t.jsxs)("span",{className:"mr-1 font-mono text-xs tabular-nums text-txt",children:[e.length," selected"]}),(0,t.jsxs)(S.DropdownMenu,{open:c,onOpenChange:u,children:[(0,t.jsx)(S.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsxs)("button",{type:"button",disabled:o,className:tj,children:["Status ",(0,t.jsx)(th,{className:"size-3.5 text-muted"})]})}),(0,t.jsx)(S.DropdownMenuContent,{side:"top",className:"w-44",children:x.map(e=>(0,t.jsxs)(S.DropdownMenuItem,{onSelect:()=>p({status:e.id}),children:[(0,t.jsx)(V.StatusIcon,{status:e.id})," ",e.label]},e.id))})]}),(0,t.jsxs)(S.DropdownMenu,{children:[(0,t.jsx)(S.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsxs)("button",{type:"button",disabled:o,className:tj,children:[(0,t.jsx)(tb.FolderInput,{className:"size-3.5 text-muted"})," Epic ",(0,t.jsx)(th,{className:"size-3.5 text-muted"})]})}),(0,t.jsxs)(S.DropdownMenuContent,{side:"top",className:"max-h-72 w-64 overflow-y-auto",children:[l.map(e=>(0,t.jsxs)(S.DropdownMenuItem,{onSelect:()=>p({epic:e.id}),children:[(0,t.jsx)("span",{className:"font-mono text-[11px] text-muted",children:e.id})," ",(0,t.jsx)("span",{className:"truncate",children:e.title})]},e.id)),l.length>0&&(0,t.jsx)(S.DropdownMenuSeparator,{}),(0,t.jsx)(S.DropdownMenuItem,{onSelect:()=>p({epic:null}),children:"No epic"})]})]}),(0,t.jsxs)("button",{type:"button",disabled:o,onClick:m,className:`${tj} text-danger hover:text-danger`,children:[(0,t.jsx)(k.Trash2,{className:"size-3.5"})," Delete"]}),(0,t.jsx)("button",{type:"button","aria-label":"Clear selection",onClick:a,className:"grid size-8 place-items-center rounded-md text-muted hover:bg-surface hover:text-txt",children:(0,t.jsx)(W.X,{className:"size-4"})})]})}let tN=o.DEFAULT_VIEWS.map(e=>e.id),tw=["view","g","sg","s","f","q","p","sc"];function tk(e){let t=o.DEFAULT_VIEWS.find(t=>t.id===e.id);return!!t&&(e.name!==t.name||(0,o.isDirty)((({id:e,name:t,...s})=>s)(e),t))}function ty({tasks:e,onMoveTask:d,onOpenTask:c,onNewTask:u}){let{rootParam:x}=(0,n.useApp)(),{agents:p}=(0,l.useChats)(),m=(0,a.useSearchParams)(),[h,b]=(0,s.useState)(o.DEFAULT_VIEWS),[f,g]=(0,s.useState)(!1),[j,v]=(0,s.useState)([]),[N,w]=(0,s.useState)(!1),[k,y]=(0,s.useState)(new Set),S=(0,s.useCallback)(()=>{fetch(`/api/views${x}`).then(e=>e.ok?e.json():Promise.reject(Error(`HTTP ${e.status}`))).then(e=>{var t;let s;return b((s=new Map((t=e.views??[]).map(e=>[e.id,e])),[...o.DEFAULT_VIEWS.map(e=>s.get(e.id)??e),...t.filter(e=>!tN.includes(e.id))]))}).catch(e=>console.warn("[vibedoc] could not load views:",e))},[x]);(0,s.useEffect)(()=>{S();let e=e=>{e.detail?.type==="views_updated"&&S()};return window.addEventListener("vibedoc:sse",e),()=>window.removeEventListener("vibedoc:sse",e)},[S]);let M=(0,s.useCallback)(e=>{b(e),fetch(`/api/views${x}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({views:e.filter(e=>!tN.includes(e.id)||tk(e))})}).then(e=>{if(!e.ok)throw Error(`HTTP ${e.status}`)}).catch(e=>{console.warn("[vibedoc] could not save views:",e),S()})},[x,S]),C=m.get("v"),z=tw.some(e=>m.has(e)),D=m.toString(),T=(0,s.useMemo)(()=>(0,o.fromParams)(new URLSearchParams(D)),[D]),I=h.find(e=>e.id===C)??h.find(e=>e.id===T.kind)??h[0],E=(0,s.useMemo)(()=>z?T:(({id:e,name:t,...s})=>s)(I),[z,T,I]),O=(0,o.isDirty)(E,I),R=(0,s.useCallback)((e,t)=>{let s=new URLSearchParams(window.location.search);for(let e of[...tw,"v"])s.delete(e);if(s.set("v",e),t){let e=(0,o.toParams)(t);[...e.keys()].length||e.set("view",t.kind),e.forEach((e,t)=>s.set(t,e))}window.history.replaceState(null,"",`${window.location.pathname}?${s}`)},[]),L=e=>R(I.id,e),F=(0,s.useCallback)(e=>{g(!1);let t=h.find(t=>t.id===e)?.kind,s=document.querySelector("[data-board-view]");t&&s&&"startViewTransition"in document?document.startViewTransition(()=>new Promise(a=>{let n=()=>{r.disconnect(),clearTimeout(l),a()},r=new MutationObserver(()=>{s.dataset.boardView===t&&n()}),l=setTimeout(n,300);r.observe(s,{attributes:!0,attributeFilter:["data-board-view"]}),R(e,null),s.dataset.boardView===t&&n()})):R(e,null)},[R,h]),A=e=>{let t,s=(t=e,`${t.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"").slice(0,30)||"view"}-${Math.random().toString(36).slice(2,6)}`);M([...h,{...E,q:"",id:s,name:e}]),R(s,null)},P=(0,s.useMemo)(()=>new Set(Object.keys(p).filter(e=>e.startsWith("task:")).map(e=>e.slice(5))),[p]),q=(0,s.useMemo)(()=>(0,o.applyView)(e,E,{agentTasks:P}),[e,E,P]),_=(0,s.useMemo)(()=>{let t=new Map;for(let s of e){let e=(0,o.epicOf)(s.phase);if(!e.id)continue;let a=t.get(e.id)??{id:e.id,title:e.title,open:!1};a.title||(a.title=e.title),"done"!==s.status&&"cancelled"!==s.status&&(a.open=!0),t.set(e.id,a)}return[...t.values()].sort((e,t)=>e.id.localeCompare(t.id,void 0,{numeric:!0}))},[e]),U="timeline"===E.kind;(0,s.useEffect)(()=>{if(!U)return;let e=!0,t=()=>{w(!0),fetch(`/api/activity${x}&limit=2000`).then(e=>e.ok?e.json():Promise.reject(Error(`HTTP ${e.status}`))).then(t=>{e&&v(Array.isArray(t)?t:[])}).catch(e=>console.warn("[vibedoc] could not load activity:",e)).finally(()=>{e&&w(!1)})},s=e=>{let s=e.detail?.type;"chat_saved"!==s&&"views_updated"!==s&&t()};return t(),window.addEventListener("vibedoc:sse",s),()=>{e=!1,window.removeEventListener("vibedoc:sse",s)}},[U,x]);let W=h.map(e=>e.id).join(","),V=I.id;(0,s.useEffect)(()=>{function e(e){if(!(0,i.shouldHandleShortcut)(e)||document.querySelector("[role=dialog]"))return;let t=Number(e.key),s=W.split(",");if("v"===e.key)F(s[(s.indexOf(V)+1)%s.length]);else if(t>=1&&t<=4)F(tN[t-1]);else if("f"===e.key)g(!0);else{if("n"!==e.key)return;u()}e.preventDefault()}return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[W,V,F,u]);let G=(0,s.useMemo)(()=>new Set(q.map(e=>e.id).filter(e=>k.has(e))),[q,k]),H=(0,s.useCallback)((e,t)=>y(s=>{let a=new Set(s);for(let s of e)t??!a.has(s)?a.add(s):a.delete(s);return a}),[]),K=(0,s.useCallback)(()=>y(new Set),[]);(0,s.useEffect)(()=>{if(0===G.size)return;let e=e=>{"Escape"!==e.key||document.querySelector("[role=dialog],[role=menu]")||K()};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[G.size,K]);let B=(...t)=>e.filter(e=>t.includes(e.status)).length,X={tasks:q,allTasks:e,state:E,agentTasks:P,onOpenTask:c,selected:G,onToggleSelect:H};return(0,t.jsxs)("div",{className:"flex min-w-0 flex-col",children:[(0,t.jsxs)("header",{className:"flex items-end gap-6 px-4 pt-8 sm:px-8",children:[(0,t.jsxs)("div",{className:"min-w-0 grow",children:[(0,t.jsx)("h1",{className:"text-[1.6rem] leading-tight font-semibold tracking-[-0.02em] text-txt",children:"Board"}),(0,t.jsxs)("p",{className:"mt-2 text-[1.1rem] leading-snug font-semibold text-txt",children:[(0,t.jsx)("span",{className:"font-mono tabular-nums",children:B("todo","in-progress","review","blocked")})," open ·"," ",(0,t.jsx)("span",{className:"font-mono tabular-nums",children:B("in-progress")})," in progress"," ",(0,t.jsxs)("span",{className:"font-normal text-muted",children:["· ",(0,t.jsx)("span",{className:"font-mono tabular-nums",children:B("done")})," done"]})]})]}),(0,t.jsxs)("button",{type:"button",onClick:u,className:"inline-flex h-8.5 shrink-0 items-center gap-1.5 whitespace-nowrap rounded-md bg-accent px-3 text-[13px] font-medium text-accent-fg transition-colors duration-(--duration-fast) ease-out-soft hover:bg-accent/90 focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-bg",children:[(0,t.jsx)(r.Plus,{"aria-hidden":!0,className:"size-[15px]"}),"New task",(0,t.jsx)("kbd",{className:"rounded-sm border border-accent-fg/25 bg-accent-fg/15 px-1 py-0.5 font-mono text-[10px] leading-none max-sm:hidden",children:"n"})]})]}),(0,t.jsx)("div",{className:"mt-[18px] px-4 sm:px-8",children:(0,t.jsx)($,{views:h,activeId:V,onSelect:F,onNew:()=>A("New view"),onRename:(e,t)=>M(h.map(s=>s.id===e?{...s,name:t}:s)),onDelete:e=>{let t=h.find(t=>t.id===e);return!!t&&!!window.confirm(`Delete the view "${t.name}"? Tasks are not affected.`)&&(M(h.filter(t=>t.id!==e)),I.id===e&&R(t.kind,null),!0)},customizedIds:h.filter(tk).map(e=>e.id),onRestore:e=>{let t=o.DEFAULT_VIEWS.find(t=>t.id===e);t&&(M(h.map(s=>s.id===e?t:s)),R(e,null))}})}),(0,t.jsx)("div",{className:"px-4 pt-3 sm:px-8",children:(0,t.jsx)(ec,{state:E,onChange:L,epics:_,dirty:O,activeIsBuiltIn:tN.includes(V),onSave:()=>M(h.map(e=>e.id===I.id?{...E,q:"",id:e.id,name:e.name}:e)),onSaveAs:A,onReset:()=>F(V),searchInputId:"board-search",filterOpen:f,onFilterOpenChange:g})}),(0,t.jsx)("div",{"data-board-view":E.kind,className:"[view-transition-name:board-view-body]",children:"epic"===E.kind?(0,t.jsx)(ts,{...X}):(0,t.jsxs)("div",{className:"min-w-0 px-4 pt-[18px] pb-8 sm:px-8",children:["board"===E.kind&&(0,t.jsx)(eU,{...X,onMoveTask:d}),"table"===E.kind&&(0,t.jsx)(e5,{...X,onSort:e=>L({...E,sorts:e})}),U&&(0,t.jsx)(tx,{...X,events:j,loading:N,onScale:e=>L({...E,scale:e})})]})}),G.size>0&&(0,t.jsx)(tv,{ids:[...G],onClear:K})]})}var tS=e.i(592381),tM=e.i(287272),tC=e.i(240595);let tz=[{value:"XS (< 1 hr)",label:"XS — under 1 hr"},{value:"S (1-2 hrs)",label:"S — 1–2 hrs"},{value:"M (3-4 hrs)",label:"M — 3–4 hrs"},{value:"L (5-8 hrs)",label:"L — 5–8 hrs"},{value:"XL (> 1 day)",label:"XL — over a day"}];function tD({open:e,onOpenChange:a,rootParam:n,onTaskCreated:l}){let[i,o]=(0,s.useState)(""),[d,c]=(0,s.useState)(""),[u,x]=(0,s.useState)(""),[p,m]=(0,s.useState)(""),[h,b]=(0,s.useState)(""),[f,g]=(0,s.useState)(""),[j,v]=(0,s.useState)(!1);async function N(e){if(e.preventDefault(),!i.trim())return void g("Title is required");v(!0),g("");try{let e=await fetch(`/api/tasks/create${n}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:i.trim(),phase:d.trim()||void 0,size:u||void 0,description:p.trim()||void 0,dependsOn:h.trim()||void 0})});if(!e.ok){let t=await e.json();g(t.error??"Failed to create task"),v(!1);return}v(!1),l(),a(!1)}catch{g("Network error — please try again"),v(!1)}}return(0,s.useEffect)(()=>{e&&(o(""),c(""),x(""),m(""),b(""),g(""),v(!1))},[e]),(0,t.jsx)(tM.Root,{open:e,onOpenChange:a,children:(0,t.jsxs)(tM.Portal,{children:[(0,t.jsx)(tM.Overlay,{className:"fixed inset-0 z-50 bg-black/60"}),(0,t.jsxs)(tM.Content,{className:"fixed z-50 top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-full max-w-lg bg-surface border border-border rounded-xl shadow-2xl",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-5 py-4 border-b border-border",children:[(0,t.jsx)(tM.Title,{className:"font-semibold text-txt",children:"New Task"}),(0,t.jsx)(tM.Close,{className:"text-muted hover:text-txt transition-colors",children:(0,t.jsx)(W.X,{className:"w-4 h-4"})})]}),(0,t.jsxs)("form",{onSubmit:N,className:"p-5 space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsxs)("label",{className:"block text-xs font-medium text-muted uppercase tracking-wide",children:["Title ",(0,t.jsx)("span",{className:"text-danger",children:"*"})]}),(0,t.jsx)("input",{autoFocus:!0,type:"text",value:i,onChange:e=>o(e.target.value),placeholder:"e.g. Add drag-and-drop to kanban",className:"w-full px-3 py-2 bg-surface2 border border-border rounded-lg text-sm text-txt placeholder:text-muted focus:outline-hidden focus:border-accent transition-colors"})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-muted uppercase tracking-wide",children:"Phase"}),(0,t.jsx)("input",{type:"text",value:d,onChange:e=>c(e.target.value),placeholder:"e.g. 1 — Core",className:"w-full px-3 py-2 bg-surface2 border border-border rounded-lg text-sm text-txt placeholder:text-muted focus:outline-hidden focus:border-accent transition-colors"})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-muted uppercase tracking-wide",children:"Size"}),(0,t.jsxs)("select",{value:u,onChange:e=>x(e.target.value),className:"w-full px-3 py-2 bg-surface2 border border-border rounded-lg text-sm text-txt focus:outline-hidden focus:border-accent transition-colors",children:[(0,t.jsx)("option",{value:"",children:"—"}),tz.map(e=>(0,t.jsx)("option",{value:e.value,children:e.label},e.value))]})]})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-muted uppercase tracking-wide",children:"Depends on"}),(0,t.jsx)("input",{type:"text",value:h,onChange:e=>b(e.target.value),placeholder:"e.g. T001, T003",className:"w-full px-3 py-2 bg-surface2 border border-border rounded-lg text-sm text-txt placeholder:text-muted focus:outline-hidden focus:border-accent transition-colors"})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-muted uppercase tracking-wide",children:"Description"}),(0,t.jsx)("textarea",{value:p,onChange:e=>m(e.target.value),placeholder:"What needs to be built?",rows:3,className:"w-full px-3 py-2 bg-surface2 border border-border rounded-lg text-sm text-txt placeholder:text-muted focus:outline-hidden focus:border-accent transition-colors resize-none"})]}),f&&(0,t.jsx)("p",{className:"text-sm text-danger",children:f}),(0,t.jsxs)("div",{className:"flex items-center justify-end gap-2 pt-1",children:[(0,t.jsx)(tM.Close,{type:"button",className:"px-4 py-2 text-sm text-muted hover:text-txt transition-colors",children:"Cancel"}),(0,t.jsxs)("button",{type:"submit",disabled:j||!i.trim(),className:(0,y.cn)("flex items-center gap-2 px-4 py-2 rounded-lg text-sm font-medium transition-colors","bg-accent text-accent-fg hover:bg-accent/90 disabled:opacity-50 disabled:cursor-not-allowed"),children:[j?(0,t.jsx)(tC.Loader2,{className:"w-4 h-4 animate-spin"}):(0,t.jsx)(r.Plus,{className:"w-4 h-4"}),j?"Creating…":"Create Task"]})]})]})]})]})})}function tT(){let{board:e,moveTask:r,refresh:l,rootParam:i}=(0,n.useApp)(),o=(0,a.useRouter)(),[d,c]=(0,s.useState)(null),u=(0,a.useSearchParams)().get("task"),[x,p]=(0,s.useState)(null);e&&u!==x&&(p(u),u&&Object.values(e).flat().some(e=>e.id===u)&&c(u));let[m,h]=(0,s.useState)(!1),b=(0,s.useMemo)(()=>e?Object.values(e).flat():[],[e]),f=b.find(e=>e.id===d)??null;return e?(0,t.jsxs)("div",{className:"relative min-w-0 flex-1",children:[(0,t.jsx)(ty,{tasks:b,onMoveTask:r,onOpenTask:e=>c(e.id),onNewTask:()=>h(!0)}),(0,t.jsx)(tS.TaskDetailPanel,{task:f,onClose:()=>{let e;c(null),u&&((e=new URLSearchParams(window.location.search)).delete("task"),o.replace(e.size?`/board?${e}`:"/board",{scroll:!1}))},onMove:r}),(0,t.jsx)(tD,{open:m,onOpenChange:h,rootParam:i,onTaskCreated:l})]}):null}e.s(["default",0,function(){return(0,t.jsx)(s.Suspense,{children:(0,t.jsx)(tT,{})})}],955787)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,363216,e=>{"use strict";var t=e.i(83790);let n={name:"calendar",size:24,node:[["path",{d:"M8 2v3",key:"1ioesn"}],["path",{d:"M16 2v3",key:"otl347"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}],["path",{d:"M3 9h18",key:"1pudct"}]]};n.node;let a=(0,t.default)(n);e.s(["Calendar",0,a],363216)},811613,e=>{"use strict";var t=e.i(83790);let n={name:"circle-dashed",size:24,node:[["path",{d:"M10.1 2.182a10 10 0 0 1 3.8 0",key:"5ilxe3"}],["path",{d:"M13.9 21.818a10 10 0 0 1-3.8 0",key:"11zvb9"}],["path",{d:"M17.609 3.721a10 10 0 0 1 2.69 2.7",key:"1iw5b2"}],["path",{d:"M2.182 13.9a10 10 0 0 1 0-3.8",key:"c0bmvh"}],["path",{d:"M20.279 17.609a10 10 0 0 1-2.7 2.69",key:"1ruxm7"}],["path",{d:"M21.818 10.1a10 10 0 0 1 0 3.8",key:"qkgqxc"}],["path",{d:"M3.721 6.391a10 10 0 0 1 2.7-2.69",key:"1mcia2"}],["path",{d:"M6.391 20.279a10 10 0 0 1-2.69-2.7",key:"1fvljs"}]]};n.node;let a=(0,t.default)(n);e.s(["CircleDashed",0,a],811613)},248070,65112,775549,e=>{"use strict";var t=e.i(83790);let n={name:"ellipsis",size:24,node:[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],aliases:["more-horizontal"]};n.node;let a=(0,t.default)(n);e.s(["MoreHorizontal",0,a],248070);var s=e.i(72345),r=e.i(975157),l=e.i(940837),i=e.i(180338),o=e.i(837001),d=e.i(755146);let c=e=>e.stopPropagation(),u="inline-flex min-w-0 items-center gap-1 rounded-sm px-1 -mx-1 text-left outline-hidden hover:bg-surface2 focus-visible:ring-2 focus-visible:ring-accent/60";function p({label:e,value:t,options:n,onChange:a,children:l,className:i}){return(0,s.jsxs)(d.DropdownMenu,{children:[(0,s.jsx)(d.DropdownMenuTrigger,{asChild:!0,children:(0,s.jsx)("button",{type:"button","aria-label":e,draggable:!1,onClick:c,onKeyDown:c,onPointerDown:c,className:(0,r.cn)(u,i),children:l})}),(0,s.jsx)(d.DropdownMenuContent,{align:"start",className:"max-h-72 w-48 overflow-y-auto",onClick:c,onKeyDown:c,children:n.map(e=>(0,s.jsxs)(d.DropdownMenuItem,{onSelect:()=>{e.value!==t&&a(e.value)},children:[e.node??e.label,e.value===t&&(0,s.jsx)(o.Check,{className:"ml-auto size-3.5 text-muted","aria-hidden":!0})]},e.value))})]})}e.s(["InlineDate",0,function({label:e,value:t,onChange:n,children:a,className:l}){let[o,d]=(0,i.useState)(!1),[p,x]=(0,i.useState)(t??""),m=()=>{d(!1),(p||null)!==t&&n(p||null)};return o?(0,s.jsx)("input",{type:"date",autoFocus:!0,"aria-label":e,value:p,onChange:e=>x(e.target.value),onClick:c,onPointerDown:c,onKeyDown:e=>{c(e),"Enter"===e.key&&(e.preventDefault(),m()),"Escape"===e.key&&(e.preventDefault(),d(!1))},onBlur:m,className:"h-6 rounded-sm border border-accent/60 bg-bg px-1 font-mono text-[11px] text-txt scheme-light outline-hidden dark:scheme-dark"}):(0,s.jsx)("button",{type:"button","aria-label":e,draggable:!1,onClick:e=>{c(e),x(t??""),d(!0)},onKeyDown:c,className:(0,r.cn)(u,l),children:a})},"InlineSelect",0,p,"InlineText",0,function({label:e,value:t,onChange:n,children:a,className:l,placeholder:o,startEditing:d=!1,onCancel:p}){let[x,m]=(0,i.useState)(d),[h,g]=(0,i.useState)(t??""),f=()=>{m(!1);let e=h.trim()||null;e!==t?n(e):e||p?.()};return x?(0,s.jsx)("input",{autoFocus:!0,"aria-label":e,value:h,placeholder:o,onChange:e=>g(e.target.value),onClick:c,onPointerDown:c,onKeyDown:e=>{c(e),"Enter"===e.key&&(e.preventDefault(),f()),"Escape"===e.key&&(e.preventDefault(),m(!1),p?.())},onBlur:f,className:"h-7 w-full min-w-0 rounded-sm border border-accent/60 bg-bg px-1.5 text-[13px] text-txt outline-hidden placeholder:text-muted"}):(0,s.jsx)("button",{type:"button","aria-label":e,draggable:!1,onClick:e=>{c(e),g(t??""),m(!0)},onKeyDown:c,className:(0,r.cn)(u,l),children:a})}],65112);let x={P0:"bg-danger/12 text-danger",P1:"bg-amber/12 text-amber",P2:"bg-surface2 text-txt",P3:"bg-surface2 text-muted"};function m({priority:e,className:t}){return(0,s.jsx)("span",{className:(0,r.cn)("inline-flex h-4 shrink-0 items-center rounded-sm px-1 font-mono text-[10px] font-medium leading-none",x[e],t),children:e})}let h=[...l.PRIORITIES.map(e=>({value:e,label:e,node:(0,s.jsx)(m,{priority:e})})),{value:"",label:"No priority",node:(0,s.jsx)("span",{className:"text-muted",children:"No priority"})}];e.s(["PriorityBadge",0,m,"PriorityField",0,function({label:e,value:t,onChange:n,empty:a}){return(0,s.jsx)(p,{label:e,value:t??"",options:h,onChange:e=>n(e||null),children:t?(0,s.jsx)(m,{priority:t}):a??(0,s.jsx)("span",{className:"text-muted",children:"—"})})}],775549)},246978,e=>{"use strict";var t=e.i(83790);let n={name:"folder-input",size:24,node:[["path",{d:"M2 9V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-1",key:"fm4g5t"}],["path",{d:"M2 13h10",key:"pgb2dq"}],["path",{d:"m9 16 3-3-3-3",key:"6m91ic"}]]};n.node;let a=(0,t.default)(n);e.s(["FolderInput",0,a],246978)},880790,e=>{"use strict";var t=e.i(83790);let n={name:"list-checks",size:24,node:[["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"}]]};n.node;let a=(0,t.default)(n);e.s(["ListChecks",0,a],880790)},506534,e=>{"use strict";var t=e.i(83790);let n={name:"list-tree",size:24,node:[["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 19h8",key:"c3s6r1"}],["path",{d:"M3 10a2 2 0 0 0 2 2h3",key:"1npucw"}],["path",{d:"M3 5v12a2 2 0 0 0 2 2h3",key:"x1gjn2"}]]};n.node;let a=(0,t.default)(n);e.s(["ListTree",0,a],506534)},475850,e=>{"use strict";var t=e.i(83790);let n={name:"message-square",size:24,node:[["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"}]]};n.node;let a=(0,t.default)(n);e.s(["MessageSquare",0,a],475850)},424991,e=>{"use strict";var t=e.i(83790);let n={name:"pencil",size:24,node:[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]};n.node;let a=(0,t.default)(n);e.s(["Pencil",0,a],424991)},885600,e=>{"use strict";var t=e.i(83790);let n={name:"sparkles",size:24,node:[["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"}]],aliases:["stars"]};n.node;let a=(0,t.default)(n);e.s(["Sparkles",0,a],885600)},496385,e=>{"use strict";var t=e.i(83790);let n={name:"triangle-alert",size:24,node:[["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"}]],aliases:["alert-triangle"]};n.node;let a=(0,t.default)(n);e.s(["AlertTriangle",0,a],496385)},723528,e=>{"use strict";var t=e.i(72345),n=e.i(479432),a=e.i(240595),s=e.i(975157),r=e.i(244267),l=e.i(844081);let i={running:"Agent working","needs-answer":"Agent needs you",review:"Plan to review"};e.s(["AgentDot",0,function({attach:e}){let n=(0,r.useItemAgent)(e);return n?(0,t.jsx)(l.StatusMarker,{status:n.status,label:i[n.status]}):null},"AgentMark",0,function({attach:e,className:l}){let o=(0,r.useItemAgent)(e),{show:d}=(0,r.useChats)();if(!o)return null;let c=i[o.status];return(0,t.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),d(o.chatId)},title:`${c} \xb7 open chat`,"aria-label":`${c}, open chat`,className:(0,s.cn)("nodrag inline-flex shrink-0 items-center gap-1 rounded-full border px-1.5 py-px font-mono text-[10px] leading-4 animate-fade-in transition-colors duration-(--duration-fast)","running"===o.status&&"border-accent/50 text-accent hover:bg-accent/10","needs-answer"===o.status&&"border-amber/50 text-amber hover:bg-amber/10","review"===o.status&&"border-accent/50 bg-accent/10 text-accent hover:bg-accent/20",l),children:["running"===o.status?(0,t.jsx)(a.Loader2,{className:"size-3 animate-spin","aria-hidden":!0}):(0,t.jsx)(n.Bot,{className:"size-3","aria-hidden":!0}),c]})}])},651581,692172,640818,450768,e=>{"use strict";var t=e.i(72345),n=e.i(211672),a=e.i(301702),s=e.i(496385),r=e.i(837001),l=e.i(975157);function i(e,t,n){let a;return e?"done"===t?"done":e<n?"overdue":7>=Math.round(((a=e=>Date.UTC(+e.slice(0,4),e.slice(5,7)-1,+e.slice(8,10)))(e)-a(n))/864e5)?"soon":"ok":null}function o(e){return e.every(e=>"done"===e)?"done":e.some(e=>"other"!==e)?"in-progress":"planned"}e.s(["dueState",0,i,"localToday",0,function(e=new Date){let t=e=>String(e).padStart(2,"0");return`${e.getFullYear()}-${t(e.getMonth()+1)}-${t(e.getDate())}`},"roadmapHealth",0,function(e,t,n){let a={},s=[];for(let t of e)t.due&&"overdue"===i(t.due,t.status,n)&&s.push({id:t.id,kind:"overdue",message:`${t.id} "${t.title}" is overdue since ${t.due}`});let r=new Set(e.filter(e=>null===e.parent).map(e=>e.id));for(let r of e){if(null===r.parent)continue;let e=r.tasks.filter(e=>!(e in t));e.length&&s.push({id:r.id,kind:"missing-task",message:`${r.id} links unknown task ${e.join(", ")}`});let l=r.tasks.filter(e=>e in t&&"cancelled"!==t[e].status),d="done"===r.status||"paused"===r.status?[]:function(e,t,n,a){let s=[];for(let e of t){let t=n[e];"done"!==t.status&&t.due&&t.due<a&&s.push(`${e} overdue since ${t.due}`),"blocked"===t.status&&s.push(`${e} blocked`)}let r=t.some(e=>["done","in-progress","review"].includes(n[e].status));return e.due&&"soon"===i(e.due,e.status,a)&&!r&&s.push(`due ${e.due}, nothing started`),s}(r,l,t,n);if(d.length&&s.push({id:r.id,kind:"at-risk",message:`${r.id} "${r.title}" at risk: ${d.join("; ")}`}),!l.length)continue;let c=l.map(e=>"done"===t[e].status?"done":"in-progress"===t[e].status||"review"===t[e].status?"in-progress":"other");a[r.id]={done:c.filter(e=>"done"===e).length,total:l.length};let u=o(c);if(u!==r.status&&("paused"!==r.status||"done"===u)){let e=l.filter(e=>"done"!==t[e].status);s.push({id:r.id,kind:"status-mismatch",message:"done"===u?`${r.id} "${r.title}": all tasks done but status is ${r.status}`:`${r.id} "${r.title}" is ${r.status} but tasks ${e.join(", ")} are not done`,suggestedStatus:u})}}for(let t of e){if(!r.has(t.id))continue;let n=e.filter(e=>e.parent===t.id);if(!n.length)continue;let l=n.map(e=>"done"===e.status?"done":"in-progress"===e.status?"in-progress":"other");a[t.id]=n.reduce((e,t)=>{let n=a[t.id]??{done:+("done"===t.status),total:1};return{done:e.done+n.done,total:e.total+n.total}},{done:0,total:0});let i=o(l);i!==t.status&&("paused"!==t.status||"done"===i)&&s.push({id:t.id,kind:"status-mismatch",message:`${t.id} "${t.title}" is ${t.status} but its features say ${i}`,suggestedStatus:i})}return{progress:a,drift:s}},"taskDueSummary",0,function(e,t,n){let a=e.map(e=>t[e]).filter(e=>e&&e.due&&"done"!==e.status&&"cancelled"!==e.status).map(e=>e.due);if(!a.length)return null;let s=a.filter(e=>e>=n).sort();return{overdue:a.length-s.length,next:s[0]??null}}],692172);function d(e){let t=new Set(e.filter(e=>null===e.parent).map(e=>e.id));return e.filter(e=>null===e.parent||!t.has(e.parent)).sort((e,t)=>e.order-t.order)}function c(e,t){return e.filter(e=>e.parent===t).sort((e,t)=>e.order-t.order)}e.s(["FEATURE_W",0,220,"HORIZON_W",0,260,"arrangePositions",0,function(e,t){let n={},a=0;for(let s of d(e)){let r=t(s.id),l=null===s.parent?c(e,s.id):[],i=[[],[]],o=[0,0];for(let e of l){let n=o[0]<=o[1]?0:1;i[n].push({id:e.id,y:o[n]}),o[n]+=t(e.id)+14}let d=o.map(e=>Math.max(0,e-14)),u=r/2,p=d.map(e=>u-e/2),x=a-Math.min(0,...p);n[s.id]={x:0,y:x},i.forEach((e,t)=>{let a=20+(0===t?1:-1)*340;for(let{id:s,y:r}of e)n[s]={x:a,y:x+p[t]+r}}),a=x+Math.max(r,...p.map((e,t)=>e+d[t]))+120}return n},"childrenOf",0,c,"resolvePositions",0,function(e,t){let n={},a=0;for(let s of d(e)){let r=t[s.id]??{x:0,y:a};n[s.id]=r;let l=null===s.parent?c(e,s.id):[],i=Math.ceil(l.length/2)>6?2:1;l.forEach((e,a)=>{let s=a%2==0?1:-1,l=Math.floor(a/2),o=l%i,d=Math.floor(l/i);n[e.id]=t[e.id]??{x:r.x+20+s*(340+260*o),y:r.y+110*d+55*o}}),a+=110*Math.max(1,Math.ceil(Math.ceil(l.length/2)/i))+90}return n},"spineItems",0,d],640818);let u=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],p=e=>({y:+e.slice(0,4),m:+e.slice(5,7),day:+e.slice(8,10)});function x(e){let{m:t,day:n}=p(e);return`${n} ${u[t-1]}`}e.s(["LANE_ROW_H",0,44,"buildTimeline",0,function(e,t){let n=e.map(e=>e.due).filter(e=>!!e),a=p([t,...n].sort()[0]),s=p([t,...n].sort().at(-1)??t),r={y:a.y,m:a.m-1},l=Math.max(6,(s.y-a.y)*12+(s.m-a.m)+3),o=Array.from({length:l},(e,t)=>{let n=12*r.y+(r.m-1)+t,a=Math.floor(n/12),s=n%12+1;return{y:a,m:s,label:1===s||0===t?`${u[s-1]} ${a}`:u[s-1],x:160*t}}),x=e=>{let{y:t,m:n,day:a}=p(e);return((t-o[0].y)*12+(n-o[0].m))*160+(a-.5)/new Date(t,n,0).getDate()*160},m=d(e).map(n=>{let a=[n,...null===n.parent?c(e,n.id):[]].filter(e=>e.due),s=[],r=a.map(e=>({item:e,x:x(e.due),horizon:e.id===n.id})).sort((e,t)=>e.x-t.x).map(e=>{let n=s.findIndex(t=>e.x>=t);return -1===n&&(n=s.push(0)-1),s[n]=e.x+180,{...e,row:n,state:i(e.item.due,e.item.status,t)}});return{item:n,rows:Math.max(1,s.length),markers:r}});return{months:o.map(({label:e,x:t})=>({label:e,x:t})),width:160*l,todayX:x(t),lanes:m,undated:e.filter(e=>!e.due&&"done"!==e.status)}},"formatDay",0,x],450768);var m=e.i(723528),h=e.i(244267);let g=[a.Position.Top,a.Position.Right,a.Position.Bottom,a.Position.Left];function f(){return(0,t.jsxs)(t.Fragment,{children:[g.map(e=>(0,t.jsx)(n.Handle,{id:e,type:"source",position:e,isConnectable:!1,className:"opacity-0"},e)),g.map(e=>(0,t.jsx)(n.Handle,{id:`${e}-t`,type:"target",position:e,isConnectable:!1,className:"opacity-0"},`${e}-t`))]})}let b={"in-progress":"Active",paused:"Paused",done:"Done",planned:"Planned"};function k({status:e,className:n}){return(0,t.jsxs)("span",{title:b[e],"aria-label":b[e],className:(0,l.cn)("relative inline-flex h-2 w-2 shrink-0",n),children:["in-progress"===e&&(0,t.jsx)("span",{className:"absolute inset-0 animate-ping rounded-full bg-accent/60"}),(0,t.jsx)("span",{className:(0,l.cn)("relative h-full w-full rounded-full","done"===e&&"bg-teal","in-progress"===e&&"bg-accent","planned"===e&&"border border-muted","paused"===e&&"bg-muted")})]})}let y={done:"bg-teal","in-progress":"bg-amber",review:"bg-accent",blocked:"bg-danger",paused:"bg-muted/60",todo:"bg-border2",cancelled:"bg-border"};function j({statuses:e,className:n}){if(!e?.length)return null;let a=e.filter(e=>"done"===e).length;return(0,t.jsx)("div",{className:(0,l.cn)("flex h-1.5 min-w-0 flex-1 gap-0.5",n),title:`${a}/${e.length} tasks done`,children:e.map((e,n)=>(0,t.jsx)("span",{className:(0,l.cn)("h-full flex-1 rounded-[1px]",y[e])},n))})}function v({value:e,total:n,className:a}){let s=2*Math.PI*14,r=n>0?e/n:0;return(0,t.jsxs)("span",{className:(0,l.cn)("relative inline-flex h-9 w-9 shrink-0 items-center justify-center",a),title:`${e}/${n} tasks done`,children:[(0,t.jsxs)("svg",{viewBox:"0 0 36 36",className:"absolute inset-0 -rotate-90",children:[(0,t.jsx)("circle",{cx:"18",cy:"18",r:14,fill:"none",strokeWidth:"3",className:"stroke-border"}),(0,t.jsx)("circle",{cx:"18",cy:"18",r:14,fill:"none",strokeWidth:"3",stroke:"currentColor",strokeLinecap:"round",strokeDasharray:s,strokeDashoffset:s*(1-r)})]}),(0,t.jsx)("span",{className:"font-mono text-[9px] text-txt",children:Math.round(100*r)})]})}function N({due:e,state:n}){return e?(0,t.jsxs)("span",{className:(0,l.cn)("font-mono text-[10px]","overdue"===n?"text-danger":"soon"===n?"text-amber":"text-muted"),children:["Due ",x(e)]}):null}function w({data:e}){let n=e.taskDue;return n&&n.overdue>0?(0,t.jsxs)("span",{className:"font-mono text-[10px] text-danger",children:[n.overdue," ",1===n.overdue?"task":"tasks"," overdue"]}):e.item.due?(0,t.jsx)(N,{due:e.item.due,state:e.dueState}):n?.next?(0,t.jsxs)("span",{className:(0,l.cn)("font-mono text-[10px]",e.taskDueSoon?"text-amber":"text-muted"),children:["Next due ",x(n.next)]}):null}function M({drift:e}){return e?.length?(0,t.jsx)("span",{title:e.join("\n"),className:"absolute -left-2 -top-2 rounded-full bg-bg p-0.5 text-amber",children:(0,t.jsx)(s.AlertTriangle,{className:"h-3.5 w-3.5"})}):null}e.s(["DueChip",0,N,"STATUS_LABEL",0,b,"SegmentedProgress",0,j,"StatusDot",0,k,"StatusPill",0,function({status:e}){return(0,t.jsxs)("span",{className:(0,l.cn)("inline-flex items-center gap-1.5 rounded-full border px-2 py-0.5 font-mono text-[10px] uppercase tracking-wider","done"===e&&"border-teal/40 text-teal","in-progress"===e&&"border-accent/50 text-accent","planned"===e&&"border-dashed border-border2 text-muted","paused"===e&&"border-border2 text-muted"),children:[(0,t.jsx)(k,{status:e,className:"h-1.5 w-1.5"}),b[e]]})},"TASK_STATUS_BG",0,y,"nodeTypes",0,{horizon:function({data:e,selected:n}){let{item:a,progress:s,epics:r,chapter:i}=e,o=a.status;return(0,t.jsxs)("div",{style:{width:260},className:(0,l.cn)("relative flex items-center gap-3 rounded-xl border bg-surface px-3.5 py-3 transition-shadow duration-(--duration-base)","in-progress"===o&&"border-accent/60 shadow-[0_0_0_1px_rgb(var(--rgb-accent)/0.25),0_10px_30px_-12px_rgb(var(--rgb-accent)/0.6)]","done"===o&&"border-teal/40","planned"===o&&"border-dashed border-border2","paused"===o&&"border-border2 opacity-75",n&&"ring-2 ring-accent/60 ring-offset-2 ring-offset-bg"),children:[(0,t.jsx)(f,{}),(0,t.jsx)("span",{className:(0,l.cn)("font-mono text-2xl font-semibold leading-none tabular-nums","in-progress"===o?"text-accent":"done"===o?"text-teal":"text-muted"),children:i?String(i).padStart(2,"0"):"··"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("p",{className:"text-xs font-semibold uppercase leading-snug tracking-wider text-txt",children:a.title}),(0,t.jsxs)("p",{className:"mt-1 flex flex-wrap items-center gap-x-2 font-mono text-[10px] text-muted",children:[r&&r.total>0&&(0,t.jsxs)("span",{children:[r.done,"/",r.total," epics"]}),(0,t.jsx)(N,{due:a.due,state:e.dueState})]})]}),s&&(0,t.jsx)(v,{value:s.done,total:s.total,className:"done"===o?"text-teal":"text-accent"}),(0,t.jsx)(M,{drift:e.drift})]})},feature:function({data:e,selected:n}){let{item:a,taskStatuses:s,nextTaskId:i}=e,o=(0,h.useItemAgent)({kind:"epic",id:a.id}),d=!!e.drift?.length,c=n&&"ring-2 ring-accent/60 ring-offset-2 ring-offset-bg";if("done"===a.status)return(0,t.jsxs)("div",{style:{width:220},className:(0,l.cn)("group relative flex items-center gap-2 rounded-lg border border-border bg-surface/60 px-3 py-2 hover:border-teal/40",c),children:[(0,t.jsx)(f,{}),(0,t.jsx)(r.Check,{className:"h-3.5 w-3.5 shrink-0 text-teal",strokeWidth:3}),(0,t.jsx)("p",{className:"min-w-0 flex-1 truncate text-[13px] text-muted group-hover:text-txt",title:a.title,children:a.title}),o?(0,t.jsx)(m.AgentMark,{attach:{kind:"epic",id:a.id}}):e.progress&&(0,t.jsxs)("span",{className:"font-mono text-[10px] text-muted",children:[e.progress.done,"/",e.progress.total]}),(0,t.jsx)(M,{drift:e.drift})]});let u="in-progress"===a.status;return(0,t.jsxs)("div",{style:{width:220},className:(0,l.cn)("relative flex flex-col gap-1.5 rounded-lg border px-3 py-2.5 transition-shadow duration-(--duration-base)",u?"border-accent/50 bg-surface shadow-[0_8px_24px_-10px_rgb(var(--rgb-accent)/0.55)]":"border-dashed border-border2 bg-bg hover:border-muted","paused"===a.status&&"opacity-70",c),children:[(0,t.jsx)(f,{}),u&&(0,t.jsx)("span",{className:(0,l.cn)("absolute -inset-y-px -left-px w-[3px] rounded-l-lg",d?"bg-amber":"bg-accent")}),(0,t.jsxs)("div",{className:"flex items-center justify-between font-mono text-[10px]",children:[(0,t.jsx)("span",{className:"text-muted",children:a.id}),o?(0,t.jsx)(m.AgentMark,{attach:{kind:"epic",id:a.id}}):u?(0,t.jsxs)("span",{className:"flex items-center gap-1.5 uppercase tracking-wider text-accent",children:[(0,t.jsx)(k,{status:"in-progress",className:"h-1.5 w-1.5"}),"Live"]}):(0,t.jsx)("span",{className:"uppercase tracking-wider text-muted",children:a.tasks.length?`${a.tasks.length} tasks`:"No tasks yet"})]}),(0,t.jsx)("p",{className:(0,l.cn)("line-clamp-2 text-[13px] leading-snug",u?"font-medium text-txt":"text-txt/80"),title:a.title,children:a.title}),s&&s.length>0&&(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(j,{statuses:s}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-[10px] text-muted",children:u&&i?(0,t.jsxs)(t.Fragment,{children:["next ",(0,t.jsx)("span",{className:"text-txt",children:i})]}):`${s.filter(e=>"done"===e).length}/${s.length}`})]}),(0,t.jsx)(w,{data:e}),(0,t.jsx)(M,{drift:e.drift})]})}}],651581)},635743,e=>{"use strict";var t=e.i(72345),n=e.i(975157);e.s(["EmptyState",0,function({icon:e,message:a,subMessage:s,bordered:r}){return(0,t.jsxs)("div",{className:(0,n.cn)("text-center py-16 text-muted text-sm",r&&"border border-dashed border-border rounded-xl"),children:[(0,t.jsx)("p",{className:"text-3xl mb-3",children:e}),(0,t.jsx)("p",{children:a}),s&&(0,t.jsx)("p",{className:"text-xs mt-1",children:s})]})}])},508540,e=>{"use strict";var t=e.i(72345),n=e.i(975157);function a({properties:e,className:s,children:r}){let l=e.filter(e=>null!==e.value&&void 0!==e.value&&!1!==e.value);return 0!==l.length||r?(0,t.jsxs)("dl",{className:(0,n.cn)("grid grid-cols-[minmax(6.5rem,8.5rem)_minmax(0,1fr)] items-center gap-x-2 text-[13px]",s),children:[l.map(e=>(0,t.jsxs)("div",{className:"contents",children:[(0,t.jsxs)("dt",{className:"flex min-h-8 min-w-0 items-center gap-2 text-muted",children:[e.icon&&(0,t.jsx)(e.icon,{className:"size-3.5 shrink-0","aria-hidden":!0}),(0,t.jsx)("span",{className:"min-w-0 truncate",children:e.label})]}),(0,t.jsx)("dd",{className:"flex min-h-8 min-w-0 items-center gap-2 text-txt",children:e.value})]},e.id??String(e.label))),r&&(0,t.jsx)("div",{className:"col-span-2 flex min-h-8 items-center",children:r})]}):null}e.s(["ItemPanelHeader",0,function({kicker:e,title:s,menu:r,properties:l,className:i,children:o}){return(0,t.jsxs)("header",{"data-item-header":!0,className:(0,n.cn)("flex shrink-0 flex-col gap-2 border-b border-border px-5 pb-4 pt-4",i),children:[(0,t.jsxs)("div",{className:"flex min-h-7 items-center gap-2 pr-8 font-mono text-[11px] text-muted",children:[(0,t.jsx)("div",{className:"flex min-w-0 flex-1 items-center gap-1",children:e}),r]}),(0,t.jsx)("div",{className:"text-base font-semibold leading-snug text-txt",children:s}),(0,t.jsx)(a,{properties:l,className:"-my-0.5"}),o]})},"PropertyRows",0,a])}]);