orcasynth 1.4.1 → 1.4.3

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 (220) hide show
  1. package/dist/api/server.js +14 -5
  2. package/dist/integrations/projectFiles.js +16 -0
  3. package/dist/integrations/usage/claude.js +7 -7
  4. package/dist/integrations/usage/codex.js +5 -7
  5. package/dist/integrations/usage/index.js +2 -8
  6. package/dist/integrations/usage/walk.js +14 -0
  7. package/dist/overseer/stuckDetector.js +4 -10
  8. package/dist/shared/id.js +7 -0
  9. package/dist/shared/time.js +12 -0
  10. package/dist/store/cascade.js +24 -0
  11. package/dist/store/db.js +3 -0
  12. package/dist/store/projectStore.js +8 -6
  13. package/dist/store/schema.sql +1 -1
  14. package/dist/store/taskStore.js +2 -8
  15. package/package.json +1 -1
  16. package/web-dist/.next/BUILD_ID +1 -1
  17. package/web-dist/.next/build-manifest.json +3 -3
  18. package/web-dist/.next/server/app/_global-error.html +1 -1
  19. package/web-dist/.next/server/app/_global-error.rsc +1 -1
  20. package/web-dist/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  21. package/web-dist/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  22. package/web-dist/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  23. package/web-dist/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  24. package/web-dist/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  25. package/web-dist/.next/server/app/_not-found/page.js.nft.json +1 -1
  26. package/web-dist/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  27. package/web-dist/.next/server/app/_not-found.html +1 -1
  28. package/web-dist/.next/server/app/_not-found.rsc +11 -11
  29. package/web-dist/.next/server/app/_not-found.segments/_full.segment.rsc +11 -11
  30. package/web-dist/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
  31. package/web-dist/.next/server/app/_not-found.segments/_index.segment.rsc +6 -6
  32. package/web-dist/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  33. package/web-dist/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  34. package/web-dist/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  35. package/web-dist/.next/server/app/account/page.js.nft.json +1 -1
  36. package/web-dist/.next/server/app/account/page_client-reference-manifest.js +1 -1
  37. package/web-dist/.next/server/app/account.html +1 -1
  38. package/web-dist/.next/server/app/account.rsc +13 -13
  39. package/web-dist/.next/server/app/account.segments/_full.segment.rsc +13 -13
  40. package/web-dist/.next/server/app/account.segments/_head.segment.rsc +4 -4
  41. package/web-dist/.next/server/app/account.segments/_index.segment.rsc +6 -6
  42. package/web-dist/.next/server/app/account.segments/_tree.segment.rsc +2 -2
  43. package/web-dist/.next/server/app/account.segments/account/__PAGE__.segment.rsc +4 -4
  44. package/web-dist/.next/server/app/account.segments/account.segment.rsc +3 -3
  45. package/web-dist/.next/server/app/dash/page.js.nft.json +1 -1
  46. package/web-dist/.next/server/app/dash/page_client-reference-manifest.js +1 -1
  47. package/web-dist/.next/server/app/dash.html +1 -1
  48. package/web-dist/.next/server/app/dash.rsc +13 -13
  49. package/web-dist/.next/server/app/dash.segments/_full.segment.rsc +13 -13
  50. package/web-dist/.next/server/app/dash.segments/_head.segment.rsc +4 -4
  51. package/web-dist/.next/server/app/dash.segments/_index.segment.rsc +6 -6
  52. package/web-dist/.next/server/app/dash.segments/_tree.segment.rsc +2 -2
  53. package/web-dist/.next/server/app/dash.segments/dash/__PAGE__.segment.rsc +4 -4
  54. package/web-dist/.next/server/app/dash.segments/dash.segment.rsc +3 -3
  55. package/web-dist/.next/server/app/escalations/page.js.nft.json +1 -1
  56. package/web-dist/.next/server/app/escalations/page_client-reference-manifest.js +1 -1
  57. package/web-dist/.next/server/app/escalations.html +1 -1
  58. package/web-dist/.next/server/app/escalations.rsc +13 -13
  59. package/web-dist/.next/server/app/escalations.segments/_full.segment.rsc +13 -13
  60. package/web-dist/.next/server/app/escalations.segments/_head.segment.rsc +4 -4
  61. package/web-dist/.next/server/app/escalations.segments/_index.segment.rsc +6 -6
  62. package/web-dist/.next/server/app/escalations.segments/_tree.segment.rsc +2 -2
  63. package/web-dist/.next/server/app/escalations.segments/escalations/__PAGE__.segment.rsc +4 -4
  64. package/web-dist/.next/server/app/escalations.segments/escalations.segment.rsc +3 -3
  65. package/web-dist/.next/server/app/index.html +1 -1
  66. package/web-dist/.next/server/app/index.rsc +13 -13
  67. package/web-dist/.next/server/app/index.segments/__PAGE__.segment.rsc +4 -4
  68. package/web-dist/.next/server/app/index.segments/_full.segment.rsc +13 -13
  69. package/web-dist/.next/server/app/index.segments/_head.segment.rsc +4 -4
  70. package/web-dist/.next/server/app/index.segments/_index.segment.rsc +6 -6
  71. package/web-dist/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  72. package/web-dist/.next/server/app/kanban/page.js.nft.json +1 -1
  73. package/web-dist/.next/server/app/kanban/page_client-reference-manifest.js +1 -1
  74. package/web-dist/.next/server/app/kanban.html +1 -1
  75. package/web-dist/.next/server/app/kanban.rsc +13 -13
  76. package/web-dist/.next/server/app/kanban.segments/_full.segment.rsc +13 -13
  77. package/web-dist/.next/server/app/kanban.segments/_head.segment.rsc +4 -4
  78. package/web-dist/.next/server/app/kanban.segments/_index.segment.rsc +6 -6
  79. package/web-dist/.next/server/app/kanban.segments/_tree.segment.rsc +2 -2
  80. package/web-dist/.next/server/app/kanban.segments/kanban/__PAGE__.segment.rsc +4 -4
  81. package/web-dist/.next/server/app/kanban.segments/kanban.segment.rsc +3 -3
  82. package/web-dist/.next/server/app/onboarding/page.js.nft.json +1 -1
  83. package/web-dist/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  84. package/web-dist/.next/server/app/onboarding.html +1 -1
  85. package/web-dist/.next/server/app/onboarding.rsc +13 -13
  86. package/web-dist/.next/server/app/onboarding.segments/_full.segment.rsc +13 -13
  87. package/web-dist/.next/server/app/onboarding.segments/_head.segment.rsc +4 -4
  88. package/web-dist/.next/server/app/onboarding.segments/_index.segment.rsc +6 -6
  89. package/web-dist/.next/server/app/onboarding.segments/_tree.segment.rsc +2 -2
  90. package/web-dist/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +4 -4
  91. package/web-dist/.next/server/app/onboarding.segments/onboarding.segment.rsc +3 -3
  92. package/web-dist/.next/server/app/page.js.nft.json +1 -1
  93. package/web-dist/.next/server/app/page_client-reference-manifest.js +1 -1
  94. package/web-dist/.next/server/app/projects/page.js.nft.json +1 -1
  95. package/web-dist/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  96. package/web-dist/.next/server/app/projects.html +1 -1
  97. package/web-dist/.next/server/app/projects.rsc +13 -13
  98. package/web-dist/.next/server/app/projects.segments/_full.segment.rsc +13 -13
  99. package/web-dist/.next/server/app/projects.segments/_head.segment.rsc +4 -4
  100. package/web-dist/.next/server/app/projects.segments/_index.segment.rsc +6 -6
  101. package/web-dist/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  102. package/web-dist/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +4 -4
  103. package/web-dist/.next/server/app/projects.segments/projects.segment.rsc +3 -3
  104. package/web-dist/.next/server/app/sessions/page.js.nft.json +1 -1
  105. package/web-dist/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  106. package/web-dist/.next/server/app/sessions.html +1 -1
  107. package/web-dist/.next/server/app/sessions.rsc +13 -13
  108. package/web-dist/.next/server/app/sessions.segments/_full.segment.rsc +13 -13
  109. package/web-dist/.next/server/app/sessions.segments/_head.segment.rsc +4 -4
  110. package/web-dist/.next/server/app/sessions.segments/_index.segment.rsc +6 -6
  111. package/web-dist/.next/server/app/sessions.segments/_tree.segment.rsc +2 -2
  112. package/web-dist/.next/server/app/sessions.segments/sessions/__PAGE__.segment.rsc +4 -4
  113. package/web-dist/.next/server/app/sessions.segments/sessions.segment.rsc +3 -3
  114. package/web-dist/.next/server/app/settings/page.js.nft.json +1 -1
  115. package/web-dist/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  116. package/web-dist/.next/server/app/settings.html +1 -1
  117. package/web-dist/.next/server/app/settings.rsc +13 -13
  118. package/web-dist/.next/server/app/settings.segments/_full.segment.rsc +13 -13
  119. package/web-dist/.next/server/app/settings.segments/_head.segment.rsc +4 -4
  120. package/web-dist/.next/server/app/settings.segments/_index.segment.rsc +6 -6
  121. package/web-dist/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  122. package/web-dist/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +4 -4
  123. package/web-dist/.next/server/app/settings.segments/settings.segment.rsc +3 -3
  124. package/web-dist/.next/server/app/tasks/page.js.nft.json +1 -1
  125. package/web-dist/.next/server/app/tasks/page_client-reference-manifest.js +1 -1
  126. package/web-dist/.next/server/app/tasks.html +1 -1
  127. package/web-dist/.next/server/app/tasks.rsc +13 -13
  128. package/web-dist/.next/server/app/tasks.segments/_full.segment.rsc +13 -13
  129. package/web-dist/.next/server/app/tasks.segments/_head.segment.rsc +4 -4
  130. package/web-dist/.next/server/app/tasks.segments/_index.segment.rsc +6 -6
  131. package/web-dist/.next/server/app/tasks.segments/_tree.segment.rsc +2 -2
  132. package/web-dist/.next/server/app/tasks.segments/tasks/__PAGE__.segment.rsc +4 -4
  133. package/web-dist/.next/server/app/tasks.segments/tasks.segment.rsc +3 -3
  134. package/web-dist/.next/server/app/timeline/page.js.nft.json +1 -1
  135. package/web-dist/.next/server/app/timeline/page_client-reference-manifest.js +1 -1
  136. package/web-dist/.next/server/app/timeline.html +1 -1
  137. package/web-dist/.next/server/app/timeline.rsc +13 -13
  138. package/web-dist/.next/server/app/timeline.segments/_full.segment.rsc +13 -13
  139. package/web-dist/.next/server/app/timeline.segments/_head.segment.rsc +4 -4
  140. package/web-dist/.next/server/app/timeline.segments/_index.segment.rsc +6 -6
  141. package/web-dist/.next/server/app/timeline.segments/_tree.segment.rsc +2 -2
  142. package/web-dist/.next/server/app/timeline.segments/timeline/__PAGE__.segment.rsc +4 -4
  143. package/web-dist/.next/server/app/timeline.segments/timeline.segment.rsc +3 -3
  144. package/web-dist/.next/server/app/users/page.js.nft.json +1 -1
  145. package/web-dist/.next/server/app/users/page_client-reference-manifest.js +1 -1
  146. package/web-dist/.next/server/app/users.html +1 -1
  147. package/web-dist/.next/server/app/users.rsc +13 -13
  148. package/web-dist/.next/server/app/users.segments/_full.segment.rsc +13 -13
  149. package/web-dist/.next/server/app/users.segments/_head.segment.rsc +4 -4
  150. package/web-dist/.next/server/app/users.segments/_index.segment.rsc +6 -6
  151. package/web-dist/.next/server/app/users.segments/_tree.segment.rsc +2 -2
  152. package/web-dist/.next/server/app/users.segments/users/__PAGE__.segment.rsc +4 -4
  153. package/web-dist/.next/server/app/users.segments/users.segment.rsc +3 -3
  154. package/web-dist/.next/server/chunks/[root-of-the-server]__0bvp8h1._.js +1 -1
  155. package/web-dist/.next/server/chunks/[root-of-the-server]__1dgbigm._.js +1 -1
  156. package/web-dist/.next/server/chunks/[root-of-the-server]__1wxxtv8._.js +1 -1
  157. package/web-dist/.next/server/chunks/ssr/{[root-of-the-server]__1tooevx._.js → [root-of-the-server]__0i_7o4p._.js} +2 -2
  158. package/web-dist/.next/server/chunks/ssr/_015zf-4._.js +1 -1
  159. package/web-dist/.next/server/chunks/ssr/_04ezsju._.js +3 -0
  160. package/web-dist/.next/server/chunks/ssr/_04o_q14._.js +1 -1
  161. package/web-dist/.next/server/chunks/ssr/_057a06r._.js +1 -1
  162. package/web-dist/.next/server/chunks/ssr/_085pshu._.js +1 -1
  163. package/web-dist/.next/server/chunks/ssr/_0tc9z5_._.js +1 -1
  164. package/web-dist/.next/server/chunks/ssr/_0tzourm._.js +1 -1
  165. package/web-dist/.next/server/chunks/ssr/_12jhzvy._.js +3 -0
  166. package/web-dist/.next/server/chunks/ssr/_136wthy._.js +3 -0
  167. package/web-dist/.next/server/chunks/ssr/_193-v_i._.js +3 -0
  168. package/web-dist/.next/server/chunks/ssr/_1heytlk._.js +3 -0
  169. package/web-dist/.next/server/chunks/ssr/_1mjzb9s._.js +1 -1
  170. package/web-dist/.next/server/chunks/ssr/_1xwktd-._.js +1 -1
  171. package/web-dist/.next/server/chunks/ssr/_1zscr7t._.js +3 -0
  172. package/web-dist/.next/server/chunks/ssr/app_dash_page_tsx_12v0wx-._.js +1 -1
  173. package/web-dist/.next/server/chunks/ssr/app_kanban_page_tsx_06_8oyf._.js +1 -1
  174. package/web-dist/.next/server/chunks/ssr/app_projects_page_tsx_1w-8z74._.js +3 -3
  175. package/web-dist/.next/server/chunks/ssr/app_tasks_page_tsx_1p6mxbw._.js +1 -1
  176. package/web-dist/.next/server/chunks/ssr/app_timeline_page_tsx_0thxir0._.js +1 -1
  177. package/web-dist/.next/server/chunks/ssr/components_shell_Shell_tsx_1e5c27h._.js +1 -1
  178. package/web-dist/.next/server/middleware-build-manifest.js +3 -3
  179. package/web-dist/.next/server/pages/404.html +1 -1
  180. package/web-dist/.next/server/pages/500.html +1 -1
  181. package/web-dist/.next/static/chunks/0l1t1fcd-_jj9.js +1 -0
  182. package/web-dist/.next/static/chunks/11xbsx12drypd.js +1 -0
  183. package/web-dist/.next/static/chunks/186xbnkxm5iu3.js +1 -0
  184. package/web-dist/.next/static/chunks/1c_1_ca4-vgc7.js +1 -0
  185. package/web-dist/.next/static/chunks/{3wo9m5v__3pi2.js → 1f5f3qgbcjv4u.js} +1 -1
  186. package/web-dist/.next/static/chunks/1t-dast4rat3s.css +2 -0
  187. package/web-dist/.next/static/chunks/1wsag7zex3h4_.js +1 -0
  188. package/web-dist/.next/static/chunks/24unfsl4do--1.js +1 -0
  189. package/web-dist/.next/static/chunks/2bfjq22q8xyfs.js +1 -0
  190. package/web-dist/.next/static/chunks/2kuzf7llj_291.js +1 -0
  191. package/web-dist/.next/static/chunks/2pbhzo7fu4xcs.js +11 -0
  192. package/web-dist/.next/static/chunks/30ztbacooyerd.js +1 -0
  193. package/web-dist/.next/static/chunks/34bew8owm40fg.js +1 -0
  194. package/web-dist/.next/static/chunks/3a7pgnw_6io2v.js +1 -0
  195. package/web-dist/.next/static/chunks/3k-swqzkcvlzm.js +1 -0
  196. package/web-dist/.next/static/chunks/{0xgdqczv5tvu5.js → 3saus_snl5ri7.js} +1 -1
  197. package/web-dist/.next/server/chunks/ssr/_09x5h4x._.js +0 -3
  198. package/web-dist/.next/server/chunks/ssr/_0lctmoh._.js +0 -3
  199. package/web-dist/.next/server/chunks/ssr/_0zho8fx._.js +0 -3
  200. package/web-dist/.next/server/chunks/ssr/_1812xdn._.js +0 -3
  201. package/web-dist/.next/server/chunks/ssr/_1m2qx8p._.js +0 -3
  202. package/web-dist/.next/server/chunks/ssr/_1w24b42._.js +0 -3
  203. package/web-dist/.next/server/chunks/ssr/app_sessions_page_tsx_0r1_4_3._.js +0 -3
  204. package/web-dist/.next/static/chunks/05jfk0-07tiga.js +0 -11
  205. package/web-dist/.next/static/chunks/0x8sf96sz490-.css +0 -2
  206. package/web-dist/.next/static/chunks/201p8-_l1h8w8.js +0 -1
  207. package/web-dist/.next/static/chunks/218i8jnxp91u8.js +0 -1
  208. package/web-dist/.next/static/chunks/2_uoi0tzglv_7.js +0 -1
  209. package/web-dist/.next/static/chunks/2ki5va2_5l6d6.js +0 -1
  210. package/web-dist/.next/static/chunks/2sm_cc2r9sjzp.js +0 -1
  211. package/web-dist/.next/static/chunks/2xur1zqckjlq3.js +0 -1
  212. package/web-dist/.next/static/chunks/35babynx5l240.js +0 -1
  213. package/web-dist/.next/static/chunks/3i0jpc47nxz7y.js +0 -1
  214. package/web-dist/.next/static/chunks/3soklmhd2y9yp.js +0 -1
  215. package/web-dist/.next/static/chunks/3ssnuxdh0r51g.js +0 -1
  216. package/web-dist/.next/static/chunks/3ybvfq13cp-hb.js +0 -1
  217. package/web-dist/.next/static/chunks/3yqt3l54sr5si.js +0 -1
  218. /package/web-dist/.next/static/{qtJrbMvehxNiblgQJOzhz → -qI9ABgqZPR_Ri56jzVI5}/_buildManifest.js +0 -0
  219. /package/web-dist/.next/static/{qtJrbMvehxNiblgQJOzhz → -qI9ABgqZPR_Ri56jzVI5}/_clientMiddlewareManifest.js +0 -0
  220. /package/web-dist/.next/static/{qtJrbMvehxNiblgQJOzhz → -qI9ABgqZPR_Ri56jzVI5}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[63620,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(61296),e=a.i(28886),f=a.i(70106);let g=(0,f.default)("CalendarRange",[["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M17 14h-6",key:"bkmgh3"}],["path",{d:"M13 18H7",key:"bb0bb7"}],["path",{d:"M7 14h.01",key:"1qa3f1"}],["path",{d:"M17 18h.01",key:"1bdyru"}]]);var h=a.i(76645),i=a.i(81415),j=a.i(18517),k=a.i(65151),l=a.i(37956),m=a.i(56468),n=a.i(67453),o=a.i(62722),p=a.i(67329);let q=["open","in_progress","blocked","closed","cancelled"];var r=a.i(31423),s=a.i(69922),t=a.i(41710),u=a.i(34048),v=a.i(7947),w=a.i(47034);let x=(0,f.default)("Timer",[["line",{x1:"10",x2:"14",y1:"2",y2:"2",key:"14vaq8"}],["line",{x1:"12",x2:"15",y1:"14",y2:"11",key:"17fdiu"}],["circle",{cx:"12",cy:"14",r:"8",key:"1e1u0o"}]]);var y=a.i(34205);function z({task:a,showTime:c=!0,showIcon:d=!1,iconSize:e=14}){let{data:f}=(0,h.useConfig)(),g=(0,y.taskExec)(a.labels)||f?.defaults?.exec||"",j=(0,i.taskSessionName)(a)??(0,i.taskAgentName)(a)??g,k=c?(0,i.taskElapsed)(a,Date.now()):null;return j||k?(0,b.jsxs)("div",{className:"flex min-w-0 items-center gap-1.5 font-mono text-[11px] text-text-muted",children:[d?(0,b.jsx)(v.ModelIcon,{name:g,size:e}):null,j?(0,b.jsx)("span",{className:"truncate",children:j}):null,k?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{"aria-hidden":!0,className:"opacity-50",children:"·"}),(0,b.jsxs)("span",{className:"flex shrink-0 items-center gap-1",children:[(0,b.jsx)(x,{size:11,"aria-hidden":!0}),k]})]}):null]}):null}var A=a.i(50522),B=a.i(5556),C=a.i(8435);a.i(28130);var D=a.i(29457);function E({name:a}){let{t:c}=(0,D.useTranslation)(),{tail:d,isLoading:e}=(0,C.useSessionPane)(a,3),f=(0,i.tailSnippet)(d),g=(0,B.sessionActivity)(d);return(0,b.jsxs)("div",{className:"flex min-w-0 items-center gap-1.5",children:[(0,b.jsx)(A.ChevronRight,{size:12,className:"shrink-0 text-success","aria-hidden":!0}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px] text-text-muted",children:f||(e?c.sessions.loading:c.sessions.noOutput)}),(0,b.jsx)(u.Badge,{tone:"error"===g?"danger":"prompted"===g?"warning":"unknown"===g?"muted":"accent",children:c.activity[g]})]})}function F({task:a,sessionName:c,blockers:d}){let{t:e}=(0,D.useTranslation)();if(c)return(0,b.jsx)(E,{name:c});if("closed"===a.status||"cancelled"===a.status){let c="fail"===a.outcome;return(0,b.jsxs)("p",{className:"flex min-w-0 items-center gap-1.5 text-[11px] text-text-muted",children:[c?(0,b.jsx)(o.XCircle,{size:12,className:"shrink-0 text-error","aria-hidden":!0}):(0,b.jsx)(n.CheckCircle2,{size:12,className:"shrink-0 text-success","aria-hidden":!0}),(0,b.jsx)("span",{className:"truncate",children:a.result_summary?.trim()||e.tasks.noSummary})]})}return d&&d.length>0?(0,b.jsxs)("p",{className:"flex min-w-0 items-center gap-1.5 text-[11px] text-danger",children:[(0,b.jsx)(s.Link2,{size:12,className:"shrink-0","aria-hidden":!0}),(0,b.jsx)("span",{className:"truncate",children:e.agent.waitingFor.replace("{deps}",d.map(a=>a.title).join(", "))})]}):"open"===a.status?(0,b.jsx)("p",{className:"text-[11px] text-text-muted opacity-70",children:e.agent.ready}):null}var G=a.i(29930),H=a.i(32824),I=a.i(30322),J=a.i(35360),K=a.i(70150),L=a.i(3470);function M({task:a,blocked:c,blockers:d,dragging:e,statusLabel:f,isPhase:g=!1,onSelect:j,onDragStart:k,onDragEnd:l}){let m,{t:n,locale:o}=(0,D.useTranslation)(),{data:p}=(0,h.useConfig)(),q=(0,h.useSessions)(),r=(0,i.taskSessionName)(a),x="in_progress"===a.status&&!!r&&(q.data??[]).includes(r),A=(0,h.useSessionSignal)(r??""),B=(0,L.useSessionStall)(r??"",x&&!!r),C=(0,y.taskExec)(a.labels)||p?.defaults?.exec||"",E=(0,J.taskTypeMeta)(a.type).icon,N="closed"===a.status||"cancelled"===a.status;return(0,b.jsxs)("div",{draggable:!c,onDragStart:k,onDragEnd:l,onClick:()=>j?.(a),className:`flex gap-2.5 rounded-md border bg-bg p-2.5 transition-all ${c?"cursor-pointer border-danger/40":"cursor-grab border-border hover:border-border-strong"} ${g?"ml-2 border-l-2 border-l-accent/40":""} ${e?"rotate-[1deg] opacity-50":""}`,children:[(0,b.jsx)("span",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-md border border-border bg-elevated",children:C?(0,b.jsx)(v.ModelIcon,{name:C,size:19}):(0,b.jsx)(E,{size:16,className:"text-text-muted","aria-hidden":!0})}),(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1",children:[(0,b.jsxs)("div",{className:"flex items-start gap-2",children:[(0,b.jsx)("span",{className:"min-w-0 flex-1 text-sm text-text",children:a.title}),c?(0,b.jsx)("span",{className:"live-dot shrink-0 text-danger",style:{"--live-ring":"color-mix(in srgb, var(--color-error) 50%, transparent)"},title:n.kanban.blockedDeps,children:(0,b.jsx)(s.Link2,{size:13,"aria-hidden":!0})}):(0,b.jsx)("span",{className:"mt-1.5",children:(0,b.jsx)(w.AgentStatusDot,{signal:A,live:x,stall:B.state,silenceSec:B.silenceSec})})]}),(0,b.jsx)(z,{task:a}),(0,b.jsx)(F,{task:a,sessionName:x?r:null,blockers:d}),(0,b.jsxs)("div",{className:"flex items-center justify-between gap-2 pt-0.5",children:[(0,b.jsx)("span",{className:"truncate font-mono text-[11px] text-text-muted",children:a.id}),(0,b.jsxs)("div",{className:"flex shrink-0 items-center gap-1.5",children:[(m=(0,K.formatTaskTime)(a.closed_at||a.created_at,Date.now(),o)).label?(0,b.jsx)("span",{title:m.title,children:(0,b.jsxs)(u.Badge,{tone:"muted",children:[(0,b.jsx)(t.Clock,{size:11,className:"mr-1 inline","aria-hidden":!0}),m.label]})}):null,N?(0,b.jsx)(G.OutcomeBadge,{outcome:a.outcome}):null,(0,b.jsx)(u.Badge,{tone:(0,I.statusTone)(a.status),children:f})]})]}),null!=a.project_id?(0,b.jsx)("div",{className:"flex",children:(0,b.jsx)(H.ProjectPill,{projectId:a.project_id})}):null]})]})}var N=a.i(81560),O=a.i(58530),P=a.i(49134),Q=a.i(57581),R=a.i(89697);function S({epic:a,phases:d,expanded:e,onToggle:f,effectiveStatus:g,trueStatusLabel:i}){let{t:k}=(0,D.useTranslation)(),l=(0,h.useSessions)(),m=(0,h.useSessionSignals)(),{toast:n}=(0,R.useToast)(),o=(0,j.useDeleteMission)(),[p,q]=(0,c.useState)(!1),{done:s,total:t}=(0,r.epicProgress)(d),{running:u,needsInput:v}=(0,r.epicLive)(d,l.data??[],m),w=(0,J.taskTypeMeta)("epic").icon,x=v>0||u>0,y="in_progress"===g&&"in_progress"!==a.status,z=y&&i?k.kanban.trueStatusTooltip.replace("{status}",i):void 0;return(0,b.jsxs)("div",{role:"button",tabIndex:0,"aria-expanded":e,"aria-label":`${a.title} — ${e?k.tasks.collapsePhases:k.tasks.expandPhases}`,title:z,onClick:f,onKeyDown:a=>{"Enter"===a.key&&f()},className:"group flex cursor-pointer flex-col gap-2 rounded-md border border-accent/30 bg-accent/[0.04] p-2.5 transition-colors hover:border-accent/50",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(A.ChevronRight,{size:14,className:`shrink-0 text-text-muted transition-transform ${e?"rotate-90":""}`,"aria-hidden":!0}),(0,b.jsx)("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md border border-border bg-elevated",children:(0,b.jsx)(w,{size:15,className:"text-accent","aria-hidden":!0})}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-sm font-semibold text-text",children:a.title}),y?(0,b.jsx)("span",{className:"shrink-0 rounded border border-accent/40 px-1 font-mono text-[10px] uppercase tracking-wide text-accent","aria-hidden":!0,children:i}):null,x?(0,b.jsx)("span",{className:`h-2 w-2 shrink-0 rounded-full ${x?"live-dot":""}`,style:{backgroundColor:v>0?"var(--color-warning)":u>0?"var(--color-success)":"var(--color-border-strong)","--live-ring":v>0?"color-mix(in srgb, var(--color-warning) 50%, transparent)":"color-mix(in srgb, var(--color-success) 50%, transparent)"},"aria-hidden":!0}):null,(0,b.jsx)("div",{className:"shrink-0 opacity-0 transition-opacity group-hover:opacity-100",onClick:a=>a.stopPropagation(),children:(0,b.jsx)(P.ActionMenu,{label:k.tasks.deleteMission,items:[{label:k.tasks.deleteMission,icon:N.Trash2,tone:"danger",onSelect:()=>q(!0)}]})})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2 pl-6",children:[(0,b.jsx)(O.ProgressRibbon,{phases:d,className:"flex-1"}),(0,b.jsxs)("span",{className:"shrink-0 font-mono text-[11px] text-text-muted",children:[s,"/",t]})]}),null!=a.project_id?(0,b.jsx)("div",{className:"flex pl-6",children:(0,b.jsx)(H.ProjectPill,{projectId:a.project_id})}):null,p&&(0,b.jsx)("div",{onClick:a=>a.stopPropagation(),children:(0,b.jsx)(Q.ConfirmDialog,{open:p,title:k.tasks.confirmDeleteMissionTitle.replace("{id}",a.id),description:k.tasks.confirmDeleteMissionDescription,confirmLabel:k.tasks.deleteMission,onClose:()=>q(!1),onConfirm:()=>{q(!1),o.mutate(a.id,{onSuccess:()=>n(k.tasks.missionDeleted.replace("{id}",a.id)),onError:a=>n(String(a),"error")})}})})]})}let T=[{status:"open",labelKey:"columnOpen",icon:k.Circle,color:"var(--color-success)"},{status:"in_progress",labelKey:"columnInProgress",icon:l.LoaderCircle,color:"var(--color-warning)"},{status:"blocked",labelKey:"columnBlocked",icon:m.Ban,color:"var(--color-error)"},{status:"closed",labelKey:"columnClosed",icon:n.CheckCircle2,color:"var(--color-error)"},{status:"cancelled",labelKey:"columnCancelled",icon:o.XCircle,color:"var(--color-cancelled)"}];function U({tasks:a,onMove:d,onSelect:e,blockedBy:f,missions:g}){let{t:h}=(0,D.useTranslation)(),i=g??[],j=(0,r.epicChildren)(a),k=(0,r.phaseIds)(a),l=a=>"epic"===a.type?(0,r.epicEffectiveStatus)(a,i,j.get(a.id)??[]):a.status,m=function(a,b=a=>a.status){let c=Object.fromEntries(q.map(a=>[a,[]]));for(let d of a)(c[b(d)]??=[]).push(d);return c}(a,l),n=new Map(a.map(a=>[a.id,a])),[o,s]=(0,c.useState)(null),[t,u]=(0,c.useState)(null),[v,w]=(0,c.useState)(new Set),x=(a,c)=>{let d=f?.get(a.id)??[];return(0,b.jsx)(M,{task:a,isPhase:c,blocked:d.length>0,blockers:d,dragging:t===a.id,statusLabel:(0,J.statusLabel)(h,a.status),onSelect:e,onDragStart:b=>{b.dataTransfer.setData("text/plain",a.id),u(a.id)},onDragEnd:()=>{u(null),s(null)}},a.id)};return(0,b.jsx)("div",{className:"flex gap-3 overflow-x-auto",children:T.map(a=>{let e=h.kanban[a.labelKey],f=o===a.status;return(0,b.jsxs)("div",{"data-testid":`column-${a.status}`,className:`flex w-[80vw] shrink-0 flex-col gap-2 rounded-lg border bg-surface p-2 transition-colors sm:w-auto sm:min-w-[14rem] sm:shrink sm:flex-1 ${f?"border-accent/60 bg-elevated/40":"border-border"}`,onDragOver:b=>{b.preventDefault(),o!==a.status&&s(a.status)},onDragLeave:b=>{b.currentTarget.contains(b.relatedTarget)||s(b=>b===a.status?null:b)},onDrop:b=>{b.preventDefault(),s(null),u(null);let c=b.dataTransfer.getData("text/plain");c&&n.get(c)?.status!==a.status&&d(c,a.status)},children:[(0,b.jsxs)("header",{className:"flex items-center justify-between px-1 font-mono uppercase tracking-widest text-text-muted",style:{fontSize:"var(--text-caption)"},children:[(0,b.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,b.jsx)(a.icon,{size:12,style:{color:a.color},"aria-hidden":!0}),e]}),(0,b.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,b.jsx)(p.List,{size:11,className:"text-text-muted","aria-hidden":!0}),m[a.status].filter(a=>!k.has(a.id)).length]})]}),m[a.status].map(a=>{if("epic"===a.type&&j.has(a.id)){let d=j.get(a.id)??[];return(0,b.jsxs)(c.Fragment,{children:[(0,b.jsx)(S,{epic:a,phases:d,expanded:v.has(a.id),onToggle:()=>{let b;return b=a.id,w(a=>{let c=new Set(a);return c.has(b)?c.delete(b):c.add(b),c})},effectiveStatus:l(a),trueStatusLabel:(0,J.statusLabel)(h,a.status)}),v.has(a.id)?d.map(a=>x(a,!0)):null]},a.id)}return k.has(a.id)?null:x(a,!1)})]},a.status)})})}var V=a.i(13749),W=a.i(60702);let X=(0,f.default)("Calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]),Y=(0,f.default)("CalendarPlus",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M21 13V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8",key:"3spt84"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M16 19h6",key:"xwg31i"}],["path",{d:"M19 16v6",key:"tddt3s"}]]);var Z=a.i(15618),$=a.i(83549),_=a.i(12466),aa=a.i(23818),ab=a.i(92058);let ac=(a,b)=>a?new Date(a).toLocaleTimeString(b,{hour:"2-digit",minute:"2-digit"}):"";function ad({task:a,onSelect:c,locale:d,draggable:e}){let f=(0,J.taskTypeMeta)(a.type).icon;return(0,b.jsxs)("button",{type:"button",draggable:e,onDragStart:e?b=>{b.dataTransfer.setData("application/x-task",a.id),b.dataTransfer.effectAllowed="move"}:void 0,onClick:()=>c(a),className:`flex w-full items-center gap-1.5 rounded-md border border-border bg-bg px-1.5 py-1 text-left transition-colors hover:border-border-strong ${e?"cursor-grab active:cursor-grabbing":""}`,title:a.title,children:[(0,b.jsx)(f,{size:12,className:"shrink-0 text-text-muted","aria-hidden":!0}),(0,b.jsx)("span",{className:"font-mono text-tiny text-text-muted",children:ac((0,aa.taskCalDate)(a),d)}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-[11px] text-text",children:a.title})]})}function ae({tasks:a,onSelect:d,onCreateDay:e,onReschedule:f}){let h,{t:i,locale:j}=(0,D.useTranslation)(),[k,l]=(0,c.useState)(null),m=a=>f?{onDragOver:b=>{b.preventDefault();let c=(0,aa.dayKey)(a);k!==c&&l(c)},onDragLeave:b=>{b.currentTarget.contains(b.relatedTarget)||l(b=>b===(0,aa.dayKey)(a)?null:b)},onDrop:b=>{b.preventDefault(),l(null);let c=b.dataTransfer.getData("application/x-task");c&&f(c,a)}}:{},n=[i.calendar.shortMon,i.calendar.shortTue,i.calendar.shortWed,i.calendar.shortThu,i.calendar.shortFri,i.calendar.shortSat,i.calendar.shortSun],[o,p]=(0,ab.usePersistentState)("orca.calendar.range","week",["day","week","month"]),[q,r]=(0,c.useState)(()=>new Date),s=(0,aa.tasksByDay)(a),t=(0,aa.countUnscheduled)(a),v=new Date,w=a=>s.get((0,aa.dayKey)(a))??[],x="month"===o?q.toLocaleDateString(j,{month:"long",year:"numeric"}):"day"===o?q.toLocaleDateString(j,{weekday:"long",month:"short",day:"numeric"}):(h=(0,aa.weekDays)(q),`${h[0].toLocaleDateString(j,{month:"short",day:"numeric"})} – ${h[6].toLocaleDateString(j,{month:"short",day:"numeric"})}`);return(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[(0,b.jsx)($.Segmented,{value:o,onChange:a=>p(a),options:[{value:"day",label:i.calendar.day,icon:X},{value:"week",label:i.calendar.week,icon:g},{value:"month",label:i.calendar.month,icon:W.CalendarDays}]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"text-sm font-medium text-text",children:x}),(0,b.jsx)(_.Button,{variant:"ghost",onClick:()=>r(new Date),children:i.calendar.today}),(0,b.jsx)("button",{type:"button","aria-label":i.calendar.previous,onClick:()=>r(a=>(0,aa.shift)(a,o,-1)),className:"flex h-8 w-8 items-center justify-center rounded-md border border-border text-text-muted transition-colors hover:text-text",children:(0,b.jsx)(V.ChevronLeft,{size:16})}),(0,b.jsx)("button",{type:"button","aria-label":i.calendar.next,onClick:()=>r(a=>(0,aa.shift)(a,o,1)),className:"flex h-8 w-8 items-center justify-center rounded-md border border-border text-text-muted transition-colors hover:text-text",children:(0,b.jsx)(A.ChevronRight,{size:16})})]})]}),"day"===o&&(0,b.jsxs)("div",{className:"flex flex-col gap-2 rounded-lg border border-border bg-surface p-3",children:[0===w(q).length?(0,b.jsx)("p",{className:"px-1 py-6 text-center text-sm text-text-muted",children:i.calendar.noTasks}):w(q).map(a=>(0,b.jsxs)("button",{type:"button",onClick:()=>d(a),className:"flex items-center gap-3 rounded-md border border-border bg-bg px-3 py-2 text-left transition-colors hover:border-border-strong",children:[(0,b.jsx)("span",{className:"font-mono text-xs text-text-muted",children:ac((0,aa.taskCalDate)(a),j)}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-sm text-text",children:a.title}),(0,b.jsx)(u.Badge,{tone:(0,I.statusTone)(a.status),children:(0,J.statusLabel)(i,a.status)})]},a.id)),e?(0,b.jsxs)("button",{type:"button",onClick:()=>e(q),className:"flex items-center justify-center gap-1.5 rounded-md border border-dashed border-border px-3 py-2 text-sm text-text-muted transition-colors hover:border-accent hover:text-accent",children:[(0,b.jsx)(Z.Plus,{size:14,"aria-hidden":!0})," ",i.tasks.newTask]}):null]}),"week"===o&&(0,b.jsx)("div",{className:"grid grid-cols-1 gap-2 sm:grid-cols-7",children:(0,aa.weekDays)(q).map(a=>(0,b.jsxs)("div",{...m(a),className:`group flex min-h-[8rem] flex-col gap-1.5 rounded-lg border bg-surface p-2 transition-shadow ${k===(0,aa.dayKey)(a)||(0,aa.sameDay)(a,v)?"border-accent":"border-border"}`,children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-0.5",children:[(0,b.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-text-muted",children:n[(a.getDay()+6)%7]}),(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[e?(0,b.jsx)("button",{type:"button",onClick:()=>e(a),"aria-label":i.tasks.newTask,className:"text-text-muted opacity-0 transition-opacity hover:text-accent group-hover:opacity-100",children:(0,b.jsx)(Z.Plus,{size:13})}):null,(0,b.jsx)("span",{className:`text-xs ${(0,aa.sameDay)(a,v)?"text-accent":"text-text-muted"}`,children:a.getDate()})]})]}),w(a).map(a=>(0,b.jsx)(ad,{task:a,onSelect:d,locale:j,draggable:!!f},a.id))]},(0,aa.dayKey)(a)))}),"month"===o&&(0,b.jsxs)("div",{className:"overflow-hidden rounded-lg border border-border",children:[(0,b.jsx)("div",{className:"grid grid-cols-7 border-b border-border bg-surface",children:n.map(a=>(0,b.jsx)("div",{className:"px-2 py-1.5 text-center text-[11px] font-medium uppercase tracking-wide text-text-muted",children:a},a))}),(0,b.jsx)("div",{className:"grid grid-cols-7",children:(0,aa.monthMatrix)(q).flat().map(a=>{let c=a.getMonth()===q.getMonth(),g=w(a);return(0,b.jsxs)("div",{...m(a),className:`group min-h-[6.5rem] border-b border-r p-1.5 transition-shadow ${k===(0,aa.dayKey)(a)?"border-accent":"border-border"} ${c?"bg-surface":"bg-bg"}`,children:[(0,b.jsxs)("div",{className:"mb-1 flex items-center justify-between",children:[e?(0,b.jsx)("button",{type:"button",onClick:()=>e(a),"aria-label":i.tasks.newTask,className:"text-text-muted opacity-0 transition-opacity hover:text-accent group-hover:opacity-100",children:(0,b.jsx)(Z.Plus,{size:12})}):(0,b.jsx)("span",{}),(0,b.jsx)("span",{className:`text-[11px] ${(0,aa.sameDay)(a,v)?"font-bold text-accent":c?"text-text-muted":"text-text-muted/40"}`,children:a.getDate()})]}),(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[g.slice(0,3).map(a=>(0,b.jsx)(ad,{task:a,onSelect:d,locale:j,draggable:!!f},a.id)),g.length>3?(0,b.jsx)("span",{className:"px-1 text-tiny text-text-muted",children:i.calendar.nMore.replace("{count}",String(g.length-3))}):null]})]},(0,aa.dayKey)(a))})})]}),t>0?(0,b.jsxs)("p",{className:"flex items-center gap-1.5 text-xs text-text-muted",children:[(0,b.jsx)(Y,{size:12,className:"shrink-0 text-text-muted","aria-hidden":!0}),i.calendar.unscheduled.replace("{count}",String(t)).replace("{s}",1===t?"":"s")]}):null]})}var af=a.i(33139),ag=a.i(42900),ah=a.i(82434);let ai=(0,f.default)("CalendarCheck",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"m9 16 2 2 4-4",key:"19s6y9"}]]);var aj=a.i(88736),ak=a.i(90854);function al({task:a,onClose:c}){let{t:d,locale:e}=(0,D.useTranslation)(),{data:f}=(0,h.useConfig)(),g=(0,y.taskExec)(a.labels),j=g||f?.defaults?.exec||"",k=(0,i.taskSessionName)(a),l="fail"===a.outcome,m=a.outcome?l?o.XCircle:n.CheckCircle2:ag.Archive,p=a.closed_at||a.created_at,q=(0,K.formatTaskTime)(p,Date.now(),e),r=(0,i.taskStartedMs)(a),s=(0,i.parseTs)(a.closed_at),w=null!=r&&null!=s&&s>=r?function(a){let b=Math.max(0,Math.floor(a/1e3));if(b<60)return`${b}s`;let c=Math.floor(b/60);if(c<60)return`${c}m ${b%60}s`;let d=Math.floor(c/60);return`${d}h ${c%60}m`}(s-r):null,x=[];return(g||j)&&x.push({icon:ah.Bot,label:d.tasks.resultExecutor,value:g||j,modelIcon:j}),k&&x.push({icon:ah.Bot,label:d.tasks.resultAgent,value:k}),q.label&&x.push({icon:ai,label:d.tasks.resultFinished,value:q.label}),w&&x.push({icon:t.Clock,label:d.tasks.resultDuration,value:w}),(0,b.jsxs)(aj.Modal,{title:a.title,description:a.id,onClose:c,size:"md",icon:m,children:[(0,b.jsxs)(aj.ModalBody,{children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,b.jsx)(u.Badge,{tone:(0,I.statusTone)(a.status),children:(0,J.statusLabel)(d,a.status)}),(0,b.jsx)(G.OutcomeBadge,{outcome:a.outcome}),g?(0,b.jsx)(u.Badge,{children:g}):null,(0,b.jsx)(ak.TaskUsageBadge,{taskId:a.id})]}),x.length>0?(0,b.jsx)("dl",{className:"grid grid-cols-2 gap-2",children:x.map(a=>(0,b.jsxs)("div",{className:"flex flex-col gap-1 rounded-md border border-border bg-elevated/40 p-2.5",children:[(0,b.jsxs)("dt",{className:"flex items-center gap-1.5 text-[11px] font-semibold uppercase tracking-wide text-text-muted",children:[(0,b.jsx)(a.icon,{size:12,"aria-hidden":!0})," ",a.label]}),(0,b.jsxs)("dd",{className:"flex min-w-0 items-center gap-1.5 text-sm text-text",children:[a.modelIcon?(0,b.jsx)(v.ModelIcon,{name:a.modelIcon,size:16}):null,(0,b.jsx)("span",{className:"min-w-0 truncate font-mono text-xs",title:q.title||a.value,children:a.value})]})]},a.label))}):null,a.description?.trim()?(0,b.jsx)(am,{label:d.tasks.fieldDetails,children:(0,b.jsx)("p",{className:"whitespace-pre-wrap text-sm leading-relaxed text-text-muted",children:a.description})}):null,(0,b.jsx)(am,{label:d.tasks.resultTitle,children:(0,b.jsx)("p",{className:"whitespace-pre-wrap text-sm leading-relaxed text-text-muted",children:a.result_summary?.trim()||d.tasks.noSummary})})]}),(0,b.jsx)(aj.ModalFooter,{children:(0,b.jsx)(_.Button,{variant:"accent",onClick:c,children:d.tasks.done})})]})}function am({label:a,children:c}){return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-text-muted",children:a}),c]})}var an=a.i(97222),ao=a.i(92576),ap=a.i(9173),aq=a.i(70777),ar=a.i(86837);a.s(["default",0,function(){let{selectedProject:a,setProject:f}=(0,ar.useProjectFilter)("orca.kanban.project"),k=(0,h.useTasks)("all"===a?void 0:a),l=(0,h.useAllDeps)(),m=(0,h.useMissions)(),n=(0,j.useSetTaskStatus)(),o=(0,j.useUpdateTask)(),{toast:p}=(0,R.useToast)(),{t:q}=(0,D.useTranslation)(),[r,s]=(0,ab.usePersistentState)("orca.kanban.view","board",["board","calendar"]),[t,u]=(0,c.useState)(null),[v,w]=(0,c.useState)(null),[x,y]=(0,c.useState)(null),z=a=>("closed"===a.status||"cancelled"===a.status?w:u)(a),A=new Map((k.data??[]).map(a=>[a.id,a])),B=new Map;for(let a of k.data??[]){let b=(0,i.taskBlockers)(a.id,l.data??[],A);b.length>0&&B.set(a.id,b)}return(0,b.jsxs)(aq.ModuleShell,{moduleId:"kanban",children:[(0,b.jsx)(an.ModuleHeader,{title:q.page.kanban,count:k.data?.length,icon:d.KanbanSquare,children:(0,b.jsx)($.Segmented,{value:r,onChange:a=>s(a),options:[{value:"board",label:q.kanban.board,icon:e.Columns3},{value:"calendar",label:q.kanban.calendar,icon:g}]})}),(0,b.jsx)(ao.ProjectFilterPills,{value:a,onChange:f}),k.isLoading?(0,b.jsx)(ap.LoadingState,{variant:"board"===r?"kanban":"cards"}):k.isError?(0,b.jsx)(ap.ErrorState,{message:q.common.daemonUnreachable,onRetry:()=>k.refetch()}):"board"===r?(0,b.jsx)(U,{tasks:k.data??[],blockedBy:B,missions:m.data??[],onMove:(a,b)=>n.mutate({id:a,status:b},{onError:a=>p(String(a),"error")}),onSelect:z}):(0,b.jsx)(ae,{tasks:k.data??[],onSelect:z,onCreateDay:a=>{let b=new Date(a);b.setHours(9,0,0,0),y(b.toISOString())},onReschedule:(a,b)=>{let c=(k.data??[]).find(b=>b.id===a),d=c?.scheduled_at?new Date(c.scheduled_at):null,e=new Date(b);e.setHours(d?d.getHours():9,d?d.getMinutes():0,0,0),o.mutate({id:a,patch:{scheduled_at:e.toISOString()}},{onError:a=>p(String(a),"error")})}}),t&&(0,b.jsx)(af.TaskModal,{task:t,onClose:()=>u(null)}),v&&(0,b.jsx)(al,{task:v,onClose:()=>w(null)}),x&&(0,b.jsx)(af.TaskModal,{initialSchedule:x,onClose:()=>y(null)})]})},"dynamic",0,"force-dynamic"],63620)}];
1
+ module.exports=[63620,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(61296),e=a.i(28886),f=a.i(70106);let g=(0,f.default)("CalendarRange",[["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M17 14h-6",key:"bkmgh3"}],["path",{d:"M13 18H7",key:"bb0bb7"}],["path",{d:"M7 14h.01",key:"1qa3f1"}],["path",{d:"M17 18h.01",key:"1bdyru"}]]);var h=a.i(76645),i=a.i(81415),j=a.i(18517),k=a.i(65151),l=a.i(37956),m=a.i(56468),n=a.i(67453),o=a.i(62722),p=a.i(67329);let q=["open","in_progress","blocked","closed","cancelled"];var r=a.i(31423),s=a.i(69922),t=a.i(41710),u=a.i(34048),v=a.i(7947),w=a.i(47034);let x=(0,f.default)("Timer",[["line",{x1:"10",x2:"14",y1:"2",y2:"2",key:"14vaq8"}],["line",{x1:"12",x2:"15",y1:"14",y2:"11",key:"17fdiu"}],["circle",{cx:"12",cy:"14",r:"8",key:"1e1u0o"}]]);function y({task:a,showTime:c=!0,showIcon:d=!1,iconSize:e=14}){let{data:f}=(0,h.useConfig)(),g=(0,i.taskExec)(a.labels)||f?.defaults?.exec||"",j=(0,i.taskSessionName)(a)??(0,i.taskAgentName)(a)??g,k=c?(0,i.taskElapsed)(a,Date.now()):null;return j||k?(0,b.jsxs)("div",{className:"flex min-w-0 items-center gap-1.5 font-mono text-[11px] text-text-muted",children:[d?(0,b.jsx)(v.ModelIcon,{name:g,size:e}):null,j?(0,b.jsx)("span",{className:"truncate",children:j}):null,k?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{"aria-hidden":!0,className:"opacity-50",children:"·"}),(0,b.jsxs)("span",{className:"flex shrink-0 items-center gap-1",children:[(0,b.jsx)(x,{size:11,"aria-hidden":!0}),k]})]}):null]}):null}var z=a.i(50522),A=a.i(5556),B=a.i(8435);a.i(28130);var C=a.i(29457);function D({name:a}){let{t:c}=(0,C.useTranslation)(),{tail:d,isLoading:e}=(0,B.useSessionPane)(a,3),f=(0,i.tailSnippet)(d),g=(0,A.sessionActivity)(d);return(0,b.jsxs)("div",{className:"flex min-w-0 items-center gap-1.5",children:[(0,b.jsx)(z.ChevronRight,{size:12,className:"shrink-0 text-success","aria-hidden":!0}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px] text-text-muted",children:f||(e?c.sessions.loading:c.sessions.noOutput)}),(0,b.jsx)(u.Badge,{tone:"error"===g?"danger":"prompted"===g?"warning":"unknown"===g?"muted":"accent",children:c.activity[g]})]})}function E({task:a,sessionName:c,blockers:d}){let{t:e}=(0,C.useTranslation)();if(c)return(0,b.jsx)(D,{name:c});if("closed"===a.status||"cancelled"===a.status){let c="fail"===a.outcome;return(0,b.jsxs)("p",{className:"flex min-w-0 items-center gap-1.5 text-[11px] text-text-muted",children:[c?(0,b.jsx)(o.XCircle,{size:12,className:"shrink-0 text-error","aria-hidden":!0}):(0,b.jsx)(n.CheckCircle2,{size:12,className:"shrink-0 text-success","aria-hidden":!0}),(0,b.jsx)("span",{className:"truncate",children:a.result_summary?.trim()||e.tasks.noSummary})]})}return d&&d.length>0?(0,b.jsxs)("p",{className:"flex min-w-0 items-center gap-1.5 text-[11px] text-danger",children:[(0,b.jsx)(s.Link2,{size:12,className:"shrink-0","aria-hidden":!0}),(0,b.jsx)("span",{className:"truncate",children:e.agent.waitingFor.replace("{deps}",d.map(a=>a.title).join(", "))})]}):"open"===a.status?(0,b.jsx)("p",{className:"text-[11px] text-text-muted opacity-70",children:e.agent.ready}):null}var F=a.i(29930),G=a.i(32824),H=a.i(30322),I=a.i(35360),J=a.i(81926),K=a.i(3470);function L({task:a,blocked:c,blockers:d,dragging:e,statusLabel:f,isPhase:g=!1,onSelect:j,onDragStart:k,onDragEnd:l}){let m,{t:n,locale:o}=(0,C.useTranslation)(),{data:p}=(0,h.useConfig)(),q=(0,h.useSessions)(),r=(0,i.taskSessionName)(a),x="in_progress"===a.status&&!!r&&(q.data??[]).includes(r),z=(0,h.useSessionSignal)(r??""),A=(0,K.useSessionStall)(r??"",x&&!!r),B=(0,i.taskExec)(a.labels)||p?.defaults?.exec||"",D=(0,I.taskTypeMeta)(a.type).icon,M="closed"===a.status||"cancelled"===a.status;return(0,b.jsxs)("div",{draggable:!c,onDragStart:k,onDragEnd:l,onClick:()=>j?.(a),className:`flex gap-2.5 rounded-md border bg-bg p-2.5 transition-all ${c?"cursor-pointer border-danger/40":"cursor-grab border-border hover:border-border-strong"} ${g?"ml-2 border-l-2 border-l-accent/40":""} ${e?"rotate-[1deg] opacity-50":""}`,children:[(0,b.jsx)("span",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-md border border-border bg-elevated",children:B?(0,b.jsx)(v.ModelIcon,{name:B,size:19}):(0,b.jsx)(D,{size:16,className:"text-text-muted","aria-hidden":!0})}),(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1",children:[(0,b.jsxs)("div",{className:"flex items-start gap-2",children:[(0,b.jsx)("span",{className:"min-w-0 flex-1 text-sm text-text",children:a.title}),c?(0,b.jsx)("span",{className:"live-dot shrink-0 text-danger",style:{"--live-ring":"color-mix(in srgb, var(--color-error) 50%, transparent)"},title:n.kanban.blockedDeps,children:(0,b.jsx)(s.Link2,{size:13,"aria-hidden":!0})}):(0,b.jsx)("span",{className:"mt-1.5",children:(0,b.jsx)(w.AgentStatusDot,{signal:z,live:x,stall:A.state,silenceSec:A.silenceSec})})]}),(0,b.jsx)(y,{task:a}),(0,b.jsx)(E,{task:a,sessionName:x?r:null,blockers:d}),(0,b.jsxs)("div",{className:"flex items-center justify-between gap-2 pt-0.5",children:[(0,b.jsx)("span",{className:"truncate font-mono text-[11px] text-text-muted",children:a.id}),(0,b.jsxs)("div",{className:"flex shrink-0 items-center gap-1.5",children:[(m=(0,J.formatTaskTime)(a.closed_at||a.created_at,Date.now(),o)).label?(0,b.jsx)("span",{title:m.title,children:(0,b.jsxs)(u.Badge,{tone:"muted",children:[(0,b.jsx)(t.Clock,{size:11,className:"mr-1 inline","aria-hidden":!0}),m.label]})}):null,M?(0,b.jsx)(F.OutcomeBadge,{outcome:a.outcome}):null,(0,b.jsx)(u.Badge,{tone:(0,H.statusTone)(a.status),children:f})]})]}),null!=a.project_id?(0,b.jsx)("div",{className:"flex",children:(0,b.jsx)(G.ProjectPill,{projectId:a.project_id})}):null]})]})}var M=a.i(81560),N=a.i(58530),O=a.i(49134),P=a.i(57581),Q=a.i(89697);function R({epic:a,phases:d,expanded:e,onToggle:f,effectiveStatus:g,trueStatusLabel:i}){let{t:k}=(0,C.useTranslation)(),l=(0,h.useSessions)(),m=(0,h.useSessionSignals)(),{toast:n}=(0,Q.useToast)(),o=(0,j.useDeleteMission)(),[p,q]=(0,c.useState)(!1),{done:s,total:t}=(0,r.epicProgress)(d),{running:u,needsInput:v}=(0,r.epicLive)(d,l.data??[],m),w=(0,I.taskTypeMeta)("epic").icon,x=v>0||u>0,y="in_progress"===g&&"in_progress"!==a.status,A=y&&i?k.kanban.trueStatusTooltip.replace("{status}",i):void 0;return(0,b.jsxs)("div",{role:"button",tabIndex:0,"aria-expanded":e,"aria-label":`${a.title} — ${e?k.tasks.collapsePhases:k.tasks.expandPhases}`,title:A,onClick:f,onKeyDown:a=>{"Enter"===a.key&&f()},className:"group flex cursor-pointer flex-col gap-2 rounded-md border border-accent/30 bg-accent/[0.04] p-2.5 transition-colors hover:border-accent/50",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(z.ChevronRight,{size:14,className:`shrink-0 text-text-muted transition-transform ${e?"rotate-90":""}`,"aria-hidden":!0}),(0,b.jsx)("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md border border-border bg-elevated",children:(0,b.jsx)(w,{size:15,className:"text-accent","aria-hidden":!0})}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-sm font-semibold text-text",children:a.title}),y?(0,b.jsx)("span",{className:"shrink-0 rounded border border-accent/40 px-1 font-mono text-[10px] uppercase tracking-wide text-accent","aria-hidden":!0,children:i}):null,x?(0,b.jsx)("span",{className:`h-2 w-2 shrink-0 rounded-full ${x?"live-dot":""}`,style:{backgroundColor:v>0?"var(--color-warning)":u>0?"var(--color-success)":"var(--color-border-strong)","--live-ring":v>0?"color-mix(in srgb, var(--color-warning) 50%, transparent)":"color-mix(in srgb, var(--color-success) 50%, transparent)"},"aria-hidden":!0}):null,(0,b.jsx)("div",{className:"shrink-0 opacity-0 transition-opacity group-hover:opacity-100",onClick:a=>a.stopPropagation(),children:(0,b.jsx)(O.ActionMenu,{label:k.tasks.deleteMission,items:[{label:k.tasks.deleteMission,icon:M.Trash2,tone:"danger",onSelect:()=>q(!0)}]})})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2 pl-6",children:[(0,b.jsx)(N.ProgressRibbon,{phases:d,className:"flex-1"}),(0,b.jsxs)("span",{className:"shrink-0 font-mono text-[11px] text-text-muted",children:[s,"/",t]})]}),null!=a.project_id?(0,b.jsx)("div",{className:"flex pl-6",children:(0,b.jsx)(G.ProjectPill,{projectId:a.project_id})}):null,p&&(0,b.jsx)("div",{onClick:a=>a.stopPropagation(),children:(0,b.jsx)(P.ConfirmDialog,{open:p,title:k.tasks.confirmDeleteMissionTitle.replace("{id}",a.id),description:k.tasks.confirmDeleteMissionDescription,confirmLabel:k.tasks.deleteMission,onClose:()=>q(!1),onConfirm:()=>{q(!1),o.mutate(a.id,{onSuccess:()=>n(k.tasks.missionDeleted.replace("{id}",a.id)),onError:a=>n(String(a),"error")})}})})]})}let S=[{status:"open",labelKey:"columnOpen",icon:k.Circle,color:"var(--color-success)"},{status:"in_progress",labelKey:"columnInProgress",icon:l.LoaderCircle,color:"var(--color-warning)"},{status:"blocked",labelKey:"columnBlocked",icon:m.Ban,color:"var(--color-error)"},{status:"closed",labelKey:"columnClosed",icon:n.CheckCircle2,color:"var(--color-error)"},{status:"cancelled",labelKey:"columnCancelled",icon:o.XCircle,color:"var(--color-cancelled)"}];function T({tasks:a,onMove:d,onSelect:e,blockedBy:f,missions:g}){let{t:h}=(0,C.useTranslation)(),i=g??[],j=(0,r.epicChildren)(a),k=(0,r.phaseIds)(a),l=a=>"epic"===a.type?(0,r.epicEffectiveStatus)(a,i,j.get(a.id)??[]):a.status,m=function(a,b=a=>a.status){let c=Object.fromEntries(q.map(a=>[a,[]]));for(let d of a)(c[b(d)]??=[]).push(d);return c}(a,l),n=new Map(a.map(a=>[a.id,a])),[o,s]=(0,c.useState)(null),[t,u]=(0,c.useState)(null),[v,w]=(0,c.useState)(new Set),x=(a,c)=>{let d=f?.get(a.id)??[];return(0,b.jsx)(L,{task:a,isPhase:c,blocked:d.length>0,blockers:d,dragging:t===a.id,statusLabel:(0,I.statusLabel)(h,a.status),onSelect:e,onDragStart:b=>{b.dataTransfer.setData("text/plain",a.id),u(a.id)},onDragEnd:()=>{u(null),s(null)}},a.id)};return(0,b.jsx)("div",{className:"flex gap-3 overflow-x-auto",children:S.map(a=>{let e=h.kanban[a.labelKey],f=o===a.status;return(0,b.jsxs)("div",{"data-testid":`column-${a.status}`,className:`flex w-[80vw] shrink-0 flex-col gap-2 rounded-lg border bg-surface p-2 transition-colors sm:w-auto sm:min-w-[14rem] sm:shrink sm:flex-1 ${f?"border-accent/60 bg-elevated/40":"border-border"}`,onDragOver:b=>{b.preventDefault(),o!==a.status&&s(a.status)},onDragLeave:b=>{b.currentTarget.contains(b.relatedTarget)||s(b=>b===a.status?null:b)},onDrop:b=>{b.preventDefault(),s(null),u(null);let c=b.dataTransfer.getData("text/plain");c&&n.get(c)?.status!==a.status&&d(c,a.status)},children:[(0,b.jsxs)("header",{className:"flex items-center justify-between px-1 font-mono uppercase tracking-widest text-text-muted",style:{fontSize:"var(--text-caption)"},children:[(0,b.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,b.jsx)(a.icon,{size:12,style:{color:a.color},"aria-hidden":!0}),e]}),(0,b.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,b.jsx)(p.List,{size:11,className:"text-text-muted","aria-hidden":!0}),m[a.status].filter(a=>!k.has(a.id)).length]})]}),m[a.status].map(a=>{if("epic"===a.type&&j.has(a.id)){let d=j.get(a.id)??[];return(0,b.jsxs)(c.Fragment,{children:[(0,b.jsx)(R,{epic:a,phases:d,expanded:v.has(a.id),onToggle:()=>{let b;return b=a.id,w(a=>{let c=new Set(a);return c.has(b)?c.delete(b):c.add(b),c})},effectiveStatus:l(a),trueStatusLabel:(0,I.statusLabel)(h,a.status)}),v.has(a.id)?d.map(a=>x(a,!0)):null]},a.id)}return k.has(a.id)?null:x(a,!1)})]},a.status)})})}var U=a.i(13749),V=a.i(60702);let W=(0,f.default)("Calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]),X=(0,f.default)("CalendarPlus",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M21 13V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8",key:"3spt84"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M16 19h6",key:"xwg31i"}],["path",{d:"M19 16v6",key:"tddt3s"}]]);var Y=a.i(15618),Z=a.i(83549),$=a.i(12466),_=a.i(23818),aa=a.i(92058);let ab=(a,b)=>a?new Date(a).toLocaleTimeString(b,{hour:"2-digit",minute:"2-digit"}):"";function ac({task:a,onSelect:c,locale:d,draggable:e}){let f=(0,I.taskTypeMeta)(a.type).icon;return(0,b.jsxs)("button",{type:"button",draggable:e,onDragStart:e?b=>{b.dataTransfer.setData("application/x-task",a.id),b.dataTransfer.effectAllowed="move"}:void 0,onClick:()=>c(a),className:`flex w-full items-center gap-1.5 rounded-md border border-border bg-bg px-1.5 py-1 text-left transition-colors hover:border-border-strong ${e?"cursor-grab active:cursor-grabbing":""}`,title:a.title,children:[(0,b.jsx)(f,{size:12,className:"shrink-0 text-text-muted","aria-hidden":!0}),(0,b.jsx)("span",{className:"font-mono text-tiny text-text-muted",children:ab((0,_.taskCalDate)(a),d)}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-[11px] text-text",children:a.title})]})}function ad({tasks:a,onSelect:d,onCreateDay:e,onReschedule:f}){let h,{t:i,locale:j}=(0,C.useTranslation)(),[k,l]=(0,c.useState)(null),m=a=>f?{onDragOver:b=>{b.preventDefault();let c=(0,_.dayKey)(a);k!==c&&l(c)},onDragLeave:b=>{b.currentTarget.contains(b.relatedTarget)||l(b=>b===(0,_.dayKey)(a)?null:b)},onDrop:b=>{b.preventDefault(),l(null);let c=b.dataTransfer.getData("application/x-task");c&&f(c,a)}}:{},n=[i.calendar.shortMon,i.calendar.shortTue,i.calendar.shortWed,i.calendar.shortThu,i.calendar.shortFri,i.calendar.shortSat,i.calendar.shortSun],[o,p]=(0,aa.usePersistentState)("orca.calendar.range","week",["day","week","month"]),[q,r]=(0,c.useState)(()=>new Date),s=(0,_.tasksByDay)(a),t=(0,_.countUnscheduled)(a),v=new Date,w=a=>s.get((0,_.dayKey)(a))??[],x="month"===o?q.toLocaleDateString(j,{month:"long",year:"numeric"}):"day"===o?q.toLocaleDateString(j,{weekday:"long",month:"short",day:"numeric"}):(h=(0,_.weekDays)(q),`${h[0].toLocaleDateString(j,{month:"short",day:"numeric"})} – ${h[6].toLocaleDateString(j,{month:"short",day:"numeric"})}`);return(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[(0,b.jsx)(Z.Segmented,{value:o,onChange:a=>p(a),options:[{value:"day",label:i.calendar.day,icon:W},{value:"week",label:i.calendar.week,icon:g},{value:"month",label:i.calendar.month,icon:V.CalendarDays}]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"text-sm font-medium text-text",children:x}),(0,b.jsx)($.Button,{variant:"ghost",onClick:()=>r(new Date),children:i.calendar.today}),(0,b.jsx)("button",{type:"button","aria-label":i.calendar.previous,onClick:()=>r(a=>(0,_.shift)(a,o,-1)),className:"flex h-8 w-8 items-center justify-center rounded-md border border-border text-text-muted transition-colors hover:text-text",children:(0,b.jsx)(U.ChevronLeft,{size:16})}),(0,b.jsx)("button",{type:"button","aria-label":i.calendar.next,onClick:()=>r(a=>(0,_.shift)(a,o,1)),className:"flex h-8 w-8 items-center justify-center rounded-md border border-border text-text-muted transition-colors hover:text-text",children:(0,b.jsx)(z.ChevronRight,{size:16})})]})]}),"day"===o&&(0,b.jsxs)("div",{className:"flex flex-col gap-2 rounded-lg border border-border bg-surface p-3",children:[0===w(q).length?(0,b.jsx)("p",{className:"px-1 py-6 text-center text-sm text-text-muted",children:i.calendar.noTasks}):w(q).map(a=>(0,b.jsxs)("button",{type:"button",onClick:()=>d(a),className:"flex items-center gap-3 rounded-md border border-border bg-bg px-3 py-2 text-left transition-colors hover:border-border-strong",children:[(0,b.jsx)("span",{className:"font-mono text-xs text-text-muted",children:ab((0,_.taskCalDate)(a),j)}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-sm text-text",children:a.title}),(0,b.jsx)(u.Badge,{tone:(0,H.statusTone)(a.status),children:(0,I.statusLabel)(i,a.status)})]},a.id)),e?(0,b.jsxs)("button",{type:"button",onClick:()=>e(q),className:"flex items-center justify-center gap-1.5 rounded-md border border-dashed border-border px-3 py-2 text-sm text-text-muted transition-colors hover:border-accent hover:text-accent",children:[(0,b.jsx)(Y.Plus,{size:14,"aria-hidden":!0})," ",i.tasks.newTask]}):null]}),"week"===o&&(0,b.jsx)("div",{className:"grid grid-cols-1 gap-2 sm:grid-cols-7",children:(0,_.weekDays)(q).map(a=>(0,b.jsxs)("div",{...m(a),className:`group flex min-h-[8rem] flex-col gap-1.5 rounded-lg border bg-surface p-2 transition-shadow ${k===(0,_.dayKey)(a)||(0,_.sameDay)(a,v)?"border-accent":"border-border"}`,children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-0.5",children:[(0,b.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-text-muted",children:n[(a.getDay()+6)%7]}),(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[e?(0,b.jsx)("button",{type:"button",onClick:()=>e(a),"aria-label":i.tasks.newTask,className:"text-text-muted opacity-0 transition-opacity hover:text-accent group-hover:opacity-100",children:(0,b.jsx)(Y.Plus,{size:13})}):null,(0,b.jsx)("span",{className:`text-xs ${(0,_.sameDay)(a,v)?"text-accent":"text-text-muted"}`,children:a.getDate()})]})]}),w(a).map(a=>(0,b.jsx)(ac,{task:a,onSelect:d,locale:j,draggable:!!f},a.id))]},(0,_.dayKey)(a)))}),"month"===o&&(0,b.jsxs)("div",{className:"overflow-hidden rounded-lg border border-border",children:[(0,b.jsx)("div",{className:"grid grid-cols-7 border-b border-border bg-surface",children:n.map(a=>(0,b.jsx)("div",{className:"px-2 py-1.5 text-center text-[11px] font-medium uppercase tracking-wide text-text-muted",children:a},a))}),(0,b.jsx)("div",{className:"grid grid-cols-7",children:(0,_.monthMatrix)(q).flat().map(a=>{let c=a.getMonth()===q.getMonth(),g=w(a);return(0,b.jsxs)("div",{...m(a),className:`group min-h-[6.5rem] border-b border-r p-1.5 transition-shadow ${k===(0,_.dayKey)(a)?"border-accent":"border-border"} ${c?"bg-surface":"bg-bg"}`,children:[(0,b.jsxs)("div",{className:"mb-1 flex items-center justify-between",children:[e?(0,b.jsx)("button",{type:"button",onClick:()=>e(a),"aria-label":i.tasks.newTask,className:"text-text-muted opacity-0 transition-opacity hover:text-accent group-hover:opacity-100",children:(0,b.jsx)(Y.Plus,{size:12})}):(0,b.jsx)("span",{}),(0,b.jsx)("span",{className:`text-[11px] ${(0,_.sameDay)(a,v)?"font-bold text-accent":c?"text-text-muted":"text-text-muted/40"}`,children:a.getDate()})]}),(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[g.slice(0,3).map(a=>(0,b.jsx)(ac,{task:a,onSelect:d,locale:j,draggable:!!f},a.id)),g.length>3?(0,b.jsx)("span",{className:"px-1 text-tiny text-text-muted",children:i.calendar.nMore.replace("{count}",String(g.length-3))}):null]})]},(0,_.dayKey)(a))})})]}),t>0?(0,b.jsxs)("p",{className:"flex items-center gap-1.5 text-xs text-text-muted",children:[(0,b.jsx)(X,{size:12,className:"shrink-0 text-text-muted","aria-hidden":!0}),i.calendar.unscheduled.replace("{count}",String(t)).replace("{s}",1===t?"":"s")]}):null]})}var ae=a.i(33139),af=a.i(42900),ag=a.i(82434);let ah=(0,f.default)("CalendarCheck",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"m9 16 2 2 4-4",key:"19s6y9"}]]);var ai=a.i(88736),aj=a.i(90854);function ak({task:a,onClose:c}){let{t:d,locale:e}=(0,C.useTranslation)(),{data:f}=(0,h.useConfig)(),g=(0,i.taskExec)(a.labels),j=g||f?.defaults?.exec||"",k=(0,i.taskSessionName)(a),l="fail"===a.outcome,m=a.outcome?l?o.XCircle:n.CheckCircle2:af.Archive,p=a.closed_at||a.created_at,q=(0,J.formatTaskTime)(p,Date.now(),e),r=(0,i.taskStartedMs)(a),s=(0,i.parseTs)(a.closed_at),w=null!=r&&null!=s&&s>=r?(0,J.formatDuration)(s-r):null,x=[];return(g||j)&&x.push({icon:ag.Bot,label:d.tasks.resultExecutor,value:g||j,modelIcon:j}),k&&x.push({icon:ag.Bot,label:d.tasks.resultAgent,value:k}),q.label&&x.push({icon:ah,label:d.tasks.resultFinished,value:q.label}),w&&x.push({icon:t.Clock,label:d.tasks.resultDuration,value:w}),(0,b.jsxs)(ai.Modal,{title:a.title,description:a.id,onClose:c,size:"md",icon:m,children:[(0,b.jsxs)(ai.ModalBody,{children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,b.jsx)(u.Badge,{tone:(0,H.statusTone)(a.status),children:(0,I.statusLabel)(d,a.status)}),(0,b.jsx)(F.OutcomeBadge,{outcome:a.outcome}),g?(0,b.jsx)(u.Badge,{children:g}):null,(0,b.jsx)(aj.TaskUsageBadge,{taskId:a.id})]}),x.length>0?(0,b.jsx)("dl",{className:"grid grid-cols-2 gap-2",children:x.map(a=>(0,b.jsxs)("div",{className:"flex flex-col gap-1 rounded-md border border-border bg-elevated/40 p-2.5",children:[(0,b.jsxs)("dt",{className:"flex items-center gap-1.5 text-[11px] font-semibold uppercase tracking-wide text-text-muted",children:[(0,b.jsx)(a.icon,{size:12,"aria-hidden":!0})," ",a.label]}),(0,b.jsxs)("dd",{className:"flex min-w-0 items-center gap-1.5 text-sm text-text",children:[a.modelIcon?(0,b.jsx)(v.ModelIcon,{name:a.modelIcon,size:16}):null,(0,b.jsx)("span",{className:"min-w-0 truncate font-mono text-xs",title:q.title||a.value,children:a.value})]})]},a.label))}):null,a.description?.trim()?(0,b.jsx)(al,{label:d.tasks.fieldDetails,children:(0,b.jsx)("p",{className:"whitespace-pre-wrap text-sm leading-relaxed text-text-muted",children:a.description})}):null,(0,b.jsx)(al,{label:d.tasks.resultTitle,children:(0,b.jsx)("p",{className:"whitespace-pre-wrap text-sm leading-relaxed text-text-muted",children:a.result_summary?.trim()||d.tasks.noSummary})})]}),(0,b.jsx)(ai.ModalFooter,{children:(0,b.jsx)($.Button,{variant:"accent",onClick:c,children:d.tasks.done})})]})}function al({label:a,children:c}){return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-text-muted",children:a}),c]})}var am=a.i(97222),an=a.i(92576),ao=a.i(9173),ap=a.i(70777),aq=a.i(86837);a.s(["default",0,function(){let{selectedProject:a,setProject:f}=(0,aq.useProjectFilter)("orca.kanban.project"),k=(0,h.useTasks)("all"===a?void 0:a),l=(0,h.useAllDeps)(),m=(0,h.useMissions)(),n=(0,j.useSetTaskStatus)(),o=(0,j.useUpdateTask)(),{toast:p}=(0,Q.useToast)(),{t:q}=(0,C.useTranslation)(),[r,s]=(0,aa.usePersistentState)("orca.kanban.view","board",["board","calendar"]),[t,u]=(0,c.useState)(null),[v,w]=(0,c.useState)(null),[x,y]=(0,c.useState)(null),z=a=>("closed"===a.status||"cancelled"===a.status?w:u)(a),A=new Map((k.data??[]).map(a=>[a.id,a])),B=new Map;for(let a of k.data??[]){let b=(0,i.taskBlockers)(a.id,l.data??[],A);b.length>0&&B.set(a.id,b)}return(0,b.jsxs)(ap.ModuleShell,{moduleId:"kanban",children:[(0,b.jsx)(am.ModuleHeader,{title:q.page.kanban,count:k.data?.length,icon:d.KanbanSquare,children:(0,b.jsx)(Z.Segmented,{value:r,onChange:a=>s(a),options:[{value:"board",label:q.kanban.board,icon:e.Columns3},{value:"calendar",label:q.kanban.calendar,icon:g}]})}),(0,b.jsx)(an.ProjectFilterPills,{value:a,onChange:f}),k.isLoading?(0,b.jsx)(ao.LoadingState,{variant:"board"===r?"kanban":"cards"}):k.isError?(0,b.jsx)(ao.ErrorState,{message:q.common.daemonUnreachable,onRetry:()=>k.refetch()}):"board"===r?(0,b.jsx)(T,{tasks:k.data??[],blockedBy:B,missions:m.data??[],onMove:(a,b)=>n.mutate({id:a,status:b},{onError:a=>p(String(a),"error")}),onSelect:z}):(0,b.jsx)(ad,{tasks:k.data??[],onSelect:z,onCreateDay:a=>{let b=new Date(a);b.setHours(9,0,0,0),y(b.toISOString())},onReschedule:(a,b)=>{let c=(k.data??[]).find(b=>b.id===a),d=c?.scheduled_at?new Date(c.scheduled_at):null,e=new Date(b);e.setHours(d?d.getHours():9,d?d.getMinutes():0,0,0),o.mutate({id:a,patch:{scheduled_at:e.toISOString()}},{onError:a=>p(String(a),"error")})}}),t&&(0,b.jsx)(ae.TaskModal,{task:t,onClose:()=>u(null)}),v&&(0,b.jsx)(ak,{task:v,onClose:()=>w(null)}),x&&(0,b.jsx)(ae.TaskModal,{initialSchedule:x,onClose:()=>y(null)})]})},"dynamic",0,"force-dynamic"],63620)}];
2
2
 
3
3
  //# sourceMappingURL=app_kanban_page_tsx_06_8oyf._.js.map