@ai-development-environment/server 0.0.28 → 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 (402) hide show
  1. package/package.json +1 -1
  2. package/prisma-runtime/prisma/migrations/20260718220000_add_build_freshness/migration.sql +1 -0
  3. package/prisma-runtime/prisma/migrations/20260719010000_add_build_reports/migration.sql +29 -0
  4. package/prisma-runtime/prisma/schema.prisma +24 -0
  5. package/standalone/.next/BUILD_ID +1 -1
  6. package/standalone/.next/app-path-routes-manifest.json +2 -0
  7. package/standalone/.next/build-manifest.json +6 -6
  8. package/standalone/.next/prerender-manifest.json +3 -3
  9. package/standalone/.next/routes-manifest.json +17 -0
  10. package/standalone/.next/server/app/[locale]/actions/page/build-manifest.json +3 -3
  11. package/standalone/.next/server/app/[locale]/actions/page.js.nft.json +1 -1
  12. package/standalone/.next/server/app/[locale]/actions/page_client-reference-manifest.js +1 -1
  13. package/standalone/.next/server/app/[locale]/agents/[id]/page/build-manifest.json +3 -3
  14. package/standalone/.next/server/app/[locale]/agents/[id]/page.js.nft.json +1 -1
  15. package/standalone/.next/server/app/[locale]/agents/[id]/page_client-reference-manifest.js +1 -1
  16. package/standalone/.next/server/app/[locale]/agents/page/build-manifest.json +3 -3
  17. package/standalone/.next/server/app/[locale]/agents/page.js.nft.json +1 -1
  18. package/standalone/.next/server/app/[locale]/agents/page_client-reference-manifest.js +1 -1
  19. package/standalone/.next/server/app/[locale]/build-data/page/build-manifest.json +3 -3
  20. package/standalone/.next/server/app/[locale]/build-data/page.js.nft.json +1 -1
  21. package/standalone/.next/server/app/[locale]/build-data/page_client-reference-manifest.js +1 -1
  22. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/app-paths-manifest.json +3 -0
  23. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/build-manifest.json +16 -0
  24. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/next-font-manifest.json +11 -0
  25. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/react-loadable-manifest.json +1 -0
  26. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/server-reference-manifest.json +4 -0
  27. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js +16 -0
  28. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js.map +5 -0
  29. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js.nft.json +1 -0
  30. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page_client-reference-manifest.js +3 -0
  31. package/standalone/.next/server/app/[locale]/builds/[buildId]/page/build-manifest.json +3 -3
  32. package/standalone/.next/server/app/[locale]/builds/[buildId]/page.js.nft.json +1 -1
  33. package/standalone/.next/server/app/[locale]/builds/[buildId]/page_client-reference-manifest.js +1 -1
  34. package/standalone/.next/server/app/[locale]/builds/page/build-manifest.json +3 -3
  35. package/standalone/.next/server/app/[locale]/builds/page.js.nft.json +1 -1
  36. package/standalone/.next/server/app/[locale]/builds/page_client-reference-manifest.js +1 -1
  37. package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page/build-manifest.json +3 -3
  38. package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page.js.nft.json +1 -1
  39. package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page_client-reference-manifest.js +1 -1
  40. package/standalone/.next/server/app/[locale]/codebases/page/build-manifest.json +3 -3
  41. package/standalone/.next/server/app/[locale]/codebases/page.js.nft.json +1 -1
  42. package/standalone/.next/server/app/[locale]/codebases/page_client-reference-manifest.js +1 -1
  43. package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page/build-manifest.json +3 -3
  44. package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page.js.nft.json +1 -1
  45. package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page_client-reference-manifest.js +1 -1
  46. package/standalone/.next/server/app/[locale]/comments/page/build-manifest.json +3 -3
  47. package/standalone/.next/server/app/[locale]/comments/page.js.nft.json +1 -1
  48. package/standalone/.next/server/app/[locale]/comments/page_client-reference-manifest.js +1 -1
  49. package/standalone/.next/server/app/[locale]/jira/cache/page/build-manifest.json +3 -3
  50. package/standalone/.next/server/app/[locale]/jira/cache/page.js.nft.json +1 -1
  51. package/standalone/.next/server/app/[locale]/jira/cache/page_client-reference-manifest.js +1 -1
  52. package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page/build-manifest.json +3 -3
  53. package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page.js.nft.json +1 -1
  54. package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page_client-reference-manifest.js +1 -1
  55. package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page/build-manifest.json +3 -3
  56. package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page.js.nft.json +1 -1
  57. package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page_client-reference-manifest.js +1 -1
  58. package/standalone/.next/server/app/[locale]/jira/tickets/page/build-manifest.json +3 -3
  59. package/standalone/.next/server/app/[locale]/jira/tickets/page.js.nft.json +1 -1
  60. package/standalone/.next/server/app/[locale]/jira/tickets/page_client-reference-manifest.js +1 -1
  61. package/standalone/.next/server/app/[locale]/jobs/[jobId]/page/build-manifest.json +3 -3
  62. package/standalone/.next/server/app/[locale]/jobs/[jobId]/page.js.nft.json +1 -1
  63. package/standalone/.next/server/app/[locale]/jobs/[jobId]/page_client-reference-manifest.js +1 -1
  64. package/standalone/.next/server/app/[locale]/page/build-manifest.json +3 -3
  65. package/standalone/.next/server/app/[locale]/page.js.nft.json +1 -1
  66. package/standalone/.next/server/app/[locale]/page_client-reference-manifest.js +1 -1
  67. package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page/build-manifest.json +3 -3
  68. package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page.js.nft.json +1 -1
  69. package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page_client-reference-manifest.js +1 -1
  70. package/standalone/.next/server/app/[locale]/pull-requests/page/build-manifest.json +3 -3
  71. package/standalone/.next/server/app/[locale]/pull-requests/page.js.nft.json +1 -1
  72. package/standalone/.next/server/app/[locale]/pull-requests/page_client-reference-manifest.js +1 -1
  73. package/standalone/.next/server/app/[locale]/settings/page/build-manifest.json +3 -3
  74. package/standalone/.next/server/app/[locale]/settings/page.js.nft.json +1 -1
  75. package/standalone/.next/server/app/[locale]/settings/page_client-reference-manifest.js +1 -1
  76. package/standalone/.next/server/app/[locale]/skills/[skillId]/page/build-manifest.json +3 -3
  77. package/standalone/.next/server/app/[locale]/skills/[skillId]/page.js.nft.json +1 -1
  78. package/standalone/.next/server/app/[locale]/skills/[skillId]/page_client-reference-manifest.js +1 -1
  79. package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page/build-manifest.json +3 -3
  80. package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page.js.nft.json +1 -1
  81. package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page_client-reference-manifest.js +1 -1
  82. package/standalone/.next/server/app/[locale]/skills/groups/page/build-manifest.json +3 -3
  83. package/standalone/.next/server/app/[locale]/skills/groups/page.js.nft.json +1 -1
  84. package/standalone/.next/server/app/[locale]/skills/groups/page_client-reference-manifest.js +1 -1
  85. package/standalone/.next/server/app/[locale]/skills/page/build-manifest.json +3 -3
  86. package/standalone/.next/server/app/[locale]/skills/page.js.nft.json +1 -1
  87. package/standalone/.next/server/app/[locale]/skills/page_client-reference-manifest.js +1 -1
  88. package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page/build-manifest.json +3 -3
  89. package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page.js.nft.json +1 -1
  90. package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page_client-reference-manifest.js +1 -1
  91. package/standalone/.next/server/app/[locale]/tools/page/build-manifest.json +3 -3
  92. package/standalone/.next/server/app/[locale]/tools/page.js.nft.json +1 -1
  93. package/standalone/.next/server/app/[locale]/tools/page_client-reference-manifest.js +1 -1
  94. package/standalone/.next/server/app/[locale]/usage/page/build-manifest.json +3 -3
  95. package/standalone/.next/server/app/[locale]/usage/page.js.nft.json +1 -1
  96. package/standalone/.next/server/app/[locale]/usage/page_client-reference-manifest.js +1 -1
  97. package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page/build-manifest.json +3 -3
  98. package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page.js.nft.json +1 -1
  99. package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page_client-reference-manifest.js +1 -1
  100. package/standalone/.next/server/app/[locale]/worktrees/page/build-manifest.json +3 -3
  101. package/standalone/.next/server/app/[locale]/worktrees/page.js.nft.json +1 -1
  102. package/standalone/.next/server/app/[locale]/worktrees/page_client-reference-manifest.js +1 -1
  103. package/standalone/.next/server/app/_global-error/page/build-manifest.json +3 -3
  104. package/standalone/.next/server/app/_global-error.html +1 -1
  105. package/standalone/.next/server/app/_global-error.rsc +1 -1
  106. package/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  107. package/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  108. package/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  109. package/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  110. package/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  111. package/standalone/.next/server/app/_not-found/page/build-manifest.json +3 -3
  112. package/standalone/.next/server/app/_not-found.html +1 -1
  113. package/standalone/.next/server/app/_not-found.rsc +1 -1
  114. package/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  115. package/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  116. package/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  117. package/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  118. package/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  119. package/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  120. package/standalone/.next/server/app/api/build-artifact-uploads/[uploadId]/route.js +2 -2
  121. package/standalone/.next/server/app/api/build-artifact-uploads/[uploadId]/route.js.nft.json +1 -1
  122. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/route.js +2 -2
  123. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/route.js.nft.json +1 -1
  124. package/standalone/.next/server/app/api/codebases/by-path/route.js +2 -2
  125. package/standalone/.next/server/app/api/codebases/by-path/route.js.nft.json +1 -1
  126. package/standalone/.next/server/app/api/codebases/route.js +2 -2
  127. package/standalone/.next/server/app/api/codebases/route.js.nft.json +1 -1
  128. package/standalone/.next/server/app/api/graphql/route.js +2 -2
  129. package/standalone/.next/server/app/api/graphql/route.js.nft.json +1 -1
  130. package/standalone/.next/server/app/api/mcp/route.js +2 -2
  131. package/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
  132. package/standalone/.next/server/app/api/tools/call/route.js +2 -2
  133. package/standalone/.next/server/app/api/tools/call/route.js.nft.json +1 -1
  134. package/standalone/.next/server/app/api/tools/catalog/route.js +2 -2
  135. package/standalone/.next/server/app/api/tools/catalog/route.js.nft.json +1 -1
  136. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route/app-paths-manifest.json +3 -0
  137. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route/build-manifest.json +9 -0
  138. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route/server-reference-manifest.json +4 -0
  139. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js +10 -0
  140. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js.map +5 -0
  141. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js.nft.json +1 -0
  142. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route_client-reference-manifest.js +3 -0
  143. package/standalone/.next/server/app-paths-manifest.json +2 -0
  144. package/standalone/.next/server/chunks/1oeh_server_app_api_worktrees_[worktreeId]_diff-image_route_actions_0nie5n3.js +3 -0
  145. package/standalone/.next/server/chunks/{[root-of-the-server]__1iv83x0._.js → [root-of-the-server]__0-ypkf7._.js} +1 -1
  146. package/standalone/.next/server/chunks/{[root-of-the-server]__08w_8a-._.js → [root-of-the-server]__00ku6-v._.js} +1 -1
  147. package/standalone/.next/server/chunks/{[root-of-the-server]__0yfvw4a._.js → [root-of-the-server]__0138gz-._.js} +1 -1
  148. package/standalone/.next/server/chunks/{[root-of-the-server]__0r5s0h6._.js → [root-of-the-server]__02vqwey._.js} +2 -2
  149. package/standalone/.next/server/chunks/{[root-of-the-server]__098f8w4._.js → [root-of-the-server]__056cnsc._.js} +1 -1
  150. package/standalone/.next/server/chunks/{[root-of-the-server]__1l6ed2g._.js → [root-of-the-server]__08mfybr._.js} +2 -2
  151. package/standalone/.next/server/chunks/{[root-of-the-server]__0cs2bfc._.js → [root-of-the-server]__08u874i._.js} +1 -1
  152. package/standalone/.next/server/chunks/{[root-of-the-server]__01h2pl1._.js → [root-of-the-server]__09skp6r._.js} +1 -1
  153. package/standalone/.next/server/chunks/{[root-of-the-server]__1mgcft0._.js → [root-of-the-server]__09v6swg._.js} +1 -1
  154. package/standalone/.next/server/chunks/{[root-of-the-server]__0h0mvv8._.js → [root-of-the-server]__0aiyd05._.js} +1 -1
  155. package/standalone/.next/server/chunks/{[root-of-the-server]__14-aq4c._.js → [root-of-the-server]__0cyubup._.js} +1 -1
  156. package/standalone/.next/server/chunks/{[root-of-the-server]__0_l5rqe._.js → [root-of-the-server]__0da1wsf._.js} +1 -1
  157. package/standalone/.next/server/chunks/[root-of-the-server]__0e1fqyr._.js +3 -0
  158. package/standalone/.next/server/chunks/{[root-of-the-server]__1frrx8s._.js → [root-of-the-server]__0f3ptor._.js} +2 -2
  159. package/standalone/.next/server/chunks/{[root-of-the-server]__0k01mi-._.js → [root-of-the-server]__0fih0li._.js} +1 -1
  160. package/standalone/.next/server/chunks/{[root-of-the-server]__02qjyhj._.js → [root-of-the-server]__0g0tnct._.js} +1 -1
  161. package/standalone/.next/server/chunks/{[root-of-the-server]__1ehdq4c._.js → [root-of-the-server]__0gbor-2._.js} +1 -1
  162. package/standalone/.next/server/chunks/{[root-of-the-server]__09lyzw2._.js → [root-of-the-server]__0mj6qcr._.js} +2 -2
  163. package/standalone/.next/server/chunks/{[root-of-the-server]__14uwobw._.js → [root-of-the-server]__0p_h088._.js} +1 -1
  164. package/standalone/.next/server/chunks/[root-of-the-server]__0rwpsai._.js +3 -0
  165. package/standalone/.next/server/chunks/{[root-of-the-server]__0i4bd9d._.js → [root-of-the-server]__0vvjqp5._.js} +1 -1
  166. package/standalone/.next/server/chunks/{[root-of-the-server]__04rx7b9._.js → [root-of-the-server]__0w20bq-._.js} +2 -2
  167. package/standalone/.next/server/chunks/{[root-of-the-server]__0hmrx3m._.js → [root-of-the-server]__0wf0pka._.js} +1 -1
  168. package/standalone/.next/server/chunks/{[root-of-the-server]__0nxj1ky._.js → [root-of-the-server]__0wg2umj._.js} +1 -1
  169. package/standalone/.next/server/chunks/{[root-of-the-server]__17bgip6._.js → [root-of-the-server]__0xa_els._.js} +1 -1
  170. package/standalone/.next/server/chunks/{[root-of-the-server]__0wx4-1l._.js → [root-of-the-server]__0xukz2x._.js} +2 -2
  171. package/standalone/.next/server/chunks/[root-of-the-server]__0zyqmd4._.js +122 -0
  172. package/standalone/.next/server/chunks/[root-of-the-server]__1-z6lg_._.js +3 -0
  173. package/standalone/.next/server/chunks/{[root-of-the-server]__0kxltc8._.js → [root-of-the-server]__15_clsj._.js} +1 -1
  174. package/standalone/.next/server/chunks/{[root-of-the-server]__020ggc3._.js → [root-of-the-server]__15aat79._.js} +1 -1
  175. package/standalone/.next/server/chunks/{[root-of-the-server]__00_-x1w._.js → [root-of-the-server]__15bbm2q._.js} +2 -2
  176. package/standalone/.next/server/chunks/{[root-of-the-server]__09c7zmy._.js → [root-of-the-server]__16l4wed._.js} +1 -1
  177. package/standalone/.next/server/chunks/{[root-of-the-server]__04hrhu3._.js → [root-of-the-server]__19zwwdv._.js} +1 -1
  178. package/standalone/.next/server/chunks/{[root-of-the-server]__0d4_f1e._.js → [root-of-the-server]__1a5_am-._.js} +1 -1
  179. package/standalone/.next/server/chunks/[root-of-the-server]__1ajaiy1._.js +3 -0
  180. package/standalone/.next/server/chunks/[root-of-the-server]__1dtlzq1._.js +3 -0
  181. package/standalone/.next/server/chunks/[root-of-the-server]__1kpqohm._.js +3 -0
  182. package/standalone/.next/server/chunks/[root-of-the-server]__1l7234r._.js +3 -0
  183. package/standalone/.next/server/chunks/{[root-of-the-server]__0c02fce._.js → [root-of-the-server]__1oa-sy6._.js} +2 -2
  184. package/standalone/.next/server/chunks/[root-of-the-server]__1vip3sa._.js +3 -0
  185. package/standalone/.next/server/chunks/[root-of-the-server]__1vxtcsq._.js +3 -0
  186. package/standalone/.next/server/chunks/{[root-of-the-server]__0cryh-d._.js → [root-of-the-server]__1wtng3p._.js} +1 -1
  187. package/standalone/.next/server/chunks/[root-of-the-server]__1wu654b._.js +3 -0
  188. package/standalone/.next/server/chunks/[root-of-the-server]__1x2nph5._.js +3 -0
  189. package/standalone/.next/server/chunks/[root-of-the-server]__1xk-0be._.js +3 -0
  190. package/standalone/.next/server/chunks/[root-of-the-server]__210dhdj._.js +3 -0
  191. package/standalone/.next/server/chunks/_0exkna-._.js +164 -8
  192. package/standalone/.next/server/chunks/{_0bru086._.js → _0jurkow._.js} +26 -26
  193. package/standalone/.next/server/chunks/{_00mzn-u._.js → _0rx5rfm._.js} +27 -27
  194. package/standalone/.next/server/chunks/_0tufgj0._.js +234 -78
  195. package/standalone/.next/server/chunks/_0w2eghf._.js +164 -8
  196. package/standalone/.next/server/chunks/_152rnkf._.js +17 -17
  197. package/standalone/.next/server/chunks/{_1_g2i-t._.js → _16x77b_._.js} +27 -27
  198. package/standalone/.next/server/chunks/_1dbqy8c._.js +17 -17
  199. package/standalone/.next/server/chunks/_1vrixpc._.js +17 -17
  200. package/standalone/.next/server/chunks/_1yfz-9u._.js +17 -17
  201. package/standalone/.next/server/chunks/src_0o4-snj._.js +1 -1
  202. package/standalone/.next/server/chunks/ssr/1oeh_server_app_[locale]_builds_[buildId]_coverage_page_actions_20i_0zd.js +3 -0
  203. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__08bbv6z._.js +9 -0
  204. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ckj6wg._.js +13 -0
  205. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0eit075._.js +3 -0
  206. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0tsac-e._.js +15 -0
  207. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0uo4dhz._.js +11 -0
  208. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__10-ftkj._.js +3 -0
  209. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__15v1geo._.js +3 -0
  210. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1qm_j4s._.js +3 -0
  211. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1s6_fta._.js +3 -0
  212. package/standalone/.next/server/chunks/ssr/_0-o77zz._.js +3 -0
  213. package/standalone/.next/server/chunks/ssr/_00m30gw._.js +3 -0
  214. package/standalone/.next/server/chunks/ssr/_03961l6._.js +3 -0
  215. package/standalone/.next/server/chunks/ssr/_08q5hnx._.js +35 -0
  216. package/standalone/.next/server/chunks/ssr/_093--4s._.js +3 -0
  217. package/standalone/.next/server/chunks/ssr/{_1kaz2gq._.js → _09lh67h._.js} +2 -2
  218. package/standalone/.next/server/chunks/ssr/_0a1ligo._.js +3 -0
  219. package/standalone/.next/server/chunks/ssr/{_1h3p6oi._.js → _0cw_tqx._.js} +2 -2
  220. package/standalone/.next/server/chunks/ssr/{_0hoc_fd._.js → _0ddgabq._.js} +2 -2
  221. package/standalone/.next/server/chunks/ssr/_0dq-84j._.js +22 -0
  222. package/standalone/.next/server/chunks/ssr/_0dy1ovj._.js +3 -0
  223. package/standalone/.next/server/chunks/ssr/_0ezo890._.js +3 -0
  224. package/standalone/.next/server/chunks/ssr/_0id1774._.js +13 -0
  225. package/standalone/.next/server/chunks/ssr/_0j48up8._.js +1 -1
  226. package/standalone/.next/server/chunks/ssr/_0nhtqty._.js +1 -1
  227. package/standalone/.next/server/chunks/ssr/_0oh246z._.js +3 -0
  228. package/standalone/.next/server/chunks/ssr/{_1r9ohdr._.js → _0q8sy0w._.js} +2 -2
  229. package/standalone/.next/server/chunks/ssr/_0qra30j._.js +3 -0
  230. package/standalone/.next/server/chunks/ssr/_0t2jwg3._.js +109 -0
  231. package/standalone/.next/server/chunks/ssr/{_13jl9nw._.js → _0ufkrvm._.js} +2 -2
  232. package/standalone/.next/server/chunks/ssr/{_0sp1ojg._.js → _0vjihfb._.js} +26 -2
  233. package/standalone/.next/server/chunks/ssr/_0xh-lyy._.js +3 -0
  234. package/standalone/.next/server/chunks/ssr/_1-2qcpf._.js +3 -0
  235. package/standalone/.next/server/chunks/ssr/_15erjna._.js +3 -0
  236. package/standalone/.next/server/chunks/ssr/_17a3xuq._.js +3 -0
  237. package/standalone/.next/server/chunks/ssr/_17p59oz._.js +3 -0
  238. package/standalone/.next/server/chunks/ssr/_1bzibio._.js +109 -0
  239. package/standalone/.next/server/chunks/ssr/_1c2fde9._.js +11 -0
  240. package/standalone/.next/server/chunks/ssr/_1ekznx8._.js +3 -0
  241. package/standalone/.next/server/chunks/ssr/_1k1tyz4._.js +3 -0
  242. package/standalone/.next/server/chunks/ssr/{_1dsdn7w._.js → _1n9rteq._.js} +8 -2
  243. package/standalone/.next/server/chunks/ssr/_1och_zk._.js +3 -0
  244. package/standalone/.next/server/chunks/ssr/_1tpguta._.js +3 -0
  245. package/standalone/.next/server/chunks/ssr/_1v1lo7c._.js +3 -0
  246. package/standalone/.next/server/chunks/ssr/_1vv-dg-._.js +3 -0
  247. package/standalone/.next/server/chunks/ssr/_1zgu74l._.js +1 -1
  248. package/standalone/.next/server/chunks/ssr/messages_de_json_[json]_cjs_1uig1ud._.js +1 -1
  249. package/standalone/.next/server/chunks/ssr/messages_en_json_[json]_cjs_206072-._.js +1 -1
  250. package/standalone/.next/server/chunks/ssr/messages_es_json_[json]_cjs_082yukd._.js +1 -1
  251. package/standalone/.next/server/chunks/ssr/messages_fr_json_[json]_cjs_0j6-w0i._.js +1 -1
  252. package/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1uzalot.js +4 -0
  253. package/standalone/.next/server/chunks/ssr/src_components_agents_agent-detail_tsx_0lfa4ui._.js +2 -2
  254. package/standalone/.next/server/chunks/ssr/src_components_builds_build-detail-page_tsx_0q1lvps._.js +15 -13
  255. package/standalone/.next/server/chunks/ssr/src_components_builds_builds-page_tsx_17qzmsl._.js +8 -12
  256. package/standalone/.next/server/chunks/ssr/src_components_builds_coverage-report-page_tsx_1nhwba1._.js +11 -0
  257. package/standalone/.next/server/chunks/ssr/src_components_codebases_repository-detail-page_tsx_20_7wk_._.js +5 -5
  258. package/standalone/.next/server/chunks/ssr/src_components_github_actions-page_tsx_18434xt._.js +5 -5
  259. package/standalone/.next/server/chunks/ssr/src_components_github_pull-requests-page_tsx_1il3ga-._.js +12 -12
  260. package/standalone/.next/server/chunks/ssr/src_components_jira_cache-page_tsx_1znt1yl._.js +1 -1
  261. package/standalone/.next/server/chunks/ssr/src_components_skills_skill-sync-page_tsx_15sidhb._.js +1 -1
  262. package/standalone/.next/server/chunks/ssr/src_components_skills_skills-page_tsx_0o1nlbg._.js +3 -3
  263. package/standalone/.next/server/chunks/ssr/src_components_tools_tools-page_tsx_0k1jqcz._.js +2 -2
  264. package/standalone/.next/server/chunks/ssr/src_components_worktrees_worktree-detail-page_tsx_1oexgu_._.js +21 -4
  265. package/standalone/.next/server/functions-config-manifest.json +3 -0
  266. package/standalone/.next/server/middleware-build-manifest.js +6 -6
  267. package/standalone/.next/server/next-font-manifest.js +1 -1
  268. package/standalone/.next/server/next-font-manifest.json +4 -0
  269. package/standalone/.next/server/pages/404.html +1 -1
  270. package/standalone/.next/server/pages/500.html +1 -1
  271. package/standalone/.next/server/server-reference-manifest.js +1 -1
  272. package/standalone/.next/server/server-reference-manifest.json +1 -1
  273. package/standalone/.next/static/chunks/041g9raf1naqv.js +48 -0
  274. package/standalone/.next/static/chunks/08ujwkhzkokhf.js +1 -0
  275. package/standalone/.next/static/chunks/0a82bgw37ev__.js +33 -0
  276. package/standalone/.next/static/chunks/0cw4z7_m01m5f.js +31 -0
  277. package/standalone/.next/static/chunks/0emxr8tr7kji0.js +33 -0
  278. package/standalone/.next/static/chunks/0h8zu6aywqh1-.js +27 -0
  279. package/standalone/.next/static/chunks/0ng892ycfzv2q.js +1 -0
  280. package/standalone/.next/static/chunks/0tgtji0dbbefa.js +107 -0
  281. package/standalone/.next/static/chunks/15_8kla24ff9f.js +1 -0
  282. package/standalone/.next/static/chunks/16-l4kp9o217d.js +1 -0
  283. package/standalone/.next/static/chunks/1c7ci5ai5qyfo.js +1 -0
  284. package/standalone/.next/static/chunks/1egccqmgk3kbi.js +1 -0
  285. package/standalone/.next/static/chunks/1gwvywh0e6i17.js +3 -0
  286. package/standalone/.next/static/chunks/1hehq94hslvbl.js +7 -0
  287. package/standalone/.next/static/chunks/1k5cw41bd4e5r.js +51 -0
  288. package/standalone/.next/static/chunks/{1rivge68m21sm.js → 1mprxk0uebv70.js} +10 -10
  289. package/standalone/.next/static/chunks/1rus13s58mkxy.js +1 -0
  290. package/standalone/.next/static/chunks/{2fzxwi39odugq.js → 1rwqeg_l_plzt.js} +1 -1
  291. package/standalone/.next/static/chunks/1u_jwc-bo10k3.js +1 -0
  292. package/standalone/.next/static/chunks/1ut0xkaqsykm4.js +7 -0
  293. package/standalone/.next/static/chunks/1w_zvfx_jdyv_.js +29 -0
  294. package/standalone/.next/static/chunks/2-wrd12dmwbo-.js +1 -0
  295. package/standalone/.next/static/chunks/23kut2_l2y2-w.js +9 -0
  296. package/standalone/.next/static/chunks/23xyv764-kx8z.js +38 -0
  297. package/standalone/.next/static/chunks/{1wihkuyju-wa-.js → 25haryfoj4x3h.js} +1 -1
  298. package/standalone/.next/static/chunks/{0fr0zp4cwlyrr.js → 28ljy-uz6n_g9.js} +2 -2
  299. package/standalone/.next/static/chunks/29zl8lgsa28tb.js +1 -0
  300. package/standalone/.next/static/chunks/{0w8rd_g6hnvmz.js → 2__bi79el56lb.js} +5 -5
  301. package/standalone/.next/static/chunks/2aq80hyo4l8a2.js +7 -0
  302. package/standalone/.next/static/chunks/{24a_ux27e8jj4.js → 2l_wayk-ioguc.js} +1 -1
  303. package/standalone/.next/static/chunks/2swvzbwm_dr9y.js +1 -0
  304. package/standalone/.next/static/chunks/{0m26h4h36cb_0.js → 3120xcqaqci82.js} +1 -1
  305. package/standalone/.next/static/chunks/315cis1es_5t3.js +41 -0
  306. package/standalone/.next/static/chunks/321feys_9vp2v.js +33 -0
  307. package/standalone/.next/static/chunks/{0d-e51sawr2y8.js → 34oyci46fsc5w.js} +1 -1
  308. package/standalone/.next/static/chunks/{1nqkxeuycfmrt.js → 36_1bjzx79v18.js} +5 -5
  309. package/standalone/.next/static/chunks/37mczlawlcx5l.js +1 -0
  310. package/standalone/.next/static/chunks/3ajj69p_sj615.js +1 -0
  311. package/standalone/.next/static/chunks/{1tcqtaedz7922.js → 3d4ijy7zglgv5.js} +1 -1
  312. package/standalone/.next/static/chunks/3ir4b8po439x7.js +40 -0
  313. package/standalone/.next/static/chunks/3p7wbgo7qd6_m.css +1 -0
  314. package/standalone/.next/static/chunks/3q0q6_ntq8aa5.js +51 -0
  315. package/standalone/.next/static/chunks/3r-6igcofcwxj.js +107 -0
  316. package/standalone/.next/static/chunks/{0m--47yk9j-ec.js → 3tycetq7o8g3h.js} +1 -1
  317. package/standalone/.next/static/chunks/3vg6y29m047x9.js +31 -0
  318. package/standalone/.next/static/chunks/{0biu8z1f8c42u.js → 40ovzayigkz_-.js} +1 -1
  319. package/standalone/.next/static/chunks/41wq-96yyl0uw.js +1 -0
  320. package/standalone/.next/static/chunks/44xu63hsh11xp.js +1 -0
  321. package/standalone/.next/static/chunks/{turbopack-1rw7om86c18dg.js → turbopack-1v9ogj_5hv56l.js} +1 -1
  322. package/standalone/src/services/builds/build-freshness.test.ts +107 -0
  323. package/standalone/src/services/builds/build-freshness.ts +73 -0
  324. package/standalone/src/services/builds/builds.service.test.ts +222 -8
  325. package/standalone/src/services/builds/builds.service.ts +514 -3
  326. package/standalone/.next/server/chunks/[root-of-the-server]__0qjhcow._.js +0 -122
  327. package/standalone/.next/server/chunks/[root-of-the-server]__1878s0b._.js +0 -3
  328. package/standalone/.next/server/chunks/[root-of-the-server]__18zrtty._.js +0 -3
  329. package/standalone/.next/server/chunks/[root-of-the-server]__1_xz_m2._.js +0 -3
  330. package/standalone/.next/server/chunks/[root-of-the-server]__1mx1hqe._.js +0 -3
  331. package/standalone/.next/server/chunks/[root-of-the-server]__1sjjkyp._.js +0 -3
  332. package/standalone/.next/server/chunks/[root-of-the-server]__1vk9266._.js +0 -3
  333. package/standalone/.next/server/chunks/[root-of-the-server]__1yn6pds._.js +0 -3
  334. package/standalone/.next/server/chunks/[root-of-the-server]__1zwpjfo._.js +0 -3
  335. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__03m5q8h._.js +0 -27
  336. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__06bk7ik._.js +0 -3
  337. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__06f05jg._.js +0 -3
  338. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0oj1os4._.js +0 -3
  339. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1349-us._.js +0 -3
  340. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1osx7qy._.js +0 -27
  341. package/standalone/.next/server/chunks/ssr/_09l5w5d._.js +0 -3
  342. package/standalone/.next/server/chunks/ssr/_0_726fj._.js +0 -3
  343. package/standalone/.next/server/chunks/ssr/_0a1zku5._.js +0 -3
  344. package/standalone/.next/server/chunks/ssr/_0bvpmhm._.js +0 -97
  345. package/standalone/.next/server/chunks/ssr/_0ndnmkz._.js +0 -3
  346. package/standalone/.next/server/chunks/ssr/_0pe56xv._.js +0 -3
  347. package/standalone/.next/server/chunks/ssr/_0pu14lm._.js +0 -3
  348. package/standalone/.next/server/chunks/ssr/_1-1mnp6._.js +0 -3
  349. package/standalone/.next/server/chunks/ssr/_1-7r8vu._.js +0 -3
  350. package/standalone/.next/server/chunks/ssr/_10evhql._.js +0 -3
  351. package/standalone/.next/server/chunks/ssr/_142x9wn._.js +0 -22
  352. package/standalone/.next/server/chunks/ssr/_1_ta7g1._.js +0 -3
  353. package/standalone/.next/server/chunks/ssr/_1eol9we._.js +0 -3
  354. package/standalone/.next/server/chunks/ssr/_1ey5mmy._.js +0 -3
  355. package/standalone/.next/server/chunks/ssr/_1fdyu2w._.js +0 -3
  356. package/standalone/.next/server/chunks/ssr/_1h3t5g1._.js +0 -3
  357. package/standalone/.next/server/chunks/ssr/_1kemhyd._.js +0 -39
  358. package/standalone/.next/server/chunks/ssr/_1kmkrz5._.js +0 -3
  359. package/standalone/.next/server/chunks/ssr/_1lseili._.js +0 -3
  360. package/standalone/.next/server/chunks/ssr/_1oh35yj._.js +0 -3
  361. package/standalone/.next/server/chunks/ssr/_1vhf014._.js +0 -3
  362. package/standalone/.next/server/chunks/ssr/_1x13g5y._.js +0 -3
  363. package/standalone/.next/server/chunks/ssr/_1yzb5-u._.js +0 -11
  364. package/standalone/.next/server/chunks/ssr/_1za3z6k._.js +0 -97
  365. package/standalone/.next/server/chunks/ssr/src_components_0wvh73y._.js +0 -11
  366. package/standalone/.next/server/chunks/ssr/src_components_github_167_ydi._.js +0 -35
  367. package/standalone/.next/static/chunks/00dx8gu-2oyqe.js +0 -45
  368. package/standalone/.next/static/chunks/091l-ij_cv0b6.js +0 -41
  369. package/standalone/.next/static/chunks/0a3s519wuzjet.js +0 -1
  370. package/standalone/.next/static/chunks/0j5n6p9i-vyzo.js +0 -9
  371. package/standalone/.next/static/chunks/0sp_r-c6262te.js +0 -3
  372. package/standalone/.next/static/chunks/0weklluydd2mf.js +0 -23
  373. package/standalone/.next/static/chunks/1eehbcjby4go8.js +0 -95
  374. package/standalone/.next/static/chunks/1joeb4m-mmn69.js +0 -7
  375. package/standalone/.next/static/chunks/1xjd6ye7mxyf5.js +0 -7
  376. package/standalone/.next/static/chunks/23_75iur2dq8p.js +0 -1
  377. package/standalone/.next/static/chunks/24sd_kmnetibb.js +0 -1
  378. package/standalone/.next/static/chunks/278dxvyf095b_.js +0 -55
  379. package/standalone/.next/static/chunks/27k7_zc-iuppd.js +0 -1
  380. package/standalone/.next/static/chunks/2baaj4mpr6i-i.js +0 -1
  381. package/standalone/.next/static/chunks/2cj2ndz_e0hbz.js +0 -1
  382. package/standalone/.next/static/chunks/2dwchs_6y_o5f.js +0 -1
  383. package/standalone/.next/static/chunks/2hv6pkoloju0g.js +0 -33
  384. package/standalone/.next/static/chunks/2lgsgstcvc7uk.css +0 -1
  385. package/standalone/.next/static/chunks/2sqprazdqp7f7.js +0 -1
  386. package/standalone/.next/static/chunks/32agjzrkphjrl.js +0 -9
  387. package/standalone/.next/static/chunks/33y_b6dqfx3tk.js +0 -1
  388. package/standalone/.next/static/chunks/399uxexoo8x7f.js +0 -33
  389. package/standalone/.next/static/chunks/39ecics7n8z5m.js +0 -1
  390. package/standalone/.next/static/chunks/3_kaby2qep1pd.js +0 -34
  391. package/standalone/.next/static/chunks/3h1pxh5fd97ym.js +0 -27
  392. package/standalone/.next/static/chunks/3jbfibit05k5o.js +0 -29
  393. package/standalone/.next/static/chunks/3oyhf7rk2xr_g.js +0 -1
  394. package/standalone/.next/static/chunks/3q7vh58-5dkv2.js +0 -25
  395. package/standalone/.next/static/chunks/3td_-1s61zkpa.js +0 -38
  396. package/standalone/.next/static/chunks/3xkoiasuwi3ms.js +0 -95
  397. package/standalone/.next/static/chunks/41s57pssydrel.js +0 -43
  398. package/standalone/.next/static/chunks/42flok13o-l0b.js +0 -1
  399. package/standalone/.next/static/chunks/43gw6_6hbw18w.js +0 -51
  400. /package/standalone/.next/static/{_pMjurqsAcC478HIzIe-d → ePu377E66yy0icQx3ykQJ}/_buildManifest.js +0 -0
  401. /package/standalone/.next/static/{_pMjurqsAcC478HIzIe-d → ePu377E66yy0icQx3ykQJ}/_clientMiddlewareManifest.js +0 -0
  402. /package/standalone/.next/static/{_pMjurqsAcC478HIzIe-d → ePu377E66yy0icQx3ykQJ}/_ssgManifest.js +0 -0
@@ -1,51 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,711241,e=>{"use strict";let t=(0,e.i(456420).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",0,t],711241)},856522,e=>{"use strict";let t=(0,e.i(456420).default)("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);e.s(["Save",0,t],856522)},741120,e=>{"use strict";let t=(0,e.i(456420).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",0,t],741120)},82612,e=>{"use strict";var t=e.i(843476),a=e.i(225913),s=e.i(975157);let r=(0,a.cva)("mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",icon:"flex size-8 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-4"}},defaultVariants:{variant:"default"}});e.s(["Empty",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"empty",className:(0,s.cn)("flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-xl border-dashed p-6 text-center text-balance",e),...a})},"EmptyDescription",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"empty-description",className:(0,s.cn)("text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",e),...a})},"EmptyHeader",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"empty-header",className:(0,s.cn)("flex max-w-sm flex-col items-center gap-2",e),...a})},"EmptyMedia",0,function({className:e,variant:a="default",...i}){return(0,t.jsx)("div",{"data-slot":"empty-icon","data-variant":a,className:(0,s.cn)(r({variant:a,className:e})),...i})},"EmptyTitle",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"empty-title",className:(0,s.cn)("font-heading text-sm font-medium tracking-tight",e),...a})}])},462777,e=>{"use strict";async function t(e){if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(e);return}catch{}let t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.opacity="0",document.body.append(t),t.select();let a=document.execCommand("copy");if(t.remove(),!a)throw Error("Copy is not supported by this browser")}e.s(["copyText",0,t,"createClientId",0,function(){try{if(globalThis.crypto?.randomUUID)return globalThis.crypto.randomUUID()}catch{}if(globalThis.crypto?.getRandomValues)try{let e=globalThis.crypto.getRandomValues(new Uint8Array(16));return Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")}catch{}return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`}])},778434,e=>{"use strict";e.s(["AGENT_FIELDS",0,"id name hostname version osVersion architecture cpuModel memoryTotalBytes memoryFreeBytes diskTotalBytes diskFreeBytes capabilities baseRepoDirectory derivedDataLocationMode derivedDataPath buildsDirectory defaultBuildsDirectory effectiveBuildsDirectory connectionStatus ipAddress lastSeenAt disconnectedAt createdAt","JOB_FIELDS",0,"id agentId kind payload status error result timeoutSeconds createdAt startedAt finishedAt updatedAt","JOB_LOG_FIELDS",0,"id jobId sequence stream message createdAt"])},573474,e=>{"use strict";let t=(0,e.i(456420).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);e.s(["Trash2",0,t],573474)},59497,e=>{"use strict";var t=e.i(843476),a=e.i(271645);function s(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function r(...e){return a.useCallback(function(...e){return t=>{let a=!1,r=e.map(e=>{let r=s(e,t);return a||"function"!=typeof r||(a=!0),r});if(a)return()=>{for(let t=0;t<r.length;t++){let a=r[t];"function"==typeof a?a():s(e[t],null)}}}}(...e),e)}var i=e.i(30030);function n(e,t,{checkForDefaultPrevented:a=!0}={}){return function(s){if(e?.(s),!1===a||!s||!s.defaultPrevented)return t?.(s)}}"u">typeof window&&window.document&&window.document.createElement;var l=globalThis?.document?a.useLayoutEffect:()=>{};a[" useEffectEvent ".trim().toString()],a[" useInsertionEffect ".trim().toString()];var o=a[" useInsertionEffect ".trim().toString()]||l;Symbol("RADIX:SYNC_STATE");var d=e.i(999682),c=e.i(635804),u=e.i(296626);e.i(174080);var h=Symbol.for("radix.slottable"),p=Symbol.for("react.lazy");function x(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===p&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var m=a[" use ".trim().toString()],f=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,s)=>{var i;let n,l=(i=`Primitive.${s}`,(n=a.forwardRef((e,t)=>{var s;let n,l,{children:o,...d}=e,c=null,u=!1,p=[];x(o)&&"function"==typeof m&&(o=m(o._payload)),a.Children.forEach(o,e=>{var t;if(t=e,a.isValidElement(t)&&"function"==typeof t.type&&"__radixId"in t.type&&t.type.__radixId===h){u=!0;let t="child"in e.props?e.props.child:e.props.children;x(t)&&"function"==typeof m&&(t=m(t._payload)),c=((e,t)=>{if("child"in e.props){let t=e.props.child;return a.isValidElement(t)?a.cloneElement(t,void 0,e.props.children(t.props.children)):null}return a.isValidElement(t)?t:null})(e,t),p.push(c?.props?.children)}else p.push(e)}),c?c=a.cloneElement(c,void 0,p):!u&&1===a.Children.count(o)&&a.isValidElement(o)&&(c=o);let f=c?(s=c,(l=(n=Object.getOwnPropertyDescriptor(s.props,"ref")?.get)&&"isReactWarning"in n&&n.isReactWarning)?s.ref:(l=(n=Object.getOwnPropertyDescriptor(s,"ref")?.get)&&"isReactWarning"in n&&n.isReactWarning)?s.props.ref:s.props.ref||s.ref):void 0,g=r(t,f);if(!c){if(o||0===o){let e,t;throw Error(u?(e=i,`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`):(t=i,`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`))}return o}let v=function(e,t){let a={...t};for(let s in t){let r=e[s],i=t[s];/^on[A-Z]/.test(s)?r&&i?a[s]=(...e)=>{let t=i(...e);return r(...e),t}:r&&(a[s]=r):"style"===s?a[s]={...r,...i}:"className"===s&&(a[s]=[r,i].filter(Boolean).join(" "))}return{...e,...a}}(d,c.props??{});return c.type!==a.Fragment&&(v.ref=t?g:f),a.cloneElement(c,v)})).displayName=`${i}.Slot`,n),o=a.forwardRef((e,a)=>{let{asChild:r,...i}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(r?l:s,{...i,ref:a})});return o.displayName=`Primitive.${s}`,{...e,[s]:o}},{}),g="Checkbox",[v,y]=(0,i.createContextScope)(g),[j,b]=v(g);function S(e){let{__scopeCheckbox:s,checked:r,children:i,defaultChecked:n,disabled:l,form:d,name:c,onCheckedChange:u,required:h,value:p="on",internal_do_not_use_render:x}=e,[m,f]=function({prop:e,defaultProp:t,onChange:s=()=>{},caller:r}){let[i,n,l]=function({defaultProp:e,onChange:t}){let[s,r]=a.useState(e),i=a.useRef(s),n=a.useRef(t);return o(()=>{n.current=t},[t]),a.useEffect(()=>{i.current!==s&&(n.current?.(s),i.current=s)},[s,i]),[s,r,n]}({defaultProp:t,onChange:s}),d=void 0!==e,c=d?e:i;{let t=a.useRef(void 0!==e);a.useEffect(()=>{let e=t.current;if(e!==d){let t=d?"controlled":"uncontrolled";console.warn(`${r} is changing from ${e?"controlled":"uncontrolled"} to ${t}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}t.current=d},[d,r])}return[c,a.useCallback(t=>{if(d){let a="function"==typeof t?t(e):t;a!==e&&l.current?.(a)}else n(t)},[d,e,n,l])]}({prop:r,defaultProp:n??!1,onChange:u,caller:g}),[v,y]=a.useState(null),[b,S]=a.useState(null),C=a.useRef(!1),k=!v||!!d||!!v.closest("form"),I={checked:m,disabled:l,setChecked:f,control:v,setControl:y,name:c,form:d,value:p,hasConsumerStoppedPropagationRef:C,required:h,defaultChecked:!T(n)&&n,isFormControl:k,bubbleInput:b,setBubbleInput:S};return(0,t.jsx)(j,{scope:s,...I,children:"function"==typeof x?x(I):i})}var C="CheckboxTrigger",k=a.forwardRef(({__scopeCheckbox:e,onKeyDown:s,onClick:i,...l},o)=>{let{control:d,value:c,disabled:u,checked:h,required:p,setControl:x,setChecked:m,hasConsumerStoppedPropagationRef:g,isFormControl:v,bubbleInput:y}=b(C,e),j=r(o,x),S=a.useRef(h);return a.useEffect(()=>{let e=d?.form;if(e){let t=()=>m(S.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[d,m]),(0,t.jsx)(f.button,{type:"button",role:"checkbox","aria-checked":T(h)?"mixed":h,"aria-required":p,"data-state":B(h),"data-disabled":u?"":void 0,disabled:u,value:c,...l,ref:j,onKeyDown:n(s,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:n(i,e=>{m(e=>!!T(e)||!e),y&&v&&(g.current=e.isPropagationStopped(),g.current||e.stopPropagation())})})});k.displayName=C;var I=a.forwardRef((e,a)=>{let{__scopeCheckbox:s,name:r,checked:i,defaultChecked:n,required:l,disabled:o,value:d,onCheckedChange:c,form:u,...h}=e;return(0,t.jsx)(S,{__scopeCheckbox:s,checked:i,defaultChecked:n,disabled:o,required:l,onCheckedChange:c,name:r,form:u,value:d,internal_do_not_use_render:({isFormControl:e})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(k,{...h,ref:a,__scopeCheckbox:s}),e&&(0,t.jsx)(E,{__scopeCheckbox:s})]})})});I.displayName=g;var w="CheckboxIndicator",D=a.forwardRef((e,a)=>{let{__scopeCheckbox:s,forceMount:r,...i}=e,n=b(w,s);return(0,t.jsx)(u.Presence,{present:r||T(n.checked)||!0===n.checked,children:(0,t.jsx)(f.span,{"data-state":B(n.checked),"data-disabled":n.disabled?"":void 0,...i,ref:a,style:{pointerEvents:"none",...e.style}})})});D.displayName=w;var N="CheckboxBubbleInput",E=a.forwardRef(({__scopeCheckbox:e,...s},i)=>{let{control:n,hasConsumerStoppedPropagationRef:l,checked:o,defaultChecked:u,required:h,disabled:p,name:x,value:m,form:g,bubbleInput:v,setBubbleInput:y}=b(N,e),j=r(i,y),S=(0,d.usePrevious)(o),C=(0,c.useSize)(n);a.useEffect(()=>{if(!v)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!l.current;if(S!==o&&e){let a=new Event("click",{bubbles:t});v.indeterminate=T(o),e.call(v,!T(o)&&o),v.dispatchEvent(a)}},[v,S,o,l]);let k=a.useRef(!T(o)&&o);return(0,t.jsx)(f.input,{type:"checkbox","aria-hidden":!0,defaultChecked:u??k.current,required:h,disabled:p,name:x,value:m,form:g,...s,tabIndex:-1,ref:j,style:{...s.style,...C,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function T(e){return"indeterminate"===e}function B(e){return T(e)?"indeterminate":e?"checked":"unchecked"}E.displayName=N,e.s(["Checkbox",0,I,"CheckboxIndicator",0,D,"Indicator",0,D,"Root",0,I,"createCheckboxScope",0,y,"unstable_BubbleInput",0,E,"unstable_CheckboxBubbleInput",0,E,"unstable_CheckboxProvider",0,S,"unstable_CheckboxTrigger",0,k,"unstable_Provider",0,S,"unstable_Trigger",0,k],388474);var P=e.i(388474),P=P,A=e.i(975157),R=e.i(593698);e.s(["Checkbox",0,function({className:e,...a}){return(0,t.jsx)(P.Root,{"data-slot":"checkbox",className:(0,A.cn)("peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary",e),...a,children:(0,t.jsx)(P.Indicator,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none [&>svg]:size-3.5",children:(0,t.jsx)(R.CheckIcon,{})})})}],59497)},776639,e=>{"use strict";var t=e.i(843476),a=e.i(560964),s=e.i(964053),r=e.i(519455),i=e.i(975157);function n({...e}){return(0,t.jsx)(s.Dialog.Portal,{"data-slot":"dialog-portal",...e})}function l({className:e,...a}){return(0,t.jsx)(s.Dialog.Overlay,{className:(0,i.cn)("fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),"data-slot":"dialog-overlay",...a})}e.s(["Dialog",0,function({...e}){return(0,t.jsx)(s.Dialog.Root,{"data-slot":"dialog",...e})},"DialogContent",0,function({className:e,children:o,showCloseButton:d=!0,...c}){return(0,t.jsxs)(n,{children:[(0,t.jsx)(l,{}),(0,t.jsxs)(s.Dialog.Content,{className:(0,i.cn)("fixed top-1/2 left-1/2 z-50 grid max-h-[85dvh] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 overflow-y-auto rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),"data-slot":"dialog-content",...c,children:[o,d&&(0,t.jsx)(s.Dialog.Close,{asChild:!0,"data-slot":"dialog-close",children:(0,t.jsxs)(r.Button,{className:"absolute top-2 right-2",size:"icon-sm",variant:"ghost",children:[(0,t.jsx)(a.XIcon,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})})]})]})},"DialogDescription",0,function({className:e,...a}){return(0,t.jsx)(s.Dialog.Description,{className:(0,i.cn)("text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),"data-slot":"dialog-description",...a})},"DialogFooter",0,function({className:e,showCloseButton:a=!1,children:n,...l}){return(0,t.jsxs)("div",{className:(0,i.cn)("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end",e),"data-slot":"dialog-footer",...l,children:[n,a&&(0,t.jsx)(s.Dialog.Close,{asChild:!0,children:(0,t.jsx)(r.Button,{variant:"outline",children:"Close"})})]})},"DialogHeader",0,function({className:e,...a}){return(0,t.jsx)("div",{className:(0,i.cn)("flex flex-col gap-2",e),"data-slot":"dialog-header",...a})},"DialogTitle",0,function({className:e,...a}){return(0,t.jsx)(s.Dialog.Title,{className:(0,i.cn)("font-heading text-base leading-none font-medium",e),"data-slot":"dialog-title",...a})}])},77071,e=>{"use strict";let t=(0,e.i(456420).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",0,t],77071)},250832,e=>{"use strict";let t=(0,e.i(456420).default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);e.s(["Settings2",0,t],250832)},21357,e=>{"use strict";let t=(0,e.i(456420).default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);e.s(["Play",0,t],21357)},876561,e=>{"use strict";let t=(0,e.i(456420).default)("archive",[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]]);e.s(["Archive",0,t],876561)},920950,e=>{"use strict";var t=e.i(843476),a=e.i(876561),s=e.i(93384),r=e.i(21357),i=e.i(456420);let n=(0,i.default)("rocket",[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]]),l=(0,i.default)("smartphone",[["rect",{width:"14",height:"20",x:"5",y:"2",rx:"2",ry:"2",key:"1yt0o3"}],["path",{d:"M12 18h.01",key:"mhygvu"}]]),o=(0,i.default)("test-tube",[["path",{d:"M14.5 2v17.5c0 1.4-1.1 2.5-2.5 2.5c-1.4 0-2.5-1.1-2.5-2.5V2",key:"125lnx"}],["path",{d:"M8.5 2h7",key:"csnxdl"}],["path",{d:"M14.5 16h-5",key:"1ox875"}]]),d={archive:a.Archive,hammer:s.Hammer,play:r.Play,rocket:n,smartphone:l,"test-tube":o};e.s(["ConfigurationIcon",0,function({iconKey:e}){if(!e)return null;let a=d[e];return a?(0,t.jsx)(a,{"aria-hidden":!0,className:"size-4"}):null}],920950)},390615,e=>{"use strict";var t=e.i(843476),a=e.i(711241),s=e.i(835079),r=e.i(856522),i=e.i(948148),n=e.i(271645),l=e.i(778434),o=e.i(93384),d=e.i(77071),c=e.i(741120),u=e.i(250832),h=e.i(573474),p=e.i(929592),x=e.i(487486),m=e.i(519455),f=e.i(515288),g=e.i(59497),v=e.i(776639),y=e.i(82612),j=e.i(793479),b=e.i(110204),S=e.i(967489),C=e.i(987968),k=e.i(624687),I=e.i(462777),w=e.i(637611),D=e.i(920950);let N=`
2
- id type
3
- configurations {
4
- id name iconKey scheme buildConfiguration defaultAction advancedSettings createdAt updatedAt
5
- source { id kind relativePath }
6
- observation { id scopeKey status schemes configurations testPlans error stale headSha xcodeVersion lastParseAttemptAt lastParsedAt }
7
- }
8
- allowedScripts {
9
- position
10
- script { id name preBuildScript postBuildScript enabledByDefault timeoutSeconds failureBehavior }
11
- }
12
- `;function E({codebaseId:e,checkouts:a}){let s=(0,i.useTranslations)("builds"),[r,l]=(0,n.useState)(a?.find(e=>e.available)?.codebaseId??e),[v,j]=(0,n.useState)(null),[b,k]=(0,n.useState)([]),[B,P]=(0,n.useState)(null),[A,R]=(0,n.useState)(!0),[$,_]=(0,n.useState)(!1),[L,V]=(0,n.useState)(null),[M,O]=(0,n.useState)(null),[q,U]=(0,n.useState)(!1),F=(0,n.useCallback)(async()=>{try{let e=await (0,w.controlPlaneRequest)(`query IosProjectSection($codebaseId: ID!) {
13
- iosAppProject(codebaseId: $codebaseId) { ${N} }
14
- buildScripts { id name preBuildScript postBuildScript enabledByDefault timeoutSeconds failureBehavior }
15
- worktreeOverview {
16
- agents { codebases { codebase { id } worktrees { id primary } } }
17
- }
18
- }`,{codebaseId:r});j(e.iosAppProject),k(e.buildScripts);let t=e.worktreeOverview.agents.flatMap(e=>e.codebases).find(e=>e.codebase.id===r);P(t?.worktrees.find(e=>e.primary)?.id??t?.worktrees[0]?.id??null),V(null)}catch(e){V(e instanceof Error?e.message:String(e))}finally{R(!1)}},[r]);(0,n.useEffect)(()=>{let e=window.setTimeout(()=>void F(),0);return()=>window.clearTimeout(e)},[F]);let H=async()=>{_(!0);try{await (0,w.controlPlaneRequest)(`mutation CreateIosProject($codebaseId: ID!) {
19
- createIosAppProject(codebaseId: $codebaseId) { id }
20
- }`,{codebaseId:r}),await F()}catch(e){V(e instanceof Error?e.message:String(e))}finally{_(!1)}},z=async e=>{if(B){_(!0);try{await (0,w.controlPlaneRequest)(`mutation ReparseProjectConfiguration($configurationId: ID!, $worktreeId: ID!, $requestId: ID!) {
21
- reparseBuildConfiguration(configurationId: $configurationId, worktreeId: $worktreeId, requestId: $requestId) { id status }
22
- }`,{configurationId:e.id,worktreeId:B,requestId:(0,I.createClientId)()}),await F()}catch(e){V(e instanceof Error?e.message:String(e))}finally{_(!1)}}},G=async e=>{_(!0);try{await (0,w.controlPlaneRequest)("mutation DeleteBuildConfiguration($id: ID!) { deleteBuildConfiguration(id: $id) }",{id:e}),await F()}catch(e){V(e instanceof Error?e.message:String(e))}finally{_(!1)}},K=async(e,t)=>{let a=v?.allowedScripts.map(e=>e.script.id)??[],s=t?[...a,e]:a.filter(t=>t!==e);try{await (0,w.controlPlaneRequest)(`mutation SetAllowedBuildScripts($codebaseId: ID!, $scriptIds: [ID!]!) {
23
- setCodebaseBuildScripts(codebaseId: $codebaseId, scriptIds: $scriptIds) { id }
24
- }`,{codebaseId:r,scriptIds:s}),await F()}catch(e){V(e instanceof Error?e.message:String(e))}};return A?(0,t.jsxs)("p",{className:"flex items-center gap-2 text-muted-foreground",children:[(0,t.jsx)(C.Spinner,{})," ",s("loading")]}):(0,t.jsxs)("div",{className:"space-y-5",children:[L&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:L})}),a&&a.length>0&&(0,t.jsxs)(f.Card,{children:[(0,t.jsx)(f.CardHeader,{children:(0,t.jsx)(f.CardTitle,{children:s("parseCheckout")})}),(0,t.jsxs)(f.CardContent,{className:"space-y-2",children:[(0,t.jsxs)(S.Select,{disabled:$,onValueChange:e=>{R(!0),l(e)},value:r,children:[(0,t.jsx)(S.SelectTrigger,{"aria-label":s("parseCheckout"),children:(0,t.jsx)(S.SelectValue,{})}),(0,t.jsx)(S.SelectContent,{children:a.map(e=>(0,t.jsxs)(S.SelectItem,{disabled:!e.available,value:e.codebaseId,children:[e.label,e.available?"":` \xb7 ${s("checkoutUnavailable")}`]},e.codebaseId))})]}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:s("parseCheckoutDescription")})]})]}),v?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(p.Alert,{children:(0,t.jsx)(p.AlertDescription,{children:s("sharedProjectDescription")})}),(0,t.jsxs)(f.Card,{children:[(0,t.jsxs)(f.CardHeader,{className:"flex-row items-center justify-between",children:[(0,t.jsx)(f.CardTitle,{children:s("buildConfigurations")}),(0,t.jsxs)(m.Button,{disabled:!B,onClick:()=>{O(null),U(!0)},size:"sm",children:[(0,t.jsx)(d.Plus,{})," ",s("newConfiguration")]})]}),(0,t.jsx)(f.CardContent,{children:v.configurations.length?(0,t.jsx)("div",{className:"grid gap-3 lg:grid-cols-2",children:v.configurations.map(e=>(0,t.jsx)(f.Card,{children:(0,t.jsxs)(f.CardContent,{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("h3",{className:"flex items-center gap-2 font-medium",children:[(0,t.jsx)(D.ConfigurationIcon,{iconKey:e.iconKey}),e.name]}),(0,t.jsx)("p",{className:"font-mono text-xs text-muted-foreground",children:e.source.relativePath})]}),(0,t.jsx)(x.Badge,{variant:e.observation?.status==="ERROR"||e.observation?.status==="INVALID"?"destructive":"outline",children:e.observation?.status??"UNPARSED"})]}),(0,t.jsxs)("div",{className:"rounded-lg border bg-muted/20 p-3 text-sm",children:[(0,t.jsxs)("p",{children:[e.scheme," ·"," ",e.buildConfiguration]}),(0,t.jsxs)("p",{className:"mt-1 text-xs text-muted-foreground",children:[e.observation?.lastParsedAt?s("lastParsed",{value:new Date(e.observation.lastParsedAt).toLocaleString()}):s("neverParsed"),e.observation?.stale?` \xb7 ${s("stale")}`:""]}),e.observation?.error&&(0,t.jsx)("p",{className:"mt-1 text-xs text-destructive",children:e.observation.error})]}),(0,t.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,t.jsxs)(m.Button,{disabled:$||!B,onClick:()=>void z(e),size:"sm",variant:"outline",children:[(0,t.jsx)(c.RefreshCw,{})," ",s("reparse")]}),(0,t.jsxs)(m.Button,{onClick:()=>{O(e),U(!0)},size:"sm",variant:"outline",children:[(0,t.jsx)(u.Settings2,{})," ",s("edit")]}),(0,t.jsx)(m.Button,{"aria-label":s("deleteConfiguration"),disabled:$,onClick:()=>void G(e.id),size:"icon-sm",variant:"destructive",children:(0,t.jsx)(h.Trash2,{})})]})]})},e.id))}):(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:s("noConfigurations")})})]}),(0,t.jsxs)(f.Card,{children:[(0,t.jsx)(f.CardHeader,{children:(0,t.jsx)(f.CardTitle,{children:s("allowedScripts")})}),(0,t.jsx)(f.CardContent,{className:"space-y-2",children:b.length?b.map(e=>{let a=v.allowedScripts.some(t=>t.script.id===e.id);return(0,t.jsxs)("label",{className:"flex items-center gap-2 rounded-lg border p-2",children:[(0,t.jsx)(g.Checkbox,{checked:a,onCheckedChange:t=>void K(e.id,!!t)}),(0,t.jsx)("span",{className:"text-sm",children:e.name}),e.enabledByDefault&&(0,t.jsx)(x.Badge,{variant:"outline",children:s("defaultEnabled")})]},e.id)}):(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:s("createScriptsOnBuildsPage")})})]})]}):(0,t.jsxs)(y.Empty,{className:"border py-12",children:[(0,t.jsxs)(y.EmptyHeader,{children:[(0,t.jsx)(y.EmptyMedia,{variant:"icon",children:(0,t.jsx)(o.Hammer,{})}),(0,t.jsx)(y.EmptyTitle,{children:s("addIosProject")}),(0,t.jsx)(y.EmptyDescription,{children:s("addIosProjectDescription")})]}),(0,t.jsxs)(m.Button,{disabled:$,onClick:()=>void H(),children:[$?(0,t.jsx)(C.Spinner,{}):(0,t.jsx)(d.Plus,{})," ",s("addIosProject")]})]}),q&&B&&(0,t.jsx)(T,{codebaseId:r,configuration:M,onOpenChange:U,onSaved:F,open:q,worktreeId:B})]})}function T({codebaseId:e,worktreeId:a,configuration:s,open:r,onOpenChange:l,onSaved:o}){let d=(0,i.useTranslations)("builds"),[u,h]=(0,n.useState)(s?.name??""),[g,y]=(0,n.useState)(s?.iconKey??"none"),[D,N]=(0,n.useState)([]),[E,B]=(0,n.useState)(s?.source.relativePath??""),[P,A]=(0,n.useState)(s?.source.kind??"PROJECT"),[R,$]=(0,n.useState)(s?.observation?{source:s.source,schemes:s.observation.schemes,configurations:s.observation.configurations,testPlans:s.observation.testPlans,headSha:s.observation.headSha,xcodeVersion:s.observation.xcodeVersion}:null),[_,L]=(0,n.useState)(s?.observation?.status??"UNPARSED"),[V,M]=(0,n.useState)(s?.observation?.stale??!1),[O,q]=(0,n.useState)(s?.scheme??""),[U,F]=(0,n.useState)(s?.buildConfiguration??""),[H,z]=(0,n.useState)(s?.defaultAction??"BUILD"),[G,K]=(0,n.useState)(JSON.stringify(s?.advancedSettings??{},null,2)),[J,W]=(0,n.useState)("string"==typeof s?.advancedSettings?.testPlan?s.advancedSettings.testPlan:"__SCHEME_DEFAULT__"),[X,Y]=(0,n.useState)(!1),[Z,Q]=(0,n.useState)(!1),[ee,et]=(0,n.useState)(!1),[ea,es]=(0,n.useState)(null),er=(0,n.useCallback)(async()=>{Y(!0);try{let e=await (0,w.controlPlaneRequest)(`mutation DiscoverBuildSources($worktreeId: ID!, $requestId: ID!) {
25
- discoverBuildSources(worktreeId: $worktreeId, requestId: $requestId) { kind relativePath }
26
- }`,{worktreeId:a,requestId:(0,I.createClientId)()});N(e.discoverBuildSources)}catch(e){es(e instanceof Error?e.message:String(e))}finally{Y(!1)}},[a]);(0,n.useEffect)(()=>{let e=window.setTimeout(()=>void er(),0);return()=>window.clearTimeout(e)},[er]);let ei=async(e,t)=>{Q(!0),es(null);try{let s=await (0,w.controlPlaneRequest)(`mutation InspectBuildSource($input: InspectBuildSourceInput!) {
27
- inspectBuildSource(input: $input) {
28
- source { kind relativePath }
29
- schemes configurations testPlans headSha xcodeVersion
30
- }
31
- }`,{input:{worktreeId:a,sourceKind:e.kind,sourcePath:e.relativePath,scheme:t||null,requestId:(0,I.createClientId)()}});$(s.inspectBuildSource),L("VALID"),M(!1),B(e.relativePath),A(e.kind),t||(q(s.inspectBuildSource.schemes[0]??O),F(s.inspectBuildSource.configurations[0]??U))}catch(e){L("ERROR"),M(!!R),es(e instanceof Error?e.message:String(e))}finally{Q(!1)}},en=async()=>{et(!0),es(null);try{let t;try{if(!(t=JSON.parse(G))||"object"!=typeof t||Array.isArray(t))throw Error()}catch{throw Error(d("advancedJsonInvalid"))}t={...t,testPlan:"__SCHEME_DEFAULT__"===J?null:J};let r=await (0,w.controlPlaneRequest)(`mutation SaveBuildConfiguration($input: SaveBuildConfigurationInput!) {
32
- saveBuildConfiguration(input: $input) { id }
33
- }`,{input:{id:s?.id??null,codebaseId:e,name:u,iconKey:"none"===g?null:g,sourceKind:P,sourcePath:E,scheme:O,buildConfiguration:U,defaultAction:H,advancedSettings:t}});await (0,w.controlPlaneRequest)(`mutation ReparseSavedBuildConfiguration($configurationId: ID!, $worktreeId: ID!, $requestId: ID!) {
34
- reparseBuildConfiguration(configurationId: $configurationId, worktreeId: $worktreeId, requestId: $requestId) { id status }
35
- }`,{configurationId:r.saveBuildConfiguration.id,worktreeId:a,requestId:(0,I.createClientId)()}),await o(),l(!1)}catch(e){es(e instanceof Error?e.message:String(e))}finally{et(!1)}};return(0,t.jsx)(v.Dialog,{onOpenChange:l,open:r,children:(0,t.jsxs)(v.DialogContent,{className:"sm:max-w-3xl",children:[(0,t.jsxs)(v.DialogHeader,{children:[(0,t.jsx)(v.DialogTitle,{children:s?d("editConfiguration"):d("newConfiguration")}),(0,t.jsx)(v.DialogDescription,{children:d("configurationDescription")})]}),ea&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:ea})}),(0,t.jsxs)("div",{className:"space-y-5",children:[(0,t.jsxs)("div",{className:"grid gap-4 sm:grid-cols-2",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"configuration-name",children:d("name")}),(0,t.jsx)(j.Input,{id:"configuration-name",onChange:e=>h(e.target.value),value:u})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:d("icon")}),(0,t.jsxs)(S.Select,{onValueChange:y,value:g,children:[(0,t.jsx)(S.SelectTrigger,{children:(0,t.jsx)(S.SelectValue,{})}),(0,t.jsx)(S.SelectContent,{children:["none","smartphone","hammer","play","test-tube","archive","rocket"].map(e=>(0,t.jsx)(S.SelectItem,{value:e,children:e},e))})]})]})]}),(0,t.jsx)(f.Card,{children:(0,t.jsxs)(f.CardContent,{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"font-medium",children:d("source")}),(0,t.jsx)("p",{className:"font-mono text-xs text-muted-foreground",children:E||d("selectSource")})]}),R&&(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[V&&(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:d("stale")}),(0,t.jsx)(x.Badge,{variant:"VALID"===_?"outline":"destructive",children:_})]})]}),(0,t.jsxs)(S.Select,{disabled:X||Z,onValueChange:e=>{let t=D.find(t=>t.relativePath===e);t&&ei(t)},value:D.some(e=>e.relativePath===E)?E:"",children:[(0,t.jsx)(S.SelectTrigger,{children:(0,t.jsx)(S.SelectValue,{placeholder:X?d("loadingSources"):d("selectSource")})}),(0,t.jsx)(S.SelectContent,{children:D.map(e=>(0,t.jsx)(S.SelectItem,{value:e.relativePath,children:e.relativePath},e.relativePath))})]}),R&&(0,t.jsxs)("div",{className:"grid gap-4 sm:grid-cols-2",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:d("scheme")}),(0,t.jsxs)(S.Select,{onValueChange:e=>{q(e),ei(R.source,e)},value:O,children:[(0,t.jsx)(S.SelectTrigger,{children:(0,t.jsx)(S.SelectValue,{})}),(0,t.jsxs)(S.SelectContent,{children:[O&&!R.schemes.includes(O)&&(0,t.jsxs)(S.SelectItem,{value:O,children:[O," · ",d("savedValueUnavailable")]}),R.schemes.map(e=>(0,t.jsx)(S.SelectItem,{value:e,children:e},e))]})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:d("configuration")}),(0,t.jsxs)(S.Select,{onValueChange:F,value:U,children:[(0,t.jsx)(S.SelectTrigger,{children:(0,t.jsx)(S.SelectValue,{})}),(0,t.jsxs)(S.SelectContent,{children:[U&&!R.configurations.includes(U)&&(0,t.jsxs)(S.SelectItem,{value:U,children:[U," ·"," ",d("savedValueUnavailable")]}),R.configurations.map(e=>(0,t.jsx)(S.SelectItem,{value:e,children:e},e))]})]})]})]}),(0,t.jsxs)(m.Button,{disabled:!E||Z,onClick:()=>void ei({kind:P,relativePath:E},O),size:"sm",variant:"outline",children:[Z?(0,t.jsx)(C.Spinner,{}):(0,t.jsx)(c.RefreshCw,{})," ",d("reparse")]})]})}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:d("defaultAction")}),(0,t.jsxs)(S.Select,{onValueChange:e=>z(e),value:H,children:[(0,t.jsx)(S.SelectTrigger,{children:(0,t.jsx)(S.SelectValue,{})}),(0,t.jsx)(S.SelectContent,{children:["BUILD","TEST","ANALYZE","ARCHIVE","BUILD_FOR_TESTING","TEST_WITHOUT_BUILDING"].map(e=>(0,t.jsx)(S.SelectItem,{value:e,children:d(`actions.${e}`)},e))})]})]}),["TEST","BUILD_FOR_TESTING","TEST_WITHOUT_BUILDING"].includes(H)&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:d("testPlan")}),(0,t.jsxs)(S.Select,{onValueChange:W,value:J,children:[(0,t.jsx)(S.SelectTrigger,{children:(0,t.jsx)(S.SelectValue,{})}),(0,t.jsxs)(S.SelectContent,{children:[(0,t.jsx)(S.SelectItem,{value:"__SCHEME_DEFAULT__",children:d("schemeDefaultTestPlan")}),"__SCHEME_DEFAULT__"!==J&&!R?.testPlans.includes(J)&&(0,t.jsxs)(S.SelectItem,{value:J,children:[J," · ",d("savedValueUnavailable")]}),R?.testPlans.map(e=>(0,t.jsx)(S.SelectItem,{value:e,children:e},e))]})]})]}),(0,t.jsxs)("details",{className:"rounded-xl border p-3",children:[(0,t.jsx)("summary",{className:"cursor-pointer font-medium",children:d("advancedSettings")}),(0,t.jsxs)("div",{className:"mt-3 space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"configuration-advanced-json",children:d("advancedJson")}),(0,t.jsx)(k.Textarea,{className:"font-mono text-xs",id:"configuration-advanced-json",onChange:e=>K(e.target.value),rows:10,value:G})]})]})]}),(0,t.jsxs)(v.DialogFooter,{children:[(0,t.jsx)(m.Button,{onClick:()=>l(!1),variant:"outline",children:d("cancel")}),(0,t.jsxs)(m.Button,{disabled:ee||Z||!u.trim()||!E||!O||!U,onClick:()=>void en(),children:[ee&&(0,t.jsx)(C.Spinner,{})," ",d("save")]})]})]})})}var B=e.i(677572),P=e.i(520133);let A=`
36
- id canonicalOrigin displayOrigin name description jiraBranchRegex keepBaseBranchUpToDate createdAt updatedAt
37
- skillGroups { id name }
38
- codebases {
39
- id folder observedOrigin branch headSha upstream ahead behind syncState availability statusError
40
- defaultBranch localBranches remoteBranches lastCheckedAt lastFetchedAt lastFetchAttemptAt lastFetchError
41
- agent { ${l.AGENT_FIELDS} }
42
- activeJob { ${l.JOB_FIELDS} }
43
- }
44
- `;e.s(["RepositoryDetailPage",0,function({repositoryId:e}){let l=(0,i.useTranslations)("codebases"),o=(0,i.useTranslations)("builds"),[d,c]=(0,n.useState)(null),[u,h]=(0,n.useState)([]),[x,v]=(0,n.useState)(!0),[S,I]=(0,n.useState)(!1),[D,N]=(0,n.useState)(null),[T,R]=(0,n.useState)(null),[$,_]=(0,n.useState)(""),[L,V]=(0,n.useState)(""),[M,O]=(0,n.useState)(""),[q,U]=(0,n.useState)(!0),[F,H]=(0,n.useState)([]),z=(0,n.useCallback)(e=>{c(e),_(e.name),V(e.description),O(e.jiraBranchRegex??""),U(e.keepBaseBranchUpToDate),H(e.skillGroups?.map(e=>e.id)??[])},[]),G=(0,n.useCallback)(async()=>{try{let t=await (0,w.controlPlaneRequest)(`query RepositoryDetail($id: ID!) {
45
- codebaseRepository(id: $id) { ${A} }
46
- skillsOverview { groups { id name } }
47
- }`,{id:e});t.codebaseRepository?z(t.codebaseRepository):c(null),h(t.skillsOverview?.groups??[]),N(null)}catch(e){N(e instanceof Error?e.message:String(e))}finally{v(!1)}},[z,e]);(0,n.useEffect)(()=>{let t=window.setTimeout(()=>void G(),0),a=(0,w.controlPlaneSubscriptions)().subscribe({query:`subscription RepositoryDetailChanged {
48
- codebaseOverviewChanged { repositoryId }
49
- }`},{next:t=>{let a=t.data?.codebaseOverviewChanged;a&&a.repositoryId!==e||G()},error:()=>void 0,complete:()=>void 0});return()=>{window.clearTimeout(t),a()}},[G,e]);let K=async e=>{if(e.preventDefault(),d){I(!0),N(null),R(null);try{await (0,w.controlPlaneRequest)(`mutation UpdateCodebaseRepository($input: UpdateCodebaseRepositoryInput!) {
50
- updateCodebaseRepository(input: $input) { id }
51
- }`,{input:{id:d.id,name:$,description:L,jiraBranchRegex:M||null,keepBaseBranchUpToDate:q,skillGroupIds:F}}),await G(),R(l("repositorySaved"))}catch(e){N(e instanceof Error?e.message:String(e))}finally{I(!1)}}};if(x)return(0,t.jsxs)("p",{className:"mx-auto flex max-w-6xl items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(C.Spinner,{})," ",l("loadingRepository")]});if(!d)return(0,t.jsxs)(y.Empty,{className:"mx-auto max-w-6xl border py-12",children:[(0,t.jsxs)(y.EmptyHeader,{children:[(0,t.jsx)(y.EmptyMedia,{variant:"icon",children:(0,t.jsx)(s.FolderGit2,{})}),(0,t.jsx)(y.EmptyTitle,{children:l("repositoryNotFound")}),(0,t.jsx)(y.EmptyDescription,{children:l("repositoryNotFoundDescription")})]}),(0,t.jsx)(m.Button,{asChild:!0,variant:"outline",children:(0,t.jsxs)(P.Link,{href:"/codebases",children:[(0,t.jsx)(a.ArrowLeft,{})," ",l("backToCodebases")]})})]});let J=d.codebases.map(e=>({codebaseId:e.id,label:`${e.agent.name} \xb7 ${e.folder}`,available:"ONLINE"===e.agent.connectionStatus&&"AVAILABLE"===e.availability}));return(0,t.jsxs)("section",{className:"mx-auto flex w-full max-w-6xl flex-col gap-6",children:[(0,t.jsx)("div",{children:(0,t.jsx)(m.Button,{asChild:!0,className:"-ml-2",size:"sm",variant:"ghost",children:(0,t.jsxs)(P.Link,{href:"/codebases",children:[(0,t.jsx)(a.ArrowLeft,{})," ",l("backToCodebases")]})})}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:l("editTitle")}),(0,t.jsx)("p",{className:"mt-1 font-mono text-xs text-muted-foreground",children:d.displayOrigin}),(0,t.jsx)("p",{className:"mt-2 text-sm text-muted-foreground",children:l("repositorySharedDescription")})]}),D&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:D})}),T&&(0,t.jsx)(p.Alert,{children:(0,t.jsx)(p.AlertDescription,{children:T})}),(0,t.jsxs)(B.Tabs,{defaultValue:"details",children:[(0,t.jsxs)(B.TabsList,{children:[(0,t.jsx)(B.TabsTrigger,{value:"details",children:l("repositoryDetails")}),(0,t.jsx)(B.TabsTrigger,{value:"ios-app",children:o("iosApp")})]}),(0,t.jsx)(B.TabsContent,{value:"details",children:(0,t.jsx)("form",{className:"space-y-5",onSubmit:K,children:(0,t.jsxs)(f.Card,{children:[(0,t.jsxs)(f.CardHeader,{children:[(0,t.jsx)(f.CardTitle,{children:l("repositoryDetails")}),(0,t.jsx)(f.CardDescription,{children:l("repositoryDetailsDescription")})]}),(0,t.jsxs)(f.CardContent,{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"repository-name",children:l("name")}),(0,t.jsx)(j.Input,{id:"repository-name",maxLength:120,onChange:e=>_(e.target.value),required:!0,value:$})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"repository-jira-regex",children:l("jiraBranchRegex")}),(0,t.jsx)(j.Input,{id:"repository-jira-regex",onChange:e=>O(e.target.value),placeholder:l("inheritDefaultRegex"),value:M}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:l("jiraBranchRegexHelp")})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"repository-description",children:l("repositoryDescription")}),(0,t.jsx)(k.Textarea,{id:"repository-description",maxLength:2e3,onChange:e=>V(e.target.value),value:L})]}),(0,t.jsxs)("div",{className:"flex items-start gap-3 rounded-lg border p-3",children:[(0,t.jsx)(g.Checkbox,{checked:q,className:"mt-0.5",id:"repository-keep-base-branch-up-to-date",onCheckedChange:e=>U(!0===e)}),(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)(b.Label,{htmlFor:"repository-keep-base-branch-up-to-date",children:l("keepBaseBranchUpToDate")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:l("keepBaseBranchUpToDateHelp")})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:l("skillGroups")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:l("skillGroupsHelp")}),(0,t.jsxs)("div",{className:"max-h-56 space-y-1 overflow-auto rounded-lg border p-2",children:[u.map(e=>(0,t.jsxs)("label",{className:"flex items-center gap-2 rounded-md px-2 py-1.5 hover:bg-muted",children:[(0,t.jsx)(g.Checkbox,{checked:F.includes(e.id),onCheckedChange:t=>H(a=>!0===t?[...new Set([...a,e.id])]:a.filter(t=>t!==e.id))}),e.name]},e.id)),!u.length&&(0,t.jsx)("p",{className:"px-2 py-1 text-sm text-muted-foreground",children:l("noSkillGroups")})]})]}),(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsxs)(m.Button,{disabled:S||!$.trim(),type:"submit",children:[S?(0,t.jsx)(C.Spinner,{}):(0,t.jsx)(r.Save,{})," ",l("save")]})})]})]})})}),(0,t.jsx)(B.TabsContent,{value:"ios-app",children:(0,t.jsx)(E,{checkouts:J,codebaseId:J[0]?.codebaseId??""})})]})]})}],390615)}]);