specrails-desktop 2.46.0 → 2.48.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. package/README.md +2 -0
  2. package/client/dist/assets/{ActivityFeedPage-CsHQPpvl.js → ActivityFeedPage-CGq6QhP5.js} +1 -1
  3. package/client/dist/assets/AgentBrowserCapture-C4GZ-kdf.js +1 -0
  4. package/client/dist/assets/AgentModeAnalyticsPane-_IPmL0ZS.js +2 -0
  5. package/client/dist/assets/AgentModeCodePane-B5WG5DOP.js +2 -0
  6. package/client/dist/assets/{AgentModeJobsPane-rnD-EPMd.js → AgentModeJobsPane-w1N_HIXh.js} +1 -1
  7. package/client/dist/assets/AgentsPage-CmwnnT46.js +87 -0
  8. package/client/dist/assets/AnalyticsPage-BUMsKtsJ.js +1 -0
  9. package/client/dist/assets/CodePage-PjgywJPS.js +3 -0
  10. package/client/dist/assets/DesktopAnalyticsPage-BXY1pH4y.js +1 -0
  11. package/client/dist/assets/DocsDialog-ccQETHKB.js +11 -0
  12. package/client/dist/assets/DocsPage-DzEgplB3.js +11 -0
  13. package/client/dist/assets/{ExportDropdown-pWZGYCv3.js → ExportDropdown-B8bBGopr.js} +1 -1
  14. package/client/dist/assets/InteractiveJobComposer-CEwGkJ8F.js +19 -0
  15. package/client/dist/assets/JobDetailModal-BYXmuTDe.js +1 -0
  16. package/client/dist/assets/JobDetailPage-CWp6MwJj.js +1 -0
  17. package/client/dist/assets/JobsPage-D1O1uyG8.js +1 -0
  18. package/client/dist/assets/{LoopBuilderPage-CtmOE4-b.js → LoopBuilderPage-DQE-7Vby.js} +2 -2
  19. package/client/dist/assets/{LoopPreviewModal-BYeLjQbr.js → LoopPreviewModal-Bk7zIXD5.js} +1 -1
  20. package/client/dist/assets/LoopsPage-CqG7mx56.js +1 -0
  21. package/client/dist/assets/MinimizedChatsContext-UpnqccPx.js +1 -0
  22. package/client/dist/assets/PluginsPage-CjgVvmpW.js +2 -0
  23. package/client/dist/assets/{ProjectSettingsDialog-DsCRIc4v.js → ProjectSettingsDialog-D6vBCoay.js} +1 -1
  24. package/client/dist/assets/{RepositoryDeliveries-BQm_3TO8.js → RepositoryDeliveries-C36ipKp_.js} +1 -1
  25. package/client/dist/assets/{RepositoryScopeSelector-DnAFtjTz.js → RepositoryScopeSelector-0Gz_fR1E.js} +1 -1
  26. package/client/dist/assets/ReviewPacketPage-Dr9RYs7q.js +1 -0
  27. package/client/dist/assets/TemplatePreviewModal-sCMHYFJo.js +1 -0
  28. package/client/dist/assets/TicketDetailModalContext-C5GgJlEt.js +14 -0
  29. package/client/dist/assets/{Trans-BwLgX6n7.js → Trans-9pHTy2fH.js} +1 -1
  30. package/client/dist/assets/{addspec-D2YIQ0GU.js → addspec-BOvgmcgk.js} +1 -1
  31. package/client/dist/assets/{addspec-B_TPJt-R.js → addspec-Clmyfn_R.js} +1 -1
  32. package/client/dist/assets/{addspec-A1lDQa4M.js → addspec-CsNaBpHp.js} +1 -1
  33. package/client/dist/assets/{addspec-CQBjzt24.js → addspec-D2tvWmmV.js} +1 -1
  34. package/client/dist/assets/{addspec-CLYLvaVP.js → addspec-D3nFwvD0.js} +1 -1
  35. package/client/dist/assets/{addspec-BPpZ_olp.js → addspec-DVLEhK3w.js} +1 -1
  36. package/client/dist/assets/{addspec-iFdQ6D99.js → addspec-DXbK-tb0.js} +1 -1
  37. package/client/dist/assets/{addspec-BHZd0N5F.js → addspec-OHG8DFEn.js} +1 -1
  38. package/client/dist/assets/agentRuntime-BUimiX__.js +1 -0
  39. package/client/dist/assets/agentRuntime-BcN97sAB.js +1 -0
  40. package/client/dist/assets/agentRuntime-Ckyg-ahT.js +1 -0
  41. package/client/dist/assets/agentRuntime-DJCwyX4t.js +1 -0
  42. package/client/dist/assets/agentRuntime-DVzPJOl0.js +1 -0
  43. package/client/dist/assets/agentRuntime-V9AZTG3c.js +1 -0
  44. package/client/dist/assets/agentRuntime-bAAjw1vw.js +1 -0
  45. package/client/dist/assets/agentRuntime-v4qKAYH-.js +1 -0
  46. package/client/dist/assets/{agents-45GbINfh.js → agents-CA5eT1d0.js} +1 -1
  47. package/client/dist/assets/{agents-DMKFStHL.js → agents-CAgy-5uS.js} +1 -1
  48. package/client/dist/assets/{agents-IUOgqT5t.js → agents-CNm6Qzlv.js} +1 -1
  49. package/client/dist/assets/{agents-ms7TwG16.js → agents-CTwbx-fb.js} +1 -1
  50. package/client/dist/assets/{agents-DaYcxAr1.js → agents-DEGV1Vao.js} +1 -1
  51. package/client/dist/assets/{agents-BHp0_FQt.js → agents-HsDF1aQU.js} +1 -1
  52. package/client/dist/assets/{agents-Bvyi3y6R.js → agents-IQjdA-z9.js} +1 -1
  53. package/client/dist/assets/{agents-rzPnqoBR.js → agents-RkGoteXh.js} +1 -1
  54. package/client/dist/assets/analytics-BNgZ1Nj7.js +1 -0
  55. package/client/dist/assets/analytics-BlypLLR6.js +1 -0
  56. package/client/dist/assets/analytics-CoEzWPx4.js +1 -0
  57. package/client/dist/assets/analytics-DFh5lSOl.js +1 -0
  58. package/client/dist/assets/analytics-DZp-DS2U.js +1 -0
  59. package/client/dist/assets/analytics-DjLlE7jS.js +1 -0
  60. package/client/dist/assets/analytics-jzCkOec3.js +1 -0
  61. package/client/dist/assets/analytics-nZIjjtCc.js +1 -0
  62. package/client/dist/assets/{dashboard-BK_mez-z.js → dashboard-C29Qwa-L.js} +1 -1
  63. package/client/dist/assets/{dashboard-BwkjxI6H.js → dashboard-CSJzf5OT.js} +1 -1
  64. package/client/dist/assets/{dashboard-C3bDKf7s.js → dashboard-CTfEtkqX.js} +1 -1
  65. package/client/dist/assets/{dashboard-Bt0cCzeG.js → dashboard-Cr4D8oMn.js} +1 -1
  66. package/client/dist/assets/{dashboard-fRrP0Kv0.js → dashboard-Csf1yGSN.js} +1 -1
  67. package/client/dist/assets/{dashboard-CdvjGfog.js → dashboard-D40HP2ks.js} +1 -1
  68. package/client/dist/assets/dashboard-DBAP2_SQ.js +1 -0
  69. package/client/dist/assets/{dashboard-B14uYXkG.js → dashboard-DMklepmz.js} +1 -1
  70. package/client/dist/assets/file-text-CFT-xXKN.js +1 -0
  71. package/client/dist/assets/{formatDistanceToNow-CeZv93iR.js → formatDistanceToNow-w_2U5pm0.js} +1 -1
  72. package/client/dist/assets/{getTimezoneOffsetInMilliseconds-DxAkjvJb.js → getTimezoneOffsetInMilliseconds-BRymg1Kk.js} +1 -1
  73. package/client/dist/assets/index-D0ScFZvR.css +2 -0
  74. package/client/dist/assets/index-DORCrgbI.js +77 -0
  75. package/client/dist/assets/jira-api-BqHbSdxK.js +1 -0
  76. package/client/dist/assets/jobs-C6qmvUAi.js +1 -0
  77. package/client/dist/assets/jobs-C9j2PuwW.js +1 -0
  78. package/client/dist/assets/jobs-DLHdDkHc.js +1 -0
  79. package/client/dist/assets/jobs-DSp9DoD_.js +1 -0
  80. package/client/dist/assets/jobs-DTQO08nJ.js +1 -0
  81. package/client/dist/assets/jobs-DoFaEl9g.js +1 -0
  82. package/client/dist/assets/jobs-Dpw6AEOP.js +1 -0
  83. package/client/dist/assets/jobs-DrF8Do8s.js +1 -0
  84. package/client/dist/assets/{narration-BSldQfjd.js → narration--hUhjM5v.js} +1 -1
  85. package/client/dist/assets/{narration-DKLjXIFI.js → narration-CHI06czm.js} +1 -1
  86. package/client/dist/assets/{narration-4OSg0b5-.js → narration-DjKB3pQZ.js} +1 -1
  87. package/client/dist/assets/{narration-BPMOQPFe.js → narration-DtCYvRLM.js} +1 -1
  88. package/client/dist/assets/{narration-D-e9ssxA.js → narration-DvLQBW9U.js} +1 -1
  89. package/client/dist/assets/{narration-DnrKC3mF.js → narration-eSx3gR0W.js} +1 -1
  90. package/client/dist/assets/{narration-Dypjxeel.js → narration-n3hOA7LY.js} +1 -1
  91. package/client/dist/assets/{narration-CvQdWdR5.js → narration-thJOeT2-.js} +1 -1
  92. package/client/dist/assets/packet-BNW8ODQw.js +1 -0
  93. package/client/dist/assets/packet-CXYvfdjy.js +1 -0
  94. package/client/dist/assets/packet-CtIlB8YE.js +1 -0
  95. package/client/dist/assets/packet-DA1SJkMH.js +1 -0
  96. package/client/dist/assets/packet-DYcWfBip.js +1 -0
  97. package/client/dist/assets/packet-DseX9yKC.js +1 -0
  98. package/client/dist/assets/packet-_m5aOy_d.js +1 -0
  99. package/client/dist/assets/packet-qOemUAm3.js +1 -0
  100. package/client/dist/assets/{project-repositories-BvBj9XH9.js → project-repositories-BsCs1PPA.js} +1 -1
  101. package/client/dist/assets/provider-capabilities-Vi1ZGvAK.js +1 -0
  102. package/client/dist/assets/settings-BsehKpty.js +1 -0
  103. package/client/dist/assets/settings-CQWob3SB.js +1 -0
  104. package/client/dist/assets/settings-CgCl0hzy.js +1 -0
  105. package/client/dist/assets/settings-DLRLd22L.js +1 -0
  106. package/client/dist/assets/settings-Dn5prAFl.js +1 -0
  107. package/client/dist/assets/settings-HZSu-K4l.js +1 -0
  108. package/client/dist/assets/{settings-DEgcA0jd.js → settings-p4OVIyRh.js} +1 -1
  109. package/client/dist/assets/settings-rddaldUp.js +1 -0
  110. package/client/dist/assets/setup-B5FHuxvB.js +1 -0
  111. package/client/dist/assets/setup-BihzXadx.js +1 -0
  112. package/client/dist/assets/setup-BtC6Hg4K.js +1 -0
  113. package/client/dist/assets/setup-C9Fy9PKQ.js +1 -0
  114. package/client/dist/assets/setup-CROyqD5N.js +1 -0
  115. package/client/dist/assets/setup-DpqzaEEA.js +1 -0
  116. package/client/dist/assets/setup-Dwzt5nO1.js +1 -0
  117. package/client/dist/assets/setup-zLEDnG7N.js +1 -0
  118. package/client/dist/assets/{spending-DNM6NAoA.js → spending-hcgxHP4O.js} +1 -1
  119. package/client/dist/assets/{useDesktop-mxHVQOdx.js → useDesktop-CAisjKWC.js} +1 -1
  120. package/client/dist/assets/{useSharedWebSocket-DnxHj8jP.js → useSharedWebSocket-BHIfW4QT.js} +2 -2
  121. package/client/dist/assets/wrench-BfmNO9Vw.js +1 -0
  122. package/client/dist/index.html +27 -26
  123. package/docs/guide/de/integrations/7-local-engines.md +37 -0
  124. package/docs/guide/en/integrations/7-local-engines.md +37 -0
  125. package/docs/guide/es/integrations/7-local-engines.md +37 -0
  126. package/docs/guide/fr/integrations/7-local-engines.md +37 -0
  127. package/docs/guide/it/integrations/7-local-engines.md +37 -0
  128. package/docs/guide/ja/integrations/7-local-engines.md +37 -0
  129. package/docs/guide/pt/integrations/7-local-engines.md +37 -0
  130. package/docs/guide/zh/integrations/7-local-engines.md +37 -0
  131. package/docs/internals/adding-a-provider.md +12 -0
  132. package/docs/internals/local-agent-runner.md +153 -0
  133. package/docs/internals/review-packet.md +8 -0
  134. package/docs/local-providers.md +215 -0
  135. package/docs/plans/implementation-efficiency-artifact.json +18 -0
  136. package/docs/plans/implementation-efficiency-evaluation.json +1817 -0
  137. package/docs/plans/implementation-efficiency-evaluation.md +41 -0
  138. package/docs/plans/implementation-efficiency-progress.md +48 -0
  139. package/docs/plans/implementation-efficiency-release.md +41 -0
  140. package/docs/plans/implementation-efficiency.md +124 -0
  141. package/local-runner/dist/specrails-local-runner.js +15815 -0
  142. package/package.json +7 -5
  143. package/server/dist/agent-chat-manager.js +8 -1
  144. package/server/dist/agent-chat-router.js +5 -2
  145. package/server/dist/agent-fence-promotion.js +53 -0
  146. package/server/dist/agent-mcp-config.js +4 -1
  147. package/server/dist/agent-runtime-bridge.js +35 -26
  148. package/server/dist/agent-runtime-controls-router.js +20 -1
  149. package/server/dist/agent-runtime-controls.js +94 -12
  150. package/server/dist/agent-runtime-effective-config.js +53 -0
  151. package/server/dist/agent-runtime-events.js +46 -0
  152. package/server/dist/agent-runtime-history.js +47 -0
  153. package/server/dist/agent-runtime-loader.js +84 -5
  154. package/server/dist/agent-runtime-metrics.js +77 -1
  155. package/server/dist/agent-runtime-package.js +205 -0
  156. package/server/dist/agent-runtime-settings-router.js +96 -5
  157. package/server/dist/agent-runtime-settings.js +163 -7
  158. package/server/dist/agent-spec-framing.js +10 -4
  159. package/server/dist/binary-probe.js +12 -0
  160. package/server/dist/blueprint-router.js +3 -2
  161. package/server/dist/chat-manager.js +5 -1
  162. package/server/dist/desktop-router.js +87 -4
  163. package/server/dist/index.js +13 -0
  164. package/server/dist/interactive-job-session.js +3 -1
  165. package/server/dist/local-engine-detection.js +118 -0
  166. package/server/dist/loop-executors.js +4 -3
  167. package/server/dist/loop-role-engines.js +129 -0
  168. package/server/dist/loop-run-manager.js +14 -6
  169. package/server/dist/mcp/tools/app-settings.js +30 -4
  170. package/server/dist/mcp/tools/rails.js +2 -1
  171. package/server/dist/pr-body.js +11 -2
  172. package/server/dist/pricing.js +15 -0
  173. package/server/dist/provider-detection.js +63 -1
  174. package/server/dist/provider-selection.js +26 -1
  175. package/server/dist/providers/index.js +4 -1
  176. package/server/dist/providers/local-adapter-registry.js +56 -0
  177. package/server/dist/providers/local-adapter.js +426 -0
  178. package/server/dist/providers/registry.js +39 -4
  179. package/server/dist/rail-isolated-launch.js +4 -3
  180. package/server/dist/rails-router.js +90 -8
  181. package/server/dist/result-event.js +17 -0
  182. package/server/dist/review-packet.js +1 -0
  183. package/server/dist/schemas/agent-runtime.schema.json +28 -3
  184. package/server/dist/schemas/fixtures/runtime-efficiency-summary.v1.json +790 -0
  185. package/server/dist/setup-manager.js +5 -1
  186. package/server/dist/spec-models.js +14 -2
  187. package/server/dist/worktree-node-modules.js +97 -65
  188. package/client/dist/assets/AgentBrowserCapture-BVcCK7x0.js +0 -1
  189. package/client/dist/assets/AgentModeAnalyticsPane-C5F3m29G.js +0 -2
  190. package/client/dist/assets/AgentModeCodePane-C5QuKsu0.js +0 -2
  191. package/client/dist/assets/AgentsPage-DiyJWZcU.js +0 -87
  192. package/client/dist/assets/AnalyticsPage-Dkmb0dnd.js +0 -1
  193. package/client/dist/assets/CodePage-C0dH99-t.js +0 -3
  194. package/client/dist/assets/DesktopAnalyticsPage-DuTjr2n8.js +0 -1
  195. package/client/dist/assets/DocsDialog-BVZJZHVR.js +0 -11
  196. package/client/dist/assets/DocsPage-D6KHTv8V.js +0 -11
  197. package/client/dist/assets/InteractiveJobComposer-Ck3PQxjN.js +0 -19
  198. package/client/dist/assets/JobDetailModal-DkoMH3ie.js +0 -1
  199. package/client/dist/assets/JobDetailPage-CBVivcl2.js +0 -1
  200. package/client/dist/assets/JobsPage-CzxEeca9.js +0 -1
  201. package/client/dist/assets/LoopsPage-6iW7g25k.js +0 -1
  202. package/client/dist/assets/MinimizedChatsContext-B6wVevPq.js +0 -1
  203. package/client/dist/assets/PluginsPage-Bf1z3WPF.js +0 -2
  204. package/client/dist/assets/ReviewPacketPage-CaXAwtR7.js +0 -1
  205. package/client/dist/assets/TemplatePreviewModal-9aRFpJ_J.js +0 -1
  206. package/client/dist/assets/TicketDetailModalContext-B1X5glzV.js +0 -14
  207. package/client/dist/assets/agentRuntime-BUagD2I_.js +0 -1
  208. package/client/dist/assets/agentRuntime-BkL70WtX.js +0 -1
  209. package/client/dist/assets/agentRuntime-CWXVqgqE.js +0 -1
  210. package/client/dist/assets/agentRuntime-CvNBdUAe.js +0 -1
  211. package/client/dist/assets/agentRuntime-D4RmeuNY.js +0 -1
  212. package/client/dist/assets/agentRuntime-DTidBWKg.js +0 -1
  213. package/client/dist/assets/agentRuntime-DhKYfyaU.js +0 -1
  214. package/client/dist/assets/agentRuntime-LL8_GLx9.js +0 -1
  215. package/client/dist/assets/analytics-47pYygtV.js +0 -1
  216. package/client/dist/assets/analytics-B0vt1g5U.js +0 -1
  217. package/client/dist/assets/analytics-BMzCvrCU.js +0 -1
  218. package/client/dist/assets/analytics-BlFN3Zwx.js +0 -1
  219. package/client/dist/assets/analytics-CZYzL-nR.js +0 -1
  220. package/client/dist/assets/analytics-DAsb9MJ8.js +0 -1
  221. package/client/dist/assets/analytics-FXQlQ2Yt.js +0 -1
  222. package/client/dist/assets/analytics-RnFCNkah.js +0 -1
  223. package/client/dist/assets/dashboard-BfBir_6o.js +0 -1
  224. package/client/dist/assets/file-text-BcLCfcWZ.js +0 -1
  225. package/client/dist/assets/index-Cfh9aaep.css +0 -2
  226. package/client/dist/assets/index-DYoyDWim.js +0 -76
  227. package/client/dist/assets/jira-api-ChjVGJx_.js +0 -1
  228. package/client/dist/assets/jobs-5PQJbdOf.js +0 -1
  229. package/client/dist/assets/jobs-B2B08Oy9.js +0 -1
  230. package/client/dist/assets/jobs-BJZtBbwb.js +0 -1
  231. package/client/dist/assets/jobs-BlWEsQb7.js +0 -1
  232. package/client/dist/assets/jobs-ConfD8xD.js +0 -1
  233. package/client/dist/assets/jobs-DMPU64ms.js +0 -1
  234. package/client/dist/assets/jobs-DojASiTp.js +0 -1
  235. package/client/dist/assets/jobs-kVHkNpB-.js +0 -1
  236. package/client/dist/assets/packet-BQ2tXfJI.js +0 -1
  237. package/client/dist/assets/packet-BdpOJ1Cy.js +0 -1
  238. package/client/dist/assets/packet-C3Ievb9R.js +0 -1
  239. package/client/dist/assets/packet-C4zJIG0Y.js +0 -1
  240. package/client/dist/assets/packet-Cx-zRuWn.js +0 -1
  241. package/client/dist/assets/packet-DUTGX52M.js +0 -1
  242. package/client/dist/assets/packet-DhsKtUPB.js +0 -1
  243. package/client/dist/assets/packet-z3LJ8Zyy.js +0 -1
  244. package/client/dist/assets/provider-capabilities-CXipwrXJ.js +0 -1
  245. package/client/dist/assets/settings-B3rWEwOx.js +0 -1
  246. package/client/dist/assets/settings-BcVoiMyw.js +0 -1
  247. package/client/dist/assets/settings-BlYvaQ7w.js +0 -1
  248. package/client/dist/assets/settings-CD5uEBiL.js +0 -1
  249. package/client/dist/assets/settings-CyhS0DLJ.js +0 -1
  250. package/client/dist/assets/settings-DCMFUGDs.js +0 -1
  251. package/client/dist/assets/settings-DmbYKyMJ.js +0 -1
  252. package/client/dist/assets/setup-2xGgu4Sk.js +0 -1
  253. package/client/dist/assets/setup-Ba11l2JA.js +0 -1
  254. package/client/dist/assets/setup-BzW4kMok.js +0 -1
  255. package/client/dist/assets/setup-COzwYhkJ.js +0 -1
  256. package/client/dist/assets/setup-CRVULhtF.js +0 -1
  257. package/client/dist/assets/setup-DgvlxwpE.js +0 -1
  258. package/client/dist/assets/setup-Dw_wYeEY.js +0 -1
  259. package/client/dist/assets/setup-ZPtEeJPW.js +0 -1
@@ -0,0 +1 @@
1
+ import{a as e}from"./useDesktop-CAisjKWC.js";async function t(e){let t=await e.text(),n=t?JSON.parse(t):{};if(!e.ok)throw Error(n.error||`Request failed (${e.status})`);return n}function n(t){return t??e()}var r=e=>({method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)}),i={getConnection(e){return fetch(`${n(e)}/jira/connection`).then(e=>t(e))},test(e,i){return fetch(`${n(i)}/jira/test`,r(e)).then(e=>t(e))},discoverProjects(e,i){return fetch(`${n(i)}/jira/discover-projects`,r(e)).then(e=>t(e))},discoverStatuses(e,i){return fetch(`${n(i)}/jira/discover-statuses`,r(e)).then(e=>t(e))},connect(e,i){return fetch(`${n(i)}/jira/connect`,r(e)).then(e=>t(e))},setEnabled(e,r){return fetch(`${n(r)}/jira/connection`,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({enabled:e})}).then(e=>t(e))},patchConnection(e,r){return fetch(`${n(r)}/jira/connection`,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)}).then(e=>t(e))},listStatuses(e){return fetch(`${n(e)}/jira/statuses`).then(e=>t(e))},moveSpecToStatus(e,i,a){return fetch(`${n(a)}/jira/specs/${e}/move-to-status`,r({status:i})).then(e=>t(e))},discardSpec(e,i,a){return fetch(`${n(a)}/jira/specs/${e}/discard`,r({comment:i})).then(e=>t(e))},getSpecDetails(e,r){return fetch(`${n(r)}/jira/specs/${e}/details`).then(e=>t(e))},disconnect(e){return fetch(`${n(e)}/jira/connection`,{method:`DELETE`}).then(e=>t(e))},syncNow(e){return fetch(`${n(e)}/jira/sync`,{method:`POST`}).then(e=>t(e))},resume(e){return fetch(`${n(e)}/jira/resume`,{method:`POST`}).then(e=>t(e))},listOutbox(e,r){let i=e?`?state=${e}`:``;return fetch(`${n(r)}/jira/outbox${i}`).then(e=>t(e))},retryOutbox(e,r){return fetch(`${n(r)}/jira/outbox/${e}/retry`,{method:`POST`}).then(e=>t(e))}};export{i as t};
@@ -0,0 +1 @@
1
+ var e={running:`in esecuzione`,completed:`completato`,done:`concluso`,failed:`fallito`,canceled:`annullato`,queued:`in coda`,zombie:`zombie`,skipped:`saltato`},t={running:`Il job è in esecuzione`,completed:`Job completato con successo`,failed:`Il job è uscito con un codice di uscita diverso da zero`,canceled:`Il job è stato annullato manualmente`,queued:`Il job è in attesa nella coda`,queuedToRun:`Il job è in attesa di essere eseguito`,zombie:`Il job è stato terminato automaticamente dopo un'inattività prolungata`,skipped:`Il job è stato saltato perché un job padre della pipeline è fallito`},n={running:`in esecuzione`,completed:`completato`,failed:`fallito`,canceled:`annullato`,zombie_terminated:`zombie`,queued:`in coda`,skipped:`saltato`},r={title:`Job`,exportJobs:`Esporta job`,proposalDeleted:`Proposta eliminata`,proposal:{title:`Proposta`,noContent:`Ancora nessun contenuto nella proposta.`,githubIssue:`Issue GitHub:`,status:{input:`In attesa di input`,exploring:`Esplorazione`,review:`Pronta per la revisione`,refining:`Perfezionamento`,creatingIssue:`Creazione issue`,created:`Creata`,cancelled:`Annullata`,unknown:`Stato sconosciuto: {{status}}`}}},i={breadcrumbDashboard:`Dashboard`,breadcrumbJob:`Job #{{id}}`,notFound:`Job non trovato`,notFoundDescription:`L'ID job "{{id}}" non esiste`,backToDashboard:`Torna alla dashboard`,startedAgo:`Avviato {{timeAgo}}`,queuedWaiting:`In coda — in attesa di avvio`,exportDiagnostic:`Esporta diagnostica`,exportDiagnosticAria:`Esporta bundle diagnostico`,exportDiagnosticTooltip:`Scarica uno ZIP con telemetria, log e riepilogo di questo job`,reExecute:`Riesegui`,reExecuteTooltip:`Avvia un nuovo job con lo stesso comando`,cancelJob:`Annulla job`,cancelJobTooltip:`Invia SIGTERM al processo in esecuzione. Il job verrà contrassegnato come annullato.`,cancelInteractive:`Scarta`,finalizeJob:`Finalizza job`,finalizing:`Finalizzazione…`,finalizeJobTooltip:`Termina questa sessione interattiva e somma al totale del job i token e il costo di ogni turno.`,interactive:{ready:`Pronto — invia un prompt`,working:`L'agente sta lavorando…`,placeholder:`Invia un messaggio al job in esecuzione…`,send:`Invia`,liveTotals:"{{turns}} turni · ${{cost}}",autoHint:`Questo job segue il suo piano e termina da solo — i messaggi sono indicazioni opzionali.`,wrapUp:`Concludi ora`,wrapUpTooltip:`Termina la sessione ora — il job si completa con il lavoro prodotto finora, con i token e il costo di ogni turno sommati al totale.`,wrapUpStep:`Chiudi questo passo`,wrapUpStepTooltip:`Termina il passo corrente ora — il loop avanza con quanto il passo ha prodotto finora.`,wrappingUp:`Conclusione in corso…`,queued_one:`{{count}} messaggio in coda`,queued_other:`{{count}} messaggi in coda`,waitingForStep:`Tra un passo e l'altro — il loop sta decidendo cosa eseguire dopo. Potrai inviare un messaggio quando partirà il prossimo passo IA.`,waitingForStepShort:`In attesa del prossimo passo…`,sendDisabledEmpty:`Scrivi prima un messaggio`,sendDisabledWaiting:`Al momento non c'è nessuna sessione di passo attiva`},toast:{jobDeleted:`Job eliminato`,cancelSignalSent:`Segnale di annullamento inviato`,cancelSignalSentDescription:`Il job si fermerà al prossimo punto sicuro`,failed:`Operazione non riuscita`,networkError:`Errore di rete`,exportFailed:`Esportazione non riuscita`,exportFailedHttp:`Esportazione non riuscita (HTTP {{status}})`,jobRequeued:`Job rimesso in coda`,spawnFailed:`Impossibile avviare il job`,finalizeScheduled:`Finalizzazione del job interattivo…`,finalizeFailed:`Impossibile finalizzare il job`,sendFailed:`Impossibile inviare il messaggio`,wrapUpScheduled:`Conclusione del job…`,wrapUpStepScheduled:`Chiusura del passo — il loop avanza con quanto prodotto`}},a={inProgress:`Job in corso`,completed:`Job completato`,failed:`Job fallito`,duration:`Durata`,cost:`Costo`,turns:`Turni`,tokens:`Token`,filesCount_one:`{{count}} file`,filesCount_other:`{{count}} file`,pipelineTotal:`Totale pipeline ({{count}} fasi)`,totalCost:`Costo totale`,totalTokens:`Token totali`,filesModified:`File modificati`,zoneInProgress:`In corso`,zoneFinal:`Riepilogo finale`,zoneFinalPending:`Riepilogo finale — calcolato al termine`,pendingCaption:`Calcolato al termine`,pendingTooltip:`Questa è la cifra reale del provider; appare al termine del job.`,costTooltip:`Il costo reale viene fatturato dal provider alla chiusura del job.`,liveTooltip:`In diretta`,explainer:`Costo, turni e token sono le cifre reali del provider e appaiono al termine.`,notAvailable:`Non disponibile`,steps_one:`{{count}} passo`,steps_other:`{{count}} passi`,activity:{editing:`Modifica di {{arg}}`,writing:`Scrittura di {{arg}}`,reading:`Lettura di {{arg}}`,searching:`Ricerca di «{{arg}}»`,running:`Esecuzione: {{arg}}`,thinking:`Sta pensando…`,reasoning:`Sta ragionando…`,working:`Al lavoro…`,connecting:`Connessione all'agente…`,starting:`Avvio…`,delegating:`Delego a {{arg}}`},pipelinePartial:`≥ mostrato — {{count}} fase/i senza costo registrato`,pipelinePartialTooltip:`Alcune fasi si sono interrotte prima di riportare il costo, quindi questo totale è un limite inferiore.`,pipelineCostUnavailable:`La telemetria dei costi non è disponibile per nessuna fase.`,pipelineUsageUnavailable:`La telemetria dei token non è disponibile per nessuna fase.`,pipelineUsagePartial:`≥ mostrato — fasi senza telemetria dei token: {{count}}`,pipelineUsageTooltip:`I provider possono completare le fasi senza esporre la telemetria dei token; è incluso solo l'utilizzo noto.`,costUnknownLocal:`Costo sconosciuto (motore locale)`,costUnknownLocalTooltip:`Costo sconosciuto (motore locale). Aggiungi tariffe alla connessione per vedere una stima.`},o={showMore:`+ altri {{count}}`,showLess:`Mostra meno`,deletedTicket:`#{{id}} (eliminato)`,deletedTooltip:`Il ticket non esiste più`},s={notFound:`Job non trovato`,cancelConfirmTitle:`Annullare il job?`,cancelConfirmDescription:`Il job si fermerà al prossimo punto sicuro. Questa azione è irreversibile.`,keepRunning:`Continua l'esecuzione`,cancelJob:`Annulla job`,stopRun:`Ferma esecuzione`,stopRunConfirmTitle:`Fermare questa esecuzione?`,stopRunConfirmDescription:`L'esecuzione del loop si fermerà al prossimo confine di step. Questa azione non può essere annullata.`,toast:{cancelSignalSent:`Segnale di annullamento inviato`,cancelSignalSentDescription:`Il job si fermerà al prossimo punto sicuro`,stopSignalSent:`Segnale di arresto inviato`,stopSignalSentDescription:`L'esecuzione si fermerà al prossimo confine di step`,cancelFailed:`Annullamento non riuscito`,networkError:`Errore di rete`}},c={title:`Confronto job`,jobN:`Job {{n}}`,loadFailed:`Impossibile caricare il confronto: {{error}}`,duration:`Durata`,cost:`Costo`,tokensOut:`Token in uscita`,tokensIn:`Token in ingresso`,cacheRead:`Lettura cache`,model:`Modello`,phasesDone:`Fasi completate`,betterValueHint:`Le evidenziazioni verdi indicano il valore migliore`},l={emptyTitle:`Ancora nessun job`,emptyDescription:`Esegui un comando qui sopra per vedere qui la cronologia dei job`,loadFailed:`Impossibile caricare i job`,filterAll:`Tutti ({{count}})`,filterStatus:`{{status}} ({{count}})`,fromDate:`Dalla data`,toDate:`Alla data`,clear:`Cancella`,exitCompareMode:`Esci dalla modalità confronto`,compareTwoJobs:`Confronta 2 job`,clearJobs:`Cancella job`,selectTwoToCompare:`Seleziona 2 job da confrontare`,selectOneMore:`Seleziona 1 altro job`,readyToCompare:`Pronto — clicca Confronta`,compareAction:`Confronta →`,colStatus:`Stato`,colCommand:`Comando`,colDuration:`Durata`,colTokens:`Token`,colCost:`Costo`,colStarted:`Avvio`,profileTooltip:`Profilo: {{name}}`,pipelinePart:`Parte di una pipeline`,pipelineDependsOn:`(dipende dal passaggio precedente)`,deleteProposal:`Elimina proposta`,loadMore:`Carica altri ({{count}} rimanenti)`,priority:{critical:`critica`,high:`alta`,normal:`normale`,low:`bassa`},clearModal:{title:`Cancella job`,jobsInHistory_one:`{{count}} job nella cronologia`,jobsInHistory_other:`{{count}} job nella cronologia`,clearAll_one:`Cancella {{count}} job`,clearAll_other:`Cancella tutti i {{count}} job`,orByRange:`Oppure cancella per intervallo di date:`,fromPlaceholder:`Da`,toPlaceholder:`A`,clearInRange_one:`Cancella {{count}} job nell'intervallo`,clearInRange_other:`Cancella {{count}} job nell'intervallo`,clearRange:`Cancella intervallo`},deleteProposalConfirm:{title:`Eliminare la proposta?`,description:`Verrà eliminata definitivamente 1 proposta. Questa azione è irreversibile.`},toast:{cleared_one:`{{count}} job cancellato`,cleared_other:`{{count}} job cancellati`,clearFailed:`Impossibile cancellare i job`,networkError:`Errore di rete`}},u={none:`Nessun job attivo`,noneHint:`Seleziona un comando qui sotto per avviare un job`,exitCode:`exit {{code}}`,cancelTooltip:`Invia SIGTERM al processo claude in esecuzione`,viewLogs:`Vedi log`,toast:{cancelRequested:`Annullamento del job richiesto`,cancelRequestedDescription:`Invio di SIGTERM al processo`,cancelFailed:`Impossibile annullare il job`,networkError:`Errore di rete durante l'annullamento del job`}},d={setup:`Preparazione`,iteration:`Iterazione {{current}}/{{limit}}`,iterationBadge:`iter {{count}}`,follow:`Seguendo in diretta`,resumeFollow:`Riprendi a seguire`,expandAll:`Espandi tutto`,collapseAll:`Comprimi tutto`,copyStep:`Copia passo`,copied:`Passo copiato negli appunti`,stepDetail:`Dettagli del passo`,stepDetailTemplate:`Modello`,stepDetailCommand:`Comando`,copyCommand:`Copia`,interrupted:`Interrotto`,waiting:`In attesa del prossimo passo...`,stepMapAria:`Mappa dei passi del loop`,stalled:`Bloccato`,stalledIdle_one:`Nessun output dal provider per {{count}} minuto — l'app ha fermato questo tentativo`,stalledIdle_other:`Nessun output dal provider per {{count}} minuti — l'app ha fermato questo tentativo`,providerLimit:`Limite del provider`,providerLimitHint:`Il provider ha risposto con un avviso di limite d'uso, quindi l'app ha fermato la run invece di continuare a ciclare.`},f={loading:`Caricamento dei log...`,empty:`Ancora nessun output di log`,filterPlaceholder:`Filtra i log...`,copySuccess:`Log copiato negli appunti`,copyFailed:`Impossibile copiare il log`,lineCount:`{{filtered}} / {{total}} righe`,jumpToBottom:`Vai in fondo`,phaseLines_one:`{{count}} riga`,phaseLines_other:`{{count}} righe`,noMatchingLines:`Nessuna riga corrispondente`,noOutput:`Nessun output`,completed:`Completato`,turns_one:`{{count}} turno`,turns_other:`{{count}} turni`},p={title:`Risultato dell’esecuzione`,execution:`Esecuzione`,implementation:`Implementazione`,validation:`Validazione`,archive:`Archiviazione`,delivery:`Consegna`,counters:`Passaggi: {{steps}} · Valutazioni: {{evaluations}} · Turni dell’agente: {{turns}}`,unavailable:`Non disponibile`,evidence:`Prove, eccezioni e tempi per fase`,snapshot:`Registrato al completamento: {{change}} · {{at}}`,acceptedBy:`Accettato da {{by}}`,required:`Obbligatorio`,supplementary:`Supplementare`,attempts:`Tentativi: {{count}}`,phaseCostUnavailable:`Il costo per fase di Core non è disponibile; il consumo del fornitore è attribuito ai passaggi del ciclo.`,noCoreEvidence:`Prove di accettazione non disponibili. Il successo dell’esecuzione da solo non conferma il completamento del ticket.`,status:{success:`Riuscita`,failed:`Fallita`,blocked:`Bloccata`,stopped:`Interrotta`,stalled:`Senza progressi`,complete:`Completa`,incomplete:`Incompleta`,verified:`Verificata`,"with-exceptions":`Verificata con eccezioni`,pending:`In attesa`,"pending-host":`Consegna dell’host in attesa`,done:`Completato`,running:`In corso`,skipped:`Saltato`,passed:`Superato`,unavailable:`Non disponibile`}},m={details:`Dettagli`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`Riportato dal provider finora; le cifre definitive arrivano al termine del job.`,questionPending:`Rispondi alla domanda`},h={statusLabel:e,statusTooltip:t,statusName:n,page:r,detail:i,statusPanel:a,ticketHeader:o,modal:s,comparison:c,recent:l,activeJob:u,loopExplorer:d,logViewer:f,completion:p,runHeader:m};export{u as activeJob,c as comparison,p as completion,h as default,i as detail,f as logViewer,d as loopExplorer,s as modal,r as page,l as recent,m as runHeader,e as statusLabel,n as statusName,a as statusPanel,t as statusTooltip,o as ticketHeader};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({activeJob:()=>f,comparison:()=>u,completion:()=>h,default:()=>_,detail:()=>o,logViewer:()=>m,loopExplorer:()=>p,modal:()=>l,page:()=>a,recent:()=>d,runHeader:()=>g,statusLabel:()=>n,statusName:()=>i,statusPanel:()=>s,statusTooltip:()=>r,ticketHeader:()=>c}),n={running:`running`,completed:`completed`,done:`done`,failed:`failed`,canceled:`canceled`,queued:`queued`,zombie:`zombie`,skipped:`skipped`},r={running:`Job is actively executing`,completed:`Job completed successfully`,failed:`Job exited with a non-zero exit code`,canceled:`Job was manually canceled`,queued:`Job is waiting in the queue`,queuedToRun:`Job is waiting to run`,zombie:`Job was auto-terminated after prolonged inactivity`,skipped:`Job was skipped because a parent job in the pipeline failed`},i={running:`running`,completed:`completed`,failed:`failed`,canceled:`canceled`,zombie_terminated:`zombie`,queued:`queued`,skipped:`skipped`},a={title:`Jobs`,exportJobs:`Export Jobs`,proposalDeleted:`Proposal deleted`,proposal:{title:`Proposal`,noContent:`No proposal content yet.`,githubIssue:`GitHub Issue:`,status:{input:`Awaiting input`,exploring:`Exploring`,review:`Ready for review`,refining:`Refining`,creatingIssue:`Creating issue`,created:`Created`,cancelled:`Cancelled`,unknown:`Unknown status: {{status}}`}}},o={breadcrumbDashboard:`Dashboard`,breadcrumbJob:`Job #{{id}}`,notFound:`Job not found`,notFoundDescription:`The job ID "{{id}}" doesn't exist`,backToDashboard:`Back to Dashboard`,startedAgo:`Started {{timeAgo}}`,queuedWaiting:`Queued — waiting to start`,exportDiagnostic:`Export diagnostic`,exportDiagnosticAria:`Export diagnostic bundle`,exportDiagnosticTooltip:`Download ZIP with telemetry, logs, and summary for this job`,reExecute:`Re-execute`,reExecuteTooltip:`Spawn a new job with the same command`,cancelJob:`Cancel Job`,cancelJobTooltip:`Send SIGTERM to the running process. The job will be marked as canceled.`,cancelInteractive:`Discard`,finalizeJob:`Finalize Job`,finalizing:`Finalizing…`,finalizeJobTooltip:`End this interactive session and roll every turn's tokens and cost into the job total.`,interactive:{ready:`Ready — send a prompt`,working:`Agent working…`,placeholder:`Send a message to the running job…`,send:`Send`,liveTotals:"{{turns}} turns · ${{cost}}",autoHint:`This job follows its plan and finishes on its own — messages are optional steering.`,wrapUp:`Wrap up now`,wrapUpTooltip:`End the session now — the job completes with the work produced so far, every turn's tokens and cost rolled into the total.`,wrapUpStep:`Settle this step`,wrapUpStepTooltip:`End the current step now — the loop advances with what the step has produced so far.`,wrappingUp:`Wrapping up…`,queued_one:`{{count}} queued message`,queued_other:`{{count}} queued messages`,waitingForStep:`Between steps — the loop is deciding what runs next. You can send a message when the next AI step starts.`,waitingForStepShort:`Waiting for the next step…`,sendDisabledEmpty:`Type a message first`,sendDisabledWaiting:`No active step session right now`},toast:{jobDeleted:`Job deleted`,cancelSignalSent:`Cancel signal sent`,cancelSignalSentDescription:`Job will stop at the next safe point`,failed:`Failed`,networkError:`Network error`,exportFailed:`Export failed`,exportFailedHttp:`Export failed (HTTP {{status}})`,jobRequeued:`Job re-queued`,spawnFailed:`Failed to spawn job`,finalizeScheduled:`Finalizing interactive job…`,finalizeFailed:`Failed to finalize job`,sendFailed:`Failed to send message`,wrapUpScheduled:`Wrapping up the job…`,wrapUpStepScheduled:`Settling the step — the loop advances with what it produced`}},s={inProgress:`Job in progress`,completed:`Job completed`,failed:`Job failed`,duration:`Duration`,cost:`Cost`,turns:`Turns`,tokens:`Tokens`,filesCount_one:`{{count}} file`,filesCount_other:`{{count}} files`,pipelineTotal:`Pipeline total ({{count}} phases)`,totalCost:`Total cost`,totalTokens:`Total tokens`,filesModified:`Files modified`,zoneInProgress:`In progress`,zoneFinal:`Final summary`,zoneFinalPending:`Final summary — calculated when finished`,pendingCaption:`Calculated when finished`,pendingTooltip:`This is the provider's real figure; it appears when the job finishes.`,costTooltip:`The real cost is billed by the provider when the job closes.`,liveTooltip:`Live`,explainer:`Cost, turns and tokens are the provider's real figures and appear when the job finishes.`,notAvailable:`Not available`,steps_one:`{{count}} step`,steps_other:`{{count}} steps`,activity:{editing:`Editing {{arg}}`,writing:`Writing {{arg}}`,reading:`Reading {{arg}}`,searching:`Searching “{{arg}}”`,running:`Running: {{arg}}`,thinking:`Thinking…`,reasoning:`Reasoning…`,working:`Working…`,connecting:`Connecting to the agent…`,starting:`Starting…`,delegating:`Delegating to {{arg}}`},pipelinePartial:`≥ shown — {{count}} phase(s) have no recorded cost yet`,pipelinePartialTooltip:`Some phases did not report cost, so this total is a lower bound.`,pipelineCostUnavailable:`Cost telemetry is unavailable for every phase.`,pipelineUsageUnavailable:`Token telemetry is unavailable for every phase.`,pipelineUsagePartial:`≥ shown — {{count}} phase(s) have no token telemetry`,pipelineUsageTooltip:`Providers may complete phases without exposing token telemetry; only known usage is included.`,costUnknownLocal:`Cost unknown (local engine)`,costUnknownLocalTooltip:`Cost unknown (local engine). Add rates to the connection to see an estimate.`},c={showMore:`+ {{count}} more`,showLess:`Show less`,deletedTicket:`#{{id}} (deleted)`,deletedTooltip:`Ticket no longer exists`},l={notFound:`Job not found`,cancelConfirmTitle:`Cancel job?`,cancelConfirmDescription:`The job will stop at the next safe point. This action cannot be undone.`,keepRunning:`Keep running`,cancelJob:`Cancel job`,stopRun:`Stop run`,stopRunConfirmTitle:`Stop this run?`,stopRunConfirmDescription:`The loop run will stop at the next step boundary. This action cannot be undone.`,toast:{cancelSignalSent:`Cancel signal sent`,cancelSignalSentDescription:`Job will stop at the next safe point`,stopSignalSent:`Stop signal sent`,stopSignalSentDescription:`The run will stop at the next step boundary`,cancelFailed:`Failed to cancel`,networkError:`Network error`}},u={title:`Job Comparison`,jobN:`Job {{n}}`,loadFailed:`Failed to load comparison: {{error}}`,duration:`Duration`,cost:`Cost`,tokensOut:`Tokens out`,tokensIn:`Tokens in`,cacheRead:`Cache read`,model:`Model`,phasesDone:`Phases done`,betterValueHint:`Green highlights indicate better value`},d={emptyTitle:`No jobs yet`,emptyDescription:`Run a command above to see your job history here`,loadFailed:`Failed to load jobs`,filterAll:`All ({{count}})`,filterStatus:`{{status}} ({{count}})`,fromDate:`From date`,toDate:`To date`,clear:`Clear`,exitCompareMode:`Exit compare mode`,compareTwoJobs:`Compare 2 jobs`,clearJobs:`Clear jobs`,selectTwoToCompare:`Select 2 jobs to compare`,selectOneMore:`Select 1 more job`,readyToCompare:`Ready — click compare`,compareAction:`Compare →`,colStatus:`Status`,colCommand:`Command`,colDuration:`Duration`,colTokens:`Tokens`,colCost:`Cost`,colStarted:`Started`,profileTooltip:`Profile: {{name}}`,pipelinePart:`Part of a pipeline`,pipelineDependsOn:`(depends on previous step)`,deleteProposal:`Delete proposal`,loadMore:`Load more ({{count}} remaining)`,priority:{critical:`critical`,high:`high`,normal:`normal`,low:`low`},clearModal:{title:`Clear Jobs`,jobsInHistory_one:`{{count}} job in history`,jobsInHistory_other:`{{count}} jobs in history`,clearAll_one:`Clear all {{count}} job`,clearAll_other:`Clear all {{count}} jobs`,orByRange:`Or clear by date range:`,fromPlaceholder:`From`,toPlaceholder:`To`,clearInRange_one:`Clear {{count}} job in range`,clearInRange_other:`Clear {{count}} jobs in range`,clearRange:`Clear range`},deleteProposalConfirm:{title:`Delete proposal?`,description:`This will permanently delete 1 proposal. This action cannot be undone.`},toast:{cleared_one:`Cleared {{count}} job`,cleared_other:`Cleared {{count}} jobs`,clearFailed:`Failed to clear jobs`,networkError:`Network error`}},f={none:`No active job`,noneHint:`Select a command below to start a job`,exitCode:`exit {{code}}`,cancelTooltip:`Send SIGTERM to the running claude process`,viewLogs:`View Logs`,toast:{cancelRequested:`Job cancellation requested`,cancelRequestedDescription:`Sending SIGTERM to the process`,cancelFailed:`Failed to cancel job`,networkError:`Network error canceling job`}},p={setup:`Setup`,iteration:`Iteration {{current}}/{{limit}}`,iterationBadge:`iter {{count}}`,follow:`Following live`,resumeFollow:`Resume follow`,expandAll:`Expand all`,collapseAll:`Collapse all`,copyStep:`Copy step`,copied:`Step copied to clipboard`,stepDetail:`Step details`,stepDetailTemplate:`Template`,stepDetailCommand:`Command`,copyCommand:`Copy`,interrupted:`Interrupted`,waiting:`Waiting for the next step…`,stepMapAria:`Loop step map`,stalled:`Stalled`,stalledIdle_one:`No provider output for {{count}} minute — the app stopped this attempt`,stalledIdle_other:`No provider output for {{count}} minutes — the app stopped this attempt`,providerLimit:`Provider limit`,providerLimitHint:`The provider answered with a usage or rate-limit notice, so the app stopped the run instead of cycling.`},m={loading:`Loading logs...`,empty:`No log output yet`,filterPlaceholder:`Filter logs...`,copySuccess:`Log copied to clipboard`,copyFailed:`Failed to copy log`,lineCount:`{{filtered}} / {{total}} lines`,jumpToBottom:`Jump to bottom`,phaseLines_one:`{{count}} line`,phaseLines_other:`{{count}} lines`,noMatchingLines:`No matching lines`,noOutput:`No output`,completed:`Completed`,turns_one:`{{count}} turn`,turns_other:`{{count}} turns`},h={title:`Run result`,execution:`Execution`,implementation:`Implementation`,validation:`Validation`,archive:`Archive`,delivery:`Delivery`,counters:`Steps: {{steps}} · Decider evaluations: {{evaluations}} · Agent turns: {{turns}}`,unavailable:`Unavailable`,evidence:`Evidence, exceptions and phase timings`,snapshot:`Recorded at completion: {{change}} · {{at}}`,acceptedBy:`Accepted by {{by}}`,required:`Required`,supplementary:`Supplementary`,attempts:`Attempts: {{count}}`,phaseCostUnavailable:`Cost per Core phase is unavailable; provider usage is attributed to loop steps.`,noCoreEvidence:`Acceptance evidence unavailable. Execution success alone does not confirm ticket completion.`,status:{success:`Succeeded`,failed:`Failed`,blocked:`Blocked`,stopped:`Stopped`,stalled:`Stalled`,complete:`Complete`,incomplete:`Incomplete`,verified:`Verified`,"with-exceptions":`Verified with exceptions`,pending:`Pending`,"pending-host":`Pending host delivery`,done:`Done`,running:`Running`,skipped:`Skipped`,passed:`Passed`,unavailable:`Unavailable`}},g={details:`Details`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`Reported by the provider so far; the final figures arrive when the job finishes.`,questionPending:`Answer the question`},_={statusLabel:n,statusTooltip:r,statusName:i,page:a,detail:o,statusPanel:s,ticketHeader:c,modal:l,comparison:u,recent:d,activeJob:f,loopExplorer:p,logViewer:m,completion:h,runHeader:g};export{t};
@@ -0,0 +1 @@
1
+ var e={running:`en ejecución`,completed:`completado`,done:`hecho`,failed:`fallido`,canceled:`cancelado`,queued:`en cola`,zombie:`zombie`,skipped:`omitido`},t={running:`El job se está ejecutando`,completed:`El job se completó correctamente`,failed:`El job terminó con un código de salida distinto de cero`,canceled:`El job se canceló manualmente`,queued:`El job está esperando en la cola`,queuedToRun:`El job está esperando para ejecutarse`,zombie:`El job se terminó automáticamente tras una inactividad prolongada`,skipped:`El job se omitió porque falló un job padre del pipeline`},n={running:`en ejecución`,completed:`completado`,failed:`fallido`,canceled:`cancelado`,zombie_terminated:`zombie`,queued:`en cola`,skipped:`omitido`},r={title:`Jobs`,exportJobs:`Exportar jobs`,proposalDeleted:`Propuesta eliminada`,proposal:{title:`Propuesta`,noContent:`Aún no hay contenido de la propuesta.`,githubIssue:`Issue de GitHub:`,status:{input:`Esperando información`,exploring:`Explorando`,review:`Lista para revisión`,refining:`Refinando`,creatingIssue:`Creando incidencia`,created:`Creada`,cancelled:`Cancelada`,unknown:`Estado desconocido: {{status}}`}}},i={breadcrumbDashboard:`Dashboard`,breadcrumbJob:`Job #{{id}}`,notFound:`Job no encontrado`,notFoundDescription:`El ID de job «{{id}}» no existe`,backToDashboard:`Volver al Dashboard`,startedAgo:`Iniciado {{timeAgo}}`,queuedWaiting:`En cola — esperando para empezar`,exportDiagnostic:`Exportar diagnóstico`,exportDiagnosticAria:`Exportar paquete de diagnóstico`,exportDiagnosticTooltip:`Descarga un ZIP con la telemetría, los logs y el resumen de este job`,reExecute:`Reejecutar`,reExecuteTooltip:`Lanza un nuevo job con el mismo comando`,cancelJob:`Cancelar job`,cancelJobTooltip:`Envía SIGTERM al proceso en ejecución. El job se marcará como cancelado.`,cancelInteractive:`Descartar`,finalizeJob:`Finalizar job`,finalizing:`Finalizando…`,finalizeJobTooltip:`Termina esta sesión interactiva e incorpora los tokens y el coste de cada turno al total del job.`,interactive:{ready:`Listo — envía un prompt`,working:`El agente está trabajando…`,placeholder:`Envía un mensaje al job en ejecución…`,send:`Enviar`,liveTotals:"{{turns}} turnos · ${{cost}}",autoHint:`Este job sigue su plan y termina solo — los mensajes son orientación opcional.`,wrapUp:`Terminar ahora`,wrapUpTooltip:`Finaliza la sesión ahora — el job se completa con el trabajo producido hasta el momento, con los tokens y el coste de cada turno sumados al total.`,wrapUpStep:`Cerrar este paso`,wrapUpStepTooltip:`Finaliza el paso actual ahora — el loop avanza con lo que el paso ha producido hasta el momento.`,wrappingUp:`Terminando…`,queued_one:`{{count}} mensaje en cola`,queued_other:`{{count}} mensajes en cola`,waitingForStep:`Entre pasos — el loop está decidiendo qué se ejecuta a continuación. Podrás enviar un mensaje cuando empiece el siguiente paso de IA.`,waitingForStepShort:`Esperando el siguiente paso…`,sendDisabledEmpty:`Escribe un mensaje primero`,sendDisabledWaiting:`Ahora mismo no hay ninguna sesión de paso activa`},toast:{jobDeleted:`Job eliminado`,cancelSignalSent:`Señal de cancelación enviada`,cancelSignalSentDescription:`El job se detendrá en el siguiente punto seguro`,failed:`Error`,networkError:`Error de red`,exportFailed:`Error al exportar`,exportFailedHttp:`Error al exportar (HTTP {{status}})`,jobRequeued:`Job reencolado`,spawnFailed:`No se pudo lanzar el job`,finalizeScheduled:`Finalizando job interactivo…`,finalizeFailed:`No se pudo finalizar el job`,sendFailed:`No se pudo enviar el mensaje`,wrapUpScheduled:`Terminando el job…`,wrapUpStepScheduled:`Cerrando el paso — el loop avanza con lo que ha producido`}},a={inProgress:`Job en curso`,completed:`Job completado`,failed:`Job fallido`,duration:`Duración`,cost:`Coste`,turns:`Turnos`,tokens:`Tokens`,filesCount_one:`{{count}} archivo`,filesCount_other:`{{count}} archivos`,pipelineTotal:`Total del pipeline ({{count}} fases)`,totalCost:`Coste total`,totalTokens:`Tokens totales`,filesModified:`Archivos modificados`,zoneInProgress:`En curso`,zoneFinal:`Resumen final`,zoneFinalPending:`Resumen final — se calcula al terminar`,pendingCaption:`Se calcula al terminar`,pendingTooltip:`Esta cifra es la real del proveedor; aparece al terminar el job.`,costTooltip:`El coste real lo factura el proveedor al cerrar el job.`,liveTooltip:`En vivo`,explainer:`Las cifras de coste, turnos y tokens son las reales del proveedor y aparecen al terminar.`,notAvailable:`No disponible`,steps_one:`{{count}} paso`,steps_other:`{{count}} pasos`,activity:{editing:`Editando {{arg}}`,writing:`Escribiendo {{arg}}`,reading:`Leyendo {{arg}}`,searching:`Buscando “{{arg}}”`,running:`Ejecutando: {{arg}}`,thinking:`Pensando…`,reasoning:`Razonando…`,working:`Trabajando…`,connecting:`Conectando con el agente…`,starting:`Iniciando…`,delegating:`Delegando a {{arg}}`},pipelinePartial:`≥ mostrado — {{count}} fase(s) aún sin coste registrado`,pipelinePartialTooltip:`Algunas fases no informaron el coste, por lo que este total es un mínimo.`,pipelineCostUnavailable:`La telemetría de coste no está disponible en ninguna fase.`,pipelineUsageUnavailable:`La telemetría de tokens no está disponible en ninguna fase.`,pipelineUsagePartial:`≥ mostrado — {{count}} fase(s) sin telemetría de tokens`,pipelineUsageTooltip:`Los proveedores pueden completar fases sin exponer telemetría de tokens; solo se incluye el uso conocido.`,costUnknownLocal:`Coste desconocido (motor local)`,costUnknownLocalTooltip:`Coste desconocido (motor local). Añade tarifas a la conexión para ver una estimación.`},o={showMore:`+ {{count}} más`,showLess:`Mostrar menos`,deletedTicket:`#{{id}} (eliminado)`,deletedTooltip:`El ticket ya no existe`},s={notFound:`Job no encontrado`,cancelConfirmTitle:`¿Cancelar el job?`,cancelConfirmDescription:`El job se detendrá en el siguiente punto seguro. Esta acción no se puede deshacer.`,keepRunning:`Seguir ejecutando`,cancelJob:`Cancelar job`,stopRun:`Detener ejecución`,stopRunConfirmTitle:`¿Detener esta ejecución?`,stopRunConfirmDescription:`La ejecución del loop se detendrá en el siguiente límite de paso. Esta acción no se puede deshacer.`,toast:{cancelSignalSent:`Señal de cancelación enviada`,cancelSignalSentDescription:`El job se detendrá en el siguiente punto seguro`,stopSignalSent:`Señal de detención enviada`,stopSignalSentDescription:`La ejecución se detendrá en el siguiente límite de paso`,cancelFailed:`No se pudo cancelar`,networkError:`Error de red`}},c={title:`Comparación de jobs`,jobN:`Job {{n}}`,loadFailed:`No se pudo cargar la comparación: {{error}}`,duration:`Duración`,cost:`Coste`,tokensOut:`Tokens de salida`,tokensIn:`Tokens de entrada`,cacheRead:`Lectura de caché`,model:`Modelo`,phasesDone:`Fases completadas`,betterValueHint:`Los resaltados en verde indican mejor valor`},l={emptyTitle:`Aún no hay jobs`,emptyDescription:`Ejecuta un comando arriba para ver aquí tu historial de jobs`,loadFailed:`No se pudieron cargar los jobs`,filterAll:`Todos ({{count}})`,filterStatus:`{{status}} ({{count}})`,fromDate:`Fecha de inicio`,toDate:`Fecha de fin`,clear:`Limpiar`,exitCompareMode:`Salir del modo comparación`,compareTwoJobs:`Comparar 2 jobs`,clearJobs:`Limpiar jobs`,selectTwoToCompare:`Selecciona 2 jobs para comparar`,selectOneMore:`Selecciona 1 job más`,readyToCompare:`Listo — haz clic en comparar`,compareAction:`Comparar →`,colStatus:`Estado`,colCommand:`Comando`,colDuration:`Duración`,colTokens:`Tokens`,colCost:`Coste`,colStarted:`Inicio`,profileTooltip:`Perfil: {{name}}`,pipelinePart:`Parte de un pipeline`,pipelineDependsOn:`(depende del paso anterior)`,deleteProposal:`Eliminar propuesta`,loadMore:`Cargar más ({{count}} restantes)`,priority:{critical:`crítica`,high:`alta`,normal:`normal`,low:`baja`},clearModal:{title:`Limpiar jobs`,jobsInHistory_one:`{{count}} job en el historial`,jobsInHistory_other:`{{count}} jobs en el historial`,clearAll_one:`Limpiar {{count}} job`,clearAll_other:`Limpiar los {{count}} jobs`,orByRange:`O limpiar por rango de fechas:`,fromPlaceholder:`Desde`,toPlaceholder:`Hasta`,clearInRange_one:`Limpiar {{count}} job del rango`,clearInRange_other:`Limpiar {{count}} jobs del rango`,clearRange:`Limpiar rango`},deleteProposalConfirm:{title:`¿Eliminar la propuesta?`,description:`Se eliminará permanentemente 1 propuesta. Esta acción no se puede deshacer.`},toast:{cleared_one:`{{count}} job eliminado`,cleared_other:`{{count}} jobs eliminados`,clearFailed:`No se pudieron limpiar los jobs`,networkError:`Error de red`}},u={none:`Ningún job activo`,noneHint:`Selecciona un comando abajo para iniciar un job`,exitCode:`exit {{code}}`,cancelTooltip:`Envía SIGTERM al proceso de claude en ejecución`,viewLogs:`Ver logs`,toast:{cancelRequested:`Cancelación del job solicitada`,cancelRequestedDescription:`Enviando SIGTERM al proceso`,cancelFailed:`No se pudo cancelar el job`,networkError:`Error de red al cancelar el job`}},d={setup:`Preparación`,iteration:`Iteración {{current}}/{{limit}}`,iterationBadge:`iter {{count}}`,follow:`Siguiendo en vivo`,resumeFollow:`Reanudar seguimiento`,expandAll:`Expandir todo`,collapseAll:`Contraer todo`,copyStep:`Copiar paso`,copied:`Paso copiado al portapapeles`,stepDetail:`Detalles del paso`,stepDetailTemplate:`Plantilla`,stepDetailCommand:`Comando`,copyCommand:`Copiar`,interrupted:`Interrumpido`,waiting:`Esperando el siguiente paso...`,stepMapAria:`Mapa de pasos del loop`,stalled:`Atascado`,stalledIdle_one:`Sin salida del proveedor durante {{count}} minuto: la app detuvo este intento`,stalledIdle_other:`Sin salida del proveedor durante {{count}} minutos: la app detuvo este intento`,providerLimit:`Límite del proveedor`,providerLimitHint:`El proveedor respondió con un aviso de límite de uso, así que la app detuvo el run en vez de seguir iterando.`},f={loading:`Cargando logs...`,empty:`Aún no hay salida de log`,filterPlaceholder:`Filtrar logs...`,copySuccess:`Log copiado al portapapeles`,copyFailed:`No se pudo copiar el log`,lineCount:`{{filtered}} / {{total}} líneas`,jumpToBottom:`Ir al final`,phaseLines_one:`{{count}} línea`,phaseLines_other:`{{count}} líneas`,noMatchingLines:`Ninguna línea coincide`,noOutput:`Sin salida`,completed:`Completado`,turns_one:`{{count}} turno`,turns_other:`{{count}} turnos`},p={title:`Resultado de ejecución`,execution:`Ejecución`,implementation:`Implementación`,validation:`Validación`,archive:`Archivo`,delivery:`Entrega`,counters:`Pasos: {{steps}} · Evaluaciones del decider: {{evaluations}} · Turnos del agente: {{turns}}`,unavailable:`No disponible`,evidence:`Evidencia, excepciones y tiempos por fase`,snapshot:`Registrado al finalizar: {{change}} · {{at}}`,acceptedBy:`Aceptado por {{by}}`,required:`Obligatorio`,supplementary:`Complementario`,attempts:`Intentos: {{count}}`,phaseCostUnavailable:`El coste por fase de Core no está disponible; el consumo del proveedor se atribuye a pasos del loop.`,noCoreEvidence:`Evidencia de aceptación no disponible. El éxito de ejecución por sí solo no confirma que se haya completado el ticket.`,status:{success:`Correcta`,failed:`Fallida`,blocked:`Bloqueada`,stopped:`Detenida`,stalled:`Sin progreso`,complete:`Completa`,incomplete:`Incompleta`,verified:`Verificada`,"with-exceptions":`Verificada con excepciones`,pending:`Pendiente`,"pending-host":`Pendiente del host`,done:`Completado`,running:`En curso`,skipped:`Omitido`,passed:`Correcto`,unavailable:`No disponible`}},m={details:`Detalles`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`Reportado por el proveedor hasta ahora; las cifras finales llegan al terminar el job.`,questionPending:`Responder la pregunta`},h={statusLabel:e,statusTooltip:t,statusName:n,page:r,detail:i,statusPanel:a,ticketHeader:o,modal:s,comparison:c,recent:l,activeJob:u,loopExplorer:d,logViewer:f,completion:p,runHeader:m};export{u as activeJob,c as comparison,p as completion,h as default,i as detail,f as logViewer,d as loopExplorer,s as modal,r as page,l as recent,m as runHeader,e as statusLabel,n as statusName,a as statusPanel,t as statusTooltip,o as ticketHeader};
@@ -0,0 +1 @@
1
+ var e={running:`läuft`,completed:`abgeschlossen`,done:`fertig`,failed:`fehlgeschlagen`,canceled:`abgebrochen`,queued:`in Warteschlange`,zombie:`Zombie`,skipped:`übersprungen`},t={running:`Job wird gerade ausgeführt`,completed:`Job erfolgreich abgeschlossen`,failed:`Job wurde mit einem Exit-Code ungleich null beendet`,canceled:`Job wurde manuell abgebrochen`,queued:`Job wartet in der Warteschlange`,queuedToRun:`Job wartet auf Ausführung`,zombie:`Job wurde nach längerer Inaktivität automatisch beendet`,skipped:`Job wurde übersprungen, weil ein übergeordneter Job in der Pipeline fehlgeschlagen ist`},n={running:`läuft`,completed:`abgeschlossen`,failed:`fehlgeschlagen`,canceled:`abgebrochen`,zombie_terminated:`Zombie`,queued:`in Warteschlange`,skipped:`übersprungen`},r={title:`Jobs`,exportJobs:`Jobs exportieren`,proposalDeleted:`Vorschlag gelöscht`,proposal:{title:`Vorschlag`,noContent:`Noch kein Inhalt für den Vorschlag.`,githubIssue:`GitHub-Issue:`,status:{input:`Wartet auf Eingabe`,exploring:`Wird untersucht`,review:`Bereit zur Prüfung`,refining:`Wird verfeinert`,creatingIssue:`Issue wird erstellt`,created:`Erstellt`,cancelled:`Abgebrochen`,unknown:`Unbekannter Status: {{status}}`}}},i={breadcrumbDashboard:`Dashboard`,breadcrumbJob:`Job #{{id}}`,notFound:`Job nicht gefunden`,notFoundDescription:`Die Job-ID „{{id}}“ existiert nicht`,backToDashboard:`Zurück zum Dashboard`,startedAgo:`Gestartet {{timeAgo}}`,queuedWaiting:`In Warteschlange – wartet auf Start`,exportDiagnostic:`Diagnose exportieren`,exportDiagnosticAria:`Diagnose-Bundle exportieren`,exportDiagnosticTooltip:`ZIP mit Telemetrie, Logs und Zusammenfassung für diesen Job herunterladen`,reExecute:`Erneut ausführen`,reExecuteTooltip:`Neuen Job mit demselben Befehl starten`,cancelJob:`Job abbrechen`,cancelJobTooltip:`SIGTERM an den laufenden Prozess senden. Der Job wird als abgebrochen markiert.`,cancelInteractive:`Verwerfen`,finalizeJob:`Job abschließen`,finalizing:`Wird abgeschlossen…`,finalizeJobTooltip:`Diese interaktive Sitzung beenden und Tokens sowie Kosten aller Turns in die Job-Gesamtsumme einrechnen.`,interactive:{ready:`Bereit – sende einen Prompt`,working:`Agent arbeitet…`,placeholder:`Sende eine Nachricht an den laufenden Job…`,send:`Senden`,liveTotals:"{{turns}} Turns · ${{cost}}",autoHint:`Dieser Job folgt seinem Plan und endet von selbst — Nachrichten sind optionale Steuerung.`,wrapUp:`Jetzt abschließen`,wrapUpTooltip:`Beendet die Session jetzt — der Job wird mit der bisher erzeugten Arbeit abgeschlossen, Tokens und Kosten jedes Turns fließen in die Summe ein.`,wrapUpStep:`Diesen Schritt abschließen`,wrapUpStepTooltip:`Beendet den aktuellen Schritt jetzt — der Loop geht mit dem weiter, was der Schritt bisher erzeugt hat.`,wrappingUp:`Wird abgeschlossen…`,queued_one:`{{count}} Nachricht in der Warteschlange`,queued_other:`{{count}} Nachrichten in der Warteschlange`,waitingForStep:`Zwischen den Schritten — der Loop entscheidet gerade, was als Nächstes läuft. Du kannst eine Nachricht senden, sobald der nächste KI-Schritt startet.`,waitingForStepShort:`Warten auf den nächsten Schritt…`,sendDisabledEmpty:`Schreibe zuerst eine Nachricht`,sendDisabledWaiting:`Gerade ist keine Schritt-Session aktiv`},toast:{jobDeleted:`Job gelöscht`,cancelSignalSent:`Abbruchsignal gesendet`,cancelSignalSentDescription:`Der Job stoppt am nächsten sicheren Punkt`,failed:`Fehlgeschlagen`,networkError:`Netzwerkfehler`,exportFailed:`Export fehlgeschlagen`,exportFailedHttp:`Export fehlgeschlagen (HTTP {{status}})`,jobRequeued:`Job erneut eingereiht`,spawnFailed:`Job konnte nicht gestartet werden`,finalizeScheduled:`Interaktiver Job wird abgeschlossen…`,finalizeFailed:`Job konnte nicht abgeschlossen werden`,sendFailed:`Nachricht konnte nicht gesendet werden`,wrapUpScheduled:`Job wird abgeschlossen…`,wrapUpStepScheduled:`Schritt wird abgeschlossen — der Loop geht mit dem Erzeugten weiter`}},a={inProgress:`Job läuft`,completed:`Job abgeschlossen`,failed:`Job fehlgeschlagen`,duration:`Dauer`,cost:`Kosten`,turns:`Turns`,tokens:`Tokens`,filesCount_one:`{{count}} Datei`,filesCount_other:`{{count}} Dateien`,pipelineTotal:`Pipeline gesamt ({{count}} Phasen)`,totalCost:`Gesamtkosten`,totalTokens:`Tokens gesamt`,filesModified:`Geänderte Dateien`,zoneInProgress:`Läuft`,zoneFinal:`Endabrechnung`,zoneFinalPending:`Endabrechnung — wird am Ende berechnet`,pendingCaption:`Wird am Ende berechnet`,pendingTooltip:`Dies ist der reale Wert des Anbieters; er erscheint, wenn der Job endet.`,costTooltip:`Die realen Kosten werden vom Anbieter beim Abschluss des Jobs berechnet.`,liveTooltip:`Live`,explainer:`Kosten, Runden und Tokens sind die realen Werte des Anbieters und erscheinen am Ende.`,notAvailable:`Nicht verfügbar`,steps_one:`{{count}} Schritt`,steps_other:`{{count}} Schritte`,activity:{editing:`Bearbeite {{arg}}`,writing:`Schreibe {{arg}}`,reading:`Lese {{arg}}`,searching:`Suche „{{arg}}“`,running:`Führe aus: {{arg}}`,thinking:`Denkt nach…`,reasoning:`Überlegt…`,working:`Arbeitet…`,connecting:`Verbinde mit dem Agenten…`,starting:`Startet…`,delegating:`Delegiere an {{arg}}`},pipelinePartial:`≥ angezeigt — {{count}} Phase(n) ohne erfasste Kosten`,pipelinePartialTooltip:`Einige Phasen wurden beendet, bevor ihre Kosten gemeldet wurden – dieser Gesamtwert ist eine Untergrenze.`,pipelineCostUnavailable:`Die Kostentelemetrie ist für alle Phasen nicht verfügbar.`,pipelineUsageUnavailable:`Die Token-Telemetrie ist für alle Phasen nicht verfügbar.`,pipelineUsagePartial:`≥ angezeigt — Phasen ohne Token-Telemetrie: {{count}}`,pipelineUsageTooltip:`Anbieter können Phasen abschließen, ohne Token-Telemetrie bereitzustellen; enthalten ist nur die bekannte Nutzung.`,costUnknownLocal:`Kosten unbekannt (lokale Engine)`,costUnknownLocalTooltip:`Kosten unbekannt (lokale Engine). Tarife in der Verbindung hinterlegen, um eine Schätzung zu sehen.`},o={showMore:`+ {{count}} weitere`,showLess:`Weniger anzeigen`,deletedTicket:`#{{id}} (gelöscht)`,deletedTooltip:`Ticket existiert nicht mehr`},s={notFound:`Job nicht gefunden`,cancelConfirmTitle:`Job abbrechen?`,cancelConfirmDescription:`Der Job stoppt am nächsten sicheren Punkt. Diese Aktion kann nicht rückgängig gemacht werden.`,keepRunning:`Weiterlaufen lassen`,cancelJob:`Job abbrechen`,stopRun:`Lauf stoppen`,stopRunConfirmTitle:`Diesen Lauf stoppen?`,stopRunConfirmDescription:`Der Loop-Lauf stoppt an der nächsten Schrittgrenze. Diese Aktion kann nicht rückgängig gemacht werden.`,toast:{cancelSignalSent:`Abbruchsignal gesendet`,cancelSignalSentDescription:`Der Job stoppt am nächsten sicheren Punkt`,stopSignalSent:`Stoppsignal gesendet`,stopSignalSentDescription:`Der Lauf stoppt an der nächsten Schrittgrenze`,cancelFailed:`Abbrechen fehlgeschlagen`,networkError:`Netzwerkfehler`}},c={title:`Job-Vergleich`,jobN:`Job {{n}}`,loadFailed:`Vergleich konnte nicht geladen werden: {{error}}`,duration:`Dauer`,cost:`Kosten`,tokensOut:`Ausgabe-Tokens`,tokensIn:`Eingabe-Tokens`,cacheRead:`Cache-Read`,model:`Modell`,phasesDone:`Abgeschlossene Phasen`,betterValueHint:`Grün hervorgehoben = besserer Wert`},l={emptyTitle:`Noch keine Jobs`,emptyDescription:`Führe oben einen Befehl aus, um hier deinen Job-Verlauf zu sehen`,loadFailed:`Jobs konnten nicht geladen werden`,filterAll:`Alle ({{count}})`,filterStatus:`{{status}} ({{count}})`,fromDate:`Von`,toDate:`Bis`,clear:`Zurücksetzen`,exitCompareMode:`Vergleichsmodus verlassen`,compareTwoJobs:`2 Jobs vergleichen`,clearJobs:`Jobs löschen`,selectTwoToCompare:`Wähle 2 Jobs zum Vergleichen`,selectOneMore:`Wähle 1 weiteren Job`,readyToCompare:`Bereit – auf Vergleichen klicken`,compareAction:`Vergleichen →`,colStatus:`Status`,colCommand:`Befehl`,colDuration:`Dauer`,colTokens:`Tokens`,colCost:`Kosten`,colStarted:`Gestartet`,profileTooltip:`Profil: {{name}}`,pipelinePart:`Teil einer Pipeline`,pipelineDependsOn:`(hängt vom vorherigen Schritt ab)`,deleteProposal:`Vorschlag löschen`,loadMore:`Mehr laden ({{count}} verbleibend)`,priority:{critical:`kritisch`,high:`hoch`,normal:`normal`,low:`niedrig`},clearModal:{title:`Jobs löschen`,jobsInHistory_one:`{{count}} Job im Verlauf`,jobsInHistory_other:`{{count}} Jobs im Verlauf`,clearAll_one:`{{count}} Job löschen`,clearAll_other:`Alle {{count}} Jobs löschen`,orByRange:`Oder nach Datumsbereich löschen:`,fromPlaceholder:`Von`,toPlaceholder:`Bis`,clearInRange_one:`{{count}} Job im Zeitraum löschen`,clearInRange_other:`{{count}} Jobs im Zeitraum löschen`,clearRange:`Zeitraum löschen`},deleteProposalConfirm:{title:`Vorschlag löschen?`,description:`Dadurch wird 1 Vorschlag dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.`},toast:{cleared_one:`{{count}} Job gelöscht`,cleared_other:`{{count}} Jobs gelöscht`,clearFailed:`Jobs konnten nicht gelöscht werden`,networkError:`Netzwerkfehler`}},u={none:`Kein aktiver Job`,noneHint:`Wähle unten einen Befehl, um einen Job zu starten`,exitCode:`exit {{code}}`,cancelTooltip:`SIGTERM an den laufenden claude-Prozess senden`,viewLogs:`Logs anzeigen`,toast:{cancelRequested:`Job-Abbruch angefordert`,cancelRequestedDescription:`SIGTERM wird an den Prozess gesendet`,cancelFailed:`Job konnte nicht abgebrochen werden`,networkError:`Netzwerkfehler beim Abbrechen des Jobs`}},d={setup:`Vorbereitung`,iteration:`Iteration {{current}}/{{limit}}`,iterationBadge:`Iter. {{count}}`,follow:`Folgt live`,resumeFollow:`Verfolgung fortsetzen`,expandAll:`Alle ausklappen`,collapseAll:`Alle einklappen`,copyStep:`Schritt kopieren`,copied:`Schritt in die Zwischenablage kopiert`,stepDetail:`Schrittdetails`,stepDetailTemplate:`Vorlage`,stepDetailCommand:`Befehl`,copyCommand:`Kopieren`,interrupted:`Unterbrochen`,waiting:`Warte auf den nächsten Schritt…`,stepMapAria:`Loop-Schrittübersicht`,stalled:`Hängt`,stalledIdle_one:`{{count}} Minute ohne Provider-Ausgabe – die App hat diesen Versuch beendet`,stalledIdle_other:`{{count}} Minuten ohne Provider-Ausgabe – die App hat diesen Versuch beendet`,providerLimit:`Anbieter-Limit`,providerLimitHint:`Der Anbieter antwortete mit einem Nutzungslimit-Hinweis; die App hat den Lauf gestoppt statt weiterzudrehen.`},f={loading:`Logs werden geladen…`,empty:`Noch keine Log-Ausgabe`,filterPlaceholder:`Logs filtern…`,copySuccess:`Log in die Zwischenablage kopiert`,copyFailed:`Log konnte nicht kopiert werden`,lineCount:`{{filtered}} / {{total}} Zeilen`,jumpToBottom:`Zum Ende springen`,phaseLines_one:`{{count}} Zeile`,phaseLines_other:`{{count}} Zeilen`,noMatchingLines:`Keine passenden Zeilen`,noOutput:`Keine Ausgabe`,completed:`Abgeschlossen`,turns_one:`{{count}} Turn`,turns_other:`{{count}} Turns`},p={title:`Ausführungsergebnis`,execution:`Ausführung`,implementation:`Implementierung`,validation:`Validierung`,archive:`Archivierung`,delivery:`Auslieferung`,counters:`Schritte: {{steps}} · Auswertungen: {{evaluations}} · Agentenrunden: {{turns}}`,unavailable:`Nicht verfügbar`,evidence:`Nachweise, Ausnahmen und Phasenzeiten`,snapshot:`Bei Abschluss erfasst: {{change}} · {{at}}`,acceptedBy:`Akzeptiert von {{by}}`,required:`Erforderlich`,supplementary:`Ergänzend`,attempts:`Versuche: {{count}}`,phaseCostUnavailable:`Kosten pro Core-Phase sind nicht verfügbar; der Anbieterverbrauch wird Schleifenschritten zugeordnet.`,noCoreEvidence:`Abnahmenachweise sind nicht verfügbar. Eine erfolgreiche Ausführung allein bestätigt keinen abgeschlossenen Vorgang.`,status:{success:`Erfolgreich`,failed:`Fehlgeschlagen`,blocked:`Blockiert`,stopped:`Gestoppt`,stalled:`Ohne Fortschritt`,complete:`Abgeschlossen`,incomplete:`Unvollständig`,verified:`Verifiziert`,"with-exceptions":`Mit Ausnahmen verifiziert`,pending:`Ausstehend`,"pending-host":`Auslieferung durch Host ausstehend`,done:`Abgeschlossen`,running:`Läuft`,skipped:`Übersprungen`,passed:`Bestanden`,unavailable:`Nicht verfügbar`}},m={details:`Details`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`Bisher vom Anbieter gemeldet; die endgültigen Zahlen kommen, wenn der Job endet.`,questionPending:`Frage beantworten`},h={statusLabel:e,statusTooltip:t,statusName:n,page:r,detail:i,statusPanel:a,ticketHeader:o,modal:s,comparison:c,recent:l,activeJob:u,loopExplorer:d,logViewer:f,completion:p,runHeader:m};export{u as activeJob,c as comparison,p as completion,h as default,i as detail,f as logViewer,d as loopExplorer,s as modal,r as page,l as recent,m as runHeader,e as statusLabel,n as statusName,a as statusPanel,t as statusTooltip,o as ticketHeader};
@@ -0,0 +1 @@
1
+ var e={running:`em execução`,completed:`concluído`,done:`feito`,failed:`falhou`,canceled:`cancelado`,queued:`em fila`,zombie:`zombie`,skipped:`ignorado`},t={running:`O job está em execução`,completed:`O job foi concluído com sucesso`,failed:`O job terminou com um código de saída diferente de zero`,canceled:`O job foi cancelado manualmente`,queued:`O job está a aguardar na fila`,queuedToRun:`O job está a aguardar para ser executado`,zombie:`O job foi terminado automaticamente após inatividade prolongada`,skipped:`O job foi ignorado porque um job anterior do pipeline falhou`},n={running:`em execução`,completed:`concluído`,failed:`falhou`,canceled:`cancelado`,zombie_terminated:`zombie`,queued:`em fila`,skipped:`ignorado`},r={title:`Jobs`,exportJobs:`Exportar jobs`,proposalDeleted:`Proposta eliminada`,proposal:{title:`Proposta`,noContent:`Ainda não há conteúdo da proposta.`,githubIssue:`Issue do GitHub:`,status:{input:`A aguardar dados`,exploring:`A explorar`,review:`Pronta para revisão`,refining:`A refinar`,creatingIssue:`A criar issue`,created:`Criada`,cancelled:`Cancelada`,unknown:`Estado desconhecido: {{status}}`}}},i={breadcrumbDashboard:`Dashboard`,breadcrumbJob:`Job #{{id}}`,notFound:`Job não encontrado`,notFoundDescription:`O ID de job "{{id}}" não existe`,backToDashboard:`Voltar ao Dashboard`,startedAgo:`Iniciado {{timeAgo}}`,queuedWaiting:`Em fila — a aguardar início`,exportDiagnostic:`Exportar diagnóstico`,exportDiagnosticAria:`Exportar pacote de diagnóstico`,exportDiagnosticTooltip:`Transferir um ZIP com telemetria, logs e resumo deste job`,reExecute:`Reexecutar`,reExecuteTooltip:`Lançar um novo job com o mesmo comando`,cancelJob:`Cancelar job`,cancelJobTooltip:`Enviar SIGTERM ao processo em execução. O job será marcado como cancelado.`,cancelInteractive:`Descartar`,finalizeJob:`Finalizar job`,finalizing:`A finalizar…`,finalizeJobTooltip:`Terminar esta sessão interativa e somar os tokens e o custo de cada turno ao total do job.`,interactive:{ready:`Pronto — envie um prompt`,working:`Agente a trabalhar…`,placeholder:`Envie uma mensagem ao job em execução…`,send:`Enviar`,liveTotals:"{{turns}} turnos · ${{cost}}",autoHint:`Este job segue o seu plano e termina sozinho — as mensagens são orientação opcional.`,wrapUp:`Concluir agora`,wrapUpTooltip:`Termina a sessão agora — o job conclui com o trabalho produzido até ao momento, com os tokens e o custo de cada turno somados ao total.`,wrapUpStep:`Fechar este passo`,wrapUpStepTooltip:`Termina o passo atual agora — o loop avança com o que o passo produziu até ao momento.`,wrappingUp:`A concluir…`,queued_one:`{{count}} mensagem em fila`,queued_other:`{{count}} mensagens em fila`,waitingForStep:`Entre passos — o loop está a decidir o que corre a seguir. Poderá enviar uma mensagem quando o próximo passo de IA começar.`,waitingForStepShort:`A aguardar o próximo passo…`,sendDisabledEmpty:`Escreva primeiro uma mensagem`,sendDisabledWaiting:`Não há nenhuma sessão de passo ativa neste momento`},toast:{jobDeleted:`Job eliminado`,cancelSignalSent:`Sinal de cancelamento enviado`,cancelSignalSentDescription:`O job vai parar no próximo ponto seguro`,failed:`Falhou`,networkError:`Erro de rede`,exportFailed:`Falha na exportação`,exportFailedHttp:`Falha na exportação (HTTP {{status}})`,jobRequeued:`Job colocado novamente na fila`,spawnFailed:`Falha ao lançar o job`,finalizeScheduled:`A finalizar o job interativo…`,finalizeFailed:`Falha ao finalizar o job`,sendFailed:`Falha ao enviar a mensagem`,wrapUpScheduled:`A concluir o job…`,wrapUpStepScheduled:`A fechar o passo — o loop avança com o que produziu`}},a={inProgress:`Job em curso`,completed:`Job concluído`,failed:`Job falhou`,duration:`Duração`,cost:`Custo`,turns:`Turnos`,tokens:`Tokens`,filesCount_one:`{{count}} ficheiro`,filesCount_other:`{{count}} ficheiros`,pipelineTotal:`Total do pipeline ({{count}} fases)`,totalCost:`Custo total`,totalTokens:`Total de tokens`,filesModified:`Ficheiros modificados`,zoneInProgress:`Em andamento`,zoneFinal:`Resumo final`,zoneFinalPending:`Resumo final — calculado ao terminar`,pendingCaption:`Calculado ao terminar`,pendingTooltip:`Este é o valor real do provedor; aparece ao terminar o job.`,costTooltip:`O custo real é cobrado pelo provedor ao encerrar o job.`,liveTooltip:`Ao vivo`,explainer:`Custo, turnos e tokens são os valores reais do provedor e aparecem ao terminar.`,notAvailable:`Indisponível`,steps_one:`{{count}} passo`,steps_other:`{{count}} passos`,activity:{editing:`Editando {{arg}}`,writing:`Escrevendo {{arg}}`,reading:`Lendo {{arg}}`,searching:`Buscando “{{arg}}”`,running:`Executando: {{arg}}`,thinking:`Pensando…`,reasoning:`Raciocinando…`,working:`Trabalhando…`,connecting:`Conectando ao agente…`,starting:`Iniciando…`,delegating:`Delegando a {{arg}}`},pipelinePartial:`≥ exibido — {{count}} fase(s) sem custo registrado`,pipelinePartialTooltip:`Algumas fases terminaram antes de reportar o custo, portanto este total é um limite inferior.`,pipelineCostUnavailable:`A telemetria de custo está indisponível em todas as fases.`,pipelineUsageUnavailable:`A telemetria de tokens está indisponível em todas as fases.`,pipelineUsagePartial:`≥ mostrado — fases sem telemetria de tokens: {{count}}`,pipelineUsageTooltip:`Os fornecedores podem concluir fases sem fornecer telemetria de tokens; apenas a utilização conhecida é incluída.`,costUnknownLocal:`Custo desconhecido (motor local)`,costUnknownLocalTooltip:`Custo desconhecido (motor local). Adicione tarifas à conexão para ver uma estimativa.`},o={showMore:`+ {{count}} mais`,showLess:`Mostrar menos`,deletedTicket:`#{{id}} (eliminado)`,deletedTooltip:`O ticket já não existe`},s={notFound:`Job não encontrado`,cancelConfirmTitle:`Cancelar o job?`,cancelConfirmDescription:`O job vai parar no próximo ponto seguro. Esta ação não pode ser anulada.`,keepRunning:`Manter em execução`,cancelJob:`Cancelar job`,stopRun:`Parar execução`,stopRunConfirmTitle:`Parar esta execução?`,stopRunConfirmDescription:`A execução do loop será interrompida no próximo limite de etapa. Esta ação não pode ser desfeita.`,toast:{cancelSignalSent:`Sinal de cancelamento enviado`,cancelSignalSentDescription:`O job vai parar no próximo ponto seguro`,stopSignalSent:`Sinal de parada enviado`,stopSignalSentDescription:`A execução será interrompida no próximo limite de etapa`,cancelFailed:`Falha ao cancelar`,networkError:`Erro de rede`}},c={title:`Comparação de jobs`,jobN:`Job {{n}}`,loadFailed:`Falha ao carregar a comparação: {{error}}`,duration:`Duração`,cost:`Custo`,tokensOut:`Tokens de saída`,tokensIn:`Tokens de entrada`,cacheRead:`Leitura de cache`,model:`Modelo`,phasesDone:`Fases concluídas`,betterValueHint:`Os destaques a verde indicam melhor valor`},l={emptyTitle:`Ainda não há jobs`,emptyDescription:`Execute um comando acima para ver aqui o seu histórico de jobs`,loadFailed:`Falha ao carregar os jobs`,filterAll:`Todos ({{count}})`,filterStatus:`{{status}} ({{count}})`,fromDate:`Data inicial`,toDate:`Data final`,clear:`Limpar`,exitCompareMode:`Sair do modo de comparação`,compareTwoJobs:`Comparar 2 jobs`,clearJobs:`Limpar jobs`,selectTwoToCompare:`Selecione 2 jobs para comparar`,selectOneMore:`Selecione mais 1 job`,readyToCompare:`Pronto — clique em comparar`,compareAction:`Comparar →`,colStatus:`Estado`,colCommand:`Comando`,colDuration:`Duração`,colTokens:`Tokens`,colCost:`Custo`,colStarted:`Início`,profileTooltip:`Perfil: {{name}}`,pipelinePart:`Parte de um pipeline`,pipelineDependsOn:`(depende do passo anterior)`,deleteProposal:`Eliminar proposta`,loadMore:`Carregar mais ({{count}} restantes)`,priority:{critical:`crítica`,high:`alta`,normal:`normal`,low:`baixa`},clearModal:{title:`Limpar jobs`,jobsInHistory_one:`{{count}} job no histórico`,jobsInHistory_other:`{{count}} jobs no histórico`,clearAll_one:`Limpar {{count}} job`,clearAll_other:`Limpar todos os {{count}} jobs`,orByRange:`Ou limpar por intervalo de datas:`,fromPlaceholder:`De`,toPlaceholder:`Até`,clearInRange_one:`Limpar {{count}} job no intervalo`,clearInRange_other:`Limpar {{count}} jobs no intervalo`,clearRange:`Limpar intervalo`},deleteProposalConfirm:{title:`Eliminar a proposta?`,description:`Isto vai eliminar permanentemente 1 proposta. Esta ação não pode ser anulada.`},toast:{cleared_one:`{{count}} job removido`,cleared_other:`{{count}} jobs removidos`,clearFailed:`Falha ao limpar os jobs`,networkError:`Erro de rede`}},u={none:`Nenhum job ativo`,noneHint:`Selecione um comando abaixo para iniciar um job`,exitCode:`exit {{code}}`,cancelTooltip:`Enviar SIGTERM ao processo claude em execução`,viewLogs:`Ver logs`,toast:{cancelRequested:`Cancelamento do job pedido`,cancelRequestedDescription:`A enviar SIGTERM ao processo`,cancelFailed:`Falha ao cancelar o job`,networkError:`Erro de rede ao cancelar o job`}},d={setup:`Preparação`,iteration:`Iteração {{current}}/{{limit}}`,iterationBadge:`iter {{count}}`,follow:`A seguir em direto`,resumeFollow:`Retomar acompanhamento`,expandAll:`Expandir tudo`,collapseAll:`Recolher tudo`,copyStep:`Copiar passo`,copied:`Passo copiado para a área de transferência`,stepDetail:`Detalhes do passo`,stepDetailTemplate:`Modelo`,stepDetailCommand:`Comando`,copyCommand:`Copiar`,interrupted:`Interrompido`,waiting:`A aguardar o próximo passo...`,stepMapAria:`Mapa de passos do loop`,stalled:`Travado`,stalledIdle_one:`Sem saída do fornecedor durante {{count}} minuto — a app parou esta tentativa`,stalledIdle_other:`Sem saída do fornecedor durante {{count}} minutos — a app parou esta tentativa`,providerLimit:`Limite do fornecedor`,providerLimitHint:`O fornecedor respondeu com um aviso de limite de utilização, por isso a app parou a execução em vez de continuar a ciclar.`},f={loading:`A carregar logs...`,empty:`Ainda sem saída de log`,filterPlaceholder:`Filtrar logs...`,copySuccess:`Log copiado para a área de transferência`,copyFailed:`Falha ao copiar o log`,lineCount:`{{filtered}} / {{total}} linhas`,jumpToBottom:`Ir para o fim`,phaseLines_one:`{{count}} linha`,phaseLines_other:`{{count}} linhas`,noMatchingLines:`Nenhuma linha corresponde`,noOutput:`Sem saída`,completed:`Concluído`,turns_one:`{{count}} turno`,turns_other:`{{count}} turnos`},p={title:`Resultado da execução`,execution:`Execução`,implementation:`Implementação`,validation:`Validação`,archive:`Arquivo`,delivery:`Entrega`,counters:`Passos: {{steps}} · Avaliações: {{evaluations}} · Turnos do agente: {{turns}}`,unavailable:`Indisponível`,evidence:`Evidências, exceções e tempos por fase`,snapshot:`Registado ao concluir: {{change}} · {{at}}`,acceptedBy:`Aceite por {{by}}`,required:`Obrigatório`,supplementary:`Complementar`,attempts:`Tentativas: {{count}}`,phaseCostUnavailable:`O custo por fase do Core não está disponível; o consumo do fornecedor é atribuído aos passos do loop.`,noCoreEvidence:`Evidência de aceitação indisponível. O sucesso da execução, por si só, não confirma a conclusão do ticket.`,status:{success:`Bem-sucedida`,failed:`Falhou`,blocked:`Bloqueada`,stopped:`Parada`,stalled:`Sem progresso`,complete:`Completa`,incomplete:`Incompleta`,verified:`Verificada`,"with-exceptions":`Verificada com exceções`,pending:`Pendente`,"pending-host":`Entrega pelo host pendente`,done:`Concluído`,running:`Em curso`,skipped:`Ignorado`,passed:`Aprovado`,unavailable:`Indisponível`}},m={details:`Detalhes`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`Reportado pelo provedor até agora; os números finais chegam quando o job termina.`,questionPending:`Responder à pergunta`},h={statusLabel:e,statusTooltip:t,statusName:n,page:r,detail:i,statusPanel:a,ticketHeader:o,modal:s,comparison:c,recent:l,activeJob:u,loopExplorer:d,logViewer:f,completion:p,runHeader:m};export{u as activeJob,c as comparison,p as completion,h as default,i as detail,f as logViewer,d as loopExplorer,s as modal,r as page,l as recent,m as runHeader,e as statusLabel,n as statusName,a as statusPanel,t as statusTooltip,o as ticketHeader};
@@ -0,0 +1 @@
1
+ var e={running:`実行中`,completed:`完了`,done:`完了`,failed:`失敗`,canceled:`キャンセル`,queued:`待機中`,zombie:`ゾンビ`,skipped:`スキップ`},t={running:`ジョブは実行中です`,completed:`ジョブは正常に完了しました`,failed:`ジョブは非ゼロの終了コードで終了しました`,canceled:`ジョブは手動でキャンセルされました`,queued:`ジョブはキュー内で待機しています`,queuedToRun:`ジョブは実行待ちです`,zombie:`長時間アクティビティがなかったため、ジョブは自動終了されました`,skipped:`パイプライン内の親ジョブが失敗したため、ジョブはスキップされました`},n={running:`実行中`,completed:`完了`,failed:`失敗`,canceled:`キャンセル`,zombie_terminated:`ゾンビ`,queued:`待機中`,skipped:`スキップ`},r={title:`ジョブ`,exportJobs:`ジョブをエクスポート`,proposalDeleted:`提案を削除しました`,proposal:{title:`提案`,noContent:`提案の内容はまだありません。`,githubIssue:`GitHub Issue:`,status:{input:`入力待ち`,exploring:`調査中`,review:`レビュー待ち`,refining:`改善中`,creatingIssue:`Issue を作成中`,created:`作成済み`,cancelled:`キャンセル済み`,unknown:`不明なステータス: {{status}}`}}},i={breadcrumbDashboard:`ダッシュボード`,breadcrumbJob:`ジョブ #{{id}}`,notFound:`ジョブが見つかりません`,notFoundDescription:`ジョブ ID「{{id}}」は存在しません`,backToDashboard:`ダッシュボードに戻る`,startedAgo:`{{timeAgo}}に開始`,queuedWaiting:`キュー登録済み — 開始待ち`,exportDiagnostic:`診断をエクスポート`,exportDiagnosticAria:`診断バンドルをエクスポート`,exportDiagnosticTooltip:`このジョブのテレメトリ、ログ、サマリーを含む ZIP をダウンロード`,reExecute:`再実行`,reExecuteTooltip:`同じコマンドで新しいジョブを起動`,cancelJob:`ジョブをキャンセル`,cancelJobTooltip:`実行中のプロセスに SIGTERM を送信します。ジョブはキャンセル済みとしてマークされます。`,cancelInteractive:`破棄`,finalizeJob:`ジョブをファイナライズ`,finalizing:`ファイナライズ中…`,finalizeJobTooltip:`このインタラクティブセッションを終了し、各ターンのトークンとコストをジョブの合計に集計します。`,interactive:{ready:`準備完了 — プロンプトを送信してください`,working:`エージェント作業中…`,placeholder:`実行中のジョブにメッセージを送信…`,send:`送信`,liveTotals:"{{turns}} ターン · ${{cost}}",autoHint:`このジョブは計画に沿って自動で完了します — メッセージは任意の指示です。`,wrapUp:`今すぐ切り上げる`,wrapUpTooltip:`セッションを今すぐ終了します — これまでの成果でジョブが完了し、各ターンのトークンとコストは合計に計上されます。`,wrapUpStep:`このステップを確定`,wrapUpStepTooltip:`現在のステップを今すぐ終了します — ループはこれまでの成果を持って次へ進みます。`,wrappingUp:`切り上げ中…`,queued_one:`{{count}} 件のキュー済みメッセージ`,queued_other:`{{count}} 件のキュー済みメッセージ`,waitingForStep:`ステップの合間です — ループが次に実行する内容を決めています。次の AI ステップが始まるとメッセージを送信できます。`,waitingForStepShort:`次のステップを待機中…`,sendDisabledEmpty:`先にメッセージを入力してください`,sendDisabledWaiting:`現在アクティブなステップセッションはありません`},toast:{jobDeleted:`ジョブを削除しました`,cancelSignalSent:`キャンセルシグナルを送信しました`,cancelSignalSentDescription:`ジョブは次の安全なポイントで停止します`,failed:`失敗しました`,networkError:`ネットワークエラー`,exportFailed:`エクスポートに失敗しました`,exportFailedHttp:`エクスポートに失敗しました (HTTP {{status}})`,jobRequeued:`ジョブを再キューしました`,spawnFailed:`ジョブの起動に失敗しました`,finalizeScheduled:`インタラクティブジョブをファイナライズ中…`,finalizeFailed:`ジョブのファイナライズに失敗しました`,sendFailed:`メッセージの送信に失敗しました`,wrapUpScheduled:`ジョブを切り上げ中…`,wrapUpStepScheduled:`ステップを確定中 — ループは産出済みの成果で先へ進みます`}},a={inProgress:`ジョブ実行中`,completed:`ジョブ完了`,failed:`ジョブ失敗`,duration:`実行時間`,cost:`コスト`,turns:`ターン`,tokens:`トークン`,filesCount_one:`{{count}} ファイル`,filesCount_other:`{{count}} ファイル`,pipelineTotal:`パイプライン合計({{count}} フェーズ)`,totalCost:`合計コスト`,totalTokens:`合計トークン`,filesModified:`変更ファイル`,zoneInProgress:`進行中`,zoneFinal:`最終サマリー`,zoneFinalPending:`最終サマリー — 完了時に計算`,pendingCaption:`完了時に計算`,pendingTooltip:`これはプロバイダーの実際の数値です。ジョブ完了時に表示されます。`,costTooltip:`実際のコストはジョブ終了時にプロバイダーが請求します。`,liveTooltip:`ライブ`,explainer:`コスト・ターン・トークンはプロバイダーの実際の数値で、完了時に表示されます。`,notAvailable:`利用不可`,steps_one:`{{count}} ステップ`,steps_other:`{{count}} ステップ`,activity:{editing:`{{arg}} を編集中`,writing:`{{arg}} を書き込み中`,reading:`{{arg}} を読み込み中`,searching:`「{{arg}}」を検索中`,running:`実行中: {{arg}}`,thinking:`思考中…`,reasoning:`推論中…`,working:`作業中…`,connecting:`エージェントに接続中…`,starting:`起動中…`,delegating:`{{arg}} に委任中`},pipelinePartial:`≥ は部分値 — {{count}} 個のフェーズにコスト記録がありません`,pipelinePartialTooltip:`一部のフェーズはコストを報告する前に終了したため、この合計は下限値です。`,pipelineCostUnavailable:`すべてのフェーズでコストのテレメトリを利用できません。`,pipelineUsageUnavailable:`すべてのフェーズでトークンのテレメトリを利用できません。`,pipelineUsagePartial:`≥ 表示値 — {{count}} フェーズでトークンのテレメトリなし`,pipelineUsageTooltip:`プロバイダーはトークンのテレメトリを提供せずにフェーズを完了する場合があります。既知の使用量のみが含まれます。`,costUnknownLocal:`コスト不明(ローカルエンジン)`,costUnknownLocalTooltip:`コスト不明(ローカルエンジン)。接続に料金を追加すると概算が表示されます。`},o={showMore:`+ 他 {{count}} 件`,showLess:`折りたたむ`,deletedTicket:`#{{id}}(削除済み)`,deletedTooltip:`チケットはもう存在しません`},s={notFound:`ジョブが見つかりません`,cancelConfirmTitle:`ジョブをキャンセルしますか?`,cancelConfirmDescription:`ジョブは次の安全なポイントで停止します。この操作は元に戻せません。`,keepRunning:`実行を続ける`,cancelJob:`ジョブをキャンセル`,stopRun:`実行を停止`,stopRunConfirmTitle:`この実行を停止しますか?`,stopRunConfirmDescription:`ループ実行は次のステップ境界で停止します。この操作は取り消せません。`,toast:{cancelSignalSent:`キャンセルシグナルを送信しました`,cancelSignalSentDescription:`ジョブは次の安全なポイントで停止します`,stopSignalSent:`停止シグナルを送信しました`,stopSignalSentDescription:`実行は次のステップ境界で停止します`,cancelFailed:`キャンセルに失敗しました`,networkError:`ネットワークエラー`}},c={title:`ジョブ比較`,jobN:`ジョブ {{n}}`,loadFailed:`比較の読み込みに失敗しました: {{error}}`,duration:`実行時間`,cost:`コスト`,tokensOut:`出力トークン`,tokensIn:`入力トークン`,cacheRead:`キャッシュ読み取り`,model:`モデル`,phasesDone:`完了フェーズ`,betterValueHint:`緑のハイライトはより良い値を示します`},l={emptyTitle:`ジョブはまだありません`,emptyDescription:`上でコマンドを実行すると、ここにジョブ履歴が表示されます`,loadFailed:`ジョブの読み込みに失敗しました`,filterAll:`すべて ({{count}})`,filterStatus:`{{status}} ({{count}})`,fromDate:`開始日`,toDate:`終了日`,clear:`クリア`,exitCompareMode:`比較モードを終了`,compareTwoJobs:`ジョブを2件比較`,clearJobs:`ジョブをクリア`,selectTwoToCompare:`比較するジョブを2件選択`,selectOneMore:`あと1件選択してください`,readyToCompare:`準備完了 — 比較をクリック`,compareAction:`比較 →`,colStatus:`ステータス`,colCommand:`コマンド`,colDuration:`実行時間`,colTokens:`トークン`,colCost:`コスト`,colStarted:`開始`,profileTooltip:`プロファイル: {{name}}`,pipelinePart:`パイプラインの一部`,pipelineDependsOn:`(前のステップに依存)`,deleteProposal:`提案を削除`,loadMore:`さらに読み込む(残り {{count}} 件)`,priority:{critical:`クリティカル`,high:`高`,normal:`通常`,low:`低`},clearModal:{title:`ジョブをクリア`,jobsInHistory_one:`履歴に {{count}} 件のジョブ`,jobsInHistory_other:`履歴に {{count}} 件のジョブ`,clearAll_one:`{{count}} 件のジョブをすべてクリア`,clearAll_other:`{{count}} 件のジョブをすべてクリア`,orByRange:`または日付範囲でクリア:`,fromPlaceholder:`開始`,toPlaceholder:`終了`,clearInRange_one:`範囲内の {{count}} 件のジョブをクリア`,clearInRange_other:`範囲内の {{count}} 件のジョブをクリア`,clearRange:`範囲をクリア`},deleteProposalConfirm:{title:`提案を削除しますか?`,description:`1件の提案が完全に削除されます。この操作は元に戻せません。`},toast:{cleared_one:`{{count}} 件のジョブをクリアしました`,cleared_other:`{{count}} 件のジョブをクリアしました`,clearFailed:`ジョブのクリアに失敗しました`,networkError:`ネットワークエラー`}},u={none:`アクティブなジョブはありません`,noneHint:`下のコマンドを選択してジョブを開始`,exitCode:`exit {{code}}`,cancelTooltip:`実行中の claude プロセスに SIGTERM を送信`,viewLogs:`ログを表示`,toast:{cancelRequested:`ジョブのキャンセルをリクエストしました`,cancelRequestedDescription:`プロセスに SIGTERM を送信しています`,cancelFailed:`ジョブのキャンセルに失敗しました`,networkError:`ジョブのキャンセル中にネットワークエラーが発生しました`}},d={setup:`セットアップ`,iteration:`反復 {{current}}/{{limit}}`,iterationBadge:`反復 {{count}}`,follow:`ライブ追従中`,resumeFollow:`追従を再開`,expandAll:`すべて展開`,collapseAll:`すべて折りたたむ`,copyStep:`ステップをコピー`,copied:`ステップをクリップボードにコピーしました`,stepDetail:`ステップの詳細`,stepDetailTemplate:`テンプレート`,stepDetailCommand:`コマンド`,copyCommand:`コピー`,interrupted:`中断`,waiting:`次のステップを待機中...`,stepMapAria:`ループのステップマップ`,stalled:`停止`,stalledIdle_one:`{{count}} 分間プロバイダーの出力がなく、アプリがこの試行を停止しました`,stalledIdle_other:`{{count}} 分間プロバイダーの出力がなく、アプリがこの試行を停止しました`,providerLimit:`プロバイダー上限`,providerLimitHint:`プロバイダーが利用上限の通知を返したため、アプリはループを続けずに実行を停止しました。`},f={loading:`ログを読み込み中...`,empty:`ログ出力はまだありません`,filterPlaceholder:`ログをフィルター...`,copySuccess:`ログをクリップボードにコピーしました`,copyFailed:`ログのコピーに失敗しました`,lineCount:`{{filtered}} / {{total}} 行`,jumpToBottom:`最下部へ移動`,phaseLines_one:`{{count}} 行`,phaseLines_other:`{{count}} 行`,noMatchingLines:`一致する行はありません`,noOutput:`出力なし`,completed:`完了`,turns_one:`{{count}} ターン`,turns_other:`{{count}} ターン`},p={title:`実行結果`,execution:`実行`,implementation:`実装`,validation:`検証`,archive:`アーカイブ`,delivery:`引き渡し`,counters:`{{steps}} ステップ · {{evaluations}} 回の判定 · エージェント {{turns}} ターン`,unavailable:`利用不可`,evidence:`証拠、例外、フェーズの所要時間`,snapshot:`完了時の記録:{{change}} · {{at}}`,acceptedBy:`承認者:{{by}}`,required:`必須`,supplementary:`補足`,attempts:`{{count}} 回の試行`,phaseCostUnavailable:`Core のフェーズ別コストは利用できません。プロバイダー使用量はループのステップに割り当てられます。`,noCoreEvidence:`受け入れの証拠は利用できません。実行の成功だけではチケットの完了を確認できません。`,status:{success:`成功`,failed:`失敗`,blocked:`ブロック`,stopped:`停止`,stalled:`進展なし`,complete:`完了`,incomplete:`未完了`,verified:`検証済み`,"with-exceptions":`例外付きで検証済み`,pending:`保留`,"pending-host":`ホストの引き渡し待ち`,done:`完了`,running:`実行中`,skipped:`スキップ`,passed:`合格`,unavailable:`利用不可`}},m={details:`詳細`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`これまでにプロバイダーが報告した値です。最終的な数値はジョブ終了時に届きます。`,questionPending:`質問に回答`},h={statusLabel:e,statusTooltip:t,statusName:n,page:r,detail:i,statusPanel:a,ticketHeader:o,modal:s,comparison:c,recent:l,activeJob:u,loopExplorer:d,logViewer:f,completion:p,runHeader:m};export{u as activeJob,c as comparison,p as completion,h as default,i as detail,f as logViewer,d as loopExplorer,s as modal,r as page,l as recent,m as runHeader,e as statusLabel,n as statusName,a as statusPanel,t as statusTooltip,o as ticketHeader};
@@ -0,0 +1 @@
1
+ var e={running:`运行中`,completed:`已完成`,done:`完成`,failed:`失败`,canceled:`已取消`,queued:`排队中`,zombie:`僵尸`,skipped:`已跳过`},t={running:`任务正在执行`,completed:`任务已成功完成`,failed:`任务以非零退出码结束`,canceled:`任务已被手动取消`,queued:`任务正在队列中等待`,queuedToRun:`任务正在等待运行`,zombie:`任务因长时间无活动而被自动终止`,skipped:`因流水线中的上游任务失败,此任务被跳过`},n={running:`运行中`,completed:`已完成`,failed:`失败`,canceled:`已取消`,zombie_terminated:`僵尸`,queued:`排队中`,skipped:`已跳过`},r={title:`任务`,exportJobs:`导出任务`,proposalDeleted:`提案已删除`,proposal:{title:`提案`,noContent:`暂无提案内容。`,githubIssue:`GitHub Issue:`,status:{input:`等待输入`,exploring:`探索中`,review:`等待审核`,refining:`优化中`,creatingIssue:`正在创建议题`,created:`已创建`,cancelled:`已取消`,unknown:`未知状态:{{status}}`}}},i={breadcrumbDashboard:`Dashboard`,breadcrumbJob:`任务 #{{id}}`,notFound:`未找到任务`,notFoundDescription:`任务 ID“{{id}}”不存在`,backToDashboard:`返回 Dashboard`,startedAgo:`开始于 {{timeAgo}}`,queuedWaiting:`已排队——等待开始`,exportDiagnostic:`导出诊断`,exportDiagnosticAria:`导出诊断包`,exportDiagnosticTooltip:`下载包含此任务遥测、日志和摘要的 ZIP`,reExecute:`重新执行`,reExecuteTooltip:`用相同命令启动一个新任务`,cancelJob:`取消任务`,cancelJobTooltip:`向运行中的进程发送 SIGTERM。任务将被标记为已取消。`,cancelInteractive:`丢弃`,finalizeJob:`定稿任务`,finalizing:`正在定稿…`,finalizeJobTooltip:`结束此交互会话,并将每一轮的 token 和成本汇总到任务总计中。`,interactive:{ready:`就绪 — 发送提示`,working:`代理处理中…`,placeholder:`向运行中的任务发送消息…`,send:`发送`,liveTotals:"{{turns}} 轮 · ${{cost}}",autoHint:`该任务会按计划自行完成 — 消息只是可选的引导。`,wrapUp:`立即收尾`,wrapUpTooltip:`立即结束会话 — 任务以目前已产出的工作完成,每一轮的 token 与费用都会计入总额。`,wrapUpStep:`结算此步骤`,wrapUpStepTooltip:`立即结束当前步骤 — 循环将带着该步骤目前的产出继续推进。`,wrappingUp:`正在收尾…`,queued_one:`{{count}} 条排队消息`,queued_other:`{{count}} 条排队消息`,waitingForStep:`步骤间隙 — 循环正在决定接下来运行什么。下一个 AI 步骤开始后即可发送消息。`,waitingForStepShort:`等待下一个步骤…`,sendDisabledEmpty:`请先输入消息`,sendDisabledWaiting:`当前没有活跃的步骤会话`},toast:{jobDeleted:`任务已删除`,cancelSignalSent:`已发送取消信号`,cancelSignalSentDescription:`任务将在下一个安全点停止`,failed:`失败`,networkError:`网络错误`,exportFailed:`导出失败`,exportFailedHttp:`导出失败(HTTP {{status}})`,jobRequeued:`任务已重新排队`,spawnFailed:`启动任务失败`,finalizeScheduled:`正在定稿交互任务…`,finalizeFailed:`任务定稿失败`,sendFailed:`发送消息失败`,wrapUpScheduled:`正在收尾任务…`,wrapUpStepScheduled:`正在结算步骤 — 循环将带着已有产出继续`}},a={inProgress:`任务进行中`,completed:`任务已完成`,failed:`任务失败`,duration:`时长`,cost:`成本`,turns:`轮次`,tokens:`Token`,filesCount_one:`{{count}} 个文件`,filesCount_other:`{{count}} 个文件`,pipelineTotal:`流水线合计({{count}} 个阶段)`,totalCost:`总成本`,totalTokens:`总 token 数`,filesModified:`修改的文件`,zoneInProgress:`进行中`,zoneFinal:`最终汇总`,zoneFinalPending:`最终汇总 — 完成后计算`,pendingCaption:`完成后计算`,pendingTooltip:`这是提供方的真实数字;任务完成后显示。`,costTooltip:`真实费用由提供方在任务结束时计费。`,liveTooltip:`实时`,explainer:`费用、轮次和令牌是提供方的真实数字,将在任务完成后显示。`,notAvailable:`不可用`,steps_one:`{{count}} 步`,steps_other:`{{count}} 步`,activity:{editing:`正在编辑 {{arg}}`,writing:`正在写入 {{arg}}`,reading:`正在读取 {{arg}}`,searching:`正在搜索“{{arg}}”`,running:`正在执行:{{arg}}`,thinking:`正在思考…`,reasoning:`正在推理…`,working:`正在处理…`,connecting:`正在连接代理…`,starting:`正在启动…`,delegating:`委派给 {{arg}}`},pipelinePartial:`≥ 表示部分 — {{count}} 个阶段尚无成本记录`,pipelinePartialTooltip:`部分阶段在报告成本前已结束,因此该总额为下限。`,pipelineCostUnavailable:`所有阶段的成本遥测数据均不可用。`,pipelineUsageUnavailable:`所有阶段的 token 遥测数据均不可用。`,pipelineUsagePartial:`≥ 显示值 — {{count}} 个阶段无 token 遥测数据`,pipelineUsageTooltip:`提供方可能在不提供 token 遥测数据的情况下完成阶段;仅计入已知用量。`,costUnknownLocal:`费用未知(本地引擎)`,costUnknownLocalTooltip:`费用未知(本地引擎)。为连接添加费率以查看估算。`},o={showMore:`+ 还有 {{count}} 个`,showLess:`收起`,deletedTicket:`#{{id}}(已删除)`,deletedTooltip:`工单已不存在`},s={notFound:`未找到任务`,cancelConfirmTitle:`取消任务?`,cancelConfirmDescription:`任务将在下一个安全点停止。此操作无法撤销。`,keepRunning:`继续运行`,cancelJob:`取消任务`,stopRun:`停止运行`,stopRunConfirmTitle:`停止此运行?`,stopRunConfirmDescription:`循环运行将在下一个步骤边界停止。此操作无法撤销。`,toast:{cancelSignalSent:`已发送取消信号`,cancelSignalSentDescription:`任务将在下一个安全点停止`,stopSignalSent:`已发送停止信号`,stopSignalSentDescription:`运行将在下一个步骤边界停止`,cancelFailed:`取消失败`,networkError:`网络错误`}},c={title:`任务对比`,jobN:`任务 {{n}}`,loadFailed:`加载对比失败:{{error}}`,duration:`时长`,cost:`成本`,tokensOut:`输出 token`,tokensIn:`输入 token`,cacheRead:`缓存读取`,model:`模型`,phasesDone:`完成阶段数`,betterValueHint:`绿色高亮表示更优值`},l={emptyTitle:`暂无任务`,emptyDescription:`在上方运行命令后,任务历史会显示在这里`,loadFailed:`加载任务失败`,filterAll:`全部({{count}})`,filterStatus:`{{status}}({{count}})`,fromDate:`开始日期`,toDate:`结束日期`,clear:`清除`,exitCompareMode:`退出对比模式`,compareTwoJobs:`对比 2 个任务`,clearJobs:`清空任务`,selectTwoToCompare:`选择 2 个任务进行对比`,selectOneMore:`再选择 1 个任务`,readyToCompare:`就绪——点击对比`,compareAction:`对比 →`,colStatus:`状态`,colCommand:`命令`,colDuration:`时长`,colTokens:`Token`,colCost:`成本`,colStarted:`开始时间`,profileTooltip:`Profile:{{name}}`,pipelinePart:`属于某个流水线`,pipelineDependsOn:`(依赖上一步)`,deleteProposal:`删除提案`,loadMore:`加载更多(剩余 {{count}} 个)`,priority:{critical:`紧急`,high:`高`,normal:`普通`,low:`低`},clearModal:{title:`清空任务`,jobsInHistory_one:`历史中有 {{count}} 个任务`,jobsInHistory_other:`历史中有 {{count}} 个任务`,clearAll_one:`清空全部 {{count}} 个任务`,clearAll_other:`清空全部 {{count}} 个任务`,orByRange:`或按日期范围清除:`,fromPlaceholder:`开始`,toPlaceholder:`结束`,clearInRange_one:`清除范围内 {{count}} 个任务`,clearInRange_other:`清除范围内 {{count}} 个任务`,clearRange:`清除范围`},deleteProposalConfirm:{title:`删除提案?`,description:`将永久删除 1 个提案。此操作无法撤销。`},toast:{cleared_one:`已清除 {{count}} 个任务`,cleared_other:`已清除 {{count}} 个任务`,clearFailed:`清除任务失败`,networkError:`网络错误`}},u={none:`没有进行中的任务`,noneHint:`在下方选择一个命令以启动任务`,exitCode:`退出码 {{code}}`,cancelTooltip:`向运行中的 claude 进程发送 SIGTERM`,viewLogs:`查看日志`,toast:{cancelRequested:`已请求取消任务`,cancelRequestedDescription:`正在向进程发送 SIGTERM`,cancelFailed:`取消任务失败`,networkError:`取消任务时发生网络错误`}},d={setup:`准备`,iteration:`迭代 {{current}}/{{limit}}`,iterationBadge:`迭代 {{count}}`,follow:`实时跟随中`,resumeFollow:`恢复跟随`,expandAll:`全部展开`,collapseAll:`全部折叠`,copyStep:`复制步骤`,copied:`步骤已复制到剪贴板`,stepDetail:`步骤详情`,stepDetailTemplate:`模板`,stepDetailCommand:`命令`,copyCommand:`复制`,interrupted:`已中断`,waiting:`等待下一个步骤…`,stepMapAria:`循环步骤图`,stalled:`已停滞`,stalledIdle_one:`{{count}} 分钟内无提供方输出,应用已停止此次尝试`,stalledIdle_other:`{{count}} 分钟内无提供方输出,应用已停止此次尝试`,providerLimit:`提供商限额`,providerLimitHint:`提供商返回了用量限额提示,应用已停止运行而不是继续循环。`},f={loading:`正在加载日志…`,empty:`暂无日志输出`,filterPlaceholder:`筛选日志…`,copySuccess:`日志已复制到剪贴板`,copyFailed:`复制日志失败`,lineCount:`{{filtered}} / {{total}} 行`,jumpToBottom:`跳到底部`,phaseLines_one:`{{count}} 行`,phaseLines_other:`{{count}} 行`,noMatchingLines:`没有匹配的行`,noOutput:`无输出`,completed:`已完成`,turns_one:`{{count}} 轮`,turns_other:`{{count}} 轮`},p={title:`运行结果`,execution:`执行`,implementation:`实现`,validation:`验证`,archive:`归档`,delivery:`交付`,counters:`{{steps}} 个步骤 · {{evaluations}} 次决策评估 · {{turns}} 轮代理对话`,unavailable:`不可用`,evidence:`证据、例外和阶段耗时`,snapshot:`完成时记录:{{change}} · {{at}}`,acceptedBy:`由 {{by}} 接受`,required:`必需`,supplementary:`补充`,attempts:`{{count}} 次尝试`,phaseCostUnavailable:`Core 各阶段成本不可用;供应商用量归属于循环步骤。`,noCoreEvidence:`验收证据不可用。执行成功本身并不代表工单已完成。`,status:{success:`成功`,failed:`失败`,blocked:`已阻塞`,stopped:`已停止`,stalled:`无进展`,complete:`已完成`,incomplete:`未完成`,verified:`已验证`,"with-exceptions":`已验证(含例外)`,pending:`待处理`,"pending-host":`等待宿主交付`,done:`已完成`,running:`进行中`,skipped:`已跳过`,passed:`通过`,unavailable:`不可用`}},m={details:`详情`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`截至目前由提供方上报;最终数据在任务结束时给出。`,questionPending:`回答问题`},h={statusLabel:e,statusTooltip:t,statusName:n,page:r,detail:i,statusPanel:a,ticketHeader:o,modal:s,comparison:c,recent:l,activeJob:u,loopExplorer:d,logViewer:f,completion:p,runHeader:m};export{u as activeJob,c as comparison,p as completion,h as default,i as detail,f as logViewer,d as loopExplorer,s as modal,r as page,l as recent,m as runHeader,e as statusLabel,n as statusName,a as statusPanel,t as statusTooltip,o as ticketHeader};
@@ -0,0 +1 @@
1
+ var e={running:`en cours`,completed:`terminé`,done:`fini`,failed:`échoué`,canceled:`annulé`,queued:`en attente`,zombie:`zombie`,skipped:`ignoré`},t={running:`Le job est en cours d'exécution`,completed:`Le job s'est terminé avec succès`,failed:`Le job s'est terminé avec un code de sortie non nul`,canceled:`Le job a été annulé manuellement`,queued:`Le job attend dans la file`,queuedToRun:`Le job attend de s'exécuter`,zombie:`Le job a été arrêté automatiquement après une inactivité prolongée`,skipped:`Le job a été ignoré car un job parent du pipeline a échoué`},n={running:`en cours`,completed:`terminé`,failed:`échoué`,canceled:`annulé`,zombie_terminated:`zombie`,queued:`en attente`,skipped:`ignoré`},r={title:`Jobs`,exportJobs:`Exporter les jobs`,proposalDeleted:`Proposition supprimée`,proposal:{title:`Proposition`,noContent:`Aucun contenu de proposition pour l'instant.`,githubIssue:`Issue GitHub :`,status:{input:`En attente de saisie`,exploring:`Exploration`,review:`Prête pour révision`,refining:`Affinage`,creatingIssue:`Création du ticket`,created:`Créée`,cancelled:`Annulée`,unknown:`Statut inconnu : {{status}}`}}},i={breadcrumbDashboard:`Tableau de bord`,breadcrumbJob:`Job #{{id}}`,notFound:`Job introuvable`,notFoundDescription:`L'ID de job « {{id}} » n'existe pas`,backToDashboard:`Retour au tableau de bord`,startedAgo:`Démarré {{timeAgo}}`,queuedWaiting:`En file d'attente — en attente de démarrage`,exportDiagnostic:`Exporter le diagnostic`,exportDiagnosticAria:`Exporter le bundle de diagnostic`,exportDiagnosticTooltip:`Télécharger un ZIP avec la télémétrie, les logs et le résumé de ce job`,reExecute:`Réexécuter`,reExecuteTooltip:`Lancer un nouveau job avec la même commande`,cancelJob:`Annuler le job`,cancelJobTooltip:`Envoyer SIGTERM au processus en cours. Le job sera marqué comme annulé.`,cancelInteractive:`Abandonner`,finalizeJob:`Finaliser le job`,finalizing:`Finalisation…`,finalizeJobTooltip:`Terminer cette session interactive et agréger les tokens et le coût de chaque tour dans le total du job.`,interactive:{ready:`Prêt — envoyez un prompt`,working:`L'agent travaille…`,placeholder:`Envoyez un message au job en cours…`,send:`Envoyer`,liveTotals:"{{turns}} tours · ${{cost}}",autoHint:`Ce job suit son plan et se termine tout seul — les messages ne sont qu'un pilotage optionnel.`,wrapUp:`Terminer maintenant`,wrapUpTooltip:`Met fin à la session maintenant — le job se termine avec le travail produit jusqu'ici, les tokens et le coût de chaque tour étant intégrés au total.`,wrapUpStep:`Clore cette étape`,wrapUpStepTooltip:`Met fin à l'étape en cours maintenant — la boucle avance avec ce que l'étape a produit jusqu'ici.`,wrappingUp:`Finalisation…`,queued_one:`{{count}} message en attente`,queued_other:`{{count}} messages en attente`,waitingForStep:`Entre deux étapes — la boucle décide de la suite. Vous pourrez envoyer un message au démarrage de la prochaine étape IA.`,waitingForStepShort:`En attente de la prochaine étape…`,sendDisabledEmpty:`Écrivez d'abord un message`,sendDisabledWaiting:`Aucune session d'étape active pour le moment`},toast:{jobDeleted:`Job supprimé`,cancelSignalSent:`Signal d'annulation envoyé`,cancelSignalSentDescription:`Le job s'arrêtera au prochain point sûr`,failed:`Échec`,networkError:`Erreur réseau`,exportFailed:`Échec de l'export`,exportFailedHttp:`Échec de l'export (HTTP {{status}})`,jobRequeued:`Job remis en file`,spawnFailed:`Échec du lancement du job`,finalizeScheduled:`Finalisation du job interactif…`,finalizeFailed:`Échec de la finalisation du job`,sendFailed:`Échec de l'envoi du message`,wrapUpScheduled:`Finalisation du job…`,wrapUpStepScheduled:`Clôture de l'étape — la boucle avance avec ce qu'elle a produit`}},a={inProgress:`Job en cours`,completed:`Job terminé`,failed:`Job échoué`,duration:`Durée`,cost:`Coût`,turns:`Tours`,tokens:`Tokens`,filesCount_one:`{{count}} fichier`,filesCount_other:`{{count}} fichiers`,pipelineTotal:`Total du pipeline ({{count}} phases)`,totalCost:`Coût total`,totalTokens:`Total des tokens`,filesModified:`Fichiers modifiés`,zoneInProgress:`En cours`,zoneFinal:`Résumé final`,zoneFinalPending:`Résumé final — calculé à la fin`,pendingCaption:`Calculé à la fin`,pendingTooltip:`C'est le chiffre réel du fournisseur ; il apparaît à la fin du job.`,costTooltip:`Le coût réel est facturé par le fournisseur à la clôture du job.`,liveTooltip:`En direct`,explainer:`Le coût, les tours et les tokens sont les chiffres réels du fournisseur et apparaissent à la fin.`,notAvailable:`Non disponible`,steps_one:`{{count}} étape`,steps_other:`{{count}} étapes`,activity:{editing:`Édition de {{arg}}`,writing:`Écriture de {{arg}}`,reading:`Lecture de {{arg}}`,searching:`Recherche de « {{arg}} »`,running:`Exécution : {{arg}}`,thinking:`Réflexion…`,reasoning:`Raisonnement…`,working:`Travail en cours…`,connecting:`Connexion à l'agent…`,starting:`Démarrage…`,delegating:`Délégation à {{arg}}`},pipelinePartial:`≥ affiché — {{count}} phase(s) sans coût enregistré`,pipelinePartialTooltip:`Certaines phases se sont arrêtées avant de rapporter leur coût ; ce total est donc une borne inférieure.`,pipelineCostUnavailable:`La télémétrie de coût est indisponible pour toutes les phases.`,pipelineUsageUnavailable:`La télémétrie des tokens est indisponible pour toutes les phases.`,pipelineUsagePartial:`≥ affiché — phases sans télémétrie des tokens : {{count}}`,pipelineUsageTooltip:`Les fournisseurs peuvent terminer des phases sans exposer la télémétrie des tokens ; seule l'utilisation connue est incluse.`,costUnknownLocal:`Coût inconnu (moteur local)`,costUnknownLocalTooltip:`Coût inconnu (moteur local). Ajoutez des tarifs à la connexion pour voir une estimation.`},o={showMore:`+ {{count}} de plus`,showLess:`Voir moins`,deletedTicket:`#{{id}} (supprimé)`,deletedTooltip:`Le ticket n'existe plus`},s={notFound:`Job introuvable`,cancelConfirmTitle:`Annuler le job ?`,cancelConfirmDescription:`Le job s'arrêtera au prochain point sûr. Cette action est irréversible.`,keepRunning:`Laisser tourner`,cancelJob:`Annuler le job`,stopRun:`Arrêter l'exécution`,stopRunConfirmTitle:`Arrêter cette exécution ?`,stopRunConfirmDescription:`L'exécution de la boucle s'arrêtera à la prochaine limite d'étape. Cette action est irréversible.`,toast:{cancelSignalSent:`Signal d'annulation envoyé`,cancelSignalSentDescription:`Le job s'arrêtera au prochain point sûr`,stopSignalSent:`Signal d'arrêt envoyé`,stopSignalSentDescription:`L'exécution s'arrêtera à la prochaine limite d'étape`,cancelFailed:`Échec de l'annulation`,networkError:`Erreur réseau`}},c={title:`Comparaison de jobs`,jobN:`Job {{n}}`,loadFailed:`Échec du chargement de la comparaison : {{error}}`,duration:`Durée`,cost:`Coût`,tokensOut:`Tokens en sortie`,tokensIn:`Tokens en entrée`,cacheRead:`Lecture cache`,model:`Modèle`,phasesDone:`Phases terminées`,betterValueHint:`Les surlignages verts indiquent la meilleure valeur`},l={emptyTitle:`Aucun job pour l'instant`,emptyDescription:`Exécutez une commande ci-dessus pour voir l'historique de vos jobs ici`,loadFailed:`Échec du chargement des jobs`,filterAll:`Tous ({{count}})`,filterStatus:`{{status}} ({{count}})`,fromDate:`Date de début`,toDate:`Date de fin`,clear:`Effacer`,exitCompareMode:`Quitter le mode comparaison`,compareTwoJobs:`Comparer 2 jobs`,clearJobs:`Effacer les jobs`,selectTwoToCompare:`Sélectionnez 2 jobs à comparer`,selectOneMore:`Sélectionnez 1 job de plus`,readyToCompare:`Prêt — cliquez sur comparer`,compareAction:`Comparer →`,colStatus:`Statut`,colCommand:`Commande`,colDuration:`Durée`,colTokens:`Tokens`,colCost:`Coût`,colStarted:`Démarré`,profileTooltip:`Profil : {{name}}`,pipelinePart:`Fait partie d'un pipeline`,pipelineDependsOn:`(dépend de l'étape précédente)`,deleteProposal:`Supprimer la proposition`,loadMore:`Charger plus ({{count}} restants)`,priority:{critical:`critique`,high:`haute`,normal:`normale`,low:`basse`},clearModal:{title:`Effacer les jobs`,jobsInHistory_one:`{{count}} job dans l'historique`,jobsInHistory_other:`{{count}} jobs dans l'historique`,clearAll_one:`Effacer {{count}} job`,clearAll_other:`Effacer les {{count}} jobs`,orByRange:`Ou effacer par plage de dates :`,fromPlaceholder:`Du`,toPlaceholder:`Au`,clearInRange_one:`Effacer {{count}} job dans la plage`,clearInRange_other:`Effacer {{count}} jobs dans la plage`,clearRange:`Effacer la plage`},deleteProposalConfirm:{title:`Supprimer la proposition ?`,description:`Cela supprimera définitivement 1 proposition. Cette action est irréversible.`},toast:{cleared_one:`{{count}} job effacé`,cleared_other:`{{count}} jobs effacés`,clearFailed:`Échec de l'effacement des jobs`,networkError:`Erreur réseau`}},u={none:`Aucun job actif`,noneHint:`Sélectionnez une commande ci-dessous pour démarrer un job`,exitCode:`exit {{code}}`,cancelTooltip:`Envoyer SIGTERM au processus claude en cours`,viewLogs:`Voir les logs`,toast:{cancelRequested:`Annulation du job demandée`,cancelRequestedDescription:`Envoi de SIGTERM au processus`,cancelFailed:`Échec de l'annulation du job`,networkError:`Erreur réseau lors de l'annulation du job`}},d={setup:`Préparation`,iteration:`Itération {{current}}/{{limit}}`,iterationBadge:`itér. {{count}}`,follow:`Suivi en direct`,resumeFollow:`Reprendre le suivi`,expandAll:`Tout développer`,collapseAll:`Tout réduire`,copyStep:`Copier l'étape`,copied:`Étape copiée dans le presse-papiers`,stepDetail:`Détails de l'étape`,stepDetailTemplate:`Modèle`,stepDetailCommand:`Commande`,copyCommand:`Copier`,interrupted:`Interrompue`,waiting:`En attente de la prochaine étape…`,stepMapAria:`Carte des étapes de la boucle`,stalled:`Bloquée`,stalledIdle_one:`Aucune sortie du fournisseur pendant {{count}} minute — l'app a arrêté cette tentative`,stalledIdle_other:`Aucune sortie du fournisseur pendant {{count}} minutes — l'app a arrêté cette tentative`,providerLimit:`Limite du fournisseur`,providerLimitHint:`Le fournisseur a répondu par un avis de limite d'utilisation ; l'app a arrêté l'exécution au lieu de boucler.`},f={loading:`Chargement des logs…`,empty:`Aucune sortie de log pour l'instant`,filterPlaceholder:`Filtrer les logs…`,copySuccess:`Log copié dans le presse-papiers`,copyFailed:`Échec de la copie du log`,lineCount:`{{filtered}} / {{total}} lignes`,jumpToBottom:`Aller en bas`,phaseLines_one:`{{count}} ligne`,phaseLines_other:`{{count}} lignes`,noMatchingLines:`Aucune ligne correspondante`,noOutput:`Aucune sortie`,completed:`Terminé`,turns_one:`{{count}} tour`,turns_other:`{{count}} tours`},p={title:`Résultat de l’exécution`,execution:`Exécution`,implementation:`Implémentation`,validation:`Validation`,archive:`Archivage`,delivery:`Livraison`,counters:`Étapes : {{steps}} · Évaluations : {{evaluations}} · Tours de l’agent : {{turns}}`,unavailable:`Indisponible`,evidence:`Preuves, exceptions et durées des phases`,snapshot:`Enregistré à la fin : {{change}} · {{at}}`,acceptedBy:`Accepté par {{by}}`,required:`Obligatoire`,supplementary:`Complémentaire`,attempts:`Tentatives : {{count}}`,phaseCostUnavailable:`Le coût par phase Core est indisponible ; la consommation du fournisseur est attribuée aux étapes de la boucle.`,noCoreEvidence:`Preuves d’acceptation indisponibles. Une exécution réussie ne confirme pas à elle seule que le ticket est terminé.`,status:{success:`Réussie`,failed:`Échouée`,blocked:`Bloquée`,stopped:`Arrêtée`,stalled:`Sans progression`,complete:`Terminée`,incomplete:`Incomplète`,verified:`Vérifiée`,"with-exceptions":`Vérifiée avec exceptions`,pending:`En attente`,"pending-host":`Livraison par l’hôte en attente`,done:`Terminé`,running:`En cours`,skipped:`Ignoré`,passed:`Réussi`,unavailable:`Indisponible`}},m={details:`Détails`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`Rapporté par le fournisseur jusqu'ici ; les chiffres définitifs arrivent à la fin du job.`,questionPending:`Répondre à la question`},h={statusLabel:e,statusTooltip:t,statusName:n,page:r,detail:i,statusPanel:a,ticketHeader:o,modal:s,comparison:c,recent:l,activeJob:u,loopExplorer:d,logViewer:f,completion:p,runHeader:m};export{u as activeJob,c as comparison,p as completion,h as default,i as detail,f as logViewer,d as loopExplorer,s as modal,r as page,l as recent,m as runHeader,e as statusLabel,n as statusName,a as statusPanel,t as statusTooltip,o as ticketHeader};
@@ -1 +1 @@
1
- var e=`Récit`,t=`Journal`,n=`Rien ne s'est encore passé.`,r=`Aucune activité enregistrée pour cette exécution.`,i={range:`Les exécutions de ce type ont pris {{low}}–{{high}} min (dernières {{count}})`,elapsed:`En cours depuis {{minutes}} min`},a=`Construit à partir de ce qui s'est réellement passé pendant l'exécution.`,o={start:`Étape {{step}} : {{title}}`,startRetry:`Étape {{step}} : {{title}} — tentative {{iteration}}`,done:`Étape {{step}} terminée`,doneTimed:`Étape {{step}} terminée en {{seconds}} s`,failed:`L'étape {{step}} n'a pas abouti`,interrupted:`L'étape {{step}} a été interrompue avant la fin`,doneTimedMin:`Étape {{step}} terminée en {{minutes}} min`,role:{work:`réalisation des changements`,verify:`vérification du fonctionnement`,decide:`décision : est-ce terminé ?`,fix:`correction de ce qui a échoué`},stalled:`L'étape {{step}} s'est bloquée — aucune activité pendant {{idleMinutes}} min, l'app l'a donc arrêtée`,startResume:`Étape {{step}} : {{title}} — reprise après un blocage`,providerLimit:`Étape {{step}} arrêtée — la limite d'utilisation du fournisseur a été atteinte`,recovered:`Étape {{step}} terminée après reprise`},s={another:`Pas encore fini — nouveau tour`,satisfied:`Objectif atteint — on continue`},c={reading:`Lecture de {{target}}`,readingBare:`Lecture du code`,editing:`Modification de {{target}}`,editingBare:`Modification du code`,writing:`Écriture de {{target}}`,writingBare:`Écriture de nouveau code`,searching:`Recherche de {{target}}`,searchingBare:`Recherche dans le code`,running:`Exécution de {{target}}`,runningBare:`Exécution d'une commande`,working:`Travail sur {{target}}`,workingBare:`Travail en cours`,exploring:`Exploration du code`,exploringBare:`Exploration du code`,testing:`Exécution des tests`,building:`Compilation du projet`,typechecking:`Vérification des types`,linting:`Vérification du style`,installing:`Installation des dépendances`,savingWork:`Enregistrement du travail`,checkingSpec:`Vérification de la spec`,bookkeeping:`Prise de ses propres notes`,bookkeepingBare:`Prise de ses propres notes`,writingSpec:`Rédaction du plan`,writingSpecBare:`Rédaction du plan`,writingFiles:`Écriture de {{files}} fichiers ({{names}}…)`,readingFiles:`Lecture de {{files}} fichiers ({{names}}…)`,editingFiles:`Modification de {{files}} fichiers ({{names}}…)`,delegating:`Transmission au {{target}}`,delegatingBare:`Transmission à un spécialiste`,phase:{architect:`Conception du changement (architecte)`,developer:`Implémentation du changement (développeur)`,verify:`Exécution des commandes de vérification`,reviewer:`Relecture de l’implémentation (relecteur)`,archive:`Archivage du changement relu`,stopped:`Le moteur s’est arrêté : {{target}}`,corrections:`Renvoi des corrections au développeur`,resumed:`Reprise de l’exécution enregistrée`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
1
+ var e=`Récit`,t=`Journal`,n=`Rien ne s'est encore passé.`,r=`Aucune activité enregistrée pour cette exécution.`,i={range:`Les exécutions de ce type ont pris {{low}}–{{high}} min (dernières {{count}})`,elapsed:`En cours depuis {{minutes}} min`},a=`Construit à partir de ce qui s'est réellement passé pendant l'exécution.`,o={start:`Étape {{step}} : {{title}}`,startRetry:`Étape {{step}} : {{title}} — tentative {{iteration}}`,done:`Étape {{step}} terminée`,doneTimed:`Étape {{step}} terminée en {{seconds}} s`,failed:`L'étape {{step}} n'a pas abouti`,interrupted:`L'étape {{step}} a été interrompue avant la fin`,doneTimedMin:`Étape {{step}} terminée en {{minutes}} min`,role:{work:`réalisation des changements`,verify:`vérification du fonctionnement`,decide:`décision : est-ce terminé ?`,fix:`correction de ce qui a échoué`},stalled:`L'étape {{step}} s'est bloquée — aucune activité pendant {{idleMinutes}} min, l'app l'a donc arrêtée`,startResume:`Étape {{step}} : {{title}} — reprise après un blocage`,providerLimit:`Étape {{step}} arrêtée — la limite d'utilisation du fournisseur a été atteinte`,recovered:`Étape {{step}} terminée après reprise`},s={another:`Pas encore fini — nouveau tour`,satisfied:`Objectif atteint — on continue`},c={reading:`Lecture de {{target}}`,readingBare:`Lecture du code`,editing:`Modification de {{target}}`,editingBare:`Modification du code`,writing:`Écriture de {{target}}`,writingBare:`Écriture de nouveau code`,searching:`Recherche de {{target}}`,searchingBare:`Recherche dans le code`,running:`Exécution de {{target}}`,runningBare:`Exécution d'une commande`,working:`Travail sur {{target}}`,workingBare:`Travail en cours`,exploring:`Exploration du code`,exploringBare:`Exploration du code`,testing:`Exécution des tests`,building:`Compilation du projet`,typechecking:`Vérification des types`,linting:`Vérification du style`,installing:`Installation des dépendances`,savingWork:`Enregistrement du travail`,checkingSpec:`Vérification de la spec`,bookkeeping:`Prise de ses propres notes`,bookkeepingBare:`Prise de ses propres notes`,writingSpec:`Rédaction du plan`,writingSpecBare:`Rédaction du plan`,writingFiles:`Écriture de {{files}} fichiers ({{names}}…)`,readingFiles:`Lecture de {{files}} fichiers ({{names}}…)`,editingFiles:`Modification de {{files}} fichiers ({{names}}…)`,delegating:`Transmission au {{target}}`,delegatingBare:`Transmission à un spécialiste`,phase:{architect:`Conception du changement (architecte)`,developer:`Implémentation du changement (développeur)`,verify:`Exécution des commandes de vérification`,fixer:`Correction de ce que la vérification ou la revue a signalé (correcteur)`,reviewer:`Relecture de l’implémentation (relecteur)`,archive:`Archivage du changement relu`,stopped:`Le moteur s’est arrêté : {{target}}`,corrections:`Poursuite des tâches restantes (développeur)`,resumed:`Reprise de l’exécution enregistrée`},check:{started:`Vérification de {{target}}`,passed:`Vérification réussie : {{target}}`,failed:`Vérification échouée : {{target}}`,reused:`Réutilisation du résultat vérifié : {{target}}`,invalidated:`Résultat précédent invalidé : {{target}}`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
@@ -1 +1 @@
1
- var e=`経過`,t=`ログ`,n=`まだ何も起きていません。`,r=`この実行では活動が記録されませんでした。`,i={range:`同種の実行は {{low}}〜{{high}} 分かかっています(直近 {{count}} 件)`,elapsed:`実行中 {{minutes}} 分`},a=`実行中に実際に起きたことから作成しています。`,o={start:`ステップ {{step}}:{{title}}`,startRetry:`ステップ {{step}}:{{title}} — {{iteration}} 回目`,done:`ステップ {{step}} 完了`,doneTimed:`ステップ {{step}} を {{seconds}} 秒で完了`,failed:`ステップ {{step}} は成功しませんでした`,interrupted:`ステップ {{step}} は完了前に中断されました`,doneTimedMin:`ステップ {{step}} を {{minutes}} 分で完了`,role:{work:`変更を加えています`,verify:`動作を確認しています`,decide:`完了かどうか判断しています`,fix:`失敗した箇所を修正しています`},stalled:`ステップ {{step}} が停止:{{idleMinutes}} 分間活動がなかったため、アプリが停止しました`,startResume:`ステップ {{step}}:{{title}} — 停止後に再開`,providerLimit:`ステップ {{step}} 停止 — プロバイダーの利用上限に達しました`,recovered:`再開後にステップ {{step}} が完了`},s={another:`まだ未達 — もう一周`,satisfied:`目標達成 — 次へ`},c={reading:`{{target}} を読んでいます`,readingBare:`コードを読んでいます`,editing:`{{target}} を変更しています`,editingBare:`コードを変更しています`,writing:`{{target}} を書いています`,writingBare:`新しいコードを書いています`,searching:`{{target}} を検索しています`,searchingBare:`コードを検索しています`,running:`{{target}} を実行しています`,runningBare:`コマンドを実行しています`,working:`{{target}} を進めています`,workingBare:`作業中`,exploring:`コードを見ています`,exploringBare:`コードを見ています`,testing:`テストを実行しています`,building:`プロジェクトをビルドしています`,typechecking:`型を確認しています`,linting:`コードスタイルを確認しています`,installing:`依存関係をインストールしています`,savingWork:`作業を保存しています`,checkingSpec:`仕様を確認しています`,bookkeeping:`自分用のメモを記録しています`,bookkeepingBare:`自分用のメモを記録しています`,writingSpec:`計画を書いています`,writingSpecBare:`計画を書いています`,writingFiles:`{{files}} 個のファイルを書いています({{names}}…)`,readingFiles:`{{files}} 個のファイルを読んでいます({{names}}…)`,editingFiles:`{{files}} 個のファイルを変更しています({{names}}…)`,delegating:`{{target}} に引き継いでいます`,delegatingBare:`担当に引き継いでいます`,phase:{architect:`変更を設計中(アーキテクト)`,developer:`変更を実装中(デベロッパー)`,verify:`検証コマンドを実行中`,reviewer:`実装をレビュー中(レビュアー)`,archive:`レビュー済みの変更をアーカイブ中`,stopped:`実行エンジンが停止しました: {{target}}`,corrections:`修正をデベロッパーに差し戻し中`,resumed:`保存した実行を再開しています`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
1
+ var e=`経過`,t=`ログ`,n=`まだ何も起きていません。`,r=`この実行では活動が記録されませんでした。`,i={range:`同種の実行は {{low}}〜{{high}} 分かかっています(直近 {{count}} 件)`,elapsed:`実行中 {{minutes}} 分`},a=`実行中に実際に起きたことから作成しています。`,o={start:`ステップ {{step}}:{{title}}`,startRetry:`ステップ {{step}}:{{title}} — {{iteration}} 回目`,done:`ステップ {{step}} 完了`,doneTimed:`ステップ {{step}} を {{seconds}} 秒で完了`,failed:`ステップ {{step}} は成功しませんでした`,interrupted:`ステップ {{step}} は完了前に中断されました`,doneTimedMin:`ステップ {{step}} を {{minutes}} 分で完了`,role:{work:`変更を加えています`,verify:`動作を確認しています`,decide:`完了かどうか判断しています`,fix:`失敗した箇所を修正しています`},stalled:`ステップ {{step}} が停止:{{idleMinutes}} 分間活動がなかったため、アプリが停止しました`,startResume:`ステップ {{step}}:{{title}} — 停止後に再開`,providerLimit:`ステップ {{step}} 停止 — プロバイダーの利用上限に達しました`,recovered:`再開後にステップ {{step}} が完了`},s={another:`まだ未達 — もう一周`,satisfied:`目標達成 — 次へ`},c={reading:`{{target}} を読んでいます`,readingBare:`コードを読んでいます`,editing:`{{target}} を変更しています`,editingBare:`コードを変更しています`,writing:`{{target}} を書いています`,writingBare:`新しいコードを書いています`,searching:`{{target}} を検索しています`,searchingBare:`コードを検索しています`,running:`{{target}} を実行しています`,runningBare:`コマンドを実行しています`,working:`{{target}} を進めています`,workingBare:`作業中`,exploring:`コードを見ています`,exploringBare:`コードを見ています`,testing:`テストを実行しています`,building:`プロジェクトをビルドしています`,typechecking:`型を確認しています`,linting:`コードスタイルを確認しています`,installing:`依存関係をインストールしています`,savingWork:`作業を保存しています`,checkingSpec:`仕様を確認しています`,bookkeeping:`自分用のメモを記録しています`,bookkeepingBare:`自分用のメモを記録しています`,writingSpec:`計画を書いています`,writingSpecBare:`計画を書いています`,writingFiles:`{{files}} 個のファイルを書いています({{names}}…)`,readingFiles:`{{files}} 個のファイルを読んでいます({{names}}…)`,editingFiles:`{{files}} 個のファイルを変更しています({{names}}…)`,delegating:`{{target}} に引き継いでいます`,delegatingBare:`担当に引き継いでいます`,phase:{architect:`変更を設計中(アーキテクト)`,developer:`変更を実装中(デベロッパー)`,verify:`検証コマンドを実行中`,fixer:`検証またはレビューで報告された問題を修正中(フィクサー)`,reviewer:`実装をレビュー中(レビュアー)`,archive:`レビュー済みの変更をアーカイブ中`,stopped:`実行エンジンが停止しました: {{target}}`,corrections:`残りのタスクを続行中(開発者)`,resumed:`保存した実行を再開しています`},check:{started:`{{target}} を検証中`,passed:`検証成功: {{target}}`,failed:`検証失敗: {{target}}`,reused:`検証済み結果を再利用: {{target}}`,invalidated:`以前の結果は無効: {{target}}`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
@@ -1 +1 @@
1
- var e=`Racconto`,t=`Registro`,n=`Non è ancora successo nulla.`,r=`Nessuna attività registrata per questa esecuzione.`,i={range:`Esecuzioni come questa hanno richiesto {{low}}–{{high}} min (ultime {{count}})`,elapsed:`In corso da {{minutes}} min`},a=`Costruito da ciò che è realmente accaduto durante l'esecuzione.`,o={start:`Passo {{step}}: {{title}}`,startRetry:`Passo {{step}}: {{title}} — tentativo {{iteration}}`,done:`Passo {{step}} completato`,doneTimed:`Passo {{step}} completato in {{seconds}} s`,failed:`Il passo {{step}} non è riuscito`,interrupted:`Il passo {{step}} è stato interrotto prima di finire`,doneTimedMin:`Passo {{step}} completato in {{minutes}} min`,role:{work:`sta applicando le modifiche`,verify:`sta verificando che funzioni`,decide:`sta decidendo se è finito`,fix:`sta correggendo ciò che è fallito`},stalled:`Il passo {{step}} si è bloccato — nessuna attività per {{idleMinutes}} min, quindi l'app l'ha fermato`,startResume:`Passo {{step}}: {{title}} — ripresa dopo un blocco`,providerLimit:`Passo {{step}} fermato — raggiunto il limite d'uso del provider`,recovered:`Passaggio {{step}} completato dopo la ripresa`},s={another:`Non ancora — un altro giro`,satisfied:`Obiettivo raggiunto — si procede`},c={reading:`Sta leggendo {{target}}`,readingBare:`Sta leggendo il codice`,editing:`Sta modificando {{target}}`,editingBare:`Sta modificando il codice`,writing:`Sta scrivendo {{target}}`,writingBare:`Sta scrivendo nuovo codice`,searching:`Sta cercando {{target}}`,searchingBare:`Sta cercando nel codice`,running:`Sta eseguendo {{target}}`,runningBare:`Sta eseguendo un comando`,working:`Sta lavorando su {{target}}`,workingBare:`Al lavoro`,exploring:`Sta esaminando il codice`,exploringBare:`Sta esaminando il codice`,testing:`Sta eseguendo i test`,building:`Sta compilando il progetto`,typechecking:`Sta verificando i tipi`,linting:`Sta verificando lo stile del codice`,installing:`Sta installando le dipendenze`,savingWork:`Sta salvando il lavoro`,checkingSpec:`Sta verificando la spec`,bookkeeping:`Sta annotando i propri appunti`,bookkeepingBare:`Sta annotando i propri appunti`,writingSpec:`Sta scrivendo il piano`,writingSpecBare:`Sta scrivendo il piano`,writingFiles:`Sta scrivendo {{files}} file ({{names}}…)`,readingFiles:`Sta leggendo {{files}} file ({{names}}…)`,editingFiles:`Sta modificando {{files}} file ({{names}}…)`,delegating:`Passa il lavoro al {{target}}`,delegatingBare:`Passa il lavoro a uno specialista`,phase:{architect:`Progettazione della modifica (architetto)`,developer:`Implementazione della modifica (sviluppatore)`,verify:`Esecuzione dei comandi di verifica`,reviewer:`Revisione dell’implementazione (revisore)`,archive:`Archiviazione della modifica revisionata`,stopped:`Il motore si è fermato: {{target}}`,corrections:`Correzioni rinviate allo sviluppatore`,resumed:`Ripresa dell’esecuzione salvata`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
1
+ var e=`Racconto`,t=`Registro`,n=`Non è ancora successo nulla.`,r=`Nessuna attività registrata per questa esecuzione.`,i={range:`Esecuzioni come questa hanno richiesto {{low}}–{{high}} min (ultime {{count}})`,elapsed:`In corso da {{minutes}} min`},a=`Costruito da ciò che è realmente accaduto durante l'esecuzione.`,o={start:`Passo {{step}}: {{title}}`,startRetry:`Passo {{step}}: {{title}} — tentativo {{iteration}}`,done:`Passo {{step}} completato`,doneTimed:`Passo {{step}} completato in {{seconds}} s`,failed:`Il passo {{step}} non è riuscito`,interrupted:`Il passo {{step}} è stato interrotto prima di finire`,doneTimedMin:`Passo {{step}} completato in {{minutes}} min`,role:{work:`sta applicando le modifiche`,verify:`sta verificando che funzioni`,decide:`sta decidendo se è finito`,fix:`sta correggendo ciò che è fallito`},stalled:`Il passo {{step}} si è bloccato — nessuna attività per {{idleMinutes}} min, quindi l'app l'ha fermato`,startResume:`Passo {{step}}: {{title}} — ripresa dopo un blocco`,providerLimit:`Passo {{step}} fermato — raggiunto il limite d'uso del provider`,recovered:`Passaggio {{step}} completato dopo la ripresa`},s={another:`Non ancora — un altro giro`,satisfied:`Obiettivo raggiunto — si procede`},c={reading:`Sta leggendo {{target}}`,readingBare:`Sta leggendo il codice`,editing:`Sta modificando {{target}}`,editingBare:`Sta modificando il codice`,writing:`Sta scrivendo {{target}}`,writingBare:`Sta scrivendo nuovo codice`,searching:`Sta cercando {{target}}`,searchingBare:`Sta cercando nel codice`,running:`Sta eseguendo {{target}}`,runningBare:`Sta eseguendo un comando`,working:`Sta lavorando su {{target}}`,workingBare:`Al lavoro`,exploring:`Sta esaminando il codice`,exploringBare:`Sta esaminando il codice`,testing:`Sta eseguendo i test`,building:`Sta compilando il progetto`,typechecking:`Sta verificando i tipi`,linting:`Sta verificando lo stile del codice`,installing:`Sta installando le dipendenze`,savingWork:`Sta salvando il lavoro`,checkingSpec:`Sta verificando la spec`,bookkeeping:`Sta annotando i propri appunti`,bookkeepingBare:`Sta annotando i propri appunti`,writingSpec:`Sta scrivendo il piano`,writingSpecBare:`Sta scrivendo il piano`,writingFiles:`Sta scrivendo {{files}} file ({{names}}…)`,readingFiles:`Sta leggendo {{files}} file ({{names}}…)`,editingFiles:`Sta modificando {{files}} file ({{names}}…)`,delegating:`Passa il lavoro al {{target}}`,delegatingBare:`Passa il lavoro a uno specialista`,phase:{architect:`Progettazione della modifica (architetto)`,developer:`Implementazione della modifica (sviluppatore)`,verify:`Esecuzione dei comandi di verifica`,fixer:`Correzione di quanto segnalato dalla verifica o dalla revisione (correttore)`,reviewer:`Revisione dell’implementazione (revisore)`,archive:`Archiviazione della modifica revisionata`,stopped:`Il motore si è fermato: {{target}}`,corrections:`Prosecuzione delle attività rimanenti (sviluppatore)`,resumed:`Ripresa dell’esecuzione salvata`},check:{started:`Verifica di {{target}}`,passed:`Verifica superata: {{target}}`,failed:`Verifica fallita: {{target}}`,reused:`Riutilizzo del risultato verificato: {{target}}`,invalidated:`Risultato precedente invalidato: {{target}}`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
@@ -1 +1 @@
1
- var e=`Relato`,t=`Registo`,n=`Ainda não aconteceu nada.`,r=`Não foi registada atividade nesta execução.`,i={range:`Execuções como esta levaram {{low}}–{{high}} min (últimas {{count}})`,elapsed:`A correr há {{minutes}} min`},a=`Construído a partir do que realmente aconteceu durante a execução.`,o={start:`Passo {{step}}: {{title}}`,startRetry:`Passo {{step}}: {{title}} — tentativa {{iteration}}`,done:`Passo {{step}} concluído`,doneTimed:`Passo {{step}} concluído em {{seconds}} s`,failed:`O passo {{step}} não correu bem`,interrupted:`O passo {{step}} foi interrompido antes de terminar`,doneTimedMin:`Passo {{step}} concluído em {{minutes}} min`,role:{work:`a fazer as alterações`,verify:`a comprovar que funciona`,decide:`a decidir se está terminado`,fix:`a corrigir o que falhou`},stalled:`O passo {{step}} travou — sem atividade durante {{idleMinutes}} min, por isso a app parou-o`,startResume:`Passo {{step}}: {{title}} — a retomar após travar`,providerLimit:`Passo {{step}} parado — o limite de utilização do fornecedor foi atingido`,recovered:`Passo {{step}} concluído após retomar`},s={another:`Ainda não está — outra volta`,satisfied:`Objetivo cumprido — a seguir`},c={reading:`A ler {{target}}`,readingBare:`A ler o código`,editing:`A alterar {{target}}`,editingBare:`A alterar o código`,writing:`A escrever {{target}}`,writingBare:`A escrever código novo`,searching:`A procurar {{target}}`,searchingBare:`A procurar no código`,running:`A executar {{target}}`,runningBare:`A executar um comando`,working:`A trabalhar em {{target}}`,workingBare:`A trabalhar`,exploring:`A percorrer o código`,exploringBare:`A percorrer o código`,testing:`A executar os testes`,building:`A compilar o projeto`,typechecking:`A verificar os tipos`,linting:`A verificar o estilo do código`,installing:`A instalar dependências`,savingWork:`A guardar o trabalho`,checkingSpec:`A verificar a spec`,bookkeeping:`A registar as suas notas`,bookkeepingBare:`A registar as suas notas`,writingSpec:`A escrever o plano`,writingSpecBare:`A escrever o plano`,writingFiles:`A escrever {{files}} ficheiros ({{names}}…)`,readingFiles:`A ler {{files}} ficheiros ({{names}}…)`,editingFiles:`A alterar {{files}} ficheiros ({{names}}…)`,delegating:`A passar o trabalho ao {{target}}`,delegatingBare:`A passar o trabalho a um especialista`,phase:{architect:`A desenhar a alteração (arquiteto)`,developer:`A implementar a alteração (programador)`,verify:`A executar os comandos de verificação`,reviewer:`A rever a implementação (revisor)`,archive:`A arquivar a alteração revista`,stopped:`O motor parou: {{target}}`,corrections:`A devolver correções ao programador`,resumed:`Retomando a execução guardada`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
1
+ var e=`Relato`,t=`Registo`,n=`Ainda não aconteceu nada.`,r=`Não foi registada atividade nesta execução.`,i={range:`Execuções como esta levaram {{low}}–{{high}} min (últimas {{count}})`,elapsed:`A correr há {{minutes}} min`},a=`Construído a partir do que realmente aconteceu durante a execução.`,o={start:`Passo {{step}}: {{title}}`,startRetry:`Passo {{step}}: {{title}} — tentativa {{iteration}}`,done:`Passo {{step}} concluído`,doneTimed:`Passo {{step}} concluído em {{seconds}} s`,failed:`O passo {{step}} não correu bem`,interrupted:`O passo {{step}} foi interrompido antes de terminar`,doneTimedMin:`Passo {{step}} concluído em {{minutes}} min`,role:{work:`a fazer as alterações`,verify:`a comprovar que funciona`,decide:`a decidir se está terminado`,fix:`a corrigir o que falhou`},stalled:`O passo {{step}} travou — sem atividade durante {{idleMinutes}} min, por isso a app parou-o`,startResume:`Passo {{step}}: {{title}} — a retomar após travar`,providerLimit:`Passo {{step}} parado — o limite de utilização do fornecedor foi atingido`,recovered:`Passo {{step}} concluído após retomar`},s={another:`Ainda não está — outra volta`,satisfied:`Objetivo cumprido — a seguir`},c={reading:`A ler {{target}}`,readingBare:`A ler o código`,editing:`A alterar {{target}}`,editingBare:`A alterar o código`,writing:`A escrever {{target}}`,writingBare:`A escrever código novo`,searching:`A procurar {{target}}`,searchingBare:`A procurar no código`,running:`A executar {{target}}`,runningBare:`A executar um comando`,working:`A trabalhar em {{target}}`,workingBare:`A trabalhar`,exploring:`A percorrer o código`,exploringBare:`A percorrer o código`,testing:`A executar os testes`,building:`A compilar o projeto`,typechecking:`A verificar os tipos`,linting:`A verificar o estilo do código`,installing:`A instalar dependências`,savingWork:`A guardar o trabalho`,checkingSpec:`A verificar a spec`,bookkeeping:`A registar as suas notas`,bookkeepingBare:`A registar as suas notas`,writingSpec:`A escrever o plano`,writingSpecBare:`A escrever o plano`,writingFiles:`A escrever {{files}} ficheiros ({{names}}…)`,readingFiles:`A ler {{files}} ficheiros ({{names}}…)`,editingFiles:`A alterar {{files}} ficheiros ({{names}}…)`,delegating:`A passar o trabalho ao {{target}}`,delegatingBare:`A passar o trabalho a um especialista`,phase:{architect:`A desenhar a alteração (arquiteto)`,developer:`A implementar a alteração (programador)`,verify:`A executar os comandos de verificação`,fixer:`A corrigir o que a verificação ou a revisão reportou (corretor)`,reviewer:`A rever a implementação (revisor)`,archive:`A arquivar a alteração revista`,stopped:`O motor parou: {{target}}`,corrections:`A continuar as tarefas restantes (developer)`,resumed:`Retomando a execução guardada`},check:{started:`A verificar {{target}}`,passed:`Verificação aprovada: {{target}}`,failed:`Verificação falhou: {{target}}`,reused:`A reutilizar o resultado verificado: {{target}}`,invalidated:`Resultado anterior invalidado: {{target}}`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
@@ -1 +1 @@
1
- var e=`Verlauf`,t=`Protokoll`,n=`Bisher ist nichts passiert.`,r=`Für diesen Lauf wurde keine Aktivität erfasst.`,i={range:`Solche Läufe dauerten {{low}}–{{high}} min (letzte {{count}})`,elapsed:`Läuft seit {{minutes}} min`},a=`Aus dem erstellt, was während des Laufs tatsächlich passiert ist.`,o={start:`Schritt {{step}}: {{title}}`,startRetry:`Schritt {{step}}: {{title}} — Versuch {{iteration}}`,done:`Schritt {{step}} abgeschlossen`,doneTimed:`Schritt {{step}} in {{seconds}} s abgeschlossen`,failed:`Schritt {{step}} war nicht erfolgreich`,interrupted:`Schritt {{step}} wurde vor dem Ende abgebrochen`,doneTimedMin:`Schritt {{step}} in {{minutes}} min abgeschlossen`,role:{work:`nimmt die Änderungen vor`,verify:`prüft, ob es funktioniert`,decide:`entscheidet, ob es fertig ist`,fix:`behebt, was fehlschlug`},stalled:`Schritt {{step}} hing – {{idleMinutes}} Min. ohne Aktivität, daher hat die App ihn beendet`,startResume:`Schritt {{step}}: {{title}} – Fortsetzung nach einem Hänger`,providerLimit:`Schritt {{step}} gestoppt — das Nutzungslimit des Anbieters ist erreicht`,recovered:`Schritt {{step}} nach dem Fortsetzen abgeschlossen`},s={another:`Noch nicht fertig — nächste Runde`,satisfied:`Ziel erreicht — weiter`},c={reading:`Liest {{target}}`,readingBare:`Liest den Code`,editing:`Ändert {{target}}`,editingBare:`Ändert den Code`,writing:`Schreibt {{target}}`,writingBare:`Schreibt neuen Code`,searching:`Sucht nach {{target}}`,searchingBare:`Sucht im Code`,running:`Führt {{target}} aus`,runningBare:`Führt einen Befehl aus`,working:`Arbeitet an {{target}}`,workingBare:`Arbeitet`,exploring:`Sieht den Code durch`,exploringBare:`Sieht den Code durch`,testing:`Führt die Tests aus`,building:`Baut das Projekt`,typechecking:`Prüft die Typen`,linting:`Prüft den Codestil`,installing:`Installiert Abhängigkeiten`,savingWork:`Sichert die Arbeit`,checkingSpec:`Prüft die Spec`,bookkeeping:`Notiert eigene Aufzeichnungen`,bookkeepingBare:`Notiert eigene Aufzeichnungen`,writingSpec:`Schreibt den Plan`,writingSpecBare:`Schreibt den Plan`,writingFiles:`Schreibt {{files}} Dateien ({{names}}…)`,readingFiles:`Liest {{files}} Dateien ({{names}}…)`,editingFiles:`Ändert {{files}} Dateien ({{names}}…)`,delegating:`Übergibt an {{target}}`,delegatingBare:`Übergibt an einen Spezialisten`,phase:{architect:`Entwurf der Änderung (Architekt)`,developer:`Umsetzung der Änderung (Entwickler)`,verify:`Ausführen der Verifikationsbefehle`,reviewer:`Prüfung der Umsetzung (Reviewer)`,archive:`Archivierung der geprüften Änderung`,stopped:`Die Laufzeit wurde gestoppt: {{target}}`,corrections:`Korrekturen gehen an den Entwickler zurück`,resumed:`Gespeicherte Ausführung wird fortgesetzt`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
1
+ var e=`Verlauf`,t=`Protokoll`,n=`Bisher ist nichts passiert.`,r=`Für diesen Lauf wurde keine Aktivität erfasst.`,i={range:`Solche Läufe dauerten {{low}}–{{high}} min (letzte {{count}})`,elapsed:`Läuft seit {{minutes}} min`},a=`Aus dem erstellt, was während des Laufs tatsächlich passiert ist.`,o={start:`Schritt {{step}}: {{title}}`,startRetry:`Schritt {{step}}: {{title}} — Versuch {{iteration}}`,done:`Schritt {{step}} abgeschlossen`,doneTimed:`Schritt {{step}} in {{seconds}} s abgeschlossen`,failed:`Schritt {{step}} war nicht erfolgreich`,interrupted:`Schritt {{step}} wurde vor dem Ende abgebrochen`,doneTimedMin:`Schritt {{step}} in {{minutes}} min abgeschlossen`,role:{work:`nimmt die Änderungen vor`,verify:`prüft, ob es funktioniert`,decide:`entscheidet, ob es fertig ist`,fix:`behebt, was fehlschlug`},stalled:`Schritt {{step}} hing – {{idleMinutes}} Min. ohne Aktivität, daher hat die App ihn beendet`,startResume:`Schritt {{step}}: {{title}} – Fortsetzung nach einem Hänger`,providerLimit:`Schritt {{step}} gestoppt — das Nutzungslimit des Anbieters ist erreicht`,recovered:`Schritt {{step}} nach dem Fortsetzen abgeschlossen`},s={another:`Noch nicht fertig — nächste Runde`,satisfied:`Ziel erreicht — weiter`},c={reading:`Liest {{target}}`,readingBare:`Liest den Code`,editing:`Ändert {{target}}`,editingBare:`Ändert den Code`,writing:`Schreibt {{target}}`,writingBare:`Schreibt neuen Code`,searching:`Sucht nach {{target}}`,searchingBare:`Sucht im Code`,running:`Führt {{target}} aus`,runningBare:`Führt einen Befehl aus`,working:`Arbeitet an {{target}}`,workingBare:`Arbeitet`,exploring:`Sieht den Code durch`,exploringBare:`Sieht den Code durch`,testing:`Führt die Tests aus`,building:`Baut das Projekt`,typechecking:`Prüft die Typen`,linting:`Prüft den Codestil`,installing:`Installiert Abhängigkeiten`,savingWork:`Sichert die Arbeit`,checkingSpec:`Prüft die Spec`,bookkeeping:`Notiert eigene Aufzeichnungen`,bookkeepingBare:`Notiert eigene Aufzeichnungen`,writingSpec:`Schreibt den Plan`,writingSpecBare:`Schreibt den Plan`,writingFiles:`Schreibt {{files}} Dateien ({{names}}…)`,readingFiles:`Liest {{files}} Dateien ({{names}}…)`,editingFiles:`Ändert {{files}} Dateien ({{names}}…)`,delegating:`Übergibt an {{target}}`,delegatingBare:`Übergibt an einen Spezialisten`,phase:{architect:`Entwurf der Änderung (Architekt)`,developer:`Umsetzung der Änderung (Entwickler)`,verify:`Ausführen der Verifikationsbefehle`,fixer:`Behebt, was Prüfung oder Review gemeldet haben (Korrektor)`,reviewer:`Prüfung der Umsetzung (Reviewer)`,archive:`Archivierung der geprüften Änderung`,stopped:`Die Laufzeit wurde gestoppt: {{target}}`,corrections:`Setzt die verbleibenden Aufgaben fort (Entwickler)`,resumed:`Gespeicherte Ausführung wird fortgesetzt`},check:{started:`Prüfe {{target}}`,passed:`Prüfung bestanden: {{target}}`,failed:`Prüfung fehlgeschlagen: {{target}}`,reused:`Geprüftes Ergebnis wiederverwenden: {{target}}`,invalidated:`Vorheriges Ergebnis ungültig: {{target}}`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
@@ -1 +1 @@
1
- var e=`过程`,t=`日志`,n=`还没有发生任何事。`,r=`本次运行没有记录到活动。`,i={range:`同类运行耗时 {{low}}–{{high}} 分钟(最近 {{count}} 次)`,elapsed:`已运行 {{minutes}} 分钟`},a=`根据运行期间真实发生的事情生成。`,o={start:`第 {{step}} 步:{{title}}`,startRetry:`第 {{step}} 步:{{title}} — 第 {{iteration}} 次尝试`,done:`第 {{step}} 步完成`,doneTimed:`第 {{step}} 步用 {{seconds}} 秒完成`,failed:`第 {{step}} 步未成功`,interrupted:`第 {{step}} 步在完成前被中断`,doneTimedMin:`第 {{step}} 步用 {{minutes}} 分钟完成`,role:{work:`进行修改`,verify:`验证是否可用`,decide:`判断是否完成`,fix:`修复失败的部分`},stalled:`第 {{step}} 步停滞:{{idleMinutes}} 分钟无活动,应用已将其停止`,startResume:`第 {{step}} 步:{{title}}——停滞后恢复`,providerLimit:`步骤 {{step}} 已停止 — 已达到提供商用量限额`,recovered:`恢复后步骤 {{step}} 已完成`},s={another:`还没完成 — 再来一轮`,satisfied:`目标达成 — 继续`},c={reading:`正在读取 {{target}}`,readingBare:`正在读取代码`,editing:`正在修改 {{target}}`,editingBare:`正在修改代码`,writing:`正在编写 {{target}}`,writingBare:`正在编写新代码`,searching:`正在搜索 {{target}}`,searchingBare:`正在搜索代码`,running:`正在运行 {{target}}`,runningBare:`正在运行命令`,working:`正在处理 {{target}}`,workingBare:`正在工作`,exploring:`正在查看代码`,exploringBare:`正在查看代码`,testing:`正在运行测试`,building:`正在构建项目`,typechecking:`正在检查类型`,linting:`正在检查代码风格`,installing:`正在安装依赖`,savingWork:`正在保存工作`,checkingSpec:`正在检查规格`,bookkeeping:`正在记录自己的笔记`,bookkeepingBare:`正在记录自己的笔记`,writingSpec:`正在编写计划`,writingSpecBare:`正在编写计划`,writingFiles:`正在写入 {{files}} 个文件({{names}}…)`,readingFiles:`正在读取 {{files}} 个文件({{names}}…)`,editingFiles:`正在修改 {{files}} 个文件({{names}}…)`,delegating:`移交给 {{target}}`,delegatingBare:`移交给专家`,phase:{architect:`设计变更(架构师)`,developer:`实现变更(开发者)`,verify:`运行验证命令`,reviewer:`审阅实现(审阅者)`,archive:`归档已审阅的变更`,stopped:`运行引擎已停止:{{target}}`,corrections:`将修正返回给开发者`,resumed:`正在恢复已保存的执行`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
1
+ var e=`过程`,t=`日志`,n=`还没有发生任何事。`,r=`本次运行没有记录到活动。`,i={range:`同类运行耗时 {{low}}–{{high}} 分钟(最近 {{count}} 次)`,elapsed:`已运行 {{minutes}} 分钟`},a=`根据运行期间真实发生的事情生成。`,o={start:`第 {{step}} 步:{{title}}`,startRetry:`第 {{step}} 步:{{title}} — 第 {{iteration}} 次尝试`,done:`第 {{step}} 步完成`,doneTimed:`第 {{step}} 步用 {{seconds}} 秒完成`,failed:`第 {{step}} 步未成功`,interrupted:`第 {{step}} 步在完成前被中断`,doneTimedMin:`第 {{step}} 步用 {{minutes}} 分钟完成`,role:{work:`进行修改`,verify:`验证是否可用`,decide:`判断是否完成`,fix:`修复失败的部分`},stalled:`第 {{step}} 步停滞:{{idleMinutes}} 分钟无活动,应用已将其停止`,startResume:`第 {{step}} 步:{{title}}——停滞后恢复`,providerLimit:`步骤 {{step}} 已停止 — 已达到提供商用量限额`,recovered:`恢复后步骤 {{step}} 已完成`},s={another:`还没完成 — 再来一轮`,satisfied:`目标达成 — 继续`},c={reading:`正在读取 {{target}}`,readingBare:`正在读取代码`,editing:`正在修改 {{target}}`,editingBare:`正在修改代码`,writing:`正在编写 {{target}}`,writingBare:`正在编写新代码`,searching:`正在搜索 {{target}}`,searchingBare:`正在搜索代码`,running:`正在运行 {{target}}`,runningBare:`正在运行命令`,working:`正在处理 {{target}}`,workingBare:`正在工作`,exploring:`正在查看代码`,exploringBare:`正在查看代码`,testing:`正在运行测试`,building:`正在构建项目`,typechecking:`正在检查类型`,linting:`正在检查代码风格`,installing:`正在安装依赖`,savingWork:`正在保存工作`,checkingSpec:`正在检查规格`,bookkeeping:`正在记录自己的笔记`,bookkeepingBare:`正在记录自己的笔记`,writingSpec:`正在编写计划`,writingSpecBare:`正在编写计划`,writingFiles:`正在写入 {{files}} 个文件({{names}}…)`,readingFiles:`正在读取 {{files}} 个文件({{names}}…)`,editingFiles:`正在修改 {{files}} 个文件({{names}}…)`,delegating:`移交给 {{target}}`,delegatingBare:`移交给专家`,phase:{architect:`设计变更(架构师)`,developer:`实现变更(开发者)`,verify:`运行验证命令`,fixer:`修复验证或审查报告的问题(修复者)`,reviewer:`审阅实现(审阅者)`,archive:`归档已审阅的变更`,stopped:`运行引擎已停止:{{target}}`,corrections:`继续处理剩余任务(开发者)`,resumed:`正在恢复已保存的执行`},check:{started:`正在检查 {{target}}`,passed:`检查通过:{{target}}`,failed:`检查失败:{{target}}`,reused:`复用已验证的结果:{{target}}`,invalidated:`先前结果已失效:{{target}}`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
@@ -1 +1 @@
1
- import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({activity:()=>l,aiNote:()=>o,decision:()=>c,default:()=>d,emptyLive:()=>r,emptySettled:()=>i,modeLog:()=>`Log`,modeNarrated:()=>n,repeats:()=>u,step:()=>s,waiting:()=>a}),n=`Story`,r=`Nothing has happened yet.`,i=`No activity was recorded for this run.`,a={range:`Runs like this have taken {{low}}–{{high}} min (last {{count}})`,elapsed:`Running for {{minutes}} min`},o=`Built from what actually happened during the run.`,s={start:`Step {{step}}: {{title}}`,startRetry:`Step {{step}}: {{title}} — attempt {{iteration}}`,done:`Finished step {{step}}`,doneTimed:`Finished step {{step}} in {{seconds}}s`,failed:`Step {{step}} did not succeed`,interrupted:`Step {{step}} was interrupted before it finished`,doneTimedMin:`Finished step {{step}} in {{minutes}} min`,role:{work:`making the changes`,verify:`checking it works`,decide:`deciding whether it's done`,fix:`fixing what failed`},stalled:`Step {{step}} stalled — no activity for {{idleMinutes}} min, so the app stopped it`,startResume:`Step {{step}}: {{title}} — resuming after a stall`,providerLimit:`Step {{step}} stopped — the provider's usage limit was reached`,recovered:`Step {{step}} completed after resuming`},c={another:`Not done yet — going round again`,satisfied:`Goal met — moving on`},l={reading:`Reading {{target}}`,readingBare:`Reading the code`,editing:`Changing {{target}}`,editingBare:`Changing the code`,writing:`Writing {{target}}`,writingBare:`Writing new code`,searching:`Searching for {{target}}`,searchingBare:`Searching the code`,running:`Running {{target}}`,runningBare:`Running a command`,working:`Working on {{target}}`,workingBare:`Working`,exploring:`Looking through the code`,exploringBare:`Looking through the code`,testing:`Running the tests`,building:`Building the project`,typechecking:`Checking the types`,linting:`Checking code style`,installing:`Installing dependencies`,savingWork:`Saving the work`,checkingSpec:`Checking the spec`,bookkeeping:`Recording its own notes`,bookkeepingBare:`Recording its own notes`,writingSpec:`Writing the plan`,writingSpecBare:`Writing the plan`,writingFiles:`Writing {{files}} files ({{names}}…)`,readingFiles:`Reading {{files}} files ({{names}}…)`,editingFiles:`Changing {{files}} files ({{names}}…)`,delegating:`Handing off to the {{target}}`,delegatingBare:`Handing off to a specialist`,phase:{architect:`Designing the change (architect)`,developer:`Implementing the change (developer)`,verify:`Running the verification commands`,reviewer:`Reviewing the implementation (reviewer)`,archive:`Archiving the reviewed change`,stopped:`The runtime stopped: {{target}}`,corrections:`Sending corrections back to the developer`,resumed:`Resuming the saved execution`}},u=`×{{count}}`,d={modeNarrated:n,modeLog:`Log`,emptyLive:r,emptySettled:i,waiting:a,aiNote:o,step:s,decision:c,activity:l,repeats:u};export{t};
1
+ import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({activity:()=>l,aiNote:()=>o,decision:()=>c,default:()=>d,emptyLive:()=>r,emptySettled:()=>i,modeLog:()=>`Log`,modeNarrated:()=>n,repeats:()=>u,step:()=>s,waiting:()=>a}),n=`Story`,r=`Nothing has happened yet.`,i=`No activity was recorded for this run.`,a={range:`Runs like this have taken {{low}}–{{high}} min (last {{count}})`,elapsed:`Running for {{minutes}} min`},o=`Built from what actually happened during the run.`,s={start:`Step {{step}}: {{title}}`,startRetry:`Step {{step}}: {{title}} — attempt {{iteration}}`,done:`Finished step {{step}}`,doneTimed:`Finished step {{step}} in {{seconds}}s`,failed:`Step {{step}} did not succeed`,interrupted:`Step {{step}} was interrupted before it finished`,doneTimedMin:`Finished step {{step}} in {{minutes}} min`,role:{work:`making the changes`,verify:`checking it works`,decide:`deciding whether it's done`,fix:`fixing what failed`},stalled:`Step {{step}} stalled — no activity for {{idleMinutes}} min, so the app stopped it`,startResume:`Step {{step}}: {{title}} — resuming after a stall`,providerLimit:`Step {{step}} stopped — the provider's usage limit was reached`,recovered:`Step {{step}} completed after resuming`},c={another:`Not done yet — going round again`,satisfied:`Goal met — moving on`},l={reading:`Reading {{target}}`,readingBare:`Reading the code`,editing:`Changing {{target}}`,editingBare:`Changing the code`,writing:`Writing {{target}}`,writingBare:`Writing new code`,searching:`Searching for {{target}}`,searchingBare:`Searching the code`,running:`Running {{target}}`,runningBare:`Running a command`,working:`Working on {{target}}`,workingBare:`Working`,exploring:`Looking through the code`,exploringBare:`Looking through the code`,testing:`Running the tests`,building:`Building the project`,typechecking:`Checking the types`,linting:`Checking code style`,installing:`Installing dependencies`,savingWork:`Saving the work`,checkingSpec:`Checking the spec`,bookkeeping:`Recording its own notes`,bookkeepingBare:`Recording its own notes`,writingSpec:`Writing the plan`,writingSpecBare:`Writing the plan`,writingFiles:`Writing {{files}} files ({{names}}…)`,readingFiles:`Reading {{files}} files ({{names}}…)`,editingFiles:`Changing {{files}} files ({{names}}…)`,delegating:`Handing off to the {{target}}`,delegatingBare:`Handing off to a specialist`,phase:{architect:`Designing the change (architect)`,developer:`Implementing the change (developer)`,verify:`Running the verification commands`,fixer:`Fixing what verification or review reported (fixer)`,reviewer:`Reviewing the implementation (reviewer)`,archive:`Archiving the reviewed change`,stopped:`The runtime stopped: {{target}}`,corrections:`Continuing the remaining tasks (developer)`,resumed:`Resuming the saved execution`},check:{started:`Checking {{target}}`,passed:`Check passed: {{target}}`,failed:`Check failed: {{target}}`,reused:`Reusing verified result: {{target}}`,invalidated:`Previous result invalidated: {{target}}`}},u=`×{{count}}`,d={modeNarrated:n,modeLog:`Log`,emptyLive:r,emptySettled:i,waiting:a,aiNote:o,step:s,decision:c,activity:l,repeats:u};export{t};
@@ -1 +1 @@
1
- var e=`Relato`,t=`Registro`,n=`Todavía no ha pasado nada.`,r=`No se registró actividad en esta ejecución.`,i={range:`Ejecuciones como esta han tardado {{low}}–{{high}} min (últimas {{count}})`,elapsed:`Lleva {{minutes}} min`},a=`Construido a partir de lo que realmente ocurrió durante la ejecución.`,o={start:`Paso {{step}}: {{title}}`,startRetry:`Paso {{step}}: {{title}} — intento {{iteration}}`,done:`Paso {{step}} terminado`,doneTimed:`Paso {{step}} terminado en {{seconds}} s`,failed:`El paso {{step}} no salió bien`,interrupted:`El paso {{step}} se interrumpió antes de terminar`,doneTimedMin:`Paso {{step}} terminado en {{minutes}} min`,role:{work:`haciendo los cambios`,verify:`comprobando que funciona`,decide:`decidiendo si está terminado`,fix:`arreglando lo que falló`},stalled:`El paso {{step}} se atascó: sin actividad durante {{idleMinutes}} min, así que la app lo detuvo`,startResume:`Paso {{step}}: {{title}} — reanudando tras un atasco`,providerLimit:`Paso {{step}} detenido — se alcanzó el límite de uso del proveedor`,recovered:`Paso {{step}} completado tras reanudar`},s={another:`Aún no está — otra vuelta`,satisfied:`Objetivo cumplido — seguimos`},c={reading:`Leyendo {{target}}`,readingBare:`Leyendo el código`,editing:`Cambiando {{target}}`,editingBare:`Cambiando el código`,writing:`Escribiendo {{target}}`,writingBare:`Escribiendo código nuevo`,searching:`Buscando {{target}}`,searchingBare:`Buscando en el código`,running:`Ejecutando {{target}}`,runningBare:`Ejecutando un comando`,working:`Trabajando en {{target}}`,workingBare:`Trabajando`,exploring:`Revisando el código`,exploringBare:`Revisando el código`,testing:`Ejecutando los tests`,building:`Compilando el proyecto`,typechecking:`Comprobando los tipos`,linting:`Revisando el estilo del código`,installing:`Instalando dependencias`,savingWork:`Guardando el trabajo`,checkingSpec:`Comprobando la spec`,bookkeeping:`Anotando sus propias notas`,bookkeepingBare:`Anotando sus propias notas`,writingSpec:`Escribiendo el plan`,writingSpecBare:`Escribiendo el plan`,writingFiles:`Escribiendo {{files}} archivos ({{names}}…)`,readingFiles:`Leyendo {{files}} archivos ({{names}}…)`,editingFiles:`Cambiando {{files}} archivos ({{names}}…)`,delegating:`Pasando el trabajo al {{target}}`,delegatingBare:`Pasando el trabajo a un especialista`,phase:{architect:`Diseñando el cambio (arquitecto)`,developer:`Implementando el cambio (desarrollador)`,verify:`Ejecutando los comandos de verificación`,reviewer:`Revisando la implementación (revisor)`,archive:`Archivando el cambio revisado`,stopped:`El motor se detuvo: {{target}}`,corrections:`Devolviendo correcciones al desarrollador`,resumed:`Reanudando la ejecución guardada`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
1
+ var e=`Relato`,t=`Registro`,n=`Todavía no ha pasado nada.`,r=`No se registró actividad en esta ejecución.`,i={range:`Ejecuciones como esta han tardado {{low}}–{{high}} min (últimas {{count}})`,elapsed:`Lleva {{minutes}} min`},a=`Construido a partir de lo que realmente ocurrió durante la ejecución.`,o={start:`Paso {{step}}: {{title}}`,startRetry:`Paso {{step}}: {{title}} — intento {{iteration}}`,done:`Paso {{step}} terminado`,doneTimed:`Paso {{step}} terminado en {{seconds}} s`,failed:`El paso {{step}} no salió bien`,interrupted:`El paso {{step}} se interrumpió antes de terminar`,doneTimedMin:`Paso {{step}} terminado en {{minutes}} min`,role:{work:`haciendo los cambios`,verify:`comprobando que funciona`,decide:`decidiendo si está terminado`,fix:`arreglando lo que falló`},stalled:`El paso {{step}} se atascó: sin actividad durante {{idleMinutes}} min, así que la app lo detuvo`,startResume:`Paso {{step}}: {{title}} — reanudando tras un atasco`,providerLimit:`Paso {{step}} detenido — se alcanzó el límite de uso del proveedor`,recovered:`Paso {{step}} completado tras reanudar`},s={another:`Aún no está — otra vuelta`,satisfied:`Objetivo cumplido — seguimos`},c={reading:`Leyendo {{target}}`,readingBare:`Leyendo el código`,editing:`Cambiando {{target}}`,editingBare:`Cambiando el código`,writing:`Escribiendo {{target}}`,writingBare:`Escribiendo código nuevo`,searching:`Buscando {{target}}`,searchingBare:`Buscando en el código`,running:`Ejecutando {{target}}`,runningBare:`Ejecutando un comando`,working:`Trabajando en {{target}}`,workingBare:`Trabajando`,exploring:`Revisando el código`,exploringBare:`Revisando el código`,testing:`Ejecutando los tests`,building:`Compilando el proyecto`,typechecking:`Comprobando los tipos`,linting:`Revisando el estilo del código`,installing:`Instalando dependencias`,savingWork:`Guardando el trabajo`,checkingSpec:`Comprobando la spec`,bookkeeping:`Anotando sus propias notas`,bookkeepingBare:`Anotando sus propias notas`,writingSpec:`Escribiendo el plan`,writingSpecBare:`Escribiendo el plan`,writingFiles:`Escribiendo {{files}} archivos ({{names}}…)`,readingFiles:`Leyendo {{files}} archivos ({{names}}…)`,editingFiles:`Cambiando {{files}} archivos ({{names}}…)`,delegating:`Pasando el trabajo al {{target}}`,delegatingBare:`Pasando el trabajo a un especialista`,phase:{architect:`Diseñando el cambio (arquitecto)`,developer:`Implementando el cambio (desarrollador)`,verify:`Ejecutando los comandos de verificación`,fixer:`Corrigiendo lo que reportó la verificación o la revisión (corrector)`,reviewer:`Revisando la implementación (revisor)`,archive:`Archivando el cambio revisado`,stopped:`El motor se detuvo: {{target}}`,corrections:`Continuando las tareas pendientes (desarrollador)`,resumed:`Reanudando la ejecución guardada`},check:{started:`Comprobando {{target}}`,passed:`Comprobación superada: {{target}}`,failed:`Comprobación fallida: {{target}}`,reused:`Reutilizando el resultado verificado: {{target}}`,invalidated:`Resultado anterior invalidado: {{target}}`}},l=`×{{count}}`,u={modeNarrated:e,modeLog:t,emptyLive:n,emptySettled:r,waiting:i,aiNote:a,step:o,decision:s,activity:c,repeats:l};export{c as activity,a as aiNote,s as decision,u as default,n as emptyLive,r as emptySettled,t as modeLog,e as modeNarrated,l as repeats,o as step,i as waiting};
@@ -0,0 +1 @@
1
+ var e=`Retour au tableau`,t=`Toujours en cours…`,n=`Cela a déjà été résolu.`,r=`Cette livraison nécessite une décision technique. Utilisez les contrôles détaillés du tableau.`,i=`Ouvrir la pull request #{{number}}`,a=`Aucun résumé n'a été enregistré.`,o={success:`Votre changement est prêt à être relu`,successMany:`Les {{count}} changements sont prêts à être relus`,partial:`{{succeeded}} changements sur {{total}} sont prêts`,noChanges:`Rien n'avait besoin d'être changé`,failed:`Cela n'a pas pu être terminé`,failedPartial:`Seule une partie a pu être terminée`},s={pill:`Confiance du relecteur IA {{overall}}/100`,unavailable:`Pas de score du relecteur`,tooltip:`Le score que le relecteur IA s'attribue — ce n'est pas une vérification indépendante.`},c={thisBuild:`Ce travail a coûté {{amount}}`,allVersions:`Toutes les versions cumulées : {{amount}}`},l={"create-pr":`Accepter et ouvrir une pull request`,publish:`Accepter et envoyer en relecture`,"merge-local":`Accepter dans mon projet`,"mark-done":`Accepter — rien à changer`,generic:`Accepter`,irreversibleWarning:`Cela écrit les changements directement dans votre projet, sur votre ordinateur. Il n'y a pas de copie de relecture et c'est irréversible.`,irreversibleConfirm:`Oui, écrire dans mon projet`},u={label:`Demander des changements`,comingSoon:`Bientôt : décrivez le changement en une phrase.`,prompt:`Que voulez-vous changer ?`,placeholder:`ex. mettre le bouton de connexion en bleu`,submit:`Envoyer le changement`,hint:`Reprend là où le travail s'est arrêté — sans repartir de zéro.`},d={label:`Jeter ceci`,stackedNote:`Les rails suivants de ce jalon ont été construits sur cette livraison. L'abandonner met la chaîne du jalon en pause ; les rails suivants conservent leur travail.`},f={title:`À regarder avant d'accepter`},p={whatYouAsked:`Ce que vous avez demandé`,whatIDid:`Ce qui a été fait`,howItWasChecked:`Comment cela a été vérifié`,fullSolution:`Lire la solution complète`},m={line:`{{files}} fichiers modifiés · +{{added}} / −{{removed}} lignes`,batchNotSplittable:`Les modifications de fichiers concernent toute la livraison, pas chaque demande.`},h={"app-verified":{title:`Mesuré par Specrails`,caveat:`Faits tirés des modifications réelles.`},"ai-reported":{title:`Rapporté par l'IA`,caveat:`Les mots de l'IA. Specrails n'a pas exécuté ces vérifications.`},"reviewer-score":{title:`Auto-évaluation du relecteur IA`,caveat:`L'IA note son propre travail — utile, mais pas une relecture indépendante.`}},g={filesChanged:`{{files}} fichiers modifiés (+{{added}} / −{{removed}} lignes)`,testFilesChanged:`{{count}} fichiers de test modifiés`,noTestFilesChanged:`Aucun fichier de test modifié.`,commitsRecorded:`Le travail a été enregistré sur {{branches}} branche(s)`,verificationPassed:`L'IA a rapporté que ses vérifications ont réussi ({{count}})`,verificationFailed:`L'IA a rapporté que ses vérifications ont ÉCHOUÉ ({{count}})`,noVerificationReported:`L'IA n'a rapporté aucune vérification.`,verifyOutput:`Sortie de vérification de l'IA :`,reviewerScore:`Score global {{overall}}/100`,reviewerAspect:`{{aspect}} : {{score}}/100`,reviewerScoreUnavailable:`Aucun score de relecteur produit.`,evidenceUnavailable:`preuves indisponibles`},_={humanReviewRecommended:`Le relecteur IA a noté {{overall}}/100 et recommande une relecture humaine.`,lowConfidence:`Le relecteur IA n'a noté que {{overall}}/100.`,reviewerFlag:`Le relecteur a signalé :`,noTestsForChangedCode:`{{files}} fichiers de code modifiés sans changement de test.`},v={notFound:`Cette relecture est introuvable.`,loadFailed:`La relecture n'a pas pu être chargée.`,alreadyResolved:`Quelqu'un a déjà répondu.`,actionFailed:`Cette action n'a pas abouti.`,revisionStale:`Cela vient d'être résolu ailleurs — rechargez pour voir l'état.`,revisionFailed:`Le changement n'a pas pu démarrer. Votre texte a été conservé.`},y={title:`Versions précédentes ({{count}})`,label:`Version {{version}}`,current:`vous consultez celle-ci`,originalBuild:`Le travail initial.`},b={title:`Cela dépasse peut-être votre demande initiale`,advisory:`Simple suggestion — vous pouvez continuer à demander des changements.`,costShare:`{{revisions}} changement(s) ont coûté {{revisionCost}} — {{share}} % des {{originalCost}} du travail initial.`,outOfScopeChurn:`{{files}} des {{total}} fichiers modifiés ne faisaient pas partie de la demande initiale.`,revisionCount:`Vous avez demandé {{revisions}} séries de changements. Réécrire la demande sera peut-être plus rapide.`},x={backToBoard:e,stillWorking:t,alreadyResolved:n,fineControlOnly:r,openPr:i,noSolutionRecorded:a,headline:o,confidence:s,cost:c,accept:l,requestChanges:u,discard:d,watchOut:f,sections:p,churn:m,tier:h,proof:g,watch:_,error:v,versions:y,drift:b};export{l as accept,n as alreadyResolved,e as backToBoard,m as churn,s as confidence,c as cost,x as default,d as discard,b as drift,v as error,r as fineControlOnly,o as headline,a as noSolutionRecorded,i as openPr,g as proof,u as requestChanges,p as sections,t as stillWorking,h as tier,y as versions,_ as watch,f as watchOut};
@@ -0,0 +1 @@
1
+ var e=`Zurück zum Board`,t=`Läuft noch…`,n=`Das wurde bereits entschieden.`,r=`Diese Lieferung braucht eine technische Entscheidung. Nutze die Detailsteuerung im Board.`,i=`Pull Request #{{number}} öffnen`,a=`Keine Zusammenfassung erfasst.`,o={success:`Deine Änderung ist bereit zur Prüfung`,successMany:`Alle {{count}} Änderungen sind bereit zur Prüfung`,partial:`{{succeeded}} von {{total}} Änderungen sind fertig`,noChanges:`Es musste nichts geändert werden`,failed:`Das konnte nicht abgeschlossen werden`,failedPartial:`Nur ein Teil konnte abgeschlossen werden`},s={pill:`Sicherheit des KI-Reviewers {{overall}}/100`,unavailable:`Keine Reviewer-Bewertung`,tooltip:`Die Bewertung, die sich der KI-Reviewer selbst gibt — keine unabhängige Prüfung.`},c={thisBuild:`Diese Arbeit kostete {{amount}}`,allVersions:`Alle Versionen zusammen: {{amount}}`},l={"create-pr":`Annehmen und Pull Request öffnen`,publish:`Annehmen und zur Prüfung senden`,"merge-local":`In mein Projekt übernehmen`,"mark-done":`Annehmen — nichts zu ändern`,generic:`Annehmen`,irreversibleWarning:`Damit werden die Änderungen direkt in dein Projekt auf deinem Rechner geschrieben. Es gibt keine separate Prüfkopie und es ist nicht rückgängig zu machen.`,irreversibleConfirm:`Ja, in mein Projekt schreiben`},u={label:`Änderungen erbitten`,comingSoon:`Kommt als Nächstes: Änderung in einem Satz beschreiben.`,prompt:`Was soll geändert werden?`,placeholder:`z. B. den Login-Button blau machen`,submit:`Änderung senden`,hint:`Setzt dort an, wo die Arbeit aufgehört hat — kein Neuanfang.`},d={label:`Verwerfen`,stackedNote:`Spätere Rails dieses Meilensteins bauen auf dieser Lieferung auf. Sie zu verwerfen pausiert die Meilenstein-Kette; die späteren Rails behalten ihre Arbeit.`},f={title:`Vor dem Annehmen ansehen`},p={whatYouAsked:`Was du wolltest`,whatIDid:`Was getan wurde`,howItWasChecked:`Wie es geprüft wurde`,fullSolution:`Die vollständige Lösung lesen`},m={line:`{{files}} Dateien geändert · +{{added}} / −{{removed}} Zeilen`,batchNotSplittable:`Dateiänderungen gelten für die gesamte Lieferung, nicht pro Anfrage.`},h={"app-verified":{title:`Von Specrails gemessen`,caveat:`Fakten aus den tatsächlichen Änderungen.`},"ai-reported":{title:`Von der KI berichtet`,caveat:`Worte der KI selbst. Specrails hat diese Prüfungen nicht ausgeführt.`},"reviewer-score":{title:`Selbsteinschätzung des KI-Reviewers`,caveat:`Die KI bewertet ihre eigene Arbeit — nützlich, aber keine unabhängige Prüfung.`}},g={filesChanged:`{{files}} Dateien geändert (+{{added}} / −{{removed}} Zeilen)`,testFilesChanged:`{{count}} Testdateien geändert`,noTestFilesChanged:`Keine Testdateien geändert.`,commitsRecorded:`Arbeit wurde auf {{branches}} Branch(es) festgehalten`,verificationPassed:`Die KI berichtete, ihre Prüfungen seien bestanden ({{count}})`,verificationFailed:`Die KI berichtete, ihre Prüfungen seien FEHLGESCHLAGEN ({{count}})`,noVerificationReported:`Die KI berichtete keine Verifizierung.`,verifyOutput:`Verifizierungsausgabe der KI:`,reviewerScore:`Gesamtbewertung {{overall}}/100`,reviewerAspect:`{{aspect}}: {{score}}/100`,reviewerScoreUnavailable:`Keine Reviewer-Bewertung erzeugt.`,evidenceUnavailable:`Belege nicht verfügbar`},_={humanReviewRecommended:`Der KI-Reviewer gab {{overall}}/100 und empfiehlt eine menschliche Prüfung.`,lowConfidence:`Der KI-Reviewer gab nur {{overall}}/100.`,reviewerFlag:`Der Reviewer merkte an:`,noTestsForChangedCode:`{{files}} Code-Dateien geändert, ohne Teständerungen.`},v={notFound:`Diese Prüfung wurde nicht gefunden.`,loadFailed:`Die Prüfung konnte nicht geladen werden.`,alreadyResolved:`Jemand hat das schon beantwortet.`,actionFailed:`Diese Aktion ist nicht durchgegangen.`,revisionStale:`Das wurde gerade anderswo entschieden — neu laden, um den Stand zu sehen.`,revisionFailed:`Die Änderung konnte nicht gestartet werden. Dein Text wurde behalten.`},y={title:`Frühere Versionen ({{count}})`,label:`Version {{version}}`,current:`diese siehst du gerade`,originalBuild:`Die ursprüngliche Arbeit.`},b={title:`Das geht möglicherweise über die ursprüngliche Anfrage hinaus`,advisory:`Nur ein Hinweis — du kannst weiter Änderungen erbitten.`,costShare:`{{revisions}} Änderung(en) kosteten {{revisionCost}} — {{share}}% der {{originalCost}} der ursprünglichen Arbeit.`,outOfScopeChurn:`{{files}} von {{total}} geänderten Dateien gehörten nie zur ursprünglichen Anfrage.`,revisionCount:`Du hast {{revisions}} Änderungsrunden erbeten. Die Anfrage neu zu formulieren geht vielleicht schneller.`},x={backToBoard:e,stillWorking:t,alreadyResolved:n,fineControlOnly:r,openPr:i,noSolutionRecorded:a,headline:o,confidence:s,cost:c,accept:l,requestChanges:u,discard:d,watchOut:f,sections:p,churn:m,tier:h,proof:g,watch:_,error:v,versions:y,drift:b};export{l as accept,n as alreadyResolved,e as backToBoard,m as churn,s as confidence,c as cost,x as default,d as discard,b as drift,v as error,r as fineControlOnly,o as headline,a as noSolutionRecorded,i as openPr,g as proof,u as requestChanges,p as sections,t as stillWorking,h as tier,y as versions,_ as watch,f as watchOut};
@@ -0,0 +1 @@
1
+ var e=`返回面板`,t=`仍在处理…`,n=`此项已处理完毕。`,r=`这次交付需要技术决策。请使用面板上的详细控件。`,i=`打开 pull request #{{number}}`,a=`未记录摘要。`,o={success:`你的更改已可供审阅`,successMany:`全部 {{count}} 项更改已可供审阅`,partial:`{{total}} 项更改中有 {{succeeded}} 项已就绪`,noChanges:`无需改动`,failed:`未能完成`,failedPartial:`仅完成了一部分`},s={pill:`AI 审阅者信心 {{overall}}/100`,unavailable:`没有审阅者评分`,tooltip:`AI 审阅者给自己的评分 — 不是独立检查。`},c={thisBuild:`本次花费 {{amount}}`,allVersions:`所有版本合计:{{amount}}`},l={"create-pr":`接受并创建 pull request`,publish:`接受并送交审阅`,"merge-local":`接受到我的项目`,"mark-done":`接受 — 无需改动`,generic:`接受`,irreversibleWarning:`这会把更改直接写入你电脑上的项目。没有单独的审阅副本,且无法撤销。`,irreversibleConfirm:`是的,写入我的项目`},u={label:`要求修改`,comingSoon:`即将推出:用一句话描述要改什么。`,prompt:`你想改什么?`,placeholder:`例如:把登录按钮改成蓝色`,submit:`发送修改`,hint:`从现有成果继续 — 不会重新开始。`},d={label:`丢弃`,stackedNote:`此里程碑的后续轨道基于此交付构建。丢弃它会暂停里程碑链;后续轨道保留其工作。`},f={title:`接受前值得一看`},p={whatYouAsked:`你要求的`,whatIDid:`已完成的`,howItWasChecked:`如何检查的`,fullSolution:`阅读完整方案`},m={line:`{{files}} 个文件改动 · +{{added}} / −{{removed}} 行`,batchNotSplittable:`文件改动按整次交付统计,不按单个请求。`},h={"app-verified":{title:`由 Specrails 测量`,caveat:`取自实际改动的事实。`},"ai-reported":{title:`由 AI 报告`,caveat:`AI 自己的说法。Specrails 并未运行这些检查。`},"reviewer-score":{title:`AI 审阅者自评`,caveat:`AI 给自己的工作打分 — 有用,但不是独立审阅。`}},g={filesChanged:`{{files}} 个文件改动(+{{added}} / −{{removed}} 行)`,testFilesChanged:`改动了 {{count}} 个测试文件`,noTestFilesChanged:`没有改动测试文件。`,commitsRecorded:`工作已记录在 {{branches}} 个分支上`,verificationPassed:`AI 报告其检查通过({{count}})`,verificationFailed:`AI 报告其检查失败({{count}})`,noVerificationReported:`AI 未报告任何验证。`,verifyOutput:`AI 的验证输出:`,reviewerScore:`总分 {{overall}}/100`,reviewerAspect:`{{aspect}}:{{score}}/100`,reviewerScoreUnavailable:`未生成审阅者评分。`,evidenceUnavailable:`无证据`},_={humanReviewRecommended:`AI 审阅者给出 {{overall}}/100,建议由人来查看。`,lowConfidence:`AI 审阅者仅给出 {{overall}}/100。`,reviewerFlag:`审阅者标记:`,noTestsForChangedCode:`{{files}} 个代码文件有改动但测试无改动。`},v={notFound:`找不到此审阅。`,loadFailed:`无法加载审阅。`,alreadyResolved:`已有人回应过。`,actionFailed:`该操作未成功。`,revisionStale:`此项刚在别处被处理 — 请重新加载查看状态。`,revisionFailed:`无法开始修改。你的文字已保留。`},y={title:`早前的版本({{count}})`,label:`版本 {{version}}`,current:`你正在查看这个`,originalBuild:`最初的成果。`},b={title:`这可能已超出你最初的要求`,advisory:`只是建议 — 你仍可以继续要求修改。`,costShare:`{{revisions}} 次修改已花费 {{revisionCost}} — 是最初 {{originalCost}} 的 {{share}}%。`,outOfScopeChurn:`{{total}} 个改动文件中有 {{files}} 个不属于最初的要求。`,revisionCount:`你已经要求了 {{revisions}} 轮修改。重写需求可能更快。`},x={backToBoard:e,stillWorking:t,alreadyResolved:n,fineControlOnly:r,openPr:i,noSolutionRecorded:a,headline:o,confidence:s,cost:c,accept:l,requestChanges:u,discard:d,watchOut:f,sections:p,churn:m,tier:h,proof:g,watch:_,error:v,versions:y,drift:b};export{l as accept,n as alreadyResolved,e as backToBoard,m as churn,s as confidence,c as cost,x as default,d as discard,b as drift,v as error,r as fineControlOnly,o as headline,a as noSolutionRecorded,i as openPr,g as proof,u as requestChanges,p as sections,t as stillWorking,h as tier,y as versions,_ as watch,f as watchOut};
@@ -0,0 +1 @@
1
+ var e=`ボードに戻る`,t=`まだ作業中です…`,n=`これはすでに解決済みです。`,r=`この納品には技術的な判断が必要です。ボードの詳細操作を使ってください。`,i=`プルリクエスト #{{number}} を開く`,a=`要約は記録されていません。`,o={success:`変更のレビュー準備ができました`,successMany:`{{count}} 件すべての変更がレビュー可能です`,partial:`{{total}} 件のうち {{succeeded}} 件が完了`,noChanges:`変更は不要でした`,failed:`完了できませんでした`,failedPartial:`一部しか完了できませんでした`},s={pill:`AI レビュアーの確信度 {{overall}}/100`,unavailable:`レビュアースコアなし`,tooltip:`AI レビュアーが自分に付けたスコアです — 独立した検証ではありません。`},c={thisBuild:`この作業の費用 {{amount}}`,allVersions:`全バージョン合計:{{amount}}`},l={"create-pr":`承認してプルリクエストを作成`,publish:`承認してレビューに出す`,"merge-local":`自分のプロジェクトに取り込む`,"mark-done":`承認 — 変更なし`,generic:`承認`,irreversibleWarning:`変更をあなたのパソコンのプロジェクトへ直接書き込みます。別のレビュー用コピーはなく、取り消せません。`,irreversibleConfirm:`はい、プロジェクトに書き込む`},u={label:`修正を依頼`,comingSoon:`近日公開:修正内容を一文で伝えられます。`,prompt:`何を変更しますか?`,placeholder:`例:ログインボタンを青にする`,submit:`変更を送る`,hint:`これまでの成果から続けます — やり直しではありません。`},d={label:`破棄する`,stackedNote:`このマイルストーンの後続レールはこの納品を基に構築されています。破棄するとマイルストーンのチェーンが一時停止します。後続レールの作業は保持されます。`},f={title:`承認する前に確認したい点`},p={whatYouAsked:`依頼した内容`,whatIDid:`行われた作業`,howItWasChecked:`確認の方法`,fullSolution:`解決策の全文を読む`},m={line:`{{files}} ファイル変更 · +{{added}} / −{{removed}} 行`,batchNotSplittable:`ファイル変更は納品全体の集計で、依頼ごとではありません。`},h={"app-verified":{title:`Specrails が計測`,caveat:`実際の変更から得た事実です。`},"ai-reported":{title:`AI の報告`,caveat:`AI 自身の言葉です。Specrails はこれらの検査を実行していません。`},"reviewer-score":{title:`AI レビュアーの自己評価`,caveat:`AI が自分の作業を採点したもの — 参考にはなりますが独立したレビューではありません。`}},g={filesChanged:`{{files}} ファイル変更(+{{added}} / −{{removed}} 行)`,testFilesChanged:`テストファイル {{count}} 件を変更`,noTestFilesChanged:`テストファイルの変更はありません。`,commitsRecorded:`作業は {{branches}} 本のブランチに記録されました`,verificationPassed:`AI は検査に合格したと報告しました({{count}})`,verificationFailed:`AI は検査が失敗したと報告しました({{count}})`,noVerificationReported:`AI は検証を報告しませんでした。`,verifyOutput:`AI の検証出力:`,reviewerScore:`総合スコア {{overall}}/100`,reviewerAspect:`{{aspect}}:{{score}}/100`,reviewerScoreUnavailable:`レビュアースコアは生成されませんでした。`,evidenceUnavailable:`証跡なし`},_={humanReviewRecommended:`AI レビュアーは {{overall}}/100 と評価し、人による確認を推奨しています。`,lowConfidence:`AI レビュアーの評価は {{overall}}/100 にとどまりました。`,reviewerFlag:`レビュアーの指摘:`,noTestsForChangedCode:`コード {{files}} ファイルが変更されましたが、テストの変更はありません。`},v={notFound:`このレビューは見つかりませんでした。`,loadFailed:`レビューを読み込めませんでした。`,alreadyResolved:`すでに誰かが回答しています。`,actionFailed:`その操作は完了しませんでした。`,revisionStale:`これは別の場所で解決済みです — 再読み込みして状態を確認してください。`,revisionFailed:`変更を開始できませんでした。入力した文章は保持されています。`},y={title:`以前のバージョン({{count}})`,label:`バージョン {{version}}`,current:`いま見ているもの`,originalBuild:`最初の成果。`},b={title:`当初の依頼から広がっているようです`,advisory:`あくまで提案です — 修正を続けて依頼できます。`,costShare:`{{revisions}} 件の変更で {{revisionCost}} かかりました — 当初 {{originalCost}} の {{share}}% です。`,outOfScopeChurn:`変更された {{total}} ファイルのうち {{files}} 件は当初の依頼に含まれていませんでした。`,revisionCount:`すでに {{revisions}} 回の修正を依頼しています。依頼を書き直したほうが早いかもしれません。`},x={backToBoard:e,stillWorking:t,alreadyResolved:n,fineControlOnly:r,openPr:i,noSolutionRecorded:a,headline:o,confidence:s,cost:c,accept:l,requestChanges:u,discard:d,watchOut:f,sections:p,churn:m,tier:h,proof:g,watch:_,error:v,versions:y,drift:b};export{l as accept,n as alreadyResolved,e as backToBoard,m as churn,s as confidence,c as cost,x as default,d as discard,b as drift,v as error,r as fineControlOnly,o as headline,a as noSolutionRecorded,i as openPr,g as proof,u as requestChanges,p as sections,t as stillWorking,h as tier,y as versions,_ as watch,f as watchOut};
@@ -0,0 +1 @@
1
+ var e=`Voltar ao painel`,t=`Ainda a trabalhar nisto…`,n=`Isto já foi resolvido.`,r=`Esta entrega precisa de uma decisão técnica. Use os controlos detalhados do painel.`,i=`Abrir pull request #{{number}}`,a=`Nenhum resumo foi registado.`,o={success:`A sua alteração está pronta para revisão`,successMany:`As {{count}} alterações estão prontas para revisão`,partial:`{{succeeded}} de {{total}} alterações estão prontas`,noChanges:`Não era preciso alterar nada`,failed:`Isto não pôde ser concluído`,failedPartial:`Só parte pôde ser concluída`},s={pill:`Confiança do revisor IA {{overall}}/100`,unavailable:`Sem pontuação do revisor`,tooltip:`A pontuação que o revisor IA dá a si mesmo — não é uma verificação independente.`},c={thisBuild:`Este trabalho custou {{amount}}`,allVersions:`Todas as versões juntas: {{amount}}`},l={"create-pr":`Aceitar e abrir um pull request`,publish:`Aceitar e enviar para revisão`,"merge-local":`Aceitar no meu projeto`,"mark-done":`Aceitar — nada a alterar`,generic:`Aceitar`,irreversibleWarning:`Isto escreve as alterações diretamente no seu projeto, no seu computador. Não há cópia de revisão separada e não pode ser desfeito.`,irreversibleConfirm:`Sim, escrever no meu projeto`},u={label:`Pedir alterações`,comingSoon:`Em breve: descreva a alteração numa frase.`,prompt:`O que quer alterar?`,placeholder:`p. ex. pôr o botão de login azul`,submit:`Enviar a alteração`,hint:`Continua de onde o trabalho ficou — não começa do zero.`},d={label:`Descartar isto`,stackedNote:`Os rails seguintes deste marco foram construídos sobre esta entrega. Descartá-la pausa a cadeia do marco; os rails seguintes mantêm o seu trabalho.`},f={title:`Vale a pena ver antes de aceitar`},p={whatYouAsked:`O que pediu`,whatIDid:`O que foi feito`,howItWasChecked:`Como foi verificado`,fullSolution:`Ler a solução completa`},m={line:`{{files}} ficheiros alterados · +{{added}} / −{{removed}} linhas`,batchNotSplittable:`As alterações de ficheiros referem-se a toda a entrega, não a cada pedido.`},h={"app-verified":{title:`Medido pelo Specrails`,caveat:`Factos retirados das alterações reais.`},"ai-reported":{title:`Reportado pela IA`,caveat:`Palavras da própria IA. O Specrails não executou estas verificações.`},"reviewer-score":{title:`Autoavaliação do revisor IA`,caveat:`A IA a avaliar o seu próprio trabalho — útil, mas não é uma revisão independente.`}},g={filesChanged:`{{files}} ficheiros alterados (+{{added}} / −{{removed}} linhas)`,testFilesChanged:`{{count}} ficheiros de teste alterados`,noTestFilesChanged:`Nenhum ficheiro de teste alterado.`,commitsRecorded:`O trabalho foi registado em {{branches}} ramo(s)`,verificationPassed:`A IA reportou que as suas verificações passaram ({{count}})`,verificationFailed:`A IA reportou que as suas verificações FALHARAM ({{count}})`,noVerificationReported:`A IA não reportou qualquer verificação.`,verifyOutput:`Saída de verificação da IA:`,reviewerScore:`Pontuação global {{overall}}/100`,reviewerAspect:`{{aspect}}: {{score}}/100`,reviewerScoreUnavailable:`Não foi gerada pontuação do revisor.`,evidenceUnavailable:`sem evidência`},_={humanReviewRecommended:`O revisor IA pontuou {{overall}}/100 e recomenda que uma pessoa veja.`,lowConfidence:`O revisor IA pontuou apenas {{overall}}/100.`,reviewerFlag:`O revisor sinalizou:`,noTestsForChangedCode:`{{files}} ficheiros de código alterados sem alterações em testes.`},v={notFound:`Esta revisão não foi encontrada.`,loadFailed:`Não foi possível carregar a revisão.`,alreadyResolved:`Alguém já respondeu a isto.`,actionFailed:`Essa ação não foi concluída.`,revisionStale:`Isto acabou de ser resolvido noutro lugar — recarregue para ver o estado.`,revisionFailed:`Não foi possível iniciar a alteração. O seu texto foi guardado.`},y={title:`Versões anteriores ({{count}})`,label:`Versão {{version}}`,current:`está a ver esta`,originalBuild:`O trabalho original.`},b={title:`Isto pode ter ultrapassado o que pediu`,advisory:`É apenas uma sugestão — pode continuar a pedir alterações.`,costShare:`{{revisions}} alteração(ões) custaram {{revisionCost}} — {{share}}% dos {{originalCost}} do trabalho original.`,outOfScopeChurn:`{{files}} de {{total}} ficheiros alterados não faziam parte do pedido original.`,revisionCount:`Já pediu {{revisions}} rondas de alterações. Reescrever o pedido pode ser mais rápido.`},x={backToBoard:e,stillWorking:t,alreadyResolved:n,fineControlOnly:r,openPr:i,noSolutionRecorded:a,headline:o,confidence:s,cost:c,accept:l,requestChanges:u,discard:d,watchOut:f,sections:p,churn:m,tier:h,proof:g,watch:_,error:v,versions:y,drift:b};export{l as accept,n as alreadyResolved,e as backToBoard,m as churn,s as confidence,c as cost,x as default,d as discard,b as drift,v as error,r as fineControlOnly,o as headline,a as noSolutionRecorded,i as openPr,g as proof,u as requestChanges,p as sections,t as stillWorking,h as tier,y as versions,_ as watch,f as watchOut};
@@ -0,0 +1 @@
1
+ var e=`Torna alla bacheca`,t=`Ancora al lavoro…`,n=`È già stato risolto.`,r=`Questa consegna richiede una decisione tecnica. Usa i controlli dettagliati nella bacheca.`,i=`Apri la pull request #{{number}}`,a=`Nessun riepilogo registrato.`,o={success:`La tua modifica è pronta per la revisione`,successMany:`Tutte le {{count}} modifiche sono pronte per la revisione`,partial:`{{succeeded}} modifiche su {{total}} sono pronte`,noChanges:`Non c'era nulla da cambiare`,failed:`Non è stato possibile completarlo`,failedPartial:`È stato completato solo in parte`},s={pill:`Fiducia del revisore IA {{overall}}/100`,unavailable:`Nessun punteggio del revisore`,tooltip:`Il punteggio che il revisore IA assegna a sé stesso — non è un controllo indipendente.`},c={thisBuild:`Questo lavoro è costato {{amount}}`,allVersions:`Tutte le versioni insieme: {{amount}}`},l={"create-pr":`Accetta e apri una pull request`,publish:`Accetta e invia in revisione`,"merge-local":`Accetta nel mio progetto`,"mark-done":`Accetta — nulla da cambiare`,generic:`Accetta`,irreversibleWarning:`Questo scrive le modifiche direttamente nel tuo progetto, sul tuo computer. Non esiste una copia di revisione separata e non è annullabile.`,irreversibleConfirm:`Sì, scrivi nel mio progetto`},u={label:`Chiedi modifiche`,comingSoon:`Prossimamente: descrivi la modifica in una frase.`,prompt:`Cosa vuoi cambiare?`,placeholder:`es. rendi blu il pulsante di accesso`,submit:`Invia la modifica`,hint:`Riprende da dove il lavoro si è fermato — non ricomincia.`},d={label:`Butta via`,stackedNote:`I rail successivi di questa milestone sono stati costruiti su questa consegna. Scartarla mette in pausa la catena della milestone; i rail successivi conservano il loro lavoro.`},f={title:`Da guardare prima di accettare`},p={whatYouAsked:`Cosa hai chiesto`,whatIDid:`Cosa è stato fatto`,howItWasChecked:`Come è stato verificato`,fullSolution:`Leggi la soluzione completa`},m={line:`{{files}} file modificati · +{{added}} / −{{removed}} righe`,batchNotSplittable:`Le modifiche ai file riguardano tutta la consegna, non ogni richiesta.`},h={"app-verified":{title:`Misurato da Specrails`,caveat:`Fatti presi dalle modifiche reali.`},"ai-reported":{title:`Riferito dall'IA`,caveat:`Parole dell'IA stessa. Specrails non ha eseguito questi controlli.`},"reviewer-score":{title:`Autovalutazione del revisore IA`,caveat:`L'IA valuta il proprio lavoro — utile, ma non è una revisione indipendente.`}},g={filesChanged:`{{files}} file modificati (+{{added}} / −{{removed}} righe)`,testFilesChanged:`{{count}} file di test modificati`,noTestFilesChanged:`Nessun file di test modificato.`,commitsRecorded:`Il lavoro è stato registrato su {{branches}} ramo/i`,verificationPassed:`L'IA ha riferito che i suoi controlli sono passati ({{count}})`,verificationFailed:`L'IA ha riferito che i suoi controlli sono FALLITI ({{count}})`,noVerificationReported:`L'IA non ha riferito alcuna verifica.`,verifyOutput:`Output di verifica dell'IA:`,reviewerScore:`Punteggio complessivo {{overall}}/100`,reviewerAspect:`{{aspect}}: {{score}}/100`,reviewerScoreUnavailable:`Nessun punteggio del revisore prodotto.`,evidenceUnavailable:`prove non disponibili`},_={humanReviewRecommended:`Il revisore IA ha dato {{overall}}/100 e consiglia che una persona lo guardi.`,lowConfidence:`Il revisore IA ha dato solo {{overall}}/100.`,reviewerFlag:`Il revisore ha segnalato:`,noTestsForChangedCode:`{{files}} file di codice modificati senza modifiche ai test.`},v={notFound:`Questa revisione non è stata trovata.`,loadFailed:`Non è stato possibile caricare la revisione.`,alreadyResolved:`Qualcuno ha già risposto.`,actionFailed:`L'azione non è andata a buon fine.`,revisionStale:`È stato appena risolto altrove — ricarica per vedere lo stato.`,revisionFailed:`Non è stato possibile avviare la modifica. Il tuo testo è stato conservato.`},y={title:`Versioni precedenti ({{count}})`,label:`Versione {{version}}`,current:`stai guardando questa`,originalBuild:`Il lavoro originale.`},b={title:`Questo potrebbe essere andato oltre la richiesta iniziale`,advisory:`Solo un suggerimento — puoi continuare a chiedere modifiche.`,costShare:`{{revisions}} modifica/che sono costate {{revisionCost}} — il {{share}}% dei {{originalCost}} del lavoro originale.`,outOfScopeChurn:`{{files}} su {{total}} file modificati non facevano parte della richiesta iniziale.`,revisionCount:`Hai chiesto {{revisions}} giri di modifiche. Riscrivere la richiesta potrebbe essere più rapido.`},x={backToBoard:e,stillWorking:t,alreadyResolved:n,fineControlOnly:r,openPr:i,noSolutionRecorded:a,headline:o,confidence:s,cost:c,accept:l,requestChanges:u,discard:d,watchOut:f,sections:p,churn:m,tier:h,proof:g,watch:_,error:v,versions:y,drift:b};export{l as accept,n as alreadyResolved,e as backToBoard,m as churn,s as confidence,c as cost,x as default,d as discard,b as drift,v as error,r as fineControlOnly,o as headline,a as noSolutionRecorded,i as openPr,g as proof,u as requestChanges,p as sections,t as stillWorking,h as tier,y as versions,_ as watch,f as watchOut};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({accept:()=>d,alreadyResolved:()=>i,backToBoard:()=>n,churn:()=>g,confidence:()=>l,cost:()=>u,default:()=>C,discard:()=>p,drift:()=>S,error:()=>b,fineControlOnly:()=>a,headline:()=>c,noSolutionRecorded:()=>s,openPr:()=>o,proof:()=>v,requestChanges:()=>f,sections:()=>h,stillWorking:()=>r,tier:()=>_,versions:()=>x,watch:()=>y,watchOut:()=>m}),n=`Back to the board`,r=`Still working on this…`,i=`This has already been resolved.`,a=`This delivery needs a technical decision. Use the detailed controls on the board.`,o=`Open pull request #{{number}}`,s=`No summary was recorded.`,c={success:`Your change is ready for review`,successMany:`All {{count}} changes are ready for review`,partial:`{{succeeded}} of {{total}} changes are ready`,noChanges:`Nothing needed changing`,failed:`This could not be completed`,failedPartial:`Only part of this could be completed`},l={pill:`AI reviewer confidence {{overall}}/100`,unavailable:`No reviewer score`,tooltip:`The AI reviewer's own score for its work — not an independent check.`},u={thisBuild:`This build cost {{amount}}`,allVersions:`All versions together: {{amount}}`},d={"create-pr":`Accept and open a pull request`,publish:`Accept and send for review`,"merge-local":`Accept into my project`,"mark-done":`Accept — nothing to change`,generic:`Accept`,irreversibleWarning:`This writes the changes directly into your project on your computer. There is no separate review copy and this cannot be undone.`,irreversibleConfirm:`Yes, write it into my project`},f={label:`Ask for changes`,comingSoon:`Coming next: describe the change in one sentence.`,prompt:`What would you like changed?`,placeholder:`e.g. make the login button blue`,submit:`Send the change`,hint:`This picks up where the work left off — it does not start over.`},p={label:`Throw this away`,stackedNote:`Later rails of this milestone were built on this delivery. Discarding it pauses the milestone chain; the later rails keep their work.`},m={title:`Worth a look before you accept`},h={whatYouAsked:`What you asked for`,whatIDid:`What was done`,howItWasChecked:`How it was checked`,fullSolution:`Read the full solution`},g={line:`{{files}} files changed · +{{added}} / −{{removed}} lines`,batchNotSplittable:`File changes are reported for the whole delivery, not per request.`},_={"app-verified":{title:`Measured by Specrails`,caveat:`Facts taken from the actual changes.`},"ai-reported":{title:`Reported by the AI`,caveat:`The AI's own words. Specrails did not run these checks itself.`},"reviewer-score":{title:`AI reviewer's self-assessment`,caveat:`The AI grading its own work — useful, but not an independent review.`}},v={filesChanged:`{{files}} files changed (+{{added}} / −{{removed}} lines)`,testFilesChanged:`{{count}} test files were changed`,noTestFilesChanged:`No test files were changed.`,commitsRecorded:`Work was recorded on {{branches}} branch(es)`,verificationPassed:`The AI reported its checks passed ({{count}})`,verificationFailed:`The AI reported its checks FAILED ({{count}})`,noVerificationReported:`The AI did not report any verification.`,verifyOutput:`The AI's verification output:`,reviewerScore:`Overall score {{overall}}/100`,reviewerAspect:`{{aspect}}: {{score}}/100`,reviewerScoreUnavailable:`No reviewer score was produced.`,evidenceUnavailable:`evidence unavailable`},y={humanReviewRecommended:`The AI reviewer scored this {{overall}}/100 and recommends a person look at it.`,lowConfidence:`The AI reviewer scored this only {{overall}}/100.`,reviewerFlag:`The reviewer flagged:`,noTestsForChangedCode:`{{files}} code files changed with no test changes.`},b={notFound:`This review could not be found.`,loadFailed:`The review could not be loaded.`,alreadyResolved:`Someone already answered this.`,actionFailed:`That action did not go through.`,revisionStale:`This was just resolved elsewhere — reload to see where it stands.`,revisionFailed:`The change could not be started. Your text was kept.`},x={title:`Earlier versions ({{count}})`,label:`Version {{version}}`,current:`you're looking at this one`,originalBuild:`The original build.`},S={title:`This may have outgrown its original request`,advisory:`Only a suggestion — you can keep asking for changes.`,costShare:`{{revisions}} change(s) have cost {{revisionCost}} — {{share}}% of the {{originalCost}} original build.`,outOfScopeChurn:`{{files}} of {{total}} changed files were never part of the original request.`,revisionCount:`You've asked for {{revisions}} rounds of changes. Rewriting the request may be quicker.`},C={backToBoard:n,stillWorking:r,alreadyResolved:i,fineControlOnly:a,openPr:o,noSolutionRecorded:s,headline:c,confidence:l,cost:u,accept:d,requestChanges:f,discard:p,watchOut:m,sections:h,churn:g,tier:_,proof:v,watch:y,error:b,versions:x,drift:S};export{t};
@@ -0,0 +1 @@
1
+ var e=`Volver al tablero`,t=`Todavía trabajando en esto…`,n=`Esto ya se ha resuelto.`,r=`Esta entrega necesita una decisión técnica. Usa los controles detallados del tablero.`,i=`Abrir pull request #{{number}}`,a=`No se registró ningún resumen.`,o={success:`Tu cambio está listo para revisar`,successMany:`Los {{count}} cambios están listos para revisar`,partial:`{{succeeded}} de {{total}} cambios están listos`,noChanges:`No hacía falta cambiar nada`,failed:`Esto no se pudo completar`,failedPartial:`Solo se pudo completar una parte`},s={pill:`Confianza del revisor IA {{overall}}/100`,unavailable:`Sin puntuación del revisor`,tooltip:`La puntuación que el revisor IA se da a sí mismo — no es una comprobación independiente.`},c={thisBuild:`Este trabajo costó {{amount}}`,allVersions:`Todas las versiones juntas: {{amount}}`},l={"create-pr":`Aceptar y abrir un pull request`,publish:`Aceptar y enviar a revisión`,"merge-local":`Aceptar en mi proyecto`,"mark-done":`Aceptar — nada que cambiar`,generic:`Aceptar`,irreversibleWarning:`Esto escribe los cambios directamente en tu proyecto, en tu ordenador. No hay copia de revisión aparte y no se puede deshacer.`,irreversibleConfirm:`Sí, escríbelo en mi proyecto`},u={label:`Pedir cambios`,comingSoon:`Muy pronto: describe el cambio en una frase.`,prompt:`¿Qué quieres cambiar?`,placeholder:`p. ej. pon el botón de login en azul`,submit:`Enviar el cambio`,hint:`Continúa desde donde quedó el trabajo — no empieza de cero.`},d={label:`Tirar esto`,stackedNote:`Los rails posteriores de este hito se construyeron sobre esta entrega. Descartarla pausa la cadena del hito; los rails posteriores conservan su trabajo.`},f={title:`Merece un vistazo antes de aceptar`},p={whatYouAsked:`Lo que pediste`,whatIDid:`Lo que se hizo`,howItWasChecked:`Cómo se comprobó`,fullSolution:`Leer la solución completa`},m={line:`{{files}} archivos cambiados · +{{added}} / −{{removed}} líneas`,batchNotSplittable:`Los cambios de archivos se informan para toda la entrega, no por petición.`},h={"app-verified":{title:`Medido por Specrails`,caveat:`Datos tomados de los cambios reales.`},"ai-reported":{title:`Informado por la IA`,caveat:`Palabras de la propia IA. Specrails no ejecutó estas comprobaciones.`},"reviewer-score":{title:`Autoevaluación del revisor IA`,caveat:`La IA calificando su propio trabajo — útil, pero no es una revisión independiente.`}},g={filesChanged:`{{files}} archivos cambiados (+{{added}} / −{{removed}} líneas)`,testFilesChanged:`Se cambiaron {{count}} archivos de test`,noTestFilesChanged:`No se cambió ningún archivo de test.`,commitsRecorded:`El trabajo se registró en {{branches}} rama(s)`,verificationPassed:`La IA informó de que sus comprobaciones pasaron ({{count}})`,verificationFailed:`La IA informó de que sus comprobaciones FALLARON ({{count}})`,noVerificationReported:`La IA no informó de ninguna verificación.`,verifyOutput:`Salida de verificación de la IA:`,reviewerScore:`Puntuación global {{overall}}/100`,reviewerAspect:`{{aspect}}: {{score}}/100`,reviewerScoreUnavailable:`No se generó puntuación del revisor.`,evidenceUnavailable:`sin evidencia`},_={humanReviewRecommended:`El revisor IA puntuó esto {{overall}}/100 y recomienda que lo mire una persona.`,lowConfidence:`El revisor IA puntuó esto solo {{overall}}/100.`,reviewerFlag:`El revisor señaló:`,noTestsForChangedCode:`{{files}} archivos de código cambiados sin cambios en tests.`},v={notFound:`No se encontró esta revisión.`,loadFailed:`No se pudo cargar la revisión.`,alreadyResolved:`Alguien ya respondió a esto.`,actionFailed:`Esa acción no se completó.`,revisionStale:`Esto se acaba de resolver en otro sitio — recarga para ver cómo está.`,revisionFailed:`No se pudo iniciar el cambio. Tu texto se ha conservado.`},y={title:`Versiones anteriores ({{count}})`,label:`Versión {{version}}`,current:`estás viendo esta`,originalBuild:`El trabajo original.`},b={title:`Esto puede haberse salido de lo que pediste`,advisory:`Solo es una sugerencia — puedes seguir pidiendo cambios.`,costShare:`{{revisions}} cambio(s) han costado {{revisionCost}} — el {{share}}% de los {{originalCost}} del trabajo original.`,outOfScopeChurn:`{{files}} de {{total}} archivos cambiados no formaban parte de la petición original.`,revisionCount:`Ya has pedido {{revisions}} rondas de cambios. Reescribir la petición puede ser más rápido.`},x={backToBoard:e,stillWorking:t,alreadyResolved:n,fineControlOnly:r,openPr:i,noSolutionRecorded:a,headline:o,confidence:s,cost:c,accept:l,requestChanges:u,discard:d,watchOut:f,sections:p,churn:m,tier:h,proof:g,watch:_,error:v,versions:y,drift:b};export{l as accept,n as alreadyResolved,e as backToBoard,m as churn,s as confidence,c as cost,x as default,d as discard,b as drift,v as error,r as fineControlOnly,o as headline,a as noSolutionRecorded,i as openPr,g as proof,u as requestChanges,p as sections,t as stillWorking,h as tier,y as versions,_ as watch,f as watchOut};
@@ -1 +1 @@
1
- import{l as e}from"./useSharedWebSocket-DnxHj8jP.js";function t(e){return e?e.repositories?.length?e.repositories:[{id:`primary-${e.id}`,projectId:e.id,name:e.name,path:e.path,isPrimary:!0,kind:`git`,integrationBranch:null,addedAt:e.added_at}]:[]}function n(t,n){let r=`${e}/api/projects/${encodeURIComponent(t)}`;return n?`${r}/repositories/${encodeURIComponent(n)}`:r}export{n,t};
1
+ import{l as e}from"./useSharedWebSocket-BHIfW4QT.js";function t(e){return e?e.repositories?.length?e.repositories:[{id:`primary-${e.id}`,projectId:e.id,name:e.name,path:e.path,isPrimary:!0,kind:`git`,integrationBranch:null,addedAt:e.added_at}]:[]}function n(t,n){let r=`${e}/api/projects/${encodeURIComponent(t)}`;return n?`${r}/repositories/${encodeURIComponent(n)}`:r}export{n,t};
@@ -0,0 +1 @@
1
+ var e=[`claude`,`codex`,`gemini`,`kimi`];function t(t){for(let n of e)if(t.includes(n))return n;return t[0]??`claude`}var n=`roles`;function r(e){return e===n}function i(t){return typeof t==`string`&&t.length>0&&t!==`roles`&&!e.includes(t)}function a(e){return e===`claude`}function o(e){return e===`claude`||e===`codex`||e===`gemini`}var s={claude:[`low`,`medium`,`high`,`xhigh`],codex:[`minimal`,`low`,`medium`,`high`,`xhigh`,`max`,`ultra`],gemini:[],kimi:[`low`,`high`,`max`]},c=[`low`,`medium`,`high`,`xhigh`],l={"gpt-6-astra":[...c,`max`,`ultra`],"gpt-5.6-sol":[...c,`max`,`ultra`],"gpt-5.6-terra":[...c,`max`,`ultra`],"gpt-5.6-luna":[...c,`max`],"gpt-5.5":c,"gpt-5.4-mini":c};function u(e,t){return e===`kimi`&&t!==`k3`&&t!==`kimi-code/k3`?[]:e===`codex`&&t&&l[t]?l[t]:e?s[e]??[]:[]}function d(e,t){let n=u(e,t);return n.includes(`medium`)?`medium`:n.includes(`high`)?`high`:n[0]}function f(e,t){return u(e,t).length>0}var p={claude:[`none`,`read-only`],codex:[`read-only`],gemini:[`read-only`],kimi:[]},m=[`none`,`read-only`];function h(e,t){return e?(p[e]??(i(e)?m:[])).includes(t):!1}function g(e){return h(e,`none`)||h(e,`read-only`)}function _(e){return e===`claude`||e===`kimi`||i(e)}function v(e){return e===`claude`||e===`kimi`}function y(e){return e===`kimi`||i(e)}function b(e){return e===`claude`}function x(e){return b(e)||e===`codex`}function S(e){return e===`claude`}function C(e){return e===`codex`?`Codex`:e===`claude`?`Claude`:e===`gemini`?`Gemini`:e===`kimi`?`Kimi`:e??`Claude`}export{u as _,a,o as c,_ as d,v as f,S as g,h,r as i,x as l,f as m,d as n,t as o,g as p,i as r,C as s,n as t,y as u};
@@ -0,0 +1 @@
1
+ var e={title:`Sprache`,description:`Desktop-weite UI-Sprache. Wird sofort angewendet – kein Neustart nötig.`,selectLabel:`Oberflächensprache`,updateFailed:`Spracheinstellung konnte nicht gespeichert werden`},t={title:`Projekteinstellungen`},n={saveFailed:`Speichern fehlgeschlagen: {{message}}`},r={title:`Pipeline-Telemetrie`,description:`Erfasst Token-Verbrauch, Phasendauern und Subagent-Aktivität für den Diagnose-Export. Standardmäßig an.`,toggleLabel:`Pipeline-Telemetrie aktivieren`,toggleDescription:`Wenn aktiviert, werden OTEL-Daten aus Pipeline-Jobs lokal erfasst. Verwenden Sie zum Herunterladen die Schaltfläche <mono>Diagnose exportieren</mono> auf einer beliebigen Job-Karte.`,enabled:`Pipeline-Telemetrie aktiviert`,disabled:`Pipeline-Telemetrie deaktiviert`,saveFailed:`Telemetrie-Einstellung konnte nicht gespeichert werden`},i={title:`Rail-Pre-Prompt`,description:`Zusätzliche projektspezifische Anweisungen, die an implement- und batch-implement-Rail-Jobs angehängt werden – nach dem Ticket-Kontext und vor der Ausführung.`,label:`Pre-Prompt`,placeholder:`Beispiel: Bevorzuge inkrementelle Änderungen, halte Migrationen abwärtskompatibel und füge Tests für jede Rail-Änderung hinzu.`,helper:`Für stabile Projektleitlinien, die jeden Rail-Implementierungslauf begleiten sollen.`,saveButton:`Pre-Prompt speichern`,cleared:`Pre-Prompt gelöscht`,saved:`Pre-Prompt gespeichert`,saveFailed:`Pre-Prompt konnte nicht gespeichert werden`},a={title:`Freestyle-Pre-Prompt`,description:`Anweisung, die in Freestyle an den ausgewählten Anbieter gesendet wird. Freestyle überspringt die OpenSpec-Pipeline – der Anbieter erhält diesen Pre-Prompt plus den Spec-Text und implementiert autonom. Leer lassen, um den eingebauten Standard zu verwenden.`,label:`Freestyle-Pre-Prompt`,placeholder:`Leer lassen, um die Standard-Freestyle-Anweisung zu verwenden.`,helper:`Der Spec-Text wird automatisch nach diesem Pre-Prompt angehängt. Leer = Standard.`,saveButton:`Freestyle-Pre-Prompt speichern`,resetToDefault:`Freestyle-Pre-Prompt auf Standard zurückgesetzt`,saved:`Freestyle-Pre-Prompt gespeichert`,saveFailed:`Freestyle-Pre-Prompt konnte nicht gespeichert werden`},o={title:`Budget`,description:`Tagesausgabenlimit für dieses Projekt festlegen. Die Queue pausiert automatisch, wenn das Limit erreicht ist.`,dailyLabel:`Tagesbudget (USD)`,dailyHelper:`Leer lassen zum Deaktivieren. Ausgaben werden über die letzten 24 Stunden berechnet.`,dailyPlaceholder:`z. B. 5.00`,perJobLabel:`Kostenalarm pro Job (USD)`,perJobHelper:`Alarm, wenn ein einzelner Job in diesem Projekt diesen Betrag überschreitet.`,perJobPlaceholder:`z. B. 0.50`,invalidNumber:`Positive Zahl eingeben oder leer lassen zum Deaktivieren`,dailyRemoved:`Tagesbudget entfernt`,dailySet:"Tagesbudget auf ${{amount}} gesetzt",perJobAlertDisabled:`Kostenalarm pro Job deaktiviert`,alertSet:"Alarm für Jobs über ${{amount}} gesetzt",saveBudgetFailed:`Budget konnte nicht gespeichert werden`,saveThresholdFailed:`Schwellenwert konnte nicht gespeichert werden`},s={nav:{appearance:`Darstellung`,specrailsAgents:`KI-Anbieter`,code:`Code`,terminal:`Terminal`,updates:`Updates`,mobile:`Mobil`,mcp:`MCP`,projects:`Projekte`,advanced:`Erweitert`,webhooks:`Webhooks`,about:`Info`,effects:`Effekte`},title:`Desktop-Einstellungen`,description:`Registrierte Projekte verwalten und Desktop-Informationen einsehen.`,registeredProjects:`Registrierte Projekte`,noProjects:`Noch keine Projekte registriert`,techUrlDescription:`Basis-URL für die specrails-tech-API (Standard: http://localhost:3000)`,techUrlSaved:`specrails-tech-URL gespeichert`,techUrlSaveFailed:`URL konnte nicht gespeichert werden`,budgetAlertsHeading:`Budget & Alarme`,dailyBudgetLabel:`Desktop-Tagesbudget (USD)`,dailyBudgetHelper:`Globales Tagesausgabenlimit über alle Projekte. Queues pausieren automatisch bei Überschreitung.`,dailyBudgetPlaceholder:`z. B. 10.00`,perJobHelper:`Alarm, wenn ein einzelner Job diesen Betrag überschreitet. Leer lassen zum Deaktivieren.`,costAlertsDisabled:`Kostenalarme deaktiviert`,dailyBudgetRemoved:`Desktop-Tagesbudget entfernt`,dailyBudgetSet:"Desktop-Tagesbudget auf ${{amount}} gesetzt",dailyBudgetSaveFailed:`Desktop-Tagesbudget konnte nicht gespeichert werden`,projectRemoved:`Projekt entfernt`,projectRemoveFailed:`Projekt konnte nicht entfernt werden`,onboardingHeading:`Onboarding`,platformTour:`Plattform-Tour`,platformTourDescription:`Den Willkommensassistenten erneut abspielen, um die wichtigsten Funktionen zu sehen.`,replayTour:`Tour erneut abspielen`,terminalPanelHeading:`Terminal-Panel`,infoHeading:`Desktop-Informationen`,infoPort:`Port`,infoProjects:`Projekte`,infoDb:`Desktop-DB`},c={heading:`OS-Benachrichtigungen`,description:`Native Desktop-Benachrichtigungen anzeigen, wenn Jobs abgeschlossen werden oder fehlschlagen. Benachrichtigungen erscheinen nur, wenn der Tab nicht fokussiert ist.`,enableLabel:`OS-Benachrichtigungen aktivieren`,notifyOn:`Benachrichtigen bei:`,filterAll:`Alle (abgeschlossen & fehlgeschlagen)`,filterCompleted:`Nur abgeschlossen`,filterFailed:`Nur fehlgeschlagen`,enabledToast:`OS-Benachrichtigungen aktiviert`,disabledToast:`OS-Benachrichtigungen deaktiviert`},l={heading:`Ausgehende Webhooks`,description:`Externe Tools (Slack, Zapier, CI/CD) bei Desktop-Ereignissen benachrichtigen. Anfragen werden über <code>X-Specrails-Signature</code> signiert, wenn ein Secret gesetzt ist.`,eventJobCompleted:`Job abgeschlossen`,eventJobFailed:`Job fehlgeschlagen`,eventDailyBudgetExceeded:`Tagesbudget überschritten`,statusOn:`an`,statusOff:`aus`,disable:`Deaktivieren`,enable:`Aktivieren`,sendTestPing:`Test-Ping senden`,addHeading:`Webhook hinzufügen`,secretPlaceholder:`Signatur-Secret (optional)`,addButton:`Webhook hinzufügen`,urlRequired:`URL ist erforderlich`,selectEvent:`Mindestens ein Ereignis auswählen`,added:`Webhook hinzugefügt`,addFailed:`Webhook konnte nicht hinzugefügt werden`,updateFailed:`Webhook konnte nicht aktualisiert werden`,removed:`Webhook entfernt`,removeFailed:`Webhook konnte nicht entfernt werden`,testPingSent:`Test-Ping gesendet`,testPingFailed:`Test-Ping konnte nicht gesendet werden`},u={title:`Terminal-Panel`,desktopDescription:`Desktop-weite Standardwerte für alle Projekte, sofern kein projektspezifischer Override gesetzt ist.`,projectDescription:`Projektspezifische Overrides für das Terminal-Panel. Lassen Sie ein Feld unverändert, um den Desktop-Standard zu erben.`,fontFamily:`Schriftfamilie`,fontSize:`Schriftgröße ({{min}}–{{max}})`,renderMode:`Render-Modus`,copyOnSelect:`Beim Auswählen kopieren`,shellIntegration:`Shell-Integration (OSC-133-Marken)`,notifyLongRunning:`Bei lang laufenden Befehlen benachrichtigen`,longCommandThreshold:`Schwellenwert für lange Befehle (ms)`,imageRendering:`Inline-Bilddarstellung (Sixel + iTerm2)`,browserShortcutUrl:`Browser-Shortcut-URL`,quickScript:`Quick-Skript (wird ins aktive Terminal eingefügt – Enter manuell drücken)`,reset:`Zurücksetzen`,unsavedChanges:`Ungespeicherte Änderungen`,clearOverride:`Override entfernen`,clear:`Entfernen`,inheritingDefault:`Erbt Desktop-Standard`,nothingToSave:`Nichts zu speichern`,saved:`Terminal-Einstellungen gespeichert`},d={heading:`Code-Bereich`,summaryLanguage:`Sprache der Zusammenfassungen`,monthlyBudget:`Monatsbudget (USD)`,budgetHelper:"Obergrenze für `surface=file-summary`-Ausgaben pro Kalendermonat. Von Nutzern angestoßene Neugenerierungen können sie überschreiten."},f={taglines:{dracula:`Das Original — dunkel mit Violettstich und lebhaften Neon-Akzenten`,"aurora-light":`Premium hell — Linear-inspiriertes Indigo auf warmem Cremeweiß`,"obsidian-dark":`Premium dunkel — fast schwarz mit Blaustich und elektrischen Akzenten`,specrails:`Marken-Theme — tiefes Marine-Indigo mit satten Cyan-Akzenten`,"code-rain":`Phosphor-Terminal — sanftes Mint auf grünlichem Fast-Schwarz`,galaxy:`Tiefraum-Blau mit einer leuchtenden Klingenspur`},heading:`Erscheinungsbild`,themeGroupLabel:`Theme`,currentlyActive:`Derzeit aktiv`,updateFailed:`Theme konnte nicht aktualisiert werden`},p={heading:`Mobile Companion`,description:`Steuern Sie Specrails über die SpecRails Companion-App auf Ihrem Smartphone – zu 100 % über Ihr lokales Netzwerk. Standardmäßig aus.`,accessOn:`Mobilzugriff an`,accessOff:`Mobilzugriff aus`,listeningOnPort:`Lauscht auf Port {{port}}`,notListening:`Lauscht nicht`,turnOn:`Einschalten`,turnOff:`Ausschalten`,pairWebDevice:`Web-Companion koppeln`,reset:`Zurücksetzen`,resetConfirm:`Mobile Identität zurücksetzen? Alle gekoppelten Geräte werden widerrufen und müssen neu gekoppelt werden.`,identityReset:`Mobile Identität zurückgesetzt`,enableFailed:`Mobilzugriff konnte nicht aktiviert werden: {{message}}`,disableFailed:`Mobilzugriff konnte nicht deaktiviert werden: {{message}}`,windowsFirewall:`Die Windows-Firewall fragt beim ersten Aktivieren, ob der SpecRails-Server zugelassen werden soll – wählen Sie „In privaten Netzwerken zulassen“.`,pairedDevices:`Gekoppelte Geräte`,noDevices:`Noch keine Geräte gekoppelt.`,revokeDevice:`{{name}} widerrufen`},m={title:`Web-Companion koppeln`,description:`Öffnen Sie specrails.dev/companion-app auf Ihrem Smartphone und scannen Sie damit diesen Code.`,startFailed:`Koppeln konnte nicht gestartet werden: {{error}}`,showThenScan:`Nachdem Ihr Smartphone dies gescannt hat, tippen Sie auf „Code des Smartphones scannen“ und richten Sie die Kamera auf Ihr Smartphone.`,scanAnswer:`Code des Smartphones scannen`,scanning:`Richten Sie die Kamera auf den Code auf Ihrem Smartphone…`,cameraFailed:`Kamera nicht verfügbar: {{message}}`,notAnswer:`Dieser QR-Code ist keine Kopplungsantwort.`,connecting:`Verbinden…`,paired:`✓ Gekoppelt`,pairedToast:`Web-Companion gekoppelt`,answerRejected:`Der Desktop hat diesen Code abgelehnt. Erzeugen Sie einen neuen und versuchen Sie es erneut.`,copyCode:`Code kopieren`,codeCopied:`Code kopiert`,cancel:`Abbrechen`},h={heading:`Specrails Core`,installed:`Installiert:`,updateAvailable:`Update verfügbar: {{version}}`,upToDate:`Aktuell`,neverChecked:`Nicht geprüft`,check:`Nach Updates suchen`,checking:`Wird geprüft…`,update:`Auf {{version}} aktualisieren`,downloading:`Wird heruntergeladen…`,materializing:`Wird installiert…`,affectsAll:`Gilt für alle Projekte — kein Neustart nötig.`,unavailable:`Core-Updates sind in diesem Build nicht verfügbar.`,toastDone:`Specrails Core auf {{version}} aktualisiert`,toastError:`Core-Update fehlgeschlagen: {{message}}`,toastUpToDate:`Specrails Core ist aktuell`,toastCheckFailed:`Update-Prüfung fehlgeschlagen: {{message}}`,loadFailed:`Core-Status konnte nicht geladen werden. Erneut versuchen`,runtime:`Laufzeit: {{version}}`,bundled:`In Desktop enthalten: {{version}}`,sources:{override:`Explizite Auswahl`,managed:`Von Desktop verwaltet`,bundled:`In Desktop enthalten`,local:`Lokales Paket`,global:`Externe CLI`},repair:`Update auf {{version}} abschließen`},g={heading:`Specrails Desktop`,installed:`Installiert:`,check:`Nach Updates suchen`,checking:`Wird geprüft…`,upToDate:`Du hast die neueste Version`,updateAvailable:`Update verfügbar: {{version}}`,autoHint:`Wird beim Start und alle 6 Stunden automatisch geprüft.`,unavailable:`App-Updates sind nur in der Desktop-App verfügbar.`,toastUpToDate:`Specrails Desktop ist aktuell`,toastCheckFailed:`Update-Prüfung fehlgeschlagen: {{message}}`},_={title:`{{name}} — Einstellungen`,description:`Projektkonfiguration: Prompts, Branch, Umgebung, Budget, Telemetrie und Terminal.`,nav:{general:`Allgemein`,branch:`Branch`,environment:`Umgebung`,budget:`Budget`,telemetry:`Telemetrie`,terminal:`Terminal`,agentRuntime:`Agenten-Laufzeit`}},v={title:`Integrationszweig`,description:`Der Branch, von dem parallele Rails abzweigen und auf den ihre Entwurfs-PRs zielen. Leer lassen, um automatisch den Standard-Branch des Repositorys zu verwenden.`,placeholder:`automatisch (Standard-Branch)`,resolved:`Rails zweigen von <mono>{{branch}}</mono> ab`,save:`Branch speichern`,saved:`Integrationszweig gespeichert`,saveFailed:`Integrationszweig konnte nicht gespeichert werden`},y={title:`Worktree-Umgebung`,description:`Wählen Sie die Namen der Umgebungsvariablen, die dieses Projekt an Rail-Jobs und isolierte Loop-Worktrees weitergibt. Gespeichert werden nur Namen; Werte werden beim Start gelesen und bei Bedarf aus der Login-Shell nachgeladen.`,label:`Umgebungsvariable`,placeholder:`NODE_AUTH_TOKEN`,helper:`Drücken Sie Enter oder Hinzufügen. Mehrere Namen können durch Kommas oder Leerzeichen getrennt eingefügt werden.`,add:`Hinzufügen`,empty:`Für dieses Projekt sind noch keine eigenen Variablen konfiguriert.`,remove:`{{name}} entfernen`,save:`Umgebung speichern`,saved:`Worktree-Umgebung gespeichert`,saveFailed:`Worktree-Umgebung konnte nicht gespeichert werden`,invalidName:`{{name}} ist kein gültiger Name für eine Umgebungsvariable`,noValues:`Fügen Sie hier nur Variablennamen hinzu, keine KEY=value-Geheimnisse.`},b={heading:`Effekte`,description:`Visuelle Akzente in der App. Jeder lässt sich hier abschalten.`,thinkingHalo:{label:`Denk-Halo am Agent-Composer`,description:`Während der Agent nachdenkt oder schreibt, leuchtet der kreisende Ring des Builders um den Composer: er blendet beim Start eines Turns ein und beim Abschluss der Antwort aus.`},reducedMotion:`Folgt der Systemeinstellung für reduzierte Bewegung: der Ring bleibt ein statisches Leuchten.`,preview:`Vorschau`,previewThinking:`Denkt nach…`},x={language:e,page:t,errors:n,telemetry:r,prePrompt:i,freestylePrePrompt:a,budget:o,desktop:s,notifications:c,webhooks:l,terminal:u,codeSection:d,appearance:f,mobile:p,pairWeb:m,coreUpdate:h,appUpdate:g,projectDialog:_,integrationBranch:v,worktreeEnv:y,effects:b};export{g as appUpdate,f as appearance,o as budget,d as codeSection,h as coreUpdate,x as default,s as desktop,b as effects,n as errors,a as freestylePrePrompt,v as integrationBranch,e as language,p as mobile,c as notifications,t as page,m as pairWeb,i as prePrompt,_ as projectDialog,r as telemetry,u as terminal,l as webhooks,y as worktreeEnv};