@ai-development-environment/server 0.0.29 → 0.0.30

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 (325) hide show
  1. package/package.json +1 -1
  2. package/prisma-runtime/prisma/migrations/20260719010000_add_build_reports/migration.sql +29 -0
  3. package/prisma-runtime/prisma/schema.prisma +23 -0
  4. package/standalone/.next/BUILD_ID +1 -1
  5. package/standalone/.next/app-path-routes-manifest.json +2 -0
  6. package/standalone/.next/build-manifest.json +6 -6
  7. package/standalone/.next/prerender-manifest.json +3 -3
  8. package/standalone/.next/routes-manifest.json +17 -0
  9. package/standalone/.next/server/app/[locale]/actions/page/build-manifest.json +3 -3
  10. package/standalone/.next/server/app/[locale]/actions/page.js.nft.json +1 -1
  11. package/standalone/.next/server/app/[locale]/actions/page_client-reference-manifest.js +1 -1
  12. package/standalone/.next/server/app/[locale]/agents/[id]/page/build-manifest.json +3 -3
  13. package/standalone/.next/server/app/[locale]/agents/[id]/page.js.nft.json +1 -1
  14. package/standalone/.next/server/app/[locale]/agents/[id]/page_client-reference-manifest.js +1 -1
  15. package/standalone/.next/server/app/[locale]/agents/page/build-manifest.json +3 -3
  16. package/standalone/.next/server/app/[locale]/agents/page.js.nft.json +1 -1
  17. package/standalone/.next/server/app/[locale]/agents/page_client-reference-manifest.js +1 -1
  18. package/standalone/.next/server/app/[locale]/build-data/page/build-manifest.json +3 -3
  19. package/standalone/.next/server/app/[locale]/build-data/page.js.nft.json +1 -1
  20. package/standalone/.next/server/app/[locale]/build-data/page_client-reference-manifest.js +1 -1
  21. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/app-paths-manifest.json +3 -0
  22. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/build-manifest.json +16 -0
  23. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/next-font-manifest.json +11 -0
  24. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/react-loadable-manifest.json +1 -0
  25. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/server-reference-manifest.json +4 -0
  26. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js +16 -0
  27. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js.map +5 -0
  28. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js.nft.json +1 -0
  29. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page_client-reference-manifest.js +3 -0
  30. package/standalone/.next/server/app/[locale]/builds/[buildId]/page/build-manifest.json +3 -3
  31. package/standalone/.next/server/app/[locale]/builds/[buildId]/page.js.nft.json +1 -1
  32. package/standalone/.next/server/app/[locale]/builds/[buildId]/page_client-reference-manifest.js +1 -1
  33. package/standalone/.next/server/app/[locale]/builds/page/build-manifest.json +3 -3
  34. package/standalone/.next/server/app/[locale]/builds/page.js.nft.json +1 -1
  35. package/standalone/.next/server/app/[locale]/builds/page_client-reference-manifest.js +1 -1
  36. package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page/build-manifest.json +3 -3
  37. package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page.js.nft.json +1 -1
  38. package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page_client-reference-manifest.js +1 -1
  39. package/standalone/.next/server/app/[locale]/codebases/page/build-manifest.json +3 -3
  40. package/standalone/.next/server/app/[locale]/codebases/page.js.nft.json +1 -1
  41. package/standalone/.next/server/app/[locale]/codebases/page_client-reference-manifest.js +1 -1
  42. package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page/build-manifest.json +3 -3
  43. package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page.js.nft.json +1 -1
  44. package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page_client-reference-manifest.js +1 -1
  45. package/standalone/.next/server/app/[locale]/comments/page/build-manifest.json +3 -3
  46. package/standalone/.next/server/app/[locale]/comments/page.js.nft.json +1 -1
  47. package/standalone/.next/server/app/[locale]/comments/page_client-reference-manifest.js +1 -1
  48. package/standalone/.next/server/app/[locale]/jira/cache/page/build-manifest.json +3 -3
  49. package/standalone/.next/server/app/[locale]/jira/cache/page.js.nft.json +1 -1
  50. package/standalone/.next/server/app/[locale]/jira/cache/page_client-reference-manifest.js +1 -1
  51. package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page/build-manifest.json +3 -3
  52. package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page.js.nft.json +1 -1
  53. package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page_client-reference-manifest.js +1 -1
  54. package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page/build-manifest.json +3 -3
  55. package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page.js.nft.json +1 -1
  56. package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page_client-reference-manifest.js +1 -1
  57. package/standalone/.next/server/app/[locale]/jira/tickets/page/build-manifest.json +3 -3
  58. package/standalone/.next/server/app/[locale]/jira/tickets/page.js.nft.json +1 -1
  59. package/standalone/.next/server/app/[locale]/jira/tickets/page_client-reference-manifest.js +1 -1
  60. package/standalone/.next/server/app/[locale]/jobs/[jobId]/page/build-manifest.json +3 -3
  61. package/standalone/.next/server/app/[locale]/jobs/[jobId]/page.js.nft.json +1 -1
  62. package/standalone/.next/server/app/[locale]/jobs/[jobId]/page_client-reference-manifest.js +1 -1
  63. package/standalone/.next/server/app/[locale]/page/build-manifest.json +3 -3
  64. package/standalone/.next/server/app/[locale]/page.js.nft.json +1 -1
  65. package/standalone/.next/server/app/[locale]/page_client-reference-manifest.js +1 -1
  66. package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page/build-manifest.json +3 -3
  67. package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page.js.nft.json +1 -1
  68. package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page_client-reference-manifest.js +1 -1
  69. package/standalone/.next/server/app/[locale]/pull-requests/page/build-manifest.json +3 -3
  70. package/standalone/.next/server/app/[locale]/pull-requests/page.js.nft.json +1 -1
  71. package/standalone/.next/server/app/[locale]/pull-requests/page_client-reference-manifest.js +1 -1
  72. package/standalone/.next/server/app/[locale]/settings/page/build-manifest.json +3 -3
  73. package/standalone/.next/server/app/[locale]/settings/page.js.nft.json +1 -1
  74. package/standalone/.next/server/app/[locale]/settings/page_client-reference-manifest.js +1 -1
  75. package/standalone/.next/server/app/[locale]/skills/[skillId]/page/build-manifest.json +3 -3
  76. package/standalone/.next/server/app/[locale]/skills/[skillId]/page.js.nft.json +1 -1
  77. package/standalone/.next/server/app/[locale]/skills/[skillId]/page_client-reference-manifest.js +1 -1
  78. package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page/build-manifest.json +3 -3
  79. package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page.js.nft.json +1 -1
  80. package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page_client-reference-manifest.js +1 -1
  81. package/standalone/.next/server/app/[locale]/skills/groups/page/build-manifest.json +3 -3
  82. package/standalone/.next/server/app/[locale]/skills/groups/page.js.nft.json +1 -1
  83. package/standalone/.next/server/app/[locale]/skills/groups/page_client-reference-manifest.js +1 -1
  84. package/standalone/.next/server/app/[locale]/skills/page/build-manifest.json +3 -3
  85. package/standalone/.next/server/app/[locale]/skills/page.js.nft.json +1 -1
  86. package/standalone/.next/server/app/[locale]/skills/page_client-reference-manifest.js +1 -1
  87. package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page/build-manifest.json +3 -3
  88. package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page.js.nft.json +1 -1
  89. package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page_client-reference-manifest.js +1 -1
  90. package/standalone/.next/server/app/[locale]/tools/page/build-manifest.json +3 -3
  91. package/standalone/.next/server/app/[locale]/tools/page.js.nft.json +1 -1
  92. package/standalone/.next/server/app/[locale]/tools/page_client-reference-manifest.js +1 -1
  93. package/standalone/.next/server/app/[locale]/usage/page/build-manifest.json +3 -3
  94. package/standalone/.next/server/app/[locale]/usage/page.js.nft.json +1 -1
  95. package/standalone/.next/server/app/[locale]/usage/page_client-reference-manifest.js +1 -1
  96. package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page/build-manifest.json +3 -3
  97. package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page.js.nft.json +1 -1
  98. package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page_client-reference-manifest.js +1 -1
  99. package/standalone/.next/server/app/[locale]/worktrees/page/build-manifest.json +3 -3
  100. package/standalone/.next/server/app/[locale]/worktrees/page.js.nft.json +1 -1
  101. package/standalone/.next/server/app/[locale]/worktrees/page_client-reference-manifest.js +1 -1
  102. package/standalone/.next/server/app/_global-error/page/build-manifest.json +3 -3
  103. package/standalone/.next/server/app/_global-error.html +1 -1
  104. package/standalone/.next/server/app/_global-error.rsc +1 -1
  105. package/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  106. package/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  107. package/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  108. package/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  109. package/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  110. package/standalone/.next/server/app/_not-found/page/build-manifest.json +3 -3
  111. package/standalone/.next/server/app/_not-found.html +1 -1
  112. package/standalone/.next/server/app/_not-found.rsc +1 -1
  113. package/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  114. package/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  115. package/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  116. package/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  117. package/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  118. package/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  119. package/standalone/.next/server/app/api/build-artifact-uploads/[uploadId]/route.js +1 -1
  120. package/standalone/.next/server/app/api/build-artifact-uploads/[uploadId]/route.js.nft.json +1 -1
  121. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route/app-paths-manifest.json +3 -0
  122. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route/build-manifest.json +9 -0
  123. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route/server-reference-manifest.json +4 -0
  124. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js +10 -0
  125. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js.map +5 -0
  126. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js.nft.json +1 -0
  127. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route_client-reference-manifest.js +3 -0
  128. package/standalone/.next/server/app-paths-manifest.json +2 -0
  129. package/standalone/.next/server/chunks/1oeh_server_app_api_worktrees_[worktreeId]_diff-image_route_actions_0nie5n3.js +3 -0
  130. package/standalone/.next/server/chunks/[root-of-the-server]__09v6swg._.js +3 -0
  131. package/standalone/.next/server/chunks/[root-of-the-server]__0aiyd05._.js +3 -0
  132. package/standalone/.next/server/chunks/[root-of-the-server]__0rwpsai._.js +3 -0
  133. package/standalone/.next/server/chunks/[root-of-the-server]__0zyqmd4._.js +122 -0
  134. package/standalone/.next/server/chunks/[root-of-the-server]__15_clsj._.js +3 -0
  135. package/standalone/.next/server/chunks/{[root-of-the-server]__0c02fce._.js → [root-of-the-server]__1oa-sy6._.js} +2 -2
  136. package/standalone/.next/server/chunks/[root-of-the-server]__1vxtcsq._.js +3 -0
  137. package/standalone/.next/server/chunks/_0exkna-._.js +143 -8
  138. package/standalone/.next/server/chunks/_0jurkow._.js +1 -1
  139. package/standalone/.next/server/chunks/_0rx5rfm._.js +1 -1
  140. package/standalone/.next/server/chunks/_0tufgj0._.js +213 -78
  141. package/standalone/.next/server/chunks/_0w2eghf._.js +143 -8
  142. package/standalone/.next/server/chunks/_152rnkf._.js +17 -17
  143. package/standalone/.next/server/chunks/_16x77b_._.js +1 -1
  144. package/standalone/.next/server/chunks/_1dbqy8c._.js +17 -17
  145. package/standalone/.next/server/chunks/_1vrixpc._.js +17 -17
  146. package/standalone/.next/server/chunks/_1yfz-9u._.js +17 -17
  147. package/standalone/.next/server/chunks/src_0o4-snj._.js +1 -1
  148. package/standalone/.next/server/chunks/ssr/1oeh_server_app_[locale]_builds_[buildId]_coverage_page_actions_20i_0zd.js +3 -0
  149. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__08bbv6z._.js +9 -0
  150. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ckj6wg._.js +13 -0
  151. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0eit075._.js +3 -0
  152. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0tsac-e._.js +15 -0
  153. package/standalone/.next/server/chunks/ssr/{_19fwji0._.js → [root-of-the-server]__0uo4dhz._.js} +2 -2
  154. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__10-ftkj._.js +3 -0
  155. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__15v1geo._.js +3 -0
  156. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1qm_j4s._.js +3 -0
  157. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1s6_fta._.js +3 -0
  158. package/standalone/.next/server/chunks/ssr/_0-o77zz._.js +3 -0
  159. package/standalone/.next/server/chunks/ssr/_00m30gw._.js +3 -0
  160. package/standalone/.next/server/chunks/ssr/_03961l6._.js +3 -0
  161. package/standalone/.next/server/chunks/ssr/{_00ye62k._.js → _08q5hnx._.js} +2 -2
  162. package/standalone/.next/server/chunks/ssr/_093--4s._.js +3 -0
  163. package/standalone/.next/server/chunks/ssr/{_1kaz2gq._.js → _09lh67h._.js} +2 -2
  164. package/standalone/.next/server/chunks/ssr/_0a1ligo._.js +3 -0
  165. package/standalone/.next/server/chunks/ssr/{_1r2rmfp._.js → _0cw_tqx._.js} +2 -8
  166. package/standalone/.next/server/chunks/ssr/_0dq-84j._.js +22 -0
  167. package/standalone/.next/server/chunks/ssr/_0dy1ovj._.js +3 -0
  168. package/standalone/.next/server/chunks/ssr/_0ezo890._.js +3 -0
  169. package/standalone/.next/server/chunks/ssr/_0id1774._.js +13 -0
  170. package/standalone/.next/server/chunks/ssr/_0j48up8._.js +1 -1
  171. package/standalone/.next/server/chunks/ssr/_0nhtqty._.js +1 -1
  172. package/standalone/.next/server/chunks/ssr/_0oh246z._.js +3 -0
  173. package/standalone/.next/server/chunks/ssr/_0q8sy0w._.js +3 -0
  174. package/standalone/.next/server/chunks/ssr/_0qra30j._.js +3 -0
  175. package/standalone/.next/server/chunks/ssr/_0t2jwg3._.js +109 -0
  176. package/standalone/.next/server/chunks/ssr/{_1zyjq9y._.js → _0ufkrvm._.js} +2 -2
  177. package/standalone/.next/server/chunks/ssr/{_07tglcd._.js → _0vjihfb._.js} +2 -10
  178. package/standalone/.next/server/chunks/ssr/_0xh-lyy._.js +3 -0
  179. package/standalone/.next/server/chunks/ssr/_15erjna._.js +3 -0
  180. package/standalone/.next/server/chunks/ssr/_17a3xuq._.js +3 -0
  181. package/standalone/.next/server/chunks/ssr/_17p59oz._.js +1 -1
  182. package/standalone/.next/server/chunks/ssr/_1bzibio._.js +109 -0
  183. package/standalone/.next/server/chunks/ssr/{_12ws_f2._.js → _1c2fde9._.js} +2 -2
  184. package/standalone/.next/server/chunks/ssr/{_0mr9u9p._.js → _1dnm1d4._.js} +2 -2
  185. package/standalone/.next/server/chunks/ssr/_1ekznx8._.js +3 -0
  186. package/standalone/.next/server/chunks/ssr/_1k1tyz4._.js +3 -0
  187. package/standalone/.next/server/chunks/ssr/{_1_1j9nd._.js → _1n9rteq._.js} +3 -7
  188. package/standalone/.next/server/chunks/ssr/_1och_zk._.js +3 -0
  189. package/standalone/.next/server/chunks/ssr/{_0xrpdyy._.js → _1tpguta._.js} +2 -2
  190. package/standalone/.next/server/chunks/ssr/_1v1lo7c._.js +3 -0
  191. package/standalone/.next/server/chunks/ssr/_1vv-dg-._.js +3 -0
  192. package/standalone/.next/server/chunks/ssr/_1zgu74l._.js +1 -1
  193. package/standalone/.next/server/chunks/ssr/messages_de_json_[json]_cjs_1uig1ud._.js +1 -1
  194. package/standalone/.next/server/chunks/ssr/messages_en_json_[json]_cjs_206072-._.js +1 -1
  195. package/standalone/.next/server/chunks/ssr/messages_es_json_[json]_cjs_082yukd._.js +1 -1
  196. package/standalone/.next/server/chunks/ssr/messages_fr_json_[json]_cjs_0j6-w0i._.js +1 -1
  197. package/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1uzalot.js +4 -0
  198. package/standalone/.next/server/chunks/ssr/src_components_builds_build-detail-page_tsx_0q1lvps._.js +14 -8
  199. package/standalone/.next/server/chunks/ssr/src_components_builds_coverage-report-page_tsx_1nhwba1._.js +11 -0
  200. package/standalone/.next/server/chunks/ssr/src_components_codebases_repository-detail-page_tsx_20_7wk_._.js +5 -5
  201. package/standalone/.next/server/chunks/ssr/src_components_jira_cache-page_tsx_1znt1yl._.js +1 -1
  202. package/standalone/.next/server/chunks/ssr/src_components_skills_skill-sync-page_tsx_15sidhb._.js +1 -1
  203. package/standalone/.next/server/chunks/ssr/src_components_skills_skills-page_tsx_0o1nlbg._.js +3 -3
  204. package/standalone/.next/server/chunks/ssr/src_components_worktrees_worktree-detail-page_tsx_1oexgu_._.js +13 -5
  205. package/standalone/.next/server/functions-config-manifest.json +3 -0
  206. package/standalone/.next/server/middleware-build-manifest.js +6 -6
  207. package/standalone/.next/server/next-font-manifest.js +1 -1
  208. package/standalone/.next/server/next-font-manifest.json +4 -0
  209. package/standalone/.next/server/pages/404.html +1 -1
  210. package/standalone/.next/server/pages/500.html +1 -1
  211. package/standalone/.next/server/server-reference-manifest.js +1 -1
  212. package/standalone/.next/server/server-reference-manifest.json +1 -1
  213. package/standalone/.next/static/chunks/041g9raf1naqv.js +48 -0
  214. package/standalone/.next/static/chunks/08ujwkhzkokhf.js +1 -0
  215. package/standalone/.next/static/chunks/{16tfdsma_h0r5.js → 0a82bgw37ev__.js} +1 -1
  216. package/standalone/.next/static/chunks/0cw4z7_m01m5f.js +31 -0
  217. package/standalone/.next/static/chunks/0emxr8tr7kji0.js +33 -0
  218. package/standalone/.next/static/chunks/0h8zu6aywqh1-.js +27 -0
  219. package/standalone/.next/static/chunks/0ng892ycfzv2q.js +1 -0
  220. package/standalone/.next/static/chunks/0tgtji0dbbefa.js +107 -0
  221. package/standalone/.next/static/chunks/15_8kla24ff9f.js +1 -0
  222. package/standalone/.next/static/chunks/16-l4kp9o217d.js +1 -0
  223. package/standalone/.next/static/chunks/1c7ci5ai5qyfo.js +1 -0
  224. package/standalone/.next/static/chunks/1egccqmgk3kbi.js +1 -0
  225. package/standalone/.next/static/chunks/1gwvywh0e6i17.js +3 -0
  226. package/standalone/.next/static/chunks/1hehq94hslvbl.js +7 -0
  227. package/standalone/.next/static/chunks/1k5cw41bd4e5r.js +51 -0
  228. package/standalone/.next/static/chunks/{2rjf8o4g23no8.js → 1mprxk0uebv70.js} +1 -1
  229. package/standalone/.next/static/chunks/1rus13s58mkxy.js +1 -0
  230. package/standalone/.next/static/chunks/{2fzxwi39odugq.js → 1rwqeg_l_plzt.js} +1 -1
  231. package/standalone/.next/static/chunks/1u_jwc-bo10k3.js +1 -0
  232. package/standalone/.next/static/chunks/1ut0xkaqsykm4.js +7 -0
  233. package/standalone/.next/static/chunks/1w_zvfx_jdyv_.js +29 -0
  234. package/standalone/.next/static/chunks/2-wrd12dmwbo-.js +1 -0
  235. package/standalone/.next/static/chunks/23kut2_l2y2-w.js +9 -0
  236. package/standalone/.next/static/chunks/{1nnp0crt0mi_-.js → 23xyv764-kx8z.js} +12 -12
  237. package/standalone/.next/static/chunks/{1wihkuyju-wa-.js → 25haryfoj4x3h.js} +1 -1
  238. package/standalone/.next/static/chunks/{0fr0zp4cwlyrr.js → 28ljy-uz6n_g9.js} +2 -2
  239. package/standalone/.next/static/chunks/29zl8lgsa28tb.js +1 -0
  240. package/standalone/.next/static/chunks/{4013cp3x6bvuw.js → 2__bi79el56lb.js} +5 -5
  241. package/standalone/.next/static/chunks/2aq80hyo4l8a2.js +7 -0
  242. package/standalone/.next/static/chunks/{24a_ux27e8jj4.js → 2l_wayk-ioguc.js} +1 -1
  243. package/standalone/.next/static/chunks/2swvzbwm_dr9y.js +1 -0
  244. package/standalone/.next/static/chunks/{0m26h4h36cb_0.js → 3120xcqaqci82.js} +1 -1
  245. package/standalone/.next/static/chunks/{3-u7pvogc5_bx.js → 315cis1es_5t3.js} +12 -12
  246. package/standalone/.next/static/chunks/321feys_9vp2v.js +33 -0
  247. package/standalone/.next/static/chunks/{0d-e51sawr2y8.js → 34oyci46fsc5w.js} +1 -1
  248. package/standalone/.next/static/chunks/37mczlawlcx5l.js +1 -0
  249. package/standalone/.next/static/chunks/{1tcqtaedz7922.js → 3d4ijy7zglgv5.js} +1 -1
  250. package/standalone/.next/static/chunks/3ir4b8po439x7.js +40 -0
  251. package/standalone/.next/static/chunks/3p7wbgo7qd6_m.css +1 -0
  252. package/standalone/.next/static/chunks/3q0q6_ntq8aa5.js +51 -0
  253. package/standalone/.next/static/chunks/3r-6igcofcwxj.js +107 -0
  254. package/standalone/.next/static/chunks/{0m--47yk9j-ec.js → 3tycetq7o8g3h.js} +1 -1
  255. package/standalone/.next/static/chunks/3vg6y29m047x9.js +31 -0
  256. package/standalone/.next/static/chunks/{0biu8z1f8c42u.js → 40ovzayigkz_-.js} +1 -1
  257. package/standalone/.next/static/chunks/41wq-96yyl0uw.js +1 -0
  258. package/standalone/.next/static/chunks/44xu63hsh11xp.js +1 -0
  259. package/standalone/.next/static/chunks/{turbopack-1rw7om86c18dg.js → turbopack-1v9ogj_5hv56l.js} +1 -1
  260. package/standalone/src/services/builds/builds.service.test.ts +55 -0
  261. package/standalone/src/services/builds/builds.service.ts +399 -0
  262. package/standalone/.next/server/chunks/[root-of-the-server]__1oahp4o._.js +0 -122
  263. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0361lgt._.js +0 -33
  264. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__06f05jg._.js +0 -3
  265. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ay4_3d._.js +0 -37
  266. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0dm8osz._.js +0 -3
  267. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1349-us._.js +0 -3
  268. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1xv798-._.js +0 -3
  269. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1z955gh._.js +0 -3
  270. package/standalone/.next/server/chunks/ssr/_0bvpmhm._.js +0 -101
  271. package/standalone/.next/server/chunks/ssr/_0eb36qa._.js +0 -3
  272. package/standalone/.next/server/chunks/ssr/_0ndnmkz._.js +0 -3
  273. package/standalone/.next/server/chunks/ssr/_0nm6upn._.js +0 -3
  274. package/standalone/.next/server/chunks/ssr/_0pe56xv._.js +0 -3
  275. package/standalone/.next/server/chunks/ssr/_0quhjav._.js +0 -3
  276. package/standalone/.next/server/chunks/ssr/_0w05v7m._.js +0 -3
  277. package/standalone/.next/server/chunks/ssr/_0xozjkz._.js +0 -3
  278. package/standalone/.next/server/chunks/ssr/_1-1mnp6._.js +0 -3
  279. package/standalone/.next/server/chunks/ssr/_1-7r8vu._.js +0 -3
  280. package/standalone/.next/server/chunks/ssr/_1-grolz._.js +0 -3
  281. package/standalone/.next/server/chunks/ssr/_10evhql._.js +0 -3
  282. package/standalone/.next/server/chunks/ssr/_142x9wn._.js +0 -22
  283. package/standalone/.next/server/chunks/ssr/_1_ta7g1._.js +0 -3
  284. package/standalone/.next/server/chunks/ssr/_1ey5mmy._.js +0 -3
  285. package/standalone/.next/server/chunks/ssr/_1fdyu2w._.js +0 -3
  286. package/standalone/.next/server/chunks/ssr/_1g3i459._.js +0 -15
  287. package/standalone/.next/server/chunks/ssr/_1g_aflc._.js +0 -3
  288. package/standalone/.next/server/chunks/ssr/_1h3p6oi._.js +0 -3
  289. package/standalone/.next/server/chunks/ssr/_1lcwubl._.js +0 -3
  290. package/standalone/.next/server/chunks/ssr/_1lseili._.js +0 -3
  291. package/standalone/.next/server/chunks/ssr/_1za3z6k._.js +0 -101
  292. package/standalone/.next/server/chunks/ssr/_20ufqtr._.js +0 -3
  293. package/standalone/.next/static/chunks/0a3s519wuzjet.js +0 -1
  294. package/standalone/.next/static/chunks/0newuocvg03xy.js +0 -3
  295. package/standalone/.next/static/chunks/0rlomhlt6030e.js +0 -1
  296. package/standalone/.next/static/chunks/1802j8gq2g47d.js +0 -7
  297. package/standalone/.next/static/chunks/1_tnhhn4f122y.js +0 -9
  298. package/standalone/.next/static/chunks/1eny65xy2ho48.js +0 -1
  299. package/standalone/.next/static/chunks/1joeb4m-mmn69.js +0 -7
  300. package/standalone/.next/static/chunks/1l4bkigul15i3.js +0 -25
  301. package/standalone/.next/static/chunks/1qd6cse_d9ae1.js +0 -99
  302. package/standalone/.next/static/chunks/2-mxmazwsh-wz.js +0 -1
  303. package/standalone/.next/static/chunks/24sd_kmnetibb.js +0 -1
  304. package/standalone/.next/static/chunks/27k7_zc-iuppd.js +0 -1
  305. package/standalone/.next/static/chunks/2baaj4mpr6i-i.js +0 -1
  306. package/standalone/.next/static/chunks/2cj2ndz_e0hbz.js +0 -1
  307. package/standalone/.next/static/chunks/2fzwgr2iq_783.css +0 -1
  308. package/standalone/.next/static/chunks/2hv6pkoloju0g.js +0 -33
  309. package/standalone/.next/static/chunks/2jbygfc0lzu0t.js +0 -55
  310. package/standalone/.next/static/chunks/2n7u72nxziv_5.js +0 -7
  311. package/standalone/.next/static/chunks/2sqprazdqp7f7.js +0 -1
  312. package/standalone/.next/static/chunks/2x8qovg070057.js +0 -1
  313. package/standalone/.next/static/chunks/3-zh9b0tcttiw.js +0 -33
  314. package/standalone/.next/static/chunks/31wyih3wwkeid.js +0 -1
  315. package/standalone/.next/static/chunks/33y_b6dqfx3tk.js +0 -1
  316. package/standalone/.next/static/chunks/3h1pxh5fd97ym.js +0 -27
  317. package/standalone/.next/static/chunks/3jbfibit05k5o.js +0 -29
  318. package/standalone/.next/static/chunks/3jd8_7lna-j_x.js +0 -40
  319. package/standalone/.next/static/chunks/3jv2gnnn4vx-j.js +0 -43
  320. package/standalone/.next/static/chunks/3k0oakdayt9yt.js +0 -40
  321. package/standalone/.next/static/chunks/3pgngh8lg3be3.js +0 -99
  322. package/standalone/.next/static/chunks/43gw6_6hbw18w.js +0 -51
  323. /package/standalone/.next/static/{8uBWJ8MOV-OEPe88M3PhU → ePu377E66yy0icQx3ykQJ}/_buildManifest.js +0 -0
  324. /package/standalone/.next/static/{8uBWJ8MOV-OEPe88M3PhU → ePu377E66yy0icQx3ykQJ}/_clientMiddlewareManifest.js +0 -0
  325. /package/standalone/.next/static/{8uBWJ8MOV-OEPe88M3PhU → ePu377E66yy0icQx3ykQJ}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[756817,(a,b,c)=>{b.exports=JSON.parse('{"metadata":{"title":"AI Development Environment","description":"Un entorno de desarrollo centrado en la inteligencia artificial."},"common":{"cancel":"Cancelar","continue":"Continuar","cannotBeUndone":"Esta acción no se puede deshacer."},"shell":{"productName":"AI Development Environment","welcome":"Bienvenido","dashboard":"Panel de control","navigation":"Navegación","navigationDescription":"Navegación principal de AI Development Environment.","notifications":"Notificaciones","notificationsDescription":"Actualizaciones y alertas de notificaciones.","showNavigation":"Mostrar navegación","hideNavigation":"Ocultar navegación","closeNavigation":"Cerrar navegación","showNotifications":"Mostrar notificaciones","hideNotifications":"Ocultar notificaciones","closeNotifications":"Cerrar notificaciones","codebases":"Bases de código","worktrees":"Árboles de trabajo","buildData":"Datos de compilación","builds":"Compilaciones","agents":"Agentes","usage":"Uso","github":"GitHub","pullRequests":"Solicitudes de extracción","actions":"Acciones","comments":"Comentarios","jira":"Jira","tickets":"Incidencias","cache":"Caché","system":"Sistema","skills":"Habilidades","tools":"Herramientas","settings":"Configuración"},"agents":{"title":"Agentes","description":"Gestiona los Macs inscritos y los trabajos duraderos desde un único plano de control.","refresh":"Actualizar","enroll":"Registrar agente","enrollmentTitle":"Comando de registro de un solo uso","enrollmentDescription":"Ejecuta este comando en el Mac después de instalar control-agent. El Mac se conecta de forma saliente; no abre ningún puerto de escucha.","serverAddress":"Dirección del servidor","copy":"Copiar comando","copyFailed":"No se pudo copiar el comando. Selecciónalo y cópialo manualmente.","expires":"El token caduca el {date}","loading":"Cargando agentes…","emptyTitle":"No hay agentes registrados","emptyDescription":"Crea un comando de registro para vincular tu primer Mac.","version":"Versión","platform":"Plataforma","lastSeen":"Visto por última vez","never":"Nunca"},"usage":{"title":"Uso","description":"Consulta el uso de tokens y el coste de todos los Macs registrados.","refresh":"Actualizar uso","rangeLabel":"Intervalo de uso","allData":"Todos los datos","last7Days":"7 días","last30Days":"30 días","loading":"Cargando agentes…","noAgents":"No hay agentes registrados","noAgentsDescription":"Registra un Mac antes de recopilar el uso.","noCompatible":"No hay agentes compatibles en línea","noCompatibleDescription":"Actualiza control-agent en un Mac en línea para añadir la función ccusage.","noOnline":"No hay agentes en línea","noOnlineDescription":"Conecta un Mac registrado antes de recopilar el uso.","collectionFailed":"Falló la recopilación de uso","collectionFailedDescription":"Ningún agente devolvió un informe ccusage válido. Revisa los errores anteriores e inténtalo de nuevo.","zeroUsage":"No se encontró uso","zeroUsageDescription":"Los agentes respondieron correctamente, pero ccusage no encontró uso diario.","noUsageInRange":"No hay uso en este intervalo","noUsageInRangeDescription":"Elige un intervalo más amplio para ver el uso anterior.","progress":"{complete} de {total} agentes compatibles informaron","offlineAgents":"Sin conexión: {agents}","unsupportedAgents":"Actualización necesaria: {agents}","failedAgents":"Con errores: {agents}","costChartTitle":"Coste diario por modelo","costChartDescription":"Uso diario acumulado en USD para el intervalo seleccionado.","totalCost":"Coste total","totalTokens":"Tokens totales","inputTokens":"Tokens de entrada","outputTokens":"Tokens de salida","cacheCreationTokens":"Tokens de creación de caché","cacheReadTokens":"Tokens de lectura de caché","usage":"Uso","input":"Entrada","output":"Salida","cacheCreation":"Creación de caché","cacheRead":"Lectura de caché","total":"Total","cost":"Coste","grandTotal":"Total general","unattributedTokens":"Tokens sin atribuir","modelCount":"{count} modelos","agentCount":"{count} agentes","showModels":"Mostrar modelos del {date}","hideModels":"Ocultar modelos del {date}","showAgents":"Mostrar agentes que usan {model}","hideAgents":"Ocultar agentes que usan {model}"},"agentDetail":{"back":"Agentes","loading":"Cargando agente…","notFound":"No se encontró el agente.","version":"Versión","lastSeen":"Visto por última vez","never":"Nunca","generalInformation":"Información general","generalInformationDescription":"El hardware y el uso de recursos se actualizan con cada señal del agente.","cpuModel":"Modelo de CPU","operatingSystem":"Sistema operativo","architecture":"Arquitectura","ipAddress":"Dirección IP","memory":"Memoria","disk":"Espacio en disco","used":"Usado","free":"Libre","unavailable":"No disponible","capabilities":"Capacidades","capabilitiesDescription":"Busca las capacidades anunciadas por este agente, ejecuta una e inspecciona su respuesta en vivo.","searchCapabilities":"Buscar capacidades","searchCapabilitiesPlaceholder":"Buscar nombres de capacidades…","noMatchingCapabilities":"Ninguna capacidad coincide con esta búsqueda.","capability":"Capacidad","kind":"Tipo","event":"Evento","job":"Trabajo","expandCapability":"Expandir {capability}","collapseCapability":"Contraer {capability}","eventCapabilityDescription":"Este evento solicita una reconciliación inmediata de las bases de código y no acepta datos.","payload":"Datos (objeto JSON)","invoke":"Ejecutar capacidad","invokeOffline":"Conecta este agente antes de ejecutar una capacidad.","noCapabilityResponse":"Ejecuta la capacidad para ver su respuesta.","codebases":"Bases de código","codebasesDescription":"Bases de código registradas en este agente.","noCodebases":"No hay bases de código registradas en este agente.","repository":"Repositorio","status":"Estado","created":"Creado","finished":"Finalizado","selectJob":"Seleccionar {kind}","runTitle":"Ejecutar túnel de Cloudflared","runDescription":"Inicia el controlador permitido de cloudflared en este Mac. Seguirá ejecutándose en el servicio del agente cuando abandones esta página.","tunnelName":"Nombre del túnel","tunnelPlaceholder":"tunel-desarrollo","queuing":"Añadiendo a la cola…","run":"Ejecutar","history":"Historial de trabajos","noJobs":"No se ha ejecutado ningún trabajo en este agente.","baseRepoDirectory":"Directorio base de repositorios","baseRepoDirectoryDescription":"Elige la carpeta de este agente que contiene sus repositorios. Las rutas de los worktrees que estén dentro se mostrarán relativas a esta carpeta.","currentDirectory":"Directorio actual","notConfigured":"Sin configurar","useDirectory":"Usar este directorio","clearDirectory":"Borrar directorio","directoryBrowsingUnavailable":"Conecta este agente y actualízalo si es necesario para explorar directorios.","derivedDataLocation":"Derived Data de Xcode","derivedDataLocationDescription":"Elige dónde guarda este agente el DerivedData de Xcode.","derivedDataMode":"Modo de ubicación","derivedDataDefault":"Ubicación predeterminada de Xcode","derivedDataAbsolute":"Directorio absoluto personalizado","derivedDataRelative":"Relativo a cada árbol de trabajo","derivedDataAbsolutePath":"Directorio absoluto","derivedDataRelativePath":"Ruta de carpeta relativa","derivedDataAbsoluteHelp":"Introduce una ruta absoluta en este agente o elige un directorio existente.","derivedDataRelativeHelp":"Esta carpeta se comprueba bajo cada árbol de trabajo activo registrado.","saveDerivedDataSettings":"Guardar configuración de Derived Data","buildsDirectory":"Directorio de compilaciones","buildsDirectoryDescription":"Los registros, productos copiados, archivos y exportaciones se guardan en una carpeta por compilación. De forma predeterminada se añade /Builds al directorio base de repositorios, salvo que se indique otro aquí.","browseBuildsDirectory":"Explorar directorio de compilaciones","effectiveDirectory":"Directorio efectivo","agentDefault":"Valor predeterminado del repositorio base","customBuildsDirectory":"Directorio absoluto personalizado","saveBuildsDirectory":"Guardar directorio de compilaciones","useAgentDefault":"Usar valor predeterminado del repositorio base","deleteAgent":"Eliminar agente","deleteAgentTitle":"¿Eliminar este agente?","deleteAgentDescription":"Eliminar permanentemente {name} y todos sus trabajos y registros de bases de código. Esta acción no se puede deshacer."},"buildData":{"title":"Datos de compilación","description":"Inspecciona y limpia el DerivedData de Xcode en los agentes registrados.","refresh":"Actualizar","calculateSizes":"Calcular tamaños","loading":"Buscando Derived Data…","emptyTitle":"No se encontró Derived Data","emptyDescription":"Los directorios DerivedData configurados no contienen entradas.","progress":"Se analizaron {complete} de {total} agentes aptos","selected":"{count} seleccionados","deleteSelected":"Eliminar seleccionados","selectAll":"Seleccionar todas las entradas de Derived Data","selectEntry":"Seleccionar {name}","folder":"Carpeta","worktree":"Ruta del árbol de trabajo","size":"Uso de disco","agent":"Agente","actions":"Acciones","entryActions":"Acciones para {name}","deleteEntry":"Eliminar {name}","confirmDeleteEntry":"Confirmar eliminación de {name}","confirmDelete":"Confirmar","delete":"Eliminar","deleteTitle":"¿Eliminar Derived Data?","deleteDescription":"¿Eliminar permanentemente {count} entradas seleccionadas? Esta acción no se puede deshacer.","history":"Historial de eliminaciones","historyDescription":"Derived Data eliminado de los agentes registrados durante los últimos 90 días.","clearHistory":"Borrar historial","clearHistoryTitle":"¿Borrar el historial?","clearHistoryDescription":"¿Eliminar todos los registros conservados? Esto no afecta a los archivos de los agentes.","loadingHistory":"Cargando historial…","noHistory":"Todavía no se ha eliminado Derived Data.","deleted":"Eliminado","sourceLabel":"Origen","loadMore":"Cargar más","status":{"UNLINKED":"Sin vincular","PENDING":"Compilación iniciándose","SHARED_CACHE":"Caché compartida"},"source":{"USER":"Usuario","AUTOMATIC":"Automático"},"agentStatus":{"QUEUING":"en cola","QUEUED":"en cola","RUNNING":"analizando","SUCCEEDED":"completado","FAILED":"falló","CANCELLED":"cancelado","TIMED_OUT":"tiempo agotado","OFFLINE":"sin conexión","UNSUPPORTED":"se requiere actualizar el agente","INVALID":"respuesta no válida"}},"jobs":{"back":"Agentes","open":"Abrir trabajo","cancel":"Cancelar","loading":"Cargando trabajo…","notFound":"No se encontró el trabajo.","waiting":"Esperando la salida…"},"jiraTickets":{"title":"Incidencias de Jira","description":"Consulta por estado los proyectos, tableros y consultas JQL guardados.","refresh":"Actualizar","manage":"Administrar","showBoardLayout":"Vista de tablero","showTableLayout":"Vista de tabla","collapseStatus":"Contraer {status}","expandStatus":"Expandir {status}","issueType":"Tipo de incidencia","priority":"Prioridad","loading":"Cargando proyectos de Jira…","loadingTickets":"Cargando incidencias…","loadingTicket":"Cargando detalles de la incidencia…","emptyProjects":"Aún no hay proyectos de Jira","emptyProjectsDescription":"Configura Jira y después añade un proyecto con su primera fuente.","emptySources":"Este proyecto no tiene fuentes","emptySourcesDescription":"Añade una consulta JQL con nombre o una URL de tablero.","emptyTickets":"Ninguna incidencia coincide con esta fuente.","addProject":"Añadir proyecto","addSource":"Añadir fuente","projectTabs":"Proyectos de Jira","sourceTabs":"Fuentes de incidencias","staleWarning":"No se pudo contactar con Jira; se muestran datos caducados de la caché.","truncatedWarning":"Esta fuente supera las 1000 incidencias. Refínala para ver el resto.","issue":"Incidencia","unassigned":"Sin asignar","manageTitle":"Administrar proyectos y fuentes de Jira","manageDescription":"Los proyectos vienen de Jira y cada fuente se valida antes de guardarse.","projects":"Proyectos","availableProjects":"Proyectos disponibles en Jira","selectProject":"Selecciona un proyecto","sourceCount":"{count} fuentes","removeProject":"Quitar proyecto","confirmRemoveProject":"¿Quitar este proyecto y todas sus fuentes guardadas?","sourcesFor":"Fuentes de {project}","displaySettings":"Configuración de visualización","displaySettingsDescription":"Esta configuración solo se aplica a este proyecto.","ticketsToShow":"Incidencias que mostrar","allTickets":"Todas las incidencias","unassignedOrSelfAssigned":"Sin asignar o asignadas a mí","selfAssignedInProgress":"Mis incidencias en curso","hideCompletedTickets":"Ocultar incidencias completadas","hideCompletedTicketsDescription":"Elige qué estados del proyecto cuentan como completados.","completedStatuses":"Estados completados","loadingStatuses":"Cargando estados…","selectCompletedStatuses":"Seleccionar estados completados","saveDisplaySettings":"Guardar configuración de visualización","branchNaming":"Nombres de ramas","branchNamingDescription":"Esta función se usa al crear una rama de worktree desde un ticket de este proyecto.","branchNamingFunction":"Función JavaScript para nombrar ramas","branchNamingFunctionHelp":"Recibe ticketKey, type, title y alreadyTaken. Devuelve un nombre de rama Git válido; alreadyTaken se omite en la primera llamada.","saveBranchNaming":"Guardar nombres de ramas","sourceName":"Nombre de la fuente","sourceType":"Tipo de fuente","boardUrl":"URL del tablero","editSource":"Editar fuente","deleteSource":"Eliminar fuente","confirmDeleteSource":"¿Eliminar esta fuente y sus entradas de caché relacionadas?","saveSource":"Guardar fuente","cancel":"Cancelar","done":"Listo","ticket":"Incidencia","staleTicket":"Algunos datos están caducados porque Jira no respondió.","openInJira":"Abrir en Jira","worktreeAction":"Crear worktree","ticketWorktreeTitle":"Crear desde {issueKey}","ticketWorktreeDescription":"Crea un worktree nuevo en un agente o crea la rama del ticket y cambia un worktree existente a ella.","newWorktree":"Worktree nuevo","existingWorktree":"Worktree existente","agentAndCodebase":"Agente y base de código","selectWorktreeDestination":"Seleccionar un destino","searchWorktreeDestinations":"Buscar worktrees, agentes y bases de código","noWorktreeDestinations":"No hay destinos compatibles y conectados disponibles.","chooseWorktreeDestination":"Elige dónde se debe crear la rama del ticket.","loadingWorktreeDestinations":"Cargando destinos de worktree…","ticketWorktreeCreated":"Se creó el worktree del ticket.","ticketBranchChanged":"Se creó la rama del ticket y el worktree cambió a ella.","createTicketWorktree":"Crear worktree del ticket","createAndSwitchBranch":"Crear y cambiar de rama","ticketStashRetryHelp":"Git no pudo cambiar con los cambios actuales. Guarda en stash los cambios rastreados y no rastreados y vuelve a intentarlo.","stashAndRetry":"Guardar en stash y reintentar","detachedBranch":"HEAD separado","descriptionTitle":"Descripción","classification":"Clasificación","labels":"Etiquetas","components":"Componentes","fixVersions":"Versiones de corrección","sprints":"Sprints","relatedIssues":"Incidencias relacionadas","attachments":"Archivos adjuntos","comments":"Comentarios ({count})","noComments":"Esta incidencia no tiene comentarios.","unknownUser":"Usuario desconocido","assignee":"Responsable","reporter":"Informador","created":"Creada","updated":"Actualizada","due":"Vencimiento","resolved":"Resuelta","affectedVersions":"Versiones afectadas","openFullDetails":"Abrir detalles completos","renderFormat":"Formato de visualización","markdown":"Formato Markdown","jiraWiki":"Wiki de Jira","viewRendered":"Ver formato","viewRaw":"Ver texto original","rendered":"Formato","raw":"Original","copied":"Copiado","copy":"Copiar","commentActions":"Acciones del comentario","copyRaw":"Copiar contenido original","copyFailed":"No se pudo copiar el contenido.","authoringFormat":"Formato de escritura","preview":"Vista previa","hidePreview":"Ocultar vista previa","commentBody":"Comentario","commentPlaceholder":"Escribe un comentario…","saving":"Guardando…","addComment":"Añadir comentario","changeAssignee":"Cambiar responsable","searchAssignees":"Buscar usuarios asignables","loadingAssignees":"Cargando usuarios…","noAssignees":"No se encontraron usuarios asignables.","status":"Estado","changeStatus":"Cambiar estado","requiresJira":"Requiere Jira"},"jiraTicketDetail":{"loading":"Cargando incidencia de Jira…","notFound":"Incidencia no encontrada","notFoundDescription":"No se pudo cargar la incidencia de Jira.","back":"Volver a incidencias de Jira","summary":"Resumen","save":"Guardar","editSummary":"Editar resumen","refresh":"Actualizar","edit":"Editar","saveDescription":"Guardar descripción","descriptionHistory":"Historial de la descripción","descriptionHistoryDescription":"Selecciona dos versiones de la actividad de Jira para comparar su texto.","currentVersion":"Versión actual","beforeChange":"Antes de {date}","afterChange":"Después de {date}","loadingHistory":"Cargando historial…","noDescriptionHistory":"No hay versiones anteriores de la descripción.","compareFrom":"Comparar desde","compareTo":"Comparar hasta","compareVersions":"Comparar versiones","descriptionComparison":"Comparación de la descripción","selectVersions":"Selecciona dos versiones diferentes para comparar.","activity":"Actividad","comments":"Comentarios","history":"Historial","worklogs":"Registros de trabajo","unknownUser":"Usuario desconocido","noHistory":"No hay historial disponible.","loadMore":"Cargar más","started":"Iniciado {date}","noWorklogs":"No hay registros de trabajo.","allFields":"Todos los campos de Jira","expandFields":"Mostrar campos","collapseFields":"Ocultar campos","searchFields":"Buscar campos","field":"Campo","value":"Valor","custom":"Personalizado","details":"Detalles","editDetails":"Editar detalles de la incidencia","editDetailsDescription":"Solo se muestran los campos que Jira permite editar.","none":"Ninguno","commaSeparated":"Valores separados por comas","pickDate":"Elegir una fecha","clearDate":"Borrar fecha","saving":"Guardando…"},"jiraCache":{"title":"Caché de Jira","description":"Inspecciona datos almacenados, uso de API, latencia y errores.","ttl":"TTL de caché en minutos","saveTtl":"Guardar TTL","clearCache":"Vaciar caché","confirmClear":"¿Vaciar todas las respuestas e incidencias de Jira? Se conservará el historial.","loading":"Cargando actividad de la caché…","average":"Media de {ms} ms","live":"Directas","cache":"Caché","errors":"Errores","operationsTitle":"Operaciones de API","operationsDescription":"Recuentos por operación y origen en cada periodo móvil.","noMetrics":"No hubo actividad de la API de Jira en las últimas 24 horas.","operation":"Operación","recentTitle":"Llamadas recientes a la API","recentDescription":"Cada operación almacenada del SDK, empezando por la más reciente.","noCalls":"No se ha registrado ninguna llamada a Jira.","time":"Hora","fetched":"Datos obtenidos","source":"Origen","duration":"Duración","error":"Error","stale":"Caducada","ticketsTitle":"Incidencias en caché","ticketsDescription":"Cobertura de resumen, detalle y comentarios para incidencias de Jira.","noTickets":"No hay incidencias de Jira almacenadas.","ticket":"Incidencia","status":"Estado","coverage":"Cobertura","freshness":"Vigencia","fresh":"Vigente","lastFetched":"Última obtención","actions":"Acciones","open":"Abrir","refresh":"Actualizar","delete":"Eliminar","confirmDeleteTicket":"¿Eliminar {issueKey} y todas las entradas que la referencian?","showing":"Mostrando {start}–{end} de {total}","previous":"Anterior","next":"Siguiente"},"jiraCacheDetail":{"back":"Caché de Jira","description":"Datos almacenados de la incidencia","refresh":"Actualizar incidencia","delete":"Eliminar de la caché","confirmDelete":"¿Eliminar {issueKey} y sus entradas relacionadas?","loading":"Cargando incidencia almacenada…","notFound":"Esta incidencia no está en la caché de Jira.","coverage":"Cobertura","freshness":"Vigencia","fresh":"Vigente","stale":"Caducada","detailFetched":"Detalle obtenido","commentsFetched":"Comentarios obtenidos","summaryData":"Respuesta de resumen","detailData":"Respuesta de detalle completo","commentsData":"Respuesta completa de comentarios","notFetched":"Este nivel de datos todavía no se ha obtenido.","relatedEntries":"Entradas de caché relacionadas","noEntries":"Ninguna entrada referencia esta incidencia.","operation":"Operación","fetchedAt":"Obtenido el","entryId":"ID de entrada de caché"},"jiraSettings":{"title":"Configuración","description":"Configura la cuenta de Jira Cloud que usa esta aplicación.","loading":"Cargando configuración de Jira…","credentials":"Credenciales de Jira","configured":"Token configurado","notConfigured":"Token sin configurar","siteUrl":"URL del sitio de Jira Cloud","siteUrlHelp":"Usa la URL base *.atlassian.net de tu sitio Jira.","email":"Correo de la cuenta Jira","apiToken":"Token de API de Jira","tokenPlaceholder":"Pega un token de API de Atlassian","tokenPlaceholderConfigured":"Déjalo vacío para conservar el token","tokenHelp":"El token se guarda en SQLite local y nunca vuelve al navegador.","tokenKeepHelp":"Déjalo vacío salvo que quieras sustituir el token guardado.","save":"Guardar configuración","test":"Probar conexión","remove":"Quitar credenciales","saved":"Configuración de Jira guardada.","connectionSucceeded":"La conexión con Jira se realizó correctamente.","removed":"Credenciales eliminadas y datos de Jira en caché borrados.","confirmSiteChange":"Cambiar de sitio elimina proyectos, fuentes y caché. ¿Continuar?","confirmRemove":"¿Quitar el correo y token guardados y borrar la caché de Jira?"},"settings":{"title":"Configuración","description":"Configura las integraciones utilizadas por esta aplicación."},"editorSettings":{"title":"Editor de worktrees","description":"Elige la edición de VS Code que abre los worktrees u oculta esas acciones.","loading":"Cargando ajustes del editor…","label":"Editor","code":"Visual Studio Code (versión estable)","insiders":"Visual Studio Code (canal Insiders)","none":"Ninguno (ocultar botones)","save":"Guardar editor","saved":"Se guardó el ajuste del editor."},"githubSettings":{"title":"Credenciales de GitHub","description":"Conecta la cuenta utilizada para cargar solicitudes de extracción y GitHub Actions.","loading":"Cargando la configuración de GitHub…","configured":"Token configurado","notConfigured":"Token no configurado","apiToken":"Token de acceso personal de GitHub","tokenPlaceholder":"Pega un token de acceso personal de GitHub","tokenPlaceholderConfigured":"Déjalo en blanco para conservar el token guardado","tokenHelp":"Concede acceso de lectura y escritura a las solicitudes de extracción y acceso de lectura a Actions en los repositorios que quieras usar. El token permite ver solicitudes, actuar en hilos de revisión y consultar ejecuciones.","tokenKeepHelp":"Déjalo en blanco salvo que quieras reemplazar el token guardado.","save":"Guardar configuración","test":"Probar conexión","remove":"Eliminar credenciales","saved":"Configuración de GitHub guardada.","connectionSucceeded":"La conexión con GitHub se realizó correctamente.","removed":"Se eliminaron las credenciales de GitHub. Se conservaron los repositorios gestionados.","confirmRemove":"¿Eliminar las credenciales de GitHub?","confirmRemoveDescription":"Se eliminará el token guardado. Se conservarán los repositorios gestionados y las expresiones de Jira."},"githubAppSettings":{"title":"Reintentos de canalización con GitHub App","description":"Usa tu propia GitHub App para volver a ejecutar flujos de GitHub Actions.","loading":"Cargando la configuración de la GitHub App…","verified":"Verificada","notConfigured":"Sin configurar","setupTitle":"Configura tu propia GitHub App","stepRegister":"Registra una GitHub App con un nombre único, como «Reintentos del entorno de IA», desde","registerLink":"Crear una GitHub App","stepHomepage":"Usa","stepHomepageSuffix":" como URL de inicio. Deja vacía la URL de retorno y desactiva los webhooks.","stepPermissions":"Configura Repository permissions → Actions como Read and write. Metadata queda automáticamente en solo lectura; no hace falta permiso de Checks.","stepInstall":"Crea la app, genera una clave privada e instálala solo en los repositorios que deba controlar este despliegue.","stepInstallationId":"Después de instalarla, abre la página Configure de la app. El ID de instalación es el último número de la URL, por ejemplo","stepInstallationIdSuffix":". Sustituye Organization-name por tu organización y copia el valor ID final.","stepCredentials":"Copia el ID de la app y el ID de instalación, y pega ambos junto con el PEM descargado.","appId":"ID de la GitHub App","appIdPlaceholder":"Introduce el ID numérico de la app","installationId":"ID de la instalación","installationIdPlaceholder":"Introduce el ID numérico de instalación","privateKey":"Clave privada en PEM","privateKeyDropZone":"Zona para soltar la clave privada PEM","pemDropHint":"Suelta aquí un archivo .pem o pega la clave debajo.","pemFileLoaded":"Se cargó {filename}. Guarda y verifica para usar esta clave.","pemFileInvalid":"Suelta un archivo .pem válido que contenga una clave privada RSA.","pemFileReadError":"No se pudo leer el archivo PEM soltado.","privateKeyPlaceholder":"Pega el PEM descargado de la GitHub App","privateKeyPlaceholderConfigured":"Déjalo vacío para conservar la clave configurada","privateKeyHelp":"La clave solo se envía al servidor Next.js y nunca se devuelve al navegador.","privateKeyKeepHelp":"Hay una clave privada configurada. Pega otro PEM solo cuando quieras rotarla.","connectedAs":"Conectada a {app} en {account}","connectionDetails":"Actions: {permission}; repositorios: {selection}","lastVerified":"Última verificación: {date}","save":"Guardar y verificar","rotate":"Rotar clave y verificar","test":"Probar conexión","remove":"Eliminar GitHub App","saved":"La GitHub App se guardó y verificó.","rotated":"La clave privada de la GitHub App se rotó y verificó.","connectionSucceeded":"Se verificó la conexión de la GitHub App.","removed":"Se eliminaron las credenciales de la GitHub App. Se conservaron el token personal y los repositorios gestionados.","confirmRemove":"¿Eliminar las credenciales de la GitHub App?","confirmRemoveDescription":"Se eliminarán el ID de app, el ID de instalación y la clave privada. Se conservarán las credenciales de solicitudes y los repositorios gestionados."},"pullRequests":{"title":"Solicitudes de extracción","description":"Revisa tus solicitudes de GitHub y los repositorios supervisados en un solo lugar.","refresh":"Actualizar","manage":"Gestionar","loading":"Cargando la configuración de GitHub…","credentialsRequired":"Conecta GitHub para ver solicitudes de extracción","credentialsRequiredDescription":"Añade un token de acceso personal en Configuración antes de cargar datos de GitHub.","openSettings":"Abrir Configuración","tabsLabel":"Vistas de solicitudes de extracción","mine":"Mías","reviewRequests":"Solicitudes de revisión","repositories":"Repositorios","stateFilter":"Estado de la solicitud de extracción","repositoryFilter":"Repositorio","selectRepository":"Seleccionar un repositorio","searchRepositories":"Buscar repositorios","searchAvailableRepositories":"Buscar repositorios disponibles","noRepositoryMatches":"Ningún repositorio coincide con la búsqueda.","truncated":"La búsqueda de GitHub devuelve como máximo 1000 resultados. Ajusta tu carga de trabajo en GitHub para ver los resultados que superen este límite.","loadingPullRequests":"Cargando solicitudes de extracción…","loadingMore":"Cargando más…","retryLoad":"Intentar de nuevo","empty":"No hay solicitudes de extracción","emptyDescription":"Actualmente no hay solicitudes de extracción que coincidan con esta vista.","repository":"Repositorio","number":"Número","pullRequest":"Solicitud de extracción","pullRequestAndRepository":"Solicitud de extracción / Repositorio","labels":"Etiquetas","ticket":"Incidencia","pipeline":"Canalización","approval":"Aprobación","openComments":"Comentarios abiertos","viewOpenComments":"Ver {count} comentarios abiertos","age":"Antigüedad","actions":"Acciones","details":"Detalles","openInGitHub":"Abrir en GitHub","merge":"Fusionar","mergePullRequest":"Fusionar pull request","mergePullRequestDescription":"Fusiona {repository} #{number} después de revisar los detalles del commit.","loadingMergeOptions":"Comprobando requisitos de fusión…","mergeType":"Tipo de fusión","selectMergeType":"Seleccionar un tipo de fusión","mergeTypes":{"SQUASH":"Combinar commits y fusionar","MERGE":"Crear un commit de fusión","REBASE":"Rebase y fusión"},"commitMessage":"Mensaje del commit","commitDescription":"Descripción del commit","commitEmail":"Correo del commit","githubDefaultEmail":"Usar el valor predeterminado de GitHub","cancelMerge":"Cancelar","merging":"Fusionando…","pipelineStates":{"ACTION_REQUIRED":"Acción necesaria","CANCELLED":"Cancelado","ERROR":"Error","EXPECTED":"Esperado","FAILURE":"Fallido","IN_PROGRESS":"En curso","NEUTRAL":"Neutral","PENDING":"Pendiente","QUEUED":"En cola","SKIPPED":"Omitido","STALE":"Obsoleto","STARTUP_FAILURE":"Error de inicio","SUCCESS":"Correcto","TIMED_OUT":"Tiempo agotado","NONE":"Sin comprobaciones"},"pipelineMenuTitle":"Estado de las canalizaciones","noPipelines":"No se han informado comprobaciones de canalización.","retry":"Reintentar","retrying":"Reintentando…","retryUnavailable":{"GITHUB_APP_NOT_CONFIGURED":"Configura y verifica una GitHub App en Ajustes para volver a ejecutar este flujo.","NOT_COMPLETED":"Solo se pueden reintentar los flujos completados.","NOT_GITHUB_ACTIONS":"Solo se pueden reintentar ejecuciones de GitHub Actions.","WORKFLOW_RUN_UNAVAILABLE":"GitHub no proporcionó una ejecución para este conjunto de comprobaciones."},"reviewStates":{"APPROVED":"Aprobada","CHANGES_REQUESTED":"Cambios solicitados","REVIEW_REQUIRED":"Revisión necesaria","NONE":"Sin decisión"},"pullRequestStates":{"ALL":"Todas","OPEN":"Abierta","CLOSED":"Cerrada","MERGED":"Fusionada"},"mergeableStates":{"CONFLICTING":"Con conflictos","MERGEABLE":"Se puede fusionar","UNKNOWN":"Calculando"},"manageTitle":"Gestionar repositorios de GitHub","manageDescription":"Elige las pestañas de repositorio y configura cómo se extraen las claves de Jira de los títulos.","manageCredentialsRequired":"Configura las credenciales de GitHub antes de añadir repositorios.","managedRepositories":"Repositorios gestionados","noManagedRepositories":"Todavía no hay repositorios gestionados.","addRepository":"Añadir repositorio","browse":"Explorar","enterManually":"Introducir manualmente","privateRepository":"Repositorio privado","managed":"Gestionado","add":"Añadir","loadingRepositories":"Cargando repositorios…","loadMore":"Cargar más","repositoryName":"Propietario/nombre del repositorio","jiraKeyRegex":"Expresión regular de clave de Jira","jiraKeyRegexHelp":"Se usa el primer grupo de captura si existe; de lo contrario, se usa la coincidencia completa. Borra el campo para desactivar el análisis.","defaultJiraKeyRegex":"Expresión predeterminada de clave de ticket","defaultJiraKeyRegexHelp":"Se usa en cada repositorio administrado sin una configuración propia. Se usa el primer grupo de captura si existe.","jiraKeyRegexOverrideHelp":"Déjalo vacío para heredar la expresión predeterminada.","saveDefaultRegex":"Guardar expresión predeterminada","invalidRegex":"Introduce una expresión regular válida para la clave de Jira.","done":"Listo","removeRepository":"Eliminar repositorio","confirmRemoveRepository":"¿Eliminar este repositorio gestionado?","confirmRemoveRepositoryDescription":"Se eliminarán su pestaña de solicitudes y su configuración de expresión regular de Jira.","saveRegex":"Guardar expresión de Jira"},"githubComments":{"title":"Comentarios","description":"Revisa y responde a los hilos de revisión de GitHub en tus solicitudes abiertas.","refresh":"Actualizar","layout":"Diseño de comentarios","cards":"Diseño de tarjetas","table":"Diseño de tabla","loadingConfiguration":"Cargando la configuración de GitHub…","credentialsRequired":"Conecta GitHub para ver comentarios","credentialsDescription":"Añade en Configuración un token personal con acceso de lectura y escritura a solicitudes.","openSettings":"Abrir Configuración","pullRequestFilter":"Solicitud de extracción abierta","allPullRequests":"Todas las solicitudes abiertas","searchPullRequests":"Buscar solicitudes abiertas","noPullRequestMatches":"Ninguna solicitud abierta coincide con la búsqueda.","currentUser":"Usuario actual","otherUsers":"Otros usuarios","unresolved":"Sin resolver","truncated":"La búsqueda de GitHub devuelve como máximo 1000 solicitudes. Es posible que falten hilos de revisión.","loading":"Cargando comentarios de revisión…","empty":"No hay comentarios de revisión","emptyDescription":"Ningún hilo coincide con la solicitud y los filtros seleccionados.","author":"Autor","pullRequest":"Solicitud de extracción","comment":"Comentario","date":"Fecha","replies":"Respuestas","github":"Servicio GitHub","rendered":"Vista renderizada","markdown":"Fuente Markdown","viewRaw":"Original","viewRendered":"Formato","copy":"Copiar","copied":"Copiado","copyFailed":"No se pudo copiar el Markdown.","unknownAuthor":"Autor desconocido","fileComment":"Comentario de archivo","outdated":"Desactualizado","resolved":"Resuelto","openInGitHub":"Abrir en GitHub","openReplyInGitHub":"Abrir respuesta en GitHub","reply":"Responder","replyPlaceholder":"Responder con Markdown…","replyUnavailable":"GitHub no permite que esta cuenta responda a este hilo.","reopen":"Reabrir hilo","resolve":"Resolver hilo","replying":"Respondiendo…","sendReply":"Enviar respuesta"},"pullRequestDetail":{"back":"Solicitudes de extracción","loading":"Cargando detalles de la solicitud…","notFound":"Solicitud de extracción no encontrada","notFoundDescription":"Esta solicitud no está disponible o el token de GitHub configurado no puede acceder a ella.","refresh":"Actualizar","openInGitHub":"Abrir en GitHub","viewWorktree":"Ver worktree","draft":"Borrador","description":"Descripción","noDescription":"No se proporcionó ninguna descripción.","comments":"Comentarios","noComments":"No hay comentarios de revisión","noCommentsDescription":"Esta solicitud de extracción no tiene hilos de revisión.","pipelines":"Canalizaciones","pipelineCount":"{count} canalizaciones y contextos de estado","pipelineName":"Canalización","pipelineStatus":"Estado","pipelineDetails":"Detalles","viewPipeline":"Ver","jobCount":"{count} trabajos","noJobs":"No se informaron trabajos para esta ejecución.","viewJob":"Ver {job} en GitHub","retryJob":"Reintentar {job}","showJobSteps":"Mostrar los pasos de {job}","hideJobSteps":"Ocultar los pasos de {job}","steps":"Pasos","noSteps":"Aún no se han informado pasos para este trabajo.","details":"Detalles de la solicitud","branches":"Ramas","changes":"Cambios","files":"Archivos modificados","commits":"Confirmaciones","mergeable":"Capacidad de fusión","openComments":"Comentarios abiertos","created":"Creada","updated":"Actualizada","merged":"Fusionada","people":"Personas","author":"Autor","assignees":"Asignados","unassigned":"Sin asignar","unknown":"Desconocido"},"actionsPage":{"title":"Acciones de GitHub","description":"Supervisa ejecuciones de flujos de trabajo en las bases de código registradas en GitHub.","refresh":"Actualizar","loadingConfiguration":"Cargando la configuración de GitHub…","credentialsRequired":"Conecta GitHub para ver Actions","credentialsRequiredDescription":"Añade en Configuración un token de acceso personal con permiso de lectura de Actions.","openSettings":"Abrir Configuración","repositoryFilter":"Repositorio","allRepositories":"Todos los repositorios","searchRepositories":"Buscar repositorios","noRepositoryMatches":"Ningún repositorio coincide con la búsqueda.","loadingRuns":"Cargando ejecuciones…","noCodebases":"No hay bases de código de GitHub","noCodebasesDescription":"Registra una base de código con un origen github.com para ver sus ejecuciones.","empty":"No hay ejecuciones","emptyDescription":"GitHub no devolvió ejecuciones para la selección de repositorios.","expand":"Expandir","repository":"Repositorio","workflowRun":"Ejecución","trigger":"Desencadenador","status":"Estado","pullRequest":"Solicitud de extracción","ticket":"Incidencia","worktree":"Árbol de trabajo","started":"Iniciada","duration":"Duración: {duration}","actions":"Acciones","runNumber":"Ejecución n.º {number}","attempt":"Intento {attempt}","view":"Ver","viewWorktree":"Ver","showJobs":"Mostrar trabajos de {run}","hideJobs":"Ocultar trabajos de {run}","jobs":"Trabajos","jobCount":"{count} trabajos","loadingJobs":"Cargando trabajos…","retryLoad":"Reintentar","noJobs":"No se informaron trabajos para esta ejecución.","showJobSteps":"Mostrar los pasos de {job}","hideJobSteps":"Ocultar los pasos de {job}","retryJob":"Reintentar {job}","steps":"Pasos","noSteps":"Aún no se han informado pasos para este trabajo.","loadMore":"Cargar más","loadingMore":"Cargando más…"},"codebases":{"title":"Bases de código","description":"Supervisa repositorios Git y copias de trabajo en todos los agentes registrados.","refreshAll":"Actualizar todo","fetchAll":"Descargar todo","add":"Añadir base de código","groupBy":"Agrupar bases de código por","agents":"Agentes","repositories":"Repositorios","loading":"Cargando bases de código…","emptyTitle":"Aún no hay bases de código","emptyDescription":"Añade un repositorio Git existente desde un agente conectado.","skipped":"Se omitieron {count} bases de código desconectadas, incompatibles o no disponibles.","fetchQueued":"La descarga comenzó para las bases de código disponibles.","refreshQueued":"La actualización comenzó para las bases de código disponibles.","online":"Conectado","offline":"Desconectado","edit":"Editar","view":"Ver","folder":"Carpeta","origin":"Origen","branch":"Rama","upstream":"Rama remota","lastChecked":"Última comprobación","lastFetched":"Última descarga","never":"Nunca","unknown":"Desconocido","none":"Ninguna","ahead":"Adelantada {count}","behind":"Atrasada {count}","sync":{"IN_SYNC":"Sincronizada","AHEAD":"Adelantada","BEHIND":"Atrasada","DIVERGED":"Divergente","NO_UPSTREAM":"Sin rama remota","DETACHED":"Desacoplada","UNKNOWN":"Desconocido"},"availability":{"AVAILABLE":"Disponible","MISSING":"Falta la carpeta","NOT_REPOSITORY":"No es un repositorio Git","ORIGIN_MISMATCH":"El origen cambió","ERROR":"No disponible"},"operationRunning":"Operación Git en curso…","fetch":"Descargar","addTitle":"Añadir una base de código","addDescription":"Explora un agente, inspecciona un repositorio Git y confirma su origen antes de guardarlo.","agent":"Agente","selectAgent":"Selecciona un agente conectado","browseHome":"Explorar la carpeta personal","home":"Inicio","showHidden":"Mostrar carpetas ocultas","truncated":"Solo se muestran las primeras 1.000 carpetas.","addFolder":"Añadir esta carpeta","detached":"HEAD desacoplado","existingOrigin":"Este origen ya usa el nombre compartido «{name}».","name":"Nombre del repositorio","repositoryDescription":"Descripción del repositorio","cancel":"Cancelar","confirm":"Confirmar base de código","editTitle":"Editar detalles del repositorio","loadingRepository":"Cargando repositorio…","repositoryNotFound":"Repositorio no encontrado","repositoryNotFoundDescription":"Es posible que este repositorio lógico ya no tenga una copia de trabajo registrada.","backToCodebases":"Volver a bases de código","repositorySharedDescription":"Estos detalles, configuraciones de compilación y scripts permitidos pertenecen al repositorio lógico y se aplican a todas las copias de agentes y árboles de trabajo.","repositoryDetails":"Detalles del repositorio","repositoryDetailsDescription":"Administra los ajustes compartidos por todas las copias registradas de este repositorio.","repositorySaved":"Detalles del repositorio guardados.","skillGroups":"Grupos de habilidades","skillGroupsHelp":"Elige los grupos que se sincronizan en todos los checkouts y worktrees de este repositorio.","noSkillGroups":"No hay grupos disponibles.","keepBaseBranchUpToDate":"Mantener actualizada la rama base","keepBaseBranchUpToDateHelp":"Después de una obtención correcta, la rama base avanza mediante fast-forward cuando no hay cambios preparados. Esta configuración del repositorio se aplica a todos los agentes.","save":"Guardar","remove":"Eliminar","confirmRemoveTitle":"¿Eliminar el registro de la base de código?","confirmRemoveDescription":"Se eliminará el registro de {folder}. La carpeta y todos sus archivos permanecerán intactos en el agente.","removed":"Se eliminó el registro de la base de código.","settings":"Configuración","settingsTitle":"Configuración del estado de las bases de código","settingsDescription":"Define con qué frecuencia los agentes actualizados inspeccionan las carpetas registradas e informan del estado de Git.","refreshInterval":"Intervalo de actualización del agente (segundos)","refreshIntervalHelp":"Elige un número entero entre {min} y {max}. Cada agente espera este tiempo tras completar un análisis. No se contacta con los servidores remotos de Git.","fetchInterval":"Intervalo de descarga automática (segundos)","fetchIntervalHelp":"Elige un entero entre {min} y {max}. El agente descarga origin cuando vence este intervalo.","defaultJiraBranchRegex":"Expresión Jira predeterminada para ramas","jiraBranchRegex":"Expresión Jira específica del origen","jiraBranchRegexHelp":"Se usa el primer grupo capturado; si no existe, se usa toda la coincidencia de la rama.","inheritDefaultRegex":"Heredar la expresión predeterminada","settingsSaved":"Se guardaron los ajustes de las bases de código."},"codebaseDetail":{"iosApp":"Aplicación iOS","loading":"Cargando base de código…","notFound":"Base de código no encontrada","notFoundDescription":"Es posible que se haya eliminado este registro de base de código.","back":"Volver a las bases de código","operationQueued":"Operación de Git en cola.","operationSucceeded":"Operación de Git completada.","operationFailed":"La operación de Git falló.","offlineReadOnly":"Este agente está desconectado. La información de ramas guardada estará disponible en modo de solo lectura hasta que vuelva a conectarse.","unsupportedReadOnly":"Actualiza este agente para inspeccionar y administrar ramas y stashes. La información de ramas guardada se muestra en modo de solo lectura.","dirty":"Cambios sin confirmar","refresh":"Actualizar","fetch":"Obtener origin","repositorySettings":"Ajustes del repositorio","origin":"Origen","currentBranch":"Rama actual","upstream":"Rama remota","lastFetched":"Última descarga","activeOperation":"{kind} está en ejecución…","branches":"Ramas ({count})","stashes":"Guardados Git ({count})","branchesTruncated":"Solo se muestran las primeras 1.000 ramas.","localBranches":"Ramas locales","remoteBranches":"Ramas remotas de origin","noLocalBranches":"No se encontraron ramas locales.","noRemoteBranches":"No se encontraron ramas de origin. Obtén origin y vuelve a intentarlo.","branchName":"Rama","branchStatus":"Estado","actions":"Acciones","current":"Actual","default":"Predeterminada","protected":"Protegida","otherWorktree":"Otro árbol de trabajo","localAvailable":"Existe una rama local","switch":"Cambiar","stashAndSwitch":"Guardar y cambiar","confirmDirtySwitchTitle":"¿Guardar los cambios y cambiar de rama?","confirmDirtySwitchDescription":"Los cambios preparados, sin preparar y sin seguimiento se guardarán en un stash nuevo antes de cambiar a {branch}. El stash se conservará.","checkout":"Cambiar a esta rama","stashAndCheckout":"Guardar y cambiar","confirmDirtyCheckoutTitle":"¿Guardar los cambios y cambiar a esta rama?","confirmDirtyCheckoutDescription":"Los cambios preparados, sin preparar y sin seguimiento se guardarán en un stash nuevo antes de cambiar a {branch}. El stash se conservará.","pull":"Traer","deleteRemote":"Eliminar remota","confirmDeleteRemoteBranchTitle":"¿Eliminar la rama remota?","confirmDeleteRemoteBranchDescription":"origin/{branch} se eliminará permanentemente. Las ramas locales y los árboles de trabajo con el mismo nombre permanecerán intactos.","delete":"Eliminar","cancel":"Cancelar","confirmDeleteBranchTitle":"¿Eliminar la rama local?","confirmDeleteBranchDescription":"Git eliminará {branch} de forma segura solo si sus commits ya se fusionaron. No se puede eliminar la rama actual, la predeterminada ni la de otro árbol de trabajo.","noStashes":"No hay stashes","noStashesDescription":"Este checkout no tiene stashes de Git actualmente.","preview":"Vista previa","hidePreview":"Ocultar vista previa","loadingPreview":"Cargando parche del stash…","emptyPatch":"Este stash no tiene un parche de texto que mostrar.","copyPatch":"Copiar parche","patchCopied":"Parche copiado","copyPatchFailed":"No se pudo copiar el parche.","patchTruncated":"Este parche se truncó a 256 KiB.","stashesTruncated":"Solo se muestran los primeros 200 stashes.","apply":"Aplicar","confirmDeleteStashTitle":"¿Eliminar el stash?","confirmDeleteStashDescription":"{stash} se eliminará permanentemente. Aplícalo primero si necesitas conservar sus cambios."},"worktrees":{"title":"Árboles de trabajo","description":"Gestiona worktrees de Git principales y vinculados en todos los agentes inscritos.","agentOffline":"El agente está desconectado.","worktreeUnavailable":"Este árbol de trabajo no está disponible.","agentUnsupported":"Actualiza el agente para habilitar compilaciones de iOS.","iosBuildNotConfigured":"Añade primero un proyecto de aplicación iOS y una configuración de compilación en los ajustes del repositorio.","filters":"Filtros de worktrees","searchWorktrees":"Buscar worktrees","searchWorktreesPlaceholder":"Buscar ramas, agentes, repositorios, incidencias o bases de código…","filterByAgent":"Filtrar por agente","allAgents":"Todos los agentes","filterByRepository":"Filtrar por repositorio","allRepositories":"Todos los repositorios","noMatchingWorktrees":"No hay worktrees coincidentes","noMatchingWorktreesDescription":"Prueba otra búsqueda o filtro.","refresh":"Actualizar","fetchNow":"Descargar ahora","fetchStarted":"Se inició la descarga para las bases de código disponibles.","createWorktree":"Crear worktree","worktreeCreated":"Worktree creado.","repositoryCheckout":"Checkout del repositorio","selectCodebase":"Seleccionar agente y repositorio","selectCodebaseHelp":"Elige el checkout del agente que será propietario de este worktree.","searchCodebases":"Buscar repositorios y agentes","noEligibleCodebases":"No hay checkouts de repositorios compatibles y conectados.","newBranch":"Rama nueva","existingBranch":"Rama existente","fromTicket":"Desde ticket","branchName":"Nombre de rama","ticketKey":"Clave del ticket","loadingTicketBranch":"Cargando ticket y nombre de rama…","selectExistingBranch":"Seleccionar una rama existente","selectBaseBranch":"Seleccionar una rama base","searchBranches":"Buscar ramas","noMatchingBranches":"No hay ramas coincidentes.","localBranch":"Local","originBranch":"Rama remota","localAndOrigin":"Local y origin","remoteDefault":"Predeterminada remota","changeBranch":"Cambiar rama","moveToAgent":"Mover a agente","moveWorktree":"Mover árbol de trabajo","moveDescription":"Envía {branch} y cámbialo en otro agente.","destinationAgent":"Agente y copia de destino","selectDestinationAgent":"Seleccionar agente de destino","searchDestinationAgents":"Buscar agentes y copias","noMoveDestinations":"No hay copias de destino compatibles disponibles.","destinationWorktree":"Árbol de trabajo de destino","createDestinationWorktree":"Crear un árbol de trabajo nuevo","dirtyDestinationWarning":"Este destino tiene cambios sin confirmar. Git los llevará a la rama entrante cuando sea posible.","deleteOldWorktree":"Eliminar el árbol anterior después de mover","deleteOldWorktreeDisabled":"Los árboles de trabajo principales no se pueden eliminar.","moveFailed":"No se pudo mover el árbol de trabajo.","moveCompleted":"Árbol de trabajo movido.","moveCompletedWithWarning":"El destino está listo, pero la limpieza del origen requiere atención.","moveCancelled":"Movimiento cancelado. La rama de origen sigue enviada y se conservó el árbol de origen.","moveNeedsStash":"Los cambios del destino impiden cambiar de rama.","moveStashHelp":"Guarda los cambios rastreados y no rastreados del destino, continúa y conserva el stash para restaurarlo manualmente.","moveProgress":"Moviendo {branch}","stashAndContinue":"Guardar y continuar","cancelMove":"Cancelar movimiento","cancel":"Cancelar","moveStatus":{"PUSHING":"Enviando la rama de origen…","CHECKING_OUT":"Cambiando el destino…","AWAITING_STASH":"Esperando una decisión sobre el stash…","CLEANING_UP":"Eliminando el árbol anterior…","SUCCEEDED":"Movimiento completado.","SUCCEEDED_WITH_WARNING":"Movimiento completado con una advertencia de limpieza.","FAILED":"Movimiento fallido.","CANCELLED":"Movimiento cancelado."},"moveBlocked":{"agent":"El agente de origen está desconectado o debe actualizarse.","busy":"Hay otra operación activa para este repositorio.","detached":"Se necesita una rama de origen con nombre.","dirty":"Confirma o descarta los cambios del origen antes de mover.","behind":"Integra los cambios de origin antes de mover.","diverged":"Resuelve la divergencia con origin antes de mover.","unknown":"No se puede verificar que la rama se pueda enviar de forma segura.","destination":"No hay ningún agente de destino compatible disponible."},"deleteWorktree":"Eliminar árbol de trabajo","deleteWorktreeDescription":"Elimina permanentemente {path} y su rama local.","deleteWorktreeWarning":"Se perderán permanentemente todos los cambios preparados, no preparados y no rastreados de este árbol.","deleteRemoteBranch":"Eliminar también origin/{branch}","defaultRemoteProtected":"La rama predeterminada del repositorio no se puede eliminar de origin.","stashAndRetry":"Guardar en stash y reintentar","stashRetryHelp":"Git no pudo cambiar con los cambios actuales. Guarda los cambios rastreados y no rastreados en stash, reintenta y conserva el stash para restaurarlo manualmente.","hidden":"Ocultos ({count})","cards":"Vista de tarjetas","table":"Vista de tabla","loading":"Cargando worktrees…","emptyTitle":"No se encontraron worktrees","emptyDescription":"Añade una base de código y conecta su agente para descubrir sus worktrees.","online":"En línea","offline":"Sin conexión","lastFetched":"Última descarga: {value}","neverFetched":"nunca","secondsAgo":"hace {count} s","branch":"Rama","path":"Ruta","baseBranch":"Rama base","editBase":"Editar rama base","saveBase":"Guardar rama base","inheritBase":"Heredar valor remoto","baseUnavailable":"Rama remota predeterminada no disponible","upstreamStatus":"Estado upstream","baseStatus":"Actualidad de la base","baseCurrent":"Actual · {count} por delante","baseBehind":"{count} detrás de la base","yes":"Sí","notUpToDate":"No · {count} commits detrás de la base","ahead":"{count} por delante","behind":"{count} por detrás","diverged":"Divergente","upToDate":"Actualizada","origin":"Origen","inSync":"Sincronizada","dirty":"Modificado","branchCommits":"Confirmaciones: {count}","unpublished":"Sin publicar","detached":"HEAD separado","unknown":"Desconocido","primary":"Principal","tags":"Etiquetas","manageTags":"Gestionar etiquetas","manageTagsDescription":"Crea etiquetas globales reutilizables y elige los colores de sus insignias.","highlight":"Resaltado","clearHighlight":"Quitar resaltado","customize":"Personalizar worktree","edit":"Editar","editTag":"Editar etiqueta","createTag":"Crear etiqueta","saveTag":"Guardar etiqueta","openCode":"Abrir en VS Code","openInsiders":"Abrir en VS Code Insiders","forcePush":"Forzar push","sync":"Sincronizar","push":"Push","publish":"Publicar","reset":"Restablecer","stashAll":"Guardar todo en stash","stageAll":"Preparar todo","unstageAll":"Quitar todo del área de preparación","confirmAction":"Confirmar","operationRunning":"Operación en curso…","loadingDetails":"Cargando commits y cambios…","commits":"Confirmaciones ({count})","changes":"Cambios ({count})","noCommits":"Ningún commit difiere de la rama base.","noChanges":"El worktree está limpio.","conflicted":"En conflicto","staged":"Preparado","unstaged":"Sin preparar","untracked":"Sin seguimiento","truncated":"Solo se muestran los primeros resultados compatibles.","status":"Estado","pullRequest":"Pull request","latestBuild":"Última compilación","openInGitHub":"Abrir en GitHub","openDetails":"Abrir detalles","openWorktreeDetails":"Abrir detalles de {branch}","hiddenTitle":"Worktrees ocultos","hiddenDescription":"Los worktrees ausentes se conservan siete días. Volver a detectarlos restaura sus metadatos.","noHidden":"No hay worktrees ocultos.","purge":"Purgar","purgeAll":"Purgar todo","review":{"APPROVED":"Aprobada","CHANGES_REQUESTED":"Cambios solicitados","REVIEW_REQUIRED":"Revisión necesaria","NONE":"Sin decisión"},"comments":"Comentarios: {count}"},"worktreeDetail":{"loading":"Cargando detalles del worktree…","notFound":"Worktree no encontrado","notFoundDescription":"Este worktree está ausente, oculto o ya no está disponible.","back":"Volver a worktrees","linked":"Vinculado","refresh":"Actualizar","inspectionOffline":"El agente está sin conexión. Los metadatos guardados siguen disponibles, pero no se pueden inspeccionar los commits ni los cambios.","inspectionUnavailable":"Este worktree no está disponible para inspección en vivo.","inspectionBusy":"Los commits y cambios se actualizarán cuando termine la operación activa.","inspectionUnsupported":"Actualiza el agente para inspeccionar commits y cambios.","inspectionFailed":"No se pudieron cargar los commits ni los cambios.","actions":"Acciones","workingTree":"Árbol de trabajo","overview":"Resumen","repository":"Repositorio","origin":"Origen","agent":"Agente","folder":"Carpeta","head":"Commit HEAD","upstream":"Rama ascendente","originStatus":"Estado del origen","baseStatus":"Actualidad de la base","lastChecked":"Última comprobación","lastFetched":"Última descarga","management":"Gestión"},"tools":{"title":"Herramientas","description":"Explora, configura y ejecuta herramientas MCP internas y externas.","addServer":"Añadir servidor MCP","search":"Buscar herramientas","searchPlaceholder":"Busca nombres, descripciones o servidores…","serversTitle":"Servidores MCP externos","serversDescription":"Administra proveedores HTTP con transmisión y SSE heredado.","loadingServers":"Cargando servidores MCP…","noServers":"No hay servidores MCP externos configurados.","name":"Nombre","url":"Dirección URL","transport":"Transporte","prefix":"Prefijo del nombre","actions":"Acciones","http":"HTTP (transmisión)","sse":"SSE (heredado)","editServer":"Editar {name}","delete":"Eliminar","deleteServer":"Eliminar {name}","confirmDelete":"¿Eliminar el servidor MCP?","confirmDeleteDescription":"¿Eliminar {name} y sus encabezados personalizados guardados?","catalogTitle":"Catálogo de herramientas","catalogDescription":"Expande una herramienta, introduce sus parámetros y revisa la respuesta completa.","refresh":"Actualizar herramientas","loadingTools":"Cargando herramientas…","noMatchingTools":"Ninguna herramienta coincide con la búsqueda.","addServerTitle":"Añadir servidor MCP externo","editServerTitle":"Editar servidor MCP externo","serverDialogDescription":"Los datos de conexión solo los usa el cliente MCP del servidor.","prefixHelp":"El prefijo se aplica literalmente al mostrar e invocar herramientas.","headers":"Encabezados personalizados","headersHelp":"Los valores se guardan localmente y nunca vuelven al navegador.","addHeader":"Añadir encabezado","noHeaders":"No hay encabezados personalizados.","headerName":"Nombre del encabezado","headerValue":"Valor del encabezado","keepHeaderValue":"Déjalo vacío para conservar el valor guardado","removeHeader":"Quitar encabezado","saveServer":"Guardar servidor","toolCount":"{count} herramientas","tool":"Herramienta","toolDescription":"Descripción","expandTool":"Expandir {name}","collapseTool":"Contraer {name}","noDescription":"No se proporcionó ninguna descripción.","parameters":"Parámetros","noParameters":"Esta herramienta no tiene parámetros.","run":"Ejecutar herramienta","running":"Ejecutando…","response":"Respuesta","copyResponse":"Copiar respuesta","copied":"Respuesta copiada","copyFailed":"No se pudo copiar la respuesta.","noResponse":"Ejecuta la herramienta para ver su respuesta.","selectValue":"Selecciona un valor","unset":"Sin definir","true":"Verdadero","false":"Falso","jsonArguments":"Argumentos (objeto JSON)","invalidJson":"Introduce un JSON válido.","invalidJsonObject":"Introduce un objeto JSON.","jsonObjectPlaceholder":"Introduce pares clave-valor como un objeto JSON","jsonPlaceholder":"Introduce JSON, por ejemplo []"},"skills":{"title":"Habilidades","description":"Gestiona paquetes reutilizables de habilidades de IA en la base de datos, clientes, agentes y repositorios.","manageGroups":"Gestionar grupos","settings":"Configuración","addSkill":"Añadir habilidad","syncAll":"Sincronizar todo","search":"Buscar habilidades","searchPlaceholder":"Buscar nombres, descripciones, grupos, repositorios, agentes o rutas…","database":"Base de datos","databaseSkills":"Habilidades de la base de datos","databaseSkillsDescription":"Paquetes de habilidades canónicos almacenados en el plano de control.","clientSkills":"Habilidades del cliente","clientSkillsDescription":"Paquetes de habilidades detectados en el cliente de IA seleccionado.","loading":"Cargando habilidades…","name":"Nombre","skillDescription":"Descripción","scope":"Ámbito","groups":"Grupos","files":"Archivos","updated":"Actualizado","global":"Global","project":"Proyecto","projectOnly":"Solo proyecto","noSkills":"Ninguna habilidad coincide con la búsqueda.","agent":"Agente","location":"Ubicación","status":"Estado","tracked":"Rastreado","inSync":"Sincronizado","toDatabase":"A la base de datos","conflict":"Conflicto","noClientSkills":"No se encontraron habilidades para este cliente.","settingsTitle":"Configuración de habilidades","settingsDescription":"Elige los clientes participantes y la sincronización automática de grupos.","autoSync":"Sincronizar automáticamente grupos de proyecto","autoSyncHelp":"Mantén los grupos asignados actualizados en todos los checkouts y worktrees.","enabledTools":"Clientes de IA habilitados","configured":"Configurado","configuredAgents":"{count} agentes configurados","notDetected":"No detectado","saveSettings":"Guardar configuración","skillNotFound":"Habilidad no encontrada.","loadingSkill":"Cargando habilidad…","backToSkills":"Volver a habilidades","newSkill":"Nueva habilidad","editorDescription":"Edita los metadatos y todos los archivos del paquete.","delete":"Eliminar","cancel":"Cancelar","deleteSkillDescription":"¿Eliminar {name} de la base de datos y sus copias gestionadas durante la sincronización?","deleteSkill":"¿Eliminar habilidad?","saveSkill":"Guardar habilidad","syncGlobally":"Sincronizar globalmente","syncGloballyHelp":"Incluye esta habilidad en la sincronización personal/global.","noGroups":"Todavía no hay grupos de habilidades.","packageFiles":"Archivos del paquete","addFiles":"Añadir o reemplazar archivos","download":"Descargar","removeFile":"Eliminar","rename":"Renombrar","executable":"Ejecutable","binaryFile":"Archivo binario. Descárgalo o reemplázalo para editarlo.","selectFile":"Selecciona un archivo","duplicateFile":"Ya existe un archivo con esa ruta.","skillGroups":"Grupos de habilidades","groupsDescription":"Agrupa habilidades de proyecto y asígnalas a repositorios.","groupsTableDescription":"Grupos de habilidades del proyecto y sus habilidades y repositorios asignados.","addGroup":"Añadir grupo","loadingGroups":"Cargando grupos…","skillsCount":"Habilidades","repositoriesCount":"Repositorios","newGroup":"Nuevo grupo","newGroupDescription":"Crea el grupo y luego elige habilidades y repositorios.","createGroup":"Crear grupo","groupNotFound":"Grupo no encontrado.","loadingGroup":"Cargando grupo…","backToGroups":"Volver a grupos","groupSettingsDescription":"Gestiona miembros, repositorios y despliegue.","deleteGroupDescription":"¿Eliminar {name} y las copias que ningún otro grupo necesite?","deleteGroup":"¿Eliminar grupo?","syncGroup":"Sincronizar grupo","saveGroup":"Guardar grupo","groupSkills":"Habilidades del grupo","searchSkills":"Buscar habilidades…","groupRepositories":"Repositorios que usan este grupo","searchRepositories":"Buscar repositorios…","syncRunNotFound":"Sincronización no encontrada.","loadingSync":"Cargando sincronización…","syncTitle":"Sincronización de habilidades","syncGroupName":"Sincronizando el grupo {name} en sus repositorios.","syncAllDescription":"Conciliando habilidades de base de datos, personales y de proyecto.","applySync":"Aplicar sincronización","skipPendingClients":"Omitir clientes pendientes","unknownAgent":"Agente desconocido","syncAgents":"Estado de sincronización de agentes","syncAgentsDescription":"Estado de conexión y sincronización de cada agente participante.","connection":"Conexión","operation":"Operación","syncStatus":"Estado de sincronización","syncChanges":"Cambios propuestos","syncChangesDescription":"Revisa los cambios y resuelve los conflictos antes de aplicar esta sincronización.","change":"Cambio","resolution":"Resolución","newSharedLocation":"Nueva ubicación compartida","chooseGroup":"Elige un grupo","useDatabase":"Usar base de datos","useTarget":"Usar copia del cliente","deleteClientCopy":"Eliminar copia del cliente","editManually":"Editar manualmente","compareAndResolve":"Comparar y resolver","skip":"Omitir","scanningAgents":"Buscando clientes habilitados…","noSyncChanges":"No se requieren cambios.","manualResolution":"Resolución manual","manualResolutionDescription":"Compara paquetes completos y edita el resultado canónico, incluidos archivos de texto, binarios y ejecutables.","startFromDatabase":"Empezar con la base de datos","startFromTarget":"Empezar con la copia del cliente","databaseVersion":"Versión de la base de datos","targetVersion":"Versión del cliente","resultVersion":"Resultado canónico","binaryPreview":"Archivo binario; compara el tamaño y los metadatos de ejecución.","missingFile":"Esta versión no contiene el archivo seleccionado.","filePath":"Ruta del archivo","missingResultFile":"Añade este archivo al resultado o selecciona otro archivo del paquete.","useManualVersion":"Usar versión editada"},"builds":{"title":"Compilaciones","description":"Configura, ejecuta, inspecciona, instala y exporta compilaciones de iOS en bases de código y worktrees.","build":"Compilar","history":"Historial","buildScripts":"Scripts de compilación","status":"Estado","destination":"Destino","duration":"Duración","durationValue":"Duración {duration}","actionsLabel":"Acciones","selectBuilds":"Seleccionar compilaciones","selectBuild":"Seleccionar compilación {id}","selectDate":"Seleccionar todas las compilaciones de {date}","deleteSelected":"Eliminar seleccionadas ({count})","deleteBuilds":"Eliminar compilaciones","deleteBuildsTitle":"¿Eliminar {count, plural, one {la compilación} other {# compilaciones}}?","deleteBuildsDescription":"Esto elimina permanentemente los registros y las carpetas de compilación seleccionados.","filterStatus":"Filtrar compilaciones por estado","allStatuses":"Todos los estados","loading":"Cargando compilaciones…","emptyTitle":"Todavía no hay compilaciones","emptyDescription":"Inicia una compilación desde un worktree para crear el primer registro inmutable.","durationSeconds":"{count} segundos","artifactCount":"{count, plural, one {# artefacto} other {# artefactos}}","viewBuild":"Ver compilación","loadMore":"Cargar más","newScript":"Nuevo script de compilación","noScripts":"No hay scripts de compilación","noScriptsDescription":"Crea hooks de JavaScript reutilizables y autorízalos después para repositorios concretos.","defaultEnabled":"Activado de forma predeterminada","preBuild":"Antes de compilar","postBuild":"Después de compilar","timeoutSeconds":"Tiempo límite de {count} segundos","edit":"Editar","deleteScript":"Eliminar script de compilación","editScript":"Editar script de compilación","scriptDescription":"Los hooks ESM de Node.js de confianza se ejecutan desde la raíz del worktree seleccionado con un entorno mínimo.","name":"Nombre","preBuildScript":"JavaScript previo a la compilación","postBuildScript":"JavaScript posterior a la compilación","preBuildScriptHelp":"Exporta de forma predeterminada una función que reciba buildId, branch, destination y action.","postBuildScriptHelp":"Exporta de forma predeterminada una función que también reciba buildFolder, failed, cancelled, errorCode y error.","timeout":"Tiempo límite en segundos","failureBehavior":"Comportamiento ante fallos","enabledByDefault":"Preseleccionar este script para las compilaciones","save":"Guardar","cancel":"Cancelar","startBuild":"Iniciar compilación","startBuildDescription":"Elige una configuración guardada y un destino. El comando se ejecuta desde la raíz de este worktree.","configuration":"Configuración","configurationInvalid":"El origen, esquema o configuración guardados no están disponibles en este worktree.","noConfigurations":"Crea una configuración de compilación de iOS válida en los ajustes del repositorio antes de iniciar una compilación.","reparse":"Volver a analizar","action":"Acción","destinationType":"Tipo de destino","simulator":"Simulador","physicalDevice":"Dispositivo físico","device":"Dispositivo","selectDevice":"Selecciona un dispositivo","anySimulator":"Cualquier simulador iOS","anyPhysicalDevice":"Cualquier dispositivo iOS físico","scripts":"Scripts de compilación","advancedSettings":"Ajustes avanzados","priorBuildForTesting":"Compilación previa para pruebas","selectPriorBuildForTesting":"Selecciona una compilación para pruebas compatible","noPriorBuildForTesting":"Ejecuta primero una compilación para pruebas correcta con esta configuración.","priorBuildSummary":"usa la compilación para pruebas {id}","developmentTeam":"Equipo de desarrollo","testPlan":"Plan de pruebas","schemeDefaultTestPlan":"Predeterminado del esquema","packageResolution":"Resolución de paquetes","codeCoverage":"Activar cobertura de código","allowProvisioningUpdates":"Permitir actualizaciones de aprovisionamiento","buildSettingOverrides":"Sobrescrituras permitidas de ajustes de compilación (JSON)","commandPreview":"Vista previa del comando","overridesInvalid":"Las sobrescrituras de ajustes de compilación deben ser un objeto JSON.","advancedJsonInvalid":"Los ajustes avanzados deben ser JSON válido.","buildNotFound":"Compilación no encontrada","buildNotFoundDescription":"Este registro de compilación no existe o ya no está disponible.","backToBuilds":"Volver a las compilaciones","buildId":"ID de compilación","deleteBuild":"Eliminar compilación","deleteBuildTitle":"¿Eliminar esta compilación?","deleteBuildDescription":"Esto elimina permanentemente el registro y su carpeta de compilación.","downloadArtifact":"Descargar","cancelBuild":"Cancelar compilación","rebuild":"Volver a compilar","outOfDate":"Desactualizada","configureBuilds":"Ve a los ajustes del repositorio para configurar las compilaciones","selectedDevices":"{count} dispositivos","selectRunDevices":"Dispositivos de ejecución","noCompatibleDevices":"No hay destinos conectados compatibles disponibles.","run":"Ejecutar","exportArchive":"Exportar archivo","logs":"Registros","noLogs":"No se han recibido eventos de registro.","scrollLogsToTop":"Ir al inicio de los registros","scrollLogsToBottom":"Ir al final de los registros","commandSummary":"Resumen del comando","copyCommand":"Copiar resumen del comando","commandCopied":"Resumen del comando copiado","copyFailed":"No se pudo copiar al portapapeles.","noScriptExecutions":"No se seleccionaron scripts de compilación.","overview":"Resumen","scheme":"Esquema","head":"Confirmación","startedAt":"Inicio","finishedAt":"Fin","artifactDirectory":"Carpeta de compilación","artifacts":"Artefactos","noArtifacts":"No se capturaron artefactos.","runsAndExports":"Ejecuciones y exportaciones","archiveExport":"Exportación del archivo","noRunsOrExports":"Esta compilación aún no se ha ejecutado ni exportado.","exportArchiveDescription":"Exporta localmente el .xcarchive capturado sin subirlo.","distributionMethod":"Método de distribución","signingStyle":"Estilo de firma","automatic":"Automático","manual":"Manual","iosApp":"App iOS","parseCheckout":"Copia usada para analizar","parseCheckoutDescription":"Las configuraciones guardadas se comparten en todo el repositorio. El descubrimiento, la validación y el estado de análisis usan la copia del agente seleccionada.","checkoutUnavailable":"no disponible","addIosProject":"Añadir proyecto de aplicación iOS","addIosProjectDescription":"Activa configuraciones de compilación de Xcode reutilizables para cada checkout y worktree de este repositorio.","sharedProjectDescription":"Las definiciones del proyecto y los scripts permitidos se comparten en el repositorio. El estado de análisis inferior procede de este checkout del agente.","buildConfigurations":"Configuraciones de compilación","newConfiguration":"Nueva configuración","lastParsed":"Analizado: {value}","neverParsed":"Nunca analizado","stale":"metadatos desactualizados","savedValueUnavailable":"valor guardado no disponible","deleteConfiguration":"Eliminar configuración de compilación","allowedScripts":"Scripts de compilación permitidos","createScriptsOnBuildsPage":"Crea scripts reutilizables en la página Compilaciones y vuelve aquí para autorizarlos.","editConfiguration":"Editar configuración de compilación","configurationDescription":"Selecciona un origen de Xcode relativo al repositorio y guarda su esquema, configuración, acción y ajustes avanzados opcionales.","icon":"Icono","source":"Origen de Xcode","selectSource":"Selecciona un proyecto, workspace o Package.swift de la raíz","loadingSources":"Buscando orígenes…","defaultAction":"Acción predeterminada","advancedJson":"Ajustes avanzados normalizados (JSON)","statuses":{"QUEUED":"En cola","PREPARING":"Preparando","RUNNING":"En curso","SUCCEEDED":"Correcta","FAILED":"Fallida","CANCELLED":"Cancelada"},"actions":{"BUILD":"Compilar","TEST":"Probar","ANALYZE":"Analizar","ARCHIVE":"Archivar","BUILD_FOR_TESTING":"Compilar para pruebas","TEST_WITHOUT_BUILDING":"Probar sin compilar"},"failureBehaviors":{"FAIL_BUILD":"Hacer fallar la compilación","CONTINUE":"Continuar con una advertencia"}},"status":{"online":"en línea","offline":"sin conexión","queued":"en cola","running":"en ejecución","succeeded":"completado","failed":"fallido","cancelled":"cancelado","timed_out":"tiempo agotado"}}')}];
1
+ module.exports=[756817,(a,b,c)=>{b.exports=JSON.parse('{"metadata":{"title":"AI Development Environment","description":"Un entorno de desarrollo centrado en la inteligencia artificial."},"common":{"cancel":"Cancelar","continue":"Continuar","cannotBeUndone":"Esta acción no se puede deshacer."},"shell":{"productName":"AI Development Environment","welcome":"Bienvenido","dashboard":"Panel de control","navigation":"Navegación","navigationDescription":"Navegación principal de AI Development Environment.","notifications":"Notificaciones","notificationsDescription":"Actualizaciones y alertas de notificaciones.","showNavigation":"Mostrar navegación","hideNavigation":"Ocultar navegación","closeNavigation":"Cerrar navegación","showNotifications":"Mostrar notificaciones","hideNotifications":"Ocultar notificaciones","closeNotifications":"Cerrar notificaciones","codebases":"Bases de código","worktrees":"Árboles de trabajo","buildData":"Datos de compilación","builds":"Compilaciones","agents":"Agentes","usage":"Uso","github":"GitHub","pullRequests":"Solicitudes de extracción","actions":"Acciones","comments":"Comentarios","jira":"Jira","tickets":"Incidencias","cache":"Caché","system":"Sistema","skills":"Habilidades","tools":"Herramientas","settings":"Configuración"},"agents":{"title":"Agentes","description":"Gestiona los Macs inscritos y los trabajos duraderos desde un único plano de control.","refresh":"Actualizar","enroll":"Registrar agente","enrollmentTitle":"Comando de registro de un solo uso","enrollmentDescription":"Ejecuta este comando en el Mac después de instalar control-agent. El Mac se conecta de forma saliente; no abre ningún puerto de escucha.","serverAddress":"Dirección del servidor","copy":"Copiar comando","copyFailed":"No se pudo copiar el comando. Selecciónalo y cópialo manualmente.","expires":"El token caduca el {date}","loading":"Cargando agentes…","emptyTitle":"No hay agentes registrados","emptyDescription":"Crea un comando de registro para vincular tu primer Mac.","version":"Versión","platform":"Plataforma","lastSeen":"Visto por última vez","never":"Nunca"},"usage":{"title":"Uso","description":"Consulta el uso de tokens y el coste de todos los Macs registrados.","refresh":"Actualizar uso","rangeLabel":"Intervalo de uso","allData":"Todos los datos","last7Days":"7 días","last30Days":"30 días","loading":"Cargando agentes…","noAgents":"No hay agentes registrados","noAgentsDescription":"Registra un Mac antes de recopilar el uso.","noCompatible":"No hay agentes compatibles en línea","noCompatibleDescription":"Actualiza control-agent en un Mac en línea para añadir la función ccusage.","noOnline":"No hay agentes en línea","noOnlineDescription":"Conecta un Mac registrado antes de recopilar el uso.","collectionFailed":"Falló la recopilación de uso","collectionFailedDescription":"Ningún agente devolvió un informe ccusage válido. Revisa los errores anteriores e inténtalo de nuevo.","zeroUsage":"No se encontró uso","zeroUsageDescription":"Los agentes respondieron correctamente, pero ccusage no encontró uso diario.","noUsageInRange":"No hay uso en este intervalo","noUsageInRangeDescription":"Elige un intervalo más amplio para ver el uso anterior.","progress":"{complete} de {total} agentes compatibles informaron","offlineAgents":"Sin conexión: {agents}","unsupportedAgents":"Actualización necesaria: {agents}","failedAgents":"Con errores: {agents}","costChartTitle":"Coste diario por modelo","costChartDescription":"Uso diario acumulado en USD para el intervalo seleccionado.","totalCost":"Coste total","totalTokens":"Tokens totales","inputTokens":"Tokens de entrada","outputTokens":"Tokens de salida","cacheCreationTokens":"Tokens de creación de caché","cacheReadTokens":"Tokens de lectura de caché","usage":"Uso","input":"Entrada","output":"Salida","cacheCreation":"Creación de caché","cacheRead":"Lectura de caché","total":"Total","cost":"Coste","grandTotal":"Total general","unattributedTokens":"Tokens sin atribuir","modelCount":"{count} modelos","agentCount":"{count} agentes","showModels":"Mostrar modelos del {date}","hideModels":"Ocultar modelos del {date}","showAgents":"Mostrar agentes que usan {model}","hideAgents":"Ocultar agentes que usan {model}"},"agentDetail":{"back":"Agentes","loading":"Cargando agente…","notFound":"No se encontró el agente.","version":"Versión","lastSeen":"Visto por última vez","never":"Nunca","generalInformation":"Información general","generalInformationDescription":"El hardware y el uso de recursos se actualizan con cada señal del agente.","cpuModel":"Modelo de CPU","operatingSystem":"Sistema operativo","architecture":"Arquitectura","ipAddress":"Dirección IP","memory":"Memoria","disk":"Espacio en disco","used":"Usado","free":"Libre","unavailable":"No disponible","capabilities":"Capacidades","capabilitiesDescription":"Busca las capacidades anunciadas por este agente, ejecuta una e inspecciona su respuesta en vivo.","searchCapabilities":"Buscar capacidades","searchCapabilitiesPlaceholder":"Buscar nombres de capacidades…","noMatchingCapabilities":"Ninguna capacidad coincide con esta búsqueda.","capability":"Capacidad","kind":"Tipo","event":"Evento","job":"Trabajo","expandCapability":"Expandir {capability}","collapseCapability":"Contraer {capability}","eventCapabilityDescription":"Este evento solicita una reconciliación inmediata de las bases de código y no acepta datos.","payload":"Datos (objeto JSON)","invoke":"Ejecutar capacidad","invokeOffline":"Conecta este agente antes de ejecutar una capacidad.","noCapabilityResponse":"Ejecuta la capacidad para ver su respuesta.","codebases":"Bases de código","codebasesDescription":"Bases de código registradas en este agente.","noCodebases":"No hay bases de código registradas en este agente.","repository":"Repositorio","status":"Estado","created":"Creado","finished":"Finalizado","selectJob":"Seleccionar {kind}","runTitle":"Ejecutar túnel de Cloudflared","runDescription":"Inicia el controlador permitido de cloudflared en este Mac. Seguirá ejecutándose en el servicio del agente cuando abandones esta página.","tunnelName":"Nombre del túnel","tunnelPlaceholder":"tunel-desarrollo","queuing":"Añadiendo a la cola…","run":"Ejecutar","history":"Historial de trabajos","noJobs":"No se ha ejecutado ningún trabajo en este agente.","baseRepoDirectory":"Directorio base de repositorios","baseRepoDirectoryDescription":"Elige la carpeta de este agente que contiene sus repositorios. Las rutas de los worktrees que estén dentro se mostrarán relativas a esta carpeta.","currentDirectory":"Directorio actual","notConfigured":"Sin configurar","useDirectory":"Usar este directorio","clearDirectory":"Borrar directorio","directoryBrowsingUnavailable":"Conecta este agente y actualízalo si es necesario para explorar directorios.","derivedDataLocation":"Derived Data de Xcode","derivedDataLocationDescription":"Elige dónde guarda este agente el DerivedData de Xcode.","derivedDataMode":"Modo de ubicación","derivedDataDefault":"Ubicación predeterminada de Xcode","derivedDataAbsolute":"Directorio absoluto personalizado","derivedDataRelative":"Relativo a cada árbol de trabajo","derivedDataAbsolutePath":"Directorio absoluto","derivedDataRelativePath":"Ruta de carpeta relativa","derivedDataAbsoluteHelp":"Introduce una ruta absoluta en este agente o elige un directorio existente.","derivedDataRelativeHelp":"Esta carpeta se comprueba bajo cada árbol de trabajo activo registrado.","saveDerivedDataSettings":"Guardar configuración de Derived Data","buildsDirectory":"Directorio de compilaciones","buildsDirectoryDescription":"Los registros, productos copiados, archivos y exportaciones se guardan en una carpeta por compilación. De forma predeterminada se añade /Builds al directorio base de repositorios, salvo que se indique otro aquí.","browseBuildsDirectory":"Explorar directorio de compilaciones","effectiveDirectory":"Directorio efectivo","agentDefault":"Valor predeterminado del repositorio base","customBuildsDirectory":"Directorio absoluto personalizado","saveBuildsDirectory":"Guardar directorio de compilaciones","useAgentDefault":"Usar valor predeterminado del repositorio base","deleteAgent":"Eliminar agente","deleteAgentTitle":"¿Eliminar este agente?","deleteAgentDescription":"Eliminar permanentemente {name} y todos sus trabajos y registros de bases de código. Esta acción no se puede deshacer."},"buildData":{"title":"Datos de compilación","description":"Inspecciona y limpia el DerivedData de Xcode en los agentes registrados.","refresh":"Actualizar","calculateSizes":"Calcular tamaños","loading":"Buscando Derived Data…","emptyTitle":"No se encontró Derived Data","emptyDescription":"Los directorios DerivedData configurados no contienen entradas.","progress":"Se analizaron {complete} de {total} agentes aptos","selected":"{count} seleccionados","deleteSelected":"Eliminar seleccionados","selectAll":"Seleccionar todas las entradas de Derived Data","selectEntry":"Seleccionar {name}","folder":"Carpeta","worktree":"Ruta del árbol de trabajo","size":"Uso de disco","agent":"Agente","actions":"Acciones","entryActions":"Acciones para {name}","deleteEntry":"Eliminar {name}","confirmDeleteEntry":"Confirmar eliminación de {name}","confirmDelete":"Confirmar","delete":"Eliminar","deleteTitle":"¿Eliminar Derived Data?","deleteDescription":"¿Eliminar permanentemente {count} entradas seleccionadas? Esta acción no se puede deshacer.","history":"Historial de eliminaciones","historyDescription":"Derived Data eliminado de los agentes registrados durante los últimos 90 días.","clearHistory":"Borrar historial","clearHistoryTitle":"¿Borrar el historial?","clearHistoryDescription":"¿Eliminar todos los registros conservados? Esto no afecta a los archivos de los agentes.","loadingHistory":"Cargando historial…","noHistory":"Todavía no se ha eliminado Derived Data.","deleted":"Eliminado","sourceLabel":"Origen","loadMore":"Cargar más","status":{"UNLINKED":"Sin vincular","PENDING":"Compilación iniciándose","SHARED_CACHE":"Caché compartida"},"source":{"USER":"Usuario","AUTOMATIC":"Automático"},"agentStatus":{"QUEUING":"en cola","QUEUED":"en cola","RUNNING":"analizando","SUCCEEDED":"completado","FAILED":"falló","CANCELLED":"cancelado","TIMED_OUT":"tiempo agotado","OFFLINE":"sin conexión","UNSUPPORTED":"se requiere actualizar el agente","INVALID":"respuesta no válida"}},"jobs":{"back":"Agentes","open":"Abrir trabajo","cancel":"Cancelar","loading":"Cargando trabajo…","notFound":"No se encontró el trabajo.","waiting":"Esperando la salida…"},"jiraTickets":{"title":"Incidencias de Jira","description":"Consulta por estado los proyectos, tableros y consultas JQL guardados.","refresh":"Actualizar","manage":"Administrar","showBoardLayout":"Vista de tablero","showTableLayout":"Vista de tabla","collapseStatus":"Contraer {status}","expandStatus":"Expandir {status}","issueType":"Tipo de incidencia","priority":"Prioridad","loading":"Cargando proyectos de Jira…","loadingTickets":"Cargando incidencias…","loadingTicket":"Cargando detalles de la incidencia…","emptyProjects":"Aún no hay proyectos de Jira","emptyProjectsDescription":"Configura Jira y después añade un proyecto con su primera fuente.","emptySources":"Este proyecto no tiene fuentes","emptySourcesDescription":"Añade una consulta JQL con nombre o una URL de tablero.","emptyTickets":"Ninguna incidencia coincide con esta fuente.","addProject":"Añadir proyecto","addSource":"Añadir fuente","projectTabs":"Proyectos de Jira","sourceTabs":"Fuentes de incidencias","staleWarning":"No se pudo contactar con Jira; se muestran datos caducados de la caché.","truncatedWarning":"Esta fuente supera las 1000 incidencias. Refínala para ver el resto.","issue":"Incidencia","unassigned":"Sin asignar","manageTitle":"Administrar proyectos y fuentes de Jira","manageDescription":"Los proyectos vienen de Jira y cada fuente se valida antes de guardarse.","projects":"Proyectos","availableProjects":"Proyectos disponibles en Jira","selectProject":"Selecciona un proyecto","sourceCount":"{count} fuentes","removeProject":"Quitar proyecto","confirmRemoveProject":"¿Quitar este proyecto y todas sus fuentes guardadas?","sourcesFor":"Fuentes de {project}","displaySettings":"Configuración de visualización","displaySettingsDescription":"Esta configuración solo se aplica a este proyecto.","ticketsToShow":"Incidencias que mostrar","allTickets":"Todas las incidencias","unassignedOrSelfAssigned":"Sin asignar o asignadas a mí","selfAssignedInProgress":"Mis incidencias en curso","hideCompletedTickets":"Ocultar incidencias completadas","hideCompletedTicketsDescription":"Elige qué estados del proyecto cuentan como completados.","completedStatuses":"Estados completados","loadingStatuses":"Cargando estados…","selectCompletedStatuses":"Seleccionar estados completados","saveDisplaySettings":"Guardar configuración de visualización","branchNaming":"Nombres de ramas","branchNamingDescription":"Esta función se usa al crear una rama de worktree desde un ticket de este proyecto.","branchNamingFunction":"Función JavaScript para nombrar ramas","branchNamingFunctionHelp":"Recibe ticketKey, type, title y alreadyTaken. Devuelve un nombre de rama Git válido; alreadyTaken se omite en la primera llamada.","saveBranchNaming":"Guardar nombres de ramas","sourceName":"Nombre de la fuente","sourceType":"Tipo de fuente","boardUrl":"URL del tablero","editSource":"Editar fuente","deleteSource":"Eliminar fuente","confirmDeleteSource":"¿Eliminar esta fuente y sus entradas de caché relacionadas?","saveSource":"Guardar fuente","cancel":"Cancelar","done":"Listo","ticket":"Incidencia","staleTicket":"Algunos datos están caducados porque Jira no respondió.","openInJira":"Abrir en Jira","worktreeAction":"Crear worktree","ticketWorktreeTitle":"Crear desde {issueKey}","ticketWorktreeDescription":"Crea un worktree nuevo en un agente o crea la rama del ticket y cambia un worktree existente a ella.","newWorktree":"Worktree nuevo","existingWorktree":"Worktree existente","agentAndCodebase":"Agente y base de código","selectWorktreeDestination":"Seleccionar un destino","searchWorktreeDestinations":"Buscar worktrees, agentes y bases de código","noWorktreeDestinations":"No hay destinos compatibles y conectados disponibles.","chooseWorktreeDestination":"Elige dónde se debe crear la rama del ticket.","loadingWorktreeDestinations":"Cargando destinos de worktree…","ticketWorktreeCreated":"Se creó el worktree del ticket.","ticketBranchChanged":"Se creó la rama del ticket y el worktree cambió a ella.","createTicketWorktree":"Crear worktree del ticket","createAndSwitchBranch":"Crear y cambiar de rama","ticketStashRetryHelp":"Git no pudo cambiar con los cambios actuales. Guarda en stash los cambios rastreados y no rastreados y vuelve a intentarlo.","stashAndRetry":"Guardar en stash y reintentar","detachedBranch":"HEAD separado","descriptionTitle":"Descripción","classification":"Clasificación","labels":"Etiquetas","components":"Componentes","fixVersions":"Versiones de corrección","sprints":"Sprints","relatedIssues":"Incidencias relacionadas","attachments":"Archivos adjuntos","comments":"Comentarios ({count})","noComments":"Esta incidencia no tiene comentarios.","unknownUser":"Usuario desconocido","assignee":"Responsable","reporter":"Informador","created":"Creada","updated":"Actualizada","due":"Vencimiento","resolved":"Resuelta","affectedVersions":"Versiones afectadas","openFullDetails":"Abrir detalles completos","renderFormat":"Formato de visualización","markdown":"Formato Markdown","jiraWiki":"Wiki de Jira","viewRendered":"Ver formato","viewRaw":"Ver texto original","rendered":"Formato","raw":"Original","copied":"Copiado","copy":"Copiar","commentActions":"Acciones del comentario","copyRaw":"Copiar contenido original","copyFailed":"No se pudo copiar el contenido.","authoringFormat":"Formato de escritura","preview":"Vista previa","hidePreview":"Ocultar vista previa","commentBody":"Comentario","commentPlaceholder":"Escribe un comentario…","saving":"Guardando…","addComment":"Añadir comentario","changeAssignee":"Cambiar responsable","searchAssignees":"Buscar usuarios asignables","loadingAssignees":"Cargando usuarios…","noAssignees":"No se encontraron usuarios asignables.","status":"Estado","changeStatus":"Cambiar estado","requiresJira":"Requiere Jira"},"jiraTicketDetail":{"loading":"Cargando incidencia de Jira…","notFound":"Incidencia no encontrada","notFoundDescription":"No se pudo cargar la incidencia de Jira.","back":"Volver a incidencias de Jira","summary":"Resumen","save":"Guardar","editSummary":"Editar resumen","refresh":"Actualizar","edit":"Editar","saveDescription":"Guardar descripción","descriptionHistory":"Historial de la descripción","descriptionHistoryDescription":"Selecciona dos versiones de la actividad de Jira para comparar su texto.","currentVersion":"Versión actual","beforeChange":"Antes de {date}","afterChange":"Después de {date}","loadingHistory":"Cargando historial…","noDescriptionHistory":"No hay versiones anteriores de la descripción.","compareFrom":"Comparar desde","compareTo":"Comparar hasta","compareVersions":"Comparar versiones","descriptionComparison":"Comparación de la descripción","selectVersions":"Selecciona dos versiones diferentes para comparar.","activity":"Actividad","comments":"Comentarios","history":"Historial","worklogs":"Registros de trabajo","unknownUser":"Usuario desconocido","noHistory":"No hay historial disponible.","loadMore":"Cargar más","started":"Iniciado {date}","noWorklogs":"No hay registros de trabajo.","allFields":"Todos los campos de Jira","expandFields":"Mostrar campos","collapseFields":"Ocultar campos","searchFields":"Buscar campos","field":"Campo","value":"Valor","custom":"Personalizado","details":"Detalles","editDetails":"Editar detalles de la incidencia","editDetailsDescription":"Solo se muestran los campos que Jira permite editar.","none":"Ninguno","commaSeparated":"Valores separados por comas","pickDate":"Elegir una fecha","clearDate":"Borrar fecha","saving":"Guardando…"},"jiraCache":{"title":"Caché de Jira","description":"Inspecciona datos almacenados, uso de API, latencia y errores.","ttl":"TTL de caché en minutos","saveTtl":"Guardar TTL","clearCache":"Vaciar caché","confirmClear":"¿Vaciar todas las respuestas e incidencias de Jira? Se conservará el historial.","loading":"Cargando actividad de la caché…","average":"Media de {ms} ms","live":"Directas","cache":"Caché","errors":"Errores","operationsTitle":"Operaciones de API","operationsDescription":"Recuentos por operación y origen en cada periodo móvil.","noMetrics":"No hubo actividad de la API de Jira en las últimas 24 horas.","operation":"Operación","recentTitle":"Llamadas recientes a la API","recentDescription":"Cada operación almacenada del SDK, empezando por la más reciente.","noCalls":"No se ha registrado ninguna llamada a Jira.","time":"Hora","fetched":"Datos obtenidos","source":"Origen","sources":{"LIVE":"Directa","CACHE":"Caché","ERROR":"Error"},"duration":"Duración","error":"Error","stale":"Caducada","ticketsTitle":"Incidencias en caché","ticketsDescription":"Cobertura de resumen, detalle y comentarios para incidencias de Jira.","noTickets":"No hay incidencias de Jira almacenadas.","ticket":"Incidencia","status":"Estado","coverage":"Cobertura","freshness":"Vigencia","fresh":"Vigente","lastFetched":"Última obtención","actions":"Acciones","open":"Abrir","refresh":"Actualizar","delete":"Eliminar","confirmDeleteTicket":"¿Eliminar {issueKey} y todas las entradas que la referencian?","showing":"Mostrando {start}–{end} de {total}","previous":"Anterior","next":"Siguiente"},"jiraCacheDetail":{"back":"Caché de Jira","description":"Datos almacenados de la incidencia","refresh":"Actualizar incidencia","delete":"Eliminar de la caché","confirmDelete":"¿Eliminar {issueKey} y sus entradas relacionadas?","loading":"Cargando incidencia almacenada…","notFound":"Esta incidencia no está en la caché de Jira.","coverage":"Cobertura","freshness":"Vigencia","fresh":"Vigente","stale":"Caducada","detailFetched":"Detalle obtenido","commentsFetched":"Comentarios obtenidos","summaryData":"Respuesta de resumen","detailData":"Respuesta de detalle completo","commentsData":"Respuesta completa de comentarios","notFetched":"Este nivel de datos todavía no se ha obtenido.","relatedEntries":"Entradas de caché relacionadas","noEntries":"Ninguna entrada referencia esta incidencia.","operation":"Operación","fetchedAt":"Obtenido el","entryId":"ID de entrada de caché"},"jiraSettings":{"title":"Configuración","description":"Configura la cuenta de Jira Cloud que usa esta aplicación.","loading":"Cargando configuración de Jira…","credentials":"Credenciales de Jira","configured":"Token configurado","notConfigured":"Token sin configurar","siteUrl":"URL del sitio de Jira Cloud","siteUrlHelp":"Usa la URL base *.atlassian.net de tu sitio Jira.","email":"Correo de la cuenta Jira","apiToken":"Token de API de Jira","tokenPlaceholder":"Pega un token de API de Atlassian","tokenPlaceholderConfigured":"Déjalo vacío para conservar el token","tokenHelp":"El token se guarda en SQLite local y nunca vuelve al navegador.","tokenKeepHelp":"Déjalo vacío salvo que quieras sustituir el token guardado.","save":"Guardar configuración","test":"Probar conexión","remove":"Quitar credenciales","saved":"Configuración de Jira guardada.","connectionSucceeded":"La conexión con Jira se realizó correctamente.","removed":"Credenciales eliminadas y datos de Jira en caché borrados.","confirmSiteChange":"Cambiar de sitio elimina proyectos, fuentes y caché. ¿Continuar?","confirmRemove":"¿Quitar el correo y token guardados y borrar la caché de Jira?"},"settings":{"title":"Configuración","description":"Configura las integraciones utilizadas por esta aplicación."},"editorSettings":{"title":"Editor de worktrees","description":"Elige la edición de VS Code que abre los worktrees u oculta esas acciones.","loading":"Cargando ajustes del editor…","label":"Editor","code":"Visual Studio Code (versión estable)","insiders":"Visual Studio Code (canal Insiders)","none":"Ninguno (ocultar botones)","save":"Guardar editor","saved":"Se guardó el ajuste del editor."},"githubSettings":{"title":"Credenciales de GitHub","description":"Conecta la cuenta utilizada para cargar solicitudes de extracción y GitHub Actions.","loading":"Cargando la configuración de GitHub…","configured":"Token configurado","notConfigured":"Token no configurado","apiToken":"Token de acceso personal de GitHub","tokenPlaceholder":"Pega un token de acceso personal de GitHub","tokenPlaceholderConfigured":"Déjalo en blanco para conservar el token guardado","tokenHelp":"Concede acceso de lectura y escritura a las solicitudes de extracción y acceso de lectura a Actions en los repositorios que quieras usar. El token permite ver solicitudes, actuar en hilos de revisión y consultar ejecuciones.","tokenKeepHelp":"Déjalo en blanco salvo que quieras reemplazar el token guardado.","save":"Guardar configuración","test":"Probar conexión","remove":"Eliminar credenciales","saved":"Configuración de GitHub guardada.","connectionSucceeded":"La conexión con GitHub se realizó correctamente.","removed":"Se eliminaron las credenciales de GitHub. Se conservaron los repositorios gestionados.","confirmRemove":"¿Eliminar las credenciales de GitHub?","confirmRemoveDescription":"Se eliminará el token guardado. Se conservarán los repositorios gestionados y las expresiones de Jira."},"githubAppSettings":{"title":"Reintentos de canalización con GitHub App","description":"Usa tu propia GitHub App para volver a ejecutar flujos de GitHub Actions.","loading":"Cargando la configuración de la GitHub App…","verified":"Verificada","notConfigured":"Sin configurar","setupTitle":"Configura tu propia GitHub App","stepRegister":"Registra una GitHub App con un nombre único, como «Reintentos del entorno de IA», desde","registerLink":"Crear una GitHub App","stepHomepage":"Usa","stepHomepageSuffix":" como URL de inicio. Deja vacía la URL de retorno y desactiva los webhooks.","stepPermissions":"Configura Repository permissions → Actions como Read and write. Metadata queda automáticamente en solo lectura; no hace falta permiso de Checks.","stepInstall":"Crea la app, genera una clave privada e instálala solo en los repositorios que deba controlar este despliegue.","stepInstallationId":"Después de instalarla, abre la página Configure de la app. El ID de instalación es el último número de la URL, por ejemplo","stepInstallationIdSuffix":". Sustituye Organization-name por tu organización y copia el valor ID final.","stepCredentials":"Copia el ID de la app y el ID de instalación, y pega ambos junto con el PEM descargado.","appId":"ID de la GitHub App","appIdPlaceholder":"Introduce el ID numérico de la app","installationId":"ID de la instalación","installationIdPlaceholder":"Introduce el ID numérico de instalación","privateKey":"Clave privada en PEM","privateKeyDropZone":"Zona para soltar la clave privada PEM","pemDropHint":"Suelta aquí un archivo .pem o pega la clave debajo.","pemFileLoaded":"Se cargó {filename}. Guarda y verifica para usar esta clave.","pemFileInvalid":"Suelta un archivo .pem válido que contenga una clave privada RSA.","pemFileReadError":"No se pudo leer el archivo PEM soltado.","privateKeyPlaceholder":"Pega el PEM descargado de la GitHub App","privateKeyPlaceholderConfigured":"Déjalo vacío para conservar la clave configurada","privateKeyHelp":"La clave solo se envía al servidor Next.js y nunca se devuelve al navegador.","privateKeyKeepHelp":"Hay una clave privada configurada. Pega otro PEM solo cuando quieras rotarla.","connectedAs":"Conectada a {app} en {account}","connectionDetails":"Actions: {permission}; repositorios: {selection}","lastVerified":"Última verificación: {date}","save":"Guardar y verificar","rotate":"Rotar clave y verificar","test":"Probar conexión","remove":"Eliminar GitHub App","saved":"La GitHub App se guardó y verificó.","rotated":"La clave privada de la GitHub App se rotó y verificó.","connectionSucceeded":"Se verificó la conexión de la GitHub App.","removed":"Se eliminaron las credenciales de la GitHub App. Se conservaron el token personal y los repositorios gestionados.","confirmRemove":"¿Eliminar las credenciales de la GitHub App?","confirmRemoveDescription":"Se eliminarán el ID de app, el ID de instalación y la clave privada. Se conservarán las credenciales de solicitudes y los repositorios gestionados."},"pullRequests":{"title":"Solicitudes de extracción","description":"Revisa tus solicitudes de GitHub y los repositorios supervisados en un solo lugar.","refresh":"Actualizar","manage":"Gestionar","loading":"Cargando la configuración de GitHub…","credentialsRequired":"Conecta GitHub para ver solicitudes de extracción","credentialsRequiredDescription":"Añade un token de acceso personal en Configuración antes de cargar datos de GitHub.","openSettings":"Abrir Configuración","tabsLabel":"Vistas de solicitudes de extracción","mine":"Mías","reviewRequests":"Solicitudes de revisión","repositories":"Repositorios","stateFilter":"Estado de la solicitud de extracción","repositoryFilter":"Repositorio","selectRepository":"Seleccionar un repositorio","searchRepositories":"Buscar repositorios","searchAvailableRepositories":"Buscar repositorios disponibles","noRepositoryMatches":"Ningún repositorio coincide con la búsqueda.","truncated":"La búsqueda de GitHub devuelve como máximo 1000 resultados. Ajusta tu carga de trabajo en GitHub para ver los resultados que superen este límite.","loadingPullRequests":"Cargando solicitudes de extracción…","loadingMore":"Cargando más…","retryLoad":"Intentar de nuevo","empty":"No hay solicitudes de extracción","emptyDescription":"Actualmente no hay solicitudes de extracción que coincidan con esta vista.","repository":"Repositorio","number":"Número","pullRequest":"Solicitud de extracción","pullRequestAndRepository":"Solicitud de extracción / Repositorio","labels":"Etiquetas","ticket":"Incidencia","pipeline":"Canalización","approval":"Aprobación","openComments":"Comentarios abiertos","viewOpenComments":"Ver {count} comentarios abiertos","age":"Antigüedad","actions":"Acciones","details":"Detalles","openInGitHub":"Abrir en GitHub","merge":"Fusionar","mergePullRequest":"Fusionar pull request","mergePullRequestDescription":"Fusiona {repository} #{number} después de revisar los detalles del commit.","loadingMergeOptions":"Comprobando requisitos de fusión…","mergeType":"Tipo de fusión","selectMergeType":"Seleccionar un tipo de fusión","mergeTypes":{"SQUASH":"Combinar commits y fusionar","MERGE":"Crear un commit de fusión","REBASE":"Rebase y fusión"},"commitMessage":"Mensaje del commit","commitDescription":"Descripción del commit","commitEmail":"Correo del commit","githubDefaultEmail":"Usar el valor predeterminado de GitHub","cancelMerge":"Cancelar","merging":"Fusionando…","pipelineStates":{"ACTION_REQUIRED":"Acción necesaria","CANCELLED":"Cancelado","ERROR":"Error","EXPECTED":"Esperado","FAILURE":"Fallido","IN_PROGRESS":"En curso","NEUTRAL":"Neutral","PENDING":"Pendiente","QUEUED":"En cola","SKIPPED":"Omitido","STALE":"Obsoleto","STARTUP_FAILURE":"Error de inicio","SUCCESS":"Correcto","TIMED_OUT":"Tiempo agotado","NONE":"Sin comprobaciones"},"pipelineMenuTitle":"Estado de las canalizaciones","noPipelines":"No se han informado comprobaciones de canalización.","retry":"Reintentar","retrying":"Reintentando…","retryUnavailable":{"GITHUB_APP_NOT_CONFIGURED":"Configura y verifica una GitHub App en Ajustes para volver a ejecutar este flujo.","NOT_COMPLETED":"Solo se pueden reintentar los flujos completados.","NOT_GITHUB_ACTIONS":"Solo se pueden reintentar ejecuciones de GitHub Actions.","WORKFLOW_RUN_UNAVAILABLE":"GitHub no proporcionó una ejecución para este conjunto de comprobaciones."},"reviewStates":{"APPROVED":"Aprobada","CHANGES_REQUESTED":"Cambios solicitados","REVIEW_REQUIRED":"Revisión necesaria","NONE":"Sin decisión"},"pullRequestStates":{"ALL":"Todas","OPEN":"Abierta","CLOSED":"Cerrada","MERGED":"Fusionada"},"mergeableStates":{"CONFLICTING":"Con conflictos","MERGEABLE":"Se puede fusionar","UNKNOWN":"Calculando"},"manageTitle":"Gestionar repositorios de GitHub","manageDescription":"Elige las pestañas de repositorio y configura cómo se extraen las claves de Jira de los títulos.","manageCredentialsRequired":"Configura las credenciales de GitHub antes de añadir repositorios.","managedRepositories":"Repositorios gestionados","noManagedRepositories":"Todavía no hay repositorios gestionados.","addRepository":"Añadir repositorio","browse":"Explorar","enterManually":"Introducir manualmente","privateRepository":"Repositorio privado","managed":"Gestionado","add":"Añadir","loadingRepositories":"Cargando repositorios…","loadMore":"Cargar más","repositoryName":"Propietario/nombre del repositorio","jiraKeyRegex":"Expresión regular de clave de Jira","jiraKeyRegexHelp":"Se usa el primer grupo de captura si existe; de lo contrario, se usa la coincidencia completa. Borra el campo para desactivar el análisis.","defaultJiraKeyRegex":"Expresión predeterminada de clave de ticket","defaultJiraKeyRegexHelp":"Se usa en cada repositorio administrado sin una configuración propia. Se usa el primer grupo de captura si existe.","jiraKeyRegexOverrideHelp":"Déjalo vacío para heredar la expresión predeterminada.","saveDefaultRegex":"Guardar expresión predeterminada","invalidRegex":"Introduce una expresión regular válida para la clave de Jira.","done":"Listo","removeRepository":"Eliminar repositorio","confirmRemoveRepository":"¿Eliminar este repositorio gestionado?","confirmRemoveRepositoryDescription":"Se eliminarán su pestaña de solicitudes y su configuración de expresión regular de Jira.","saveRegex":"Guardar expresión de Jira"},"githubComments":{"title":"Comentarios","description":"Revisa y responde a los hilos de revisión de GitHub en tus solicitudes abiertas.","refresh":"Actualizar","layout":"Diseño de comentarios","cards":"Diseño de tarjetas","table":"Diseño de tabla","loadingConfiguration":"Cargando la configuración de GitHub…","credentialsRequired":"Conecta GitHub para ver comentarios","credentialsDescription":"Añade en Configuración un token personal con acceso de lectura y escritura a solicitudes.","openSettings":"Abrir Configuración","pullRequestFilter":"Solicitud de extracción abierta","allPullRequests":"Todas las solicitudes abiertas","searchPullRequests":"Buscar solicitudes abiertas","noPullRequestMatches":"Ninguna solicitud abierta coincide con la búsqueda.","currentUser":"Usuario actual","otherUsers":"Otros usuarios","unresolved":"Sin resolver","truncated":"La búsqueda de GitHub devuelve como máximo 1000 solicitudes. Es posible que falten hilos de revisión.","loading":"Cargando comentarios de revisión…","empty":"No hay comentarios de revisión","emptyDescription":"Ningún hilo coincide con la solicitud y los filtros seleccionados.","author":"Autor","pullRequest":"Solicitud de extracción","comment":"Comentario","date":"Fecha","replies":"Respuestas","github":"Servicio GitHub","rendered":"Vista renderizada","markdown":"Fuente Markdown","viewRaw":"Original","viewRendered":"Formato","copy":"Copiar","copied":"Copiado","copyFailed":"No se pudo copiar el Markdown.","unknownAuthor":"Autor desconocido","fileComment":"Comentario de archivo","outdated":"Desactualizado","resolved":"Resuelto","openInGitHub":"Abrir en GitHub","openReplyInGitHub":"Abrir respuesta en GitHub","reply":"Responder","replyPlaceholder":"Responder con Markdown…","replyUnavailable":"GitHub no permite que esta cuenta responda a este hilo.","reopen":"Reabrir hilo","resolve":"Resolver hilo","replying":"Respondiendo…","sendReply":"Enviar respuesta"},"pullRequestDetail":{"back":"Solicitudes de extracción","loading":"Cargando detalles de la solicitud…","notFound":"Solicitud de extracción no encontrada","notFoundDescription":"Esta solicitud no está disponible o el token de GitHub configurado no puede acceder a ella.","refresh":"Actualizar","openInGitHub":"Abrir en GitHub","viewWorktree":"Ver worktree","draft":"Borrador","description":"Descripción","noDescription":"No se proporcionó ninguna descripción.","comments":"Comentarios","noComments":"No hay comentarios de revisión","noCommentsDescription":"Esta solicitud de extracción no tiene hilos de revisión.","pipelines":"Canalizaciones","pipelineCount":"{count} canalizaciones y contextos de estado","pipelineName":"Canalización","pipelineStatus":"Estado","pipelineDetails":"Detalles","viewPipeline":"Ver","jobCount":"{count} trabajos","noJobs":"No se informaron trabajos para esta ejecución.","viewJob":"Ver {job} en GitHub","retryJob":"Reintentar {job}","showJobSteps":"Mostrar los pasos de {job}","hideJobSteps":"Ocultar los pasos de {job}","steps":"Pasos","noSteps":"Aún no se han informado pasos para este trabajo.","details":"Detalles de la solicitud","branches":"Ramas","changes":"Cambios","files":"Archivos modificados","commits":"Confirmaciones","mergeable":"Capacidad de fusión","openComments":"Comentarios abiertos","created":"Creada","updated":"Actualizada","merged":"Fusionada","people":"Personas","author":"Autor","assignees":"Asignados","unassigned":"Sin asignar","unknown":"Desconocido"},"actionsPage":{"title":"Acciones de GitHub","description":"Supervisa ejecuciones de flujos de trabajo en las bases de código registradas en GitHub.","refresh":"Actualizar","loadingConfiguration":"Cargando la configuración de GitHub…","credentialsRequired":"Conecta GitHub para ver Actions","credentialsRequiredDescription":"Añade en Configuración un token de acceso personal con permiso de lectura de Actions.","openSettings":"Abrir Configuración","repositoryFilter":"Repositorio","allRepositories":"Todos los repositorios","searchRepositories":"Buscar repositorios","noRepositoryMatches":"Ningún repositorio coincide con la búsqueda.","loadingRuns":"Cargando ejecuciones…","noCodebases":"No hay bases de código de GitHub","noCodebasesDescription":"Registra una base de código con un origen github.com para ver sus ejecuciones.","empty":"No hay ejecuciones","emptyDescription":"GitHub no devolvió ejecuciones para la selección de repositorios.","expand":"Expandir","repository":"Repositorio","workflowRun":"Ejecución","trigger":"Desencadenador","status":"Estado","pullRequest":"Solicitud de extracción","ticket":"Incidencia","worktree":"Árbol de trabajo","started":"Iniciada","duration":"Duración: {duration}","actions":"Acciones","runNumber":"Ejecución n.º {number}","attempt":"Intento {attempt}","view":"Ver","viewWorktree":"Ver","showJobs":"Mostrar trabajos de {run}","hideJobs":"Ocultar trabajos de {run}","jobs":"Trabajos","jobCount":"{count} trabajos","loadingJobs":"Cargando trabajos…","retryLoad":"Reintentar","noJobs":"No se informaron trabajos para esta ejecución.","showJobSteps":"Mostrar los pasos de {job}","hideJobSteps":"Ocultar los pasos de {job}","retryJob":"Reintentar {job}","steps":"Pasos","noSteps":"Aún no se han informado pasos para este trabajo.","loadMore":"Cargar más","loadingMore":"Cargando más…"},"codebases":{"title":"Bases de código","description":"Supervisa repositorios Git y copias de trabajo en todos los agentes registrados.","refreshAll":"Actualizar todo","fetchAll":"Descargar todo","add":"Añadir base de código","groupBy":"Agrupar bases de código por","agents":"Agentes","repositories":"Repositorios","loading":"Cargando bases de código…","emptyTitle":"Aún no hay bases de código","emptyDescription":"Añade un repositorio Git existente desde un agente conectado.","skipped":"Se omitieron {count} bases de código desconectadas, incompatibles o no disponibles.","fetchQueued":"La descarga comenzó para las bases de código disponibles.","refreshQueued":"La actualización comenzó para las bases de código disponibles.","online":"Conectado","offline":"Desconectado","edit":"Editar","view":"Ver","folder":"Carpeta","origin":"Origen","branch":"Rama","upstream":"Rama remota","lastChecked":"Última comprobación","lastFetched":"Última descarga","never":"Nunca","unknown":"Desconocido","none":"Ninguna","ahead":"Adelantada {count}","behind":"Atrasada {count}","sync":{"IN_SYNC":"Sincronizada","AHEAD":"Adelantada","BEHIND":"Atrasada","DIVERGED":"Divergente","NO_UPSTREAM":"Sin rama remota","DETACHED":"Desacoplada","UNKNOWN":"Desconocido"},"availability":{"AVAILABLE":"Disponible","MISSING":"Falta la carpeta","NOT_REPOSITORY":"No es un repositorio Git","ORIGIN_MISMATCH":"El origen cambió","ERROR":"No disponible"},"operationRunning":"Operación Git en curso…","fetch":"Descargar","addTitle":"Añadir una base de código","addDescription":"Explora un agente, inspecciona un repositorio Git y confirma su origen antes de guardarlo.","agent":"Agente","selectAgent":"Selecciona un agente conectado","browseHome":"Explorar la carpeta personal","home":"Inicio","showHidden":"Mostrar carpetas ocultas","truncated":"Solo se muestran las primeras 1.000 carpetas.","addFolder":"Añadir esta carpeta","detached":"HEAD desacoplado","existingOrigin":"Este origen ya usa el nombre compartido «{name}».","name":"Nombre del repositorio","repositoryDescription":"Descripción del repositorio","cancel":"Cancelar","confirm":"Confirmar base de código","editTitle":"Editar detalles del repositorio","loadingRepository":"Cargando repositorio…","repositoryNotFound":"Repositorio no encontrado","repositoryNotFoundDescription":"Es posible que este repositorio lógico ya no tenga una copia de trabajo registrada.","backToCodebases":"Volver a bases de código","repositorySharedDescription":"Estos detalles, configuraciones de compilación y scripts permitidos pertenecen al repositorio lógico y se aplican a todas las copias de agentes y árboles de trabajo.","repositoryDetails":"Detalles del repositorio","repositoryDetailsDescription":"Administra los ajustes compartidos por todas las copias registradas de este repositorio.","repositorySaved":"Detalles del repositorio guardados.","skillGroups":"Grupos de habilidades","skillGroupsHelp":"Elige los grupos que se sincronizan en todos los checkouts y worktrees de este repositorio.","noSkillGroups":"No hay grupos disponibles.","keepBaseBranchUpToDate":"Mantener actualizada la rama base","keepBaseBranchUpToDateHelp":"Después de una obtención correcta, la rama base avanza mediante fast-forward cuando no hay cambios preparados. Esta configuración del repositorio se aplica a todos los agentes.","save":"Guardar","remove":"Eliminar","confirmRemoveTitle":"¿Eliminar el registro de la base de código?","confirmRemoveDescription":"Se eliminará el registro de {folder}. La carpeta y todos sus archivos permanecerán intactos en el agente.","removed":"Se eliminó el registro de la base de código.","settings":"Configuración","settingsTitle":"Configuración del estado de las bases de código","settingsDescription":"Define con qué frecuencia los agentes actualizados inspeccionan las carpetas registradas e informan del estado de Git.","refreshInterval":"Intervalo de actualización del agente (segundos)","refreshIntervalHelp":"Elige un número entero entre {min} y {max}. Cada agente espera este tiempo tras completar un análisis. No se contacta con los servidores remotos de Git.","fetchInterval":"Intervalo de descarga automática (segundos)","fetchIntervalHelp":"Elige un entero entre {min} y {max}. El agente descarga origin cuando vence este intervalo.","defaultJiraBranchRegex":"Expresión Jira predeterminada para ramas","jiraBranchRegex":"Expresión Jira específica del origen","jiraBranchRegexHelp":"Se usa el primer grupo capturado; si no existe, se usa toda la coincidencia de la rama.","inheritDefaultRegex":"Heredar la expresión predeterminada","settingsSaved":"Se guardaron los ajustes de las bases de código."},"codebaseDetail":{"iosApp":"Aplicación iOS","loading":"Cargando base de código…","notFound":"Base de código no encontrada","notFoundDescription":"Es posible que se haya eliminado este registro de base de código.","back":"Volver a las bases de código","operationQueued":"Operación de Git en cola.","operationSucceeded":"Operación de Git completada.","operationFailed":"La operación de Git falló.","offlineReadOnly":"Este agente está desconectado. La información de ramas guardada estará disponible en modo de solo lectura hasta que vuelva a conectarse.","unsupportedReadOnly":"Actualiza este agente para inspeccionar y administrar ramas y stashes. La información de ramas guardada se muestra en modo de solo lectura.","dirty":"Cambios sin confirmar","refresh":"Actualizar","fetch":"Obtener origin","repositorySettings":"Ajustes del repositorio","origin":"Origen","currentBranch":"Rama actual","upstream":"Rama remota","lastFetched":"Última descarga","activeOperation":"{kind} está en ejecución…","branches":"Ramas ({count})","stashes":"Guardados Git ({count})","branchesTruncated":"Solo se muestran las primeras 1.000 ramas.","localBranches":"Ramas locales","remoteBranches":"Ramas remotas de origin","noLocalBranches":"No se encontraron ramas locales.","noRemoteBranches":"No se encontraron ramas de origin. Obtén origin y vuelve a intentarlo.","branchName":"Rama","branchStatus":"Estado","actions":"Acciones","current":"Actual","default":"Predeterminada","protected":"Protegida","otherWorktree":"Otro árbol de trabajo","localAvailable":"Existe una rama local","switch":"Cambiar","stashAndSwitch":"Guardar y cambiar","confirmDirtySwitchTitle":"¿Guardar los cambios y cambiar de rama?","confirmDirtySwitchDescription":"Los cambios preparados, sin preparar y sin seguimiento se guardarán en un stash nuevo antes de cambiar a {branch}. El stash se conservará.","checkout":"Cambiar a esta rama","stashAndCheckout":"Guardar y cambiar","confirmDirtyCheckoutTitle":"¿Guardar los cambios y cambiar a esta rama?","confirmDirtyCheckoutDescription":"Los cambios preparados, sin preparar y sin seguimiento se guardarán en un stash nuevo antes de cambiar a {branch}. El stash se conservará.","pull":"Traer","deleteRemote":"Eliminar remota","confirmDeleteRemoteBranchTitle":"¿Eliminar la rama remota?","confirmDeleteRemoteBranchDescription":"origin/{branch} se eliminará permanentemente. Las ramas locales y los árboles de trabajo con el mismo nombre permanecerán intactos.","delete":"Eliminar","cancel":"Cancelar","confirmDeleteBranchTitle":"¿Eliminar la rama local?","confirmDeleteBranchDescription":"Git eliminará {branch} de forma segura solo si sus commits ya se fusionaron. No se puede eliminar la rama actual, la predeterminada ni la de otro árbol de trabajo.","noStashes":"No hay stashes","noStashesDescription":"Este checkout no tiene stashes de Git actualmente.","preview":"Vista previa","hidePreview":"Ocultar vista previa","loadingPreview":"Cargando parche del stash…","emptyPatch":"Este stash no tiene un parche de texto que mostrar.","copyPatch":"Copiar parche","patchCopied":"Parche copiado","copyPatchFailed":"No se pudo copiar el parche.","patchTruncated":"Este parche se truncó a 256 KiB.","stashesTruncated":"Solo se muestran los primeros 200 stashes.","apply":"Aplicar","confirmDeleteStashTitle":"¿Eliminar el stash?","confirmDeleteStashDescription":"{stash} se eliminará permanentemente. Aplícalo primero si necesitas conservar sus cambios."},"worktrees":{"title":"Árboles de trabajo","description":"Gestiona worktrees de Git principales y vinculados en todos los agentes inscritos.","agentOffline":"El agente está desconectado.","worktreeUnavailable":"Este árbol de trabajo no está disponible.","agentUnsupported":"Actualiza el agente para habilitar compilaciones de iOS.","iosBuildNotConfigured":"Añade primero un proyecto de aplicación iOS y una configuración de compilación en los ajustes del repositorio.","filters":"Filtros de worktrees","searchWorktrees":"Buscar worktrees","searchWorktreesPlaceholder":"Buscar ramas, agentes, repositorios, incidencias o bases de código…","filterByAgent":"Filtrar por agente","allAgents":"Todos los agentes","filterByRepository":"Filtrar por repositorio","allRepositories":"Todos los repositorios","noMatchingWorktrees":"No hay worktrees coincidentes","noMatchingWorktreesDescription":"Prueba otra búsqueda o filtro.","refresh":"Actualizar","fetchNow":"Descargar ahora","fetchStarted":"Se inició la descarga para las bases de código disponibles.","createWorktree":"Crear worktree","worktreeCreated":"Worktree creado.","repositoryCheckout":"Checkout del repositorio","selectCodebase":"Seleccionar agente y repositorio","selectCodebaseHelp":"Elige el checkout del agente que será propietario de este worktree.","searchCodebases":"Buscar repositorios y agentes","noEligibleCodebases":"No hay checkouts de repositorios compatibles y conectados.","newBranch":"Rama nueva","existingBranch":"Rama existente","fromTicket":"Desde ticket","branchName":"Nombre de rama","ticketKey":"Clave del ticket","loadingTicketBranch":"Cargando ticket y nombre de rama…","selectExistingBranch":"Seleccionar una rama existente","selectBaseBranch":"Seleccionar una rama base","searchBranches":"Buscar ramas","noMatchingBranches":"No hay ramas coincidentes.","localBranch":"Local","originBranch":"Rama remota","localAndOrigin":"Local y origin","remoteDefault":"Predeterminada remota","changeBranch":"Cambiar rama","moveToAgent":"Mover a agente","moveWorktree":"Mover árbol de trabajo","moveDescription":"Envía {branch} y cámbialo en otro agente.","destinationAgent":"Agente y copia de destino","selectDestinationAgent":"Seleccionar agente de destino","searchDestinationAgents":"Buscar agentes y copias","noMoveDestinations":"No hay copias de destino compatibles disponibles.","destinationWorktree":"Árbol de trabajo de destino","createDestinationWorktree":"Crear un árbol de trabajo nuevo","dirtyDestinationWarning":"Este destino tiene cambios sin confirmar. Git los llevará a la rama entrante cuando sea posible.","deleteOldWorktree":"Eliminar el árbol anterior después de mover","deleteOldWorktreeDisabled":"Los árboles de trabajo principales no se pueden eliminar.","moveFailed":"No se pudo mover el árbol de trabajo.","moveCompleted":"Árbol de trabajo movido.","moveCompletedWithWarning":"El destino está listo, pero la limpieza del origen requiere atención.","moveCancelled":"Movimiento cancelado. La rama de origen sigue enviada y se conservó el árbol de origen.","moveNeedsStash":"Los cambios del destino impiden cambiar de rama.","moveStashHelp":"Guarda los cambios rastreados y no rastreados del destino, continúa y conserva el stash para restaurarlo manualmente.","moveProgress":"Moviendo {branch}","stashAndContinue":"Guardar y continuar","cancelMove":"Cancelar movimiento","cancel":"Cancelar","moveStatus":{"PUSHING":"Enviando la rama de origen…","CHECKING_OUT":"Cambiando el destino…","AWAITING_STASH":"Esperando una decisión sobre el stash…","CLEANING_UP":"Eliminando el árbol anterior…","SUCCEEDED":"Movimiento completado.","SUCCEEDED_WITH_WARNING":"Movimiento completado con una advertencia de limpieza.","FAILED":"Movimiento fallido.","CANCELLED":"Movimiento cancelado."},"moveBlocked":{"agent":"El agente de origen está desconectado o debe actualizarse.","busy":"Hay otra operación activa para este repositorio.","detached":"Se necesita una rama de origen con nombre.","dirty":"Confirma o descarta los cambios del origen antes de mover.","behind":"Integra los cambios de origin antes de mover.","diverged":"Resuelve la divergencia con origin antes de mover.","unknown":"No se puede verificar que la rama se pueda enviar de forma segura.","destination":"No hay ningún agente de destino compatible disponible."},"deleteWorktree":"Eliminar árbol de trabajo","deleteWorktreeDescription":"Elimina permanentemente {path} y su rama local.","deleteWorktreeWarning":"Se perderán permanentemente todos los cambios preparados, no preparados y no rastreados de este árbol.","deleteRemoteBranch":"Eliminar también origin/{branch}","defaultRemoteProtected":"La rama predeterminada del repositorio no se puede eliminar de origin.","stashAndRetry":"Guardar en stash y reintentar","stashRetryHelp":"Git no pudo cambiar con los cambios actuales. Guarda los cambios rastreados y no rastreados en stash, reintenta y conserva el stash para restaurarlo manualmente.","hidden":"Ocultos ({count})","cards":"Vista de tarjetas","table":"Vista de tabla","loading":"Cargando worktrees…","emptyTitle":"No se encontraron worktrees","emptyDescription":"Añade una base de código y conecta su agente para descubrir sus worktrees.","online":"En línea","offline":"Sin conexión","lastFetched":"Última descarga: {value}","neverFetched":"nunca","secondsAgo":"hace {count} s","branch":"Rama","path":"Ruta","baseBranch":"Rama base","editBase":"Editar rama base","saveBase":"Guardar rama base","inheritBase":"Heredar valor remoto","baseUnavailable":"Rama remota predeterminada no disponible","upstreamStatus":"Estado upstream","baseStatus":"Actualidad de la base","baseCurrent":"Actual · {count} por delante","baseBehind":"{count} detrás de la base","yes":"Sí","notUpToDate":"No · {count} commits detrás de la base","ahead":"{count} por delante","behind":"{count} por detrás","diverged":"Divergente","upToDate":"Actualizada","origin":"Origen","inSync":"Sincronizada","dirty":"Modificado","branchCommits":"Confirmaciones: {count}","unpublished":"Sin publicar","detached":"HEAD separado","unknown":"Desconocido","primary":"Principal","tags":"Etiquetas","manageTags":"Gestionar etiquetas","manageTagsDescription":"Crea etiquetas globales reutilizables y elige los colores de sus insignias.","highlight":"Resaltado","clearHighlight":"Quitar resaltado","customize":"Personalizar worktree","edit":"Editar","editTag":"Editar etiqueta","createTag":"Crear etiqueta","saveTag":"Guardar etiqueta","openCode":"Abrir en VS Code","openInsiders":"Abrir en VS Code Insiders","forcePush":"Forzar push","sync":"Sincronizar","push":"Push","publish":"Publicar","reset":"Restablecer","stashAll":"Guardar todo en stash","stageAll":"Preparar todo","unstageAll":"Quitar todo del área de preparación","confirmAction":"Confirmar","operationRunning":"Operación en curso…","loadingDetails":"Cargando commits y cambios…","commits":"Confirmaciones ({count})","changes":"Cambios ({count})","noCommits":"Ningún commit difiere de la rama base.","noChanges":"El worktree está limpio.","conflicted":"En conflicto","staged":"Preparado","unstaged":"Sin preparar","untracked":"Sin seguimiento","truncated":"Solo se muestran los primeros resultados compatibles.","status":"Estado","pullRequest":"Pull request","latestBuild":"Última compilación","openInGitHub":"Abrir en GitHub","openDetails":"Abrir detalles","openWorktreeDetails":"Abrir detalles de {branch}","hiddenTitle":"Worktrees ocultos","hiddenDescription":"Los worktrees ausentes se conservan siete días. Volver a detectarlos restaura sus metadatos.","noHidden":"No hay worktrees ocultos.","purge":"Purgar","purgeAll":"Purgar todo","review":{"APPROVED":"Aprobada","CHANGES_REQUESTED":"Cambios solicitados","REVIEW_REQUIRED":"Revisión necesaria","NONE":"Sin decisión"},"comments":"Comentarios: {count}"},"worktreeDetail":{"loading":"Cargando detalles del worktree…","notFound":"Worktree no encontrado","notFoundDescription":"Este worktree está ausente, oculto o ya no está disponible.","back":"Volver a worktrees","linked":"Vinculado","refresh":"Actualizar","inspectionOffline":"El agente está sin conexión. Los metadatos guardados siguen disponibles, pero no se pueden inspeccionar los commits ni los cambios.","inspectionUnavailable":"Este worktree no está disponible para inspección en vivo.","inspectionBusy":"Los commits y cambios se actualizarán cuando termine la operación activa.","inspectionUnsupported":"Actualiza el agente para inspeccionar commits y cambios.","inspectionFailed":"No se pudieron cargar los commits ni los cambios.","actions":"Acciones","workingTree":"Árbol de trabajo","overview":"Resumen","repository":"Repositorio","origin":"Origen","agent":"Agente","folder":"Carpeta","head":"Commit HEAD","upstream":"Rama ascendente","originStatus":"Estado del origen","baseStatus":"Actualidad de la base","lastChecked":"Última comprobación","lastFetched":"Última descarga","management":"Gestión","branchChanges":"Cambios de la rama","noBranchChanges":"No hay cambios confirmados en la rama","diffTruncated":"Algunos archivos modificados no se muestran porque el resultado fue truncado.","codeCoverage":"Cobertura de código","noCoverageReports":"No se han generado informes de cobertura para este árbol de trabajo.","coverageBuild":"Compilación","coverageStatus":"Estado del informe","coverageStatuses":{"PENDING":"Pendiente","READY":"Listo","FAILED":"Fallido"},"overallCoverage":"Cobertura total","changedCoverage":"Cobertura de cambios","generated":"Generado","viewReport":"Ver informe","loadingDiff":"Cargando cambios…","binaryFileChanged":"Archivo binario modificado","noTextChanges":"No hay cambios de texto","diffTooLarge":"La diferencia supera el límite de visualización de 2 MiB","diffLimit":"Diferencia truncada a 2 MiB.","sideBySide":"Lado a lado","overlap":"Superponer","imageTransparency":"Transparencia de imagen","before":"Antes","after":"Después","noImageSide":"No hay imagen en este lado"},"tools":{"title":"Herramientas","description":"Explora, configura y ejecuta herramientas MCP internas y externas.","addServer":"Añadir servidor MCP","search":"Buscar herramientas","searchPlaceholder":"Busca nombres, descripciones o servidores…","serversTitle":"Servidores MCP externos","serversDescription":"Administra proveedores HTTP con transmisión y SSE heredado.","loadingServers":"Cargando servidores MCP…","noServers":"No hay servidores MCP externos configurados.","name":"Nombre","url":"Dirección URL","transport":"Transporte","prefix":"Prefijo del nombre","actions":"Acciones","http":"HTTP (transmisión)","sse":"SSE (heredado)","editServer":"Editar {name}","delete":"Eliminar","deleteServer":"Eliminar {name}","confirmDelete":"¿Eliminar el servidor MCP?","confirmDeleteDescription":"¿Eliminar {name} y sus encabezados personalizados guardados?","catalogTitle":"Catálogo de herramientas","catalogDescription":"Expande una herramienta, introduce sus parámetros y revisa la respuesta completa.","refresh":"Actualizar herramientas","loadingTools":"Cargando herramientas…","noMatchingTools":"Ninguna herramienta coincide con la búsqueda.","addServerTitle":"Añadir servidor MCP externo","editServerTitle":"Editar servidor MCP externo","serverDialogDescription":"Los datos de conexión solo los usa el cliente MCP del servidor.","prefixHelp":"El prefijo se aplica literalmente al mostrar e invocar herramientas.","headers":"Encabezados personalizados","headersHelp":"Los valores se guardan localmente y nunca vuelven al navegador.","addHeader":"Añadir encabezado","noHeaders":"No hay encabezados personalizados.","headerName":"Nombre del encabezado","headerValue":"Valor del encabezado","keepHeaderValue":"Déjalo vacío para conservar el valor guardado","removeHeader":"Quitar encabezado","saveServer":"Guardar servidor","toolCount":"{count} herramientas","tool":"Herramienta","toolDescription":"Descripción","expandTool":"Expandir {name}","collapseTool":"Contraer {name}","noDescription":"No se proporcionó ninguna descripción.","parameters":"Parámetros","noParameters":"Esta herramienta no tiene parámetros.","run":"Ejecutar herramienta","running":"Ejecutando…","response":"Respuesta","copyResponse":"Copiar respuesta","copied":"Respuesta copiada","copyFailed":"No se pudo copiar la respuesta.","noResponse":"Ejecuta la herramienta para ver su respuesta.","selectValue":"Selecciona un valor","unset":"Sin definir","true":"Verdadero","false":"Falso","jsonArguments":"Argumentos (objeto JSON)","invalidJson":"Introduce un JSON válido.","invalidJsonObject":"Introduce un objeto JSON.","jsonObjectPlaceholder":"Introduce pares clave-valor como un objeto JSON","jsonPlaceholder":"Introduce JSON, por ejemplo []"},"skills":{"title":"Habilidades","description":"Gestiona paquetes reutilizables de habilidades de IA en la base de datos, clientes, agentes y repositorios.","manageGroups":"Gestionar grupos","settings":"Configuración","addSkill":"Añadir habilidad","syncAll":"Sincronizar todo","search":"Buscar habilidades","searchPlaceholder":"Buscar nombres, descripciones, grupos, repositorios, agentes o rutas…","database":"Base de datos","skillSource":"Origen de habilidades","databaseSkills":"Habilidades de la base de datos","databaseSkillsDescription":"Paquetes de habilidades canónicos almacenados en el plano de control.","clientSkills":"Habilidades del cliente","clientSkillsDescription":"Paquetes de habilidades detectados en el cliente de IA seleccionado.","loading":"Cargando habilidades…","name":"Nombre","skillDescription":"Descripción","scope":"Ámbito","groups":"Grupos","files":"Archivos","updated":"Actualizado","global":"Global","project":"Proyecto","projectOnly":"Solo proyecto","noSkills":"Ninguna habilidad coincide con la búsqueda.","agent":"Agente","location":"Ubicación","status":"Estado","tracked":"Rastreado","inSync":"Sincronizado","toDatabase":"A la base de datos","conflict":"Conflicto","noClientSkills":"No se encontraron habilidades para este cliente.","settingsTitle":"Configuración de habilidades","settingsDescription":"Elige los clientes participantes y la sincronización automática de grupos.","autoSync":"Sincronizar automáticamente grupos de proyecto","autoSyncHelp":"Mantén los grupos asignados actualizados en todos los checkouts y worktrees.","enabledTools":"Clientes de IA habilitados","configured":"Configurado","configuredAgents":"{count} agentes configurados","notDetected":"No detectado","saveSettings":"Guardar configuración","skillNotFound":"Habilidad no encontrada.","loadingSkill":"Cargando habilidad…","backToSkills":"Volver a habilidades","newSkill":"Nueva habilidad","editorDescription":"Edita los metadatos y todos los archivos del paquete.","delete":"Eliminar","cancel":"Cancelar","deleteSkillDescription":"¿Eliminar {name} de la base de datos y sus copias gestionadas durante la sincronización?","deleteSkill":"¿Eliminar habilidad?","saveSkill":"Guardar habilidad","syncGlobally":"Sincronizar globalmente","syncGloballyHelp":"Incluye esta habilidad en la sincronización personal/global.","noGroups":"Todavía no hay grupos de habilidades.","packageFiles":"Archivos del paquete","addFiles":"Añadir o reemplazar archivos","download":"Descargar","removeFile":"Eliminar","rename":"Renombrar","executable":"Ejecutable","binaryFile":"Archivo binario. Descárgalo o reemplázalo para editarlo.","selectFile":"Selecciona un archivo","duplicateFile":"Ya existe un archivo con esa ruta.","skillGroups":"Grupos de habilidades","groupsDescription":"Agrupa habilidades de proyecto y asígnalas a repositorios.","groupsTableDescription":"Grupos de habilidades del proyecto y sus habilidades y repositorios asignados.","addGroup":"Añadir grupo","loadingGroups":"Cargando grupos…","skillsCount":"Habilidades","repositoriesCount":"Repositorios","newGroup":"Nuevo grupo","newGroupDescription":"Crea el grupo y luego elige habilidades y repositorios.","createGroup":"Crear grupo","groupNotFound":"Grupo no encontrado.","loadingGroup":"Cargando grupo…","backToGroups":"Volver a grupos","groupSettingsDescription":"Gestiona miembros, repositorios y despliegue.","deleteGroupDescription":"¿Eliminar {name} y las copias que ningún otro grupo necesite?","deleteGroup":"¿Eliminar grupo?","syncGroup":"Sincronizar grupo","saveGroup":"Guardar grupo","groupSkills":"Habilidades del grupo","searchSkills":"Buscar habilidades…","groupRepositories":"Repositorios que usan este grupo","searchRepositories":"Buscar repositorios…","syncRunNotFound":"Sincronización no encontrada.","loadingSync":"Cargando sincronización…","syncTitle":"Sincronización de habilidades","syncGroupName":"Sincronizando el grupo {name} en sus repositorios.","syncAllDescription":"Conciliando habilidades de base de datos, personales y de proyecto.","applySync":"Aplicar sincronización","skipPendingClients":"Omitir clientes pendientes","unknownAgent":"Agente desconocido","syncAgents":"Estado de sincronización de agentes","syncAgentsDescription":"Estado de conexión y sincronización de cada agente participante.","connection":"Conexión","operation":"Operación","syncStatus":"Estado de sincronización","syncChanges":"Cambios propuestos","syncChangesDescription":"Revisa los cambios y resuelve los conflictos antes de aplicar esta sincronización.","change":"Cambio","resolution":"Resolución","newSharedLocation":"Nueva ubicación compartida","chooseGroup":"Elige un grupo","useDatabase":"Usar base de datos","useTarget":"Usar copia del cliente","deleteClientCopy":"Eliminar copia del cliente","editManually":"Editar manualmente","compareAndResolve":"Comparar y resolver","skip":"Omitir","scanningAgents":"Buscando clientes habilitados…","noSyncChanges":"No se requieren cambios.","manualResolution":"Resolución manual","manualResolutionDescription":"Compara paquetes completos y edita el resultado canónico, incluidos archivos de texto, binarios y ejecutables.","startFromDatabase":"Empezar con la base de datos","startFromTarget":"Empezar con la copia del cliente","databaseVersion":"Versión de la base de datos","targetVersion":"Versión del cliente","resultVersion":"Resultado canónico","binaryPreview":"Archivo binario; compara el tamaño y los metadatos de ejecución.","missingFile":"Esta versión no contiene el archivo seleccionado.","filePath":"Ruta del archivo","missingResultFile":"Añade este archivo al resultado o selecciona otro archivo del paquete.","useManualVersion":"Usar versión editada"},"builds":{"title":"Compilaciones","description":"Configura, ejecuta, inspecciona, instala y exporta compilaciones de iOS en bases de código y worktrees.","build":"Compilar","history":"Historial","buildScripts":"Scripts de compilación","status":"Estado","destination":"Destino","duration":"Duración","durationValue":"Duración {duration}","actionsLabel":"Acciones","selectBuilds":"Seleccionar compilaciones","selectBuild":"Seleccionar compilación {id}","selectDate":"Seleccionar todas las compilaciones de {date}","deleteSelected":"Eliminar seleccionadas ({count})","deleteBuilds":"Eliminar compilaciones","deleteBuildsTitle":"¿Eliminar {count, plural, one {la compilación} other {# compilaciones}}?","deleteBuildsDescription":"Esto elimina permanentemente los registros y las carpetas de compilación seleccionados.","filterStatus":"Filtrar compilaciones por estado","allStatuses":"Todos los estados","loading":"Cargando compilaciones…","emptyTitle":"Todavía no hay compilaciones","emptyDescription":"Inicia una compilación desde un worktree para crear el primer registro inmutable.","durationSeconds":"{count} segundos","artifactCount":"{count, plural, one {# artefacto} other {# artefactos}}","viewBuild":"Ver compilación","loadMore":"Cargar más","newScript":"Nuevo script de compilación","noScripts":"No hay scripts de compilación","noScriptsDescription":"Crea hooks de JavaScript reutilizables y autorízalos después para repositorios concretos.","defaultEnabled":"Activado de forma predeterminada","preBuild":"Antes de compilar","postBuild":"Después de compilar","timeoutSeconds":"Tiempo límite de {count} segundos","edit":"Editar","deleteScript":"Eliminar script de compilación","editScript":"Editar script de compilación","scriptDescription":"Los hooks ESM de Node.js de confianza se ejecutan desde la raíz del worktree seleccionado con un entorno mínimo.","name":"Nombre","preBuildScript":"JavaScript previo a la compilación","postBuildScript":"JavaScript posterior a la compilación","preBuildScriptHelp":"Exporta de forma predeterminada una función que reciba buildId, branch, destination y action.","postBuildScriptHelp":"Exporta de forma predeterminada una función que también reciba buildFolder, failed, cancelled, errorCode y error.","timeout":"Tiempo límite en segundos","failureBehavior":"Comportamiento ante fallos","enabledByDefault":"Preseleccionar este script para las compilaciones","save":"Guardar","cancel":"Cancelar","startBuild":"Iniciar compilación","startBuildDescription":"Elige una configuración guardada y un destino. El comando se ejecuta desde la raíz de este worktree.","configuration":"Configuración","configurationInvalid":"El origen, esquema o configuración guardados no están disponibles en este worktree.","noConfigurations":"Crea una configuración de compilación de iOS válida en los ajustes del repositorio antes de iniciar una compilación.","reparse":"Volver a analizar","action":"Acción","destinationType":"Tipo de destino","simulator":"Simulador","physicalDevice":"Dispositivo físico","device":"Dispositivo","selectDevice":"Selecciona un dispositivo","anySimulator":"Cualquier simulador iOS","anyPhysicalDevice":"Cualquier dispositivo iOS físico","scripts":"Scripts de compilación","advancedSettings":"Ajustes avanzados","priorBuildForTesting":"Compilación previa para pruebas","selectPriorBuildForTesting":"Selecciona una compilación para pruebas compatible","noPriorBuildForTesting":"Ejecuta primero una compilación para pruebas correcta con esta configuración.","priorBuildSummary":"usa la compilación para pruebas {id}","developmentTeam":"Equipo de desarrollo","testPlan":"Plan de pruebas","schemeDefaultTestPlan":"Predeterminado del esquema","packageResolution":"Resolución de paquetes","disablePackageRepositoryCache":"Desactivar la caché del repositorio de paquetes","signingStyle":"Estilo de firma","codeSignIdentity":"Identidad de firma de código","provisioningProfileSpecifier":"Perfil de aprovisionamiento","productBundleIdentifier":"Identificador del paquete del producto","codeCoverage":"Activar cobertura de código","parseTestResults":"Analizar los resultados de las pruebas después de la compilación","allowProvisioningDeviceRegistration":"Permitir el registro de dispositivos de aprovisionamiento","parallelTesting":"Pruebas en paralelo","parallelTestingWorkers":"Procesos de pruebas en paralelo","onlyTesting":"Probar únicamente","skipTesting":"Omitir pruebas","priorTestProductsPath":"Ruta de productos de pruebas previas","priorXctestrunPath":"Ruta de xctestrun previa","settingsEnabled":"Activado","settingsDisabled":"Desactivado","advancedSettingsNotCaptured":"No se capturaron ajustes avanzados para esta compilación.","generateWorktreeCoverage":"Generar cobertura de código","startWorktreeCoverage":"Ejecutar cobertura del árbol de trabajo","startWorktreeCoverageDescription":"Ejecuta pruebas con cobertura y mide las líneas ejecutables modificadas en la rama y el árbol de trabajo.","startBuildFailed":"No se pudo iniciar la compilación.","parseTestResultsAction":"Analizar resultados de pruebas","retryParseTestResults":"Reintentar análisis de pruebas","generateCoverageReport":"Generar informe de cobertura","retryCoverageReport":"Reintentar informe de cobertura","viewCoverageReport":"Ver informe de cobertura","testResults":"Resultados de pruebas","testResultsFailed":"No se pudieron analizar los resultados de las pruebas.","testTotal":"{count} pruebas","testPassed":"{count} aprobadas","testFailed":"{count} fallidas","testSkipped":"{count} omitidas","testResultFilters":"Filtros de resultados de pruebas","testFilterAll":"Todas ({count})","testFilterPassed":"Aprobadas ({count})","testFilterFailed":"Fallidas ({count})","testFilterSkipped":"Omitidas ({count})","testsWithoutSuite":"Pruebas sin conjunto","testsWithoutFile":"Pruebas sin archivo","expandTestSuite":"Expandir conjunto de pruebas {suite}","collapseTestSuite":"Contraer conjunto de pruebas {suite}","expandTestFile":"Expandir archivo de pruebas {file}","collapseTestFile":"Contraer archivo de pruebas {file}","testSuitePassed":"{passed} de {total} aprobadas ({percent})","testStatus":"Resultado","testName":"Prueba","testSuite":"Conjunto","testBundle":"Paquete","testDuration":"Duración","coverageReport":"Informe de cobertura de código","loadingCoverageReport":"Cargando informe de cobertura…","coverageReportNotFound":"Informe de cobertura no encontrado","coverageReportNotFoundDescription":"Primero genera un informe de cobertura desde la página de detalles de la compilación.","backToBuild":"Volver a la compilación","overallCoverage":"Cobertura total","changedCoverage":"Cobertura de cambios","coveredLines":"Líneas cubiertas","executableLines":"Líneas ejecutables","uncoveredLines":"Líneas sin cubrir","changedFilesCoverage":"Cobertura de archivos modificados","allCoverageFiles":"Todos los archivos de cobertura","expandCoverageFiles":"Expandir todos los archivos de cobertura","collapseCoverageFiles":"Contraer todos los archivos de cobertura","searchCoverageFiles":"Buscar objetivos, archivos o rutas","searchChangedCoverageFiles":"Buscar archivos modificados o rutas","sortCoverageFiles":"Ordenar archivos de cobertura por {column}","coverageTarget":"Objetivo","coverageFile":"Archivo","coverage":"Cobertura","changeType":"Cambio","allowProvisioningUpdates":"Permitir actualizaciones de aprovisionamiento","buildSettingOverrides":"Sobrescrituras permitidas de ajustes de compilación (JSON)","commandPreview":"Vista previa del comando","overridesInvalid":"Las sobrescrituras de ajustes de compilación deben ser un objeto JSON.","advancedJsonInvalid":"Los ajustes avanzados deben ser JSON válido.","buildNotFound":"Compilación no encontrada","buildNotFoundDescription":"Este registro de compilación no existe o ya no está disponible.","backToBuilds":"Volver a las compilaciones","buildId":"ID de compilación","deleteBuild":"Eliminar compilación","deleteBuildTitle":"¿Eliminar esta compilación?","deleteBuildDescription":"Esto elimina permanentemente el registro y su carpeta de compilación.","downloadArtifact":"Descargar","cancelBuild":"Cancelar compilación","rebuild":"Volver a compilar","outOfDate":"Desactualizada","configureBuilds":"Ve a los ajustes del repositorio para configurar las compilaciones","selectedDevices":"{count} dispositivos","selectRunDevices":"Dispositivos de ejecución","noCompatibleDevices":"No hay destinos conectados compatibles disponibles.","run":"Ejecutar","exportArchive":"Exportar archivo","logs":"Registros","expandLogs":"Expandir registros","collapseLogs":"Contraer registros","noLogs":"No se han recibido eventos de registro.","scrollLogsToTop":"Ir al inicio de los registros","scrollLogsToBottom":"Ir al final de los registros","commandSummary":"Resumen del comando","copyCommand":"Copiar resumen del comando","commandCopied":"Resumen del comando copiado","copyFailed":"No se pudo copiar al portapapeles.","noScriptExecutions":"No se seleccionaron scripts de compilación.","overview":"Resumen","scheme":"Esquema","head":"Confirmación","startedAt":"Inicio","finishedAt":"Fin","artifactDirectory":"Carpeta de compilación","artifacts":"Artefactos","noArtifacts":"No se capturaron artefactos.","runsAndExports":"Ejecuciones y exportaciones","archiveExport":"Exportación del archivo","noRunsOrExports":"Esta compilación aún no se ha ejecutado ni exportado.","exportArchiveDescription":"Exporta localmente el .xcarchive capturado sin subirlo.","distributionMethod":"Método de distribución","automatic":"Automático","manual":"Manual","iosApp":"App iOS","parseCheckout":"Copia usada para analizar","parseCheckoutDescription":"Las configuraciones guardadas se comparten en todo el repositorio. El descubrimiento, la validación y el estado de análisis usan la copia del agente seleccionada.","checkoutUnavailable":"no disponible","addIosProject":"Añadir proyecto de aplicación iOS","addIosProjectDescription":"Activa configuraciones de compilación de Xcode reutilizables para cada checkout y worktree de este repositorio.","sharedProjectDescription":"Las definiciones del proyecto y los scripts permitidos se comparten en el repositorio. El estado de análisis inferior procede de este checkout del agente.","buildConfigurations":"Configuraciones de compilación","newConfiguration":"Nueva configuración","lastParsed":"Analizado: {value}","neverParsed":"Nunca analizado","stale":"metadatos desactualizados","savedValueUnavailable":"valor guardado no disponible","deleteConfiguration":"Eliminar configuración de compilación","allowedScripts":"Scripts de compilación permitidos","createScriptsOnBuildsPage":"Crea scripts reutilizables en la página Compilaciones y vuelve aquí para autorizarlos.","editConfiguration":"Editar configuración de compilación","configurationDescription":"Selecciona un origen de Xcode relativo al repositorio y guarda su esquema, configuración, acción y ajustes avanzados opcionales.","icon":"Icono","source":"Origen de Xcode","selectSource":"Selecciona un proyecto, workspace o Package.swift de la raíz","loadingSources":"Buscando orígenes…","defaultAction":"Acción predeterminada","advancedJson":"Ajustes avanzados normalizados (JSON)","statuses":{"QUEUED":"En cola","PREPARING":"Preparando","RUNNING":"En curso","SUCCEEDED":"Correcta","FAILED":"Fallida","CANCELLED":"Cancelada"},"actions":{"BUILD":"Compilar","TEST":"Probar","ANALYZE":"Analizar","ARCHIVE":"Archivar","BUILD_FOR_TESTING":"Compilar para pruebas","TEST_WITHOUT_BUILDING":"Probar sin compilar"},"failureBehaviors":{"FAIL_BUILD":"Hacer fallar la compilación","CONTINUE":"Continuar con una advertencia"}},"status":{"online":"En línea","offline":"Sin conexión","queued":"En cola","running":"En ejecución","succeeded":"Completado","failed":"Fallido","cancelled":"Cancelado","timed_out":"Tiempo agotado"}}')}];
2
2
 
3
3
  //# sourceMappingURL=messages_es_json_%5Bjson%5D_cjs_082yukd._.js.map