orcasynth 1.4.3 → 1.4.5

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 (234) hide show
  1. package/dist/advisor/mcpConfig.js +28 -0
  2. package/dist/advisor/service.js +74 -0
  3. package/dist/api/server.js +73 -1
  4. package/dist/cli/commands.js +26 -0
  5. package/dist/cli/index.js +9 -2
  6. package/dist/daemon/bootstrap.js +14 -1
  7. package/dist/mcp/server.js +34 -0
  8. package/dist/mcp/tools.js +17 -0
  9. package/dist/overseer/sessionInfo.js +7 -1
  10. package/dist/prompts/advisor.md +13 -0
  11. package/dist/shared/apiClient.js +23 -0
  12. package/dist/store/db.js +4 -0
  13. package/dist/store/schema.sql +3 -1
  14. package/dist/store/userStore.js +26 -1
  15. package/dist/tmux/driver.js +8 -0
  16. package/dist/tmux/fakeDriver.js +9 -0
  17. package/package.json +4 -2
  18. package/prompts/advisor.md +13 -0
  19. package/web-dist/.next/BUILD_ID +1 -1
  20. package/web-dist/.next/build-manifest.json +3 -3
  21. package/web-dist/.next/server/app/_global-error.html +1 -1
  22. package/web-dist/.next/server/app/_global-error.rsc +1 -1
  23. package/web-dist/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  24. package/web-dist/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  25. package/web-dist/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  26. package/web-dist/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  27. package/web-dist/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  28. package/web-dist/.next/server/app/_not-found/page/react-loadable-manifest.json +10 -1
  29. package/web-dist/.next/server/app/_not-found/page.js.nft.json +1 -1
  30. package/web-dist/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  31. package/web-dist/.next/server/app/_not-found.html +1 -1
  32. package/web-dist/.next/server/app/_not-found.rsc +11 -11
  33. package/web-dist/.next/server/app/_not-found.segments/_full.segment.rsc +11 -11
  34. package/web-dist/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
  35. package/web-dist/.next/server/app/_not-found.segments/_index.segment.rsc +6 -6
  36. package/web-dist/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  37. package/web-dist/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  38. package/web-dist/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  39. package/web-dist/.next/server/app/account/page/react-loadable-manifest.json +10 -1
  40. package/web-dist/.next/server/app/account/page.js.nft.json +1 -1
  41. package/web-dist/.next/server/app/account/page_client-reference-manifest.js +1 -1
  42. package/web-dist/.next/server/app/account.html +1 -1
  43. package/web-dist/.next/server/app/account.rsc +13 -13
  44. package/web-dist/.next/server/app/account.segments/_full.segment.rsc +13 -13
  45. package/web-dist/.next/server/app/account.segments/_head.segment.rsc +4 -4
  46. package/web-dist/.next/server/app/account.segments/_index.segment.rsc +6 -6
  47. package/web-dist/.next/server/app/account.segments/_tree.segment.rsc +2 -2
  48. package/web-dist/.next/server/app/account.segments/account/__PAGE__.segment.rsc +4 -4
  49. package/web-dist/.next/server/app/account.segments/account.segment.rsc +3 -3
  50. package/web-dist/.next/server/app/dash/page/react-loadable-manifest.json +10 -1
  51. package/web-dist/.next/server/app/dash/page.js.nft.json +1 -1
  52. package/web-dist/.next/server/app/dash/page_client-reference-manifest.js +1 -1
  53. package/web-dist/.next/server/app/dash.html +1 -1
  54. package/web-dist/.next/server/app/dash.rsc +13 -13
  55. package/web-dist/.next/server/app/dash.segments/_full.segment.rsc +13 -13
  56. package/web-dist/.next/server/app/dash.segments/_head.segment.rsc +4 -4
  57. package/web-dist/.next/server/app/dash.segments/_index.segment.rsc +6 -6
  58. package/web-dist/.next/server/app/dash.segments/_tree.segment.rsc +2 -2
  59. package/web-dist/.next/server/app/dash.segments/dash/__PAGE__.segment.rsc +4 -4
  60. package/web-dist/.next/server/app/dash.segments/dash.segment.rsc +3 -3
  61. package/web-dist/.next/server/app/escalations/page/react-loadable-manifest.json +10 -1
  62. package/web-dist/.next/server/app/escalations/page.js.nft.json +1 -1
  63. package/web-dist/.next/server/app/escalations/page_client-reference-manifest.js +1 -1
  64. package/web-dist/.next/server/app/escalations.html +1 -1
  65. package/web-dist/.next/server/app/escalations.rsc +13 -13
  66. package/web-dist/.next/server/app/escalations.segments/_full.segment.rsc +13 -13
  67. package/web-dist/.next/server/app/escalations.segments/_head.segment.rsc +4 -4
  68. package/web-dist/.next/server/app/escalations.segments/_index.segment.rsc +6 -6
  69. package/web-dist/.next/server/app/escalations.segments/_tree.segment.rsc +2 -2
  70. package/web-dist/.next/server/app/escalations.segments/escalations/__PAGE__.segment.rsc +4 -4
  71. package/web-dist/.next/server/app/escalations.segments/escalations.segment.rsc +3 -3
  72. package/web-dist/.next/server/app/index.html +1 -1
  73. package/web-dist/.next/server/app/index.rsc +13 -13
  74. package/web-dist/.next/server/app/index.segments/__PAGE__.segment.rsc +4 -4
  75. package/web-dist/.next/server/app/index.segments/_full.segment.rsc +13 -13
  76. package/web-dist/.next/server/app/index.segments/_head.segment.rsc +4 -4
  77. package/web-dist/.next/server/app/index.segments/_index.segment.rsc +6 -6
  78. package/web-dist/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  79. package/web-dist/.next/server/app/kanban/page/react-loadable-manifest.json +10 -1
  80. package/web-dist/.next/server/app/kanban/page.js.nft.json +1 -1
  81. package/web-dist/.next/server/app/kanban/page_client-reference-manifest.js +1 -1
  82. package/web-dist/.next/server/app/kanban.html +1 -1
  83. package/web-dist/.next/server/app/kanban.rsc +13 -13
  84. package/web-dist/.next/server/app/kanban.segments/_full.segment.rsc +13 -13
  85. package/web-dist/.next/server/app/kanban.segments/_head.segment.rsc +4 -4
  86. package/web-dist/.next/server/app/kanban.segments/_index.segment.rsc +6 -6
  87. package/web-dist/.next/server/app/kanban.segments/_tree.segment.rsc +2 -2
  88. package/web-dist/.next/server/app/kanban.segments/kanban/__PAGE__.segment.rsc +4 -4
  89. package/web-dist/.next/server/app/kanban.segments/kanban.segment.rsc +3 -3
  90. package/web-dist/.next/server/app/onboarding/page/react-loadable-manifest.json +10 -1
  91. package/web-dist/.next/server/app/onboarding/page.js.nft.json +1 -1
  92. package/web-dist/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  93. package/web-dist/.next/server/app/onboarding.html +1 -1
  94. package/web-dist/.next/server/app/onboarding.rsc +13 -13
  95. package/web-dist/.next/server/app/onboarding.segments/_full.segment.rsc +13 -13
  96. package/web-dist/.next/server/app/onboarding.segments/_head.segment.rsc +4 -4
  97. package/web-dist/.next/server/app/onboarding.segments/_index.segment.rsc +6 -6
  98. package/web-dist/.next/server/app/onboarding.segments/_tree.segment.rsc +2 -2
  99. package/web-dist/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +4 -4
  100. package/web-dist/.next/server/app/onboarding.segments/onboarding.segment.rsc +3 -3
  101. package/web-dist/.next/server/app/page/react-loadable-manifest.json +10 -1
  102. package/web-dist/.next/server/app/page.js.nft.json +1 -1
  103. package/web-dist/.next/server/app/page_client-reference-manifest.js +1 -1
  104. package/web-dist/.next/server/app/projects/page/react-loadable-manifest.json +8 -0
  105. package/web-dist/.next/server/app/projects/page.js.nft.json +1 -1
  106. package/web-dist/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  107. package/web-dist/.next/server/app/projects.html +1 -1
  108. package/web-dist/.next/server/app/projects.rsc +13 -13
  109. package/web-dist/.next/server/app/projects.segments/_full.segment.rsc +13 -13
  110. package/web-dist/.next/server/app/projects.segments/_head.segment.rsc +4 -4
  111. package/web-dist/.next/server/app/projects.segments/_index.segment.rsc +6 -6
  112. package/web-dist/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  113. package/web-dist/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +4 -4
  114. package/web-dist/.next/server/app/projects.segments/projects.segment.rsc +3 -3
  115. package/web-dist/.next/server/app/sessions/page/react-loadable-manifest.json +10 -1
  116. package/web-dist/.next/server/app/sessions/page.js.nft.json +1 -1
  117. package/web-dist/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  118. package/web-dist/.next/server/app/sessions.html +1 -1
  119. package/web-dist/.next/server/app/sessions.rsc +13 -13
  120. package/web-dist/.next/server/app/sessions.segments/_full.segment.rsc +13 -13
  121. package/web-dist/.next/server/app/sessions.segments/_head.segment.rsc +4 -4
  122. package/web-dist/.next/server/app/sessions.segments/_index.segment.rsc +6 -6
  123. package/web-dist/.next/server/app/sessions.segments/_tree.segment.rsc +2 -2
  124. package/web-dist/.next/server/app/sessions.segments/sessions/__PAGE__.segment.rsc +4 -4
  125. package/web-dist/.next/server/app/sessions.segments/sessions.segment.rsc +3 -3
  126. package/web-dist/.next/server/app/settings/page/react-loadable-manifest.json +10 -1
  127. package/web-dist/.next/server/app/settings/page.js.nft.json +1 -1
  128. package/web-dist/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  129. package/web-dist/.next/server/app/settings.html +1 -1
  130. package/web-dist/.next/server/app/settings.rsc +13 -13
  131. package/web-dist/.next/server/app/settings.segments/_full.segment.rsc +13 -13
  132. package/web-dist/.next/server/app/settings.segments/_head.segment.rsc +4 -4
  133. package/web-dist/.next/server/app/settings.segments/_index.segment.rsc +6 -6
  134. package/web-dist/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  135. package/web-dist/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +4 -4
  136. package/web-dist/.next/server/app/settings.segments/settings.segment.rsc +3 -3
  137. package/web-dist/.next/server/app/tasks/page/react-loadable-manifest.json +10 -1
  138. package/web-dist/.next/server/app/tasks/page.js.nft.json +1 -1
  139. package/web-dist/.next/server/app/tasks/page_client-reference-manifest.js +1 -1
  140. package/web-dist/.next/server/app/tasks.html +1 -1
  141. package/web-dist/.next/server/app/tasks.rsc +13 -13
  142. package/web-dist/.next/server/app/tasks.segments/_full.segment.rsc +13 -13
  143. package/web-dist/.next/server/app/tasks.segments/_head.segment.rsc +4 -4
  144. package/web-dist/.next/server/app/tasks.segments/_index.segment.rsc +6 -6
  145. package/web-dist/.next/server/app/tasks.segments/_tree.segment.rsc +2 -2
  146. package/web-dist/.next/server/app/tasks.segments/tasks/__PAGE__.segment.rsc +4 -4
  147. package/web-dist/.next/server/app/tasks.segments/tasks.segment.rsc +3 -3
  148. package/web-dist/.next/server/app/timeline/page/react-loadable-manifest.json +10 -1
  149. package/web-dist/.next/server/app/timeline/page.js.nft.json +1 -1
  150. package/web-dist/.next/server/app/timeline/page_client-reference-manifest.js +1 -1
  151. package/web-dist/.next/server/app/timeline.html +1 -1
  152. package/web-dist/.next/server/app/timeline.rsc +13 -13
  153. package/web-dist/.next/server/app/timeline.segments/_full.segment.rsc +13 -13
  154. package/web-dist/.next/server/app/timeline.segments/_head.segment.rsc +4 -4
  155. package/web-dist/.next/server/app/timeline.segments/_index.segment.rsc +6 -6
  156. package/web-dist/.next/server/app/timeline.segments/_tree.segment.rsc +2 -2
  157. package/web-dist/.next/server/app/timeline.segments/timeline/__PAGE__.segment.rsc +4 -4
  158. package/web-dist/.next/server/app/timeline.segments/timeline.segment.rsc +3 -3
  159. package/web-dist/.next/server/app/users/page/react-loadable-manifest.json +10 -1
  160. package/web-dist/.next/server/app/users/page.js.nft.json +1 -1
  161. package/web-dist/.next/server/app/users/page_client-reference-manifest.js +1 -1
  162. package/web-dist/.next/server/app/users.html +1 -1
  163. package/web-dist/.next/server/app/users.rsc +13 -13
  164. package/web-dist/.next/server/app/users.segments/_full.segment.rsc +13 -13
  165. package/web-dist/.next/server/app/users.segments/_head.segment.rsc +4 -4
  166. package/web-dist/.next/server/app/users.segments/_index.segment.rsc +6 -6
  167. package/web-dist/.next/server/app/users.segments/_tree.segment.rsc +2 -2
  168. package/web-dist/.next/server/app/users.segments/users/__PAGE__.segment.rsc +4 -4
  169. package/web-dist/.next/server/app/users.segments/users.segment.rsc +3 -3
  170. package/web-dist/.next/server/chunks/ssr/[root-of-the-server]__0yfatub._.js +3 -0
  171. package/web-dist/.next/server/chunks/ssr/_01rh28z._.js +3 -0
  172. package/web-dist/.next/server/chunks/ssr/_057a06r._.js +1 -1
  173. package/web-dist/.next/server/chunks/ssr/_081ml1k._.js +3 -0
  174. package/web-dist/.next/server/chunks/ssr/_0afhsmf._.js +3 -0
  175. package/web-dist/.next/server/chunks/ssr/{_1zscr7t._.js → _0m2j9hu._.js} +2 -2
  176. package/web-dist/.next/server/chunks/ssr/_0tzourm._.js +1 -1
  177. package/web-dist/.next/server/chunks/ssr/_0ysqykx._.js +3 -0
  178. package/web-dist/.next/server/chunks/ssr/_10ak-sh._.js +3 -0
  179. package/web-dist/.next/server/chunks/ssr/_13rgpyg._.js +3 -0
  180. package/web-dist/.next/server/chunks/ssr/_1fp8enw._.js +3 -0
  181. package/web-dist/.next/server/chunks/ssr/_1std18n._.js +3 -0
  182. package/web-dist/.next/server/chunks/ssr/_1zd7t3t._.js +3 -0
  183. package/web-dist/.next/server/chunks/ssr/app_tasks_page_tsx_1p6mxbw._.js +1 -1
  184. package/web-dist/.next/server/chunks/ssr/components_shell_Shell_tsx_1e5c27h._.js +1 -1
  185. package/web-dist/.next/server/chunks/ssr/{node_modules_0h91jdk._.js → node_modules_next_dist_client_components_0bew68i._.js} +2 -2
  186. package/web-dist/.next/server/middleware-build-manifest.js +3 -3
  187. package/web-dist/.next/server/pages/404.html +1 -1
  188. package/web-dist/.next/server/pages/500.html +1 -1
  189. package/web-dist/.next/static/chunks/09gkeu3bc4xo0.js +1 -0
  190. package/web-dist/.next/static/chunks/0c6iuw5yay1w0.js +1 -0
  191. package/web-dist/.next/static/chunks/0ccjus_sicyov.js +1 -0
  192. package/web-dist/.next/static/chunks/0gor0_p3jg67f.js +1 -0
  193. package/web-dist/.next/static/chunks/0kd16q0244sp5.js +1 -0
  194. package/web-dist/.next/static/chunks/0x0pwu4mealh1.js +1 -0
  195. package/web-dist/.next/static/chunks/0yg3wh0jczxoa.js +1 -0
  196. package/web-dist/.next/static/chunks/0zms_--zk-t3b.js +1 -0
  197. package/web-dist/.next/static/chunks/{18zkogw4aykzc.js → 14mmxdnhdicgy.js} +1 -1
  198. package/web-dist/.next/static/chunks/1bgv4d9v71ij7.js +1 -0
  199. package/web-dist/.next/static/chunks/1j2hh1hlkxrip.js +1 -0
  200. package/web-dist/.next/static/chunks/2c16uuyhfnhr9.js +1 -0
  201. package/web-dist/.next/static/chunks/2g_lldfaqo8bq.js +1 -0
  202. package/web-dist/.next/static/chunks/{3saus_snl5ri7.js → 2gak7jay2im1l.js} +1 -1
  203. package/web-dist/.next/static/chunks/2z02etl-1qi3g.js +1 -0
  204. package/web-dist/.next/static/chunks/2zutw3iy49kee.js +1 -0
  205. package/web-dist/.next/static/chunks/33tqcj2ra3wol.js +1 -0
  206. package/web-dist/.next/static/chunks/34b41uiwytome.css +2 -0
  207. package/web-dist/.next/static/chunks/3uf01y_a4cq8y.js +1 -0
  208. package/web-dist/.next/server/chunks/ssr/[root-of-the-server]__0i_7o4p._.js +0 -3
  209. package/web-dist/.next/server/chunks/ssr/_085pshu._.js +0 -3
  210. package/web-dist/.next/server/chunks/ssr/_0j9ppt0._.js +0 -3
  211. package/web-dist/.next/server/chunks/ssr/_0tc9z5_._.js +0 -3
  212. package/web-dist/.next/server/chunks/ssr/_12jhzvy._.js +0 -3
  213. package/web-dist/.next/server/chunks/ssr/_136wthy._.js +0 -3
  214. package/web-dist/.next/server/chunks/ssr/_193-v_i._.js +0 -3
  215. package/web-dist/.next/server/chunks/ssr/_1heytlk._.js +0 -3
  216. package/web-dist/.next/server/chunks/ssr/_1kom56q._.js +0 -3
  217. package/web-dist/.next/server/chunks/ssr/_1mjzb9s._.js +0 -3
  218. package/web-dist/.next/static/chunks/0l1t1fcd-_jj9.js +0 -1
  219. package/web-dist/.next/static/chunks/186xbnkxm5iu3.js +0 -1
  220. package/web-dist/.next/static/chunks/1c_1_ca4-vgc7.js +0 -1
  221. package/web-dist/.next/static/chunks/1f5f3qgbcjv4u.js +0 -1
  222. package/web-dist/.next/static/chunks/1t-dast4rat3s.css +0 -2
  223. package/web-dist/.next/static/chunks/1wsag7zex3h4_.js +0 -1
  224. package/web-dist/.next/static/chunks/24unfsl4do--1.js +0 -1
  225. package/web-dist/.next/static/chunks/2bfjq22q8xyfs.js +0 -1
  226. package/web-dist/.next/static/chunks/2kuzf7llj_291.js +0 -1
  227. package/web-dist/.next/static/chunks/34bew8owm40fg.js +0 -1
  228. package/web-dist/.next/static/chunks/3a7pgnw_6io2v.js +0 -1
  229. package/web-dist/.next/static/chunks/3fqd824e6lt4z.js +0 -1
  230. package/web-dist/.next/static/chunks/3k-swqzkcvlzm.js +0 -1
  231. package/web-dist/.next/static/chunks/3vmuunta80huz.js +0 -1
  232. /package/web-dist/.next/static/{-qI9ABgqZPR_Ri56jzVI5 → Vc91G_QEn5enhyqIYkLiV}/_buildManifest.js +0 -0
  233. /package/web-dist/.next/static/{-qI9ABgqZPR_Ri56jzVI5 → Vc91G_QEn5enhyqIYkLiV}/_clientMiddlewareManifest.js +0 -0
  234. /package/web-dist/.next/static/{-qI9ABgqZPR_Ri56jzVI5 → Vc91G_QEn5enhyqIYkLiV}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[77156,a=>{"use strict";let b=(0,a.i(70106).default)("Eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,b],77156)},14548,a=>{"use strict";let b=(0,a.i(70106).default)("Save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);a.s(["Save",0,b],14548)},69883,a=>{"use strict";let b=(0,a.i(70106).default)("GitCommitHorizontal",[["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12",key:"1dyftd"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12",key:"oup4p8"}]]);a.s(["default",0,b])},76960,a=>{"use strict";var b=a.i(69883);a.s(["GitCommitHorizontal",()=>b.default])},76270,a=>{"use strict";let b=(0,a.i(70106).default)("Minimize2",[["polyline",{points:"4 14 10 14 10 20",key:"11kfnr"}],["polyline",{points:"20 10 14 10 14 4",key:"rlmsce"}],["line",{x1:"14",x2:"21",y1:"10",y2:"3",key:"o5lafz"}],["line",{x1:"3",x2:"10",y1:"21",y2:"14",key:"1atl0r"}]]);a.s(["Minimize2",0,b],76270)},49625,a=>{"use strict";let b=(0,a.i(70106).default)("Image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);a.s(["default",0,b])},35487,a=>{"use strict";let b=(0,a.i(70106).default)("File",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}]]);a.s(["File",0,b],35487)},23060,a=>{"use strict";var b=a.i(87924);a.s(["PatchView",0,function({diff:a,empty:c}){return a.trim()?(0,b.jsx)("pre",{className:"h-full overflow-auto bg-bg p-3 font-mono text-xs leading-relaxed",children:a.split("\n").map((a,c)=>{let d=a.startsWith("+")&&!a.startsWith("+++")?"text-success":a.startsWith("-")&&!a.startsWith("---")?"text-danger":a.startsWith("@@")?"text-accent":"text-text-muted";return(0,b.jsx)("div",{className:d,children:a||" "},c)})}):(0,b.jsx)("p",{className:"p-4 text-center text-sm text-text-muted",children:c})}])},53876,a=>{"use strict";var b=a.i(87924);a.s(["Field",0,function({label:a,htmlFor:c,children:d,hint:e}){return(0,b.jsxs)("label",{htmlFor:c,className:"flex flex-col gap-1.5",children:[(0,b.jsx)("span",{className:"text-xs font-medium uppercase tracking-wide text-text-muted",children:a}),d,e?(0,b.jsx)("span",{className:"text-xs text-text-muted",children:e}):null]})}])},97222,a=>{"use strict";var b=a.i(87924);a.s(["ModuleHeader",0,function({title:a,count:c,icon:d,children:e}){return(0,b.jsxs)("div",{className:"z-20 -mx-4 -mt-4 mb-5 flex flex-col gap-2 border-b border-border bg-bg px-4 py-3 md:sticky md:top-0 md:flex-row md:flex-wrap md:items-center md:gap-x-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[d?(0,b.jsx)(d,{size:16,className:"shrink-0 text-text-muted","aria-hidden":!0}):null,(0,b.jsx)("h1",{className:"text-base font-semibold tracking-tight text-text",children:a}),void 0!==c?(0,b.jsx)("span",{className:"rounded-full bg-elevated px-2 py-0.5 font-mono text-[11px] text-text-muted",children:c}):null]}),e?(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-2 md:ml-auto",children:e}):null]})}])},70777,a=>{"use strict";var b=a.i(87924);a.s(["ModuleShell",0,function({moduleId:a,children:c}){return(0,b.jsx)("section",{"data-module":a,className:"module-root flex flex-col gap-4",children:c})}])},9173,a=>{"use strict";var b=a.i(87924),c=a.i(12466);a.i(28130);var d=a.i(29457);a.s(["EmptyState",0,function({title:a,description:c,icon:d,action:e}){return(0,b.jsxs)("div",{className:"flex animate-fade-up flex-col items-center justify-center gap-3 py-14 text-center",children:[d?(0,b.jsx)(d,{size:28,strokeWidth:1.25,className:"text-text-muted/40","aria-hidden":!0}):null,(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)("p",{className:"text-sm uppercase tracking-wide text-text",children:a}),c&&(0,b.jsx)("p",{className:"text-xs text-text-muted",children:c})]}),e]})},"ErrorState",0,function({message:a,onRetry:e}){let{t:f}=(0,d.useTranslation)();return(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center gap-2 py-12 text-center",children:[(0,b.jsx)("p",{className:"text-sm text-accent",children:a}),e&&(0,b.jsx)(c.Button,{onClick:e,children:f.common.retry})]})},"LoadingState",0,function({label:a,variant:c="list"}){let{t:e}=(0,d.useTranslation)();return a?(0,b.jsx)("div",{className:"flex items-center justify-center py-12 font-mono text-xs text-text-muted animate-pulse",children:a}):"cards"===c?(0,b.jsx)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4,5].map(a=>(0,b.jsxs)("div",{className:"flex flex-col gap-2.5 rounded-lg border border-border bg-surface p-3",style:{boxShadow:"var(--shadow-card)"},children:[(0,b.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,b.jsx)("div",{className:"skeleton h-9 w-9 rounded-lg"}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col gap-1.5",children:[(0,b.jsx)("div",{className:"skeleton h-3.5 w-2/3 rounded"}),(0,b.jsx)("div",{className:"skeleton h-3 w-1/3 rounded"})]})]}),(0,b.jsx)("div",{className:"skeleton h-6 w-full rounded-md"})]},a))}):"kanban"===c?(0,b.jsx)("div",{className:"flex gap-3 overflow-hidden","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4].map(a=>(0,b.jsxs)("div",{className:"flex min-w-[14rem] flex-1 flex-col gap-2 rounded-lg border border-border bg-surface p-2",children:[(0,b.jsx)("div",{className:"skeleton h-3 w-20 rounded"}),[0,1,2].map(a=>(0,b.jsx)("div",{className:"skeleton h-12 w-full rounded-md"},a))]},a))}):(0,b.jsx)("div",{className:"flex flex-col gap-2.5 py-2","aria-busy":"true","aria-label":e.common.loading,children:[88,72,80,64].map((a,c)=>(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("div",{className:"skeleton h-4 w-4 rounded-md"}),(0,b.jsx)("div",{className:"skeleton h-3.5 rounded",style:{width:`${a}%`}})]},c))})}])},34048,a=>{"use strict";var b=a.i(87924);let c={default:"border-border bg-elevated text-text-muted",accent:"border-accent/40 bg-accent/10 text-accent",muted:"border-border bg-elevated text-text-muted",danger:"border-danger/40 bg-danger/10 text-danger",success:"border-success/40 bg-success/10 text-success",warning:"border-warning/40 bg-warning/10 text-warning"};a.s(["Badge",0,function({children:a,tone:d="default"}){return(0,b.jsx)("span",{className:`inline-flex items-center rounded-md border px-2 py-0.5 font-mono text-[11px] font-medium ${c[d]}`,children:a})}])},88736,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(35112);a.i(28130);var e=a.i(29457);let f={lg:"h-[88vh] w-[92vw]",xl:"max-h-[90vh] w-full max-w-2xl",md:"max-h-[88vh] w-full max-w-lg",sm:"max-h-[80vh] w-full max-w-md"};a.s(["Modal",0,function({title:a,onClose:g,children:h,size:i="lg",icon:j,description:k}){let{t:l}=(0,e.useTranslation)(),[m,n]=(0,c.useState)(!1);return((0,c.useEffect)(()=>n(!0),[]),(0,c.useEffect)(()=>{let a=a=>{"Escape"===a.key&&g()};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[g]),m)?(0,d.createPortal)((0,b.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/70 p-4",onClick:g,children:(0,b.jsxs)("div",{className:`animate-pop-in flex flex-col rounded-lg bg-surface border border-border ${f[i]}`,style:{boxShadow:"var(--shadow-raised)"},onClick:a=>a.stopPropagation(),children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 border-b border-border px-5 py-3",children:[j?(0,b.jsx)("span",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-lg border border-border bg-elevated",children:(0,b.jsx)(j,{size:18,className:"text-accent","aria-hidden":!0})}):null,(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("h2",{className:"truncate text-sm font-semibold text-text",children:a}),k?(0,b.jsx)("p",{className:"truncate text-xs text-text-muted",children:k}):null]}),(0,b.jsx)("button",{type:"button","aria-label":l.common.close,onClick:g,className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-text-muted transition-colors hover:bg-elevated hover:text-text",children:"×"})]}),(0,b.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:h})]})}),document.body):null},"ModalBody",0,function({children:a,gap:c=5}){return(0,b.jsx)("div",{className:`flex min-h-0 flex-1 flex-col overflow-y-auto p-5 ${4===c?"gap-4":6===c?"gap-6":"gap-5"}`,children:a})},"ModalFooter",0,function({children:a}){return(0,b.jsx)("div",{className:"flex shrink-0 items-center justify-end gap-2 border-t border-border px-5 py-3",children:a})}])},81560,a=>{"use strict";let b=(0,a.i(70106).default)("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);a.s(["Trash2",0,b],81560)},73570,a=>{"use strict";var b=a.i(83604);a.s(["AlertTriangle",()=>b.default])},99464,a=>{"use strict";let b=(0,a.i(70106).default)("Pencil",[["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.s(["Pencil",0,b],99464)},6555,a=>{"use strict";var b=a.i(87924),c=a.i(33217),d=a.i(34531),e=a.i(82717);a.s(["ProjectIcon",0,function({project:a,size:f=16,className:g=""}){let h=a.icon??"",{data:i}=(0,c.useQuery)({queryKey:["project-icon",a.id,h],enabled:!!h,staleTime:1/0,queryFn:async()=>{let b=await e.orcaClient.projectRawBlob(a.id,h);return await new Promise((a,c)=>{let d=new FileReader;d.onload=()=>a(d.result),d.onerror=()=>c(d.error),d.readAsDataURL(b)})}});return h&&i?(0,b.jsx)("img",{src:i,alt:"","aria-hidden":!0,className:`shrink-0 rounded-sm object-cover ${g}`,style:{width:f,height:f}}):(0,b.jsx)(d.FolderGit2,{size:f,className:`shrink-0 ${g}`,"aria-hidden":!0})}])},34044,a=>{"use strict";let b=(0,a.i(70106).default)("Maximize2",[["polyline",{points:"15 3 21 3 21 9",key:"mznyad"}],["polyline",{points:"9 21 3 21 3 15",key:"1avn1i"}],["line",{x1:"21",x2:"14",y1:"3",y2:"10",key:"ota7mn"}],["line",{x1:"3",x2:"10",y1:"21",y2:"14",key:"1atl0r"}]]);a.s(["Maximize2",0,b],34044)},50522,a=>{"use strict";let b=(0,a.i(70106).default)("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);a.s(["ChevronRight",0,b],50522)},33354,(a,b,c)=>{"use strict";c._=function(a){return a&&a.__esModule?a:{default:a}}},32245,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"BailoutToCSR",{enumerable:!0,get:function(){return e}});let d=a.r(41997);function e({reason:a,children:b}){throw Object.defineProperty(new d.BailoutToCSRError(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},7773,(a,b,c)=>{"use strict";function d(a){return a.split("/").map(a=>encodeURIComponent(a)).join("/")}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"encodeURIPath",{enumerable:!0,get:function(){return d}})},97458,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"PreloadChunks",{enumerable:!0,get:function(){return i}});let d=a.r(87924),e=a.r(35112),f=a.r(56704),g=a.r(7773),h=a.r(68063);function i({moduleIds:a}){let b=f.workAsyncStorage.getStore();if(void 0===b)return null;let c=[];if(b.reactLoadableManifest&&a){let d=b.reactLoadableManifest;for(let b of a){if(!d[b])continue;let a=d[b].files;c.push(...a)}}if(0===c.length)return null;let j=(0,h.getAssetTokenQuery)();return(0,d.jsx)(d.Fragment,{children:c.map(a=>{let c=`${b.assetPrefix}/_next/${(0,g.encodeURIPath)(a)}${j}`;return a.endsWith(".css")?(0,d.jsx)("link",{precedence:"dynamic",href:c,rel:"stylesheet",as:"style",nonce:b.nonce},a):((0,e.preload)(c,{as:"script",fetchPriority:"low",nonce:b.nonce}),null)})})}},69853,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return j}});let d=a.r(87924),e=a.r(72131),f=a.r(32245),g=a.r(97458);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},19721,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return e}});let d=a.r(33354)._(a.r(69853));function e(a,b){let c={};"function"==typeof a&&(c.loader=a);let e={...c,...b};return(0,d.default)({...e,modules:e.loadableGenerated?.modules})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},5151,a=>{"use strict";let b=(0,a.i(70106).default)("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",0,b],5151)}];
1
+ module.exports=[14548,a=>{"use strict";let b=(0,a.i(70106).default)("Save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);a.s(["Save",0,b],14548)},77156,a=>{"use strict";let b=(0,a.i(70106).default)("Eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,b],77156)},69883,a=>{"use strict";let b=(0,a.i(70106).default)("GitCommitHorizontal",[["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12",key:"1dyftd"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12",key:"oup4p8"}]]);a.s(["default",0,b])},76960,a=>{"use strict";var b=a.i(69883);a.s(["GitCommitHorizontal",()=>b.default])},76270,a=>{"use strict";let b=(0,a.i(70106).default)("Minimize2",[["polyline",{points:"4 14 10 14 10 20",key:"11kfnr"}],["polyline",{points:"20 10 14 10 14 4",key:"rlmsce"}],["line",{x1:"14",x2:"21",y1:"10",y2:"3",key:"o5lafz"}],["line",{x1:"3",x2:"10",y1:"21",y2:"14",key:"1atl0r"}]]);a.s(["Minimize2",0,b],76270)},49625,a=>{"use strict";let b=(0,a.i(70106).default)("Image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);a.s(["default",0,b])},35487,a=>{"use strict";let b=(0,a.i(70106).default)("File",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}]]);a.s(["File",0,b],35487)},23060,a=>{"use strict";var b=a.i(87924);a.s(["PatchView",0,function({diff:a,empty:c}){return a.trim()?(0,b.jsx)("pre",{className:"h-full overflow-auto bg-bg p-3 font-mono text-xs leading-relaxed",children:a.split("\n").map((a,c)=>{let d=a.startsWith("+")&&!a.startsWith("+++")?"text-success":a.startsWith("-")&&!a.startsWith("---")?"text-danger":a.startsWith("@@")?"text-accent":"text-text-muted";return(0,b.jsx)("div",{className:d,children:a||" "},c)})}):(0,b.jsx)("p",{className:"p-4 text-center text-sm text-text-muted",children:c})}])},53876,a=>{"use strict";var b=a.i(87924);a.s(["Field",0,function({label:a,htmlFor:c,children:d,hint:e}){return(0,b.jsxs)("label",{htmlFor:c,className:"flex flex-col gap-1.5",children:[(0,b.jsx)("span",{className:"text-xs font-medium uppercase tracking-wide text-text-muted",children:a}),d,e?(0,b.jsx)("span",{className:"text-xs text-text-muted",children:e}):null]})}])},97222,a=>{"use strict";var b=a.i(87924);a.s(["ModuleHeader",0,function({title:a,count:c,icon:d,children:e}){return(0,b.jsxs)("div",{className:"z-20 -mx-4 -mt-4 mb-5 flex flex-col gap-2 border-b border-border bg-bg px-4 py-3 md:sticky md:top-0 md:flex-row md:flex-wrap md:items-center md:gap-x-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[d?(0,b.jsx)(d,{size:16,className:"shrink-0 text-text-muted","aria-hidden":!0}):null,(0,b.jsx)("h1",{className:"text-base font-semibold tracking-tight text-text",children:a}),void 0!==c?(0,b.jsx)("span",{className:"rounded-full bg-elevated px-2 py-0.5 font-mono text-[11px] text-text-muted",children:c}):null]}),e?(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-2 md:ml-auto",children:e}):null]})}])},70777,a=>{"use strict";var b=a.i(87924);a.s(["ModuleShell",0,function({moduleId:a,children:c}){return(0,b.jsx)("section",{"data-module":a,className:"module-root flex flex-col gap-4",children:c})}])},9173,a=>{"use strict";var b=a.i(87924),c=a.i(12466);a.i(28130);var d=a.i(29457);a.s(["EmptyState",0,function({title:a,description:c,icon:d,action:e}){return(0,b.jsxs)("div",{className:"flex animate-fade-up flex-col items-center justify-center gap-3 py-14 text-center",children:[d?(0,b.jsx)(d,{size:28,strokeWidth:1.25,className:"text-text-muted/40","aria-hidden":!0}):null,(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)("p",{className:"text-sm uppercase tracking-wide text-text",children:a}),c&&(0,b.jsx)("p",{className:"text-xs text-text-muted",children:c})]}),e]})},"ErrorState",0,function({message:a,onRetry:e}){let{t:f}=(0,d.useTranslation)();return(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center gap-2 py-12 text-center",children:[(0,b.jsx)("p",{className:"text-sm text-accent",children:a}),e&&(0,b.jsx)(c.Button,{onClick:e,children:f.common.retry})]})},"LoadingState",0,function({label:a,variant:c="list"}){let{t:e}=(0,d.useTranslation)();return a?(0,b.jsx)("div",{className:"flex items-center justify-center py-12 font-mono text-xs text-text-muted animate-pulse",children:a}):"cards"===c?(0,b.jsx)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4,5].map(a=>(0,b.jsxs)("div",{className:"flex flex-col gap-2.5 rounded-lg border border-border bg-surface p-3",style:{boxShadow:"var(--shadow-card)"},children:[(0,b.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,b.jsx)("div",{className:"skeleton h-9 w-9 rounded-lg"}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col gap-1.5",children:[(0,b.jsx)("div",{className:"skeleton h-3.5 w-2/3 rounded"}),(0,b.jsx)("div",{className:"skeleton h-3 w-1/3 rounded"})]})]}),(0,b.jsx)("div",{className:"skeleton h-6 w-full rounded-md"})]},a))}):"kanban"===c?(0,b.jsx)("div",{className:"flex gap-3 overflow-hidden","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4].map(a=>(0,b.jsxs)("div",{className:"flex min-w-[14rem] flex-1 flex-col gap-2 rounded-lg border border-border bg-surface p-2",children:[(0,b.jsx)("div",{className:"skeleton h-3 w-20 rounded"}),[0,1,2].map(a=>(0,b.jsx)("div",{className:"skeleton h-12 w-full rounded-md"},a))]},a))}):(0,b.jsx)("div",{className:"flex flex-col gap-2.5 py-2","aria-busy":"true","aria-label":e.common.loading,children:[88,72,80,64].map((a,c)=>(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("div",{className:"skeleton h-4 w-4 rounded-md"}),(0,b.jsx)("div",{className:"skeleton h-3.5 rounded",style:{width:`${a}%`}})]},c))})}])},34048,a=>{"use strict";var b=a.i(87924);let c={default:"border-border bg-elevated text-text-muted",accent:"border-accent/40 bg-accent/10 text-accent",muted:"border-border bg-elevated text-text-muted",danger:"border-danger/40 bg-danger/10 text-danger",success:"border-success/40 bg-success/10 text-success",warning:"border-warning/40 bg-warning/10 text-warning"};a.s(["Badge",0,function({children:a,tone:d="default"}){return(0,b.jsx)("span",{className:`inline-flex items-center rounded-md border px-2 py-0.5 font-mono text-[11px] font-medium ${c[d]}`,children:a})}])},88736,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(35112);a.i(28130);var e=a.i(29457);let f={lg:"h-[88vh] w-[92vw]",xl:"max-h-[90vh] w-full max-w-2xl",md:"max-h-[88vh] w-full max-w-lg",sm:"max-h-[80vh] w-full max-w-md"};a.s(["Modal",0,function({title:a,onClose:g,children:h,size:i="lg",icon:j,description:k}){let{t:l}=(0,e.useTranslation)(),[m,n]=(0,c.useState)(!1);return((0,c.useEffect)(()=>n(!0),[]),(0,c.useEffect)(()=>{let a=a=>{"Escape"===a.key&&g()};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[g]),m)?(0,d.createPortal)((0,b.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/70 p-4",onClick:g,children:(0,b.jsxs)("div",{className:`animate-pop-in flex flex-col rounded-lg bg-surface border border-border ${f[i]}`,style:{boxShadow:"var(--shadow-raised)"},onClick:a=>a.stopPropagation(),children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 border-b border-border px-5 py-3",children:[j?(0,b.jsx)("span",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-lg border border-border bg-elevated",children:(0,b.jsx)(j,{size:18,className:"text-accent","aria-hidden":!0})}):null,(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("h2",{className:"truncate text-sm font-semibold text-text",children:a}),k?(0,b.jsx)("p",{className:"truncate text-xs text-text-muted",children:k}):null]}),(0,b.jsx)("button",{type:"button","aria-label":l.common.close,onClick:g,className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-text-muted transition-colors hover:bg-elevated hover:text-text",children:"×"})]}),(0,b.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:h})]})}),document.body):null},"ModalBody",0,function({children:a,gap:c=5}){return(0,b.jsx)("div",{className:`flex min-h-0 flex-1 flex-col overflow-y-auto p-5 ${4===c?"gap-4":6===c?"gap-6":"gap-5"}`,children:a})},"ModalFooter",0,function({children:a}){return(0,b.jsx)("div",{className:"flex shrink-0 items-center justify-end gap-2 border-t border-border px-5 py-3",children:a})}])},81560,a=>{"use strict";let b=(0,a.i(70106).default)("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);a.s(["Trash2",0,b],81560)},73570,a=>{"use strict";var b=a.i(83604);a.s(["AlertTriangle",()=>b.default])},99464,a=>{"use strict";let b=(0,a.i(70106).default)("Pencil",[["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.s(["Pencil",0,b],99464)},6555,a=>{"use strict";var b=a.i(87924),c=a.i(33217),d=a.i(34531),e=a.i(82717);a.s(["ProjectIcon",0,function({project:a,size:f=16,className:g=""}){let h=a.icon??"",{data:i}=(0,c.useQuery)({queryKey:["project-icon",a.id,h],enabled:!!h,staleTime:1/0,queryFn:async()=>{let b=await e.orcaClient.projectRawBlob(a.id,h);return await new Promise((a,c)=>{let d=new FileReader;d.onload=()=>a(d.result),d.onerror=()=>c(d.error),d.readAsDataURL(b)})}});return h&&i?(0,b.jsx)("img",{src:i,alt:"","aria-hidden":!0,className:`shrink-0 rounded-sm object-cover ${g}`,style:{width:f,height:f}}):(0,b.jsx)(d.FolderGit2,{size:f,className:`shrink-0 ${g}`,"aria-hidden":!0})}])},34044,a=>{"use strict";let b=(0,a.i(70106).default)("Maximize2",[["polyline",{points:"15 3 21 3 21 9",key:"mznyad"}],["polyline",{points:"9 21 3 21 3 15",key:"1avn1i"}],["line",{x1:"21",x2:"14",y1:"3",y2:"10",key:"ota7mn"}],["line",{x1:"3",x2:"10",y1:"21",y2:"14",key:"1atl0r"}]]);a.s(["Maximize2",0,b],34044)},50522,a=>{"use strict";let b=(0,a.i(70106).default)("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);a.s(["ChevronRight",0,b],50522)},5151,a=>{"use strict";let b=(0,a.i(70106).default)("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",0,b],5151)}];
2
2
 
3
- //# sourceMappingURL=_1zscr7t._.js.map
3
+ //# sourceMappingURL=_0m2j9hu._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[42871,8361,a=>{"use strict";var b={setTimeout:(a,b)=>setTimeout(a,b),clearTimeout:a=>clearTimeout(a),setInterval:(a,b)=>setInterval(a,b),clearInterval:a=>clearInterval(a)},c=new class{#a=b;#b=!1;setTimeoutProvider(a){this.#a=a}setTimeout(a,b){return this.#a.setTimeout(a,b)}clearTimeout(a){this.#a.clearTimeout(a)}setInterval(a,b){return this.#a.setInterval(a,b)}clearInterval(a){this.#a.clearInterval(a)}};function d(a,b){return(b?.queryKeyHashFn||e)(a)}function e(a){return JSON.stringify(a,(a,b)=>j(b)?Object.keys(b).sort().reduce((a,c)=>(a[c]=b[c],a),{}):b)}function f(a,b){return a===b||typeof a==typeof b&&!!a&&!!b&&"object"==typeof a&&"object"==typeof b&&Object.keys(b).every(c=>f(a[c],b[c]))}a.s(["systemSetTimeoutZero",0,function(a){setTimeout(a,0)},"timeoutManager",0,c],8361);var g=Object.prototype.hasOwnProperty;function h(a,b,c=0){if(a===b)return a;if(c>500)return b;let d=i(a)&&i(b);if(!d&&!(j(a)&&j(b)))return b;let e=(d?a:Object.keys(a)).length,f=d?b:Object.keys(b),k=f.length,l=d?Array(k):{},m=0;for(let i=0;i<k;i++){let j=d?i:f[i],k=a[j],n=b[j];if(k===n){l[j]=k,(d?i<e:g.call(a,j))&&m++;continue}if(null===k||null===n||"object"!=typeof k||"object"!=typeof n){l[j]=n;continue}let o=h(k,n,c+1);l[j]=o,o===k&&m++}return e===k&&m===e?a:l}function i(a){return Array.isArray(a)&&a.length===Object.keys(a).length}function j(a){if(!k(a))return!1;let b=a.constructor;if(void 0===b)return!0;let c=b.prototype;return!!k(c)&&!!c.hasOwnProperty("isPrototypeOf")&&Object.getPrototypeOf(a)===Object.prototype}function k(a){return"[object Object]"===Object.prototype.toString.call(a)}var l=Symbol();a.s(["addConsumeAwareSignal",0,function(a,b,c){let d,e=!1;return Object.defineProperty(a,"signal",{enumerable:!0,get:()=>(d??=b(),e||(e=!0,d.aborted?c():d.addEventListener("abort",c,{once:!0})),d)}),a},"addToEnd",0,function(a,b,c=0){let d=[...a,b];return c&&d.length>c?d.slice(1):d},"addToStart",0,function(a,b,c=0){let d=[b,...a];return c&&d.length>c?d.slice(0,-1):d},"ensureQueryFn",0,function(a,b){return!a.queryFn&&b?.initialPromise?()=>b.initialPromise:a.queryFn&&a.queryFn!==l?a.queryFn:()=>Promise.reject(Error(`Missing queryFn: '${a.queryHash}'`))},"functionalUpdate",0,function(a,b){return"function"==typeof a?a(b):a},"hashKey",0,e,"hashQueryKeyByOptions",0,d,"isServer",0,!0,"isValidTimeout",0,function(a){return"number"==typeof a&&a>=0&&a!==1/0},"matchMutation",0,function(a,b){let{exact:c,status:d,predicate:g,mutationKey:h}=a;if(h){if(!b.options.mutationKey)return!1;if(c){if(e(b.options.mutationKey)!==e(h))return!1}else if(!f(b.options.mutationKey,h))return!1}return(!d||b.state.status===d)&&(!g||!!g(b))},"matchQuery",0,function(a,b){let{type:c="all",exact:e,fetchStatus:g,predicate:h,queryKey:i,stale:j}=a;if(i){if(e){if(b.queryHash!==d(i,b.options))return!1}else if(!f(b.queryKey,i))return!1}if("all"!==c){let a=b.isActive();if("active"===c&&!a||"inactive"===c&&a)return!1}return("boolean"!=typeof j||b.isStale()===j)&&(!g||g===b.state.fetchStatus)&&(!h||!!h(b))},"noop",0,function(){},"partialMatchKey",0,f,"replaceData",0,function(a,b,c){return"function"==typeof c.structuralSharing?c.structuralSharing(a,b):!1!==c.structuralSharing?h(a,b):b},"replaceEqualDeep",0,h,"resolveQueryBoolean",0,function(a,b){return"function"==typeof a?a(b):a},"resolveStaleTime",0,function(a,b){return"function"==typeof a?a(b):a},"shallowEqualObjects",0,function(a,b){if(!b||Object.keys(a).length!==Object.keys(b).length)return!1;for(let c in a)if(a[c]!==b[c])return!1;return!0},"shouldThrowError",0,function(a,b){return"function"==typeof a?a(...b):!!a},"skipToken",0,l,"sleep",0,function(a){return new Promise(b=>{c.setTimeout(b,a)})},"timeUntilStale",0,function(a,b){return Math.max(a+(b||0)-Date.now(),0)}],42871)},18544,a=>{"use strict";let b,c,d,e,f,g;var h=a.i(8361).systemSetTimeoutZero,i=(b=[],c=0,d=a=>{a()},e=a=>{a()},f=h,{batch:a=>{let g;c++;try{g=a()}finally{let a;--c||(a=b,b=[],a.length&&f(()=>{e(()=>{a.forEach(a=>{d(a)})})}))}return g},batchCalls:a=>(...b)=>{g(()=>{a(...b)})},schedule:g=a=>{c?b.push(a):f(()=>{d(a)})},setNotifyFunction:a=>{d=a},setBatchNotifyFunction:a=>{e=a},setScheduler:a=>{f=a}});a.s(["notifyManager",0,i])},99745,33791,a=>{"use strict";var b=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(a){return this.listeners.add(a),this.onSubscribe(),()=>{this.listeners.delete(a),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}};a.s(["Subscribable",0,b],33791);var c=new class extends b{#c;#d;#e;constructor(){super(),this.#e=a=>{}}onSubscribe(){this.#d||this.setEventListener(this.#e)}onUnsubscribe(){this.hasListeners()||(this.#d?.(),this.#d=void 0)}setEventListener(a){this.#e=a,this.#d?.(),this.#d=a(a=>{"boolean"==typeof a?this.setFocused(a):this.onFocus()})}setFocused(a){this.#c!==a&&(this.#c=a,this.onFocus())}onFocus(){let a=this.isFocused();this.listeners.forEach(b=>{b(a)})}isFocused(){return"boolean"==typeof this.#c?this.#c:globalThis.document?.visibilityState!=="hidden"}};a.s(["focusManager",0,c],99745)},12552,79715,a=>{"use strict";var b=a.i(33791),c=new class extends b.Subscribable{#f=!0;#d;#e;constructor(){super(),this.#e=a=>{}}onSubscribe(){this.#d||this.setEventListener(this.#e)}onUnsubscribe(){this.hasListeners()||(this.#d?.(),this.#d=void 0)}setEventListener(a){this.#e=a,this.#d?.(),this.#d=a(this.setOnline.bind(this))}setOnline(a){this.#f!==a&&(this.#f=a,this.listeners.forEach(b=>{b(a)}))}isOnline(){return this.#f}};a.s(["onlineManager",0,c],12552),a.i(42871),a.s(["pendingThenable",0,function(){let a,b,c=new Promise((c,d)=>{a=c,b=d});function d(a){Object.assign(c,a),delete c.resolve,delete c.reject}return c.status="pending",c.catch(()=>{}),c.resolve=b=>{d({status:"fulfilled",value:b}),a(b)},c.reject=a=>{d({status:"rejected",reason:a}),b(a)},c}],79715)},77048,a=>{"use strict";let b;var c=a.i(42871),d=(b=()=>c.isServer,{isServer:()=>b(),setIsServer(a){b=a}});a.s(["environmentManager",0,d])},76644,21778,85659,a=>{"use strict";var b=a.i(42871),c=a.i(18544),d=a.i(99745),e=a.i(12552),f=a.i(79715),g=a.i(77048);function h(a){return Math.min(1e3*2**a,3e4)}function i(a){return(a??"online")!=="online"||e.onlineManager.isOnline()}var j=class extends Error{constructor(a){super("CancelledError"),this.revert=a?.revert,this.silent=a?.silent}};function k(a){let c,k=!1,l=0,m=(0,f.pendingThenable)(),n=()=>d.focusManager.isFocused()&&("always"===a.networkMode||e.onlineManager.isOnline())&&a.canRun(),o=()=>i(a.networkMode)&&a.canRun(),p=a=>{"pending"===m.status&&(c?.(),m.resolve(a))},q=a=>{"pending"===m.status&&(c?.(),m.reject(a))},r=()=>new Promise(b=>{c=a=>{("pending"!==m.status||n())&&b(a)},a.onPause?.()}).then(()=>{c=void 0,"pending"===m.status&&a.onContinue?.()}),s=()=>{let c;if("pending"!==m.status)return;let d=0===l?a.initialPromise:void 0;try{c=d??a.fn()}catch(a){c=Promise.reject(a)}Promise.resolve(c).then(p).catch(c=>{if("pending"!==m.status)return;let d=a.retry??3*!g.environmentManager.isServer(),e=a.retryDelay??h,f="function"==typeof e?e(l,c):e,i=!0===d||"number"==typeof d&&l<d||"function"==typeof d&&d(l,c);k||!i?q(c):(l++,a.onFail?.(l,c),(0,b.sleep)(f).then(()=>n()?void 0:r()).then(()=>{k?q(c):s()}))})};return{promise:m,status:()=>m.status,cancel:b=>{if("pending"===m.status){let c=new j(b);q(c),a.onCancel?.(c)}},continue:()=>(c?.(),m),cancelRetry:()=>{k=!0},continueRetry:()=>{k=!1},canStart:o,start:()=>(o()?s():r().then(s),m)}}a.s(["CancelledError",0,j,"canFetch",0,i,"createRetryer",0,k],21778);var l=a.i(8361),m=class{#g;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),(0,b.isValidTimeout)(this.gcTime)&&(this.#g=l.timeoutManager.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(a){this.gcTime=Math.max(this.gcTime||0,a??(g.environmentManager.isServer()?1/0:3e5))}clearGcTimeout(){void 0!==this.#g&&(l.timeoutManager.clearTimeout(this.#g),this.#g=void 0)}};function n(a,{pages:b,pageParams:c}){let d=b.length-1;return b.length>0?a.getNextPageParam(b[d],b,c[d],c):void 0}a.s(["Removable",0,m],85659);var o=class extends m{#h;#i;#j;#k;#l;#m;#n;#o;constructor(a){super(),this.#o=!1,this.#n=a.defaultOptions,this.setOptions(a.options),this.observers=[],this.#l=a.client,this.#k=this.#l.getQueryCache(),this.queryKey=a.queryKey,this.queryHash=a.queryHash,this.#i=r(this.options),this.state=a.state??this.#i,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#h}get promise(){return this.#m?.promise}setOptions(a){if(this.options={...this.#n,...a},a?._type&&(this.#h=a._type),this.updateGcTime(this.options.gcTime),this.state&&void 0===this.state.data){let a=r(this.options);void 0!==a.data&&(this.setState(q(a.data,a.dataUpdatedAt)),this.#i=a)}}optionalRemove(){this.observers.length||"idle"!==this.state.fetchStatus||this.#k.remove(this)}setData(a,c){let d=(0,b.replaceData)(this.state.data,a,this.options);return this.#p({data:d,type:"success",dataUpdatedAt:c?.updatedAt,manual:c?.manual}),d}setState(a){this.#p({type:"setState",state:a})}cancel(a){let c=this.#m?.promise;return this.#m?.cancel(a),c?c.then(b.noop).catch(b.noop):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#i}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(a=>!1!==(0,b.resolveQueryBoolean)(a.options.enabled,this))}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===b.skipToken||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0&&this.observers.some(a=>"static"===(0,b.resolveStaleTime)(a.options.staleTime,this))}isStale(){return this.getObserversCount()>0?this.observers.some(a=>a.getCurrentResult().isStale):void 0===this.state.data||this.state.isInvalidated}isStaleByTime(a=0){return void 0===this.state.data||"static"!==a&&(!!this.state.isInvalidated||!(0,b.timeUntilStale)(this.state.dataUpdatedAt,a))}onFocus(){let a=this.observers.find(a=>a.shouldFetchOnWindowFocus());a?.refetch({cancelRefetch:!1}),this.#m?.continue()}onOnline(){let a=this.observers.find(a=>a.shouldFetchOnReconnect());a?.refetch({cancelRefetch:!1}),this.#m?.continue()}addObserver(a){this.observers.includes(a)||(this.observers.push(a),this.clearGcTimeout(),this.#k.notify({type:"observerAdded",query:this,observer:a}))}removeObserver(a){this.observers.includes(a)&&(this.observers=this.observers.filter(b=>b!==a),this.observers.length||(this.#m&&(this.#o||this.#q()?this.#m.cancel({revert:!0}):this.#m.cancelRetry()),this.scheduleGc()),this.#k.notify({type:"observerRemoved",query:this,observer:a}))}getObserversCount(){return this.observers.length}#q(){return"paused"===this.state.fetchStatus&&"pending"===this.state.status}invalidate(){this.state.isInvalidated||this.#p({type:"invalidate"})}async fetch(a,c){var d;let e;if("idle"!==this.state.fetchStatus&&this.#m?.status()!=="rejected"){if(void 0!==this.state.data&&c?.cancelRefetch)this.cancel({silent:!0});else if(this.#m)return this.#m.continueRetry(),this.#m.promise}if(a&&this.setOptions(a),!this.options.queryFn){let a=this.observers.find(a=>a.options.queryFn);a&&this.setOptions(a.options)}let f=new AbortController,g=a=>{Object.defineProperty(a,"signal",{enumerable:!0,get:()=>(this.#o=!0,f.signal)})},h=()=>{let a,d=(0,b.ensureQueryFn)(this.options,c),e=(g(a={client:this.#l,queryKey:this.queryKey,meta:this.meta}),a);return(this.#o=!1,this.options.persister)?this.options.persister(d,e,this):d(e)},i=(g(e={fetchOptions:c,options:this.options,queryKey:this.queryKey,client:this.#l,state:this.state,fetchFn:h}),e),l="infinite"===this.#h?(d=this.options.pages,{onFetch:(a,c)=>{let e=a.options,f=a.fetchOptions?.meta?.fetchMore?.direction,g=a.state.data?.pages||[],h=a.state.data?.pageParams||[],i={pages:[],pageParams:[]},j=0,k=async()=>{let c=!1,k=(0,b.ensureQueryFn)(a.options,a.fetchOptions),l=async(d,e,f)=>{let g;if(c)return Promise.reject(a.signal.reason);if(null==e&&d.pages.length)return Promise.resolve(d);let h=(g={client:a.client,queryKey:a.queryKey,pageParam:e,direction:f?"backward":"forward",meta:a.options.meta},(0,b.addConsumeAwareSignal)(g,()=>a.signal,()=>c=!0),g),i=await k(h),{maxPages:j}=a.options,l=f?b.addToStart:b.addToEnd;return{pages:l(d.pages,i,j),pageParams:l(d.pageParams,e,j)}};if(f&&g.length){let a="backward"===f,b={pages:g,pageParams:h},c=(a?function(a,{pages:b,pageParams:c}){return b.length>0?a.getPreviousPageParam?.(b[0],b,c[0],c):void 0}:n)(e,b);i=await l(b,c,a)}else{let a=d??g.length;do{let a=0===j?h[0]??e.initialPageParam:n(e,i);if(j>0&&null==a)break;i=await l(i,a),j++}while(j<a)}return i};a.options.persister?a.fetchFn=()=>a.options.persister?.(k,{client:a.client,queryKey:a.queryKey,meta:a.options.meta,signal:a.signal},c):a.fetchFn=k}}):this.options.behavior;l?.onFetch(i,this),this.#j=this.state,("idle"===this.state.fetchStatus||this.state.fetchMeta!==i.fetchOptions?.meta)&&this.#p({type:"fetch",meta:i.fetchOptions?.meta}),this.#m=k({initialPromise:c?.initialPromise,fn:i.fetchFn,onCancel:a=>{a instanceof j&&a.revert&&this.setState({...this.#j,fetchStatus:"idle"}),f.abort()},onFail:(a,b)=>{this.#p({type:"failed",failureCount:a,error:b})},onPause:()=>{this.#p({type:"pause"})},onContinue:()=>{this.#p({type:"continue"})},retry:i.options.retry,retryDelay:i.options.retryDelay,networkMode:i.options.networkMode,canRun:()=>!0});try{let a=await this.#m.start();if(void 0===a)throw Error(`${this.queryHash} data is undefined`);return this.setData(a),this.#k.config.onSuccess?.(a,this),this.#k.config.onSettled?.(a,this.state.error,this),a}catch(a){if(a instanceof j){if(a.silent)return this.#m.promise;else if(a.revert){if(void 0===this.state.data)throw a;return this.state.data}}throw this.#p({type:"error",error:a}),this.#k.config.onError?.(a,this),this.#k.config.onSettled?.(this.state.data,a,this),a}finally{this.scheduleGc()}}#p(a){let b=b=>{switch(a.type){case"failed":return{...b,fetchFailureCount:a.failureCount,fetchFailureReason:a.error};case"pause":return{...b,fetchStatus:"paused"};case"continue":return{...b,fetchStatus:"fetching"};case"fetch":return{...b,...p(b.data,this.options),fetchMeta:a.meta??null};case"success":let c={...b,...q(a.data,a.dataUpdatedAt),dataUpdateCount:b.dataUpdateCount+1,...!a.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return this.#j=a.manual?c:void 0,c;case"error":let d=a.error;return{...b,error:d,errorUpdateCount:b.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:b.fetchFailureCount+1,fetchFailureReason:d,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...b,isInvalidated:!0};case"setState":return{...b,...a.state}}};this.state=b(this.state),c.notifyManager.batch(()=>{this.observers.forEach(a=>{a.onQueryUpdate()}),this.#k.notify({query:this,type:"updated",action:a})})}};function p(a,b){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:i(b.networkMode)?"fetching":"paused",...void 0===a&&{error:null,status:"pending"}}}function q(a,b){return{data:a,dataUpdatedAt:b??Date.now(),error:null,isInvalidated:!1,status:"success"}}function r(a){let b="function"==typeof a.initialData?a.initialData():a.initialData,c=void 0!==b,d=c?"function"==typeof a.initialDataUpdatedAt?a.initialDataUpdatedAt():a.initialDataUpdatedAt:0;return{data:b,dataUpdateCount:0,dataUpdatedAt:c?d??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:c?"success":"pending",fetchStatus:"idle"}}a.s(["Query",0,o,"fetchState",0,p],76644)},37927,a=>{"use strict";var b=a.i(72131),c=a.i(87924),d=b.createContext(void 0);a.s(["QueryClientProvider",0,({client:a,children:e})=>(b.useEffect(()=>(a.mount(),()=>{a.unmount()}),[a]),(0,c.jsx)(d.Provider,{value:a,children:e})),"useQueryClient",0,a=>{let c=b.useContext(d);if(a)return a;if(!c)throw Error("No QueryClient set, use QueryClientProvider to set one");return c}])},82717,30067,a=>{"use strict";function b(){}a.s(["AUTH_CLEARED_EVENT",0,"orca:auth-cleared","clearToken",0,b],30067);let c="/api";class d extends Error{status;code;constructor(a,b,c){super(a),this.status=b,this.code=c,this.name="OrcaApiError"}}async function e(a,e){let f=await fetch(`${c}${a}`,{...e,credentials:"same-origin"});if(401===f.status)throw b(),new d(`orca 401 on ${a}`,401);if(!f.ok){let b;try{b=(await f.json()).error}catch{}throw new d(`orca ${f.status} on ${a}`,f.status,b)}if(204!==f.status)try{return await f.json()}catch{throw new d(`non-JSON response from ${a}`,f.status)}}let f=(a,b="POST")=>({method:b,headers:{"content-type":"application/json"},body:JSON.stringify(a)});a.s(["BASE",0,c,"OrcaApiError",0,d,"apiErrorMessage",0,function(a){return a instanceof d?a.code??a.message:a instanceof Error?a.message:String(a)},"orcaClient",0,{tasks:a=>e(null!=a?`/tasks?project_id=${a}`:"/tasks"),ready:()=>e("/tasks/ready"),sessions:()=>e("/sessions"),missions:()=>e("/missions"),getMissionDetail:a=>e(`/missions/${encodeURIComponent(a)}`),health:()=>e("/health"),setupStatus:()=>e("/setup"),createTask:a=>e("/tasks",f(a)),updateTask:(a,b)=>e(`/tasks/${encodeURIComponent(a)}`,f(b,"PATCH")),deleteTask:a=>e(`/tasks/${encodeURIComponent(a)}`,{method:"DELETE"}),deleteMission:a=>e(`/tasks/${encodeURIComponent(a)}?subtree=1`,{method:"DELETE"}),cleanupAll:()=>e("/admin/cleanup",{method:"POST",headers:{"content-type":"application/json"},body:"{}"}),taskDeps:a=>e(`/tasks/${encodeURIComponent(a)}/deps`),taskUsage:a=>e(`/tasks/${encodeURIComponent(a)}/usage`),allDeps:()=>e("/tasks/deps"),planTask:a=>e("/tasks/plan",f(a)),planPreview:a=>e("/tasks/plan",f({...a,dryRun:!0})),getPlanJob:a=>e(`/plan/${encodeURIComponent(a)}`),insertPhases:(a,b)=>e(`/tasks/${encodeURIComponent(a)}/phases`,f(b)),engage:a=>e("/missions",f(a)),spawn:a=>e("/sessions",f(a)),closeTask:a=>e(`/tasks/${a}`,f({status:"closed"},"PATCH")),setTaskStatus:(a,b)=>e(`/tasks/${a}`,f({status:b},"PATCH")),setTaskExec:(a,b)=>e(`/tasks/${a}`,f({exec:b},"PATCH")),approveGate:a=>e(`/tasks/${a}/approve-gate`,{method:"POST"}),sessionPane:(a,b=!1)=>e(`/sessions/${encodeURIComponent(a)}/pane${b?"?ansi=1":""}`),killSession:a=>e(`/sessions/${encodeURIComponent(a)}`,{method:"DELETE"}),sendKeys:(a,b)=>e(`/sessions/${encodeURIComponent(a)}/keys`,f({keys:b})),resizeSession:(a,b,c)=>e(`/sessions/${encodeURIComponent(a)}/resize`,f({cols:b,rows:c})),pauseMission:a=>e(`/missions/${a}`,f({action:"pause"},"PATCH")),resumeMission:a=>e(`/missions/${a}`,f({action:"resume"},"PATCH")),disengageMission:a=>e(`/missions/${a}`,{method:"DELETE"}),getConfig:()=>e("/config"),updateConfig:a=>e("/config",f(a,"PUT")),login:(a,b)=>e("/auth/login",f({username:a,password:b})),logout:()=>e("/auth/logout",{method:"POST"}),me:()=>e("/auth/me"),updateMe:a=>e("/auth/me",f(a,"PATCH")),uploadAvatar:a=>{let b=new FormData;return b.append("avatar",a),e("/auth/me/avatar",{method:"POST",body:b})},changePassword:(a,b)=>e("/auth/me/password",f({currentPassword:a,newPassword:b})),avatarUrl:async a=>`${c}${(await e(`/users/${a}/avatar/url`)).url}`,listUsers:()=>e("/users"),createUser:(a,b)=>e("/users",f({username:a,password:b})),updateUser:(a,b)=>e(`/users/${a}`,f(b,"PATCH")),deleteUser:a=>e(`/users/${a}`,{method:"DELETE"}),activity:a=>{let b=new URLSearchParams({...a?.limit?{limit:String(a.limit)}:{},...a?.type?{type:a.type}:{}}).toString();return e(`/activity${b?`?${b}`:""}`)},projects:()=>e("/projects"),createProject:a=>e("/projects",f(a)),updateProject:(a,b)=>e(`/projects/${a}`,f(b,"PATCH")),removeProject:a=>e(`/projects/${a}`,{method:"DELETE"}),projectGit:a=>e(`/projects/${a}/git`),projectFiles:a=>e(`/projects/${a}/files`),projectFile:(a,b)=>e(`/projects/${a}/file?path=${encodeURIComponent(b)}`),writeProjectFile:(a,b,c)=>e(`/projects/${a}/file`,f({path:b,content:c},"PUT")),projectFileAtHead:(a,b)=>e(`/projects/${a}/head?path=${encodeURIComponent(b)}`),projectCommit:(a,b)=>e(`/projects/${a}/commit/${encodeURIComponent(b)}`),projectCommitFileDiff:(a,b,c)=>e(`/projects/${a}/commit/${encodeURIComponent(b)}/diff?path=${encodeURIComponent(c)}`),projectRawBlob:async(a,b)=>{let e=await fetch(`${c}/projects/${a}/raw?path=${encodeURIComponent(b)}`,{credentials:"same-origin"});if(!e.ok)throw new d(`orca ${e.status} on raw ${b}`,e.status);return e.blob()},newProjectFile:(a,b)=>e(`/projects/${a}/new-file`,f({path:b})),newProjectDir:(a,b)=>e(`/projects/${a}/dir`,f({path:b})),renameProjectEntry:(a,b,c)=>e(`/projects/${a}/rename`,f({from:b,to:c})),copyProjectEntry:(a,b,c)=>e(`/projects/${a}/copy`,f({from:b,to:c})),deleteProjectEntry:(a,b)=>e(`/projects/${a}/entry?path=${encodeURIComponent(b)}`,{method:"DELETE"}),projectCommits:(a,b=30)=>e(`/projects/${a}/commits?limit=${b}`),projectChanged:a=>e(`/projects/${a}/changed`),projectChanges:a=>e(`/projects/${a}/changes`),userProjects:a=>e(`/users/${a}/projects`),assignProject:(a,b)=>e(`/users/${a}/projects`,f({projectId:b})),unassignProject:(a,b)=>e(`/users/${a}/projects/${b}`,{method:"DELETE"}),hermesStatus:a=>e(`/integrations/hermes/status${a?`?home=${encodeURIComponent(a)}`:""}`),hermesInstall:a=>e("/integrations/hermes/install",f(a)),cliStatus:()=>e("/integrations/cli-status")}],82717)},41579,a=>{"use strict";var b=a.i(99745),c=a.i(77048),d=a.i(18544),e=a.i(76644),f=a.i(33791),g=a.i(79715),h=a.i(42871),i=a.i(8361),j=class extends f.Subscribable{constructor(a,b){super(),this.options=b,this.#l=a,this.#r=null,this.#s=(0,g.pendingThenable)(),this.bindMethods(),this.setOptions(b)}#l;#t=void 0;#u=void 0;#v=void 0;#w;#x;#s;#r;#y;#z;#A;#B;#C;#D;#E=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){1===this.listeners.size&&(this.#t.addObserver(this),k(this.#t,this.options)?this.#F():this.updateResult(),this.#G())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return l(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return l(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#H(),this.#I(),this.#t.removeObserver(this)}setOptions(a){let b=this.options,c=this.#t;if(this.options=this.#l.defaultQueryOptions(a),void 0!==this.options.enabled&&"boolean"!=typeof this.options.enabled&&"function"!=typeof this.options.enabled&&"boolean"!=typeof(0,h.resolveQueryBoolean)(this.options.enabled,this.#t))throw Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#J(),this.#t.setOptions(this.options),b._defaulted&&!(0,h.shallowEqualObjects)(this.options,b)&&this.#l.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#t,observer:this});let d=this.hasListeners();d&&m(this.#t,c,this.options,b)&&this.#F(),this.updateResult(),d&&(this.#t!==c||(0,h.resolveQueryBoolean)(this.options.enabled,this.#t)!==(0,h.resolveQueryBoolean)(b.enabled,this.#t)||(0,h.resolveStaleTime)(this.options.staleTime,this.#t)!==(0,h.resolveStaleTime)(b.staleTime,this.#t))&&this.#K();let e=this.#L();d&&(this.#t!==c||(0,h.resolveQueryBoolean)(this.options.enabled,this.#t)!==(0,h.resolveQueryBoolean)(b.enabled,this.#t)||e!==this.#D)&&this.#M(e)}getOptimisticResult(a){var b,c;let d=this.#l.getQueryCache().build(this.#l,a),e=this.createResult(d,a);return b=this,c=e,(0,h.shallowEqualObjects)(b.getCurrentResult(),c)||(this.#v=e,this.#x=this.options,this.#w=this.#t.state),e}getCurrentResult(){return this.#v}trackResult(a,b){return new Proxy(a,{get:(a,c)=>(this.trackProp(c),b?.(c),"promise"===c&&(this.trackProp("data"),this.options.experimental_prefetchInRender||"pending"!==this.#s.status||this.#s.reject(Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(a,c))})}trackProp(a){this.#E.add(a)}getCurrentQuery(){return this.#t}refetch({...a}={}){return this.fetch({...a})}fetchOptimistic(a){let b=this.#l.defaultQueryOptions(a),c=this.#l.getQueryCache().build(this.#l,b);return c.fetch().then(()=>this.createResult(c,b))}fetch(a){return this.#F({...a,cancelRefetch:a.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#v))}#F(a){this.#J();let b=this.#t.fetch(this.options,a);return a?.throwOnError||(b=b.catch(h.noop)),b}#K(){this.#H();let a=(0,h.resolveStaleTime)(this.options.staleTime,this.#t);if(c.environmentManager.isServer()||this.#v.isStale||!(0,h.isValidTimeout)(a))return;let b=(0,h.timeUntilStale)(this.#v.dataUpdatedAt,a);this.#B=i.timeoutManager.setTimeout(()=>{this.#v.isStale||this.updateResult()},b+1)}#L(){return("function"==typeof this.options.refetchInterval?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#M(a){this.#I(),this.#D=a,!c.environmentManager.isServer()&&!1!==(0,h.resolveQueryBoolean)(this.options.enabled,this.#t)&&(0,h.isValidTimeout)(this.#D)&&0!==this.#D&&(this.#C=i.timeoutManager.setInterval(()=>{(this.options.refetchIntervalInBackground||b.focusManager.isFocused())&&this.#F()},this.#D))}#G(){this.#K(),this.#M(this.#L())}#H(){void 0!==this.#B&&(i.timeoutManager.clearTimeout(this.#B),this.#B=void 0)}#I(){void 0!==this.#C&&(i.timeoutManager.clearInterval(this.#C),this.#C=void 0)}createResult(a,b){let c,d=this.#t,f=this.options,i=this.#v,j=this.#w,l=this.#x,o=a!==d?a.state:this.#u,{state:p}=a,q={...p},r=!1;if(b._optimisticResults){let c=this.hasListeners(),g=!c&&k(a,b),h=c&&m(a,d,b,f);(g||h)&&(q={...q,...(0,e.fetchState)(p.data,a.options)}),"isRestoring"===b._optimisticResults&&(q.fetchStatus="idle")}let{error:s,errorUpdatedAt:t,status:u}=q;c=q.data;let v=!1;if(void 0!==b.placeholderData&&void 0===c&&"pending"===u){let a;i?.isPlaceholderData&&b.placeholderData===l?.placeholderData?(a=i.data,v=!0):a="function"==typeof b.placeholderData?b.placeholderData(this.#A?.state.data,this.#A):b.placeholderData,void 0!==a&&(u="success",c=(0,h.replaceData)(i?.data,a,b),r=!0)}if(b.select&&void 0!==c&&!v)if(i&&c===j?.data&&b.select===this.#y)c=this.#z;else try{this.#y=b.select,c=b.select(c),c=(0,h.replaceData)(i?.data,c,b),this.#z=c,this.#r=null}catch(a){this.#r=a}this.#r&&(s=this.#r,c=this.#z,t=Date.now(),u="error");let w="fetching"===q.fetchStatus,x="pending"===u,y="error"===u,z=x&&w,A=void 0!==c,B={status:u,fetchStatus:q.fetchStatus,isPending:x,isSuccess:"success"===u,isError:y,isInitialLoading:z,isLoading:z,data:c,dataUpdatedAt:q.dataUpdatedAt,error:s,errorUpdatedAt:t,failureCount:q.fetchFailureCount,failureReason:q.fetchFailureReason,errorUpdateCount:q.errorUpdateCount,isFetched:a.isFetched(),isFetchedAfterMount:q.dataUpdateCount>o.dataUpdateCount||q.errorUpdateCount>o.errorUpdateCount,isFetching:w,isRefetching:w&&!x,isLoadingError:y&&!A,isPaused:"paused"===q.fetchStatus,isPlaceholderData:r,isRefetchError:y&&A,isStale:n(a,b),refetch:this.refetch,promise:this.#s,isEnabled:!1!==(0,h.resolveQueryBoolean)(b.enabled,a)};if(this.options.experimental_prefetchInRender){let b=void 0!==B.data,c="error"===B.status&&!b,e=a=>{c?a.reject(B.error):b&&a.resolve(B.data)},f=()=>{e(this.#s=B.promise=(0,g.pendingThenable)())},h=this.#s;switch(h.status){case"pending":a.queryHash===d.queryHash&&e(h);break;case"fulfilled":(c||B.data!==h.value)&&f();break;case"rejected":c&&B.error===h.reason||f()}}return B}updateResult(){let a=this.#v,b=this.createResult(this.#t,this.options);if(this.#w=this.#t.state,this.#x=this.options,void 0!==this.#w.data&&(this.#A=this.#t),(0,h.shallowEqualObjects)(b,a))return;this.#v=b;let c=()=>{if(!a)return!0;let{notifyOnChangeProps:b}=this.options,c="function"==typeof b?b():b;if("all"===c||!c&&!this.#E.size)return!0;let d=new Set(c??this.#E);return this.options.throwOnError&&d.add("error"),Object.keys(this.#v).some(b=>this.#v[b]!==a[b]&&d.has(b))};this.#N({listeners:c()})}#J(){let a=this.#l.getQueryCache().build(this.#l,this.options);if(a===this.#t)return;let b=this.#t;this.#t=a,this.#u=a.state,this.hasListeners()&&(b?.removeObserver(this),a.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#G()}#N(a){d.notifyManager.batch(()=>{a.listeners&&this.listeners.forEach(a=>{a(this.#v)}),this.#l.getQueryCache().notify({query:this.#t,type:"observerResultsUpdated"})})}};function k(a,b){return!1!==(0,h.resolveQueryBoolean)(b.enabled,a)&&void 0===a.state.data&&("error"!==a.state.status||!1!==(0,h.resolveQueryBoolean)(b.retryOnMount,a))||void 0!==a.state.data&&l(a,b,b.refetchOnMount)}function l(a,b,c){if(!1!==(0,h.resolveQueryBoolean)(b.enabled,a)&&"static"!==(0,h.resolveStaleTime)(b.staleTime,a)){let d="function"==typeof c?c(a):c;return"always"===d||!1!==d&&n(a,b)}return!1}function m(a,b,c,d){return(a!==b||!1===(0,h.resolveQueryBoolean)(d.enabled,a))&&(!c.suspense||"error"!==a.state.status)&&n(a,c)}function n(a,b){return!1!==(0,h.resolveQueryBoolean)(b.enabled,a)&&a.isStaleByTime((0,h.resolveStaleTime)(b.staleTime,a))}a.s(["QueryObserver",0,j])},33217,49651,a=>{"use strict";let b;var c=a.i(41579),d=a.i(72131),e=a.i(77048),f=a.i(42871),g=a.i(18544),h=a.i(37927);a.i(87924);var i=d.createContext((b=!1,{clearReset:()=>{b=!1},reset:()=>{b=!0},isReset:()=>b})),j=(a,b,c)=>{let d=c?.state.error&&"function"==typeof a.throwOnError?(0,f.shouldThrowError)(a.throwOnError,[c.state.error,c]):a.throwOnError;(a.suspense||a.experimental_prefetchInRender||d)&&!b.isReset()&&(a.retryOnMount=!1)},k=a=>{d.useEffect(()=>{a.clearReset()},[a])},l=({result:a,errorResetBoundary:b,throwOnError:c,query:d,suspense:e})=>a.isError&&!b.isReset()&&!a.isFetching&&d&&(e&&void 0===a.data||(0,f.shouldThrowError)(c,[a.error,d])),m=d.createContext(!1);m.Provider;var n=a=>{if(a.suspense){let b=a=>"static"===a?a:Math.max(a??1e3,1e3),c=a.staleTime;a.staleTime="function"==typeof c?(...a)=>b(c(...a)):b(c),"number"==typeof a.gcTime&&(a.gcTime=Math.max(a.gcTime,1e3))}},o=(a,b)=>a?.suspense&&b.isPending,p=(a,b,c)=>b.fetchOptimistic(a).catch(()=>{c.clearReset()});a.s(["useQuery",0,function(a,b){return function(a,b,c){let q=d.useContext(m),r=d.useContext(i),s=(0,h.useQueryClient)(c),t=s.defaultQueryOptions(a);s.getDefaultOptions().queries?._experimental_beforeQuery?.(t);let u=s.getQueryCache().get(t.queryHash),v=!1!==a.subscribed;t._optimisticResults=q?"isRestoring":v?"optimistic":void 0,n(t),j(t,r,u),k(r);let w=!s.getQueryCache().get(t.queryHash),[x]=d.useState(()=>new b(s,t)),y=x.getOptimisticResult(t),z=!q&&v;if(d.useSyncExternalStore(d.useCallback(a=>{let b=z?x.subscribe(g.notifyManager.batchCalls(a)):f.noop;return x.updateResult(),b},[x,z]),()=>x.getCurrentResult(),()=>x.getCurrentResult()),d.useEffect(()=>{x.setOptions(t)},[t,x]),o(t,y))throw p(t,x,r);if(l({result:y,errorResetBoundary:r,throwOnError:t.throwOnError,query:u,suspense:t.suspense}))throw y.error;if(s.getDefaultOptions().queries?._experimental_afterQuery?.(t,y),t.experimental_prefetchInRender&&!e.environmentManager.isServer()&&y.isLoading&&y.isFetching&&!q){let a=w?p(t,x,r):u?.promise;a?.catch(f.noop).finally(()=>{x.updateResult()})}return t.notifyOnChangeProps?y:x.trackResult(y)}(a,c.QueryObserver,b)}],33217);var q=a.i(33791);function r(a,b){let c=new Set(b);return a.filter(a=>!c.has(a))}var s=class extends q.Subscribable{#l;#O;#P;#Q;#R;#S;#T;#U;#V;#W=[];constructor(a,b,c){super(),this.#l=a,this.#Q=c,this.#P=[],this.#R=[],this.#O=[],this.setQueries(b)}onSubscribe(){1===this.listeners.size&&this.#R.forEach(a=>{a.subscribe(b=>{this.#X(a,b)})})}onUnsubscribe(){this.listeners.size||this.destroy()}destroy(){this.listeners=new Set,this.#R.forEach(a=>{a.destroy()})}setQueries(a,b){this.#P=a,this.#Q=b,g.notifyManager.batch(()=>{let a=this.#R,b=this.#Y(this.#P);b.forEach(a=>a.observer.setOptions(a.defaultedQueryOptions));let c=b.map(a=>a.observer),d=c.map(a=>a.getCurrentResult()),e=a.length!==c.length,g=c.some((b,c)=>b!==a[c]),h=e||g,i=!!h||d.some((a,b)=>{let c=this.#O[b];return!c||!(0,f.shallowEqualObjects)(a,c)});(h||i)&&(h&&(this.#W=b,this.#R=c),this.#O=d,this.hasListeners()&&(h&&(r(a,c).forEach(a=>{a.destroy()}),r(c,a).forEach(a=>{a.subscribe(b=>{this.#X(a,b)})})),this.#N()))})}getCurrentResult(){return this.#O}getQueries(){return this.#R.map(a=>a.getCurrentQuery())}getObservers(){return this.#R}getOptimisticResult(a,b){let c=this.#Y(a),d=c.map(a=>a.observer.getOptimisticResult(a.defaultedQueryOptions)),e=c.map(a=>a.defaultedQueryOptions.queryHash);return[d,a=>this.#Z(a??d,b,e),()=>this.#$(d,c)]}#$(a,b){return b.map((c,d)=>{let e=a[d];return c.defaultedQueryOptions.notifyOnChangeProps?e:c.observer.trackResult(e,a=>{b.forEach(b=>{b.observer.trackProp(a)})})})}#Z(a,b,c){if(b){let d=this.#V,e=void 0!==c&&void 0!==d&&(d.length!==c.length||c.some((a,b)=>a!==d[b]));return(!this.#S||this.#O!==this.#U||e||b!==this.#T)&&(this.#T=b,this.#U=this.#O,void 0!==c&&(this.#V=c),this.#S=(0,f.replaceEqualDeep)(this.#S,b(a))),this.#S}return a}#_(){return this.#Q?.combine!==void 0&&this.#R.some((a,b)=>a.options.suspense&&this.#O[b]?.data===void 0)}#Y(a){let b=new Map;this.#R.forEach(a=>{let c=a.options.queryHash;if(!c)return;let d=b.get(c);d?d.push(a):b.set(c,[a])});let d=[];return a.forEach(a=>{let e=this.#l.defaultQueryOptions(a),f=b.get(e.queryHash)?.shift()??new c.QueryObserver(this.#l,e);d.push({defaultedQueryOptions:e,observer:f})}),d}#X(a,b){let c=this.#R.indexOf(a);if(-1!==c){var d;let a;this.#O=(d=this.#O,(a=d.slice(0))[c]=b,a),this.#N()}}#N(){if(this.hasListeners()){let a=this.#$(this.#O,this.#W),b=this.#_(),c=this.#S,d=b?c:this.#Z(a,this.#Q?.combine);(b||c!==d)&&g.notifyManager.batch(()=>{this.listeners.forEach(a=>{a(this.#O)})})}}};a.s(["useQueries",0,function({queries:a,...b},e){let q=(0,h.useQueryClient)(e),r=d.useContext(m),t=d.useContext(i),u=d.useMemo(()=>a.map(a=>{let b=q.defaultQueryOptions(a);return b._optimisticResults=r?"isRestoring":"optimistic",b}),[a,q,r]);u.forEach(a=>{n(a);let b=q.getQueryCache().get(a.queryHash);j(a,t,b)}),k(t);let[v]=d.useState(()=>new s(q,u,b)),[w,x,y]=v.getOptimisticResult(u,b.combine),z=!r&&!1!==b.subscribed;d.useSyncExternalStore(d.useCallback(a=>z?v.subscribe(g.notifyManager.batchCalls(a)):f.noop,[v,z]),()=>v.getCurrentResult(),()=>v.getCurrentResult()),d.useEffect(()=>{v.setQueries(u,b)},[u,b,v]);let A=w.some((a,b)=>o(u[b],a))?w.flatMap((a,b)=>{let d=u[b];if(d&&o(d,a)){let a=new c.QueryObserver(q,d);return p(d,a,t)}return[]}):[];if(A.length>0)throw Promise.all(A);let B=w.find((a,b)=>{let c=u[b];return c&&l({result:a,errorResetBoundary:t,throwOnError:c.throwOnError,query:q.getQueryCache().get(c.queryHash),suspense:c.suspense})});if(B?.error)throw B.error;return x(y())}],49651)},76645,a=>{"use strict";var b=a.i(72131),c=a.i(33217),d=a.i(49651),e=a.i(82717);let f={tasks:["tasks"],sessions:["sessions"],missions:["missions"],health:["health"],config:["config"],sessionSignals:["session-signals"],hermesStatus:["hermes-status"]},g=()=>{let{data:a}=(0,c.useQuery)({queryKey:f.sessionSignals,queryFn:()=>({}),staleTime:1/0,initialData:{}});return a},h=a=>(0,c.useQuery)({queryKey:null==a?f.tasks:["tasks",a],queryFn:()=>e.orcaClient.tasks(a),refetchInterval:5e3}),i=()=>(0,c.useQuery)({queryKey:["tasks","deps"],queryFn:e.orcaClient.allDeps}),j=a=>(0,c.useQuery)({queryKey:["activity",a??"all"],queryFn:()=>e.orcaClient.activity(a?{type:a}:void 0),refetchInterval:5e3});a.s(["QUERY_KEYS",0,f,"useActivity",0,j,"useAllDeps",0,i,"useCliStatus",0,()=>(0,c.useQuery)({queryKey:["cli-status"],queryFn:e.orcaClient.cliStatus,refetchInterval:3e4,retry:!1}),"useConfig",0,()=>(0,c.useQuery)({queryKey:f.config,queryFn:e.orcaClient.getConfig}),"useEscalations",0,()=>{let a=j("review"),c=h(),d=i();return(0,b.useMemo)(()=>(function(a,b,c){let d=new Map(b.map(a=>[a.id,a])),e=new Set,f=[];for(let b of a){if("review"!==b.type||!b.detail.startsWith("escalated")||e.has(b.target))continue;e.add(b.target);let a=d.get(b.target),g=c.filter(a=>a.depends_on_id===b.target).map(a=>d.get(a.task_id)).filter(a=>!!a&&"blocked"===a.status);(0!==g.length||a?.status==="blocked")&&f.push({taskId:b.target,title:a?.title||b.label||b.target,rationale:b.detail.replace(/^escalated:\s*/,""),ts:b.ts,epicId:a?.parent_id??null,blocked:g})}return f})(a.data??[],c.data??[],d.data??[]),[a.data,c.data,d.data])},"useHealth",0,()=>(0,c.useQuery)({queryKey:f.health,queryFn:e.orcaClient.health,refetchInterval:1e4}),"useHermesStatus",0,a=>(0,c.useQuery)({queryKey:a?["hermes-status",a]:f.hermesStatus,queryFn:()=>e.orcaClient.hermesStatus(a),retry:!1}),"useMe",0,()=>(0,c.useQuery)({queryKey:["me"],queryFn:e.orcaClient.me,staleTime:3e5}),"useMissions",0,()=>(0,c.useQuery)({queryKey:f.missions,queryFn:e.orcaClient.missions}),"usePlanJob",0,function(a){return(0,c.useQuery)({queryKey:["plan-job",a],queryFn:()=>e.orcaClient.getPlanJob(a),enabled:!!a,refetchInterval:a=>a.state.data?.status==="planning"&&1e3})},"useProjectChanged",0,a=>(0,c.useQuery)({queryKey:["project-changed",a],queryFn:()=>e.orcaClient.projectChanged(a),enabled:!!a}),"useProjectChanges",0,(a,b)=>(0,c.useQuery)({queryKey:["project-changes",a],queryFn:()=>e.orcaClient.projectChanges(a),enabled:!!a&&b}),"useProjectCommit",0,(a,b)=>(0,c.useQuery)({queryKey:["project-commit",a,b],queryFn:()=>e.orcaClient.projectCommit(a,b),enabled:!!a&&!!b}),"useProjectCommitFileDiff",0,(a,b,d)=>(0,c.useQuery)({queryKey:["project-commit-file",a,b,d],queryFn:()=>e.orcaClient.projectCommitFileDiff(a,b,d),enabled:!!a&&!!b&&!!d}),"useProjectFile",0,(a,b)=>(0,c.useQuery)({queryKey:["project-file",a,b],queryFn:()=>e.orcaClient.projectFile(a,b),enabled:!!a&&!!b}),"useProjectFileAtHead",0,(a,b,d)=>(0,c.useQuery)({queryKey:["project-head",a,b],queryFn:()=>e.orcaClient.projectFileAtHead(a,b),enabled:!!a&&!!b&&d}),"useProjectFiles",0,a=>(0,c.useQuery)({queryKey:["project-files",a],queryFn:()=>e.orcaClient.projectFiles(a),enabled:!!a}),"useProjectGit",0,a=>(0,c.useQuery)({queryKey:["project-git",a],queryFn:()=>e.orcaClient.projectGit(a),enabled:!!a}),"useProjects",0,()=>(0,c.useQuery)({queryKey:["projects"],queryFn:e.orcaClient.projects}),"useProjectsCommits",0,(a,b)=>(0,d.useQueries)({queries:a.map(a=>({queryKey:["project-commits",a],queryFn:()=>e.orcaClient.projectCommits(a,40),refetchInterval:15e3})),combine:c=>{let d=Date.now()-36e5*b;return{commits:c.flatMap((b,c)=>(b.data?.commits??[]).map(b=>({...b,projectId:a[c]}))).filter(a=>a.timestamp>=d).sort((a,b)=>b.timestamp-a.timestamp),isLoading:c.some(a=>a.isLoading)}}}),"useSessionInfos",0,()=>(0,c.useQuery)({queryKey:f.sessions,queryFn:e.orcaClient.sessions,refetchInterval:5e3}),"useSessionSignal",0,a=>g()[a],"useSessionSignals",0,g,"useSessions",0,()=>(0,c.useQuery)({queryKey:f.sessions,queryFn:e.orcaClient.sessions,refetchInterval:5e3,select:a=>a.map(a=>a.name)}),"useTaskUsage",0,(a,b=!1)=>(0,c.useQuery)({queryKey:["task-usage",a],queryFn:()=>e.orcaClient.taskUsage(a),enabled:!!a,refetchInterval:!!b&&5e3,staleTime:3e5*!b}),"useTasks",0,h,"useUserProjects",0,(a,b=!0)=>(0,c.useQuery)({queryKey:["user-projects",a],queryFn:()=>e.orcaClient.userProjects(a),enabled:!!a&&b}),"useUsers",0,()=>(0,c.useQuery)({queryKey:["users"],queryFn:e.orcaClient.listUsers})],76645)},28130,29457,a=>{"use strict";var b=a.i(87924),c=a.i(72131);let d={en:{nav:{operate:"Operate",config:"Administration",dash:"Dash",tasks:"Tasks",kanban:"Kanban",timeline:"Timeline",escalations:"Escalations",sessions:"Sessions",missions:"Missions",settings:"Settings",projects:"Projects",users:"Users"},page:{dashboard:"Dashboard",tasks:"Tasks",kanban:"Kanban",timeline:"Timeline",sessions:"Sessions",missions:"Missions",settings:"Settings",projects:"Projects",users:"Users"},common:{daemon:"daemon",daemonUp:"daemon up",daemonDown:"daemon down",daemonReady:"Ready",daemonBusy:"Busy",daemonOffline:"Offline",nextReady:"Next ready",escalationsWaiting:"Escalations waiting: {count}",daemonUnreachable:"orca daemon unreachable",toggleSidebar:"Toggle sidebar",cancel:"Cancel",save:"Save",delete:"Delete",retry:"Retry",edit:"Edit",close:"Close",live:"Live",goTo:"Go to",searchCommands:"Search commands…",noCommands:"No commands",dismiss:"Dismiss",loading:"Loading",help:"Help",actions:"Actions",success:"Success",error:"Error",send:"Send",command:"command…",kill:"Kill",sendKeys:"send keys…",appName:"Orca",primaryNav:"Primary",switchLang:"Switch language"},providers:{claudeCode:"Claude Code",opencode:"OpenCode",codex:"Codex"},auth:{signIn:"Sign in",usernamePlaceholder:"Username",passwordPlaceholder:"Password"},tasks:{newTask:"New task",searchPlaceholder:"Search tasks…",filterAll:"All",filterAllProjects:"All projects",filterProjectsAria:"Project filter",filterOpen:"Open",filterActive:"Active",filterBlocked:"Blocked",filterClosed:"Closed",filterAutopilot:"Autopilot",empty:"No tasks",emptyDescription:"Create one to get started.",noMatches:"No matches",noMatchesDescription:"Try a different search or filter.",nSelected:"{count} selected",clearSelection:"Clear selection",confirmBulkDeleteTitle:"Delete {count} tasks?",confirmBulkDeleteDescription:"This permanently removes the selected tasks.",noDetails:"No details yet — click to add context for the agent.",launch:"Launch",start:"Start",stop:"Stop",pause:"Pause",approveContinue:"Approve & continue",approved:"Approved — phase {id} continues",rerun:"Re-run",rerunning:"Re-running phase {id}",stopped:"Stopped {id}",deleteOrClose:"Delete or close",closeArchive:"Close (archive)",deletePermanently:"Delete permanently",confirmDeleteTitle:"Delete {id}?",confirmDeleteDescription:"This permanently removes the task and its dependency links.",deleteMission:"Delete mission",epicActions:"Mission actions",confirmDeleteMissionTitle:"Delete mission {id}?",confirmDeleteMissionDescription:"This permanently removes the whole mission — the epic and all of its phase tasks — and cannot be undone. It does not touch any files on disk.",missionDeleted:"Mission {id} deleted",defaultExecutor:"Default (fallback)",newTitle:"New task",editTitle:"Edit {id}",singleTask:"Single task",autopilotPlanning:"Autopilot · Planning",singleTaskDesc:"Create one task and optionally launch a single agent on it.",autopilotPlanningDesc:"The Pilot breaks your goal into ordered phases, names an agent for each, and can run them autonomously.",fieldTitle:"Title",titlePlaceholder:"What needs doing?",fieldDetails:"Details",detailsHint:"Context handed to the agent — what to build, constraints, acceptance.",detailsPlaceholder:"Describe the task so the agent knows exactly what to do…",fieldType:"Type",fieldPriority:"Priority",fieldExecutor:"Executor",fieldProject:"Project",fieldProjectHint:"Which project the agent runs in.",fieldSchedule:"Schedule",scheduleHint:"Optional — set a date and time for this task.",autostart:"Run automatically at the scheduled time",autostartHint:"When off, the schedule is just a due date — you launch it yourself.",scheduleConflict:"Close to {title} — both scheduled within ~10 min, expect heavier load.",fieldDependsOn:"Depends on",dependsOnHint:"This task waits until the selected tasks are closed.",launchImmediately:"Launch a session immediately",createAndLaunch:"Create & launch",create:"Create",fieldGoal:"Goal",goalHint:"The model breaks this into ordered phases.",goalPlaceholder:"Describe the goal to plan…",fieldAutonomy:"Autonomy",fieldMaxSessions:"Max sessions",autoModelLabel:"Autopilot picks the model",autoModelHint:"Autopilot chooses the best model per phase from the model descriptions in Settings.",startAutopilot:"Start autopilot now (engage mission)",manualPhases:"Phases (manual)",removePhase:"Remove phase",addPhase:"Add phase",createPlan:"Create plan",planning:"Planning…",plannerPreview:"Planner at work",generatePlan:"Generate plan",createdEpic:"Created epic {id} with {count} phases{m}",done:"Done",updated:"Updated {id}",createdAndLaunched:"Created & launched {title}",created:"Created {title}",statusOpen:"Open",statusInProgress:"In progress",statusBlocked:"Blocked",statusClosed:"Closed",statusCancelled:"Cancelled",planCreated:"Plan created — {count} phases{m}",planFailed:"Planning failed",autopilotKeyMissing:"Autopilot key not set — add phases manually",autopilotStarted:" · autopilot started",autopilotEngaged:" — autopilot engaged.",addAtLeastOnePhase:"Add at least one phase",phasePlaceholder:"Phase {n}",launched:"Launched {session}",closed:"Closed {id}",deleted:"Deleted {id}",nClosed:"{count} closed",nDeleted:"{count} deleted",typeTask:"Task",typeBug:"Bug",typeFeature:"Feature",typeEpic:"Epic",typeChore:"Chore",resultTitle:"Result",missionSummaryTitle:"Mission summary",liveOutput:"Live output",recentActivity:"Recent activity",dependencies:"Dependencies",selectHint:"Select a task to see its details.",backToFlow:"Back to mission graph",openTerminal:"Open terminal",expandPhases:"Expand phases",collapsePhases:"Collapse phases",phasesLabel:"phases",outcomeOk:"Success",outcomeFail:"Failed",noSummary:"Closed without a summary.",scheduledBadge:"Auto",dayToday:"Today",dayYesterday:"Yesterday",pageRange:"{from}–{to} of {total}",prevPage:"Previous",nextPage:"Next",copyId:"Copy ID",idCopied:"Copied {id}",idCopyFailed:"Copy failed",resultsTitle:"Task result",resultExecutor:"Executor",resultAgent:"Agent",resultFinished:"Finished",resultDuration:"Duration"},usage:{input:"input",output:"output",cache:"cache",cost:"cost",inputTokens:"Input tokens",outputTokens:"Output tokens"},missions:{newMission:"New mission",paused:"paused",capacityUsed:"{running}/{max} sessions",resume:"Resume",pause:"Pause",disengage:"Disengage mission",empty:"No active missions",engage:"Engage",noTasks:"No tasks in this mission",statePaused:"Paused",resumed:"Resumed mission",pausedMsg:"Paused mission",disengaged:"Disengaged mission",engaged:"Engaged mission on {epicId}",stateActive:"Active",stateStalled:"Needs attention",stateDisengaged:"Disengaged",autonomyL0:"L0 · Recommend",autonomyL0Desc:"The Pilot only plans and proposes. Nothing runs until you approve it.",autonomyL1:"L1 · Assist",autonomyL1Desc:"The Pilot runs only clear, safe steps on its own. Anything uncertain or sensitive waits for your approval.",autonomyL2:"L2 · Pilot",autonomyL2Desc:"The Pilot runs work and clears agent permission prompts itself. Ambiguous or risky situations are escalated to you.",autonomyL3:"L3 · Auto",autonomyL3Desc:"Full autonomy. The Pilot runs and clears everything itself, reaching out only when it genuinely cannot decide.",addPhase:"Add phase",addPhaseModalTitle:"Add phase — {epic}",addPhaseModalDesc:"Insert new phases after the current chain. An active mission picks up the next ready phase on the next tick.",addPhaseModeManual:"Manual",addPhaseModeReplan:"Replan",addPhaseManualDesc:"Write each phase and its type. No key required.",addPhaseReplanDesc:"Describe the residual goal — the planner decomposes it into phases.",addPhaseFieldExecutor:"Executor",addPhaseFieldGoal:"Residual goal",addPhaseGoalHint:"What remains to be done; the planner splits it into phases.",addPhaseGoalPlaceholder:"Describe what is left to do…",addPhaseInsert:"Insert phases",addPhaseInserted:"Inserted {count} phase{s} into {epicId}",addPhaseAtLeastOne:"Add at least one phase",addPhaseGoalRequired:"Enter a goal to replan"},sidebar:{liveAgents:"{count} live agents",lastOutcome:"Last: {title}",stuckAgents:"{count} stuck agents",notifications:"Notifications",noNotifications:"No agents waiting for approval.",escalations:"Escalations ({count})"},escalations:{title:"Escalations",empty:"No escalations",emptyDesc:"The overseer has not sent back any phase yet. When it rejects one, it shows up here to resolve.",rationale:"Overseer’s reason",noReason:"No reason given.",blockedBy:"Waiting on this",approve:"Approve & continue",rerun:"Re-run phase",approved:"Approved — mission continues",rerunning:"Re-running the phase",actionError:"Action failed"},agent:{working:"Working",needsInput:"Needs input",idle:"Idle",complete:"Complete",ready:"Ready",waitingFor:"Waiting for {deps}",stalled:"Silent {min}m",stuck:"Stuck {min}m"},sessions:{needsInput:"needs input",loading:"loading…",noOutput:"— no output —",allow:"Allow ⏎",reject:"Reject ⎋",terminal:"Terminal",interrupt:"Interrupt",kill:"Kill session",empty:"No live sessions",emptyDescription:"Launch a task to spawn one.",emptyAction:"Go to Tasks",terminalTitle:"Terminal — {name}",online:"online",roleOverseer:"Autopilot",rolePilot:"Planner",filterAll:"All",filterNeedsInput:"Needs input",noNeedsInput:"No agent is waiting for input.",comfortable:"Comfortable",compact:"Compact",approved:"Approved {name}",rejected:"Rejected on {name}",answered:"Answered {name}: {option}",sentTo:"Sent to {name}",interrupted:"Interrupted {name}",killed:"Killed {name}",selectLabel:"Select {id}"},kanban:{board:"Board",calendar:"Calendar",columnOpen:"Open",columnInProgress:"In progress",columnBlocked:"Blocked",columnClosed:"Closed",columnCancelled:"Cancelled",blockedDeps:"Blocked by unfinished dependencies",trueStatusTooltip:"True status: {status}"},calendar:{day:"Day",week:"Week",month:"Month",today:"Today",previous:"Previous",next:"Next",noTasks:"No scheduled tasks this day.",nMore:"+{count} more",unscheduled:"{count} unscheduled task{s} — set a schedule to place them here.",shortMon:"Mon",shortTue:"Tue",shortWed:"Wed",shortThu:"Thu",shortFri:"Fri",shortSat:"Sat",shortSun:"Sun"},timeline:{activityWeek:"Activity / last week",activityDays:"Activity / last {n} days",activityHours:"Activity / last {n}h",loadError:"Failed to load activity",empty:"No activity yet",emptyDescription:"Events from the last 12 hours appear here.",filterAll:"All",filterTasks:"Tasks",filterMissions:"Missions",filterSignals:"Signals",filterReviews:"Reviews",axis:"Axis",lanes:"Lanes",approved:"Approved",escalated:"Escalated",changedFiles:"Changed files",workingDiff:"Working changes",noChanges:"No working-tree changes",openTask:"Open task",markerHint:"Click an event for details and repo changes",changesOverTime:"Changes over time",mostActiveFiles:"Most active files",noChangesInWindow:"No commits in this window"},review:{escalated:"Overseer rejected a phase: {reason}",noReason:"no reason given"},dashboard:{viewAll:"View all",needsAttentionTitle:"Needs attention",recentOutcomes:"Recent outcomes",now:"Now",nothingRunning:"Nothing running — start a task or engage a mission.",open:"Open",inProgress:"In progress",blocked:"Blocked",liveSessions:"Live sessions",activeMissions:"Active missions",autopilotSpotlight:"Autopilot spotlight",autopilotSpotlightDesc:"Every active mission in one row: current phase, progress, and capacity.",noActiveMissions:"No active missions.",ofTotal:"of {count} total",titleCol:"Title",statusCol:"Status",epicCol:"Epic",progressCol:"Progress",stateCol:"State"},settings:{models:"Models",autopilot:"Autopilot",providers:"Providers",defaults:"Defaults",hermes:"Hermes",data:"Data",dangerZone:"Danger zone",cleanupDesc:"Delete all tasks, missions and the timeline (activity), and stop every running agent session. Projects, users and settings are kept. This cannot be undone.",cleanupButton:"Delete all data",cleanupConfirmTitle:"Delete all data?",cleanupConfirmDesc:"All tasks, missions and activity will be permanently removed and running sessions stopped. Projects, users and settings are kept.",cleanupDone:"Cleaned up — removed {tasks} tasks and {missions} missions.",sectionsNav:"Settings sections",adminOnly:"Administrators only",adminOnlyDesc:"This section is reserved for admins. Edit your own profile in My account.",saveAutopilot:"Save autopilot",saveProviders:"Save providers",saveDefaults:"Save defaults",addModel:"Add model",add:"Add",save:"Save",cancel:"Cancel",testPlan:"Test plan",planning:"Planning…",planFailed:"Planning failed",deleteModel:"Delete model",deleteModelDesc:"Remove {label} ({exec}) from your models? Save models to persist this change.",providersDesc:"Where each agent CLI lives and any extra flags passed when orca spawns it. Leave the binary as-is to use it from $PATH.",plannerModel:"Planner model",plannerModelDesc:"LLM that decomposes a goal into phases",overseerModel:"Overseer model",overseerModelDesc:"LLM that judges agent prompts (blank = same as planner)",backendMode:"How autopilot reasons",backendModeHelp:"Pick one mode — either via an API key, or via local CLI tools.",modeRelay:"API Key",modeRelayDesc:"The planner and overseer run as models via an API key — fast and cheap, but repo-blind.",modeAgents:"CLI Tools",modeAgentsDesc:"The planner and overseer run as CLI tools inside the repository — they read the code, but must be installed.",reviewOnDone:"Review on phase completion",reviewOnDoneHint:"After a phase closes, the overseer judges the result; if it rejects, the next phase is blocked.",relayOption:"Relay (model via API)",apiUrl:"OpenAI API URL",apiUrlDesc:"OpenAI-compatible endpoint",apiKey:"API key",apiKeyDesc:"A key is set — leave blank to keep",notes:"Notes",notesDesc:"Guidance the autopilot follows",plannerPrompt:"Planner prompt",binary:"Binary",extraArgs:"Extra args",executor:"Executor",executorDesc:"Default agent for new launches",autonomy:"Autonomy",autonomyDesc:"Default mission autonomy level",maxSessions:"Max sessions",maxSessionsDesc:"Concurrent agents per mission",tokenTtl:"Login token validity",tokenTtlDesc:"How many days a login token stays valid before it expires (forces re-login)",editLabel:"Edit {exec}",deleteLabel:"Delete {exec}",labelLabel:"Label",execLabel:"Exec",addModelTitle:"Add model",editModelTitle:"Edit model",fieldProvider:"Runs via",providerHint:"Which agent runner executes this model.",providerOther:"Other",fieldModelId:"Model ID",modelIdHint:"The model name as the runner expects it.",modelIdPlaceholder:"e.g. sonnet, gpt-5.4, deepseek-v4-flash",execResolvesTo:"Resolves to",execDuplicate:"A model with this exec already exists.",presetTag:"preset",setApiKeyFirst:"Set the autopilot API key first",modelsSaved:"Models saved",modelNoteLabel:"Model description",modelNoteHint:"What the model is best at — coding, planning, fast and cheap… Autopilot uses these descriptions to pick a model per task.",modelNotePlaceholder:"e.g. Strong at refactoring and hard tasks; slower and pricier.",modelNoteEdit:"Edit description",modelNoteAdd:"Add description",autopilotSaved:"Autopilot saved",providersSaved:"Providers saved",defaultsSaved:"Defaults saved",modelPlaceholder:"My Model",execPlaceholder:"provider/model-name",plannerPlaceholder:"claude-opus-4-8",overseerPlaceholder:"gpt-4o-mini (cheaper)",apiKeyNotSetDesc:"Stored server-side, never returned",apiKeySetPlaceholder:"•••• set",apiKeyPlaceholder:"paste key",sampleGoalPlaceholder:"A sample goal to test this prompt…",plannerPromptHelp:"Template the Pilot uses to decompose a goal into phases. Use the {{goal}} placeholder — it is replaced with the goal you enter. The model must return a JSON array of {title, type, agent} objects.",hermesDesc:"Install the bundled orca plugin into a same-host Hermes instance. It gives the Hermes agent tools to fully manage orca — spawn tasks, launch sessions, close work, and read state.",hermesHome:"Hermes home",hermesUrl:"orca URL",hermesToken:"orca token",hermesInstall:"Install plugin",hermesInstalling:"Installing…",hermesStatusInstalled:"installed",hermesStatusNotInstalled:"not installed",hermesStatusEnabled:"enabled",hermesStatusDisabled:"disabled",hermesStatusLine:"Plugin status",hermesRestartNote:"Restart the Hermes gateway after installing for the plugin to load.",hermesInstalled:"Hermes plugin installed",hermesStatusError:"Hermes status unavailable"},projects:{newProject:"New project",loadError:"Failed to load projects",empty:"No projects",fieldSlug:"Slug",slugHint:"Short identifier, e.g. orca.",fieldPath:"Path",pathHint:"Absolute path to the project on disk.",fieldNotes:"Pilot info",notesHint:"Context the Pilot uses when planning for this project.",create:"Create",editProject:"Edit project",updated:"Project updated",removeProject:"Remove project",removeConfirmTitle:"Remove project",removeConfirmBody:'Project "{slug}" will be removed from orca — its tasks, missions and access grants. Files on disk are left untouched. This cannot be undone.',removeConfirmBtn:"Remove",removed:"Project removed",iconLabel:"Icon",iconHint:"An image from the project repo (e.g. a logo). Shown everywhere the project appears.",chooseIcon:"Choose icon",iconSearch:"Search image…",noImages:"No images in this project",iconSelect:"Select",iconRemove:"Remove icon",iconSet:"Icon set",iconRemoved:"Icon removed",iconMore:"Showing the first 300 images — narrow it with search.",slugImmutable:"The slug is fixed and cannot be changed.",git:"Git",gitError:"Failed to load git info",notGit:"Not a git repository",clean:"Clean",dirty:"{count} dirty",branches:"Branches",commits:"Commits",created:"Project created",slugPlaceholder:"my-project",pathPlaceholder:"~/projects/my-app",openEditor:"Open editor",editorTitle:"Code editor",tabEdit:"Edit",tabDiff:"Diff",noFiles:"No files",selectFile:"Select a file to edit",fileTooBig:"File is too large or binary to edit here.",noChanges:"No uncommitted changes in this file.",fileSaved:"Saved {path}",commitLabel:"Commit",viewCommit:"View this commit's changes",workingChanges:"Uncommitted changes",viewChanges:"View the uncommitted changes",tabPreview:"Preview",wordWrap:"Word wrap",fullscreen:"Fullscreen",exitFullscreen:"Exit fullscreen",toggleTree:"Files",ctxOpen:"Open",ctxNewFile:"New file",ctxNewFolder:"New folder",ctxRename:"Rename",ctxDuplicate:"Duplicate",ctxDelete:"Delete",ctxCopyPath:"Copy path",dlgNewFile:"New file",dlgNewFolder:"New folder",dlgRename:"Rename",dlgDuplicate:"Duplicate",dlgName:"Name",dlgDelete:"Delete item?",dlgDeleteMsg:"Really delete “{name}”? This cannot be undone.",fileCreated:"Created {path}",folderCreated:"Folder created {path}",renamed:"Renamed to {path}",duplicated:"Copied to {path}",deleted:"Deleted {path}",pathCopied:"Path copied"},users:{loadError:"Failed to load users",empty:"No users",emptyDescription:"Create the first account to get started.",fieldUsername:"Username",fieldCreated:"Created",fieldActions:"Actions",addUser:"Add user",newUser:"New user",create:"Create",add:"Add",delete:"Delete",lastUserHint:"The last user cannot be deleted.",session:"Session",logout:"Logout",userDeleted:"User deleted",userCreated:"User created",deleteLabel:"Delete {username}",projects:"Projects",admin:"Admin",member:"Member",makeAdmin:"Make admin",removeAdmin:"Remove admin",lastAdminHint:"The last admin cannot be demoted.",roleUpdated:"Role updated",models:"Models",allowedModels:"Allowed models",allModelsHint:"With none selected, the user may run any globally-allowed model.",modelsUpdated:"Allowed models saved",updateError:"Failed to save the change"},account:{title:"My account",name:"Name",email:"Email",uploadAvatar:"Upload avatar",defaultModel:"Default model",defaultModelHint:"Pre-filled for new tasks. Pick from the models you may run.",restrictedHint:"These models were allowed by your admin.",noModelLimit:"No limit — you can run any globally-allowed model.",save:"Save",saved:"Account saved",avatarSaved:"Avatar uploaded",saveError:"Save failed",password:"Password",passwordHint:"Change your sign-in password. The new password must be at least 8 characters.",currentPassword:"Current password",newPassword:"New password",confirmPassword:"Confirm new password",changePassword:"Change password",passwordChanged:"Password changed",passwordMismatch:"New passwords do not match",passwordTooShort:"New password must be at least 8 characters",passwordError:"Password change failed"},changes:{dirtyOne:"1 dirty",dirtyN:"{count} dirty",lastCommit:"last commit {relative} “{subject}”",none:"no recent changes"},onboarding:{title:"Welcome to Orca",subtitle:"Set up your environment to start orchestrating coding agents.",systemDeps:"System Dependencies",systemDepsDesc:"Required tools for running coding agents. Install missing ones before proceeding.",providers:"Provider Binaries",providersDesc:"Where each agent CLI lives. Leave as-is to use from $PATH.",autopilotKey:"Autopilot API Key",autopilotBackend:"Autopilot backend",autopilotBackendDesc:"How the planner and overseer reason — pick one mode.",agentsSet:"CLI agents configured",agentsNotSet:"Pick CLI agents",saveBackend:"Save backend",autopilotKeyDesc:"Required for the Planner to decompose goals into phases.",hermes:"Hermes Integration",hermesDesc:"Optionally install the orca plugin into a same-host Hermes instance.",users:"Users",usersDesc:"Manage who can access the orca dashboard.",addUser:"Add user",createUser:"Create user",installPlugin:"Install plugin",installing:"Installing…",saveProviders:"Save providers",saveKey:"Save key",keySet:"Key is set",keyNotSet:"Not set",statusInstalled:"installed",statusNotInstalled:"not installed",statusEnabled:"enabled",statusDisabled:"disabled",statusUnknown:"unknown",noUsers:"No users yet. Create the first one.",goToDashboard:"Go to Dashboard",setupComplete:"Setup Complete!",setupIncomplete:"Complete the steps above to finish setup.",providerSaved:"Providers saved",keySaved:"API key saved",userCreated:"User created",userCreateError:"Failed to create user",pluginInstalled:"Hermes plugin installed",fieldHome:"Hermes home",fieldUrl:"orca URL",fieldToken:"orca token",pluginStatus:"Plugin status",restartNote:"Restart Hermes gateway after installing for the plugin to load.",fieldUsername:"Username",fieldPassword:"Password",fieldApiUrl:"API URL",fieldApiKey:"API Key",fieldBin:"Binary",fieldArgs:"Extra args",installed:"installed",notFound:"not found",functional:"functional",error:"error",allGood:"All required tools are installed and functional.",missingTools:"Some tools are missing — install them to enable all features.",sectionAgentCLIs:"Agent CLIs",sectionSystem:"System",statusOk:"OK",statusFail:"FAIL",statusNotFound:"not found",userId:"ID"},activity:{editing:"editing",testing:"testing",building:"building",installing:"installing",thinking:"thinking",prompted:"prompted",error:"error",unknown:"working"}},cs:{nav:{operate:"Provoz",config:"Administrace",dash:"Přehled",tasks:"Úkoly",kanban:"Kanban",timeline:"Časová osa",escalations:"Eskalace",sessions:"Relace",missions:"Mise",settings:"Nastavení",projects:"Projekty",users:"Uživatelé"},page:{dashboard:"Přehled",tasks:"Úkoly",kanban:"Kanban",timeline:"Časová osa",sessions:"Relace",missions:"Mise",settings:"Nastavení",projects:"Projekty",users:"Uživatelé"},common:{daemon:"daemon",daemonUp:"daemon běží",daemonDown:"daemon offline",daemonReady:"Připraven",daemonBusy:"Pracuje",daemonOffline:"Offline",nextReady:"Další na řadě",escalationsWaiting:"Eskalace čeká: {count}",daemonUnreachable:"daemon orca není dostupný",toggleSidebar:"Přepnout sidebar",cancel:"Zrušit",save:"Uložit",delete:"Smazat",retry:"Znovu",edit:"Upravit",close:"Zavřít",live:"Živě",goTo:"Přejít na",searchCommands:"Hledat příkazy…",noCommands:"Žádné příkazy",dismiss:"Zavřít",loading:"Načítání",help:"Nápověda",actions:"Akce",success:"Úspěch",error:"Chyba",send:"Odeslat",command:"příkaz…",kill:"Ukončit",sendKeys:"odeslat klávesy…",appName:"Orca",primaryNav:"Hlavní",switchLang:"Přepnout jazyk"},providers:{claudeCode:"Claude Code",opencode:"OpenCode",codex:"Codex"},auth:{signIn:"Přihlásit se",usernamePlaceholder:"Uživatelské jméno",passwordPlaceholder:"Heslo"},tasks:{newTask:"Nový úkol",searchPlaceholder:"Hledat úkoly…",filterAll:"Vše",filterAllProjects:"Všechny projekty",filterProjectsAria:"Filtr projektů",filterOpen:"Otevřené",filterActive:"Aktivní",filterBlocked:"Blokované",filterClosed:"Uzavřené",filterAutopilot:"Autopilot",empty:"Žádné úkoly",emptyDescription:"Vytvořte první úkol.",noMatches:"Žádné výsledky",noMatchesDescription:"Zkuste jiné hledání nebo filtr.",nSelected:"{count} vybráno",clearSelection:"Zrušit výběr",confirmBulkDeleteTitle:"Smazat {count} úkolů?",confirmBulkDeleteDescription:"Vybrané úkoly budou trvale odstraněny.",noDetails:"Zatím bez popisu — kliknutím přidáte kontext pro agenta.",launch:"Spustit",start:"Spustit",stop:"Zastavit",pause:"Pozastavit",approveContinue:"Schválit a pokračovat",approved:"Schváleno — fáze {id} pokračuje",rerun:"Spustit znovu",rerunning:"Fáze {id} se spouští znovu",stopped:"Zastaveno {id}",deleteOrClose:"Smazat nebo uzavřít",closeArchive:"Uzavřít (archivovat)",deletePermanently:"Trvale smazat",confirmDeleteTitle:"Smazat {id}?",confirmDeleteDescription:"Úkol a jeho závislosti budou trvale odstraněny.",deleteMission:"Smazat misi",epicActions:"Akce mise",confirmDeleteMissionTitle:"Smazat misi {id}?",confirmDeleteMissionDescription:"Trvale odstraní celou misi — epic i všechny její fázové úkoly — a nelze ji vrátit zpět. Soubory na disku zůstanou nedotčené.",missionDeleted:"Mise {id} smazána",defaultExecutor:"Výchozí (fallback)",newTitle:"Nový úkol",editTitle:"Upravit {id}",singleTask:"Jeden úkol",autopilotPlanning:"Autopilot · Plánování",singleTaskDesc:"Vytvoří jeden úkol a volitelně na něm spustí agenta.",autopilotPlanningDesc:"Pilot rozdělí cíl do fází, přiradí agenta ke každé a může je spouštět autonomně.",fieldTitle:"Název",titlePlaceholder:"Co je potřeba udělat?",fieldDetails:"Detaily",detailsHint:"Kontext pro agenta — co postavit, omezení, akceptační kritéria.",detailsPlaceholder:"Popište úkol tak, aby agent přesně věděl, co má dělat…",fieldType:"Typ",fieldPriority:"Priorita",fieldExecutor:"Vykonavatel",fieldProject:"Projekt",fieldProjectHint:"Ve kterém projektu agent poběží.",fieldSchedule:"Plán",scheduleHint:"Volitelné — nastavte datum a čas úkolu.",autostart:"Spustit automaticky v naplánovaný čas",autostartHint:"Když je vypnuto, plán je jen termín — spustíte ho ručně.",scheduleConflict:"Blízko k {title} — oba naplánované do ~10 min, očekávejte vyšší zátěž.",fieldDependsOn:"Závisí na",dependsOnHint:"Tento úkol počká, dokud nejsou vybrané úkoly uzavřeny.",launchImmediately:"Spustit relaci ihned",createAndLaunch:"Vytvořit a spustit",create:"Vytvořit",fieldGoal:"Cíl",goalHint:"Model rozdělí cíl do fází.",goalPlaceholder:"Popište cíl k naplánování…",fieldAutonomy:"Autonomie",fieldMaxSessions:"Max relací",autoModelLabel:"Autopilot vybere model",autoModelHint:"Autopilot zvolí nejvhodnější model ke každé fázi podle popisů modelů v Nastavení.",startAutopilot:"Spustit autopilota (zahájit misi)",manualPhases:"Fáze (ručně)",removePhase:"Odebrat fázi",addPhase:"Přidat fázi",createPlan:"Vytvořit plán",planning:"Plánování…",plannerPreview:"Plánovač pracuje",generatePlan:"Generovat plán",createdEpic:"Vytvořeno epic {id} s {count} fázemi{m}",done:"Hotovo",updated:"Aktualizováno {id}",createdAndLaunched:"Vytvořeno a spuštěno {title}",created:"Vytvořeno {title}",statusOpen:"Otevřeno",statusInProgress:"Probíhá",statusBlocked:"Blokováno",statusClosed:"Uzavřeno",statusCancelled:"Zrušeno",planCreated:"Plán vytvořen — {count} fází{m}",planFailed:"Plánování selhalo",autopilotKeyMissing:"Klíč autopilota není nastaven — přidejte fáze ručně",autopilotStarted:" · autopilot spuštěn",autopilotEngaged:" — autopilot spuštěn.",addAtLeastOnePhase:"Přidejte alespoň jednu fázi",phasePlaceholder:"Fáze {n}",launched:"Spuštěno {session}",closed:"Uzavřeno {id}",deleted:"Smazáno {id}",nClosed:"{count} uzavřeno",nDeleted:"{count} smazáno",typeTask:"Úkol",typeBug:"Bug",typeFeature:"Funkce",typeEpic:"Epic",typeChore:"Údržba",resultTitle:"Výsledek",missionSummaryTitle:"Shrnutí mise",liveOutput:"Živý výstup",recentActivity:"Poslední aktivita",dependencies:"Závislosti",selectHint:"Vyberte úkol pro zobrazení detailů.",backToFlow:"Zpět na graf mise",openTerminal:"Otevřít terminál",expandPhases:"Rozbalit fáze",collapsePhases:"Sbalit fáze",phasesLabel:"fází",outcomeOk:"Úspěch",outcomeFail:"Selhalo",noSummary:"Uzavřeno bez shrnutí.",scheduledBadge:"Auto",dayToday:"Dnes",dayYesterday:"Včera",pageRange:"{from}–{to} z {total}",prevPage:"Předchozí",nextPage:"Další",copyId:"Kopírovat ID",idCopied:"ID {id} zkopírováno",idCopyFailed:"Kopírování selhalo",resultsTitle:"Výsledek úlohy",resultExecutor:"Vykonavatel",resultAgent:"Agent",resultFinished:"Dokončeno",resultDuration:"Doba běhu"},usage:{input:"vstup",output:"výstup",cache:"cache",cost:"cena",inputTokens:"Vstupní tokeny",outputTokens:"Výstupní tokeny"},missions:{newMission:"Nová mise",paused:"pozastaveno",capacityUsed:"{running}/{max} relací",resume:"Pokračovat",pause:"Pozastavit",disengage:"Odpojit misi",empty:"Žádné aktivní mise",engage:"Zahájit",noTasks:"Žádné úkoly v této misi",statePaused:"Pozastaveno",resumed:"Mise obnovena",pausedMsg:"Mise pozastavena",disengaged:"Mise odpojena",engaged:"Mise zahájena na {epicId}",stateActive:"Aktivní",stateStalled:"Čeká na zásah",stateDisengaged:"Odpojeno",autonomyL0:"L0 · Doporučovat",autonomyL0Desc:"Pilot práci pouze rozplánuje a navrhne. Nic se nespustí, dokud sami nepotvrdíte.",autonomyL1:"L1 · Asistovat",autonomyL1Desc:"Pilot sám spustí jen jednoznačné, bezpečné kroky. Cokoliv nejistého nebo citlivého počká na vaše schválení.",autonomyL2:"L2 · Pilotovat",autonomyL2Desc:"Pilot spouští práci a sám odbavuje povolovací dotazy agentů. Nejednoznačné nebo rizikové situace předává vám.",autonomyL3:"L3 · Automaticky",autonomyL3Desc:"Plná autonomie. Pilot spouští i odbavuje vše sám a zasáhne za vámi jen tehdy, když si opravdu neví rady.",addPhase:"Přidat fázi",addPhaseModalTitle:"Přidat fázi — {epic}",addPhaseModalDesc:"Vloží nové fáze za současný řetězec. Aktivní mise na další připravenou fázi naváže v dalším tiku.",addPhaseModeManual:"Ručně",addPhaseModeReplan:"Replánovat",addPhaseManualDesc:"Zapište každou fázi a její typ. Není potřeba klíč.",addPhaseReplanDesc:"Popiš zbylý cíl — planner ho rozloží na fáze.",addPhaseFieldExecutor:"Executor",addPhaseFieldGoal:"Zbylý cíl",addPhaseGoalHint:"Co zbývá dodělat; planner to rozloží na fáze.",addPhaseGoalPlaceholder:"Popiš, co ještě zbývá udělat…",addPhaseInsert:"Vložit fáze",addPhaseInserted:"Vloženo {count} fází do {epicId}",addPhaseAtLeastOne:"Přidej aspoň jednu fázi",addPhaseGoalRequired:"Zadej cíl pro replánování"},sidebar:{liveAgents:"{count} živých agentů",lastOutcome:"Poslední: {title}",stuckAgents:"{count} zaseknutých agentů",notifications:"Upozornění",noNotifications:"Žádný agent nečeká na schválení.",escalations:"Eskalace ({count})"},escalations:{title:"Eskalace",empty:"Žádné eskalace",emptyDesc:"Dozorčí zatím žádnou fázi nevrátil. Až nějakou zamítne, objeví se tady k vyřešení.",rationale:"Důvod dozorčího",noReason:"Bez uvedeného důvodu.",blockedBy:"Kvůli tomu čeká",approve:"Schválit a pokračovat",rerun:"Spustit fázi znovu",approved:"Schváleno — mise pokračuje",rerunning:"Fáze se spouští znovu",actionError:"Akce selhala"},agent:{working:"Pracuje",needsInput:"Vyžaduje vstup",idle:"Nečinný",complete:"Dokončeno",ready:"Připraven",waitingFor:"Čeká na {deps}",stalled:"Ticho {min}m",stuck:"Zaseknuto {min}m"},sessions:{needsInput:"vyžaduje vstup",loading:"načítání…",noOutput:"— žádný výstup —",allow:"Povolit ⏎",reject:"Odmítnout ⎋",terminal:"Terminál",interrupt:"Přerušit",kill:"Ukončit relaci",empty:"Žádné živé relace",emptyDescription:"Spusťte úkol pro vytvoření relace.",emptyAction:"Přejít na Úkoly",terminalTitle:"Terminál — {name}",online:"online",roleOverseer:"Autopilot",rolePilot:"Plánovač",filterAll:"Vše",filterNeedsInput:"Vyžaduje vstup",noNeedsInput:"Žádný agent nečeká na vstup.",comfortable:"Pohodlné",compact:"Kompaktní",approved:"Schváleno {name}",rejected:"Zamítnuto na {name}",answered:"Odpovězeno {name}: {option}",sentTo:"Odesláno {name}",interrupted:"Přerušeno {name}",killed:"Ukončeno {name}",selectLabel:"Vybrat {id}"},kanban:{board:"Deska",calendar:"Kalendář",columnOpen:"Otevřené",columnInProgress:"Probíhá",columnBlocked:"Blokované",columnClosed:"Uzavřené",columnCancelled:"Zrušené",blockedDeps:"Blokováno nedokončenými závislostmi",trueStatusTooltip:"Skutečný stav: {status}"},calendar:{day:"Den",week:"Týden",month:"Měsíc",today:"Dnes",previous:"Předchozí",next:"Následující",noTasks:"Žádné naplánované úkoly na tento den.",nMore:"+{count} dalších",unscheduled:"Neplánovaných: {count} — nastavením plánu je umístíte.",shortMon:"Po",shortTue:"Út",shortWed:"St",shortThu:"Čt",shortFri:"Pá",shortSat:"So",shortSun:"Ne"},timeline:{activityWeek:"Aktivita / poslední týden",activityDays:"Aktivita / posledních {n} dní",activityHours:"Aktivita / posledních {n}h",loadError:"Nepodařilo se načíst aktivitu",empty:"Zatím žádná aktivita",emptyDescription:"Události z posledních 12 hodin se zobrazí zde.",filterAll:"Vše",filterTasks:"Úkoly",filterMissions:"Mise",filterSignals:"Signály",filterReviews:"Kontroly",axis:"Osa",lanes:"Pruhy",approved:"Schváleno",escalated:"Eskalováno",changedFiles:"Změněné soubory",workingDiff:"Pracovní změny",noChanges:"Žádné změny v pracovním stromu",openTask:"Otevřít úkol",markerHint:"Klikněte na událost pro detail a změny v repu",changesOverTime:"Změny v čase",mostActiveFiles:"Nejaktivnější soubory",noChangesInWindow:"V tomto okně žádné commity"},review:{escalated:"Dozorčí zamítl fázi: {reason}",noReason:"bez udání důvodu"},dashboard:{viewAll:"Zobrazit vše",needsAttentionTitle:"Vyžaduje pozornost",recentOutcomes:"Poslední výsledky",now:"Teď",nothingRunning:"Nic neběží — spusťte úkol nebo zahajte misi.",open:"Otevřené",inProgress:"Probíhá",blocked:"Blokované",liveSessions:"Živé relace",activeMissions:"Aktivní mise",autopilotSpotlight:"Světlo autopilota",autopilotSpotlightDesc:"Každá aktivní mise v jednom řádku: aktuální fáze, pokrok a kapacita.",noActiveMissions:"Žádné aktivní mise.",ofTotal:"z {count} celkem",titleCol:"Název",statusCol:"Stav",epicCol:"Epic",progressCol:"Pokrok",stateCol:"Stav"},settings:{models:"Modely",autopilot:"Autopilot",providers:"Poskytovatelé",defaults:"Výchozí",hermes:"Hermes",data:"Data",dangerZone:"Nebezpečná zóna",cleanupDesc:"Smaže všechny úkoly, mise i časovou osu (aktivitu) a ukončí všechny běžící relace agentů. Projekty, uživatelé a nastavení zůstanou. Akci nelze vrátit zpět.",cleanupButton:"Smazat všechna data",cleanupConfirmTitle:"Smazat všechna data?",cleanupConfirmDesc:"Nenávratně se odstraní všechny úkoly, mise a aktivita a ukončí se běžící relace. Projekty, uživatelé a nastavení zůstanou zachované.",cleanupDone:"Vyčištěno — {tasks} úkolů a {missions} misí odstraněno.",sectionsNav:"Sekce nastavení",adminOnly:"Jen pro administrátory",adminOnlyDesc:"Tato sekce je vyhrazena administrátorům. Svůj účet upravíte v sekci Můj účet.",saveAutopilot:"Uložit autopilota",saveProviders:"Uložit poskytovatele",saveDefaults:"Uložit výchozí",addModel:"Přidat model",add:"Přidat",save:"Uložit",cancel:"Zrušit",testPlan:"Testovat plán",planning:"Plánování…",planFailed:"Plánování selhalo",deleteModel:"Smazat model",deleteModelDesc:"Odstranit {label} ({exec}) z modelů? Uložením změny potvrdíte.",providersDesc:"Kde každé CLI agenta sídlí a jaké příznaky se předávají při spuštění orcou. Binárku ponechte pro použití z $PATH.",plannerModel:"Plánovací model",plannerModelDesc:"LLM, která rozkládá cíl na fáze",overseerModel:"Dozorčí model",overseerModelDesc:"LLM, která vyhodnocuje prompt agenta (prázdné = stejný jako plánovací)",backendMode:"Jak autopilot přemýšlí",backendModeHelp:"Vyberte jeden režim — buď přes API klíč, nebo přes lokální CLI nástroje.",modeRelay:"API Klíč",modeRelayDesc:"Plánovač a dozorčí běží jako modely přes API klíč — rychlé a levné, ale nečtou repozitář.",modeAgents:"CLI Nástroje",modeAgentsDesc:"Plánovač a dozorčí běží jako CLI nástroje přímo v repozitáři — čtou kód, ale musí být nainstalované.",reviewOnDone:"Kontrola po dokončení fáze",reviewOnDoneHint:"Po uzavření fáze nechá dozorčího posoudit výsledek; když ho zamítne, zastaví navazující fázi.",relayOption:"Relay (model přes API)",apiUrl:"OpenAI API URL",apiUrlDesc:"OpenAI-kompatibilní endpoint",apiKey:"API klíč",apiKeyDesc:"Klíč je nastaven — ponechte prázdné pro zachování",notes:"Poznámky",notesDesc:"Instrukce, kterými se autopilot řídí",plannerPrompt:"Prompt plánovače",binary:"Binárka",extraArgs:"Další parametry",executor:"Vykonavatel",executorDesc:"Výchozí agent pro nová spuštění",autonomy:"Autonomie",autonomyDesc:"Výchozí úroveň autonomie mise",maxSessions:"Max relací",maxSessionsDesc:"Max souběžných agentů na misi",tokenTtl:"Platnost přihlašovacího tokenu",tokenTtlDesc:"Po kolika dnech vyprší přihlašovací token (vynutí nové přihlášení)",editLabel:"Upravit {exec}",deleteLabel:"Smazat {exec}",addModelTitle:"Přidat model",editModelTitle:"Upravit model",fieldProvider:"Běží přes",providerHint:"Který runner agenta tento model spouští.",providerOther:"Jiný",fieldModelId:"ID modelu",modelIdHint:"Název modelu tak, jak ho runner očekává.",modelIdPlaceholder:"např. sonnet, gpt-5.4, deepseek-v4-flash",execResolvesTo:"Vyhodnotí se jako",execDuplicate:"Model s tímto exec už existuje.",presetTag:"výchozí",labelLabel:"Popisek",execLabel:"Exec",setApiKeyFirst:"Nejprve nastavte API klíč autopilota",modelsSaved:"Modely uloženy",modelNoteLabel:"Popis modelu",modelNoteHint:"K čemu se model hodí — co zvládá nejlépe (kódování, plánování, rychlý a levný…). Autopilot podle popisů vybírá model k jednotlivým úkolům.",modelNotePlaceholder:"Např. Silný na refaktoring a složité úlohy; pomalejší a dražší.",modelNoteEdit:"Upravit popis",modelNoteAdd:"Přidat popis",autopilotSaved:"Autopilot uložen",providersSaved:"Poskytovatelé uloženi",defaultsSaved:"Výchozí nastavení uloženo",modelPlaceholder:"Můj model",execPlaceholder:"provider/model-name",plannerPlaceholder:"claude-opus-4-8",overseerPlaceholder:"gpt-4o-mini (levnější)",apiKeyNotSetDesc:"Uloženo na serveru, nikdy není vráceno",apiKeySetPlaceholder:"•••• nastaveno",apiKeyPlaceholder:"vložit klíč",sampleGoalPlaceholder:"Ukázkový cíl k otestování promptu…",plannerPromptHelp:"Šablona, kterou Pilot používá k rozkladu cíle na fáze. Použijte zástupný text {{goal}} — je nahrazen zadaným cílem. Model musí vrátit JSON pole {title, type, agent} objektů.",hermesDesc:"Nainstaluje balíkovaný orca plugin do Hermes instance na stejném hostiteli. Dává Hermes agentovi nástroje pro plnou správu orcy — spouštět úkoly, relace, uzavírat práci a číst stav.",hermesHome:"Hermes home",hermesUrl:"orca URL",hermesToken:"orca token",hermesInstall:"Instalovat plugin",hermesInstalling:"Instaluji…",hermesStatusInstalled:"nainstalováno",hermesStatusNotInstalled:"není nainstalováno",hermesStatusEnabled:"povoleno",hermesStatusDisabled:"zakázáno",hermesStatusLine:"Stav pluginu",hermesRestartNote:"Po instalaci restartujte Hermes gateway, aby se plugin načetl.",hermesInstalled:"Hermes plugin nainstalován",hermesStatusError:"Stav Hermesu nedostupný"},projects:{newProject:"Nový projekt",loadError:"Nepodařilo se načíst projekty",empty:"Žádné projekty",fieldSlug:"Slug",slugHint:"Krátký identifikátor, např. orca.",fieldPath:"Cesta",pathHint:"Absolutní cesta k projektu na disku.",fieldNotes:"Info pro Pilota",notesHint:"Kontext, který Pilot používá při plánování pro tento projekt.",create:"Vytvořit",editProject:"Upravit projekt",updated:"Projekt upraven",removeProject:"Odebrat projekt",removeConfirmTitle:"Odebrat projekt",removeConfirmBody:'Projekt „{slug}" se odebere z Orcy — jeho úkoly, mise i přístupy. Soubory na disku zůstanou nedotčené. Akci nelze vrátit.',removeConfirmBtn:"Odebrat",removed:"Projekt odebrán",iconLabel:"Ikonka",iconHint:"Obrázek z repozitáře projektu (např. logo). Zobrazí se všude u projektu.",chooseIcon:"Vybrat ikonku",iconSearch:"Hledat obrázek…",noImages:"V projektu nejsou žádné obrázky",iconSelect:"Vybrat",iconRemove:"Odebrat ikonku",iconSet:"Ikonka nastavena",iconRemoved:"Ikonka odebrána",iconMore:"Zobrazeno prvních 300 obrázků — zúžit přes hledání.",slugImmutable:"Slug je pevný a nedá se změnit.",git:"Git",gitError:"Nepodařilo se načíst git info",notGit:"Není git repozitář",clean:"Čisté",dirty:"{count} změněno",branches:"Větve",commits:"Commity",created:"Projekt vytvořen",slugPlaceholder:"muj-projekt",pathPlaceholder:"~/projects/muj-projekt",openEditor:"Otevřít editor",editorTitle:"Editor kódu",tabEdit:"Úpravy",tabDiff:"Diff",noFiles:"Žádné soubory",selectFile:"Vyberte soubor k úpravě",fileTooBig:"Soubor je příliš velký nebo binární, nelze ho zde upravit.",noChanges:"Žádné necommitnuté změny v tomto souboru.",fileSaved:"Uloženo {path}",commitLabel:"Commit",viewCommit:"Zobrazit změny tohoto commitu",workingChanges:"Necommitnuté změny",viewChanges:"Zobrazit necommitnuté změny",tabPreview:"Náhled",wordWrap:"Zalamovat řádky",fullscreen:"Celá obrazovka",exitFullscreen:"Zavřít celou obrazovku",toggleTree:"Soubory",ctxOpen:"Otevřít",ctxNewFile:"Nový soubor",ctxNewFolder:"Nová složka",ctxRename:"Přejmenovat",ctxDuplicate:"Duplikovat",ctxDelete:"Smazat",ctxCopyPath:"Kopírovat cestu",dlgNewFile:"Nový soubor",dlgNewFolder:"Nová složka",dlgRename:"Přejmenovat",dlgDuplicate:"Duplikovat",dlgName:"Název",dlgDelete:"Smazat položku?",dlgDeleteMsg:"Opravdu smazat „{name}“? Tuto akci nelze vrátit zpět.",fileCreated:"Vytvořeno {path}",folderCreated:"Složka vytvořena {path}",renamed:"Přejmenováno na {path}",duplicated:"Zkopírováno do {path}",deleted:"Smazáno {path}",pathCopied:"Cesta zkopírována"},users:{loadError:"Nepodařilo se načíst uživatele",empty:"Žádní uživatelé",emptyDescription:"Pro začátek vytvořte první účet.",fieldUsername:"Uživatelské jméno",fieldCreated:"Vytvořen",fieldActions:"Akce",addUser:"Přidat uživatele",newUser:"Nový uživatel",create:"Vytvořit",add:"Přidat",delete:"Smazat",lastUserHint:"Posledního uživatele nelze smazat.",session:"Relace",logout:"Odhlásit se",userDeleted:"Uživatel smazán",userCreated:"Uživatel vytvořen",deleteLabel:"Smazat {username}",projects:"Projekty",admin:"Admin",member:"Člen",makeAdmin:"Povýšit na administrátora",removeAdmin:"Odebrat administrátora",lastAdminHint:"Posledního administrátora nelze degradovat.",roleUpdated:"Role změněna",models:"Modely",allowedModels:"Povolené modely",allModelsHint:"Bez výběru smí uživatel spouštět všechny globálně povolené modely.",modelsUpdated:"Povolené modely uloženy",updateError:"Nepodařilo se uložit změnu"},account:{title:"Můj účet",name:"Jméno",email:"E-mail",uploadAvatar:"Nahrát avatar",defaultModel:"Výchozí model",defaultModelHint:"Předvyplní se u nových tasků. Vyberte z modelů, které smíte spouštět.",restrictedHint:"Tyto modely vám povolil administrátor.",noModelLimit:"Bez omezení — můžete spouštět všechny globálně povolené modely.",save:"Uložit",saved:"Účet uložen",avatarSaved:"Avatar nahrán",saveError:"Uložení selhalo",password:"Heslo",passwordHint:"Změňte si přihlašovací heslo. Nové heslo musí mít alespoň 8 znaků.",currentPassword:"Současné heslo",newPassword:"Nové heslo",confirmPassword:"Potvrzení nového hesla",changePassword:"Změnit heslo",passwordChanged:"Heslo změněno",passwordMismatch:"Nová hesla se neshodují",passwordTooShort:"Nové heslo musí mít alespoň 8 znaků",passwordError:"Změna hesla selhala"},changes:{dirtyOne:"1 změněno",dirtyN:"{count} změněno",lastCommit:"poslední commit {relative} „{subject}“",none:"žádné nedávné změny"},onboarding:{title:"Vítejte v Orce",subtitle:"Nastavte prostředí pro orchestráci agentů.",systemDeps:"Systémové závislosti",systemDepsDesc:"Nástroje potřebné pro běh agentů. Chybějící doplňte před prvním spuštěním.",providers:"Binárky providerů",providersDesc:"Kde každé CLI agenta leží. Ponechte pro použití z $PATH.",autopilotKey:"API klíč autopilota",autopilotKeyDesc:"Nutný pro Planner, aby rozkládal cíle na fáze.",autopilotBackend:"Backend autopilota",autopilotBackendDesc:"Jak má plánovač a dozorčí přemýšlet — vyberte jeden režim.",agentsSet:"CLI agenti nastaveni",agentsNotSet:"Vyberte CLI agenty",saveBackend:"Uložit backend",hermes:"Hermes integrace",hermesDesc:"Volitelně nainstaluje orca plugin do Hermes instance na stejném hostiteli.",users:"Uživatelé",usersDesc:"Správa přístupu do orca dashboardu.",addUser:"Přidat uživatele",createUser:"Vytvořit",installPlugin:"Instalovat plugin",installing:"Instaluji…",saveProviders:"Uložit providery",saveKey:"Uložit klíč",keySet:"Klíč je nastaven",keyNotSet:"Nenastaven",statusInstalled:"nainstalováno",statusNotInstalled:"nenainstalováno",statusEnabled:"povoleno",statusDisabled:"zakázáno",statusUnknown:"neznámý",noUsers:"Zatím žádní uživatelé. Vytvořte prvního.",goToDashboard:"Přejít na Dashboard",setupComplete:"Nastavení dokončeno!",setupIncomplete:"Dokončete kroky výše pro dokončení nastavení.",providerSaved:"Providery uloženy",keySaved:"API klíč uložen",userCreated:"Uživatel vytvořen",userCreateError:"Chyba při vytváření uživatele",pluginInstalled:"Hermes plugin nainstalován",fieldHome:"Hermes home",fieldUrl:"orca URL",fieldToken:"orca token",pluginStatus:"Stav pluginu",restartNote:"Po instalaci restartujte Hermes gateway, aby se plugin načetl.",fieldUsername:"Uživatelské jméno",fieldPassword:"Heslo",fieldApiUrl:"API URL",fieldApiKey:"API Klíč",fieldBin:"Binárka",fieldArgs:"Další parametry",installed:"nainstalováno",notFound:"nenalezeno",functional:"funkční",error:"chyba",allGood:"Všechny potřebné nástroje jsou nainstalovány a funkční.",missingTools:"Některé nástroje chybí — nainstalujte je pro plnou funkcionalitu.",sectionAgentCLIs:"CLI agenti",sectionSystem:"Systém",statusOk:"OK",statusFail:"CHYBA",statusNotFound:"nenalezeno",userId:"ID"},activity:{editing:"edituje",testing:"testuje",building:"buildí",installing:"instaluje",thinking:"přemýšlí",prompted:"vyzván k akci",error:"chyba",unknown:"pracuje"}}},e=(0,c.createContext)(null);a.s(["LanguageProvider",0,function({children:a}){let[f,g]=(0,c.useState)("en"),[h,i]=(0,c.useState)(!1);(0,c.useEffect)(()=>{g("en"),document.documentElement.lang="en",i(!0)},[]);let j=a=>{g(a),localStorage.setItem("orca-locale",a),document.documentElement.lang=a};return h?(0,b.jsx)(e.Provider,{value:{locale:f,setLocale:j,t:d[f]},children:a}):(0,b.jsx)(e.Provider,{value:{locale:"en",setLocale:j,t:d.en},children:a})},"useTranslation",0,function(){let a=(0,c.useContext)(e);if(!a)throw Error("useTranslation must be used within LanguageProvider");return a}],29457),a.s([],28130)}];
1
+ module.exports=[42871,8361,a=>{"use strict";var b={setTimeout:(a,b)=>setTimeout(a,b),clearTimeout:a=>clearTimeout(a),setInterval:(a,b)=>setInterval(a,b),clearInterval:a=>clearInterval(a)},c=new class{#a=b;#b=!1;setTimeoutProvider(a){this.#a=a}setTimeout(a,b){return this.#a.setTimeout(a,b)}clearTimeout(a){this.#a.clearTimeout(a)}setInterval(a,b){return this.#a.setInterval(a,b)}clearInterval(a){this.#a.clearInterval(a)}};function d(a,b){return(b?.queryKeyHashFn||e)(a)}function e(a){return JSON.stringify(a,(a,b)=>j(b)?Object.keys(b).sort().reduce((a,c)=>(a[c]=b[c],a),{}):b)}function f(a,b){return a===b||typeof a==typeof b&&!!a&&!!b&&"object"==typeof a&&"object"==typeof b&&Object.keys(b).every(c=>f(a[c],b[c]))}a.s(["systemSetTimeoutZero",0,function(a){setTimeout(a,0)},"timeoutManager",0,c],8361);var g=Object.prototype.hasOwnProperty;function h(a,b,c=0){if(a===b)return a;if(c>500)return b;let d=i(a)&&i(b);if(!d&&!(j(a)&&j(b)))return b;let e=(d?a:Object.keys(a)).length,f=d?b:Object.keys(b),k=f.length,l=d?Array(k):{},m=0;for(let i=0;i<k;i++){let j=d?i:f[i],k=a[j],n=b[j];if(k===n){l[j]=k,(d?i<e:g.call(a,j))&&m++;continue}if(null===k||null===n||"object"!=typeof k||"object"!=typeof n){l[j]=n;continue}let o=h(k,n,c+1);l[j]=o,o===k&&m++}return e===k&&m===e?a:l}function i(a){return Array.isArray(a)&&a.length===Object.keys(a).length}function j(a){if(!k(a))return!1;let b=a.constructor;if(void 0===b)return!0;let c=b.prototype;return!!k(c)&&!!c.hasOwnProperty("isPrototypeOf")&&Object.getPrototypeOf(a)===Object.prototype}function k(a){return"[object Object]"===Object.prototype.toString.call(a)}var l=Symbol();a.s(["addConsumeAwareSignal",0,function(a,b,c){let d,e=!1;return Object.defineProperty(a,"signal",{enumerable:!0,get:()=>(d??=b(),e||(e=!0,d.aborted?c():d.addEventListener("abort",c,{once:!0})),d)}),a},"addToEnd",0,function(a,b,c=0){let d=[...a,b];return c&&d.length>c?d.slice(1):d},"addToStart",0,function(a,b,c=0){let d=[b,...a];return c&&d.length>c?d.slice(0,-1):d},"ensureQueryFn",0,function(a,b){return!a.queryFn&&b?.initialPromise?()=>b.initialPromise:a.queryFn&&a.queryFn!==l?a.queryFn:()=>Promise.reject(Error(`Missing queryFn: '${a.queryHash}'`))},"functionalUpdate",0,function(a,b){return"function"==typeof a?a(b):a},"hashKey",0,e,"hashQueryKeyByOptions",0,d,"isServer",0,!0,"isValidTimeout",0,function(a){return"number"==typeof a&&a>=0&&a!==1/0},"matchMutation",0,function(a,b){let{exact:c,status:d,predicate:g,mutationKey:h}=a;if(h){if(!b.options.mutationKey)return!1;if(c){if(e(b.options.mutationKey)!==e(h))return!1}else if(!f(b.options.mutationKey,h))return!1}return(!d||b.state.status===d)&&(!g||!!g(b))},"matchQuery",0,function(a,b){let{type:c="all",exact:e,fetchStatus:g,predicate:h,queryKey:i,stale:j}=a;if(i){if(e){if(b.queryHash!==d(i,b.options))return!1}else if(!f(b.queryKey,i))return!1}if("all"!==c){let a=b.isActive();if("active"===c&&!a||"inactive"===c&&a)return!1}return("boolean"!=typeof j||b.isStale()===j)&&(!g||g===b.state.fetchStatus)&&(!h||!!h(b))},"noop",0,function(){},"partialMatchKey",0,f,"replaceData",0,function(a,b,c){return"function"==typeof c.structuralSharing?c.structuralSharing(a,b):!1!==c.structuralSharing?h(a,b):b},"replaceEqualDeep",0,h,"resolveQueryBoolean",0,function(a,b){return"function"==typeof a?a(b):a},"resolveStaleTime",0,function(a,b){return"function"==typeof a?a(b):a},"shallowEqualObjects",0,function(a,b){if(!b||Object.keys(a).length!==Object.keys(b).length)return!1;for(let c in a)if(a[c]!==b[c])return!1;return!0},"shouldThrowError",0,function(a,b){return"function"==typeof a?a(...b):!!a},"skipToken",0,l,"sleep",0,function(a){return new Promise(b=>{c.setTimeout(b,a)})},"timeUntilStale",0,function(a,b){return Math.max(a+(b||0)-Date.now(),0)}],42871)},18544,a=>{"use strict";let b,c,d,e,f,g;var h=a.i(8361).systemSetTimeoutZero,i=(b=[],c=0,d=a=>{a()},e=a=>{a()},f=h,{batch:a=>{let g;c++;try{g=a()}finally{let a;--c||(a=b,b=[],a.length&&f(()=>{e(()=>{a.forEach(a=>{d(a)})})}))}return g},batchCalls:a=>(...b)=>{g(()=>{a(...b)})},schedule:g=a=>{c?b.push(a):f(()=>{d(a)})},setNotifyFunction:a=>{d=a},setBatchNotifyFunction:a=>{e=a},setScheduler:a=>{f=a}});a.s(["notifyManager",0,i])},99745,33791,a=>{"use strict";var b=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(a){return this.listeners.add(a),this.onSubscribe(),()=>{this.listeners.delete(a),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}};a.s(["Subscribable",0,b],33791);var c=new class extends b{#c;#d;#e;constructor(){super(),this.#e=a=>{}}onSubscribe(){this.#d||this.setEventListener(this.#e)}onUnsubscribe(){this.hasListeners()||(this.#d?.(),this.#d=void 0)}setEventListener(a){this.#e=a,this.#d?.(),this.#d=a(a=>{"boolean"==typeof a?this.setFocused(a):this.onFocus()})}setFocused(a){this.#c!==a&&(this.#c=a,this.onFocus())}onFocus(){let a=this.isFocused();this.listeners.forEach(b=>{b(a)})}isFocused(){return"boolean"==typeof this.#c?this.#c:globalThis.document?.visibilityState!=="hidden"}};a.s(["focusManager",0,c],99745)},12552,79715,a=>{"use strict";var b=a.i(33791),c=new class extends b.Subscribable{#f=!0;#d;#e;constructor(){super(),this.#e=a=>{}}onSubscribe(){this.#d||this.setEventListener(this.#e)}onUnsubscribe(){this.hasListeners()||(this.#d?.(),this.#d=void 0)}setEventListener(a){this.#e=a,this.#d?.(),this.#d=a(this.setOnline.bind(this))}setOnline(a){this.#f!==a&&(this.#f=a,this.listeners.forEach(b=>{b(a)}))}isOnline(){return this.#f}};a.s(["onlineManager",0,c],12552),a.i(42871),a.s(["pendingThenable",0,function(){let a,b,c=new Promise((c,d)=>{a=c,b=d});function d(a){Object.assign(c,a),delete c.resolve,delete c.reject}return c.status="pending",c.catch(()=>{}),c.resolve=b=>{d({status:"fulfilled",value:b}),a(b)},c.reject=a=>{d({status:"rejected",reason:a}),b(a)},c}],79715)},77048,a=>{"use strict";let b;var c=a.i(42871),d=(b=()=>c.isServer,{isServer:()=>b(),setIsServer(a){b=a}});a.s(["environmentManager",0,d])},76644,21778,85659,a=>{"use strict";var b=a.i(42871),c=a.i(18544),d=a.i(99745),e=a.i(12552),f=a.i(79715),g=a.i(77048);function h(a){return Math.min(1e3*2**a,3e4)}function i(a){return(a??"online")!=="online"||e.onlineManager.isOnline()}var j=class extends Error{constructor(a){super("CancelledError"),this.revert=a?.revert,this.silent=a?.silent}};function k(a){let c,k=!1,l=0,m=(0,f.pendingThenable)(),n=()=>d.focusManager.isFocused()&&("always"===a.networkMode||e.onlineManager.isOnline())&&a.canRun(),o=()=>i(a.networkMode)&&a.canRun(),p=a=>{"pending"===m.status&&(c?.(),m.resolve(a))},q=a=>{"pending"===m.status&&(c?.(),m.reject(a))},r=()=>new Promise(b=>{c=a=>{("pending"!==m.status||n())&&b(a)},a.onPause?.()}).then(()=>{c=void 0,"pending"===m.status&&a.onContinue?.()}),s=()=>{let c;if("pending"!==m.status)return;let d=0===l?a.initialPromise:void 0;try{c=d??a.fn()}catch(a){c=Promise.reject(a)}Promise.resolve(c).then(p).catch(c=>{if("pending"!==m.status)return;let d=a.retry??3*!g.environmentManager.isServer(),e=a.retryDelay??h,f="function"==typeof e?e(l,c):e,i=!0===d||"number"==typeof d&&l<d||"function"==typeof d&&d(l,c);k||!i?q(c):(l++,a.onFail?.(l,c),(0,b.sleep)(f).then(()=>n()?void 0:r()).then(()=>{k?q(c):s()}))})};return{promise:m,status:()=>m.status,cancel:b=>{if("pending"===m.status){let c=new j(b);q(c),a.onCancel?.(c)}},continue:()=>(c?.(),m),cancelRetry:()=>{k=!0},continueRetry:()=>{k=!1},canStart:o,start:()=>(o()?s():r().then(s),m)}}a.s(["CancelledError",0,j,"canFetch",0,i,"createRetryer",0,k],21778);var l=a.i(8361),m=class{#g;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),(0,b.isValidTimeout)(this.gcTime)&&(this.#g=l.timeoutManager.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(a){this.gcTime=Math.max(this.gcTime||0,a??(g.environmentManager.isServer()?1/0:3e5))}clearGcTimeout(){void 0!==this.#g&&(l.timeoutManager.clearTimeout(this.#g),this.#g=void 0)}};function n(a,{pages:b,pageParams:c}){let d=b.length-1;return b.length>0?a.getNextPageParam(b[d],b,c[d],c):void 0}a.s(["Removable",0,m],85659);var o=class extends m{#h;#i;#j;#k;#l;#m;#n;#o;constructor(a){super(),this.#o=!1,this.#n=a.defaultOptions,this.setOptions(a.options),this.observers=[],this.#l=a.client,this.#k=this.#l.getQueryCache(),this.queryKey=a.queryKey,this.queryHash=a.queryHash,this.#i=r(this.options),this.state=a.state??this.#i,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#h}get promise(){return this.#m?.promise}setOptions(a){if(this.options={...this.#n,...a},a?._type&&(this.#h=a._type),this.updateGcTime(this.options.gcTime),this.state&&void 0===this.state.data){let a=r(this.options);void 0!==a.data&&(this.setState(q(a.data,a.dataUpdatedAt)),this.#i=a)}}optionalRemove(){this.observers.length||"idle"!==this.state.fetchStatus||this.#k.remove(this)}setData(a,c){let d=(0,b.replaceData)(this.state.data,a,this.options);return this.#p({data:d,type:"success",dataUpdatedAt:c?.updatedAt,manual:c?.manual}),d}setState(a){this.#p({type:"setState",state:a})}cancel(a){let c=this.#m?.promise;return this.#m?.cancel(a),c?c.then(b.noop).catch(b.noop):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#i}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(a=>!1!==(0,b.resolveQueryBoolean)(a.options.enabled,this))}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===b.skipToken||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0&&this.observers.some(a=>"static"===(0,b.resolveStaleTime)(a.options.staleTime,this))}isStale(){return this.getObserversCount()>0?this.observers.some(a=>a.getCurrentResult().isStale):void 0===this.state.data||this.state.isInvalidated}isStaleByTime(a=0){return void 0===this.state.data||"static"!==a&&(!!this.state.isInvalidated||!(0,b.timeUntilStale)(this.state.dataUpdatedAt,a))}onFocus(){let a=this.observers.find(a=>a.shouldFetchOnWindowFocus());a?.refetch({cancelRefetch:!1}),this.#m?.continue()}onOnline(){let a=this.observers.find(a=>a.shouldFetchOnReconnect());a?.refetch({cancelRefetch:!1}),this.#m?.continue()}addObserver(a){this.observers.includes(a)||(this.observers.push(a),this.clearGcTimeout(),this.#k.notify({type:"observerAdded",query:this,observer:a}))}removeObserver(a){this.observers.includes(a)&&(this.observers=this.observers.filter(b=>b!==a),this.observers.length||(this.#m&&(this.#o||this.#q()?this.#m.cancel({revert:!0}):this.#m.cancelRetry()),this.scheduleGc()),this.#k.notify({type:"observerRemoved",query:this,observer:a}))}getObserversCount(){return this.observers.length}#q(){return"paused"===this.state.fetchStatus&&"pending"===this.state.status}invalidate(){this.state.isInvalidated||this.#p({type:"invalidate"})}async fetch(a,c){var d;let e;if("idle"!==this.state.fetchStatus&&this.#m?.status()!=="rejected"){if(void 0!==this.state.data&&c?.cancelRefetch)this.cancel({silent:!0});else if(this.#m)return this.#m.continueRetry(),this.#m.promise}if(a&&this.setOptions(a),!this.options.queryFn){let a=this.observers.find(a=>a.options.queryFn);a&&this.setOptions(a.options)}let f=new AbortController,g=a=>{Object.defineProperty(a,"signal",{enumerable:!0,get:()=>(this.#o=!0,f.signal)})},h=()=>{let a,d=(0,b.ensureQueryFn)(this.options,c),e=(g(a={client:this.#l,queryKey:this.queryKey,meta:this.meta}),a);return(this.#o=!1,this.options.persister)?this.options.persister(d,e,this):d(e)},i=(g(e={fetchOptions:c,options:this.options,queryKey:this.queryKey,client:this.#l,state:this.state,fetchFn:h}),e),l="infinite"===this.#h?(d=this.options.pages,{onFetch:(a,c)=>{let e=a.options,f=a.fetchOptions?.meta?.fetchMore?.direction,g=a.state.data?.pages||[],h=a.state.data?.pageParams||[],i={pages:[],pageParams:[]},j=0,k=async()=>{let c=!1,k=(0,b.ensureQueryFn)(a.options,a.fetchOptions),l=async(d,e,f)=>{let g;if(c)return Promise.reject(a.signal.reason);if(null==e&&d.pages.length)return Promise.resolve(d);let h=(g={client:a.client,queryKey:a.queryKey,pageParam:e,direction:f?"backward":"forward",meta:a.options.meta},(0,b.addConsumeAwareSignal)(g,()=>a.signal,()=>c=!0),g),i=await k(h),{maxPages:j}=a.options,l=f?b.addToStart:b.addToEnd;return{pages:l(d.pages,i,j),pageParams:l(d.pageParams,e,j)}};if(f&&g.length){let a="backward"===f,b={pages:g,pageParams:h},c=(a?function(a,{pages:b,pageParams:c}){return b.length>0?a.getPreviousPageParam?.(b[0],b,c[0],c):void 0}:n)(e,b);i=await l(b,c,a)}else{let a=d??g.length;do{let a=0===j?h[0]??e.initialPageParam:n(e,i);if(j>0&&null==a)break;i=await l(i,a),j++}while(j<a)}return i};a.options.persister?a.fetchFn=()=>a.options.persister?.(k,{client:a.client,queryKey:a.queryKey,meta:a.options.meta,signal:a.signal},c):a.fetchFn=k}}):this.options.behavior;l?.onFetch(i,this),this.#j=this.state,("idle"===this.state.fetchStatus||this.state.fetchMeta!==i.fetchOptions?.meta)&&this.#p({type:"fetch",meta:i.fetchOptions?.meta}),this.#m=k({initialPromise:c?.initialPromise,fn:i.fetchFn,onCancel:a=>{a instanceof j&&a.revert&&this.setState({...this.#j,fetchStatus:"idle"}),f.abort()},onFail:(a,b)=>{this.#p({type:"failed",failureCount:a,error:b})},onPause:()=>{this.#p({type:"pause"})},onContinue:()=>{this.#p({type:"continue"})},retry:i.options.retry,retryDelay:i.options.retryDelay,networkMode:i.options.networkMode,canRun:()=>!0});try{let a=await this.#m.start();if(void 0===a)throw Error(`${this.queryHash} data is undefined`);return this.setData(a),this.#k.config.onSuccess?.(a,this),this.#k.config.onSettled?.(a,this.state.error,this),a}catch(a){if(a instanceof j){if(a.silent)return this.#m.promise;else if(a.revert){if(void 0===this.state.data)throw a;return this.state.data}}throw this.#p({type:"error",error:a}),this.#k.config.onError?.(a,this),this.#k.config.onSettled?.(this.state.data,a,this),a}finally{this.scheduleGc()}}#p(a){let b=b=>{switch(a.type){case"failed":return{...b,fetchFailureCount:a.failureCount,fetchFailureReason:a.error};case"pause":return{...b,fetchStatus:"paused"};case"continue":return{...b,fetchStatus:"fetching"};case"fetch":return{...b,...p(b.data,this.options),fetchMeta:a.meta??null};case"success":let c={...b,...q(a.data,a.dataUpdatedAt),dataUpdateCount:b.dataUpdateCount+1,...!a.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return this.#j=a.manual?c:void 0,c;case"error":let d=a.error;return{...b,error:d,errorUpdateCount:b.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:b.fetchFailureCount+1,fetchFailureReason:d,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...b,isInvalidated:!0};case"setState":return{...b,...a.state}}};this.state=b(this.state),c.notifyManager.batch(()=>{this.observers.forEach(a=>{a.onQueryUpdate()}),this.#k.notify({query:this,type:"updated",action:a})})}};function p(a,b){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:i(b.networkMode)?"fetching":"paused",...void 0===a&&{error:null,status:"pending"}}}function q(a,b){return{data:a,dataUpdatedAt:b??Date.now(),error:null,isInvalidated:!1,status:"success"}}function r(a){let b="function"==typeof a.initialData?a.initialData():a.initialData,c=void 0!==b,d=c?"function"==typeof a.initialDataUpdatedAt?a.initialDataUpdatedAt():a.initialDataUpdatedAt:0;return{data:b,dataUpdateCount:0,dataUpdatedAt:c?d??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:c?"success":"pending",fetchStatus:"idle"}}a.s(["Query",0,o,"fetchState",0,p],76644)},37927,a=>{"use strict";var b=a.i(72131),c=a.i(87924),d=b.createContext(void 0);a.s(["QueryClientProvider",0,({client:a,children:e})=>(b.useEffect(()=>(a.mount(),()=>{a.unmount()}),[a]),(0,c.jsx)(d.Provider,{value:a,children:e})),"useQueryClient",0,a=>{let c=b.useContext(d);if(a)return a;if(!c)throw Error("No QueryClient set, use QueryClientProvider to set one");return c}])},82717,30067,a=>{"use strict";function b(){}a.s(["AUTH_CLEARED_EVENT",0,"orca:auth-cleared","clearToken",0,b],30067);let c="/api";class d extends Error{status;code;constructor(a,b,c){super(a),this.status=b,this.code=c,this.name="OrcaApiError"}}async function e(a,e){let f=await fetch(`${c}${a}`,{...e,credentials:"same-origin"});if(401===f.status)throw b(),new d(`orca 401 on ${a}`,401);if(!f.ok){let b;try{b=(await f.json()).error}catch{}throw new d(`orca ${f.status} on ${a}`,f.status,b)}if(204!==f.status)try{return await f.json()}catch{throw new d(`non-JSON response from ${a}`,f.status)}}let f=(a,b="POST")=>({method:b,headers:{"content-type":"application/json"},body:JSON.stringify(a)});a.s(["BASE",0,c,"OrcaApiError",0,d,"apiErrorMessage",0,function(a){return a instanceof d?a.code??a.message:a instanceof Error?a.message:String(a)},"orcaClient",0,{tasks:a=>e(null!=a?`/tasks?project_id=${a}`:"/tasks"),ready:()=>e("/tasks/ready"),sessions:()=>e("/sessions"),missions:()=>e("/missions"),getMissionDetail:a=>e(`/missions/${encodeURIComponent(a)}`),health:()=>e("/health"),setupStatus:()=>e("/setup"),createTask:a=>e("/tasks",f(a)),updateTask:(a,b)=>e(`/tasks/${encodeURIComponent(a)}`,f(b,"PATCH")),deleteTask:a=>e(`/tasks/${encodeURIComponent(a)}`,{method:"DELETE"}),deleteMission:a=>e(`/tasks/${encodeURIComponent(a)}?subtree=1`,{method:"DELETE"}),cleanupAll:()=>e("/admin/cleanup",{method:"POST",headers:{"content-type":"application/json"},body:"{}"}),taskDeps:a=>e(`/tasks/${encodeURIComponent(a)}/deps`),taskUsage:a=>e(`/tasks/${encodeURIComponent(a)}/usage`),allDeps:()=>e("/tasks/deps"),planTask:a=>e("/tasks/plan",f(a)),planPreview:a=>e("/tasks/plan",f({...a,dryRun:!0})),getPlanJob:a=>e(`/plan/${encodeURIComponent(a)}`),insertPhases:(a,b)=>e(`/tasks/${encodeURIComponent(a)}/phases`,f(b)),engage:a=>e("/missions",f(a)),spawn:a=>e("/sessions",f(a)),closeTask:a=>e(`/tasks/${a}`,f({status:"closed"},"PATCH")),setTaskStatus:(a,b)=>e(`/tasks/${a}`,f({status:b},"PATCH")),setTaskExec:(a,b)=>e(`/tasks/${a}`,f({exec:b},"PATCH")),approveGate:a=>e(`/tasks/${a}/approve-gate`,{method:"POST"}),sessionPane:(a,b=!1)=>e(`/sessions/${encodeURIComponent(a)}/pane${b?"?ansi=1":""}`),killSession:a=>e(`/sessions/${encodeURIComponent(a)}`,{method:"DELETE"}),sendKeys:(a,b)=>e(`/sessions/${encodeURIComponent(a)}/keys`,f({keys:b})),resizeSession:(a,b,c)=>e(`/sessions/${encodeURIComponent(a)}/resize`,f({cols:b,rows:c})),sessionInput:(a,b)=>e(`/sessions/${encodeURIComponent(a)}/input`,f({data:b})),advisorStatus:()=>e("/advisor/status"),advisorStart:a=>e("/advisor/start",f({exec:a})),advisorStop:()=>e("/advisor/stop",{method:"POST",headers:{"content-type":"application/json"},body:"{}"}),pauseMission:a=>e(`/missions/${a}`,f({action:"pause"},"PATCH")),resumeMission:a=>e(`/missions/${a}`,f({action:"resume"},"PATCH")),disengageMission:a=>e(`/missions/${a}`,{method:"DELETE"}),getConfig:()=>e("/config"),updateConfig:a=>e("/config",f(a,"PUT")),login:(a,b)=>e("/auth/login",f({username:a,password:b})),logout:()=>e("/auth/logout",{method:"POST"}),me:()=>e("/auth/me"),updateMe:a=>e("/auth/me",f(a,"PATCH")),uploadAvatar:a=>{let b=new FormData;return b.append("avatar",a),e("/auth/me/avatar",{method:"POST",body:b})},changePassword:(a,b)=>e("/auth/me/password",f({currentPassword:a,newPassword:b})),avatarUrl:async a=>`${c}${(await e(`/users/${a}/avatar/url`)).url}`,listUsers:()=>e("/users"),createUser:(a,b)=>e("/users",f({username:a,password:b})),updateUser:(a,b)=>e(`/users/${a}`,f(b,"PATCH")),deleteUser:a=>e(`/users/${a}`,{method:"DELETE"}),activity:a=>{let b=new URLSearchParams({...a?.limit?{limit:String(a.limit)}:{},...a?.type?{type:a.type}:{}}).toString();return e(`/activity${b?`?${b}`:""}`)},projects:()=>e("/projects"),createProject:a=>e("/projects",f(a)),updateProject:(a,b)=>e(`/projects/${a}`,f(b,"PATCH")),removeProject:a=>e(`/projects/${a}`,{method:"DELETE"}),projectGit:a=>e(`/projects/${a}/git`),projectFiles:a=>e(`/projects/${a}/files`),projectFile:(a,b)=>e(`/projects/${a}/file?path=${encodeURIComponent(b)}`),writeProjectFile:(a,b,c)=>e(`/projects/${a}/file`,f({path:b,content:c},"PUT")),projectFileAtHead:(a,b)=>e(`/projects/${a}/head?path=${encodeURIComponent(b)}`),projectCommit:(a,b)=>e(`/projects/${a}/commit/${encodeURIComponent(b)}`),projectCommitFileDiff:(a,b,c)=>e(`/projects/${a}/commit/${encodeURIComponent(b)}/diff?path=${encodeURIComponent(c)}`),projectRawBlob:async(a,b)=>{let e=await fetch(`${c}/projects/${a}/raw?path=${encodeURIComponent(b)}`,{credentials:"same-origin"});if(!e.ok)throw new d(`orca ${e.status} on raw ${b}`,e.status);return e.blob()},newProjectFile:(a,b)=>e(`/projects/${a}/new-file`,f({path:b})),newProjectDir:(a,b)=>e(`/projects/${a}/dir`,f({path:b})),renameProjectEntry:(a,b,c)=>e(`/projects/${a}/rename`,f({from:b,to:c})),copyProjectEntry:(a,b,c)=>e(`/projects/${a}/copy`,f({from:b,to:c})),deleteProjectEntry:(a,b)=>e(`/projects/${a}/entry?path=${encodeURIComponent(b)}`,{method:"DELETE"}),projectCommits:(a,b=30)=>e(`/projects/${a}/commits?limit=${b}`),projectChanged:a=>e(`/projects/${a}/changed`),projectChanges:a=>e(`/projects/${a}/changes`),userProjects:a=>e(`/users/${a}/projects`),assignProject:(a,b)=>e(`/users/${a}/projects`,f({projectId:b})),unassignProject:(a,b)=>e(`/users/${a}/projects/${b}`,{method:"DELETE"}),hermesStatus:a=>e(`/integrations/hermes/status${a?`?home=${encodeURIComponent(a)}`:""}`),hermesInstall:a=>e("/integrations/hermes/install",f(a)),cliStatus:()=>e("/integrations/cli-status")}],82717)},41579,a=>{"use strict";var b=a.i(99745),c=a.i(77048),d=a.i(18544),e=a.i(76644),f=a.i(33791),g=a.i(79715),h=a.i(42871),i=a.i(8361),j=class extends f.Subscribable{constructor(a,b){super(),this.options=b,this.#l=a,this.#r=null,this.#s=(0,g.pendingThenable)(),this.bindMethods(),this.setOptions(b)}#l;#t=void 0;#u=void 0;#v=void 0;#w;#x;#s;#r;#y;#z;#A;#B;#C;#D;#E=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){1===this.listeners.size&&(this.#t.addObserver(this),k(this.#t,this.options)?this.#F():this.updateResult(),this.#G())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return l(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return l(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#H(),this.#I(),this.#t.removeObserver(this)}setOptions(a){let b=this.options,c=this.#t;if(this.options=this.#l.defaultQueryOptions(a),void 0!==this.options.enabled&&"boolean"!=typeof this.options.enabled&&"function"!=typeof this.options.enabled&&"boolean"!=typeof(0,h.resolveQueryBoolean)(this.options.enabled,this.#t))throw Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#J(),this.#t.setOptions(this.options),b._defaulted&&!(0,h.shallowEqualObjects)(this.options,b)&&this.#l.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#t,observer:this});let d=this.hasListeners();d&&m(this.#t,c,this.options,b)&&this.#F(),this.updateResult(),d&&(this.#t!==c||(0,h.resolveQueryBoolean)(this.options.enabled,this.#t)!==(0,h.resolveQueryBoolean)(b.enabled,this.#t)||(0,h.resolveStaleTime)(this.options.staleTime,this.#t)!==(0,h.resolveStaleTime)(b.staleTime,this.#t))&&this.#K();let e=this.#L();d&&(this.#t!==c||(0,h.resolveQueryBoolean)(this.options.enabled,this.#t)!==(0,h.resolveQueryBoolean)(b.enabled,this.#t)||e!==this.#D)&&this.#M(e)}getOptimisticResult(a){var b,c;let d=this.#l.getQueryCache().build(this.#l,a),e=this.createResult(d,a);return b=this,c=e,(0,h.shallowEqualObjects)(b.getCurrentResult(),c)||(this.#v=e,this.#x=this.options,this.#w=this.#t.state),e}getCurrentResult(){return this.#v}trackResult(a,b){return new Proxy(a,{get:(a,c)=>(this.trackProp(c),b?.(c),"promise"===c&&(this.trackProp("data"),this.options.experimental_prefetchInRender||"pending"!==this.#s.status||this.#s.reject(Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(a,c))})}trackProp(a){this.#E.add(a)}getCurrentQuery(){return this.#t}refetch({...a}={}){return this.fetch({...a})}fetchOptimistic(a){let b=this.#l.defaultQueryOptions(a),c=this.#l.getQueryCache().build(this.#l,b);return c.fetch().then(()=>this.createResult(c,b))}fetch(a){return this.#F({...a,cancelRefetch:a.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#v))}#F(a){this.#J();let b=this.#t.fetch(this.options,a);return a?.throwOnError||(b=b.catch(h.noop)),b}#K(){this.#H();let a=(0,h.resolveStaleTime)(this.options.staleTime,this.#t);if(c.environmentManager.isServer()||this.#v.isStale||!(0,h.isValidTimeout)(a))return;let b=(0,h.timeUntilStale)(this.#v.dataUpdatedAt,a);this.#B=i.timeoutManager.setTimeout(()=>{this.#v.isStale||this.updateResult()},b+1)}#L(){return("function"==typeof this.options.refetchInterval?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#M(a){this.#I(),this.#D=a,!c.environmentManager.isServer()&&!1!==(0,h.resolveQueryBoolean)(this.options.enabled,this.#t)&&(0,h.isValidTimeout)(this.#D)&&0!==this.#D&&(this.#C=i.timeoutManager.setInterval(()=>{(this.options.refetchIntervalInBackground||b.focusManager.isFocused())&&this.#F()},this.#D))}#G(){this.#K(),this.#M(this.#L())}#H(){void 0!==this.#B&&(i.timeoutManager.clearTimeout(this.#B),this.#B=void 0)}#I(){void 0!==this.#C&&(i.timeoutManager.clearInterval(this.#C),this.#C=void 0)}createResult(a,b){let c,d=this.#t,f=this.options,i=this.#v,j=this.#w,l=this.#x,o=a!==d?a.state:this.#u,{state:p}=a,q={...p},r=!1;if(b._optimisticResults){let c=this.hasListeners(),g=!c&&k(a,b),h=c&&m(a,d,b,f);(g||h)&&(q={...q,...(0,e.fetchState)(p.data,a.options)}),"isRestoring"===b._optimisticResults&&(q.fetchStatus="idle")}let{error:s,errorUpdatedAt:t,status:u}=q;c=q.data;let v=!1;if(void 0!==b.placeholderData&&void 0===c&&"pending"===u){let a;i?.isPlaceholderData&&b.placeholderData===l?.placeholderData?(a=i.data,v=!0):a="function"==typeof b.placeholderData?b.placeholderData(this.#A?.state.data,this.#A):b.placeholderData,void 0!==a&&(u="success",c=(0,h.replaceData)(i?.data,a,b),r=!0)}if(b.select&&void 0!==c&&!v)if(i&&c===j?.data&&b.select===this.#y)c=this.#z;else try{this.#y=b.select,c=b.select(c),c=(0,h.replaceData)(i?.data,c,b),this.#z=c,this.#r=null}catch(a){this.#r=a}this.#r&&(s=this.#r,c=this.#z,t=Date.now(),u="error");let w="fetching"===q.fetchStatus,x="pending"===u,y="error"===u,z=x&&w,A=void 0!==c,B={status:u,fetchStatus:q.fetchStatus,isPending:x,isSuccess:"success"===u,isError:y,isInitialLoading:z,isLoading:z,data:c,dataUpdatedAt:q.dataUpdatedAt,error:s,errorUpdatedAt:t,failureCount:q.fetchFailureCount,failureReason:q.fetchFailureReason,errorUpdateCount:q.errorUpdateCount,isFetched:a.isFetched(),isFetchedAfterMount:q.dataUpdateCount>o.dataUpdateCount||q.errorUpdateCount>o.errorUpdateCount,isFetching:w,isRefetching:w&&!x,isLoadingError:y&&!A,isPaused:"paused"===q.fetchStatus,isPlaceholderData:r,isRefetchError:y&&A,isStale:n(a,b),refetch:this.refetch,promise:this.#s,isEnabled:!1!==(0,h.resolveQueryBoolean)(b.enabled,a)};if(this.options.experimental_prefetchInRender){let b=void 0!==B.data,c="error"===B.status&&!b,e=a=>{c?a.reject(B.error):b&&a.resolve(B.data)},f=()=>{e(this.#s=B.promise=(0,g.pendingThenable)())},h=this.#s;switch(h.status){case"pending":a.queryHash===d.queryHash&&e(h);break;case"fulfilled":(c||B.data!==h.value)&&f();break;case"rejected":c&&B.error===h.reason||f()}}return B}updateResult(){let a=this.#v,b=this.createResult(this.#t,this.options);if(this.#w=this.#t.state,this.#x=this.options,void 0!==this.#w.data&&(this.#A=this.#t),(0,h.shallowEqualObjects)(b,a))return;this.#v=b;let c=()=>{if(!a)return!0;let{notifyOnChangeProps:b}=this.options,c="function"==typeof b?b():b;if("all"===c||!c&&!this.#E.size)return!0;let d=new Set(c??this.#E);return this.options.throwOnError&&d.add("error"),Object.keys(this.#v).some(b=>this.#v[b]!==a[b]&&d.has(b))};this.#N({listeners:c()})}#J(){let a=this.#l.getQueryCache().build(this.#l,this.options);if(a===this.#t)return;let b=this.#t;this.#t=a,this.#u=a.state,this.hasListeners()&&(b?.removeObserver(this),a.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#G()}#N(a){d.notifyManager.batch(()=>{a.listeners&&this.listeners.forEach(a=>{a(this.#v)}),this.#l.getQueryCache().notify({query:this.#t,type:"observerResultsUpdated"})})}};function k(a,b){return!1!==(0,h.resolveQueryBoolean)(b.enabled,a)&&void 0===a.state.data&&("error"!==a.state.status||!1!==(0,h.resolveQueryBoolean)(b.retryOnMount,a))||void 0!==a.state.data&&l(a,b,b.refetchOnMount)}function l(a,b,c){if(!1!==(0,h.resolveQueryBoolean)(b.enabled,a)&&"static"!==(0,h.resolveStaleTime)(b.staleTime,a)){let d="function"==typeof c?c(a):c;return"always"===d||!1!==d&&n(a,b)}return!1}function m(a,b,c,d){return(a!==b||!1===(0,h.resolveQueryBoolean)(d.enabled,a))&&(!c.suspense||"error"!==a.state.status)&&n(a,c)}function n(a,b){return!1!==(0,h.resolveQueryBoolean)(b.enabled,a)&&a.isStaleByTime((0,h.resolveStaleTime)(b.staleTime,a))}a.s(["QueryObserver",0,j])},33217,49651,a=>{"use strict";let b;var c=a.i(41579),d=a.i(72131),e=a.i(77048),f=a.i(42871),g=a.i(18544),h=a.i(37927);a.i(87924);var i=d.createContext((b=!1,{clearReset:()=>{b=!1},reset:()=>{b=!0},isReset:()=>b})),j=(a,b,c)=>{let d=c?.state.error&&"function"==typeof a.throwOnError?(0,f.shouldThrowError)(a.throwOnError,[c.state.error,c]):a.throwOnError;(a.suspense||a.experimental_prefetchInRender||d)&&!b.isReset()&&(a.retryOnMount=!1)},k=a=>{d.useEffect(()=>{a.clearReset()},[a])},l=({result:a,errorResetBoundary:b,throwOnError:c,query:d,suspense:e})=>a.isError&&!b.isReset()&&!a.isFetching&&d&&(e&&void 0===a.data||(0,f.shouldThrowError)(c,[a.error,d])),m=d.createContext(!1);m.Provider;var n=a=>{if(a.suspense){let b=a=>"static"===a?a:Math.max(a??1e3,1e3),c=a.staleTime;a.staleTime="function"==typeof c?(...a)=>b(c(...a)):b(c),"number"==typeof a.gcTime&&(a.gcTime=Math.max(a.gcTime,1e3))}},o=(a,b)=>a?.suspense&&b.isPending,p=(a,b,c)=>b.fetchOptimistic(a).catch(()=>{c.clearReset()});a.s(["useQuery",0,function(a,b){return function(a,b,c){let q=d.useContext(m),r=d.useContext(i),s=(0,h.useQueryClient)(c),t=s.defaultQueryOptions(a);s.getDefaultOptions().queries?._experimental_beforeQuery?.(t);let u=s.getQueryCache().get(t.queryHash),v=!1!==a.subscribed;t._optimisticResults=q?"isRestoring":v?"optimistic":void 0,n(t),j(t,r,u),k(r);let w=!s.getQueryCache().get(t.queryHash),[x]=d.useState(()=>new b(s,t)),y=x.getOptimisticResult(t),z=!q&&v;if(d.useSyncExternalStore(d.useCallback(a=>{let b=z?x.subscribe(g.notifyManager.batchCalls(a)):f.noop;return x.updateResult(),b},[x,z]),()=>x.getCurrentResult(),()=>x.getCurrentResult()),d.useEffect(()=>{x.setOptions(t)},[t,x]),o(t,y))throw p(t,x,r);if(l({result:y,errorResetBoundary:r,throwOnError:t.throwOnError,query:u,suspense:t.suspense}))throw y.error;if(s.getDefaultOptions().queries?._experimental_afterQuery?.(t,y),t.experimental_prefetchInRender&&!e.environmentManager.isServer()&&y.isLoading&&y.isFetching&&!q){let a=w?p(t,x,r):u?.promise;a?.catch(f.noop).finally(()=>{x.updateResult()})}return t.notifyOnChangeProps?y:x.trackResult(y)}(a,c.QueryObserver,b)}],33217);var q=a.i(33791);function r(a,b){let c=new Set(b);return a.filter(a=>!c.has(a))}var s=class extends q.Subscribable{#l;#O;#P;#Q;#R;#S;#T;#U;#V;#W=[];constructor(a,b,c){super(),this.#l=a,this.#Q=c,this.#P=[],this.#R=[],this.#O=[],this.setQueries(b)}onSubscribe(){1===this.listeners.size&&this.#R.forEach(a=>{a.subscribe(b=>{this.#X(a,b)})})}onUnsubscribe(){this.listeners.size||this.destroy()}destroy(){this.listeners=new Set,this.#R.forEach(a=>{a.destroy()})}setQueries(a,b){this.#P=a,this.#Q=b,g.notifyManager.batch(()=>{let a=this.#R,b=this.#Y(this.#P);b.forEach(a=>a.observer.setOptions(a.defaultedQueryOptions));let c=b.map(a=>a.observer),d=c.map(a=>a.getCurrentResult()),e=a.length!==c.length,g=c.some((b,c)=>b!==a[c]),h=e||g,i=!!h||d.some((a,b)=>{let c=this.#O[b];return!c||!(0,f.shallowEqualObjects)(a,c)});(h||i)&&(h&&(this.#W=b,this.#R=c),this.#O=d,this.hasListeners()&&(h&&(r(a,c).forEach(a=>{a.destroy()}),r(c,a).forEach(a=>{a.subscribe(b=>{this.#X(a,b)})})),this.#N()))})}getCurrentResult(){return this.#O}getQueries(){return this.#R.map(a=>a.getCurrentQuery())}getObservers(){return this.#R}getOptimisticResult(a,b){let c=this.#Y(a),d=c.map(a=>a.observer.getOptimisticResult(a.defaultedQueryOptions)),e=c.map(a=>a.defaultedQueryOptions.queryHash);return[d,a=>this.#Z(a??d,b,e),()=>this.#$(d,c)]}#$(a,b){return b.map((c,d)=>{let e=a[d];return c.defaultedQueryOptions.notifyOnChangeProps?e:c.observer.trackResult(e,a=>{b.forEach(b=>{b.observer.trackProp(a)})})})}#Z(a,b,c){if(b){let d=this.#V,e=void 0!==c&&void 0!==d&&(d.length!==c.length||c.some((a,b)=>a!==d[b]));return(!this.#S||this.#O!==this.#U||e||b!==this.#T)&&(this.#T=b,this.#U=this.#O,void 0!==c&&(this.#V=c),this.#S=(0,f.replaceEqualDeep)(this.#S,b(a))),this.#S}return a}#_(){return this.#Q?.combine!==void 0&&this.#R.some((a,b)=>a.options.suspense&&this.#O[b]?.data===void 0)}#Y(a){let b=new Map;this.#R.forEach(a=>{let c=a.options.queryHash;if(!c)return;let d=b.get(c);d?d.push(a):b.set(c,[a])});let d=[];return a.forEach(a=>{let e=this.#l.defaultQueryOptions(a),f=b.get(e.queryHash)?.shift()??new c.QueryObserver(this.#l,e);d.push({defaultedQueryOptions:e,observer:f})}),d}#X(a,b){let c=this.#R.indexOf(a);if(-1!==c){var d;let a;this.#O=(d=this.#O,(a=d.slice(0))[c]=b,a),this.#N()}}#N(){if(this.hasListeners()){let a=this.#$(this.#O,this.#W),b=this.#_(),c=this.#S,d=b?c:this.#Z(a,this.#Q?.combine);(b||c!==d)&&g.notifyManager.batch(()=>{this.listeners.forEach(a=>{a(this.#O)})})}}};a.s(["useQueries",0,function({queries:a,...b},e){let q=(0,h.useQueryClient)(e),r=d.useContext(m),t=d.useContext(i),u=d.useMemo(()=>a.map(a=>{let b=q.defaultQueryOptions(a);return b._optimisticResults=r?"isRestoring":"optimistic",b}),[a,q,r]);u.forEach(a=>{n(a);let b=q.getQueryCache().get(a.queryHash);j(a,t,b)}),k(t);let[v]=d.useState(()=>new s(q,u,b)),[w,x,y]=v.getOptimisticResult(u,b.combine),z=!r&&!1!==b.subscribed;d.useSyncExternalStore(d.useCallback(a=>z?v.subscribe(g.notifyManager.batchCalls(a)):f.noop,[v,z]),()=>v.getCurrentResult(),()=>v.getCurrentResult()),d.useEffect(()=>{v.setQueries(u,b)},[u,b,v]);let A=w.some((a,b)=>o(u[b],a))?w.flatMap((a,b)=>{let d=u[b];if(d&&o(d,a)){let a=new c.QueryObserver(q,d);return p(d,a,t)}return[]}):[];if(A.length>0)throw Promise.all(A);let B=w.find((a,b)=>{let c=u[b];return c&&l({result:a,errorResetBoundary:t,throwOnError:c.throwOnError,query:q.getQueryCache().get(c.queryHash),suspense:c.suspense})});if(B?.error)throw B.error;return x(y())}],49651)},76645,a=>{"use strict";var b=a.i(72131),c=a.i(33217),d=a.i(49651),e=a.i(82717);let f={tasks:["tasks"],sessions:["sessions"],missions:["missions"],health:["health"],config:["config"],sessionSignals:["session-signals"],hermesStatus:["hermes-status"],advisorStatus:["advisor-status"]},g=()=>{let{data:a}=(0,c.useQuery)({queryKey:f.sessionSignals,queryFn:()=>({}),staleTime:1/0,initialData:{}});return a},h=a=>(0,c.useQuery)({queryKey:null==a?f.tasks:["tasks",a],queryFn:()=>e.orcaClient.tasks(a),refetchInterval:5e3}),i=()=>(0,c.useQuery)({queryKey:["tasks","deps"],queryFn:e.orcaClient.allDeps}),j=a=>(0,c.useQuery)({queryKey:["activity",a??"all"],queryFn:()=>e.orcaClient.activity(a?{type:a}:void 0),refetchInterval:5e3});a.s(["QUERY_KEYS",0,f,"useActivity",0,j,"useAdvisorStatus",0,()=>(0,c.useQuery)({queryKey:f.advisorStatus,queryFn:e.orcaClient.advisorStatus,refetchInterval:5e3}),"useAllDeps",0,i,"useCliStatus",0,()=>(0,c.useQuery)({queryKey:["cli-status"],queryFn:e.orcaClient.cliStatus,refetchInterval:3e4,retry:!1}),"useConfig",0,()=>(0,c.useQuery)({queryKey:f.config,queryFn:e.orcaClient.getConfig}),"useEscalations",0,()=>{let a=j("review"),c=h(),d=i();return(0,b.useMemo)(()=>(function(a,b,c){let d=new Map(b.map(a=>[a.id,a])),e=new Set,f=[];for(let b of a){if("review"!==b.type||!b.detail.startsWith("escalated")||e.has(b.target))continue;e.add(b.target);let a=d.get(b.target),g=c.filter(a=>a.depends_on_id===b.target).map(a=>d.get(a.task_id)).filter(a=>!!a&&"blocked"===a.status);(0!==g.length||a?.status==="blocked")&&f.push({taskId:b.target,title:a?.title||b.label||b.target,rationale:b.detail.replace(/^escalated:\s*/,""),ts:b.ts,epicId:a?.parent_id??null,blocked:g})}return f})(a.data??[],c.data??[],d.data??[]),[a.data,c.data,d.data])},"useHealth",0,()=>(0,c.useQuery)({queryKey:f.health,queryFn:e.orcaClient.health,refetchInterval:1e4}),"useHermesStatus",0,a=>(0,c.useQuery)({queryKey:a?["hermes-status",a]:f.hermesStatus,queryFn:()=>e.orcaClient.hermesStatus(a),retry:!1}),"useMe",0,()=>(0,c.useQuery)({queryKey:["me"],queryFn:e.orcaClient.me,staleTime:3e5}),"useMissions",0,()=>(0,c.useQuery)({queryKey:f.missions,queryFn:e.orcaClient.missions}),"usePlanJob",0,function(a){return(0,c.useQuery)({queryKey:["plan-job",a],queryFn:()=>e.orcaClient.getPlanJob(a),enabled:!!a,refetchInterval:a=>a.state.data?.status==="planning"&&1e3})},"useProjectChanged",0,a=>(0,c.useQuery)({queryKey:["project-changed",a],queryFn:()=>e.orcaClient.projectChanged(a),enabled:!!a}),"useProjectChanges",0,(a,b)=>(0,c.useQuery)({queryKey:["project-changes",a],queryFn:()=>e.orcaClient.projectChanges(a),enabled:!!a&&b}),"useProjectCommit",0,(a,b)=>(0,c.useQuery)({queryKey:["project-commit",a,b],queryFn:()=>e.orcaClient.projectCommit(a,b),enabled:!!a&&!!b}),"useProjectCommitFileDiff",0,(a,b,d)=>(0,c.useQuery)({queryKey:["project-commit-file",a,b,d],queryFn:()=>e.orcaClient.projectCommitFileDiff(a,b,d),enabled:!!a&&!!b&&!!d}),"useProjectFile",0,(a,b)=>(0,c.useQuery)({queryKey:["project-file",a,b],queryFn:()=>e.orcaClient.projectFile(a,b),enabled:!!a&&!!b}),"useProjectFileAtHead",0,(a,b,d)=>(0,c.useQuery)({queryKey:["project-head",a,b],queryFn:()=>e.orcaClient.projectFileAtHead(a,b),enabled:!!a&&!!b&&d}),"useProjectFiles",0,a=>(0,c.useQuery)({queryKey:["project-files",a],queryFn:()=>e.orcaClient.projectFiles(a),enabled:!!a}),"useProjectGit",0,a=>(0,c.useQuery)({queryKey:["project-git",a],queryFn:()=>e.orcaClient.projectGit(a),enabled:!!a}),"useProjects",0,()=>(0,c.useQuery)({queryKey:["projects"],queryFn:e.orcaClient.projects}),"useProjectsCommits",0,(a,b)=>(0,d.useQueries)({queries:a.map(a=>({queryKey:["project-commits",a],queryFn:()=>e.orcaClient.projectCommits(a,40),refetchInterval:15e3})),combine:c=>{let d=Date.now()-36e5*b;return{commits:c.flatMap((b,c)=>(b.data?.commits??[]).map(b=>({...b,projectId:a[c]}))).filter(a=>a.timestamp>=d).sort((a,b)=>b.timestamp-a.timestamp),isLoading:c.some(a=>a.isLoading)}}}),"useSessionInfos",0,()=>(0,c.useQuery)({queryKey:f.sessions,queryFn:e.orcaClient.sessions,refetchInterval:5e3}),"useSessionSignal",0,a=>g()[a],"useSessionSignals",0,g,"useSessions",0,()=>(0,c.useQuery)({queryKey:f.sessions,queryFn:e.orcaClient.sessions,refetchInterval:5e3,select:a=>a.map(a=>a.name)}),"useTaskUsage",0,(a,b=!1)=>(0,c.useQuery)({queryKey:["task-usage",a],queryFn:()=>e.orcaClient.taskUsage(a),enabled:!!a,refetchInterval:!!b&&5e3,staleTime:3e5*!b}),"useTasks",0,h,"useUserProjects",0,(a,b=!0)=>(0,c.useQuery)({queryKey:["user-projects",a],queryFn:()=>e.orcaClient.userProjects(a),enabled:!!a&&b}),"useUsers",0,()=>(0,c.useQuery)({queryKey:["users"],queryFn:e.orcaClient.listUsers})],76645)},28130,29457,a=>{"use strict";var b=a.i(87924),c=a.i(72131);let d={en:{nav:{operate:"Operate",config:"Administration",dash:"Dash",tasks:"Tasks",kanban:"Kanban",timeline:"Timeline",escalations:"Escalations",sessions:"Sessions",missions:"Missions",settings:"Settings",projects:"Projects",users:"Users"},page:{dashboard:"Dashboard",tasks:"Tasks",kanban:"Kanban",timeline:"Timeline",sessions:"Sessions",missions:"Missions",settings:"Settings",projects:"Projects",users:"Users"},common:{daemon:"daemon",daemonUp:"daemon up",daemonDown:"daemon down",daemonReady:"Ready",daemonBusy:"Busy",daemonOffline:"Offline",nextReady:"Next ready",escalationsWaiting:"Escalations waiting: {count}",daemonUnreachable:"orca daemon unreachable",toggleSidebar:"Toggle sidebar",cancel:"Cancel",save:"Save",delete:"Delete",retry:"Retry",edit:"Edit",close:"Close",live:"Live",goTo:"Go to",searchCommands:"Search commands…",noCommands:"No commands",dismiss:"Dismiss",loading:"Loading",help:"Help",actions:"Actions",success:"Success",error:"Error",send:"Send",kill:"Kill",sendKeys:"send keys…",appName:"Orca",primaryNav:"Primary",switchLang:"Switch language"},providers:{claudeCode:"Claude Code",opencode:"OpenCode",codex:"Codex"},auth:{signIn:"Sign in",usernamePlaceholder:"Username",passwordPlaceholder:"Password"},tasks:{newTask:"New task",searchPlaceholder:"Search tasks…",filterAll:"All",filterAllProjects:"All projects",filterProjectsAria:"Project filter",filterOpen:"Open",filterActive:"Active",filterBlocked:"Blocked",filterClosed:"Closed",filterAutopilot:"Autopilot",empty:"No tasks",emptyDescription:"Create one to get started.",noMatches:"No matches",noMatchesDescription:"Try a different search or filter.",nSelected:"{count} selected",clearSelection:"Clear selection",confirmBulkDeleteTitle:"Delete {count} tasks?",confirmBulkDeleteDescription:"This permanently removes the selected tasks.",noDetails:"No details yet — click to add context for the agent.",launch:"Launch",start:"Start",stop:"Stop",pause:"Pause",approveContinue:"Approve & continue",approved:"Approved — phase {id} continues",rerun:"Re-run",rerunning:"Re-running phase {id}",stopped:"Stopped {id}",deleteOrClose:"Delete or close",closeArchive:"Close (archive)",deletePermanently:"Delete permanently",confirmDeleteTitle:"Delete {id}?",confirmDeleteDescription:"This permanently removes the task and its dependency links.",deleteMission:"Delete mission",epicActions:"Mission actions",confirmDeleteMissionTitle:"Delete mission {id}?",confirmDeleteMissionDescription:"This permanently removes the whole mission — the epic and all of its phase tasks — and cannot be undone. It does not touch any files on disk.",missionDeleted:"Mission {id} deleted",defaultExecutor:"Default (fallback)",newTitle:"New task",editTitle:"Edit {id}",singleTask:"Single task",autopilotPlanning:"Autopilot · Planning",singleTaskDesc:"Create one task and optionally launch a single agent on it.",autopilotPlanningDesc:"The Pilot breaks your goal into ordered phases, names an agent for each, and can run them autonomously.",fieldTitle:"Title",titlePlaceholder:"What needs doing?",fieldDetails:"Details",detailsHint:"Context handed to the agent — what to build, constraints, acceptance.",detailsPlaceholder:"Describe the task so the agent knows exactly what to do…",fieldType:"Type",fieldPriority:"Priority",fieldExecutor:"Executor",fieldProject:"Project",fieldProjectHint:"Which project the agent runs in.",fieldSchedule:"Schedule",scheduleHint:"Optional — set a date and time for this task.",autostart:"Run automatically at the scheduled time",autostartHint:"When off, the schedule is just a due date — you launch it yourself.",scheduleConflict:"Close to {title} — both scheduled within ~10 min, expect heavier load.",fieldDependsOn:"Depends on",dependsOnHint:"This task waits until the selected tasks are closed.",launchImmediately:"Launch a session immediately",createAndLaunch:"Create & launch",create:"Create",fieldGoal:"Goal",goalHint:"The model breaks this into ordered phases.",goalPlaceholder:"Describe the goal to plan…",fieldAutonomy:"Autonomy",fieldMaxSessions:"Max sessions",autoModelLabel:"Autopilot picks the model",autoModelHint:"Autopilot chooses the best model per phase from the model descriptions in Settings.",startAutopilot:"Start autopilot now (engage mission)",manualPhases:"Phases (manual)",removePhase:"Remove phase",addPhase:"Add phase",createPlan:"Create plan",planning:"Planning…",plannerPreview:"Planner at work",generatePlan:"Generate plan",createdEpic:"Created epic {id} with {count} phases{m}",done:"Done",updated:"Updated {id}",createdAndLaunched:"Created & launched {title}",created:"Created {title}",statusOpen:"Open",statusInProgress:"In progress",statusBlocked:"Blocked",statusClosed:"Closed",statusCancelled:"Cancelled",planCreated:"Plan created — {count} phases{m}",planFailed:"Planning failed",autopilotKeyMissing:"Autopilot key not set — add phases manually",autopilotStarted:" · autopilot started",autopilotEngaged:" — autopilot engaged.",addAtLeastOnePhase:"Add at least one phase",phasePlaceholder:"Phase {n}",launched:"Launched {session}",closed:"Closed {id}",deleted:"Deleted {id}",nClosed:"{count} closed",nDeleted:"{count} deleted",typeTask:"Task",typeBug:"Bug",typeFeature:"Feature",typeEpic:"Epic",typeChore:"Chore",resultTitle:"Result",missionSummaryTitle:"Mission summary",liveOutput:"Live output",recentActivity:"Recent activity",dependencies:"Dependencies",selectHint:"Select a task to see its details.",backToFlow:"Back to mission graph",openTerminal:"Open terminal",expandPhases:"Expand phases",collapsePhases:"Collapse phases",phasesLabel:"phases",outcomeOk:"Success",outcomeFail:"Failed",noSummary:"Closed without a summary.",scheduledBadge:"Auto",dayToday:"Today",dayYesterday:"Yesterday",pageRange:"{from}–{to} of {total}",prevPage:"Previous",nextPage:"Next",copyId:"Copy ID",idCopied:"Copied {id}",idCopyFailed:"Copy failed",resultsTitle:"Task result",resultExecutor:"Executor",resultAgent:"Agent",resultFinished:"Finished",resultDuration:"Duration"},usage:{input:"input",output:"output",cache:"cache",cost:"cost",inputTokens:"Input tokens",outputTokens:"Output tokens"},missions:{newMission:"New mission",paused:"paused",capacityUsed:"{running}/{max} sessions",resume:"Resume",pause:"Pause",disengage:"Disengage mission",empty:"No active missions",engage:"Engage",noTasks:"No tasks in this mission",statePaused:"Paused",resumed:"Resumed mission",pausedMsg:"Paused mission",disengaged:"Disengaged mission",engaged:"Engaged mission on {epicId}",stateActive:"Active",stateStalled:"Needs attention",stateDisengaged:"Disengaged",autonomyL0:"L0 · Recommend",autonomyL0Desc:"The Pilot only plans and proposes. Nothing runs until you approve it.",autonomyL1:"L1 · Assist",autonomyL1Desc:"The Pilot runs only clear, safe steps on its own. Anything uncertain or sensitive waits for your approval.",autonomyL2:"L2 · Pilot",autonomyL2Desc:"The Pilot runs work and clears agent permission prompts itself. Ambiguous or risky situations are escalated to you.",autonomyL3:"L3 · Auto",autonomyL3Desc:"Full autonomy. The Pilot runs and clears everything itself, reaching out only when it genuinely cannot decide.",addPhase:"Add phase",addPhaseModalTitle:"Add phase — {epic}",addPhaseModalDesc:"Insert new phases after the current chain. An active mission picks up the next ready phase on the next tick.",addPhaseModeManual:"Manual",addPhaseModeReplan:"Replan",addPhaseManualDesc:"Write each phase and its type. No key required.",addPhaseReplanDesc:"Describe the residual goal — the planner decomposes it into phases.",addPhaseFieldExecutor:"Executor",addPhaseFieldGoal:"Residual goal",addPhaseGoalHint:"What remains to be done; the planner splits it into phases.",addPhaseGoalPlaceholder:"Describe what is left to do…",addPhaseInsert:"Insert phases",addPhaseInserted:"Inserted {count} phase{s} into {epicId}",addPhaseAtLeastOne:"Add at least one phase",addPhaseGoalRequired:"Enter a goal to replan"},sidebar:{liveAgents:"{count} live agents",lastOutcome:"Last: {title}",stuckAgents:"{count} stuck agents",notifications:"Notifications",noNotifications:"No agents waiting for approval.",escalations:"Escalations ({count})"},escalations:{title:"Escalations",empty:"No escalations",emptyDesc:"The overseer has not sent back any phase yet. When it rejects one, it shows up here to resolve.",rationale:"Overseer’s reason",noReason:"No reason given.",blockedBy:"Waiting on this",approve:"Approve & continue",rerun:"Re-run phase",approved:"Approved — mission continues",rerunning:"Re-running the phase",actionError:"Action failed"},agent:{working:"Working",needsInput:"Needs input",idle:"Idle",complete:"Complete",ready:"Ready",waitingFor:"Waiting for {deps}",stalled:"Silent {min}m",stuck:"Stuck {min}m"},advisor:{title:"Advisor",open:"Open advisor",close:"Close",pickAgent:"Pick an agent for your advisor:",start:"Start advisor",starting:"Starting…",stop:"Stop",restart:"Restart",running:"Running",idle:"Idle",started:"Advisor started",stopped:"Advisor stopped",noExecs:"You have no agent enabled. Ask an admin to allow one for you.",hint:"Type directly into the terminal — all keys work."},sessions:{needsInput:"needs input",loading:"loading…",noOutput:"— no output —",allow:"Allow ⏎",reject:"Reject ⎋",terminal:"Terminal",interrupt:"Interrupt",kill:"Kill session",empty:"No live sessions",emptyDescription:"Launch a task to spawn one.",emptyAction:"Go to Tasks",terminalTitle:"Terminal — {name}",online:"online",roleOverseer:"Autopilot",rolePilot:"Planner",filterAll:"All",filterNeedsInput:"Needs input",noNeedsInput:"No agent is waiting for input.",comfortable:"Comfortable",compact:"Compact",approved:"Approved {name}",rejected:"Rejected on {name}",answered:"Answered {name}: {option}",sentTo:"Sent to {name}",interrupted:"Interrupted {name}",killed:"Killed {name}",typeHint:"Type directly into the terminal — all keys work.",selectLabel:"Select {id}"},kanban:{board:"Board",calendar:"Calendar",columnOpen:"Open",columnInProgress:"In progress",columnBlocked:"Blocked",columnClosed:"Closed",columnCancelled:"Cancelled",blockedDeps:"Blocked by unfinished dependencies",trueStatusTooltip:"True status: {status}"},calendar:{day:"Day",week:"Week",month:"Month",today:"Today",previous:"Previous",next:"Next",noTasks:"No scheduled tasks this day.",nMore:"+{count} more",unscheduled:"{count} unscheduled task{s} — set a schedule to place them here.",shortMon:"Mon",shortTue:"Tue",shortWed:"Wed",shortThu:"Thu",shortFri:"Fri",shortSat:"Sat",shortSun:"Sun"},timeline:{activityWeek:"Activity / last week",activityDays:"Activity / last {n} days",activityHours:"Activity / last {n}h",loadError:"Failed to load activity",empty:"No activity yet",emptyDescription:"Events from the last 12 hours appear here.",filterAll:"All",filterTasks:"Tasks",filterMissions:"Missions",filterSignals:"Signals",filterReviews:"Reviews",axis:"Axis",lanes:"Lanes",approved:"Approved",escalated:"Escalated",changedFiles:"Changed files",workingDiff:"Working changes",noChanges:"No working-tree changes",openTask:"Open task",markerHint:"Click an event for details and repo changes",changesOverTime:"Changes over time",mostActiveFiles:"Most active files",noChangesInWindow:"No commits in this window"},review:{escalated:"Overseer rejected a phase: {reason}",noReason:"no reason given"},dashboard:{viewAll:"View all",needsAttentionTitle:"Needs attention",recentOutcomes:"Recent outcomes",now:"Now",nothingRunning:"Nothing running — start a task or engage a mission.",open:"Open",inProgress:"In progress",blocked:"Blocked",liveSessions:"Live sessions",activeMissions:"Active missions",autopilotSpotlight:"Autopilot spotlight",autopilotSpotlightDesc:"Every active mission in one row: current phase, progress, and capacity.",noActiveMissions:"No active missions.",ofTotal:"of {count} total",titleCol:"Title",statusCol:"Status",epicCol:"Epic",progressCol:"Progress",stateCol:"State"},settings:{models:"Models",autopilot:"Autopilot",providers:"Providers",defaults:"Defaults",hermes:"Hermes",data:"Data",dangerZone:"Danger zone",cleanupDesc:"Delete all tasks, missions and the timeline (activity), and stop every running agent session. Projects, users and settings are kept. This cannot be undone.",cleanupButton:"Delete all data",cleanupConfirmTitle:"Delete all data?",cleanupConfirmDesc:"All tasks, missions and activity will be permanently removed and running sessions stopped. Projects, users and settings are kept.",cleanupDone:"Cleaned up — removed {tasks} tasks and {missions} missions.",sectionsNav:"Settings sections",adminOnly:"Administrators only",adminOnlyDesc:"This section is reserved for admins. Edit your own profile in My account.",saveAutopilot:"Save autopilot",saveProviders:"Save providers",saveDefaults:"Save defaults",addModel:"Add model",add:"Add",save:"Save",cancel:"Cancel",testPlan:"Test plan",planning:"Planning…",planFailed:"Planning failed",deleteModel:"Delete model",deleteModelDesc:"Remove {label} ({exec}) from your models? Save models to persist this change.",providersDesc:"Where each agent CLI lives and any extra flags passed when orca spawns it. Leave the binary as-is to use it from $PATH.",plannerModel:"Planner model",plannerModelDesc:"LLM that decomposes a goal into phases",overseerModel:"Overseer model",overseerModelDesc:"LLM that judges agent prompts (blank = same as planner)",backendMode:"How autopilot reasons",backendModeHelp:"Pick one mode — either via an API key, or via local CLI tools.",modeRelay:"API Key",modeRelayDesc:"The planner and overseer run as models via an API key — fast and cheap, but repo-blind.",modeAgents:"CLI Tools",modeAgentsDesc:"The planner and overseer run as CLI tools inside the repository — they read the code, but must be installed.",reviewOnDone:"Review on phase completion",reviewOnDoneHint:"After a phase closes, the overseer judges the result; if it rejects, the next phase is blocked.",relayOption:"Relay (model via API)",apiUrl:"OpenAI API URL",apiUrlDesc:"OpenAI-compatible endpoint",apiKey:"API key",apiKeyDesc:"A key is set — leave blank to keep",notes:"Notes",notesDesc:"Guidance the autopilot follows",plannerPrompt:"Planner prompt",binary:"Binary",extraArgs:"Extra args",executor:"Executor",executorDesc:"Default agent for new launches",autonomy:"Autonomy",autonomyDesc:"Default mission autonomy level",maxSessions:"Max sessions",maxSessionsDesc:"Concurrent agents per mission",tokenTtl:"Login token validity",tokenTtlDesc:"How many days a login token stays valid before it expires (forces re-login)",editLabel:"Edit {exec}",deleteLabel:"Delete {exec}",labelLabel:"Label",execLabel:"Exec",addModelTitle:"Add model",editModelTitle:"Edit model",fieldProvider:"Runs via",providerHint:"Which agent runner executes this model.",providerOther:"Other",fieldModelId:"Model ID",modelIdHint:"The model name as the runner expects it.",modelIdPlaceholder:"e.g. sonnet, gpt-5.4, deepseek-v4-flash",execResolvesTo:"Resolves to",execDuplicate:"A model with this exec already exists.",presetTag:"preset",setApiKeyFirst:"Set the autopilot API key first",modelsSaved:"Models saved",modelNoteLabel:"Model description",modelNoteHint:"What the model is best at — coding, planning, fast and cheap… Autopilot uses these descriptions to pick a model per task.",modelNotePlaceholder:"e.g. Strong at refactoring and hard tasks; slower and pricier.",modelNoteEdit:"Edit description",modelNoteAdd:"Add description",autopilotSaved:"Autopilot saved",providersSaved:"Providers saved",defaultsSaved:"Defaults saved",modelPlaceholder:"My Model",execPlaceholder:"provider/model-name",plannerPlaceholder:"claude-opus-4-8",overseerPlaceholder:"gpt-4o-mini (cheaper)",apiKeyNotSetDesc:"Stored server-side, never returned",apiKeySetPlaceholder:"•••• set",apiKeyPlaceholder:"paste key",sampleGoalPlaceholder:"A sample goal to test this prompt…",plannerPromptHelp:"Template the Pilot uses to decompose a goal into phases. Use the {{goal}} placeholder — it is replaced with the goal you enter. The model must return a JSON array of {title, type, agent} objects.",hermesDesc:"Install the bundled orca plugin into a same-host Hermes instance. It gives the Hermes agent tools to fully manage orca — spawn tasks, launch sessions, close work, and read state.",hermesHome:"Hermes home",hermesUrl:"orca URL",hermesToken:"orca token",hermesInstall:"Install plugin",hermesInstalling:"Installing…",hermesStatusInstalled:"installed",hermesStatusNotInstalled:"not installed",hermesStatusEnabled:"enabled",hermesStatusDisabled:"disabled",hermesStatusLine:"Plugin status",hermesRestartNote:"Restart the Hermes gateway after installing for the plugin to load.",hermesInstalled:"Hermes plugin installed",hermesStatusError:"Hermes status unavailable"},projects:{newProject:"New project",loadError:"Failed to load projects",empty:"No projects",fieldSlug:"Slug",slugHint:"Short identifier, e.g. orca.",fieldPath:"Path",pathHint:"Absolute path to the project on disk.",fieldNotes:"Pilot info",notesHint:"Context the Pilot uses when planning for this project.",create:"Create",editProject:"Edit project",updated:"Project updated",removeProject:"Remove project",removeConfirmTitle:"Remove project",removeConfirmBody:'Project "{slug}" will be removed from orca — its tasks, missions and access grants. Files on disk are left untouched. This cannot be undone.',removeConfirmBtn:"Remove",removed:"Project removed",iconLabel:"Icon",iconHint:"An image from the project repo (e.g. a logo). Shown everywhere the project appears.",chooseIcon:"Choose icon",iconSearch:"Search image…",noImages:"No images in this project",iconSelect:"Select",iconRemove:"Remove icon",iconSet:"Icon set",iconRemoved:"Icon removed",iconMore:"Showing the first 300 images — narrow it with search.",slugImmutable:"The slug is fixed and cannot be changed.",git:"Git",gitError:"Failed to load git info",notGit:"Not a git repository",clean:"Clean",dirty:"{count} dirty",branches:"Branches",commits:"Commits",created:"Project created",slugPlaceholder:"my-project",pathPlaceholder:"~/projects/my-app",openEditor:"Open editor",editorTitle:"Code editor",tabEdit:"Edit",tabDiff:"Diff",noFiles:"No files",selectFile:"Select a file to edit",fileTooBig:"File is too large or binary to edit here.",noChanges:"No uncommitted changes in this file.",fileSaved:"Saved {path}",commitLabel:"Commit",viewCommit:"View this commit's changes",workingChanges:"Uncommitted changes",viewChanges:"View the uncommitted changes",tabPreview:"Preview",wordWrap:"Word wrap",fullscreen:"Fullscreen",exitFullscreen:"Exit fullscreen",toggleTree:"Files",ctxOpen:"Open",ctxNewFile:"New file",ctxNewFolder:"New folder",ctxRename:"Rename",ctxDuplicate:"Duplicate",ctxDelete:"Delete",ctxCopyPath:"Copy path",dlgNewFile:"New file",dlgNewFolder:"New folder",dlgRename:"Rename",dlgDuplicate:"Duplicate",dlgName:"Name",dlgDelete:"Delete item?",dlgDeleteMsg:"Really delete “{name}”? This cannot be undone.",fileCreated:"Created {path}",folderCreated:"Folder created {path}",renamed:"Renamed to {path}",duplicated:"Copied to {path}",deleted:"Deleted {path}",pathCopied:"Path copied"},users:{loadError:"Failed to load users",empty:"No users",emptyDescription:"Create the first account to get started.",fieldUsername:"Username",fieldCreated:"Created",fieldActions:"Actions",addUser:"Add user",newUser:"New user",create:"Create",add:"Add",delete:"Delete",lastUserHint:"The last user cannot be deleted.",session:"Session",logout:"Logout",userDeleted:"User deleted",userCreated:"User created",deleteLabel:"Delete {username}",projects:"Projects",admin:"Admin",member:"Member",makeAdmin:"Make admin",removeAdmin:"Remove admin",lastAdminHint:"The last admin cannot be demoted.",roleUpdated:"Role updated",models:"Models",allowedModels:"Allowed models",allModelsHint:"With none selected, the user may run any globally-allowed model.",modelsUpdated:"Allowed models saved",updateError:"Failed to save the change"},account:{title:"My account",name:"Name",email:"Email",uploadAvatar:"Upload avatar",defaultModel:"Default model",defaultModelHint:"Pre-filled for new tasks. Pick from the models you may run.",restrictedHint:"These models were allowed by your admin.",noModelLimit:"No limit — you can run any globally-allowed model.",save:"Save",saved:"Account saved",avatarSaved:"Avatar uploaded",saveError:"Save failed",password:"Password",passwordHint:"Change your sign-in password. The new password must be at least 8 characters.",currentPassword:"Current password",newPassword:"New password",confirmPassword:"Confirm new password",changePassword:"Change password",passwordChanged:"Password changed",passwordMismatch:"New passwords do not match",passwordTooShort:"New password must be at least 8 characters",passwordError:"Password change failed"},changes:{dirtyOne:"1 dirty",dirtyN:"{count} dirty",lastCommit:"last commit {relative} “{subject}”",none:"no recent changes"},onboarding:{title:"Welcome to Orca",subtitle:"Set up your environment to start orchestrating coding agents.",systemDeps:"System Dependencies",systemDepsDesc:"Required tools for running coding agents. Install missing ones before proceeding.",providers:"Provider Binaries",providersDesc:"Where each agent CLI lives. Leave as-is to use from $PATH.",autopilotKey:"Autopilot API Key",autopilotBackend:"Autopilot backend",autopilotBackendDesc:"How the planner and overseer reason — pick one mode.",agentsSet:"CLI agents configured",agentsNotSet:"Pick CLI agents",saveBackend:"Save backend",autopilotKeyDesc:"Required for the Planner to decompose goals into phases.",hermes:"Hermes Integration",hermesDesc:"Optionally install the orca plugin into a same-host Hermes instance.",users:"Users",usersDesc:"Manage who can access the orca dashboard.",addUser:"Add user",createUser:"Create user",installPlugin:"Install plugin",installing:"Installing…",saveProviders:"Save providers",saveKey:"Save key",keySet:"Key is set",keyNotSet:"Not set",statusInstalled:"installed",statusNotInstalled:"not installed",statusEnabled:"enabled",statusDisabled:"disabled",statusUnknown:"unknown",noUsers:"No users yet. Create the first one.",goToDashboard:"Go to Dashboard",setupComplete:"Setup Complete!",setupIncomplete:"Complete the steps above to finish setup.",providerSaved:"Providers saved",keySaved:"API key saved",userCreated:"User created",userCreateError:"Failed to create user",pluginInstalled:"Hermes plugin installed",fieldHome:"Hermes home",fieldUrl:"orca URL",fieldToken:"orca token",pluginStatus:"Plugin status",restartNote:"Restart Hermes gateway after installing for the plugin to load.",fieldUsername:"Username",fieldPassword:"Password",fieldApiUrl:"API URL",fieldApiKey:"API Key",fieldBin:"Binary",fieldArgs:"Extra args",installed:"installed",notFound:"not found",functional:"functional",error:"error",allGood:"All required tools are installed and functional.",missingTools:"Some tools are missing — install them to enable all features.",sectionAgentCLIs:"Agent CLIs",sectionSystem:"System",statusOk:"OK",statusFail:"FAIL",statusNotFound:"not found",userId:"ID"},activity:{editing:"editing",testing:"testing",building:"building",installing:"installing",thinking:"thinking",prompted:"prompted",error:"error",unknown:"working"}},cs:{nav:{operate:"Provoz",config:"Administrace",dash:"Přehled",tasks:"Úkoly",kanban:"Kanban",timeline:"Časová osa",escalations:"Eskalace",sessions:"Relace",missions:"Mise",settings:"Nastavení",projects:"Projekty",users:"Uživatelé"},page:{dashboard:"Přehled",tasks:"Úkoly",kanban:"Kanban",timeline:"Časová osa",sessions:"Relace",missions:"Mise",settings:"Nastavení",projects:"Projekty",users:"Uživatelé"},common:{daemon:"daemon",daemonUp:"daemon běží",daemonDown:"daemon offline",daemonReady:"Připraven",daemonBusy:"Pracuje",daemonOffline:"Offline",nextReady:"Další na řadě",escalationsWaiting:"Eskalace čeká: {count}",daemonUnreachable:"daemon orca není dostupný",toggleSidebar:"Přepnout sidebar",cancel:"Zrušit",save:"Uložit",delete:"Smazat",retry:"Znovu",edit:"Upravit",close:"Zavřít",live:"Živě",goTo:"Přejít na",searchCommands:"Hledat příkazy…",noCommands:"Žádné příkazy",dismiss:"Zavřít",loading:"Načítání",help:"Nápověda",actions:"Akce",success:"Úspěch",error:"Chyba",send:"Odeslat",kill:"Ukončit",sendKeys:"odeslat klávesy…",appName:"Orca",primaryNav:"Hlavní",switchLang:"Přepnout jazyk"},providers:{claudeCode:"Claude Code",opencode:"OpenCode",codex:"Codex"},auth:{signIn:"Přihlásit se",usernamePlaceholder:"Uživatelské jméno",passwordPlaceholder:"Heslo"},tasks:{newTask:"Nový úkol",searchPlaceholder:"Hledat úkoly…",filterAll:"Vše",filterAllProjects:"Všechny projekty",filterProjectsAria:"Filtr projektů",filterOpen:"Otevřené",filterActive:"Aktivní",filterBlocked:"Blokované",filterClosed:"Uzavřené",filterAutopilot:"Autopilot",empty:"Žádné úkoly",emptyDescription:"Vytvořte první úkol.",noMatches:"Žádné výsledky",noMatchesDescription:"Zkuste jiné hledání nebo filtr.",nSelected:"{count} vybráno",clearSelection:"Zrušit výběr",confirmBulkDeleteTitle:"Smazat {count} úkolů?",confirmBulkDeleteDescription:"Vybrané úkoly budou trvale odstraněny.",noDetails:"Zatím bez popisu — kliknutím přidáte kontext pro agenta.",launch:"Spustit",start:"Spustit",stop:"Zastavit",pause:"Pozastavit",approveContinue:"Schválit a pokračovat",approved:"Schváleno — fáze {id} pokračuje",rerun:"Spustit znovu",rerunning:"Fáze {id} se spouští znovu",stopped:"Zastaveno {id}",deleteOrClose:"Smazat nebo uzavřít",closeArchive:"Uzavřít (archivovat)",deletePermanently:"Trvale smazat",confirmDeleteTitle:"Smazat {id}?",confirmDeleteDescription:"Úkol a jeho závislosti budou trvale odstraněny.",deleteMission:"Smazat misi",epicActions:"Akce mise",confirmDeleteMissionTitle:"Smazat misi {id}?",confirmDeleteMissionDescription:"Trvale odstraní celou misi — epic i všechny její fázové úkoly — a nelze ji vrátit zpět. Soubory na disku zůstanou nedotčené.",missionDeleted:"Mise {id} smazána",defaultExecutor:"Výchozí (fallback)",newTitle:"Nový úkol",editTitle:"Upravit {id}",singleTask:"Jeden úkol",autopilotPlanning:"Autopilot · Plánování",singleTaskDesc:"Vytvoří jeden úkol a volitelně na něm spustí agenta.",autopilotPlanningDesc:"Pilot rozdělí cíl do fází, přiradí agenta ke každé a může je spouštět autonomně.",fieldTitle:"Název",titlePlaceholder:"Co je potřeba udělat?",fieldDetails:"Detaily",detailsHint:"Kontext pro agenta — co postavit, omezení, akceptační kritéria.",detailsPlaceholder:"Popište úkol tak, aby agent přesně věděl, co má dělat…",fieldType:"Typ",fieldPriority:"Priorita",fieldExecutor:"Vykonavatel",fieldProject:"Projekt",fieldProjectHint:"Ve kterém projektu agent poběží.",fieldSchedule:"Plán",scheduleHint:"Volitelné — nastavte datum a čas úkolu.",autostart:"Spustit automaticky v naplánovaný čas",autostartHint:"Když je vypnuto, plán je jen termín — spustíte ho ručně.",scheduleConflict:"Blízko k {title} — oba naplánované do ~10 min, očekávejte vyšší zátěž.",fieldDependsOn:"Závisí na",dependsOnHint:"Tento úkol počká, dokud nejsou vybrané úkoly uzavřeny.",launchImmediately:"Spustit relaci ihned",createAndLaunch:"Vytvořit a spustit",create:"Vytvořit",fieldGoal:"Cíl",goalHint:"Model rozdělí cíl do fází.",goalPlaceholder:"Popište cíl k naplánování…",fieldAutonomy:"Autonomie",fieldMaxSessions:"Max relací",autoModelLabel:"Autopilot vybere model",autoModelHint:"Autopilot zvolí nejvhodnější model ke každé fázi podle popisů modelů v Nastavení.",startAutopilot:"Spustit autopilota (zahájit misi)",manualPhases:"Fáze (ručně)",removePhase:"Odebrat fázi",addPhase:"Přidat fázi",createPlan:"Vytvořit plán",planning:"Plánování…",plannerPreview:"Plánovač pracuje",generatePlan:"Generovat plán",createdEpic:"Vytvořeno epic {id} s {count} fázemi{m}",done:"Hotovo",updated:"Aktualizováno {id}",createdAndLaunched:"Vytvořeno a spuštěno {title}",created:"Vytvořeno {title}",statusOpen:"Otevřeno",statusInProgress:"Probíhá",statusBlocked:"Blokováno",statusClosed:"Uzavřeno",statusCancelled:"Zrušeno",planCreated:"Plán vytvořen — {count} fází{m}",planFailed:"Plánování selhalo",autopilotKeyMissing:"Klíč autopilota není nastaven — přidejte fáze ručně",autopilotStarted:" · autopilot spuštěn",autopilotEngaged:" — autopilot spuštěn.",addAtLeastOnePhase:"Přidejte alespoň jednu fázi",phasePlaceholder:"Fáze {n}",launched:"Spuštěno {session}",closed:"Uzavřeno {id}",deleted:"Smazáno {id}",nClosed:"{count} uzavřeno",nDeleted:"{count} smazáno",typeTask:"Úkol",typeBug:"Bug",typeFeature:"Funkce",typeEpic:"Epic",typeChore:"Údržba",resultTitle:"Výsledek",missionSummaryTitle:"Shrnutí mise",liveOutput:"Živý výstup",recentActivity:"Poslední aktivita",dependencies:"Závislosti",selectHint:"Vyberte úkol pro zobrazení detailů.",backToFlow:"Zpět na graf mise",openTerminal:"Otevřít terminál",expandPhases:"Rozbalit fáze",collapsePhases:"Sbalit fáze",phasesLabel:"fází",outcomeOk:"Úspěch",outcomeFail:"Selhalo",noSummary:"Uzavřeno bez shrnutí.",scheduledBadge:"Auto",dayToday:"Dnes",dayYesterday:"Včera",pageRange:"{from}–{to} z {total}",prevPage:"Předchozí",nextPage:"Další",copyId:"Kopírovat ID",idCopied:"ID {id} zkopírováno",idCopyFailed:"Kopírování selhalo",resultsTitle:"Výsledek úlohy",resultExecutor:"Vykonavatel",resultAgent:"Agent",resultFinished:"Dokončeno",resultDuration:"Doba běhu"},usage:{input:"vstup",output:"výstup",cache:"cache",cost:"cena",inputTokens:"Vstupní tokeny",outputTokens:"Výstupní tokeny"},missions:{newMission:"Nová mise",paused:"pozastaveno",capacityUsed:"{running}/{max} relací",resume:"Pokračovat",pause:"Pozastavit",disengage:"Odpojit misi",empty:"Žádné aktivní mise",engage:"Zahájit",noTasks:"Žádné úkoly v této misi",statePaused:"Pozastaveno",resumed:"Mise obnovena",pausedMsg:"Mise pozastavena",disengaged:"Mise odpojena",engaged:"Mise zahájena na {epicId}",stateActive:"Aktivní",stateStalled:"Čeká na zásah",stateDisengaged:"Odpojeno",autonomyL0:"L0 · Doporučovat",autonomyL0Desc:"Pilot práci pouze rozplánuje a navrhne. Nic se nespustí, dokud sami nepotvrdíte.",autonomyL1:"L1 · Asistovat",autonomyL1Desc:"Pilot sám spustí jen jednoznačné, bezpečné kroky. Cokoliv nejistého nebo citlivého počká na vaše schválení.",autonomyL2:"L2 · Pilotovat",autonomyL2Desc:"Pilot spouští práci a sám odbavuje povolovací dotazy agentů. Nejednoznačné nebo rizikové situace předává vám.",autonomyL3:"L3 · Automaticky",autonomyL3Desc:"Plná autonomie. Pilot spouští i odbavuje vše sám a zasáhne za vámi jen tehdy, když si opravdu neví rady.",addPhase:"Přidat fázi",addPhaseModalTitle:"Přidat fázi — {epic}",addPhaseModalDesc:"Vloží nové fáze za současný řetězec. Aktivní mise na další připravenou fázi naváže v dalším tiku.",addPhaseModeManual:"Ručně",addPhaseModeReplan:"Replánovat",addPhaseManualDesc:"Zapište každou fázi a její typ. Není potřeba klíč.",addPhaseReplanDesc:"Popiš zbylý cíl — planner ho rozloží na fáze.",addPhaseFieldExecutor:"Executor",addPhaseFieldGoal:"Zbylý cíl",addPhaseGoalHint:"Co zbývá dodělat; planner to rozloží na fáze.",addPhaseGoalPlaceholder:"Popiš, co ještě zbývá udělat…",addPhaseInsert:"Vložit fáze",addPhaseInserted:"Vloženo {count} fází do {epicId}",addPhaseAtLeastOne:"Přidej aspoň jednu fázi",addPhaseGoalRequired:"Zadej cíl pro replánování"},sidebar:{liveAgents:"{count} živých agentů",lastOutcome:"Poslední: {title}",stuckAgents:"{count} zaseknutých agentů",notifications:"Upozornění",noNotifications:"Žádný agent nečeká na schválení.",escalations:"Eskalace ({count})"},escalations:{title:"Eskalace",empty:"Žádné eskalace",emptyDesc:"Dozorčí zatím žádnou fázi nevrátil. Až nějakou zamítne, objeví se tady k vyřešení.",rationale:"Důvod dozorčího",noReason:"Bez uvedeného důvodu.",blockedBy:"Kvůli tomu čeká",approve:"Schválit a pokračovat",rerun:"Spustit fázi znovu",approved:"Schváleno — mise pokračuje",rerunning:"Fáze se spouští znovu",actionError:"Akce selhala"},agent:{working:"Pracuje",needsInput:"Vyžaduje vstup",idle:"Nečinný",complete:"Dokončeno",ready:"Připraven",waitingFor:"Čeká na {deps}",stalled:"Ticho {min}m",stuck:"Zaseknuto {min}m"},advisor:{title:"Poradce",open:"Otevřít poradce",close:"Zavřít",pickAgent:"Vyberte agenta pro svého poradce:",start:"Spustit poradce",starting:"Spouštím…",stop:"Zastavit",restart:"Restartovat",running:"Běží",idle:"Neběží",started:"Poradce spuštěn",stopped:"Poradce zastaven",noExecs:"Nemáte povoleného žádného agenta. Požádejte správce o přidělení.",hint:"Pište přímo do terminálu — všechny klávesy fungují."},sessions:{needsInput:"vyžaduje vstup",loading:"načítání…",noOutput:"— žádný výstup —",allow:"Povolit ⏎",reject:"Odmítnout ⎋",terminal:"Terminál",interrupt:"Přerušit",kill:"Ukončit relaci",empty:"Žádné živé relace",emptyDescription:"Spusťte úkol pro vytvoření relace.",emptyAction:"Přejít na Úkoly",terminalTitle:"Terminál — {name}",online:"online",roleOverseer:"Autopilot",rolePilot:"Plánovač",filterAll:"Vše",filterNeedsInput:"Vyžaduje vstup",noNeedsInput:"Žádný agent nečeká na vstup.",comfortable:"Pohodlné",compact:"Kompaktní",approved:"Schváleno {name}",rejected:"Zamítnuto na {name}",answered:"Odpovězeno {name}: {option}",sentTo:"Odesláno {name}",interrupted:"Přerušeno {name}",killed:"Ukončeno {name}",typeHint:"Pište přímo do terminálu — všechny klávesy fungují.",selectLabel:"Vybrat {id}"},kanban:{board:"Deska",calendar:"Kalendář",columnOpen:"Otevřené",columnInProgress:"Probíhá",columnBlocked:"Blokované",columnClosed:"Uzavřené",columnCancelled:"Zrušené",blockedDeps:"Blokováno nedokončenými závislostmi",trueStatusTooltip:"Skutečný stav: {status}"},calendar:{day:"Den",week:"Týden",month:"Měsíc",today:"Dnes",previous:"Předchozí",next:"Následující",noTasks:"Žádné naplánované úkoly na tento den.",nMore:"+{count} dalších",unscheduled:"Neplánovaných: {count} — nastavením plánu je umístíte.",shortMon:"Po",shortTue:"Út",shortWed:"St",shortThu:"Čt",shortFri:"Pá",shortSat:"So",shortSun:"Ne"},timeline:{activityWeek:"Aktivita / poslední týden",activityDays:"Aktivita / posledních {n} dní",activityHours:"Aktivita / posledních {n}h",loadError:"Nepodařilo se načíst aktivitu",empty:"Zatím žádná aktivita",emptyDescription:"Události z posledních 12 hodin se zobrazí zde.",filterAll:"Vše",filterTasks:"Úkoly",filterMissions:"Mise",filterSignals:"Signály",filterReviews:"Kontroly",axis:"Osa",lanes:"Pruhy",approved:"Schváleno",escalated:"Eskalováno",changedFiles:"Změněné soubory",workingDiff:"Pracovní změny",noChanges:"Žádné změny v pracovním stromu",openTask:"Otevřít úkol",markerHint:"Klikněte na událost pro detail a změny v repu",changesOverTime:"Změny v čase",mostActiveFiles:"Nejaktivnější soubory",noChangesInWindow:"V tomto okně žádné commity"},review:{escalated:"Dozorčí zamítl fázi: {reason}",noReason:"bez udání důvodu"},dashboard:{viewAll:"Zobrazit vše",needsAttentionTitle:"Vyžaduje pozornost",recentOutcomes:"Poslední výsledky",now:"Teď",nothingRunning:"Nic neběží — spusťte úkol nebo zahajte misi.",open:"Otevřené",inProgress:"Probíhá",blocked:"Blokované",liveSessions:"Živé relace",activeMissions:"Aktivní mise",autopilotSpotlight:"Světlo autopilota",autopilotSpotlightDesc:"Každá aktivní mise v jednom řádku: aktuální fáze, pokrok a kapacita.",noActiveMissions:"Žádné aktivní mise.",ofTotal:"z {count} celkem",titleCol:"Název",statusCol:"Stav",epicCol:"Epic",progressCol:"Pokrok",stateCol:"Stav"},settings:{models:"Modely",autopilot:"Autopilot",providers:"Poskytovatelé",defaults:"Výchozí",hermes:"Hermes",data:"Data",dangerZone:"Nebezpečná zóna",cleanupDesc:"Smaže všechny úkoly, mise i časovou osu (aktivitu) a ukončí všechny běžící relace agentů. Projekty, uživatelé a nastavení zůstanou. Akci nelze vrátit zpět.",cleanupButton:"Smazat všechna data",cleanupConfirmTitle:"Smazat všechna data?",cleanupConfirmDesc:"Nenávratně se odstraní všechny úkoly, mise a aktivita a ukončí se běžící relace. Projekty, uživatelé a nastavení zůstanou zachované.",cleanupDone:"Vyčištěno — {tasks} úkolů a {missions} misí odstraněno.",sectionsNav:"Sekce nastavení",adminOnly:"Jen pro administrátory",adminOnlyDesc:"Tato sekce je vyhrazena administrátorům. Svůj účet upravíte v sekci Můj účet.",saveAutopilot:"Uložit autopilota",saveProviders:"Uložit poskytovatele",saveDefaults:"Uložit výchozí",addModel:"Přidat model",add:"Přidat",save:"Uložit",cancel:"Zrušit",testPlan:"Testovat plán",planning:"Plánování…",planFailed:"Plánování selhalo",deleteModel:"Smazat model",deleteModelDesc:"Odstranit {label} ({exec}) z modelů? Uložením změny potvrdíte.",providersDesc:"Kde každé CLI agenta sídlí a jaké příznaky se předávají při spuštění orcou. Binárku ponechte pro použití z $PATH.",plannerModel:"Plánovací model",plannerModelDesc:"LLM, která rozkládá cíl na fáze",overseerModel:"Dozorčí model",overseerModelDesc:"LLM, která vyhodnocuje prompt agenta (prázdné = stejný jako plánovací)",backendMode:"Jak autopilot přemýšlí",backendModeHelp:"Vyberte jeden režim — buď přes API klíč, nebo přes lokální CLI nástroje.",modeRelay:"API Klíč",modeRelayDesc:"Plánovač a dozorčí běží jako modely přes API klíč — rychlé a levné, ale nečtou repozitář.",modeAgents:"CLI Nástroje",modeAgentsDesc:"Plánovač a dozorčí běží jako CLI nástroje přímo v repozitáři — čtou kód, ale musí být nainstalované.",reviewOnDone:"Kontrola po dokončení fáze",reviewOnDoneHint:"Po uzavření fáze nechá dozorčího posoudit výsledek; když ho zamítne, zastaví navazující fázi.",relayOption:"Relay (model přes API)",apiUrl:"OpenAI API URL",apiUrlDesc:"OpenAI-kompatibilní endpoint",apiKey:"API klíč",apiKeyDesc:"Klíč je nastaven — ponechte prázdné pro zachování",notes:"Poznámky",notesDesc:"Instrukce, kterými se autopilot řídí",plannerPrompt:"Prompt plánovače",binary:"Binárka",extraArgs:"Další parametry",executor:"Vykonavatel",executorDesc:"Výchozí agent pro nová spuštění",autonomy:"Autonomie",autonomyDesc:"Výchozí úroveň autonomie mise",maxSessions:"Max relací",maxSessionsDesc:"Max souběžných agentů na misi",tokenTtl:"Platnost přihlašovacího tokenu",tokenTtlDesc:"Po kolika dnech vyprší přihlašovací token (vynutí nové přihlášení)",editLabel:"Upravit {exec}",deleteLabel:"Smazat {exec}",addModelTitle:"Přidat model",editModelTitle:"Upravit model",fieldProvider:"Běží přes",providerHint:"Který runner agenta tento model spouští.",providerOther:"Jiný",fieldModelId:"ID modelu",modelIdHint:"Název modelu tak, jak ho runner očekává.",modelIdPlaceholder:"např. sonnet, gpt-5.4, deepseek-v4-flash",execResolvesTo:"Vyhodnotí se jako",execDuplicate:"Model s tímto exec už existuje.",presetTag:"výchozí",labelLabel:"Popisek",execLabel:"Exec",setApiKeyFirst:"Nejprve nastavte API klíč autopilota",modelsSaved:"Modely uloženy",modelNoteLabel:"Popis modelu",modelNoteHint:"K čemu se model hodí — co zvládá nejlépe (kódování, plánování, rychlý a levný…). Autopilot podle popisů vybírá model k jednotlivým úkolům.",modelNotePlaceholder:"Např. Silný na refaktoring a složité úlohy; pomalejší a dražší.",modelNoteEdit:"Upravit popis",modelNoteAdd:"Přidat popis",autopilotSaved:"Autopilot uložen",providersSaved:"Poskytovatelé uloženi",defaultsSaved:"Výchozí nastavení uloženo",modelPlaceholder:"Můj model",execPlaceholder:"provider/model-name",plannerPlaceholder:"claude-opus-4-8",overseerPlaceholder:"gpt-4o-mini (levnější)",apiKeyNotSetDesc:"Uloženo na serveru, nikdy není vráceno",apiKeySetPlaceholder:"•••• nastaveno",apiKeyPlaceholder:"vložit klíč",sampleGoalPlaceholder:"Ukázkový cíl k otestování promptu…",plannerPromptHelp:"Šablona, kterou Pilot používá k rozkladu cíle na fáze. Použijte zástupný text {{goal}} — je nahrazen zadaným cílem. Model musí vrátit JSON pole {title, type, agent} objektů.",hermesDesc:"Nainstaluje balíkovaný orca plugin do Hermes instance na stejném hostiteli. Dává Hermes agentovi nástroje pro plnou správu orcy — spouštět úkoly, relace, uzavírat práci a číst stav.",hermesHome:"Hermes home",hermesUrl:"orca URL",hermesToken:"orca token",hermesInstall:"Instalovat plugin",hermesInstalling:"Instaluji…",hermesStatusInstalled:"nainstalováno",hermesStatusNotInstalled:"není nainstalováno",hermesStatusEnabled:"povoleno",hermesStatusDisabled:"zakázáno",hermesStatusLine:"Stav pluginu",hermesRestartNote:"Po instalaci restartujte Hermes gateway, aby se plugin načetl.",hermesInstalled:"Hermes plugin nainstalován",hermesStatusError:"Stav Hermesu nedostupný"},projects:{newProject:"Nový projekt",loadError:"Nepodařilo se načíst projekty",empty:"Žádné projekty",fieldSlug:"Slug",slugHint:"Krátký identifikátor, např. orca.",fieldPath:"Cesta",pathHint:"Absolutní cesta k projektu na disku.",fieldNotes:"Info pro Pilota",notesHint:"Kontext, který Pilot používá při plánování pro tento projekt.",create:"Vytvořit",editProject:"Upravit projekt",updated:"Projekt upraven",removeProject:"Odebrat projekt",removeConfirmTitle:"Odebrat projekt",removeConfirmBody:'Projekt „{slug}" se odebere z Orcy — jeho úkoly, mise i přístupy. Soubory na disku zůstanou nedotčené. Akci nelze vrátit.',removeConfirmBtn:"Odebrat",removed:"Projekt odebrán",iconLabel:"Ikonka",iconHint:"Obrázek z repozitáře projektu (např. logo). Zobrazí se všude u projektu.",chooseIcon:"Vybrat ikonku",iconSearch:"Hledat obrázek…",noImages:"V projektu nejsou žádné obrázky",iconSelect:"Vybrat",iconRemove:"Odebrat ikonku",iconSet:"Ikonka nastavena",iconRemoved:"Ikonka odebrána",iconMore:"Zobrazeno prvních 300 obrázků — zúžit přes hledání.",slugImmutable:"Slug je pevný a nedá se změnit.",git:"Git",gitError:"Nepodařilo se načíst git info",notGit:"Není git repozitář",clean:"Čisté",dirty:"{count} změněno",branches:"Větve",commits:"Commity",created:"Projekt vytvořen",slugPlaceholder:"muj-projekt",pathPlaceholder:"~/projects/muj-projekt",openEditor:"Otevřít editor",editorTitle:"Editor kódu",tabEdit:"Úpravy",tabDiff:"Diff",noFiles:"Žádné soubory",selectFile:"Vyberte soubor k úpravě",fileTooBig:"Soubor je příliš velký nebo binární, nelze ho zde upravit.",noChanges:"Žádné necommitnuté změny v tomto souboru.",fileSaved:"Uloženo {path}",commitLabel:"Commit",viewCommit:"Zobrazit změny tohoto commitu",workingChanges:"Necommitnuté změny",viewChanges:"Zobrazit necommitnuté změny",tabPreview:"Náhled",wordWrap:"Zalamovat řádky",fullscreen:"Celá obrazovka",exitFullscreen:"Zavřít celou obrazovku",toggleTree:"Soubory",ctxOpen:"Otevřít",ctxNewFile:"Nový soubor",ctxNewFolder:"Nová složka",ctxRename:"Přejmenovat",ctxDuplicate:"Duplikovat",ctxDelete:"Smazat",ctxCopyPath:"Kopírovat cestu",dlgNewFile:"Nový soubor",dlgNewFolder:"Nová složka",dlgRename:"Přejmenovat",dlgDuplicate:"Duplikovat",dlgName:"Název",dlgDelete:"Smazat položku?",dlgDeleteMsg:"Opravdu smazat „{name}“? Tuto akci nelze vrátit zpět.",fileCreated:"Vytvořeno {path}",folderCreated:"Složka vytvořena {path}",renamed:"Přejmenováno na {path}",duplicated:"Zkopírováno do {path}",deleted:"Smazáno {path}",pathCopied:"Cesta zkopírována"},users:{loadError:"Nepodařilo se načíst uživatele",empty:"Žádní uživatelé",emptyDescription:"Pro začátek vytvořte první účet.",fieldUsername:"Uživatelské jméno",fieldCreated:"Vytvořen",fieldActions:"Akce",addUser:"Přidat uživatele",newUser:"Nový uživatel",create:"Vytvořit",add:"Přidat",delete:"Smazat",lastUserHint:"Posledního uživatele nelze smazat.",session:"Relace",logout:"Odhlásit se",userDeleted:"Uživatel smazán",userCreated:"Uživatel vytvořen",deleteLabel:"Smazat {username}",projects:"Projekty",admin:"Admin",member:"Člen",makeAdmin:"Povýšit na administrátora",removeAdmin:"Odebrat administrátora",lastAdminHint:"Posledního administrátora nelze degradovat.",roleUpdated:"Role změněna",models:"Modely",allowedModels:"Povolené modely",allModelsHint:"Bez výběru smí uživatel spouštět všechny globálně povolené modely.",modelsUpdated:"Povolené modely uloženy",updateError:"Nepodařilo se uložit změnu"},account:{title:"Můj účet",name:"Jméno",email:"E-mail",uploadAvatar:"Nahrát avatar",defaultModel:"Výchozí model",defaultModelHint:"Předvyplní se u nových tasků. Vyberte z modelů, které smíte spouštět.",restrictedHint:"Tyto modely vám povolil administrátor.",noModelLimit:"Bez omezení — můžete spouštět všechny globálně povolené modely.",save:"Uložit",saved:"Účet uložen",avatarSaved:"Avatar nahrán",saveError:"Uložení selhalo",password:"Heslo",passwordHint:"Změňte si přihlašovací heslo. Nové heslo musí mít alespoň 8 znaků.",currentPassword:"Současné heslo",newPassword:"Nové heslo",confirmPassword:"Potvrzení nového hesla",changePassword:"Změnit heslo",passwordChanged:"Heslo změněno",passwordMismatch:"Nová hesla se neshodují",passwordTooShort:"Nové heslo musí mít alespoň 8 znaků",passwordError:"Změna hesla selhala"},changes:{dirtyOne:"1 změněno",dirtyN:"{count} změněno",lastCommit:"poslední commit {relative} „{subject}“",none:"žádné nedávné změny"},onboarding:{title:"Vítejte v Orce",subtitle:"Nastavte prostředí pro orchestráci agentů.",systemDeps:"Systémové závislosti",systemDepsDesc:"Nástroje potřebné pro běh agentů. Chybějící doplňte před prvním spuštěním.",providers:"Binárky providerů",providersDesc:"Kde každé CLI agenta leží. Ponechte pro použití z $PATH.",autopilotKey:"API klíč autopilota",autopilotKeyDesc:"Nutný pro Planner, aby rozkládal cíle na fáze.",autopilotBackend:"Backend autopilota",autopilotBackendDesc:"Jak má plánovač a dozorčí přemýšlet — vyberte jeden režim.",agentsSet:"CLI agenti nastaveni",agentsNotSet:"Vyberte CLI agenty",saveBackend:"Uložit backend",hermes:"Hermes integrace",hermesDesc:"Volitelně nainstaluje orca plugin do Hermes instance na stejném hostiteli.",users:"Uživatelé",usersDesc:"Správa přístupu do orca dashboardu.",addUser:"Přidat uživatele",createUser:"Vytvořit",installPlugin:"Instalovat plugin",installing:"Instaluji…",saveProviders:"Uložit providery",saveKey:"Uložit klíč",keySet:"Klíč je nastaven",keyNotSet:"Nenastaven",statusInstalled:"nainstalováno",statusNotInstalled:"nenainstalováno",statusEnabled:"povoleno",statusDisabled:"zakázáno",statusUnknown:"neznámý",noUsers:"Zatím žádní uživatelé. Vytvořte prvního.",goToDashboard:"Přejít na Dashboard",setupComplete:"Nastavení dokončeno!",setupIncomplete:"Dokončete kroky výše pro dokončení nastavení.",providerSaved:"Providery uloženy",keySaved:"API klíč uložen",userCreated:"Uživatel vytvořen",userCreateError:"Chyba při vytváření uživatele",pluginInstalled:"Hermes plugin nainstalován",fieldHome:"Hermes home",fieldUrl:"orca URL",fieldToken:"orca token",pluginStatus:"Stav pluginu",restartNote:"Po instalaci restartujte Hermes gateway, aby se plugin načetl.",fieldUsername:"Uživatelské jméno",fieldPassword:"Heslo",fieldApiUrl:"API URL",fieldApiKey:"API Klíč",fieldBin:"Binárka",fieldArgs:"Další parametry",installed:"nainstalováno",notFound:"nenalezeno",functional:"funkční",error:"chyba",allGood:"Všechny potřebné nástroje jsou nainstalovány a funkční.",missingTools:"Některé nástroje chybí — nainstalujte je pro plnou funkcionalitu.",sectionAgentCLIs:"CLI agenti",sectionSystem:"Systém",statusOk:"OK",statusFail:"CHYBA",statusNotFound:"nenalezeno",userId:"ID"},activity:{editing:"edituje",testing:"testuje",building:"buildí",installing:"instaluje",thinking:"přemýšlí",prompted:"vyzván k akci",error:"chyba",unknown:"pracuje"}}},e=(0,c.createContext)(null);a.s(["LanguageProvider",0,function({children:a}){let[f,g]=(0,c.useState)("en"),[h,i]=(0,c.useState)(!1);(0,c.useEffect)(()=>{g("en"),document.documentElement.lang="en",i(!0)},[]);let j=a=>{g(a),localStorage.setItem("orca-locale",a),document.documentElement.lang=a};return h?(0,b.jsx)(e.Provider,{value:{locale:f,setLocale:j,t:d[f]},children:a}):(0,b.jsx)(e.Provider,{value:{locale:"en",setLocale:j,t:d.en},children:a})},"useTranslation",0,function(){let a=(0,c.useContext)(e);if(!a)throw Error("useTranslation must be used within LanguageProvider");return a}],29457),a.s([],28130)}];
2
2
 
3
3
  //# sourceMappingURL=_0tzourm._.js.map