@shepai/cli 1.126.0 → 1.127.0-pr406.05077bf

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 (372) hide show
  1. package/apis/json-schema/FeatureFlags.yaml +5 -0
  2. package/dist/packages/core/src/application/ports/output/repositories/feature-repository.interface.d.ts +11 -0
  3. package/dist/packages/core/src/application/ports/output/repositories/feature-repository.interface.d.ts.map +1 -1
  4. package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts +5 -2
  5. package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts.map +1 -1
  6. package/dist/packages/core/src/application/ports/output/services/worktree-service.interface.d.ts +25 -0
  7. package/dist/packages/core/src/application/ports/output/services/worktree-service.interface.d.ts.map +1 -1
  8. package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.d.ts.map +1 -1
  9. package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.js +7 -2
  10. package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.d.ts.map +1 -1
  11. package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.js +7 -2
  12. package/dist/packages/core/src/application/use-cases/features/adopt-branch.use-case.d.ts +49 -0
  13. package/dist/packages/core/src/application/use-cases/features/adopt-branch.use-case.d.ts.map +1 -0
  14. package/dist/packages/core/src/application/use-cases/features/adopt-branch.use-case.js +188 -0
  15. package/dist/packages/core/src/application/use-cases/features/branch-name-utils.d.ts +33 -0
  16. package/dist/packages/core/src/application/use-cases/features/branch-name-utils.d.ts.map +1 -0
  17. package/dist/packages/core/src/application/use-cases/features/branch-name-utils.js +77 -0
  18. package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
  19. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +1 -0
  20. package/dist/packages/core/src/domain/generated/output.d.ts +4 -0
  21. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  22. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  23. package/dist/packages/core/src/infrastructure/di/container.js +5 -0
  24. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +1 -0
  25. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  26. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +2 -0
  27. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/040-add-feature-flag-adopt-branch.d.ts +10 -0
  28. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/040-add-feature-flag-adopt-branch.d.ts.map +1 -0
  29. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/040-add-feature-flag-adopt-branch.js +15 -0
  30. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.d.ts +5 -0
  31. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.d.ts.map +1 -1
  32. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.js +9 -0
  33. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.d.ts +1 -0
  34. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.d.ts.map +1 -1
  35. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.js +8 -0
  36. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -1
  37. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +3 -2
  38. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/merge.node.d.ts.map +1 -1
  39. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/merge.node.js +1 -0
  40. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/merge-prompts.d.ts.map +1 -1
  41. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/merge-prompts.js +3 -2
  42. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.js +1 -1
  43. package/dist/packages/core/src/infrastructure/services/git/worktree.service.d.ts +2 -0
  44. package/dist/packages/core/src/infrastructure/services/git/worktree.service.d.ts.map +1 -1
  45. package/dist/packages/core/src/infrastructure/services/git/worktree.service.js +39 -0
  46. package/dist/src/presentation/cli/commands/feat/adopt.command.d.ts +14 -0
  47. package/dist/src/presentation/cli/commands/feat/adopt.command.d.ts.map +1 -0
  48. package/dist/src/presentation/cli/commands/feat/adopt.command.js +46 -0
  49. package/dist/src/presentation/cli/commands/feat/index.d.ts.map +1 -1
  50. package/dist/src/presentation/cli/commands/feat/index.js +3 -1
  51. package/dist/src/presentation/web/app/(dashboard)/@drawer/adopt/page.d.ts +10 -0
  52. package/dist/src/presentation/web/app/(dashboard)/@drawer/adopt/page.d.ts.map +1 -0
  53. package/dist/src/presentation/web/app/(dashboard)/@drawer/adopt/page.js +32 -0
  54. package/dist/src/presentation/web/app/(dashboard)/get-graph-data.d.ts.map +1 -1
  55. package/dist/src/presentation/web/app/(dashboard)/get-graph-data.js +37 -32
  56. package/dist/src/presentation/web/app/actions/adopt-branch.d.ts +11 -0
  57. package/dist/src/presentation/web/app/actions/adopt-branch.d.ts.map +1 -0
  58. package/dist/src/presentation/web/app/actions/adopt-branch.js +20 -0
  59. package/dist/src/presentation/web/app/actions/approve-feature.d.ts.map +1 -1
  60. package/dist/src/presentation/web/app/actions/approve-feature.js +4 -9
  61. package/dist/src/presentation/web/app/actions/list-branches.d.ts +6 -0
  62. package/dist/src/presentation/web/app/actions/list-branches.d.ts.map +1 -0
  63. package/dist/src/presentation/web/app/actions/list-branches.js +18 -0
  64. package/dist/src/presentation/web/app/actions/reject-feature.d.ts.map +1 -1
  65. package/dist/src/presentation/web/app/actions/reject-feature.js +4 -9
  66. package/dist/src/presentation/web/app/build-feature-node-data.d.ts.map +1 -1
  67. package/dist/src/presentation/web/app/build-feature-node-data.js +1 -0
  68. package/dist/src/presentation/web/app/build-graph-nodes.js +1 -0
  69. package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.d.ts +20 -0
  70. package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.d.ts.map +1 -0
  71. package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.js +105 -0
  72. package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.stories.d.ts +38 -0
  73. package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.stories.d.ts.map +1 -0
  74. package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.stories.js +161 -0
  75. package/dist/src/presentation/web/components/common/control-center-drawer/adopt-drawer-client.d.ts +7 -0
  76. package/dist/src/presentation/web/components/common/control-center-drawer/adopt-drawer-client.d.ts.map +1 -0
  77. package/dist/src/presentation/web/components/common/control-center-drawer/adopt-drawer-client.js +78 -0
  78. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts.map +1 -1
  79. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.js +4 -1
  80. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.d.ts.map +1 -1
  81. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.js +4 -0
  82. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts +2 -0
  83. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts.map +1 -1
  84. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.d.ts.map +1 -1
  85. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.js +3 -1
  86. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.d.ts.map +1 -1
  87. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.js +3 -0
  88. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  89. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +10 -1
  90. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.d.ts.map +1 -1
  91. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.js +1 -0
  92. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.d.ts.map +1 -1
  93. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.js +16 -3
  94. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.js +1 -1
  95. package/dist/src/presentation/web/hooks/feature-flags-context.d.ts.map +1 -1
  96. package/dist/src/presentation/web/hooks/feature-flags-context.js +6 -1
  97. package/dist/src/presentation/web/hooks/use-feature-logs.d.ts.map +1 -1
  98. package/dist/src/presentation/web/hooks/use-feature-logs.js +7 -2
  99. package/dist/src/presentation/web/lib/feature-flags.d.ts +2 -0
  100. package/dist/src/presentation/web/lib/feature-flags.d.ts.map +1 -1
  101. package/dist/src/presentation/web/lib/feature-flags.js +5 -0
  102. package/dist/tsconfig.build.tsbuildinfo +1 -1
  103. package/package.json +1 -1
  104. package/web/.next/BUILD_ID +1 -1
  105. package/web/.next/app-path-routes-manifest.json +1 -0
  106. package/web/.next/build-manifest.json +4 -4
  107. package/web/.next/fallback-build-manifest.json +2 -2
  108. package/web/.next/prerender-manifest.json +3 -3
  109. package/web/.next/required-server-files.js +3 -3
  110. package/web/.next/required-server-files.json +3 -3
  111. package/web/.next/routes-manifest.json +6 -0
  112. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/app-paths-manifest.json +3 -0
  113. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/build-manifest.json +18 -0
  114. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/next-font-manifest.json +6 -0
  115. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/react-loadable-manifest.json +1 -0
  116. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +335 -0
  117. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +21 -0
  118. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.map +5 -0
  119. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -0
  120. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +2 -0
  121. package/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +2 -2
  122. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +22 -22
  123. package/web/.next/server/app/(dashboard)/@drawer/create/page.js +1 -1
  124. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  125. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  126. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/build-manifest.json +2 -2
  127. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +28 -28
  128. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +1 -1
  129. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  130. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  131. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +2 -2
  132. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +28 -28
  133. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +1 -1
  134. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  135. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  136. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +2 -2
  137. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +20 -20
  138. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +1 -1
  139. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  140. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  141. package/web/.next/server/app/(dashboard)/create/page/build-manifest.json +2 -2
  142. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +22 -22
  143. package/web/.next/server/app/(dashboard)/create/page.js +1 -1
  144. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  145. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  146. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/build-manifest.json +2 -2
  147. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +28 -28
  148. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +1 -1
  149. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  150. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  151. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +2 -2
  152. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +28 -28
  153. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +1 -1
  154. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  155. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  156. package/web/.next/server/app/(dashboard)/page/build-manifest.json +2 -2
  157. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +20 -20
  158. package/web/.next/server/app/(dashboard)/page.js +1 -1
  159. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  160. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  161. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +2 -2
  162. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +20 -20
  163. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +1 -1
  164. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  165. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  166. package/web/.next/server/app/_global-error/page/build-manifest.json +2 -2
  167. package/web/.next/server/app/_global-error/page.js +1 -1
  168. package/web/.next/server/app/_global-error/page.js.nft.json +1 -1
  169. package/web/.next/server/app/_global-error.html +2 -2
  170. package/web/.next/server/app/_global-error.rsc +1 -1
  171. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  172. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  173. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  174. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  175. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  176. package/web/.next/server/app/_not-found/page/build-manifest.json +2 -2
  177. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  178. package/web/.next/server/app/_not-found/page.js +1 -1
  179. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  180. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  181. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  182. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  183. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  184. package/web/.next/server/app/settings/page/build-manifest.json +2 -2
  185. package/web/.next/server/app/settings/page/server-reference-manifest.json +6 -6
  186. package/web/.next/server/app/settings/page.js +1 -1
  187. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  188. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  189. package/web/.next/server/app/skills/page/build-manifest.json +2 -2
  190. package/web/.next/server/app/skills/page/server-reference-manifest.json +6 -6
  191. package/web/.next/server/app/skills/page.js +3 -3
  192. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  193. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  194. package/web/.next/server/app/tools/page/build-manifest.json +2 -2
  195. package/web/.next/server/app/tools/page/server-reference-manifest.json +6 -6
  196. package/web/.next/server/app/tools/page.js +1 -1
  197. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  198. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  199. package/web/.next/server/app/version/page/build-manifest.json +2 -2
  200. package/web/.next/server/app/version/page/server-reference-manifest.json +1 -1
  201. package/web/.next/server/app/version/page.js +1 -1
  202. package/web/.next/server/app/version/page.js.nft.json +1 -1
  203. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  204. package/web/.next/server/app-paths-manifest.json +1 -0
  205. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js +1 -1
  206. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js.map +1 -1
  207. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  208. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
  209. package/web/.next/server/chunks/[root-of-the-server]__dcd4f847._.js.map +1 -1
  210. package/web/.next/server/chunks/ssr/403f9_next_dist_client_components_94d75bc3._.js +3 -0
  211. package/web/.next/server/chunks/ssr/403f9_next_dist_client_components_94d75bc3._.js.map +1 -0
  212. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_fbb88113.js +3 -0
  213. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_fbb88113.js.map +1 -0
  214. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  215. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  216. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_fdfbf5cc.js +1 -1
  217. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_fdfbf5cc.js.map +1 -1
  218. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_d8fa0b5f.js +1 -1
  219. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_d8fa0b5f.js.map +1 -1
  220. package/web/.next/server/chunks/ssr/[root-of-the-server]__02c84e6b._.js +3 -0
  221. package/web/.next/server/chunks/ssr/[root-of-the-server]__02c84e6b._.js.map +1 -0
  222. package/web/.next/server/chunks/ssr/[root-of-the-server]__06fef644._.js +1 -1
  223. package/web/.next/server/chunks/ssr/[root-of-the-server]__23b5ca2c._.js +1 -1
  224. package/web/.next/server/chunks/ssr/[root-of-the-server]__248b9fc3._.js +1 -1
  225. package/web/.next/server/chunks/ssr/[root-of-the-server]__248b9fc3._.js.map +1 -1
  226. package/web/.next/server/chunks/ssr/[root-of-the-server]__357de47c._.js +2 -2
  227. package/web/.next/server/chunks/ssr/[root-of-the-server]__357de47c._.js.map +1 -1
  228. package/web/.next/server/chunks/ssr/{[root-of-the-server]__2dddfea9._.js → [root-of-the-server]__4af0afe0._.js} +2 -2
  229. package/web/.next/server/chunks/ssr/{[root-of-the-server]__2dddfea9._.js.map → [root-of-the-server]__4af0afe0._.js.map} +1 -1
  230. package/web/.next/server/chunks/ssr/[root-of-the-server]__4ed9b909._.js +3 -0
  231. package/web/.next/server/chunks/ssr/[root-of-the-server]__4ed9b909._.js.map +1 -0
  232. package/web/.next/server/chunks/ssr/[root-of-the-server]__5edfc56b._.js +1 -1
  233. package/web/.next/server/chunks/ssr/[root-of-the-server]__6677a82c._.js +1 -1
  234. package/web/.next/server/chunks/ssr/[root-of-the-server]__6677a82c._.js.map +1 -1
  235. package/web/.next/server/chunks/ssr/[root-of-the-server]__67fe07fe._.js +1 -1
  236. package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js +1 -1
  237. package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js.map +1 -1
  238. package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js +2 -2
  239. package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js.map +1 -1
  240. package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js +1 -1
  241. package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js.map +1 -1
  242. package/web/.next/server/chunks/ssr/[root-of-the-server]__8c553503._.js +2 -2
  243. package/web/.next/server/chunks/ssr/{[root-of-the-server]__4c7486cb._.js → [root-of-the-server]__9bc1434f._.js} +2 -2
  244. package/web/.next/server/chunks/ssr/{[root-of-the-server]__4c7486cb._.js.map → [root-of-the-server]__9bc1434f._.js.map} +1 -1
  245. package/web/.next/server/chunks/ssr/[root-of-the-server]__a50a7e39._.js +2 -2
  246. package/web/.next/server/chunks/ssr/[root-of-the-server]__a50a7e39._.js.map +1 -1
  247. package/web/.next/server/chunks/ssr/[root-of-the-server]__c1262d08._.js +3 -0
  248. package/web/.next/server/chunks/ssr/[root-of-the-server]__c1262d08._.js.map +1 -0
  249. package/web/.next/server/chunks/ssr/[root-of-the-server]__dfc367f2._.js +1 -1
  250. package/web/.next/server/chunks/ssr/[root-of-the-server]__dfc367f2._.js.map +1 -1
  251. package/web/.next/server/chunks/ssr/[root-of-the-server]__e7f61cc6._.js +1 -1
  252. package/web/.next/server/chunks/ssr/[root-of-the-server]__e7f61cc6._.js.map +1 -1
  253. package/web/.next/server/chunks/ssr/[root-of-the-server]__fe48d2dc._.js +1 -1
  254. package/web/.next/server/chunks/ssr/[root-of-the-server]__fe48d2dc._.js.map +1 -1
  255. package/web/.next/server/chunks/ssr/{_821bbcc5._.js → _1f0cbda2._.js} +2 -2
  256. package/web/.next/server/chunks/ssr/{_821bbcc5._.js.map → _1f0cbda2._.js.map} +1 -1
  257. package/web/.next/server/chunks/ssr/_2f6f48b8._.js +1 -1
  258. package/web/.next/server/chunks/ssr/_2f6f48b8._.js.map +1 -1
  259. package/web/.next/server/chunks/ssr/_4093a637._.js +5 -0
  260. package/web/.next/server/chunks/ssr/_4093a637._.js.map +1 -0
  261. package/web/.next/server/chunks/ssr/_583a83fb._.js +3 -0
  262. package/web/.next/server/chunks/ssr/_583a83fb._.js.map +1 -0
  263. package/web/.next/server/chunks/ssr/_794c45e6._.js +3 -0
  264. package/web/.next/server/chunks/ssr/_794c45e6._.js.map +1 -0
  265. package/web/.next/server/chunks/ssr/_7dca1882._.js +1 -1
  266. package/web/.next/server/chunks/ssr/_7dca1882._.js.map +1 -1
  267. package/web/.next/server/chunks/ssr/_918887c5._.js +1 -1
  268. package/web/.next/server/chunks/ssr/_918887c5._.js.map +1 -1
  269. package/web/.next/server/chunks/ssr/_9f56cf8f._.js +3 -0
  270. package/web/.next/server/chunks/ssr/_9f56cf8f._.js.map +1 -0
  271. package/web/.next/server/chunks/ssr/_a187fd7e._.js +3 -0
  272. package/web/.next/server/chunks/ssr/_a187fd7e._.js.map +1 -0
  273. package/web/.next/server/chunks/ssr/_a37f5f18._.js +1 -1
  274. package/web/.next/server/chunks/ssr/_a37f5f18._.js.map +1 -1
  275. package/web/.next/server/chunks/ssr/_a5aa6371._.js +9 -0
  276. package/web/.next/server/chunks/ssr/_a5aa6371._.js.map +1 -0
  277. package/web/.next/server/chunks/ssr/_a9f57758._.js +3 -0
  278. package/web/.next/server/chunks/ssr/_a9f57758._.js.map +1 -0
  279. package/web/.next/server/chunks/ssr/_b730ac57._.js +3 -0
  280. package/web/.next/server/chunks/ssr/_b730ac57._.js.map +1 -0
  281. package/web/.next/server/chunks/ssr/_d4b20e29._.js.map +1 -1
  282. package/web/.next/server/chunks/ssr/_d5206f22._.js +4 -0
  283. package/web/.next/server/chunks/ssr/_d5206f22._.js.map +1 -0
  284. package/web/.next/server/chunks/ssr/_f39a1adb._.js +1 -1
  285. package/web/.next/server/chunks/ssr/_f39a1adb._.js.map +1 -1
  286. package/web/.next/server/chunks/ssr/_f4d222d6._.js +1 -1
  287. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  288. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  289. package/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js +3 -0
  290. package/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js.map +1 -0
  291. package/web/.next/server/chunks/ssr/node_modules__pnpm_026172d1._.js +3 -0
  292. package/web/.next/server/chunks/ssr/node_modules__pnpm_026172d1._.js.map +1 -0
  293. package/web/.next/server/chunks/ssr/src_presentation_web_1dac2051._.js +3 -0
  294. package/web/.next/server/chunks/ssr/src_presentation_web_1dac2051._.js.map +1 -0
  295. package/web/.next/server/chunks/ssr/src_presentation_web_9db47db7._.js +2 -2
  296. package/web/.next/server/chunks/ssr/src_presentation_web_9db47db7._.js.map +1 -1
  297. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_f66cd328.js +1 -1
  298. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_f66cd328.js.map +1 -1
  299. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
  300. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js.map +1 -1
  301. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +1 -1
  302. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js.map +1 -1
  303. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  304. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  305. package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js +3 -0
  306. package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js.map +1 -0
  307. package/web/.next/server/chunks/ssr/src_presentation_web_ede4a227._.js +2 -2
  308. package/web/.next/server/chunks/ssr/src_presentation_web_ede4a227._.js.map +1 -1
  309. package/web/.next/server/middleware-build-manifest.js +2 -2
  310. package/web/.next/server/pages/500.html +2 -2
  311. package/web/.next/server/server-reference-manifest.js +1 -1
  312. package/web/.next/server/server-reference-manifest.json +204 -34
  313. package/web/.next/static/chunks/05e9c71e5e4cf531.js +1 -0
  314. package/web/.next/static/chunks/{044f4665499a9656.js → 1040108af0ee2e3c.js} +1 -1
  315. package/web/.next/static/chunks/1214f13d8edee410.js +1 -0
  316. package/web/.next/static/chunks/{4ac11847f73b50d6.js → 18370eb43da93775.js} +1 -1
  317. package/web/.next/static/chunks/33d2f67ad4814aba.css +1 -0
  318. package/web/.next/static/chunks/4cfbbf947d205588.js +1 -0
  319. package/web/.next/static/chunks/4e10357c1c01f8a7.js +1 -0
  320. package/web/.next/static/chunks/6300c246e812fd4a.js +1 -0
  321. package/web/.next/static/chunks/8080c842b0358904.js +1 -0
  322. package/web/.next/static/chunks/{112cf5891d1ca558.js → 82f7582061933bd7.js} +1 -1
  323. package/web/.next/static/chunks/{ed3a602003bcb31b.js → 89aac43287d73b02.js} +1 -1
  324. package/web/.next/static/chunks/a668451a590d746f.js +1 -0
  325. package/web/.next/static/chunks/a8ba3f3e2b0f87aa.js +1 -0
  326. package/web/.next/static/chunks/{dcfed2c9b7cd1cb4.js → b4c03f76a4c23504.js} +1 -1
  327. package/web/.next/static/chunks/{37ada233462bcaec.js → cd45aed9c46e1bf5.js} +1 -1
  328. package/web/.next/static/chunks/d04de4be30ab78ca.js +3 -0
  329. package/web/.next/static/chunks/{4ac4a43b7eb441e1.js → d2d01dc183a6d94e.js} +2 -2
  330. package/web/.next/static/chunks/facfb85307fb64ca.js +2 -0
  331. package/web/.next/static/chunks/{turbopack-426d9bc2450816ba.js → turbopack-080e470ea902d0ba.js} +1 -1
  332. package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_d0119342._.js +0 -3
  333. package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_d0119342._.js.map +0 -1
  334. package/web/.next/server/chunks/ssr/[root-of-the-server]__52485955._.js +0 -3
  335. package/web/.next/server/chunks/ssr/[root-of-the-server]__52485955._.js.map +0 -1
  336. package/web/.next/server/chunks/ssr/[root-of-the-server]__56ecbe40._.js +0 -3
  337. package/web/.next/server/chunks/ssr/[root-of-the-server]__56ecbe40._.js.map +0 -1
  338. package/web/.next/server/chunks/ssr/_243e3685._.js +0 -3
  339. package/web/.next/server/chunks/ssr/_243e3685._.js.map +0 -1
  340. package/web/.next/server/chunks/ssr/_3a4c94e3._.js +0 -3
  341. package/web/.next/server/chunks/ssr/_3a4c94e3._.js.map +0 -1
  342. package/web/.next/server/chunks/ssr/_6d26a08f._.js +0 -3
  343. package/web/.next/server/chunks/ssr/_6d26a08f._.js.map +0 -1
  344. package/web/.next/server/chunks/ssr/_9ac70f88._.js +0 -5
  345. package/web/.next/server/chunks/ssr/_9ac70f88._.js.map +0 -1
  346. package/web/.next/server/chunks/ssr/_b56e7571._.js +0 -3
  347. package/web/.next/server/chunks/ssr/_b56e7571._.js.map +0 -1
  348. package/web/.next/server/chunks/ssr/_e9703421._.js +0 -3
  349. package/web/.next/server/chunks/ssr/_e9703421._.js.map +0 -1
  350. package/web/.next/server/chunks/ssr/_f1a649e3._.js +0 -9
  351. package/web/.next/server/chunks/ssr/_f1a649e3._.js.map +0 -1
  352. package/web/.next/server/chunks/ssr/node_modules__pnpm_bc66dcc6._.js +0 -3
  353. package/web/.next/server/chunks/ssr/node_modules__pnpm_bc66dcc6._.js.map +0 -1
  354. package/web/.next/server/chunks/ssr/src_presentation_web_aeddd007._.js +0 -3
  355. package/web/.next/server/chunks/ssr/src_presentation_web_aeddd007._.js.map +0 -1
  356. package/web/.next/server/chunks/ssr/src_presentation_web_components_bf50c527._.js +0 -3
  357. package/web/.next/server/chunks/ssr/src_presentation_web_components_bf50c527._.js.map +0 -1
  358. package/web/.next/server/chunks/ssr/src_presentation_web_components_de814675._.js +0 -3
  359. package/web/.next/server/chunks/ssr/src_presentation_web_components_de814675._.js.map +0 -1
  360. package/web/.next/static/chunks/1be7ac7a24009333.css +0 -1
  361. package/web/.next/static/chunks/303a1217006489b9.js +0 -1
  362. package/web/.next/static/chunks/4443ee9c7733399b.js +0 -1
  363. package/web/.next/static/chunks/52b56677c842e45f.js +0 -3
  364. package/web/.next/static/chunks/5fb66ee5a353a6c6.js +0 -1
  365. package/web/.next/static/chunks/6cfc75060a243290.js +0 -1
  366. package/web/.next/static/chunks/d60f93a1a25ab09d.js +0 -1
  367. package/web/.next/static/chunks/dbbb446493f21874.js +0 -1
  368. package/web/.next/static/chunks/de66f8d6a67c2361.js +0 -1
  369. package/web/.next/static/chunks/de8b0265f780e212.js +0 -2
  370. /package/web/.next/static/{4hN7Gtw--ruMbDn0FRI2- → QmKY2sB2k_AgVUOVaOm0n}/_buildManifest.js +0 -0
  371. /package/web/.next/static/{4hN7Gtw--ruMbDn0FRI2- → QmKY2sB2k_AgVUOVaOm0n}/_clientMiddlewareManifest.json +0 -0
  372. /package/web/.next/static/{4hN7Gtw--ruMbDn0FRI2- → QmKY2sB2k_AgVUOVaOm0n}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
1
  module.exports=[74533,(a,b,c)=>{b.exports=a.x("node:child_process",()=>require("node:child_process"))},92658,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(28478)},12581,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},12513,a=>{"use strict";var b=a.i(92658),c=a.i(74533);let d={platform:process.platform,exec:(a,b)=>(0,c.execSync)(a,b)},e={darwin:"osascript -e 'POSIX path of (choose folder with prompt \"Select a repository folder\")'",linux:'zenity --file-selection --directory --title="Select a repository folder" 2>/dev/null',win32:"powershell -NoProfile -Command \"Add-Type -AssemblyName System.Windows.Forms; $f = New-Object System.Windows.Forms.FolderBrowserDialog; $f.Description = 'Select a repository folder'; if ($f.ShowDialog() -eq 'OK') { $f.SelectedPath } else { exit 1 }\""};class f{deps;constructor(a={}){this.deps={...d,...a}}getCommand(){return e[this.deps.platform]??null}pickFolder(){let a=this.getCommand();if(!a)throw Error(`Unsupported platform: ${this.deps.platform}`);try{let b=this.deps.exec(a,{encoding:"utf-8",timeout:6e4}).trim();return b.length>0?b:null}catch(a){var b;if("object"==typeof(b=a)&&null!==b&&"status"in b&&1===a.status)return null;throw a}}}async function g(){let a=new f;try{return{path:a.pickFolder()}}catch(a){return{path:null,error:a instanceof Error?a.message:"Failed to open folder dialog"}}}(0,a.i(12581).ensureServerEntryExports)([g]),(0,b.registerServerReference)(g,"00d2ec484f8cb2c1572db0a66a0889d072834b9e4c",null),a.s(["pickFolder",()=>g],12513)},86139,a=>{"use strict";var b=a.i(12513);a.s([],53565),a.i(53565),a.s(["00d2ec484f8cb2c1572db0a66a0889d072834b9e4c",()=>b.pickFolder],86139)}];
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},12513,a=>{"use strict";var b=a.i(92658),c=a.i(74533);let d={platform:process.platform,exec:(a,b)=>(0,c.execSync)(a,b)},e={darwin:"osascript -e 'POSIX path of (choose folder with prompt \"Select a repository folder\")'",linux:'zenity --file-selection --directory --title="Select a repository folder" 2>/dev/null',win32:"powershell -NoProfile -Command \"Add-Type -AssemblyName System.Windows.Forms; $f = New-Object System.Windows.Forms.FolderBrowserDialog; $f.Description = 'Select a repository folder'; if ($f.ShowDialog() -eq 'OK') { $f.SelectedPath } else { exit 1 }\""};class f{deps;constructor(a={}){this.deps={...d,...a}}getCommand(){return e[this.deps.platform]??null}pickFolder(){let a=this.getCommand();if(!a)throw Error(`Unsupported platform: ${this.deps.platform}`);try{let b=this.deps.exec(a,{encoding:"utf-8",timeout:6e4}).trim();return b.length>0?b:null}catch(a){var b;if("object"==typeof(b=a)&&null!==b&&"status"in b&&1===a.status)return null;throw a}}}async function g(){let a=new f;try{return{path:a.pickFolder()}}catch(a){return{path:null,error:a instanceof Error?a.message:"Failed to open folder dialog"}}}(0,a.i(12581).ensureServerEntryExports)([g]),(0,b.registerServerReference)(g,"00aec8bf006d513317b9f57220eb9a9329e20a9ee1",null),a.s(["pickFolder",()=>g],12513)},86139,a=>{"use strict";var b=a.i(12513);a.s([],53565),a.i(53565),a.s(["00aec8bf006d513317b9f57220eb9a9329e20a9ee1",()=>b.pickFolder],86139)}];
3
3
 
4
4
  //# sourceMappingURL=%5Broot-of-the-server%5D__804c006d._.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/build/webpack/loaders/next-flight-loader/server-reference.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/build/webpack/loaders/next-flight-loader/action-validate.ts","../../../../../../../packages/core/src/infrastructure/services/folder-dialog.service.ts","../../../../../../../src/presentation/web/app/actions/pick-folder.ts","../../../../../../../src/presentation/web/.next-internal/server/app/version/page/actions.js%20%28server%20actions%20loader%29"],"sourcesContent":["/* eslint-disable import/no-extraneous-dependencies */\nexport { registerServerReference } from 'react-server-dom-webpack/server'\n","// This function ensures that all the exported values are valid server actions,\n// during the runtime. By definition all actions are required to be async\n// functions, but here we can only check that they are functions.\nexport function ensureServerEntryExports(actions: any[]) {\n for (let i = 0; i < actions.length; i++) {\n const action = actions[i]\n if (typeof action !== 'function') {\n throw new Error(\n `A \"use server\" file can only export async functions, found ${typeof action}.\\nRead more: https://nextjs.org/docs/messages/invalid-use-server-value`\n )\n }\n }\n}\n","import { execSync } from 'node:child_process';\n\nexport interface FolderDialogDeps {\n platform: NodeJS.Platform;\n exec: (cmd: string, opts?: { encoding: BufferEncoding; timeout?: number }) => string;\n}\n\nconst defaultDeps: FolderDialogDeps = {\n platform: process.platform,\n exec: (cmd, opts) => execSync(cmd, opts) as unknown as string,\n};\n\n/**\n * Platform-specific commands that open a native OS folder picker dialog.\n * Each returns the chosen absolute folder path on stdout, or exits non-zero / returns empty on cancel.\n */\nconst PLATFORM_COMMANDS: Record<string, string> = {\n darwin: `osascript -e 'POSIX path of (choose folder with prompt \"Select a repository folder\")'`,\n linux: `zenity --file-selection --directory --title=\"Select a repository folder\" 2>/dev/null`,\n win32: `powershell -NoProfile -Command \"Add-Type -AssemblyName System.Windows.Forms; $f = New-Object System.Windows.Forms.FolderBrowserDialog; $f.Description = 'Select a repository folder'; if ($f.ShowDialog() -eq 'OK') { $f.SelectedPath } else { exit 1 }\"`,\n};\n\nexport class FolderDialogService {\n private deps: FolderDialogDeps;\n\n constructor(deps: Partial<FolderDialogDeps> = {}) {\n this.deps = { ...defaultDeps, ...deps };\n }\n\n /** Returns the OS-specific command string, or null if the platform is unsupported. */\n getCommand(): string | null {\n return PLATFORM_COMMANDS[this.deps.platform] ?? null;\n }\n\n /**\n * Opens a native folder picker dialog and returns the selected absolute path.\n * Returns `null` if the user cancels the dialog.\n * Throws if the platform is unsupported or the command fails unexpectedly.\n */\n pickFolder(): string | null {\n const command = this.getCommand();\n if (!command) {\n throw new Error(`Unsupported platform: ${this.deps.platform}`);\n }\n\n try {\n const result = this.deps.exec(command, { encoding: 'utf-8', timeout: 60_000 });\n const trimmed = result.trim();\n return trimmed.length > 0 ? trimmed : null;\n } catch (error: unknown) {\n // User cancelled the dialog — exit code 1 from osascript/zenity/powershell\n if (isExecError(error) && error.status === 1) {\n return null;\n }\n throw error;\n }\n }\n}\n\nfunction isExecError(error: unknown): error is { status: number } {\n return typeof error === 'object' && error !== null && 'status' in error;\n}\n","'use server';\n\nimport { FolderDialogService } from '@shepai/core/infrastructure/services/folder-dialog.service';\n\nexport async function pickFolder(): Promise<{ path: string | null; error?: string }> {\n const service = new FolderDialogService();\n\n try {\n const path = service.pickFolder();\n return { path };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to open folder dialog';\n return { path: null, error: message };\n }\n}\n","export {pickFolder as '00d2ec484f8cb2c1572db0a66a0889d072834b9e4c'} from 'ACTIONS_MODULE0'\n"],"names":["registerServerReference","ensureServerEntryExports","actions","i","length","action","Error"],"mappings":"oIAAoD,OAAA,cAAA,CAAA,EAAA,aAAA,oCAC3CA,0BAAAA,qCAAAA,EAAAA,uBAAuB,YAAQ,CAAA,CAAA,IAAA,iCCEjC,SAASC,EAAyBC,CAAc,EACrD,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAQE,MAAM,CAAED,IAAK,CACvC,IAAME,EAASH,CAAO,CAACC,EAAE,CACzB,GAAI,AAAkB,YAAY,OAAvBE,EACT,MAAM,OAAA,cAEL,CAFK,AAAIC,MACR,CAAC,2DAA2D,EAAE,OAAOD,EAAO;AAAA,oEAAuE,CAAC,EADhJ,oBAAA,OAAA,mBAAA,gBAAA,CAEN,EAEJ,CACF,0EATgBJ,2BAAAA,qCAAAA,8CCHhB,EAAA,EAAA,CAAA,CAAA,OAOA,IAAM,EAAgC,CACpC,SAAU,QAAQ,QAAQ,CAC1B,KAAM,CAAC,EAAK,IAAS,CAAA,EAAA,EAAA,QAAQ,AAAR,EAAS,EAAK,EACrC,EAMM,EAA4C,CAChD,OAAQ,CAAC,qFAAqF,CAAC,GAC/F,MAAO,CAAC,oFAAoF,CAAC,CAC7F,MAAO,CAAC,wPAAwP,CAAC,EACnQ,CAEO,OAAM,EACH,IAAuB,AAE/B,aAAY,EAAkC,CAAC,CAAC,CAAE,CAChD,IAAI,CAAC,IAAI,CAAG,CAAE,GAAG,CAAW,CAAE,GAAG,CAAI,AAAC,CACxC,CAGA,YAA4B,CAC1B,OAAO,CAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAI,IAClD,CAOA,YAA4B,CAC1B,IAAM,EAAU,IAAI,CAAC,UAAU,GAC/B,GAAI,CAAC,EACH,MAAM,AAAI,CADE,KACI,CAAC,sBAAsB,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAA,CAAE,EAG/D,GAAI,CAEF,IAAM,EADS,AACC,IADG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAS,CAAE,SAAU,QAAS,QAAS,GAAO,GACrD,IAAI,GAC3B,OAAO,EAAQ,MAAM,CAAG,EAAI,EAAU,IACxC,CAAE,MAAO,EAAgB,OAEvB,GAAI,AASgB,UAAjB,OADY,AACL,EATM,GAQa,CACa,OAAV,GAAkB,WAAY,GATnB,GAAG,CAApB,EAAM,MAAM,CACpC,OAAO,IAET,OAAM,CACR,CACF,CACF,CCrDO,eAAe,IACpB,IAAM,EAAU,IAAI,EAEpB,GAAI,CAEF,MAAO,CAAE,KADI,EAAQ,UAAU,EACjB,CAChB,CAAE,MAAO,EAAgB,CAEvB,MAAO,CAAE,KAAM,KAAM,MADL,CACY,YADK,MAAQ,EAAM,OAAO,CAAG,8BACrB,CACtC,CACF,0CAVsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,8DCJtB,IAAA,EAAA,EAAA,CAAA,CAAA","ignoreList":[0,1]}
1
+ {"version":3,"sources":["../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/build/webpack/loaders/next-flight-loader/server-reference.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/build/webpack/loaders/next-flight-loader/action-validate.ts","../../../../../../../packages/core/src/infrastructure/services/folder-dialog.service.ts","../../../../../../../src/presentation/web/app/actions/pick-folder.ts","../../../../../../../src/presentation/web/.next-internal/server/app/version/page/actions.js%20%28server%20actions%20loader%29"],"sourcesContent":["/* eslint-disable import/no-extraneous-dependencies */\nexport { registerServerReference } from 'react-server-dom-webpack/server'\n","// This function ensures that all the exported values are valid server actions,\n// during the runtime. By definition all actions are required to be async\n// functions, but here we can only check that they are functions.\nexport function ensureServerEntryExports(actions: any[]) {\n for (let i = 0; i < actions.length; i++) {\n const action = actions[i]\n if (typeof action !== 'function') {\n throw new Error(\n `A \"use server\" file can only export async functions, found ${typeof action}.\\nRead more: https://nextjs.org/docs/messages/invalid-use-server-value`\n )\n }\n }\n}\n","import { execSync } from 'node:child_process';\n\nexport interface FolderDialogDeps {\n platform: NodeJS.Platform;\n exec: (cmd: string, opts?: { encoding: BufferEncoding; timeout?: number }) => string;\n}\n\nconst defaultDeps: FolderDialogDeps = {\n platform: process.platform,\n exec: (cmd, opts) => execSync(cmd, opts) as unknown as string,\n};\n\n/**\n * Platform-specific commands that open a native OS folder picker dialog.\n * Each returns the chosen absolute folder path on stdout, or exits non-zero / returns empty on cancel.\n */\nconst PLATFORM_COMMANDS: Record<string, string> = {\n darwin: `osascript -e 'POSIX path of (choose folder with prompt \"Select a repository folder\")'`,\n linux: `zenity --file-selection --directory --title=\"Select a repository folder\" 2>/dev/null`,\n win32: `powershell -NoProfile -Command \"Add-Type -AssemblyName System.Windows.Forms; $f = New-Object System.Windows.Forms.FolderBrowserDialog; $f.Description = 'Select a repository folder'; if ($f.ShowDialog() -eq 'OK') { $f.SelectedPath } else { exit 1 }\"`,\n};\n\nexport class FolderDialogService {\n private deps: FolderDialogDeps;\n\n constructor(deps: Partial<FolderDialogDeps> = {}) {\n this.deps = { ...defaultDeps, ...deps };\n }\n\n /** Returns the OS-specific command string, or null if the platform is unsupported. */\n getCommand(): string | null {\n return PLATFORM_COMMANDS[this.deps.platform] ?? null;\n }\n\n /**\n * Opens a native folder picker dialog and returns the selected absolute path.\n * Returns `null` if the user cancels the dialog.\n * Throws if the platform is unsupported or the command fails unexpectedly.\n */\n pickFolder(): string | null {\n const command = this.getCommand();\n if (!command) {\n throw new Error(`Unsupported platform: ${this.deps.platform}`);\n }\n\n try {\n const result = this.deps.exec(command, { encoding: 'utf-8', timeout: 60_000 });\n const trimmed = result.trim();\n return trimmed.length > 0 ? trimmed : null;\n } catch (error: unknown) {\n // User cancelled the dialog — exit code 1 from osascript/zenity/powershell\n if (isExecError(error) && error.status === 1) {\n return null;\n }\n throw error;\n }\n }\n}\n\nfunction isExecError(error: unknown): error is { status: number } {\n return typeof error === 'object' && error !== null && 'status' in error;\n}\n","'use server';\n\nimport { FolderDialogService } from '@shepai/core/infrastructure/services/folder-dialog.service';\n\nexport async function pickFolder(): Promise<{ path: string | null; error?: string }> {\n const service = new FolderDialogService();\n\n try {\n const path = service.pickFolder();\n return { path };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to open folder dialog';\n return { path: null, error: message };\n }\n}\n","export {pickFolder as '00aec8bf006d513317b9f57220eb9a9329e20a9ee1'} from 'ACTIONS_MODULE0'\n"],"names":["registerServerReference","ensureServerEntryExports","actions","i","length","action","Error"],"mappings":"oIAAoD,OAAA,cAAA,CAAA,EAAA,aAAA,oCAC3CA,0BAAAA,qCAAAA,EAAAA,uBAAuB,YAAQ,CAAA,CAAA,IAAA,iCCEjC,SAASC,EAAyBC,CAAc,EACrD,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAQE,MAAM,CAAED,IAAK,CACvC,IAAME,EAASH,CAAO,CAACC,EAAE,CACzB,GAAI,AAAkB,YAAY,OAAvBE,EACT,MAAM,OAAA,cAEL,CAFK,AAAIC,MACR,CAAC,2DAA2D,EAAE,OAAOD,EAAO;AAAA,oEAAuE,CAAC,EADhJ,oBAAA,OAAA,mBAAA,gBAAA,CAEN,EAEJ,CACF,0EATgBJ,2BAAAA,qCAAAA,8CCHhB,EAAA,EAAA,CAAA,CAAA,OAOA,IAAM,EAAgC,CACpC,SAAU,QAAQ,QAAQ,CAC1B,KAAM,CAAC,EAAK,IAAS,CAAA,EAAA,EAAA,QAAQ,AAAR,EAAS,EAAK,EACrC,EAMM,EAA4C,CAChD,OAAQ,CAAC,qFAAqF,CAAC,GAC/F,MAAO,CAAC,oFAAoF,CAAC,CAC7F,MAAO,CAAC,wPAAwP,CAAC,EACnQ,CAEO,OAAM,EACH,IAAuB,AAE/B,aAAY,EAAkC,CAAC,CAAC,CAAE,CAChD,IAAI,CAAC,IAAI,CAAG,CAAE,GAAG,CAAW,CAAE,GAAG,CAAI,AAAC,CACxC,CAGA,YAA4B,CAC1B,OAAO,CAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAI,IAClD,CAOA,YAA4B,CAC1B,IAAM,EAAU,IAAI,CAAC,UAAU,GAC/B,GAAI,CAAC,EACH,MAAM,AAAI,CADE,KACI,CAAC,sBAAsB,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAA,CAAE,EAG/D,GAAI,CAEF,IAAM,EADS,AACC,IADG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAS,CAAE,SAAU,QAAS,QAAS,GAAO,GACrD,IAAI,GAC3B,OAAO,EAAQ,MAAM,CAAG,EAAI,EAAU,IACxC,CAAE,MAAO,EAAgB,OAEvB,GAAI,AASgB,UAAjB,OADY,AACL,EATM,GAQa,CACa,OAAV,GAAkB,WAAY,GATnB,GAAG,CAApB,EAAM,MAAM,CACpC,OAAO,IAET,OAAM,CACR,CACF,CACF,CCrDO,eAAe,IACpB,IAAM,EAAU,IAAI,EAEpB,GAAI,CAEF,MAAO,CAAE,KADI,EAAQ,UAAU,EACjB,CAChB,CAAE,MAAO,EAAgB,CAEvB,MAAO,CAAE,KAAM,KAAM,MADL,CACY,YADK,MAAQ,EAAM,OAAO,CAAG,8BACrB,CACtC,CACF,0CAVsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,8DCJtB,IAAA,EAAA,EAAA,CAAA,CAAA","ignoreList":[0,1]}
@@ -1,4 +1,4 @@
1
- module.exports=[23504,27900,a=>{"use strict";var b=a.i(92658),c=a.i(96380);let d={"claude-opus-4-6":{displayName:"Opus 4.6",description:"Most capable, complex tasks"},"claude-sonnet-4-6":{displayName:"Sonnet 4.6",description:"Fast & balanced"},"claude-haiku-4-5":{displayName:"Haiku 4.5",description:"Lightweight & quick"},"gemini-3.1-pro":{displayName:"Gemini 3.1 Pro",description:"Advanced reasoning"},"gemini-3-flash":{displayName:"Gemini 3 Flash",description:"Ultra-fast responses"},"gemini-2.5-pro":{displayName:"Gemini 2.5 Pro",description:"Reliable workhorse"},"gemini-2.5-flash":{displayName:"Gemini 2.5 Flash",description:"Speed-optimized"},"gpt-5.4-high":{displayName:"GPT-5.4",description:"Latest reasoning model"},"gpt-5.2":{displayName:"GPT-5.2",description:"Flagship model"},"gpt-5.3-codex":{displayName:"GPT-5.3 Codex",description:"Code specialist"},"composer-1.5":{displayName:"Composer 1.5",description:"Multi-file editing"},"grok-code":{displayName:"Grok Code",description:"xAI code model"},"gpt-8":{displayName:"GPT-8",description:"Writes code before you think it"},"opus-7":{displayName:"Opus 7",description:"Achieved consciousness, ships on time"}},e={displayName:"",description:""};function f(a){let b=d[a];return b||{...e,displayName:a.replace(/^claude-/,"").replace(/^gemini-/,"Gemini ").replace(/^gpt-/,"GPT-").replace(/-/g," ").replace(/\b\w/g,a=>a.toUpperCase())}}var g=a.i(12581);let h={"claude-code":"Claude Code",cursor:"Cursor CLI","gemini-cli":"Gemini CLI",dev:"Demo"},i={"claude-code":0,cursor:1,"gemini-cli":2,dev:99};async function j(){try{let a=(0,c.resolve)("IAgentExecutorFactory");return a.getSupportedAgents().map(b=>({agentType:b,label:h[b]??b,models:a.getSupportedModels(b).map(a=>({id:a,...f(a)}))})).map(a=>"dev"===a.agentType&&0===a.models.length?{...a,models:[{id:"gpt-8",...f("gpt-8")},{id:"opus-7",...f("opus-7")}]}:a).filter(a=>a.models.length>0).sort((a,b)=>(i[a.agentType]??50)-(i[b.agentType]??50))}catch{return[]}}(0,g.ensureServerEntryExports)([j]),(0,b.registerServerReference)(j,"00dcf1c27704dac95183a2f6bcf024a68ba0585863",null),a.s(["getAllAgentModels",()=>j],23504);var k=a.i(33244);async function l(a,b){if(!a.trim())return{ok:!1,error:"agent type is required"};try{let d=(0,c.resolve)("CompleteWebOnboardingUseCase"),e=await d.execute({agentType:a.trim(),model:b});return(0,k.resetSettings)(),(0,k.initializeSettings)(e),{ok:!0}}catch(a){return{ok:!1,error:a instanceof Error?a.message:"Failed to update agent and model"}}}(0,g.ensureServerEntryExports)([l]),(0,b.registerServerReference)(l,"60f9a14929ba16cd57617ac050e11a469640cfdee4",null),a.s(["updateAgentAndModel",()=>l],27900)},96380,a=>{"use strict";function b(a){let b=globalThis.__shepContainer;if(!b)throw Error("DI container not available. Ensure the CLI bootstrap or dev-server has initialized it.");return b.resolve(a)}a.s(["resolve",()=>b])},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},12714,(a,b,c)=>{b.exports=a.x("node:fs/promises",()=>require("node:fs/promises"))},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},32278,a=>{"use strict";a.i(12714);var b=a.i(60526),c=a.i(50227);function d(){return process.env.SHEP_HOME??(0,c.join)((0,b.homedir)(),".shep")}a.i(2157),a.s(["getShepHomeDir",()=>d])},74533,(a,b,c)=>{b.exports=a.x("node:child_process",()=>require("node:child_process"))},92658,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(28478)},12581,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},12513,a=>{"use strict";var b=a.i(92658),c=a.i(74533);let d={platform:process.platform,exec:(a,b)=>(0,c.execSync)(a,b)},e={darwin:"osascript -e 'POSIX path of (choose folder with prompt \"Select a repository folder\")'",linux:'zenity --file-selection --directory --title="Select a repository folder" 2>/dev/null',win32:"powershell -NoProfile -Command \"Add-Type -AssemblyName System.Windows.Forms; $f = New-Object System.Windows.Forms.FolderBrowserDialog; $f.Description = 'Select a repository folder'; if ($f.ShowDialog() -eq 'OK') { $f.SelectedPath } else { exit 1 }\""};class f{deps;constructor(a={}){this.deps={...d,...a}}getCommand(){return e[this.deps.platform]??null}pickFolder(){let a=this.getCommand();if(!a)throw Error(`Unsupported platform: ${this.deps.platform}`);try{let b=this.deps.exec(a,{encoding:"utf-8",timeout:6e4}).trim();return b.length>0?b:null}catch(a){var b;if("object"==typeof(b=a)&&null!==b&&"status"in b&&1===a.status)return null;throw a}}}async function g(){let a=new f;try{return{path:a.pickFolder()}}catch(a){return{path:null,error:a instanceof Error?a.message:"Failed to open folder dialog"}}}(0,a.i(12581).ensureServerEntryExports)([g]),(0,b.registerServerReference)(g,"00d2ec484f8cb2c1572db0a66a0889d072834b9e4c",null),a.s(["pickFolder",()=>g],12513)},57764,(a,b,c)=>{b.exports=a.x("node:url",()=>require("node:url"))},43738,a=>{"use strict";var b=a.i(2157),c=a.i(50227),d=a.i(57764);let e={get url(){return`file://${a.P("packages/core/src/infrastructure/services/tool-installer/tool-metadata.ts")}`}},f=["name","summary","description","tags","binary","packageManager","commands","timeout","documentationUrl","verifyCommand"],g=function(){let a,g=(0,c.join)((0,d.fileURLToPath)(e.url),"..","tools"),h={};try{a=(0,b.readdirSync)(g).filter(a=>a.endsWith(".json"))}catch{return h}for(let d of a){let a=(0,c.basename)(d,".json");try{let e=(0,b.readFileSync)((0,c.join)(g,d),"utf-8"),i=JSON.parse(e);if(f.filter(a=>!(a in i)).length>0)continue;h[a]=i}catch{}}return h}();function h(){return Object.entries(g).filter(([,a])=>a.tags.includes("terminal")&&null!=a.openDirectory)}a.s(["getTerminalEntries",()=>h])},15046,(a,b,c)=>{"use strict";var d,e=(a,b)=>()=>(b||a((b={exports:{}}).exports,b),b.exports),f=e(b=>{Object.defineProperty(b,"__esModule",{value:!0}),b.sync=b.isexe=void 0;var c=a.r(2157),d=a.r(12714);b.isexe=async(a,b={})=>{let{ignoreErrors:c=!1}=b;try{return e(await (0,d.stat)(a),b)}catch(a){if(c||"EACCES"===a.code)return!1;throw a}},b.sync=(a,b={})=>{let{ignoreErrors:d=!1}=b;try{return e((0,c.statSync)(a),b)}catch(a){if(d||"EACCES"===a.code)return!1;throw a}};var e=(a,b)=>a.isFile()&&f(a,b),f=(a,b)=>{let c=b.uid??process.getuid?.(),d=b.groups??process.getgroups?.()??[],e=b.gid??process.getgid?.()??d[0];if(void 0===c||void 0===e)throw Error("cannot get uid or gid");let f=new Set([e,...d]),g=a.mode,h=a.uid,i=a.gid,j=parseInt("100",8),k=parseInt("010",8);return!!(g&parseInt("001",8)||g&k&&f.has(i)||g&j&&h===c||g&(j|k)&&0===c)}}),g=e(b=>{Object.defineProperty(b,"__esModule",{value:!0}),b.sync=b.isexe=void 0;var c=a.r(2157),d=a.r(12714),e=a.r(50227);b.isexe=async(a,b={})=>{let{ignoreErrors:c=!1}=b;try{return f(await (0,d.stat)(a),a,b)}catch(a){if(c||"EACCES"===a.code)return!1;throw a}},b.sync=(a,b={})=>{let{ignoreErrors:d=!1}=b;try{return f((0,c.statSync)(a),a,b)}catch(a){if(d||"EACCES"===a.code)return!1;throw a}};var f=(a,b,c)=>a.isFile()&&((a,b)=>{let{pathExt:c=process.env.PATHEXT||""}=b,d=c.split(e.delimiter);if(-1!==d.indexOf(""))return!0;for(let b of d){let c=b.toLowerCase(),d=a.substring(a.length-c.length).toLowerCase();if(c&&d===c)return!0}return!1})(b,c)}),h=e(a=>{Object.defineProperty(a,"__esModule",{value:!0})}),i=c&&c.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c);var e=Object.getOwnPropertyDescriptor(b,c);(!e||("get"in e?!b.__esModule:e.writable||e.configurable))&&(e={enumerable:!0,get:function(){return b[c]}}),Object.defineProperty(a,d,e)}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),j=c&&c.__setModuleDefault||(Object.create?function(a,b){Object.defineProperty(a,"default",{enumerable:!0,value:b})}:function(a,b){a.default=b}),k=c&&c.__importStar||(d=function(a){return(d=Object.getOwnPropertyNames||function(a){var b=[];for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[b.length]=c);return b})(a)},function(a){if(a&&a.__esModule)return a;var b={};if(null!=a)for(var c=d(a),e=0;e<c.length;e++)"default"!==c[e]&&i(b,a,c[e]);return j(b,a),b}),l=c&&c.__exportStar||function(a,b){for(var c in a)"default"===c||Object.prototype.hasOwnProperty.call(b,c)||i(b,a,c)};Object.defineProperty(c,"__esModule",{value:!0}),c.sync=c.isexe=c.posix=c.win32=void 0;var m=k(f());c.posix=m;var n=k(g());c.win32=n,l(h(),c);var o="win32"===(process.env._ISEXE_TEST_PLATFORM_||process.platform)?n:m;c.isexe=o.isexe,c.sync=o.sync},11346,(a,b,c)=>{let{isexe:d,sync:e}=a.r(15046),{join:f,delimiter:g,sep:h,posix:i}=a.r(14747);process.platform;let j=new RegExp(`[${i.sep}${h===i.sep?"":h}]`.replace(/(\\)/g,"\\$1")),k=RegExp(`^\\.${j.source}`),l=a=>Object.assign(Error(`not found: ${a}`),{code:"ENOENT"}),m=(a,{path:b=process.env.PATH,pathExt:c=process.env.PATHEXT,delimiter:d=g})=>({pathEnv:a.match(j)?[""]:[...(b||"").split(d)],pathExt:[""]}),n=(a,b)=>{let c=/^".*"$/.test(a)?a.slice(1,-1):a;return(!c&&k.test(b)?b.slice(0,2):"")+f(c,b)},o=async(a,b={})=>{let{pathEnv:c,pathExt:e,pathExtExe:f}=m(a,b),g=[];for(let h of c){let c=n(h,a);for(let a of e){let e=c+a;if(await d(e,{pathExt:f,ignoreErrors:!0})){if(!b.all)return e;g.push(e)}}}if(b.all&&g.length)return g;if(b.nothrow)return null;throw l(a)};b.exports=o,o.sync=(a,b={})=>{let{pathEnv:c,pathExt:d,pathExtExe:f}=m(a,b),g=[];for(let h of c){let c=n(h,a);for(let a of d){let d=c+a;if(e(d,{pathExt:f,ignoreErrors:!0})){if(!b.all)return d;g.push(d)}}}if(b.all&&g.length)return g;if(b.nothrow)return null;throw l(a)}},86561,79195,a=>{"use strict";var b=a.i(92658),c=a.i(2157),d=a.i(50227),e=a.i(96380),f=a.i(32278),g=a.i(12581);async function h(){try{let b=(0,e.resolve)("LoadSettingsUseCase"),g=await b.execute(),h=(0,f.getShepHomeDir)(),i="Unknown";try{var a;let b=(0,d.join)(h,"data");i=(a=(0,c.statSync)(b).size)<1024?`${a} B`:a<1048576?`${(a/1024).toFixed(1)} KB`:`${(a/1048576).toFixed(1)} MB`}catch{}return{settings:g,shepHome:h,dbFileSize:i}}catch(a){return{error:a instanceof Error?a.message:"Failed to load settings"}}}(0,g.ensureServerEntryExports)([h]),(0,b.registerServerReference)(h,"009d62aa35dca8331360e54b2a724960ace6be9fa0",null),a.s(["loadSettings",()=>h],86561);var i=a.i(60526),j=a.i(43738),k=a.i(11346);let l=async a=>{try{let b=await (0,k.default)(a,{nothrow:!0});if(null!==b)return{found:!0};return{found:!1,notInPath:!0}}catch(a){return{found:!1,error:a instanceof Error?a:Error(String(a))}}};async function m(){let b=(0,i.platform)(),c=(0,j.getTerminalEntries)(),d=[];for(let[e,f]of c){if(f.platforms&&!f.platforms.includes(b))continue;if("system-terminal"===e){d.unshift({id:"system",name:f.name,available:!0});continue}let c="string"==typeof f.binary?f.binary:f.binary[b];if(!c)continue;let g=!1;if(f.verifyCommand.startsWith("test "))try{let{execSync:b}=await a.A(82848);b(f.verifyCommand,{stdio:"ignore"}),g=!0}catch{g=!1}else g=(await l(c)).found;d.push({id:e,name:f.name,available:g})}return d.some(a=>"system"===a.id)||d.unshift({id:"system",name:"System Terminal",available:!0}),d}(0,g.ensureServerEntryExports)([m]),(0,b.registerServerReference)(m,"0059c022c031bd0246acb5e8759281c61d6394caec",null),a.s(["getAvailableTerminals",()=>m],79195)},82848,a=>{a.v(a=>Promise.resolve().then(()=>a(74533)))}];
1
+ module.exports=[23504,27900,a=>{"use strict";var b=a.i(92658),c=a.i(96380);let d={"claude-opus-4-6":{displayName:"Opus 4.6",description:"Most capable, complex tasks"},"claude-sonnet-4-6":{displayName:"Sonnet 4.6",description:"Fast & balanced"},"claude-haiku-4-5":{displayName:"Haiku 4.5",description:"Lightweight & quick"},"gemini-3.1-pro":{displayName:"Gemini 3.1 Pro",description:"Advanced reasoning"},"gemini-3-flash":{displayName:"Gemini 3 Flash",description:"Ultra-fast responses"},"gemini-2.5-pro":{displayName:"Gemini 2.5 Pro",description:"Reliable workhorse"},"gemini-2.5-flash":{displayName:"Gemini 2.5 Flash",description:"Speed-optimized"},"gpt-5.4-high":{displayName:"GPT-5.4",description:"Latest reasoning model"},"gpt-5.2":{displayName:"GPT-5.2",description:"Flagship model"},"gpt-5.3-codex":{displayName:"GPT-5.3 Codex",description:"Code specialist"},"composer-1.5":{displayName:"Composer 1.5",description:"Multi-file editing"},"grok-code":{displayName:"Grok Code",description:"xAI code model"},"gpt-8":{displayName:"GPT-8",description:"Writes code before you think it"},"opus-7":{displayName:"Opus 7",description:"Achieved consciousness, ships on time"}},e={displayName:"",description:""};function f(a){let b=d[a];return b||{...e,displayName:a.replace(/^claude-/,"").replace(/^gemini-/,"Gemini ").replace(/^gpt-/,"GPT-").replace(/-/g," ").replace(/\b\w/g,a=>a.toUpperCase())}}var g=a.i(12581);let h={"claude-code":"Claude Code",cursor:"Cursor CLI","gemini-cli":"Gemini CLI",dev:"Demo"},i={"claude-code":0,cursor:1,"gemini-cli":2,dev:99};async function j(){try{let a=(0,c.resolve)("IAgentExecutorFactory");return a.getSupportedAgents().map(b=>({agentType:b,label:h[b]??b,models:a.getSupportedModels(b).map(a=>({id:a,...f(a)}))})).map(a=>"dev"===a.agentType&&0===a.models.length?{...a,models:[{id:"gpt-8",...f("gpt-8")},{id:"opus-7",...f("opus-7")}]}:a).filter(a=>a.models.length>0).sort((a,b)=>(i[a.agentType]??50)-(i[b.agentType]??50))}catch{return[]}}(0,g.ensureServerEntryExports)([j]),(0,b.registerServerReference)(j,"007a5f968ffe52cab7fd4d17da573558c29ccb0ecb",null),a.s(["getAllAgentModels",()=>j],23504);var k=a.i(33244);async function l(a,b){if(!a.trim())return{ok:!1,error:"agent type is required"};try{let d=(0,c.resolve)("CompleteWebOnboardingUseCase"),e=await d.execute({agentType:a.trim(),model:b});return(0,k.resetSettings)(),(0,k.initializeSettings)(e),{ok:!0}}catch(a){return{ok:!1,error:a instanceof Error?a.message:"Failed to update agent and model"}}}(0,g.ensureServerEntryExports)([l]),(0,b.registerServerReference)(l,"60b42372e862be0a555c7b430b36eef032335aa248",null),a.s(["updateAgentAndModel",()=>l],27900)},96380,a=>{"use strict";function b(a){let b=globalThis.__shepContainer;if(!b)throw Error("DI container not available. Ensure the CLI bootstrap or dev-server has initialized it.");return b.resolve(a)}a.s(["resolve",()=>b])},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},12714,(a,b,c)=>{b.exports=a.x("node:fs/promises",()=>require("node:fs/promises"))},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},32278,a=>{"use strict";a.i(12714);var b=a.i(60526),c=a.i(50227);function d(){return process.env.SHEP_HOME??(0,c.join)((0,b.homedir)(),".shep")}a.i(2157),a.s(["getShepHomeDir",()=>d])},74533,(a,b,c)=>{b.exports=a.x("node:child_process",()=>require("node:child_process"))},92658,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(28478)},12581,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},12513,a=>{"use strict";var b=a.i(92658),c=a.i(74533);let d={platform:process.platform,exec:(a,b)=>(0,c.execSync)(a,b)},e={darwin:"osascript -e 'POSIX path of (choose folder with prompt \"Select a repository folder\")'",linux:'zenity --file-selection --directory --title="Select a repository folder" 2>/dev/null',win32:"powershell -NoProfile -Command \"Add-Type -AssemblyName System.Windows.Forms; $f = New-Object System.Windows.Forms.FolderBrowserDialog; $f.Description = 'Select a repository folder'; if ($f.ShowDialog() -eq 'OK') { $f.SelectedPath } else { exit 1 }\""};class f{deps;constructor(a={}){this.deps={...d,...a}}getCommand(){return e[this.deps.platform]??null}pickFolder(){let a=this.getCommand();if(!a)throw Error(`Unsupported platform: ${this.deps.platform}`);try{let b=this.deps.exec(a,{encoding:"utf-8",timeout:6e4}).trim();return b.length>0?b:null}catch(a){var b;if("object"==typeof(b=a)&&null!==b&&"status"in b&&1===a.status)return null;throw a}}}async function g(){let a=new f;try{return{path:a.pickFolder()}}catch(a){return{path:null,error:a instanceof Error?a.message:"Failed to open folder dialog"}}}(0,a.i(12581).ensureServerEntryExports)([g]),(0,b.registerServerReference)(g,"00aec8bf006d513317b9f57220eb9a9329e20a9ee1",null),a.s(["pickFolder",()=>g],12513)},57764,(a,b,c)=>{b.exports=a.x("node:url",()=>require("node:url"))},43738,a=>{"use strict";var b=a.i(2157),c=a.i(50227),d=a.i(57764);let e={get url(){return`file://${a.P("packages/core/src/infrastructure/services/tool-installer/tool-metadata.ts")}`}},f=["name","summary","description","tags","binary","packageManager","commands","timeout","documentationUrl","verifyCommand"],g=function(){let a,g=(0,c.join)((0,d.fileURLToPath)(e.url),"..","tools"),h={};try{a=(0,b.readdirSync)(g).filter(a=>a.endsWith(".json"))}catch{return h}for(let d of a){let a=(0,c.basename)(d,".json");try{let e=(0,b.readFileSync)((0,c.join)(g,d),"utf-8"),i=JSON.parse(e);if(f.filter(a=>!(a in i)).length>0)continue;h[a]=i}catch{}}return h}();function h(){return Object.entries(g).filter(([,a])=>a.tags.includes("terminal")&&null!=a.openDirectory)}a.s(["getTerminalEntries",()=>h])},15046,(a,b,c)=>{"use strict";var d,e=(a,b)=>()=>(b||a((b={exports:{}}).exports,b),b.exports),f=e(b=>{Object.defineProperty(b,"__esModule",{value:!0}),b.sync=b.isexe=void 0;var c=a.r(2157),d=a.r(12714);b.isexe=async(a,b={})=>{let{ignoreErrors:c=!1}=b;try{return e(await (0,d.stat)(a),b)}catch(a){if(c||"EACCES"===a.code)return!1;throw a}},b.sync=(a,b={})=>{let{ignoreErrors:d=!1}=b;try{return e((0,c.statSync)(a),b)}catch(a){if(d||"EACCES"===a.code)return!1;throw a}};var e=(a,b)=>a.isFile()&&f(a,b),f=(a,b)=>{let c=b.uid??process.getuid?.(),d=b.groups??process.getgroups?.()??[],e=b.gid??process.getgid?.()??d[0];if(void 0===c||void 0===e)throw Error("cannot get uid or gid");let f=new Set([e,...d]),g=a.mode,h=a.uid,i=a.gid,j=parseInt("100",8),k=parseInt("010",8);return!!(g&parseInt("001",8)||g&k&&f.has(i)||g&j&&h===c||g&(j|k)&&0===c)}}),g=e(b=>{Object.defineProperty(b,"__esModule",{value:!0}),b.sync=b.isexe=void 0;var c=a.r(2157),d=a.r(12714),e=a.r(50227);b.isexe=async(a,b={})=>{let{ignoreErrors:c=!1}=b;try{return f(await (0,d.stat)(a),a,b)}catch(a){if(c||"EACCES"===a.code)return!1;throw a}},b.sync=(a,b={})=>{let{ignoreErrors:d=!1}=b;try{return f((0,c.statSync)(a),a,b)}catch(a){if(d||"EACCES"===a.code)return!1;throw a}};var f=(a,b,c)=>a.isFile()&&((a,b)=>{let{pathExt:c=process.env.PATHEXT||""}=b,d=c.split(e.delimiter);if(-1!==d.indexOf(""))return!0;for(let b of d){let c=b.toLowerCase(),d=a.substring(a.length-c.length).toLowerCase();if(c&&d===c)return!0}return!1})(b,c)}),h=e(a=>{Object.defineProperty(a,"__esModule",{value:!0})}),i=c&&c.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c);var e=Object.getOwnPropertyDescriptor(b,c);(!e||("get"in e?!b.__esModule:e.writable||e.configurable))&&(e={enumerable:!0,get:function(){return b[c]}}),Object.defineProperty(a,d,e)}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),j=c&&c.__setModuleDefault||(Object.create?function(a,b){Object.defineProperty(a,"default",{enumerable:!0,value:b})}:function(a,b){a.default=b}),k=c&&c.__importStar||(d=function(a){return(d=Object.getOwnPropertyNames||function(a){var b=[];for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[b.length]=c);return b})(a)},function(a){if(a&&a.__esModule)return a;var b={};if(null!=a)for(var c=d(a),e=0;e<c.length;e++)"default"!==c[e]&&i(b,a,c[e]);return j(b,a),b}),l=c&&c.__exportStar||function(a,b){for(var c in a)"default"===c||Object.prototype.hasOwnProperty.call(b,c)||i(b,a,c)};Object.defineProperty(c,"__esModule",{value:!0}),c.sync=c.isexe=c.posix=c.win32=void 0;var m=k(f());c.posix=m;var n=k(g());c.win32=n,l(h(),c);var o="win32"===(process.env._ISEXE_TEST_PLATFORM_||process.platform)?n:m;c.isexe=o.isexe,c.sync=o.sync},11346,(a,b,c)=>{let{isexe:d,sync:e}=a.r(15046),{join:f,delimiter:g,sep:h,posix:i}=a.r(14747);process.platform;let j=new RegExp(`[${i.sep}${h===i.sep?"":h}]`.replace(/(\\)/g,"\\$1")),k=RegExp(`^\\.${j.source}`),l=a=>Object.assign(Error(`not found: ${a}`),{code:"ENOENT"}),m=(a,{path:b=process.env.PATH,pathExt:c=process.env.PATHEXT,delimiter:d=g})=>({pathEnv:a.match(j)?[""]:[...(b||"").split(d)],pathExt:[""]}),n=(a,b)=>{let c=/^".*"$/.test(a)?a.slice(1,-1):a;return(!c&&k.test(b)?b.slice(0,2):"")+f(c,b)},o=async(a,b={})=>{let{pathEnv:c,pathExt:e,pathExtExe:f}=m(a,b),g=[];for(let h of c){let c=n(h,a);for(let a of e){let e=c+a;if(await d(e,{pathExt:f,ignoreErrors:!0})){if(!b.all)return e;g.push(e)}}}if(b.all&&g.length)return g;if(b.nothrow)return null;throw l(a)};b.exports=o,o.sync=(a,b={})=>{let{pathEnv:c,pathExt:d,pathExtExe:f}=m(a,b),g=[];for(let h of c){let c=n(h,a);for(let a of d){let d=c+a;if(e(d,{pathExt:f,ignoreErrors:!0})){if(!b.all)return d;g.push(d)}}}if(b.all&&g.length)return g;if(b.nothrow)return null;throw l(a)}},86561,79195,a=>{"use strict";var b=a.i(92658),c=a.i(2157),d=a.i(50227),e=a.i(96380),f=a.i(32278),g=a.i(12581);async function h(){try{let b=(0,e.resolve)("LoadSettingsUseCase"),g=await b.execute(),h=(0,f.getShepHomeDir)(),i="Unknown";try{var a;let b=(0,d.join)(h,"data");i=(a=(0,c.statSync)(b).size)<1024?`${a} B`:a<1048576?`${(a/1024).toFixed(1)} KB`:`${(a/1048576).toFixed(1)} MB`}catch{}return{settings:g,shepHome:h,dbFileSize:i}}catch(a){return{error:a instanceof Error?a.message:"Failed to load settings"}}}(0,g.ensureServerEntryExports)([h]),(0,b.registerServerReference)(h,"0057d2ac1fef05504c2b59746ab39580e1b73aa939",null),a.s(["loadSettings",()=>h],86561);var i=a.i(60526),j=a.i(43738),k=a.i(11346);let l=async a=>{try{let b=await (0,k.default)(a,{nothrow:!0});if(null!==b)return{found:!0};return{found:!1,notInPath:!0}}catch(a){return{found:!1,error:a instanceof Error?a:Error(String(a))}}};async function m(){let b=(0,i.platform)(),c=(0,j.getTerminalEntries)(),d=[];for(let[e,f]of c){if(f.platforms&&!f.platforms.includes(b))continue;if("system-terminal"===e){d.unshift({id:"system",name:f.name,available:!0});continue}let c="string"==typeof f.binary?f.binary:f.binary[b];if(!c)continue;let g=!1;if(f.verifyCommand.startsWith("test "))try{let{execSync:b}=await a.A(82848);b(f.verifyCommand,{stdio:"ignore"}),g=!0}catch{g=!1}else g=(await l(c)).found;d.push({id:e,name:f.name,available:g})}return d.some(a=>"system"===a.id)||d.unshift({id:"system",name:"System Terminal",available:!0}),d}(0,g.ensureServerEntryExports)([m]),(0,b.registerServerReference)(m,"00fd35bc4693d7dab68aaea43f5acd91d70ebcaf7e",null),a.s(["getAvailableTerminals",()=>m],79195)},82848,a=>{a.v(a=>Promise.resolve().then(()=>a(74533)))}];
3
3
 
4
4
  //# sourceMappingURL=%5Broot-of-the-server%5D__8c553503._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[43285,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/dynamic-access-async-storage.external.js",()=>require("next/dist/server/app-render/dynamic-access-async-storage.external.js"))},18622,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},20635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},41164,(a,b,c)=>{"use strict";b.exports=a.r(18622)},28478,(a,b,c)=>{"use strict";b.exports=a.r(41164).vendored["react-rsc"].ReactServerDOMTurbopackServer},92807,(a,b,c)=>{"use strict";b.exports=a.r(41164).vendored["react-rsc"].ReactJsxRuntime},70406,(a,b,c)=>{b.exports=a.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},14747,(a,b,c)=>{b.exports=a.x("path",()=>require("path"))},46870,(a,b,c)=>{"use strict";b.exports=a.r(41164).vendored["react-rsc"].React},37303,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(28478);a.n(d("[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>"))},43174,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(28478);a.n(d("[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/global-error.js"))},41208,a=>{"use strict";a.i(37303);var b=a.i(43174);a.n(b)}];
1
+ module.exports=[43285,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/dynamic-access-async-storage.external.js",()=>require("next/dist/server/app-render/dynamic-access-async-storage.external.js"))},18622,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},20635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},70406,(a,b,c)=>{b.exports=a.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},14747,(a,b,c)=>{b.exports=a.x("path",()=>require("path"))},41164,(a,b,c)=>{"use strict";b.exports=a.r(18622)},28478,(a,b,c)=>{"use strict";b.exports=a.r(41164).vendored["react-rsc"].ReactServerDOMTurbopackServer},92807,(a,b,c)=>{"use strict";b.exports=a.r(41164).vendored["react-rsc"].ReactJsxRuntime},46870,(a,b,c)=>{"use strict";b.exports=a.r(41164).vendored["react-rsc"].React},37303,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(28478);a.n(d("[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>"))},43174,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(28478);a.n(d("[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/global-error.js"))},41208,a=>{"use strict";a.i(37303);var b=a.i(43174);a.n(b)}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__4c7486cb._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__9bc1434f._.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/module.compiled.js","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/rsc/react-server-dom-turbopack-server.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/rsc/react-jsx-runtime.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/rsc/react.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/dist/client/components/builtin/global-error.js/__nextjs-internal-proxy.cjs","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/client/components/builtin/global-error.tsx"],"sourcesContent":["if (process.env.NEXT_RUNTIME === 'edge') {\n module.exports = require('next/dist/server/route-modules/app-page/module.js')\n} else {\n if (process.env.__NEXT_EXPERIMENTAL_REACT) {\n if (process.env.NODE_ENV === 'development') {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo-experimental.runtime.dev.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page-experimental.runtime.dev.js')\n }\n } else {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page-experimental.runtime.prod.js')\n }\n }\n } else {\n if (process.env.NODE_ENV === 'development') {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo.runtime.dev.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page.runtime.dev.js')\n }\n } else {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo.runtime.prod.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page.runtime.prod.js')\n }\n }\n }\n}\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-rsc']!.ReactServerDOMTurbopackServer\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-rsc']!.ReactJsxRuntime\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-rsc']!.React\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nconst { createClientModuleProxy } = require(\"react-server-dom-turbopack/server\");\n\n__turbopack_context__.n(createClientModuleProxy(\"[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/global-error.js\"));\n","'use client'\n\nimport { HandleISRError } from '../handle-isr-error'\n\nconst styles = {\n error: {\n // https://github.com/sindresorhus/modern-normalize/blob/main/modern-normalize.css#L38-L52\n fontFamily:\n 'system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"',\n height: '100vh',\n textAlign: 'center',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n },\n text: {\n fontSize: '14px',\n fontWeight: 400,\n lineHeight: '28px',\n margin: '0 8px',\n },\n} as const\n\nexport type GlobalErrorComponent = React.ComponentType<{\n error: any\n}>\nfunction DefaultGlobalError({ error }: { error: any }) {\n const digest: string | undefined = error?.digest\n return (\n <html id=\"__next_error__\">\n <head></head>\n <body>\n <HandleISRError error={error} />\n <div style={styles.error}>\n <div>\n <h2 style={styles.text}>\n Application error: a {digest ? 'server' : 'client'}-side exception\n has occurred while loading {window.location.hostname} (see the{' '}\n {digest ? 'server logs' : 'browser console'} for more\n information).\n </h2>\n {digest ? <p style={styles.text}>{`Digest: ${digest}`}</p> : null}\n </div>\n </div>\n </body>\n </html>\n )\n}\n\n// Exported so that the import signature in the loaders can be identical to user\n// supplied custom global error signatures.\nexport default DefaultGlobalError\n"],"names":["process","env","NEXT_RUNTIME","module","exports","require","__NEXT_EXPERIMENTAL_REACT","NODE_ENV","TURBOPACK","vendored","ReactServerDOMTurbopackServer","ReactJsxRuntime","React","styles","error","fontFamily","height","textAlign","display","flexDirection","alignItems","justifyContent","text","fontSize","fontWeight","lineHeight","margin","DefaultGlobalError","digest","html","id","head","body","HandleISRError","div","style","h2","window","location","hostname","p"],"mappings":"0kCA0BQG,GAAOC,OAAO,CAAGC,EAAQ,CAAA,CAAA,IAAA,iCC1BjCF,EAAOC,OAAO,CACZC,EAAQ,CAAA,CAAA,IAAA,GACRI,QAAQ,CAAC,YAAY,CAAEC,6BAA6B,+BCFtDP,EAAOC,OAAO,CACZC,EAAQ,CAAA,CAAA,IAAA,GACRI,QAAQ,CAAC,YAAY,CAAEE,eAAe,uNCFxCR,EAAOC,OAAO,CACZC,EAAQ,CAAA,CAAA,IAAA,GACRI,QAAQ,CAAC,YAAY,CAAEG,KAAK,kBCD9B,GAAM,yBAAE,CAAuB,CAAE,CAAA,EAAA,CAAA,CAAA,OAEjC,EAAsB,CAAC,CAAC,EAAwB,0OAFhD,GAAM,yBAAE,CAAuB,CAAE,CAAA,EAAA,CAAA,CAAA,OAEjC,EAAsB,CAAC,CAAC,EAAwB","ignoreList":[0,1,2,3,4]}
1
+ {"version":3,"sources":["../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/module.compiled.js","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/rsc/react-server-dom-turbopack-server.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/rsc/react-jsx-runtime.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/rsc/react.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/dist/client/components/builtin/global-error.js/__nextjs-internal-proxy.cjs","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/client/components/builtin/global-error.tsx"],"sourcesContent":["if (process.env.NEXT_RUNTIME === 'edge') {\n module.exports = require('next/dist/server/route-modules/app-page/module.js')\n} else {\n if (process.env.__NEXT_EXPERIMENTAL_REACT) {\n if (process.env.NODE_ENV === 'development') {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo-experimental.runtime.dev.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page-experimental.runtime.dev.js')\n }\n } else {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page-experimental.runtime.prod.js')\n }\n }\n } else {\n if (process.env.NODE_ENV === 'development') {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo.runtime.dev.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page.runtime.dev.js')\n }\n } else {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo.runtime.prod.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page.runtime.prod.js')\n }\n }\n }\n}\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-rsc']!.ReactServerDOMTurbopackServer\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-rsc']!.ReactJsxRuntime\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-rsc']!.React\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nconst { createClientModuleProxy } = require(\"react-server-dom-turbopack/server\");\n\n__turbopack_context__.n(createClientModuleProxy(\"[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/global-error.js\"));\n","'use client'\n\nimport { HandleISRError } from '../handle-isr-error'\n\nconst styles = {\n error: {\n // https://github.com/sindresorhus/modern-normalize/blob/main/modern-normalize.css#L38-L52\n fontFamily:\n 'system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"',\n height: '100vh',\n textAlign: 'center',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n },\n text: {\n fontSize: '14px',\n fontWeight: 400,\n lineHeight: '28px',\n margin: '0 8px',\n },\n} as const\n\nexport type GlobalErrorComponent = React.ComponentType<{\n error: any\n}>\nfunction DefaultGlobalError({ error }: { error: any }) {\n const digest: string | undefined = error?.digest\n return (\n <html id=\"__next_error__\">\n <head></head>\n <body>\n <HandleISRError error={error} />\n <div style={styles.error}>\n <div>\n <h2 style={styles.text}>\n Application error: a {digest ? 'server' : 'client'}-side exception\n has occurred while loading {window.location.hostname} (see the{' '}\n {digest ? 'server logs' : 'browser console'} for more\n information).\n </h2>\n {digest ? <p style={styles.text}>{`Digest: ${digest}`}</p> : null}\n </div>\n </div>\n </body>\n </html>\n )\n}\n\n// Exported so that the import signature in the loaders can be identical to user\n// supplied custom global error signatures.\nexport default DefaultGlobalError\n"],"names":["process","env","NEXT_RUNTIME","module","exports","require","__NEXT_EXPERIMENTAL_REACT","NODE_ENV","TURBOPACK","vendored","ReactServerDOMTurbopackServer","ReactJsxRuntime","React","styles","error","fontFamily","height","textAlign","display","flexDirection","alignItems","justifyContent","text","fontSize","fontWeight","lineHeight","margin","DefaultGlobalError","digest","html","id","head","body","HandleISRError","div","style","h2","window","location","hostname","p"],"mappings":"mwCA0BQG,EAAOC,OAAO,CAAGC,EAAQ,CAAA,CAAA,IAAA,gCC1BjCF,GAAOC,OAAO,CACZC,EAAQ,CAAA,CAAA,IAAA,GACRI,QAAQ,CAAC,YAAY,CAAEC,6BAA6B,+BCFtDP,EAAOC,OAAO,CACZC,EAAQ,CAAA,CAAA,IAAA,GACRI,QAAQ,CAAC,YAAY,CAAEE,eAAe,+BCFxCR,EAAOC,OAAO,CACZC,EAAQ,CAAA,CAAA,IAAA,GACRI,QAAQ,CAAC,YAAY,CAAEG,KAAK,kBCD9B,GAAM,yBAAE,CAAuB,CAAE,CAAA,EAAA,CAAA,CAAA,OAEjC,EAAsB,CAAC,CAAC,EAAwB,0OAFhD,GAAM,yBAAE,CAAuB,CAAE,CAAA,EAAA,CAAA,CAAA,OAEjC,EAAsB,CAAC,CAAC,EAAwB","ignoreList":[0,1,2,3,4]}
@@ -1,4 +1,4 @@
1
- module.exports=[94691,a=>{"use strict";var b=a.i(92658),c=a.i(96380);async function d(a){return a?.trim()?(0,c.resolve)("IDeploymentService").getLogs(a):null}(0,a.i(12581).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"40732dd76950792f02a2d3cec79c90f6091f16acdb",null),a.s(["getDeploymentLogs",()=>d])},33841,29918,46646,68670,85321,a=>{"use strict";var b=a.i(92658),c=a.i(2157),d=a.i(96380);let e=()=>void 0;function f(a){let b=!!process.env.DEBUG;return{info:b?(...b)=>console.info(a,...b):e,debug:b?(...b)=>console.debug(a,...b):e,warn:(...b)=>console.warn(a,...b),error:(...b)=>console.error(a,...b)}}var g=a.i(66680),h=a.i(50227),i=a.i(32278);function j(a,b){let c=a.replace(/\\/g,"/"),d=(0,g.createHash)("sha256").update(c).digest("hex").slice(0,16),e=b.replace(/\//g,"-");return(0,h.join)((0,i.getShepHomeDir)(),"repos",d,"wt",e).replace(/\\/g,"/")}a.s(["computeWorktreePath",()=>j],29918);var k=a.i(81719),l=a.i(12581);let m=f("[deployFeature]");async function n(a){if(m.info(`called — featureId="${a}"`),!a?.trim())return m.warn("rejected — featureId is empty"),{success:!1,error:"featureId is required"};try{let b=(0,d.resolve)("IFeatureRepository"),e=await b.findById(a);if(!e)return m.warn(`feature not found in repository: "${a}"`),{success:!1,error:`Feature not found: ${a}`};m.info(`feature found — repositoryPath="${e.repositoryPath}", branch="${e.branch}"`);let f=j(e.repositoryPath,e.branch);if(m.info(`computed worktreePath="${f}"`),!(0,c.existsSync)(f))return m.warn(`worktree path does not exist on disk: "${f}"`),{success:!1,error:`Worktree path does not exist: ${f}`};return m.info("worktree path exists, calling deploymentService.start()"),(0,d.resolve)("IDeploymentService").start(a,f,"feature"),m.info("start() returned successfully — state=Booting"),{success:!0,state:k.DeploymentState.Booting}}catch(b){let a=b instanceof Error?b.message:"Failed to deploy feature";return m.error(`error: ${a}`,b),{success:!1,error:a}}}(0,l.ensureServerEntryExports)([n]),(0,b.registerServerReference)(n,"40163722bc4736a27419811a193efa885d0031a13c",null),a.s(["deployFeature",()=>n],33841);let o=f("[deployRepository]");async function p(a){if(o.info(`called — repositoryPath="${a}"`),!a||!(0,h.isAbsolute)(a))return o.warn("rejected — not an absolute path"),{success:!1,error:"repositoryPath must be an absolute path"};try{if(!(0,c.existsSync)(a))return o.warn(`directory does not exist: "${a}"`),{success:!1,error:`Directory does not exist: ${a}`};return o.info("directory exists, calling deploymentService.start()"),(0,d.resolve)("IDeploymentService").start(a,a,"repository"),o.info("start() returned successfully — state=Booting"),{success:!0,state:k.DeploymentState.Booting}}catch(b){let a=b instanceof Error?b.message:"Failed to deploy repository";return o.error(`error: ${a}`,b),{success:!1,error:a}}}async function q(a){if(!a?.trim())return{success:!1,error:"targetId is required"};try{let b=(0,d.resolve)("IDeploymentService");return await b.stop(a),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to stop deployment"}}}async function r(a){return a?.trim()?(0,d.resolve)("IDeploymentService").getStatus(a):null}(0,l.ensureServerEntryExports)([p]),(0,b.registerServerReference)(p,"400fa664109768da852254c1accaa1cdedc1477918",null),a.s(["deployRepository",()=>p],46646),(0,l.ensureServerEntryExports)([q]),(0,b.registerServerReference)(q,"40edbd6890d00ad04902882a355a56b4babec79f5a",null),a.s(["stopDeployment",()=>q],68670),(0,l.ensureServerEntryExports)([r]),(0,b.registerServerReference)(r,"408968227477d64c18ab65903e8c611d0759d04212",null),a.s(["getDeploymentStatus",()=>r],85321)},74533,(a,b,c)=>{b.exports=a.x("node:child_process",()=>require("node:child_process"))},92658,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(28478)},12581,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},12513,a=>{"use strict";var b=a.i(92658),c=a.i(74533);let d={platform:process.platform,exec:(a,b)=>(0,c.execSync)(a,b)},e={darwin:"osascript -e 'POSIX path of (choose folder with prompt \"Select a repository folder\")'",linux:'zenity --file-selection --directory --title="Select a repository folder" 2>/dev/null',win32:"powershell -NoProfile -Command \"Add-Type -AssemblyName System.Windows.Forms; $f = New-Object System.Windows.Forms.FolderBrowserDialog; $f.Description = 'Select a repository folder'; if ($f.ShowDialog() -eq 'OK') { $f.SelectedPath } else { exit 1 }\""};class f{deps;constructor(a={}){this.deps={...d,...a}}getCommand(){return e[this.deps.platform]??null}pickFolder(){let a=this.getCommand();if(!a)throw Error(`Unsupported platform: ${this.deps.platform}`);try{let b=this.deps.exec(a,{encoding:"utf-8",timeout:6e4}).trim();return b.length>0?b:null}catch(a){var b;if("object"==typeof(b=a)&&null!==b&&"status"in b&&1===a.status)return null;throw a}}}async function g(){let a=new f;try{return{path:a.pickFolder()}}catch(a){return{path:null,error:a instanceof Error?a.message:"Failed to open folder dialog"}}}(0,a.i(12581).ensureServerEntryExports)([g]),(0,b.registerServerReference)(g,"00d2ec484f8cb2c1572db0a66a0889d072834b9e4c",null),a.s(["pickFolder",()=>g],12513)},81719,a=>{"use strict";var b,c,d,e,f=((b={}).Todo="Todo",b.WIP="Work in Progress",b.Done="Done",b.Review="Review",b),g=((c={}).Started="Started",c.Analyze="Analyze",c.Requirements="Requirements",c.Research="Research",c.Planning="Planning",c.Implementation="Implementation",c.Review="Review",c.Maintain="Maintain",c.Blocked="Blocked",c.Pending="Pending",c.Deleting="Deleting",c),h=((d={}).Booting="Booting",d.Ready="Ready",d.Stopped="Stopped",d),i=((e={}).pending="pending",e.running="running",e.completed="completed",e.failed="failed",e.interrupted="interrupted",e.cancelled="cancelled",e.waitingApproval="waiting_approval",e);a.s(["AgentRunStatus",()=>i,"DeploymentState",()=>h,"SdlcLifecycle",()=>g,"TaskState",()=>f])},96380,a=>{"use strict";function b(a){let b=globalThis.__shepContainer;if(!b)throw Error("DI container not available. Ensure the CLI bootstrap or dev-server has initialized it.");return b.resolve(a)}a.s(["resolve",()=>b])},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},12714,(a,b,c)=>{b.exports=a.x("node:fs/promises",()=>require("node:fs/promises"))},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},32278,a=>{"use strict";a.i(12714);var b=a.i(60526),c=a.i(50227);function d(){return process.env.SHEP_HOME??(0,c.join)((0,b.homedir)(),".shep")}a.i(2157),a.s(["getShepHomeDir",()=>d])},66680,(a,b,c)=>{b.exports=a.x("node:crypto",()=>require("node:crypto"))},87596,a=>{"use strict";var b=a.i(12513),c=a.i(94691),d=a.i(33841),e=a.i(46646),f=a.i(68670),g=a.i(85321);a.s([],78455),a.i(78455),a.s(["00d2ec484f8cb2c1572db0a66a0889d072834b9e4c",()=>b.pickFolder,"400fa664109768da852254c1accaa1cdedc1477918",()=>e.deployRepository,"40163722bc4736a27419811a193efa885d0031a13c",()=>d.deployFeature,"40732dd76950792f02a2d3cec79c90f6091f16acdb",()=>c.getDeploymentLogs,"408968227477d64c18ab65903e8c611d0759d04212",()=>g.getDeploymentStatus,"40edbd6890d00ad04902882a355a56b4babec79f5a",()=>f.stopDeployment],87596)}];
1
+ module.exports=[94691,a=>{"use strict";var b=a.i(92658),c=a.i(96380);async function d(a){return a?.trim()?(0,c.resolve)("IDeploymentService").getLogs(a):null}(0,a.i(12581).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"40c8c63b5dc27dacff182c39c46bad3438ddef9c71",null),a.s(["getDeploymentLogs",()=>d])},33841,29918,46646,68670,85321,a=>{"use strict";var b=a.i(92658),c=a.i(2157),d=a.i(96380);let e=()=>void 0;function f(a){let b=!!process.env.DEBUG;return{info:b?(...b)=>console.info(a,...b):e,debug:b?(...b)=>console.debug(a,...b):e,warn:(...b)=>console.warn(a,...b),error:(...b)=>console.error(a,...b)}}var g=a.i(66680),h=a.i(50227),i=a.i(32278);function j(a,b){let c=a.replace(/\\/g,"/"),d=(0,g.createHash)("sha256").update(c).digest("hex").slice(0,16),e=b.replace(/\//g,"-");return(0,h.join)((0,i.getShepHomeDir)(),"repos",d,"wt",e).replace(/\\/g,"/")}a.s(["computeWorktreePath",()=>j],29918);var k=a.i(81719),l=a.i(12581);let m=f("[deployFeature]");async function n(a){if(m.info(`called — featureId="${a}"`),!a?.trim())return m.warn("rejected — featureId is empty"),{success:!1,error:"featureId is required"};try{let b=(0,d.resolve)("IFeatureRepository"),e=await b.findById(a);if(!e)return m.warn(`feature not found in repository: "${a}"`),{success:!1,error:`Feature not found: ${a}`};m.info(`feature found — repositoryPath="${e.repositoryPath}", branch="${e.branch}"`);let f=j(e.repositoryPath,e.branch);if(m.info(`computed worktreePath="${f}"`),!(0,c.existsSync)(f))return m.warn(`worktree path does not exist on disk: "${f}"`),{success:!1,error:`Worktree path does not exist: ${f}`};return m.info("worktree path exists, calling deploymentService.start()"),(0,d.resolve)("IDeploymentService").start(a,f,"feature"),m.info("start() returned successfully — state=Booting"),{success:!0,state:k.DeploymentState.Booting}}catch(b){let a=b instanceof Error?b.message:"Failed to deploy feature";return m.error(`error: ${a}`,b),{success:!1,error:a}}}(0,l.ensureServerEntryExports)([n]),(0,b.registerServerReference)(n,"402c8d40669286adaf678cdd35c49bdaea7578a346",null),a.s(["deployFeature",()=>n],33841);let o=f("[deployRepository]");async function p(a){if(o.info(`called — repositoryPath="${a}"`),!a||!(0,h.isAbsolute)(a))return o.warn("rejected — not an absolute path"),{success:!1,error:"repositoryPath must be an absolute path"};try{if(!(0,c.existsSync)(a))return o.warn(`directory does not exist: "${a}"`),{success:!1,error:`Directory does not exist: ${a}`};return o.info("directory exists, calling deploymentService.start()"),(0,d.resolve)("IDeploymentService").start(a,a,"repository"),o.info("start() returned successfully — state=Booting"),{success:!0,state:k.DeploymentState.Booting}}catch(b){let a=b instanceof Error?b.message:"Failed to deploy repository";return o.error(`error: ${a}`,b),{success:!1,error:a}}}async function q(a){if(!a?.trim())return{success:!1,error:"targetId is required"};try{let b=(0,d.resolve)("IDeploymentService");return await b.stop(a),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to stop deployment"}}}async function r(a){return a?.trim()?(0,d.resolve)("IDeploymentService").getStatus(a):null}(0,l.ensureServerEntryExports)([p]),(0,b.registerServerReference)(p,"406b8e91ad781d022c9747ffa102c8ee387ff9764f",null),a.s(["deployRepository",()=>p],46646),(0,l.ensureServerEntryExports)([q]),(0,b.registerServerReference)(q,"4056847530c245878247c96787ee61ef2c32c61c0b",null),a.s(["stopDeployment",()=>q],68670),(0,l.ensureServerEntryExports)([r]),(0,b.registerServerReference)(r,"40e322f486e74b670f738b0ae1c016ecf7efa07583",null),a.s(["getDeploymentStatus",()=>r],85321)},74533,(a,b,c)=>{b.exports=a.x("node:child_process",()=>require("node:child_process"))},92658,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(28478)},12581,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},12513,a=>{"use strict";var b=a.i(92658),c=a.i(74533);let d={platform:process.platform,exec:(a,b)=>(0,c.execSync)(a,b)},e={darwin:"osascript -e 'POSIX path of (choose folder with prompt \"Select a repository folder\")'",linux:'zenity --file-selection --directory --title="Select a repository folder" 2>/dev/null',win32:"powershell -NoProfile -Command \"Add-Type -AssemblyName System.Windows.Forms; $f = New-Object System.Windows.Forms.FolderBrowserDialog; $f.Description = 'Select a repository folder'; if ($f.ShowDialog() -eq 'OK') { $f.SelectedPath } else { exit 1 }\""};class f{deps;constructor(a={}){this.deps={...d,...a}}getCommand(){return e[this.deps.platform]??null}pickFolder(){let a=this.getCommand();if(!a)throw Error(`Unsupported platform: ${this.deps.platform}`);try{let b=this.deps.exec(a,{encoding:"utf-8",timeout:6e4}).trim();return b.length>0?b:null}catch(a){var b;if("object"==typeof(b=a)&&null!==b&&"status"in b&&1===a.status)return null;throw a}}}async function g(){let a=new f;try{return{path:a.pickFolder()}}catch(a){return{path:null,error:a instanceof Error?a.message:"Failed to open folder dialog"}}}(0,a.i(12581).ensureServerEntryExports)([g]),(0,b.registerServerReference)(g,"00aec8bf006d513317b9f57220eb9a9329e20a9ee1",null),a.s(["pickFolder",()=>g],12513)},81719,a=>{"use strict";var b,c,d,e,f=((b={}).Todo="Todo",b.WIP="Work in Progress",b.Done="Done",b.Review="Review",b),g=((c={}).Started="Started",c.Analyze="Analyze",c.Requirements="Requirements",c.Research="Research",c.Planning="Planning",c.Implementation="Implementation",c.Review="Review",c.Maintain="Maintain",c.Blocked="Blocked",c.Pending="Pending",c.Deleting="Deleting",c),h=((d={}).Booting="Booting",d.Ready="Ready",d.Stopped="Stopped",d),i=((e={}).pending="pending",e.running="running",e.completed="completed",e.failed="failed",e.interrupted="interrupted",e.cancelled="cancelled",e.waitingApproval="waiting_approval",e);a.s(["AgentRunStatus",()=>i,"DeploymentState",()=>h,"SdlcLifecycle",()=>g,"TaskState",()=>f])},96380,a=>{"use strict";function b(a){let b=globalThis.__shepContainer;if(!b)throw Error("DI container not available. Ensure the CLI bootstrap or dev-server has initialized it.");return b.resolve(a)}a.s(["resolve",()=>b])},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},12714,(a,b,c)=>{b.exports=a.x("node:fs/promises",()=>require("node:fs/promises"))},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},32278,a=>{"use strict";a.i(12714);var b=a.i(60526),c=a.i(50227);function d(){return process.env.SHEP_HOME??(0,c.join)((0,b.homedir)(),".shep")}a.i(2157),a.s(["getShepHomeDir",()=>d])},66680,(a,b,c)=>{b.exports=a.x("node:crypto",()=>require("node:crypto"))},87596,a=>{"use strict";var b=a.i(12513),c=a.i(94691),d=a.i(33841),e=a.i(46646),f=a.i(68670),g=a.i(85321);a.s([],78455),a.i(78455),a.s(["00aec8bf006d513317b9f57220eb9a9329e20a9ee1",()=>b.pickFolder,"402c8d40669286adaf678cdd35c49bdaea7578a346",()=>d.deployFeature,"4056847530c245878247c96787ee61ef2c32c61c0b",()=>f.stopDeployment,"406b8e91ad781d022c9747ffa102c8ee387ff9764f",()=>e.deployRepository,"40c8c63b5dc27dacff182c39c46bad3438ddef9c71",()=>c.getDeploymentLogs,"40e322f486e74b670f738b0ae1c016ecf7efa07583",()=>g.getDeploymentStatus],87596)}];
3
3
 
4
4
  //# sourceMappingURL=%5Broot-of-the-server%5D__a50a7e39._.js.map