@shepai/cli 1.151.2-pr438.6135e39 → 1.151.2-pr460.095bbae

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 (701) hide show
  1. package/apis/json-schema/InteractiveAgentConfig.yaml +25 -0
  2. package/apis/json-schema/InteractiveMessage.yaml +23 -0
  3. package/apis/json-schema/InteractiveMessageRole.yaml +7 -0
  4. package/apis/json-schema/InteractiveSession.yaml +30 -0
  5. package/apis/json-schema/InteractiveSessionStatus.yaml +9 -0
  6. package/apis/json-schema/Settings.yaml +3 -0
  7. package/apis/json-schema/WorkflowConfig.yaml +0 -5
  8. package/dist/packages/core/src/application/ports/output/agents/agent-executor-factory.interface.d.ts +17 -0
  9. package/dist/packages/core/src/application/ports/output/agents/agent-executor-factory.interface.d.ts.map +1 -1
  10. package/dist/packages/core/src/application/ports/output/agents/index.d.ts +1 -0
  11. package/dist/packages/core/src/application/ports/output/agents/index.d.ts.map +1 -1
  12. package/dist/packages/core/src/application/ports/output/agents/interactive-agent-executor.interface.d.ts +53 -0
  13. package/dist/packages/core/src/application/ports/output/agents/interactive-agent-executor.interface.d.ts.map +1 -0
  14. package/dist/packages/core/src/application/ports/output/agents/interactive-agent-executor.interface.js +13 -0
  15. package/dist/packages/core/src/application/ports/output/repositories/index.d.ts +2 -0
  16. package/dist/packages/core/src/application/ports/output/repositories/index.d.ts.map +1 -1
  17. package/dist/packages/core/src/application/ports/output/repositories/interactive-message-repository.interface.d.ts +37 -0
  18. package/dist/packages/core/src/application/ports/output/repositories/interactive-message-repository.interface.d.ts.map +1 -0
  19. package/dist/packages/core/src/application/ports/output/repositories/interactive-message-repository.interface.js +10 -0
  20. package/dist/packages/core/src/application/ports/output/repositories/interactive-session-repository.interface.d.ts +54 -0
  21. package/dist/packages/core/src/application/ports/output/repositories/interactive-session-repository.interface.d.ts.map +1 -0
  22. package/dist/packages/core/src/application/ports/output/repositories/interactive-session-repository.interface.js +10 -0
  23. package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts +0 -28
  24. package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts.map +1 -1
  25. package/dist/packages/core/src/application/ports/output/services/github-repository-service.interface.d.ts +0 -37
  26. package/dist/packages/core/src/application/ports/output/services/github-repository-service.interface.d.ts.map +1 -1
  27. package/dist/packages/core/src/application/ports/output/services/github-repository-service.interface.js +0 -12
  28. package/dist/packages/core/src/application/ports/output/services/index.d.ts +4 -5
  29. package/dist/packages/core/src/application/ports/output/services/index.d.ts.map +1 -1
  30. package/dist/packages/core/src/application/ports/output/services/index.js +1 -2
  31. package/dist/packages/core/src/application/ports/output/services/interactive-session-service.interface.d.ts +169 -0
  32. package/dist/packages/core/src/application/ports/output/services/interactive-session-service.interface.d.ts.map +1 -0
  33. package/dist/packages/core/src/application/ports/output/services/interactive-session-service.interface.js +12 -0
  34. package/dist/packages/core/src/application/use-cases/interactive/get-interactive-chat-state.use-case.d.ts +26 -0
  35. package/dist/packages/core/src/application/use-cases/interactive/get-interactive-chat-state.use-case.d.ts.map +1 -0
  36. package/dist/packages/core/src/application/use-cases/interactive/get-interactive-chat-state.use-case.js +41 -0
  37. package/dist/packages/core/src/application/use-cases/interactive/index.d.ts +14 -0
  38. package/dist/packages/core/src/application/use-cases/interactive/index.d.ts.map +1 -0
  39. package/dist/packages/core/src/application/use-cases/interactive/index.js +9 -0
  40. package/dist/packages/core/src/application/use-cases/interactive/send-interactive-message.use-case.d.ts +31 -0
  41. package/dist/packages/core/src/application/use-cases/interactive/send-interactive-message.use-case.d.ts.map +1 -0
  42. package/dist/packages/core/src/application/use-cases/interactive/send-interactive-message.use-case.js +43 -0
  43. package/dist/packages/core/src/application/use-cases/interactive/start-interactive-session.use-case.d.ts +34 -0
  44. package/dist/packages/core/src/application/use-cases/interactive/start-interactive-session.use-case.d.ts.map +1 -0
  45. package/dist/packages/core/src/application/use-cases/interactive/start-interactive-session.use-case.js +43 -0
  46. package/dist/packages/core/src/application/use-cases/interactive/stop-interactive-session.use-case.d.ts +27 -0
  47. package/dist/packages/core/src/application/use-cases/interactive/stop-interactive-session.use-case.d.ts.map +1 -0
  48. package/dist/packages/core/src/application/use-cases/interactive/stop-interactive-session.use-case.js +42 -0
  49. package/dist/packages/core/src/domain/errors/concurrent-session-limit.error.d.ts +13 -0
  50. package/dist/packages/core/src/domain/errors/concurrent-session-limit.error.d.ts.map +1 -0
  51. package/dist/packages/core/src/domain/errors/concurrent-session-limit.error.js +19 -0
  52. package/dist/packages/core/src/domain/generated/output.d.ts +77 -185
  53. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  54. package/dist/packages/core/src/domain/generated/output.js +12 -0
  55. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  56. package/dist/packages/core/src/infrastructure/di/container.js +47 -4
  57. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/interactive-message.mapper.d.ts +36 -0
  58. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/interactive-message.mapper.d.ts.map +1 -0
  59. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/interactive-message.mapper.js +41 -0
  60. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/interactive-session.mapper.d.ts +37 -0
  61. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/interactive-session.mapper.d.ts.map +1 -0
  62. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/interactive-session.mapper.js +45 -0
  63. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +3 -0
  64. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  65. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +10 -0
  66. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/045-create-interactive-tables.d.ts +22 -0
  67. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/045-create-interactive-tables.d.ts.map +1 -0
  68. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/045-create-interactive-tables.js +52 -0
  69. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/046-add-interactive-agent-settings.d.ts +16 -0
  70. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/046-add-interactive-agent-settings.d.ts.map +1 -0
  71. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/046-add-interactive-agent-settings.js +27 -0
  72. package/dist/packages/core/src/infrastructure/repositories/sqlite-interactive-message.repository.d.ts +18 -0
  73. package/dist/packages/core/src/infrastructure/repositories/sqlite-interactive-message.repository.d.ts.map +1 -0
  74. package/dist/packages/core/src/infrastructure/repositories/sqlite-interactive-message.repository.js +58 -0
  75. package/dist/packages/core/src/infrastructure/repositories/sqlite-interactive-session.repository.d.ts +23 -0
  76. package/dist/packages/core/src/infrastructure/repositories/sqlite-interactive-session.repository.d.ts.map +1 -0
  77. package/dist/packages/core/src/infrastructure/repositories/sqlite-interactive-session.repository.js +85 -0
  78. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -1
  79. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +10 -3
  80. package/dist/packages/core/src/infrastructure/services/agents/common/agent-executor-factory.service.d.ts +18 -0
  81. package/dist/packages/core/src/infrastructure/services/agents/common/agent-executor-factory.service.d.ts.map +1 -1
  82. package/dist/packages/core/src/infrastructure/services/agents/common/agent-executor-factory.service.js +27 -0
  83. package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-interactive-executor.service.d.ts +43 -0
  84. package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-interactive-executor.service.d.ts.map +1 -0
  85. package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-interactive-executor.service.js +280 -0
  86. package/dist/packages/core/src/infrastructure/services/agents/common/executors/mock-executor-factory.service.d.ts +3 -0
  87. package/dist/packages/core/src/infrastructure/services/agents/common/executors/mock-executor-factory.service.d.ts.map +1 -1
  88. package/dist/packages/core/src/infrastructure/services/agents/common/executors/mock-executor-factory.service.js +6 -0
  89. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts +1 -1
  90. package/dist/packages/core/src/infrastructure/services/external/github-repository.service.d.ts +1 -3
  91. package/dist/packages/core/src/infrastructure/services/external/github-repository.service.d.ts.map +1 -1
  92. package/dist/packages/core/src/infrastructure/services/external/github-repository.service.js +1 -37
  93. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts +1 -2
  94. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts.map +1 -1
  95. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.js +0 -21
  96. package/dist/packages/core/src/infrastructure/services/interactive/feature-context.builder.d.ts +26 -0
  97. package/dist/packages/core/src/infrastructure/services/interactive/feature-context.builder.d.ts.map +1 -0
  98. package/dist/packages/core/src/infrastructure/services/interactive/feature-context.builder.js +140 -0
  99. package/dist/packages/core/src/infrastructure/services/interactive/interactive-session.service.d.ts +87 -0
  100. package/dist/packages/core/src/infrastructure/services/interactive/interactive-session.service.d.ts.map +1 -0
  101. package/dist/packages/core/src/infrastructure/services/interactive/interactive-session.service.js +786 -0
  102. package/dist/src/presentation/cli/index.js +0 -2
  103. package/dist/src/presentation/web/app/(dashboard)/@drawer/chat/page.d.ts +3 -0
  104. package/dist/src/presentation/web/app/(dashboard)/@drawer/chat/page.d.ts.map +1 -0
  105. package/dist/src/presentation/web/app/(dashboard)/@drawer/chat/page.js +6 -0
  106. package/dist/src/presentation/web/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.d.ts.map +1 -1
  107. package/dist/src/presentation/web/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +2 -2
  108. package/dist/src/presentation/web/app/(dashboard)/@drawer/feature/[featureId]/page.d.ts.map +1 -1
  109. package/dist/src/presentation/web/app/(dashboard)/@drawer/feature/[featureId]/page.js +2 -2
  110. package/dist/src/presentation/web/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.d.ts +11 -0
  111. package/dist/src/presentation/web/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.d.ts.map +1 -0
  112. package/dist/src/presentation/web/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js +18 -0
  113. package/dist/src/presentation/web/app/(dashboard)/chat/page.d.ts +3 -0
  114. package/dist/src/presentation/web/app/(dashboard)/chat/page.d.ts.map +1 -0
  115. package/dist/src/presentation/web/app/(dashboard)/chat/page.js +4 -0
  116. package/dist/src/presentation/web/app/(dashboard)/repository/[repositoryId]/[tab]/page.d.ts +3 -0
  117. package/dist/src/presentation/web/app/(dashboard)/repository/[repositoryId]/[tab]/page.d.ts.map +1 -0
  118. package/dist/src/presentation/web/app/(dashboard)/repository/[repositoryId]/[tab]/page.js +4 -0
  119. package/dist/src/presentation/web/app/api/agent-events/route.d.ts +6 -0
  120. package/dist/src/presentation/web/app/api/agent-events/route.d.ts.map +1 -1
  121. package/dist/src/presentation/web/app/api/agent-events/route.js +54 -1
  122. package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/messages/route.d.ts +24 -0
  123. package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/messages/route.d.ts.map +1 -0
  124. package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/messages/route.js +76 -0
  125. package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/stop/route.d.ts +16 -0
  126. package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/stop/route.d.ts.map +1 -0
  127. package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/stop/route.js +21 -0
  128. package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/stream/route.d.ts +21 -0
  129. package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/stream/route.d.ts.map +1 -0
  130. package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/stream/route.js +87 -0
  131. package/dist/src/presentation/web/app/api/interactive/sessions/[id]/messages/route.d.ts +19 -0
  132. package/dist/src/presentation/web/app/api/interactive/sessions/[id]/messages/route.d.ts.map +1 -0
  133. package/dist/src/presentation/web/app/api/interactive/sessions/[id]/messages/route.js +78 -0
  134. package/dist/src/presentation/web/app/api/interactive/sessions/[id]/route.d.ts +18 -0
  135. package/dist/src/presentation/web/app/api/interactive/sessions/[id]/route.d.ts.map +1 -0
  136. package/dist/src/presentation/web/app/api/interactive/sessions/[id]/route.js +43 -0
  137. package/dist/src/presentation/web/app/api/interactive/sessions/[id]/stream/route.d.ts +19 -0
  138. package/dist/src/presentation/web/app/api/interactive/sessions/[id]/stream/route.d.ts.map +1 -0
  139. package/dist/src/presentation/web/app/api/interactive/sessions/[id]/stream/route.js +92 -0
  140. package/dist/src/presentation/web/app/api/interactive/sessions/route.d.ts +12 -0
  141. package/dist/src/presentation/web/app/api/interactive/sessions/route.d.ts.map +1 -0
  142. package/dist/src/presentation/web/app/api/interactive/sessions/route.js +37 -0
  143. package/dist/src/presentation/web/app/layout.d.ts.map +1 -1
  144. package/dist/src/presentation/web/app/layout.js +2 -1
  145. package/dist/src/presentation/web/components/assistant-ui/thread.d.ts +6 -0
  146. package/dist/src/presentation/web/components/assistant-ui/thread.d.ts.map +1 -0
  147. package/dist/src/presentation/web/components/assistant-ui/thread.js +192 -0
  148. package/dist/src/presentation/web/components/common/base-drawer/base-drawer.d.ts +1 -1
  149. package/dist/src/presentation/web/components/common/base-drawer/base-drawer.d.ts.map +1 -1
  150. package/dist/src/presentation/web/components/common/base-drawer/base-drawer.js +1 -0
  151. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.d.ts +1 -1
  152. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.d.ts.map +1 -1
  153. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.js +1 -0
  154. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts +3 -1
  155. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts.map +1 -1
  156. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.js +5 -6
  157. package/dist/src/presentation/web/components/common/control-center-drawer/global-chat-drawer-client.d.ts +2 -0
  158. package/dist/src/presentation/web/components/common/control-center-drawer/global-chat-drawer-client.d.ts.map +1 -0
  159. package/dist/src/presentation/web/components/common/control-center-drawer/global-chat-drawer-client.js +17 -0
  160. package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.d.ts +3 -1
  161. package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.d.ts.map +1 -1
  162. package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.js +15 -8
  163. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts +7 -1
  164. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts.map +1 -1
  165. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.js +11 -4
  166. package/dist/src/presentation/web/components/common/feature-node/feature-node.d.ts.map +1 -1
  167. package/dist/src/presentation/web/components/common/feature-node/feature-node.js +7 -2
  168. package/dist/src/presentation/web/components/common/floating-action-button/floating-action-button.d.ts +1 -0
  169. package/dist/src/presentation/web/components/common/floating-action-button/floating-action-button.d.ts.map +1 -1
  170. package/dist/src/presentation/web/components/common/floating-action-button/floating-action-button.js +6 -14
  171. package/dist/src/presentation/web/components/common/repository-node/repository-node.d.ts.map +1 -1
  172. package/dist/src/presentation/web/components/common/repository-node/repository-node.js +6 -2
  173. package/dist/src/presentation/web/components/features/chat/AgentStatusBadge.d.ts +21 -0
  174. package/dist/src/presentation/web/components/features/chat/AgentStatusBadge.d.ts.map +1 -0
  175. package/dist/src/presentation/web/components/features/chat/AgentStatusBadge.js +46 -0
  176. package/dist/src/presentation/web/components/features/chat/AgentStatusBadge.stories.d.ts +20 -0
  177. package/dist/src/presentation/web/components/features/chat/AgentStatusBadge.stories.d.ts.map +1 -0
  178. package/dist/src/presentation/web/components/features/chat/AgentStatusBadge.stories.js +52 -0
  179. package/dist/src/presentation/web/components/features/chat/ChatComposer.d.ts +18 -0
  180. package/dist/src/presentation/web/components/features/chat/ChatComposer.d.ts.map +1 -0
  181. package/dist/src/presentation/web/components/features/chat/ChatComposer.js +16 -0
  182. package/dist/src/presentation/web/components/features/chat/ChatInput.d.ts +19 -0
  183. package/dist/src/presentation/web/components/features/chat/ChatInput.d.ts.map +1 -0
  184. package/dist/src/presentation/web/components/features/chat/ChatInput.js +42 -0
  185. package/dist/src/presentation/web/components/features/chat/ChatInput.stories.d.ts +14 -0
  186. package/dist/src/presentation/web/components/features/chat/ChatInput.stories.d.ts.map +1 -0
  187. package/dist/src/presentation/web/components/features/chat/ChatInput.stories.js +56 -0
  188. package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.d.ts +21 -0
  189. package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.d.ts.map +1 -0
  190. package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.js +43 -0
  191. package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.stories.d.ts +24 -0
  192. package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.stories.d.ts.map +1 -0
  193. package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.stories.js +84 -0
  194. package/dist/src/presentation/web/components/features/chat/ChatMessageList.d.ts +25 -0
  195. package/dist/src/presentation/web/components/features/chat/ChatMessageList.d.ts.map +1 -0
  196. package/dist/src/presentation/web/components/features/chat/ChatMessageList.js +36 -0
  197. package/dist/src/presentation/web/components/features/chat/ChatSheet.d.ts +2 -0
  198. package/dist/src/presentation/web/components/features/chat/ChatSheet.d.ts.map +1 -0
  199. package/dist/src/presentation/web/components/features/chat/ChatSheet.js +243 -0
  200. package/dist/src/presentation/web/components/features/chat/ChatTab.d.ts +6 -0
  201. package/dist/src/presentation/web/components/features/chat/ChatTab.d.ts.map +1 -0
  202. package/dist/src/presentation/web/components/features/chat/ChatTab.js +67 -0
  203. package/dist/src/presentation/web/components/features/chat/ChatTab.stories.d.ts +25 -0
  204. package/dist/src/presentation/web/components/features/chat/ChatTab.stories.d.ts.map +1 -0
  205. package/dist/src/presentation/web/components/features/chat/ChatTab.stories.js +237 -0
  206. package/dist/src/presentation/web/components/features/chat/useChatRuntime.d.ts +34 -0
  207. package/dist/src/presentation/web/components/features/chat/useChatRuntime.d.ts.map +1 -0
  208. package/dist/src/presentation/web/components/features/chat/useChatRuntime.js +266 -0
  209. package/dist/src/presentation/web/components/features/control-center/control-center-inner.d.ts.map +1 -1
  210. package/dist/src/presentation/web/components/features/control-center/control-center-inner.js +8 -8
  211. package/dist/src/presentation/web/components/features/features-canvas/canvas-toolbar.d.ts +13 -0
  212. package/dist/src/presentation/web/components/features/features-canvas/canvas-toolbar.d.ts.map +1 -0
  213. package/dist/src/presentation/web/components/features/features-canvas/canvas-toolbar.js +30 -0
  214. package/dist/src/presentation/web/components/features/features-canvas/features-canvas.d.ts +1 -2
  215. package/dist/src/presentation/web/components/features/features-canvas/features-canvas.d.ts.map +1 -1
  216. package/dist/src/presentation/web/components/features/features-canvas/features-canvas.js +5 -13
  217. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  218. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +45 -2
  219. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.d.ts.map +1 -1
  220. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.js +13 -65
  221. package/dist/src/presentation/web/components/providers/query-provider.d.ts +4 -0
  222. package/dist/src/presentation/web/components/providers/query-provider.d.ts.map +1 -0
  223. package/dist/src/presentation/web/components/providers/query-provider.js +16 -0
  224. package/dist/src/presentation/web/hooks/use-attachments.d.ts +26 -0
  225. package/dist/src/presentation/web/hooks/use-attachments.d.ts.map +1 -0
  226. package/dist/src/presentation/web/hooks/use-attachments.js +227 -0
  227. package/dist/tsconfig.build.tsbuildinfo +1 -1
  228. package/package.json +3 -1
  229. package/web/.next/BUILD_ID +1 -1
  230. package/web/.next/app-path-routes-manifest.json +11 -0
  231. package/web/.next/build-manifest.json +5 -5
  232. package/web/.next/fallback-build-manifest.json +2 -2
  233. package/web/.next/prerender-manifest.json +3 -3
  234. package/web/.next/required-server-files.js +1 -1
  235. package/web/.next/required-server-files.json +1 -1
  236. package/web/.next/routes-manifest.json +69 -0
  237. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/build-manifest.json +3 -3
  238. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +82 -82
  239. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +2 -2
  240. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  241. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  242. package/web/.next/server/app/(dashboard)/@drawer/chat/page/app-paths-manifest.json +3 -0
  243. package/web/.next/server/app/(dashboard)/@drawer/chat/page/build-manifest.json +18 -0
  244. package/web/.next/server/app/(dashboard)/@drawer/chat/page/next-font-manifest.json +6 -0
  245. package/web/.next/server/app/(dashboard)/@drawer/chat/page/react-loadable-manifest.json +8 -0
  246. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +395 -0
  247. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js +22 -0
  248. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.map +5 -0
  249. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -0
  250. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +2 -0
  251. package/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +3 -3
  252. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +84 -84
  253. package/web/.next/server/app/(dashboard)/@drawer/create/page.js +2 -2
  254. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  255. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  256. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/build-manifest.json +3 -3
  257. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +98 -98
  258. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +2 -2
  259. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  260. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  261. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +3 -3
  262. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +98 -98
  263. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +2 -2
  264. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  265. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  266. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/app-paths-manifest.json +3 -0
  267. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/build-manifest.json +18 -0
  268. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/next-font-manifest.json +6 -0
  269. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/react-loadable-manifest.json +8 -0
  270. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +395 -0
  271. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js +22 -0
  272. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.map +5 -0
  273. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -0
  274. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +2 -0
  275. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +3 -3
  276. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +78 -78
  277. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +2 -2
  278. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  279. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  280. package/web/.next/server/app/(dashboard)/chat/page/app-paths-manifest.json +3 -0
  281. package/web/.next/server/app/(dashboard)/chat/page/build-manifest.json +18 -0
  282. package/web/.next/server/app/(dashboard)/chat/page/next-font-manifest.json +6 -0
  283. package/web/.next/server/app/(dashboard)/chat/page/react-loadable-manifest.json +8 -0
  284. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +395 -0
  285. package/web/.next/server/app/(dashboard)/chat/page.js +22 -0
  286. package/web/.next/server/app/(dashboard)/chat/page.js.map +5 -0
  287. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -0
  288. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +2 -0
  289. package/web/.next/server/app/(dashboard)/create/page/build-manifest.json +3 -3
  290. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +84 -84
  291. package/web/.next/server/app/(dashboard)/create/page.js +2 -2
  292. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  293. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  294. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/build-manifest.json +3 -3
  295. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +98 -98
  296. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +2 -2
  297. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  298. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  299. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +3 -3
  300. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +98 -98
  301. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +2 -2
  302. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  303. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  304. package/web/.next/server/app/(dashboard)/page/build-manifest.json +3 -3
  305. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +78 -78
  306. package/web/.next/server/app/(dashboard)/page.js +2 -2
  307. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  308. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  309. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/app-paths-manifest.json +3 -0
  310. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/build-manifest.json +18 -0
  311. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/next-font-manifest.json +6 -0
  312. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/react-loadable-manifest.json +8 -0
  313. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +395 -0
  314. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js +22 -0
  315. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.map +5 -0
  316. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -0
  317. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +2 -0
  318. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +3 -3
  319. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +78 -78
  320. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +2 -2
  321. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  322. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  323. package/web/.next/server/app/_global-error/page/build-manifest.json +3 -3
  324. package/web/.next/server/app/_global-error.html +2 -2
  325. package/web/.next/server/app/_global-error.rsc +1 -1
  326. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  327. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  328. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  329. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  330. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  331. package/web/.next/server/app/_not-found/page/build-manifest.json +3 -3
  332. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +36 -6
  333. package/web/.next/server/app/_not-found/page.js +2 -2
  334. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  335. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  336. package/web/.next/server/app/api/attachments/preview/route.js +1 -1
  337. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  338. package/web/.next/server/app/api/evidence/route.js +1 -1
  339. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  340. package/web/.next/server/app/api/graph-data/route.js +1 -1
  341. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  342. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route/app-paths-manifest.json +3 -0
  343. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route/build-manifest.json +11 -0
  344. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route/server-reference-manifest.json +4 -0
  345. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js +7 -0
  346. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.map +5 -0
  347. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -0
  348. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route_client-reference-manifest.js +2 -0
  349. package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route/app-paths-manifest.json +3 -0
  350. package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route/build-manifest.json +11 -0
  351. package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route/server-reference-manifest.json +4 -0
  352. package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route.js +7 -0
  353. package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route.js.map +5 -0
  354. package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route.js.nft.json +1 -0
  355. package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route_client-reference-manifest.js +2 -0
  356. package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route/app-paths-manifest.json +3 -0
  357. package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route/build-manifest.json +11 -0
  358. package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route/server-reference-manifest.json +4 -0
  359. package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route.js +6 -0
  360. package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route.js.map +5 -0
  361. package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route.js.nft.json +1 -0
  362. package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route_client-reference-manifest.js +2 -0
  363. package/web/.next/server/app/api/interactive/sessions/[id]/messages/route/app-paths-manifest.json +3 -0
  364. package/web/.next/server/app/api/interactive/sessions/[id]/messages/route/build-manifest.json +11 -0
  365. package/web/.next/server/app/api/interactive/sessions/[id]/messages/route/server-reference-manifest.json +4 -0
  366. package/web/.next/server/app/api/interactive/sessions/[id]/messages/route.js +7 -0
  367. package/web/.next/server/app/api/interactive/sessions/[id]/messages/route.js.map +5 -0
  368. package/web/.next/server/app/api/interactive/sessions/[id]/messages/route.js.nft.json +1 -0
  369. package/web/.next/server/app/api/interactive/sessions/[id]/messages/route_client-reference-manifest.js +2 -0
  370. package/web/.next/server/app/api/interactive/sessions/[id]/route/app-paths-manifest.json +3 -0
  371. package/web/.next/server/app/api/interactive/sessions/[id]/route/build-manifest.json +11 -0
  372. package/web/.next/server/app/api/interactive/sessions/[id]/route/server-reference-manifest.json +4 -0
  373. package/web/.next/server/app/api/interactive/sessions/[id]/route.js +7 -0
  374. package/web/.next/server/app/api/interactive/sessions/[id]/route.js.map +5 -0
  375. package/web/.next/server/app/api/interactive/sessions/[id]/route.js.nft.json +1 -0
  376. package/web/.next/server/app/api/interactive/sessions/[id]/route_client-reference-manifest.js +2 -0
  377. package/web/.next/server/app/api/interactive/sessions/[id]/stream/route/app-paths-manifest.json +3 -0
  378. package/web/.next/server/app/api/interactive/sessions/[id]/stream/route/build-manifest.json +11 -0
  379. package/web/.next/server/app/api/interactive/sessions/[id]/stream/route/server-reference-manifest.json +4 -0
  380. package/web/.next/server/app/api/interactive/sessions/[id]/stream/route.js +6 -0
  381. package/web/.next/server/app/api/interactive/sessions/[id]/stream/route.js.map +5 -0
  382. package/web/.next/server/app/api/interactive/sessions/[id]/stream/route.js.nft.json +1 -0
  383. package/web/.next/server/app/api/interactive/sessions/[id]/stream/route_client-reference-manifest.js +2 -0
  384. package/web/.next/server/app/api/interactive/sessions/route/app-paths-manifest.json +3 -0
  385. package/web/.next/server/app/api/interactive/sessions/route/build-manifest.json +11 -0
  386. package/web/.next/server/app/api/interactive/sessions/route/server-reference-manifest.json +4 -0
  387. package/web/.next/server/app/api/interactive/sessions/route.js +7 -0
  388. package/web/.next/server/app/api/interactive/sessions/route.js.map +5 -0
  389. package/web/.next/server/app/api/interactive/sessions/route.js.nft.json +1 -0
  390. package/web/.next/server/app/api/interactive/sessions/route_client-reference-manifest.js +2 -0
  391. package/web/.next/server/app/api/sessions/route.js.nft.json +1 -1
  392. package/web/.next/server/app/api/sessions-batch/route.js.nft.json +1 -1
  393. package/web/.next/server/app/api/tools/route.js +2 -2
  394. package/web/.next/server/app/settings/page/build-manifest.json +3 -3
  395. package/web/.next/server/app/settings/page/server-reference-manifest.json +42 -42
  396. package/web/.next/server/app/settings/page.js +3 -3
  397. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  398. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  399. package/web/.next/server/app/skills/page/build-manifest.json +3 -3
  400. package/web/.next/server/app/skills/page/server-reference-manifest.json +46 -16
  401. package/web/.next/server/app/skills/page.js +3 -3
  402. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  403. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  404. package/web/.next/server/app/tools/page/build-manifest.json +3 -3
  405. package/web/.next/server/app/tools/page/server-reference-manifest.json +46 -16
  406. package/web/.next/server/app/tools/page.js +3 -3
  407. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  408. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  409. package/web/.next/server/app/version/page/build-manifest.json +3 -3
  410. package/web/.next/server/app/version/page/server-reference-manifest.json +36 -6
  411. package/web/.next/server/app/version/page.js +2 -2
  412. package/web/.next/server/app/version/page.js.nft.json +1 -1
  413. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  414. package/web/.next/server/app-paths-manifest.json +11 -0
  415. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js +8 -2
  416. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js.map +1 -1
  417. package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_interactive_sessions_route_actions_f2e7447f.js +3 -0
  418. package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_interactive_sessions_route_actions_f2e7447f.js.map +1 -0
  419. package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_messages_route_actions_f98e5802.js +3 -0
  420. package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_messages_route_actions_f98e5802.js.map +1 -0
  421. package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_stop_route_actions_36518d35.js +3 -0
  422. package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_stop_route_actions_36518d35.js.map +1 -0
  423. package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_stream_route_actions_e6210931.js +3 -0
  424. package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_stream_route_actions_e6210931.js.map +1 -0
  425. package/web/.next/server/chunks/8ba4b_server_app_api_interactive_sessions_[id]_messages_route_actions_be179971.js +3 -0
  426. package/web/.next/server/chunks/8ba4b_server_app_api_interactive_sessions_[id]_messages_route_actions_be179971.js.map +1 -0
  427. package/web/.next/server/chunks/8ba4b_server_app_api_interactive_sessions_[id]_stream_route_actions_58ab2b5b.js +3 -0
  428. package/web/.next/server/chunks/8ba4b_server_app_api_interactive_sessions_[id]_stream_route_actions_58ab2b5b.js.map +1 -0
  429. package/web/.next/server/chunks/[root-of-the-server]__10852c5c._.js +3 -0
  430. package/web/.next/server/chunks/[root-of-the-server]__10852c5c._.js.map +1 -0
  431. package/web/.next/server/chunks/[root-of-the-server]__2b71641f._.js +3 -0
  432. package/web/.next/server/chunks/[root-of-the-server]__2b71641f._.js.map +1 -0
  433. package/web/.next/server/chunks/[root-of-the-server]__2bb675ff._.js +3 -0
  434. package/web/.next/server/chunks/[root-of-the-server]__2bb675ff._.js.map +1 -0
  435. package/web/.next/server/chunks/[root-of-the-server]__4408a5ba._.js +12 -0
  436. package/web/.next/server/chunks/[root-of-the-server]__4408a5ba._.js.map +1 -0
  437. package/web/.next/server/chunks/[root-of-the-server]__6565a045._.js +3 -0
  438. package/web/.next/server/chunks/[root-of-the-server]__6565a045._.js.map +1 -0
  439. package/web/.next/server/chunks/[root-of-the-server]__8a281f8d._.js +18 -0
  440. package/web/.next/server/chunks/[root-of-the-server]__8a281f8d._.js.map +1 -0
  441. package/web/.next/server/chunks/[root-of-the-server]__8f8d6afe._.js +3 -0
  442. package/web/.next/server/chunks/[root-of-the-server]__8f8d6afe._.js.map +1 -0
  443. package/web/.next/server/chunks/[root-of-the-server]__9191749c._.js +1 -1
  444. package/web/.next/server/chunks/[root-of-the-server]__9191749c._.js.map +1 -1
  445. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  446. package/web/.next/server/chunks/{[root-of-the-server]__26565141._.js → [root-of-the-server]__acea6565._.js} +2 -2
  447. package/web/.next/server/chunks/{[root-of-the-server]__26565141._.js.map → [root-of-the-server]__acea6565._.js.map} +1 -1
  448. package/web/.next/server/chunks/[root-of-the-server]__beda892a._.js +3 -0
  449. package/web/.next/server/chunks/[root-of-the-server]__beda892a._.js.map +1 -0
  450. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js +1 -1
  451. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
  452. package/web/.next/server/chunks/{[root-of-the-server]__25f23d5d._.js → [root-of-the-server]__e3692208._.js} +2 -2
  453. package/web/.next/server/chunks/{[root-of-the-server]__25f23d5d._.js.map → [root-of-the-server]__e3692208._.js.map} +1 -1
  454. package/web/.next/server/chunks/f3a1f__next-internal_server_app_api_interactive_sessions_[id]_route_actions_a4ea4d16.js +3 -0
  455. package/web/.next/server/chunks/f3a1f__next-internal_server_app_api_interactive_sessions_[id]_route_actions_a4ea4d16.js.map +1 -0
  456. package/web/.next/server/chunks/ssr/403f9_next_dist_c9d9b4d7._.js +1 -1
  457. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_2c44200f.js +4 -0
  458. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_2c44200f.js.map +1 -0
  459. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_56f4f121.js +4 -0
  460. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_56f4f121.js.map +1 -0
  461. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_77436e06.js +4 -0
  462. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_77436e06.js.map +1 -0
  463. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_b9bb0443.js +4 -0
  464. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_b9bb0443.js.map +1 -0
  465. package/web/.next/server/chunks/ssr/744ca_web_app_(dashboard)_repository_[repositoryId]_[tab]_page_tsx_2e9a3025._.js +3 -0
  466. package/web/.next/server/chunks/ssr/744ca_web_app_(dashboard)_repository_[repositoryId]_[tab]_page_tsx_2e9a3025._.js.map +1 -0
  467. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  468. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  469. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +7 -0
  470. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -0
  471. package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_4b319ae6._.js +3 -0
  472. package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_4b319ae6._.js.map +1 -0
  473. package/web/.next/server/chunks/ssr/[root-of-the-server]__0b150ddf._.js +1 -1
  474. package/web/.next/server/chunks/ssr/[root-of-the-server]__0b150ddf._.js.map +1 -1
  475. package/web/.next/server/chunks/ssr/[root-of-the-server]__17ed7ed1._.js +4 -0
  476. package/web/.next/server/chunks/ssr/[root-of-the-server]__17ed7ed1._.js.map +1 -0
  477. package/web/.next/server/chunks/ssr/[root-of-the-server]__28d0d265._.js +4 -0
  478. package/web/.next/server/chunks/ssr/[root-of-the-server]__28d0d265._.js.map +1 -0
  479. package/web/.next/server/chunks/ssr/[root-of-the-server]__31f1c3b0._.js +7 -0
  480. package/web/.next/server/chunks/ssr/[root-of-the-server]__31f1c3b0._.js.map +1 -0
  481. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  482. package/web/.next/server/chunks/ssr/[root-of-the-server]__42bf1807._.js +4 -0
  483. package/web/.next/server/chunks/ssr/[root-of-the-server]__42bf1807._.js.map +1 -0
  484. package/web/.next/server/chunks/ssr/[root-of-the-server]__56b70465._.js +4 -0
  485. package/web/.next/server/chunks/ssr/[root-of-the-server]__56b70465._.js.map +1 -0
  486. package/web/.next/server/chunks/ssr/[root-of-the-server]__684a868c._.js +1 -1
  487. package/web/.next/server/chunks/ssr/[root-of-the-server]__684a868c._.js.map +1 -1
  488. package/web/.next/server/chunks/ssr/[root-of-the-server]__7528eb6f._.js +3 -0
  489. package/web/.next/server/chunks/ssr/[root-of-the-server]__7528eb6f._.js.map +1 -0
  490. package/web/.next/server/chunks/ssr/[root-of-the-server]__88f7e8e6._.js +4 -0
  491. package/web/.next/server/chunks/ssr/[root-of-the-server]__88f7e8e6._.js.map +1 -0
  492. package/web/.next/server/chunks/ssr/[root-of-the-server]__8b0aac03._.js +4 -0
  493. package/web/.next/server/chunks/ssr/[root-of-the-server]__8b0aac03._.js.map +1 -0
  494. package/web/.next/server/chunks/ssr/[root-of-the-server]__b14946f5._.js +2 -2
  495. package/web/.next/server/chunks/ssr/[root-of-the-server]__b8d4bd27._.js +3 -0
  496. package/web/.next/server/chunks/ssr/[root-of-the-server]__b8d4bd27._.js.map +1 -0
  497. package/web/.next/server/chunks/ssr/[root-of-the-server]__c16bf5de._.js +1 -1
  498. package/web/.next/server/chunks/ssr/[root-of-the-server]__c16bf5de._.js.map +1 -1
  499. package/web/.next/server/chunks/ssr/[root-of-the-server]__c30f1f82._.js +4 -0
  500. package/web/.next/server/chunks/ssr/[root-of-the-server]__c30f1f82._.js.map +1 -0
  501. package/web/.next/server/chunks/ssr/[root-of-the-server]__ede6df1f._.js +3 -0
  502. package/web/.next/server/chunks/ssr/[root-of-the-server]__ede6df1f._.js.map +1 -0
  503. package/web/.next/server/chunks/ssr/[root-of-the-server]__f80bfc75._.js +4 -0
  504. package/web/.next/server/chunks/ssr/[root-of-the-server]__f80bfc75._.js.map +1 -0
  505. package/web/.next/server/chunks/ssr/_05c23ad9._.js +1 -1
  506. package/web/.next/server/chunks/ssr/_05c23ad9._.js.map +1 -1
  507. package/web/.next/server/chunks/ssr/_16eb4fec._.js +1 -1
  508. package/web/.next/server/chunks/ssr/_16eb4fec._.js.map +1 -1
  509. package/web/.next/server/chunks/ssr/{_c2ca0f1b._.js → _320a4303._.js} +3 -3
  510. package/web/.next/server/chunks/ssr/_320a4303._.js.map +1 -0
  511. package/web/.next/server/chunks/ssr/_3a0b989f._.js +6 -0
  512. package/web/.next/server/chunks/ssr/_3a0b989f._.js.map +1 -0
  513. package/web/.next/server/chunks/ssr/_48e5757d._.js +9 -0
  514. package/web/.next/server/chunks/ssr/_48e5757d._.js.map +1 -0
  515. package/web/.next/server/chunks/ssr/{_6c7faa01._.js → _507a8382._.js} +2 -2
  516. package/web/.next/server/chunks/ssr/_507a8382._.js.map +1 -0
  517. package/web/.next/server/chunks/ssr/_56b9d60f._.js +3 -0
  518. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -0
  519. package/web/.next/server/chunks/ssr/_5f69c13f._.js +4 -0
  520. package/web/.next/server/chunks/ssr/_5f69c13f._.js.map +1 -0
  521. package/web/.next/server/chunks/ssr/_78ff6f1d._.js +3 -0
  522. package/web/.next/server/chunks/ssr/_78ff6f1d._.js.map +1 -0
  523. package/web/.next/server/chunks/ssr/_7c5b97c6._.js +4 -0
  524. package/web/.next/server/chunks/ssr/_7c5b97c6._.js.map +1 -0
  525. package/web/.next/server/chunks/ssr/_8219712a._.js +3 -0
  526. package/web/.next/server/chunks/ssr/_8219712a._.js.map +1 -0
  527. package/web/.next/server/chunks/ssr/_82c57f10._.js +4 -0
  528. package/web/.next/server/chunks/ssr/_82c57f10._.js.map +1 -0
  529. package/web/.next/server/chunks/ssr/{_0020fddd._.js → _8b57edb8._.js} +2 -2
  530. package/web/.next/server/chunks/ssr/_8b57edb8._.js.map +1 -0
  531. package/web/.next/server/chunks/ssr/_8d733ce4._.js +3 -0
  532. package/web/.next/server/chunks/ssr/_8d733ce4._.js.map +1 -0
  533. package/web/.next/server/chunks/ssr/{_6256a985._.js → _9495d50b._.js} +3 -3
  534. package/web/.next/server/chunks/ssr/{_6256a985._.js.map → _9495d50b._.js.map} +1 -1
  535. package/web/.next/server/chunks/ssr/_a0e3f7e4._.js +4 -0
  536. package/web/.next/server/chunks/ssr/_a0e3f7e4._.js.map +1 -0
  537. package/web/.next/server/chunks/ssr/_ac4a3873._.js +3 -0
  538. package/web/.next/server/chunks/ssr/_ac4a3873._.js.map +1 -0
  539. package/web/.next/server/chunks/ssr/_acc33591._.js +3 -0
  540. package/web/.next/server/chunks/ssr/_acc33591._.js.map +1 -0
  541. package/web/.next/server/chunks/ssr/_ca0aa7f0._.js +4 -0
  542. package/web/.next/server/chunks/ssr/_ca0aa7f0._.js.map +1 -0
  543. package/web/.next/server/chunks/ssr/_cb5a021e._.js +4 -0
  544. package/web/.next/server/chunks/ssr/_cb5a021e._.js.map +1 -0
  545. package/web/.next/server/chunks/ssr/_cfbd1d7e._.js +1 -1
  546. package/web/.next/server/chunks/ssr/_cfbd1d7e._.js.map +1 -1
  547. package/web/.next/server/chunks/ssr/_d4b20e29._.js +1 -1
  548. package/web/.next/server/chunks/ssr/_d4b20e29._.js.map +1 -1
  549. package/web/.next/server/chunks/ssr/_d86175ae._.js +4 -0
  550. package/web/.next/server/chunks/ssr/_d86175ae._.js.map +1 -0
  551. package/web/.next/server/chunks/ssr/_d8bedf13._.js +4 -0
  552. package/web/.next/server/chunks/ssr/_d8bedf13._.js.map +1 -0
  553. package/web/.next/server/chunks/ssr/_fa7efce3._.js +6 -0
  554. package/web/.next/server/chunks/ssr/_fa7efce3._.js.map +1 -0
  555. package/web/.next/server/chunks/ssr/{_4093a637._.js → _ffa39df5._.js} +2 -2
  556. package/web/.next/server/chunks/ssr/_ffa39df5._.js.map +1 -0
  557. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  558. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  559. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_global-chat-drawer-client_tsx_158c4b12._.js +3 -0
  560. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_global-chat-drawer-client_tsx_158c4b12._.js.map +1 -0
  561. package/web/.next/server/chunks/ssr/node_modules__pnpm_8ec2c790._.js +3 -0
  562. package/web/.next/server/chunks/ssr/node_modules__pnpm_8ec2c790._.js.map +1 -0
  563. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_cdc632e3.js +3 -0
  564. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_cdc632e3.js.map +1 -0
  565. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_39ca0924.js +3 -0
  566. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_39ca0924.js.map +1 -0
  567. package/web/.next/server/chunks/ssr/src_presentation_web_app_(dashboard)_chat_page_tsx_85327270._.js +3 -0
  568. package/web/.next/server/chunks/ssr/src_presentation_web_app_(dashboard)_chat_page_tsx_85327270._.js.map +1 -0
  569. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +1 -1
  570. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
  571. package/web/.next/server/chunks/ssr/src_presentation_web_components_357e3eb0._.js +3 -0
  572. package/web/.next/server/chunks/ssr/src_presentation_web_components_357e3eb0._.js.map +1 -0
  573. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  574. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  575. package/web/.next/server/middleware-build-manifest.js +3 -3
  576. package/web/.next/server/pages/500.html +2 -2
  577. package/web/.next/server/server-reference-manifest.js +1 -1
  578. package/web/.next/server/server-reference-manifest.json +1346 -562
  579. package/web/.next/static/chunks/011f98455d1a2f64.js +7 -0
  580. package/web/.next/static/chunks/036f4b19acb4fcf9.js +3 -0
  581. package/web/.next/static/chunks/0c38793438b8c038.js +1 -0
  582. package/web/.next/static/chunks/101c183087b9984f.js +1 -0
  583. package/web/.next/static/chunks/11091b676d1b3bd4.js +1 -0
  584. package/web/.next/static/chunks/16f6471485cbfed1.css +1 -0
  585. package/web/.next/static/chunks/22c459f1877b1e4f.js +1 -0
  586. package/web/.next/static/chunks/2354d39c63978576.js +1 -0
  587. package/web/.next/static/chunks/40b6bcf1a2de4a0f.js +1 -0
  588. package/web/.next/static/chunks/460a633a069f7114.js +1 -0
  589. package/web/.next/static/chunks/4b2c4a5c35ebb70d.js +1 -0
  590. package/web/.next/static/chunks/5ae60a052ab5f437.js +5 -0
  591. package/web/.next/static/chunks/686164c73f381a39.js +5 -0
  592. package/web/.next/static/chunks/77e04d00f3460226.js +1 -0
  593. package/web/.next/static/chunks/7b93fa5e0054de38.js +1 -0
  594. package/web/.next/static/chunks/932d27878bf6ad1d.js +1 -0
  595. package/web/.next/static/chunks/95f3089ebd3a0ad8.js +1 -0
  596. package/web/.next/static/chunks/a9a2a4964b06aedd.js +1 -0
  597. package/web/.next/static/chunks/{091de81012e2bc48.js → ade96a2ab608bded.js} +2 -2
  598. package/web/.next/static/chunks/b868f9defe50a18f.js +1 -0
  599. package/web/.next/static/chunks/cd54b758f58061d0.js +1 -0
  600. package/web/.next/static/chunks/{cfe4dc9904fcfddb.js → d0e04c4bd51d2553.js} +1 -1
  601. package/web/.next/static/chunks/feed0046c419c228.js +5 -0
  602. package/web/.next/static/chunks/{turbopack-c2d183e05f30c7dc.js → turbopack-432ef324fc27240c.js} +1 -1
  603. package/web/package.json +7 -2
  604. package/apis/json-schema/AgentRunDetail.yaml +0 -28
  605. package/apis/json-schema/DoctorDiagnosticReport.yaml +0 -76
  606. package/apis/json-schema/FailedRunSummary.yaml +0 -22
  607. package/apis/json-schema/SystemInfo.yaml +0 -22
  608. package/apis/json-schema/WorkerLogEntry.yaml +0 -27
  609. package/dist/packages/core/src/application/ports/output/services/github-issue-service.interface.d.ts +0 -57
  610. package/dist/packages/core/src/application/ports/output/services/github-issue-service.interface.d.ts.map +0 -1
  611. package/dist/packages/core/src/application/ports/output/services/github-issue-service.interface.js +0 -39
  612. package/dist/packages/core/src/application/use-cases/doctor/doctor-diagnose.use-case.d.ts +0 -64
  613. package/dist/packages/core/src/application/use-cases/doctor/doctor-diagnose.use-case.d.ts.map +0 -1
  614. package/dist/packages/core/src/application/use-cases/doctor/doctor-diagnose.use-case.js +0 -493
  615. package/dist/packages/core/src/infrastructure/services/external/github-issue-creator.service.d.ts +0 -17
  616. package/dist/packages/core/src/infrastructure/services/external/github-issue-creator.service.d.ts.map +0 -1
  617. package/dist/packages/core/src/infrastructure/services/external/github-issue-creator.service.js +0 -69
  618. package/dist/src/presentation/cli/commands/doctor.command.d.ts +0 -20
  619. package/dist/src/presentation/cli/commands/doctor.command.d.ts.map +0 -1
  620. package/dist/src/presentation/cli/commands/doctor.command.js +0 -129
  621. package/web/.next/server/chunks/[root-of-the-server]__c6e32a23._.js +0 -3
  622. package/web/.next/server/chunks/[root-of-the-server]__c6e32a23._.js.map +0 -1
  623. package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_8b618f7d._.js +0 -3
  624. package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_8b618f7d._.js.map +0 -1
  625. package/web/.next/server/chunks/ssr/[root-of-the-server]__2138fa7e._.js +0 -4
  626. package/web/.next/server/chunks/ssr/[root-of-the-server]__2138fa7e._.js.map +0 -1
  627. package/web/.next/server/chunks/ssr/[root-of-the-server]__29580090._.js +0 -4
  628. package/web/.next/server/chunks/ssr/[root-of-the-server]__29580090._.js.map +0 -1
  629. package/web/.next/server/chunks/ssr/[root-of-the-server]__3ef34e4c._.js +0 -4
  630. package/web/.next/server/chunks/ssr/[root-of-the-server]__3ef34e4c._.js.map +0 -1
  631. package/web/.next/server/chunks/ssr/[root-of-the-server]__43f51aa6._.js +0 -4
  632. package/web/.next/server/chunks/ssr/[root-of-the-server]__43f51aa6._.js.map +0 -1
  633. package/web/.next/server/chunks/ssr/[root-of-the-server]__815546bd._.js +0 -4
  634. package/web/.next/server/chunks/ssr/[root-of-the-server]__815546bd._.js.map +0 -1
  635. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +0 -7
  636. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js.map +0 -1
  637. package/web/.next/server/chunks/ssr/[root-of-the-server]__c094882b._.js +0 -4
  638. package/web/.next/server/chunks/ssr/[root-of-the-server]__c094882b._.js.map +0 -1
  639. package/web/.next/server/chunks/ssr/[root-of-the-server]__d48c5b11._.js +0 -3
  640. package/web/.next/server/chunks/ssr/[root-of-the-server]__d48c5b11._.js.map +0 -1
  641. package/web/.next/server/chunks/ssr/[root-of-the-server]__dac5dbf1._.js +0 -4
  642. package/web/.next/server/chunks/ssr/[root-of-the-server]__dac5dbf1._.js.map +0 -1
  643. package/web/.next/server/chunks/ssr/[root-of-the-server]__df7c1cd3._.js +0 -3
  644. package/web/.next/server/chunks/ssr/[root-of-the-server]__df7c1cd3._.js.map +0 -1
  645. package/web/.next/server/chunks/ssr/[root-of-the-server]__fae8b355._.js +0 -4
  646. package/web/.next/server/chunks/ssr/[root-of-the-server]__fae8b355._.js.map +0 -1
  647. package/web/.next/server/chunks/ssr/_0020fddd._.js.map +0 -1
  648. package/web/.next/server/chunks/ssr/_01046927._.js +0 -9
  649. package/web/.next/server/chunks/ssr/_01046927._.js.map +0 -1
  650. package/web/.next/server/chunks/ssr/_0c473fef._.js +0 -6
  651. package/web/.next/server/chunks/ssr/_0c473fef._.js.map +0 -1
  652. package/web/.next/server/chunks/ssr/_1b719e7f._.js +0 -4
  653. package/web/.next/server/chunks/ssr/_1b719e7f._.js.map +0 -1
  654. package/web/.next/server/chunks/ssr/_37e8548b._.js +0 -4
  655. package/web/.next/server/chunks/ssr/_37e8548b._.js.map +0 -1
  656. package/web/.next/server/chunks/ssr/_4093a637._.js.map +0 -1
  657. package/web/.next/server/chunks/ssr/_55d763e2._.js +0 -4
  658. package/web/.next/server/chunks/ssr/_55d763e2._.js.map +0 -1
  659. package/web/.next/server/chunks/ssr/_6c7faa01._.js.map +0 -1
  660. package/web/.next/server/chunks/ssr/_8fcc39d4._.js +0 -3
  661. package/web/.next/server/chunks/ssr/_8fcc39d4._.js.map +0 -1
  662. package/web/.next/server/chunks/ssr/_b71645b4._.js +0 -4
  663. package/web/.next/server/chunks/ssr/_b71645b4._.js.map +0 -1
  664. package/web/.next/server/chunks/ssr/_c2ca0f1b._.js.map +0 -1
  665. package/web/.next/server/chunks/ssr/_d8575088._.js +0 -3
  666. package/web/.next/server/chunks/ssr/_d8575088._.js.map +0 -1
  667. package/web/.next/server/chunks/ssr/_dc9a9d32._.js +0 -3
  668. package/web/.next/server/chunks/ssr/_dc9a9d32._.js.map +0 -1
  669. package/web/.next/server/chunks/ssr/_e9e9ed20._.js +0 -6
  670. package/web/.next/server/chunks/ssr/_e9e9ed20._.js.map +0 -1
  671. package/web/.next/server/chunks/ssr/node_modules__pnpm_55c7a131._.js +0 -3
  672. package/web/.next/server/chunks/ssr/node_modules__pnpm_55c7a131._.js.map +0 -1
  673. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1b176e3c.js +0 -3
  674. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1b176e3c.js.map +0 -1
  675. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_bd9f0dda.js +0 -3
  676. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_bd9f0dda.js.map +0 -1
  677. package/web/.next/server/chunks/ssr/src_presentation_web_aa941041._.js +0 -3
  678. package/web/.next/server/chunks/ssr/src_presentation_web_aa941041._.js.map +0 -1
  679. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +0 -3
  680. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js.map +0 -1
  681. package/web/.next/static/chunks/08baac5434d9528e.js +0 -13
  682. package/web/.next/static/chunks/25889ca8401d1bc0.js +0 -1
  683. package/web/.next/static/chunks/359b2815c5ed39cc.js +0 -1
  684. package/web/.next/static/chunks/49057cf8cd37e262.js +0 -1
  685. package/web/.next/static/chunks/4a28fd1bca225386.js +0 -1
  686. package/web/.next/static/chunks/4cec255f2754e5ec.js +0 -1
  687. package/web/.next/static/chunks/5e1877d1f1bcfd77.js +0 -1
  688. package/web/.next/static/chunks/601d93593f5f664f.js +0 -1
  689. package/web/.next/static/chunks/76a3f345f8cf2608.js +0 -1
  690. package/web/.next/static/chunks/79eae02d0342fb73.js +0 -1
  691. package/web/.next/static/chunks/80915095cec414bf.js +0 -1
  692. package/web/.next/static/chunks/87b72b8a10f8255b.js +0 -5
  693. package/web/.next/static/chunks/9b8678597fa1db84.css +0 -1
  694. package/web/.next/static/chunks/b70dd4985a814b27.js +0 -1
  695. package/web/.next/static/chunks/c2388f8bc58b2a21.js +0 -1
  696. package/web/.next/static/chunks/e760b952ba1a10d4.js +0 -1
  697. package/web/.next/static/chunks/ed9408f100149c34.js +0 -1
  698. package/web/.next/static/chunks/f66c996402a430f5.js +0 -1
  699. /package/web/.next/static/{-o7QIcv1p5C722dwF4EFd → 2rfPfTfJJx4Mf-4AeVzgA}/_buildManifest.js +0 -0
  700. /package/web/.next/static/{-o7QIcv1p5C722dwF4EFd → 2rfPfTfJJx4Mf-4AeVzgA}/_clientMiddlewareManifest.json +0 -0
  701. /package/web/.next/static/{-o7QIcv1p5C722dwF4EFd → 2rfPfTfJJx4Mf-4AeVzgA}/_ssgManifest.js +0 -0
@@ -1,4 +0,0 @@
1
- module.exports=[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,73101,65324,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}}}var g=a.i(12581);async function h(){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,g.ensureServerEntryExports)([h]),(0,b.registerServerReference)(h,"00e1e11607e431aa191317334111361bf74393293f",null),a.s(["pickFolder",()=>h],12513);var i=a.i(96380);class j extends Error{constructor(a,b){super(a),this.name="GitHubAuthError",Object.setPrototypeOf(this,new.target.prototype),b&&(this.cause=b)}}class k extends Error{constructor(a,b){super(a),this.name="GitHubCloneError",Object.setPrototypeOf(this,new.target.prototype),b&&(this.cause=b)}}class l extends Error{constructor(a,b){super(a),this.name="GitHubUrlParseError",Object.setPrototypeOf(this,new.target.prototype),b&&(this.cause=b)}}async function m(a){try{let b=(0,i.resolve)("ListGitHubRepositoriesUseCase");return{repos:await b.execute(a)}}catch(a){if(a instanceof j)return{error:"GitHub CLI is not authenticated. Run `gh auth login` to sign in."};return{error:a instanceof Error?a.message:"Failed to list repositories"}}}async function n(a){let{url:b,dest:c}=a;if(!b?.trim())return{error:"GitHub URL is required"};try{let a=(0,i.resolve)("ImportGitHubRepositoryUseCase");return{repository:await a.execute({url:b,dest:c})}}catch(a){if(a instanceof j)return{error:"GitHub CLI is not authenticated. Run `gh auth login` to sign in."};if(a instanceof l)return{error:`Invalid GitHub URL: ${a.message}`};if(a instanceof k)return{error:`Clone failed: ${a.message}`};return{error:a instanceof Error?a.message:"Failed to import repository"}}}(0,g.ensureServerEntryExports)([m]),(0,b.registerServerReference)(m,"406966ff91ed6f944406b9e8525f284de5251b8f93",null),a.s(["listGitHubRepositories",()=>m],73101),(0,g.ensureServerEntryExports)([n]),(0,b.registerServerReference)(n,"40444a70d6bff5103d338b37bc3de531acd194b8b8",null),a.s(["importGitHubRepository",()=>n],65324)},33841,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(29918),h=a.i(81719),i=a.i(50227);function j(a){try{let b=(0,c.realpathSync)((0,i.resolve)(a)).replace(/\\/g,"/"),d=(0,c.realpathSync)((0,i.resolve)("/home/runner/work/cli/cli/src/presentation/web")).replace(/\\/g,"/");return b===d}catch{return!1}}var k=a.i(12581);let l=f("[deployFeature]");async function m(a){if(l.info(`called — featureId="${a}"`),!a?.trim())return l.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 l.warn(`feature not found in repository: "${a}"`),{success:!1,error:`Feature not found: ${a}`};l.info(`feature found — repositoryPath="${e.repositoryPath}", branch="${e.branch}"`);let f=(0,g.computeWorktreePath)(e.repositoryPath,e.branch);if(l.info(`computed worktreePath="${f}"`),!(0,c.existsSync)(f))return l.warn(`worktree path does not exist on disk: "${f}"`),{success:!1,error:`Worktree path does not exist: ${f}`};if(j(e.repositoryPath))return l.warn("rejected — feature belongs to the running shep instance"),{success:!1,error:"Cannot start a dev server for features of the repository Shep is running from"};return l.info("worktree path exists, calling deploymentService.start()"),(0,d.resolve)("IDeploymentService").start(a,f,"feature"),l.info("start() returned successfully — state=Booting"),{success:!0,state:h.DeploymentState.Booting}}catch(b){let a=b instanceof Error?b.message:"Failed to deploy feature";return l.error(`error: ${a}`,b),{success:!1,error:a}}}(0,k.ensureServerEntryExports)([m]),(0,b.registerServerReference)(m,"40c110278a6dafd68e39d4faed5ce2708f70d99c9f",null),a.s(["deployFeature",()=>m],33841);let n=f("[deployRepository]");async function o(a){if(n.info(`called — repositoryPath="${a}"`),!a||!(0,i.isAbsolute)(a))return n.warn("rejected — not an absolute path"),{success:!1,error:"repositoryPath must be an absolute path"};try{if(!(0,c.existsSync)(a))return n.warn(`directory does not exist: "${a}"`),{success:!1,error:`Directory does not exist: ${a}`};if(j(a))return n.warn("rejected — target is the running shep instance"),{success:!1,error:"Cannot start a dev server for the repository Shep is running from"};return n.info("directory exists, calling deploymentService.start()"),(0,d.resolve)("IDeploymentService").start(a,a,"repository"),n.info("start() returned successfully — state=Booting"),{success:!0,state:h.DeploymentState.Booting}}catch(b){let a=b instanceof Error?b.message:"Failed to deploy repository";return n.error(`error: ${a}`,b),{success:!1,error:a}}}async function p(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 q(a){return a?.trim()?(0,d.resolve)("IDeploymentService").getStatus(a):null}(0,k.ensureServerEntryExports)([o]),(0,b.registerServerReference)(o,"40b005877070262dafedcd7c6763f659a5e677f734",null),a.s(["deployRepository",()=>o],46646),(0,k.ensureServerEntryExports)([p]),(0,b.registerServerReference)(p,"40109cdf9c82787ed0fb5a65801603020610bc3ff0",null),a.s(["stopDeployment",()=>p],68670),(0,k.ensureServerEntryExports)([q]),(0,b.registerServerReference)(q,"402dafaac7348ffb5e5a02863bc22ac161792e2d58",null),a.s(["getDeploymentStatus",()=>q],85321)},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,"4061c0b3814d0f2a2ae9a1f773582aedbaf9a2101f",null),a.s(["getDeploymentLogs",()=>d])},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,"000b4cf5d08025fc20b6ef326899c5083c44d6200e",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,"60c1e233607b6de6f3571bf9fdda35f44bed277b6d",null),a.s(["updateAgentAndModel",()=>l],27900)},45831,a=>{"use strict";var b=a.i(12513),c=a.i(73101),d=a.i(65324),e=a.i(33841),f=a.i(46646),g=a.i(68670),h=a.i(85321),i=a.i(84095),j=a.i(56799),k=a.i(80496),l=a.i(93225),m=a.i(94691),n=a.i(41872),o=a.i(9959),p=a.i(79124),q=a.i(23504),r=a.i(27900),s=a.i(10528),t=a.i(50845),u=a.i(26604),v=a.i(54723),w=a.i(18942),x=a.i(42886),y=a.i(49560),z=a.i(39353),A=a.i(29207),B=a.i(92658),C=a.i(96380),D=a.i(12581);async function E(a){let{branchName:b,repositoryPath:c}=a;if(!b?.trim())return{error:"Branch name is required"};if(!c?.trim())return{error:"Repository path is required"};try{let a=(0,C.resolve)("AdoptBranchUseCase");return{feature:(await a.execute({branchName:b,repositoryPath:c})).feature}}catch(a){return{error:a instanceof Error?a.message:"Failed to adopt branch"}}}async function F(a){if(!a?.trim())return[];try{let b=(0,C.resolve)("IWorktreeService");return await b.listBranches(a)}catch{return[]}}(0,D.ensureServerEntryExports)([E]),(0,B.registerServerReference)(E,"4091c777ba7c69ad7485c396a972a217b424b95186",null),(0,D.ensureServerEntryExports)([F]),(0,B.registerServerReference)(F,"40342b519a64916aa57f19b65cf1f51eb151375529",null),a.s([],70795),a.i(70795),a.s(["000b4cf5d08025fc20b6ef326899c5083c44d6200e",()=>q.getAllAgentModels,"005858d4eb4e26bf1240140e9ded5fe9c185c1d686",()=>p.checkToolStatus,"0065cca102b484937834ac7ea2c198740ae52d9b06",()=>n.isAgentSetupComplete,"00db26aa1c5e8bacb7d83ac9f634d6f51010422496",()=>o.checkAgentAuth,"00e1e11607e431aa191317334111361bf74393293f",()=>b.pickFolder,"40065b4f5ac6a0463624e6ffd40a6a3ddb96ce28d7",()=>u.resumeFeature,"40109cdf9c82787ed0fb5a65801603020610bc3ff0",()=>g.stopDeployment,"402dafaac7348ffb5e5a02863bc22ac161792e2d58",()=>h.getDeploymentStatus,"40342b519a64916aa57f19b65cf1f51eb151375529",()=>F,"403b1f7ef9109cc8e6e9d44e4eed492752aaae5838",()=>x.unarchiveFeature,"40444a70d6bff5103d338b37bc3de531acd194b8b8",()=>d.importGitHubRepository,"40587a1d8af78900a89eb87ea8de856805d50e4c2d",()=>w.stopFeature,"4061c0b3814d0f2a2ae9a1f773582aedbaf9a2101f",()=>m.getDeploymentLogs,"40659e08581e83adc2099f839b88fea47d7cfd0cc4",()=>l.syncRepository,"406966ff91ed6f944406b9e8525f284de5251b8f93",()=>c.listGitHubRepositories,"4083c03126d1792988adf1c1f1287f3560fbea27ae",()=>s.archiveFeature,"408ec5d7997d9f40a931f404d47925b673cf8e00b6",()=>A.getFeatureMetadata,"4091c777ba7c69ad7485c396a972a217b424b95186",()=>E,"409e55273c71b48b411b0d98ca453099fdf01741b5",()=>i.openIde,"40b005877070262dafedcd7c6763f659a5e677f734",()=>f.deployRepository,"40b8b91fbf1f6b5428a8b688ae8428e2e1307ebcd8",()=>z.deleteRepository,"40c109a0ffa12cf7f4dde69bc46e6388aaca4e253b",()=>v.startFeature,"40c110278a6dafd68e39d4faed5ce2708f70d99c9f",()=>e.deployFeature,"40f5eb01d9463e3758054dbb2725806be1dede4b86",()=>y.addRepository,"40f622d1738431868f87b48dc758215933c96ac234",()=>j.openShell,"40fd06485a22d154cff6b3af4d4ea2a19b623ffeea",()=>k.openFolder,"60c1e233607b6de6f3571bf9fdda35f44bed277b6d",()=>r.updateAgentAndModel,"7887efc615f5da77cb1d9fd6f40d9d14822839f36e",()=>t.deleteFeature],45831)}];
3
-
4
- //# sourceMappingURL=_b71645b4._.js.map
@@ -1 +0,0 @@
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/app/actions/list-github-repositories.ts","../../../../../../../packages/core/src/application/ports/output/services/github-repository-service.interface.ts","../../../../../../../src/presentation/web/app/actions/import-github-repository.ts","../../../../../../../src/presentation/web/app/actions/deploy-feature.ts","../../../../../../../packages/core/src/infrastructure/services/deployment/deployment-logger.ts","../../../../../../../src/presentation/web/lib/is-same-shep-instance.ts","../../../../../../../src/presentation/web/app/actions/deploy-repository.ts","../../../../../../../src/presentation/web/app/actions/stop-deployment.ts","../../../../../../../src/presentation/web/app/actions/get-deployment-status.ts","../../../../../../../src/presentation/web/app/actions/get-deployment-logs.ts","../../../../../../../src/presentation/web/app/actions/get-all-agent-models.ts","../../../../../../../src/presentation/web/lib/model-metadata.ts","../../../../../../../src/presentation/web/app/actions/update-agent-and-model.ts","../../../../../../../src/presentation/web/.next-internal/server/app/%28dashboard%29/%40drawer/adopt/page/actions.js%20%28server%20actions%20loader%29","../../../../../../../src/presentation/web/app/actions/adopt-branch.ts","../../../../../../../src/presentation/web/app/actions/list-branches.ts"],"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","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { ListGitHubRepositoriesUseCase } from '@shepai/core/application/use-cases/repositories/list-github-repositories.use-case';\nimport type { GitHubRepo } from '@shepai/core/application/ports/output/services/github-repository-service.interface';\nimport { GitHubAuthError } from '@shepai/core/application/ports/output/services/github-repository-service.interface';\n\ninterface ListGitHubRepositoriesInput {\n search?: string;\n limit?: number;\n}\n\nexport async function listGitHubRepositories(\n input?: ListGitHubRepositoriesInput\n): Promise<{ repos?: GitHubRepo[]; error?: string }> {\n try {\n const useCase = resolve<ListGitHubRepositoriesUseCase>('ListGitHubRepositoriesUseCase');\n const repos = await useCase.execute(input);\n return { repos };\n } catch (error: unknown) {\n if (error instanceof GitHubAuthError) {\n return { error: 'GitHub CLI is not authenticated. Run `gh auth login` to sign in.' };\n }\n const message = error instanceof Error ? error.message : 'Failed to list repositories';\n return { error: message };\n }\n}\n","/**\n * GitHub Repository Service Interface\n *\n * Output port for GitHub repository operations via the gh CLI.\n * Implementations manage authentication checks, repository cloning,\n * user repository listing, and GitHub URL parsing.\n */\n\n// ---------------------------------------------------------------------------\n// Error classes\n// ---------------------------------------------------------------------------\n\n/**\n * Thrown when the GitHub CLI is not authenticated.\n */\nexport class GitHubAuthError extends Error {\n constructor(message: string, cause?: Error) {\n super(message);\n this.name = 'GitHubAuthError';\n Object.setPrototypeOf(this, new.target.prototype);\n if (cause) this.cause = cause;\n }\n}\n\n/**\n * Thrown when a `gh repo clone` operation fails.\n */\nexport class GitHubCloneError extends Error {\n constructor(message: string, cause?: Error) {\n super(message);\n this.name = 'GitHubCloneError';\n Object.setPrototypeOf(this, new.target.prototype);\n if (cause) this.cause = cause;\n }\n}\n\n/**\n * Thrown when a GitHub URL cannot be parsed into owner/repo.\n */\nexport class GitHubUrlParseError extends Error {\n constructor(message: string, cause?: Error) {\n super(message);\n this.name = 'GitHubUrlParseError';\n Object.setPrototypeOf(this, new.target.prototype);\n if (cause) this.cause = cause;\n }\n}\n\n/**\n * Thrown when listing the user's GitHub repositories fails.\n */\nexport class GitHubRepoListError extends Error {\n constructor(message: string, cause?: Error) {\n super(message);\n this.name = 'GitHubRepoListError';\n Object.setPrototypeOf(this, new.target.prototype);\n if (cause) this.cause = cause;\n }\n}\n\n/**\n * Thrown when a `gh repo fork` operation fails.\n */\nexport class GitHubForkError extends Error {\n constructor(message: string, cause?: Error) {\n super(message);\n this.name = 'GitHubForkError';\n Object.setPrototypeOf(this, new.target.prototype);\n if (cause) this.cause = cause;\n }\n}\n\n/**\n * Thrown when checking the viewer's permission on a repository fails.\n */\nexport class GitHubPermissionError extends Error {\n constructor(message: string, cause?: Error) {\n super(message);\n this.name = 'GitHubPermissionError';\n Object.setPrototypeOf(this, new.target.prototype);\n if (cause) this.cause = cause;\n }\n}\n\n// ---------------------------------------------------------------------------\n// Types\n// ---------------------------------------------------------------------------\n\n/**\n * A GitHub repository as returned by `gh repo list --json`.\n */\nexport interface GitHubRepo {\n /** Repository name (e.g. \"my-project\") */\n name: string;\n /** Full owner/repo identifier (e.g. \"octocat/my-project\") */\n nameWithOwner: string;\n /** Repository description (may be empty string) */\n description: string;\n /** Whether the repository is private */\n isPrivate: boolean;\n /** ISO 8601 timestamp of the most recent push */\n pushedAt: string;\n}\n\n/**\n * Options for listing user repositories.\n */\nexport interface ListUserRepositoriesOptions {\n /** Maximum number of repos to return (default: 30) */\n limit?: number;\n /** Filter repos by name substring */\n search?: string;\n}\n\n/**\n * Options for cloning a repository.\n */\nexport interface CloneOptions {\n /** Callback invoked with stderr chunks during clone for progress display */\n onProgress?: (data: string) => void;\n}\n\n/**\n * Result of forking a GitHub repository.\n */\nexport interface ForkResult {\n /** Full owner/repo identifier of the fork (e.g. \"username/cli\") */\n nameWithOwner: string;\n /** Clone URL for the fork (e.g. \"https://github.com/username/cli.git\") */\n cloneUrl: string;\n}\n\n/**\n * Result of parsing a GitHub URL.\n */\nexport interface ParsedGitHubUrl {\n /** Repository owner (e.g. \"octocat\") */\n owner: string;\n /** Repository name (e.g. \"my-project\") */\n repo: string;\n /** Combined owner/repo (e.g. \"octocat/my-project\") */\n nameWithOwner: string;\n}\n\n// ---------------------------------------------------------------------------\n// Service interface\n// ---------------------------------------------------------------------------\n\n/**\n * Output port for GitHub repository operations.\n *\n * Implementations use the `gh` CLI for all GitHub interactions.\n */\nexport interface IGitHubRepositoryService {\n /**\n * Verify that the GitHub CLI is authenticated.\n *\n * @throws {GitHubAuthError} if `gh auth status` indicates the user is not logged in\n */\n checkAuth(): Promise<void>;\n\n /**\n * Clone a GitHub repository to a local destination directory.\n *\n * @param nameWithOwner - Full owner/repo identifier (e.g. \"octocat/my-project\")\n * @param destination - Absolute path to clone into\n * @param options - Optional clone configuration (e.g. progress callback)\n * @throws {GitHubCloneError} if the clone subprocess fails\n */\n cloneRepository(\n nameWithOwner: string,\n destination: string,\n options?: CloneOptions\n ): Promise<void>;\n\n /**\n * List the authenticated user's GitHub repositories.\n *\n * @param options - Optional filtering and pagination\n * @returns Array of GitHub repositories sorted by most recently pushed\n * @throws {GitHubRepoListError} if the list operation fails\n */\n listUserRepositories(options?: ListUserRepositoriesOptions): Promise<GitHubRepo[]>;\n\n /**\n * Parse a GitHub URL or shorthand into its owner/repo components.\n *\n * Supported formats:\n * - `https://github.com/owner/repo`\n * - `https://github.com/owner/repo.git`\n * - `git@github.com:owner/repo.git`\n * - `owner/repo` (shorthand)\n *\n * @param url - The GitHub URL or shorthand to parse\n * @returns Parsed owner, repo, and nameWithOwner\n * @throws {GitHubUrlParseError} if the URL does not match any supported format\n */\n parseGitHubUrl(url: string): ParsedGitHubUrl;\n\n /**\n * Check whether the authenticated user has push access to a repository.\n *\n * Uses `gh api repos/{owner}/{repo} --jq '.permissions.push'` to detect\n * access level. Returns false as the safe fallback on any error (network,\n * rate limit, API change) per NFR-9.\n *\n * @param repoNameWithOwner - Full owner/repo identifier (e.g. \"shep-ai/cli\")\n * @returns True if the user has push access, false otherwise (including on errors)\n */\n checkPushAccess(repoNameWithOwner: string): Promise<boolean>;\n\n /**\n * Fork a GitHub repository into the authenticated user's account.\n *\n * Uses `gh repo fork` which is idempotent — if the user already has a fork,\n * it detects the existing fork and returns it rather than failing.\n *\n * @param repoNameWithOwner - Full owner/repo identifier (e.g. \"shep-ai/cli\")\n * @returns The fork's nameWithOwner and clone URL\n * @throws {GitHubForkError} if the fork operation fails\n */\n forkRepository(repoNameWithOwner: string): Promise<ForkResult>;\n\n /**\n * Get the authenticated user's permission level on a GitHub repository.\n *\n * Uses `gh repo view --json viewerPermission` with the given repo path\n * as the working directory.\n *\n * @param repoPath - Absolute path to a local clone of the repository\n * @returns The viewer's permission level: \"ADMIN\", \"MAINTAIN\", \"WRITE\", \"TRIAGE\", or \"READ\"\n * @throws {GitHubPermissionError} if the permission check fails (e.g. gh not installed, not authenticated)\n */\n getViewerPermission(repoPath: string): Promise<string>;\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { ImportGitHubRepositoryUseCase } from '@shepai/core/application/use-cases/repositories/import-github-repository.use-case';\nimport type { Repository } from '@shepai/core/domain/generated/output';\nimport {\n GitHubAuthError,\n GitHubUrlParseError,\n GitHubCloneError,\n} from '@shepai/core/application/ports/output/services/github-repository-service.interface';\n\ninterface ImportGitHubRepositoryInput {\n url: string;\n dest?: string;\n}\n\nexport async function importGitHubRepository(\n input: ImportGitHubRepositoryInput\n): Promise<{ repository?: Repository; error?: string }> {\n const { url, dest } = input;\n\n if (!url?.trim()) {\n return { error: 'GitHub URL is required' };\n }\n\n try {\n const useCase = resolve<ImportGitHubRepositoryUseCase>('ImportGitHubRepositoryUseCase');\n const repository = await useCase.execute({ url, dest });\n return { repository };\n } catch (error: unknown) {\n if (error instanceof GitHubAuthError) {\n return { error: 'GitHub CLI is not authenticated. Run `gh auth login` to sign in.' };\n }\n if (error instanceof GitHubUrlParseError) {\n return { error: `Invalid GitHub URL: ${error.message}` };\n }\n if (error instanceof GitHubCloneError) {\n return { error: `Clone failed: ${error.message}` };\n }\n const message = error instanceof Error ? error.message : 'Failed to import repository';\n return { error: message };\n }\n}\n","'use server';\n\nimport { existsSync } from 'node:fs';\nimport { resolve } from '@/lib/server-container';\nimport { createDeploymentLogger } from '@shepai/core/infrastructure/services/deployment/deployment-logger';\nimport { computeWorktreePath } from '@shepai/core/infrastructure/services/ide-launchers/compute-worktree-path';\nimport type { IFeatureRepository } from '@shepai/core/application/ports/output/repositories/feature-repository.interface';\nimport type { IDeploymentService } from '@shepai/core/application/ports/output/services/deployment-service.interface';\nimport { DeploymentState } from '@shepai/core/domain/generated/output';\nimport { isSameShepInstance } from '@/lib/is-same-shep-instance';\n\nconst log = createDeploymentLogger('[deployFeature]');\n\nexport async function deployFeature(\n featureId: string\n): Promise<{ success: boolean; error?: string; state?: DeploymentState }> {\n log.info(`called — featureId=\"${featureId}\"`);\n\n if (!featureId?.trim()) {\n log.warn('rejected — featureId is empty');\n return { success: false, error: 'featureId is required' };\n }\n\n try {\n const featureRepo = resolve<IFeatureRepository>('IFeatureRepository');\n const feature = await featureRepo.findById(featureId);\n\n if (!feature) {\n log.warn(`feature not found in repository: \"${featureId}\"`);\n return { success: false, error: `Feature not found: ${featureId}` };\n }\n\n log.info(\n `feature found — repositoryPath=\"${feature.repositoryPath}\", branch=\"${feature.branch}\"`\n );\n\n const worktreePath = computeWorktreePath(feature.repositoryPath, feature.branch);\n log.info(`computed worktreePath=\"${worktreePath}\"`);\n\n if (!existsSync(worktreePath)) {\n log.warn(`worktree path does not exist on disk: \"${worktreePath}\"`);\n return { success: false, error: `Worktree path does not exist: ${worktreePath}` };\n }\n\n if (isSameShepInstance(feature.repositoryPath)) {\n log.warn('rejected — feature belongs to the running shep instance');\n return {\n success: false,\n error: 'Cannot start a dev server for features of the repository Shep is running from',\n };\n }\n\n log.info('worktree path exists, calling deploymentService.start()');\n const deploymentService = resolve<IDeploymentService>('IDeploymentService');\n deploymentService.start(featureId, worktreePath, 'feature');\n\n log.info('start() returned successfully — state=Booting');\n return { success: true, state: DeploymentState.Booting };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to deploy feature';\n log.error(`error: ${message}`, error);\n return { success: false, error: message };\n }\n}\n","/* eslint-disable no-console */\n\n/**\n * Debug-gated logger for deployment services.\n *\n * - `info` and `debug` only emit when `process.env.DEBUG` is set.\n * - `warn` and `error` always emit (they indicate real problems).\n */\n\nconst noop = () => undefined;\n\nexport function createDeploymentLogger(prefix: string) {\n const isDebug = !!process.env.DEBUG;\n\n return {\n info: isDebug ? (...args: unknown[]) => console.info(prefix, ...args) : noop,\n debug: isDebug ? (...args: unknown[]) => console.debug(prefix, ...args) : noop,\n warn: (...args: unknown[]) => console.warn(prefix, ...args),\n error: (...args: unknown[]) => console.error(prefix, ...args),\n };\n}\n","import { realpathSync } from 'node:fs';\nimport { resolve } from 'node:path';\n\n/**\n * Check if a target path is the same directory (or a worktree of) the\n * currently running shep instance. Starting a dev server there would spawn\n * another shep instance that conflicts with the shared ~/.shep/data DB.\n */\nexport function isSameShepInstance(targetPath: string): boolean {\n const instancePath = process.env.NEXT_PUBLIC_SHEP_INSTANCE_PATH ?? process.cwd();\n\n try {\n const normalizedTarget = realpathSync(resolve(targetPath)).replace(/\\\\/g, '/');\n const normalizedInstance = realpathSync(resolve(instancePath)).replace(/\\\\/g, '/');\n return normalizedTarget === normalizedInstance;\n } catch {\n return false;\n }\n}\n","'use server';\n\nimport { existsSync } from 'node:fs';\nimport { isAbsolute } from 'node:path';\nimport { resolve } from '@/lib/server-container';\nimport { createDeploymentLogger } from '@shepai/core/infrastructure/services/deployment/deployment-logger';\nimport type { IDeploymentService } from '@shepai/core/application/ports/output/services/deployment-service.interface';\nimport { DeploymentState } from '@shepai/core/domain/generated/output';\nimport { isSameShepInstance } from '@/lib/is-same-shep-instance';\n\nconst log = createDeploymentLogger('[deployRepository]');\n\nexport async function deployRepository(\n repositoryPath: string\n): Promise<{ success: boolean; error?: string; state?: DeploymentState }> {\n log.info(`called — repositoryPath=\"${repositoryPath}\"`);\n\n if (!repositoryPath || !isAbsolute(repositoryPath)) {\n log.warn('rejected — not an absolute path');\n return { success: false, error: 'repositoryPath must be an absolute path' };\n }\n\n try {\n if (!existsSync(repositoryPath)) {\n log.warn(`directory does not exist: \"${repositoryPath}\"`);\n return { success: false, error: `Directory does not exist: ${repositoryPath}` };\n }\n\n if (isSameShepInstance(repositoryPath)) {\n log.warn('rejected — target is the running shep instance');\n return {\n success: false,\n error: 'Cannot start a dev server for the repository Shep is running from',\n };\n }\n\n log.info('directory exists, calling deploymentService.start()');\n const deploymentService = resolve<IDeploymentService>('IDeploymentService');\n deploymentService.start(repositoryPath, repositoryPath, 'repository');\n\n log.info('start() returned successfully — state=Booting');\n return { success: true, state: DeploymentState.Booting };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to deploy repository';\n log.error(`error: ${message}`, error);\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { IDeploymentService } from '@shepai/core/application/ports/output/services/deployment-service.interface';\n\nexport async function stopDeployment(\n targetId: string\n): Promise<{ success: boolean; error?: string }> {\n if (!targetId?.trim()) {\n return { success: false, error: 'targetId is required' };\n }\n\n try {\n const deploymentService = resolve<IDeploymentService>('IDeploymentService');\n await deploymentService.stop(targetId);\n\n return { success: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to stop deployment';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type {\n IDeploymentService,\n DeploymentStatus,\n} from '@shepai/core/application/ports/output/services/deployment-service.interface';\n\nexport async function getDeploymentStatus(targetId: string): Promise<DeploymentStatus | null> {\n if (!targetId?.trim()) {\n return null;\n }\n\n const deploymentService = resolve<IDeploymentService>('IDeploymentService');\n return deploymentService.getStatus(targetId);\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type {\n IDeploymentService,\n LogEntry,\n} from '@shepai/core/application/ports/output/services/deployment-service.interface';\n\nexport async function getDeploymentLogs(targetId: string): Promise<LogEntry[] | null> {\n if (!targetId?.trim()) {\n return null;\n }\n\n const deploymentService = resolve<IDeploymentService>('IDeploymentService');\n return deploymentService.getLogs(targetId);\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport { getModelMeta } from '@/lib/model-metadata';\nimport type { IAgentExecutorFactory } from '@shepai/core/application/ports/output/agents/agent-executor-factory.interface';\n\nexport interface ModelInfo {\n id: string;\n displayName: string;\n description: string;\n}\n\nexport interface AgentModelGroup {\n agentType: string;\n label: string;\n models: ModelInfo[];\n}\n\nconst AGENT_LABELS: Record<string, string> = {\n 'claude-code': 'Claude Code',\n cursor: 'Cursor CLI',\n 'gemini-cli': 'Gemini CLI',\n dev: 'Demo',\n};\n\n/** Sort weight — higher = further down. Demo always last. */\nconst AGENT_ORDER: Record<string, number> = {\n 'claude-code': 0,\n cursor: 1,\n 'gemini-cli': 2,\n dev: 99,\n};\n\nexport async function getAllAgentModels(): Promise<AgentModelGroup[]> {\n try {\n const factory = resolve<IAgentExecutorFactory>('IAgentExecutorFactory');\n const agents = factory.getSupportedAgents();\n return agents\n .map((agentType) => ({\n agentType: agentType as string,\n label: AGENT_LABELS[agentType as string] ?? (agentType as string),\n models: factory.getSupportedModels(agentType).map((id) => ({\n id,\n ...getModelMeta(id),\n })),\n }))\n .map((g) => {\n // Dev agent gets fun demo models\n if (g.agentType === 'dev' && g.models.length === 0) {\n return {\n ...g,\n models: [\n { id: 'gpt-8', ...getModelMeta('gpt-8') },\n { id: 'opus-7', ...getModelMeta('opus-7') },\n ],\n };\n }\n return g;\n })\n .filter((g) => g.models.length > 0)\n .sort((a, b) => (AGENT_ORDER[a.agentType] ?? 50) - (AGENT_ORDER[b.agentType] ?? 50));\n } catch {\n return [];\n }\n}\n","export interface ModelMeta {\n displayName: string;\n description: string;\n}\n\n/**\n * Presentation-layer metadata for known LLM model identifiers.\n * Maps raw model IDs to human-friendly display names and short descriptions.\n */\nconst MODEL_METADATA: Record<string, ModelMeta> = {\n // Claude models\n 'claude-opus-4-6': { displayName: 'Opus 4.6', description: 'Most capable, complex tasks' },\n 'claude-sonnet-4-6': { displayName: 'Sonnet 4.6', description: 'Fast & balanced' },\n 'claude-haiku-4-5': { displayName: 'Haiku 4.5', description: 'Lightweight & quick' },\n\n // Gemini models\n 'gemini-3.1-pro': { displayName: 'Gemini 3.1 Pro', description: 'Advanced reasoning' },\n 'gemini-3-flash': { displayName: 'Gemini 3 Flash', description: 'Ultra-fast responses' },\n 'gemini-2.5-pro': { displayName: 'Gemini 2.5 Pro', description: 'Reliable workhorse' },\n 'gemini-2.5-flash': { displayName: 'Gemini 2.5 Flash', description: 'Speed-optimized' },\n\n // OpenAI models\n 'gpt-5.4-high': { displayName: 'GPT-5.4', description: 'Latest reasoning model' },\n 'gpt-5.2': { displayName: 'GPT-5.2', description: 'Flagship model' },\n 'gpt-5.3-codex': { displayName: 'GPT-5.3 Codex', description: 'Code specialist' },\n\n // Other\n 'composer-1.5': { displayName: 'Composer 1.5', description: 'Multi-file editing' },\n 'grok-code': { displayName: 'Grok Code', description: 'xAI code model' },\n\n // Demo / fun models\n 'gpt-8': { displayName: 'GPT-8', description: 'Writes code before you think it' },\n 'opus-7': { displayName: 'Opus 7', description: 'Achieved consciousness, ships on time' },\n};\n\nconst FALLBACK: ModelMeta = { displayName: '', description: '' };\n\nexport function getModelMeta(modelId: string): ModelMeta {\n const meta = MODEL_METADATA[modelId];\n if (meta) return meta;\n // Fallback: prettify the raw ID\n return {\n ...FALLBACK,\n displayName: modelId\n .replace(/^claude-/, '')\n .replace(/^gemini-/, 'Gemini ')\n .replace(/^gpt-/, 'GPT-')\n .replace(/-/g, ' ')\n .replace(/\\b\\w/g, (c) => c.toUpperCase()),\n };\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport {\n resetSettings,\n initializeSettings,\n} from '@shepai/core/infrastructure/services/settings.service';\nimport type { CompleteWebOnboardingUseCase } from '@shepai/core/application/use-cases/settings/complete-web-onboarding.use-case';\nimport type { AgentType } from '@shepai/core/domain/generated/output';\n\nexport async function updateAgentAndModel(\n agentType: string,\n model: string | null\n): Promise<{ ok: boolean; error?: string }> {\n if (!agentType.trim()) {\n return { ok: false, error: 'agent type is required' };\n }\n\n try {\n const useCase = resolve<CompleteWebOnboardingUseCase>('CompleteWebOnboardingUseCase');\n const updatedSettings = await useCase.execute({\n agentType: agentType.trim() as AgentType,\n model,\n });\n\n resetSettings();\n initializeSettings(updatedSettings);\n\n return { ok: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to update agent and model';\n return { ok: false, error: message };\n }\n}\n","export {pickFolder as '00e1e11607e431aa191317334111361bf74393293f'} from 'ACTIONS_MODULE0'\nexport {listGitHubRepositories as '406966ff91ed6f944406b9e8525f284de5251b8f93'} from 'ACTIONS_MODULE1'\nexport {importGitHubRepository as '40444a70d6bff5103d338b37bc3de531acd194b8b8'} from 'ACTIONS_MODULE2'\nexport {deployFeature as '40c110278a6dafd68e39d4faed5ce2708f70d99c9f'} from 'ACTIONS_MODULE3'\nexport {deployRepository as '40b005877070262dafedcd7c6763f659a5e677f734'} from 'ACTIONS_MODULE4'\nexport {stopDeployment as '40109cdf9c82787ed0fb5a65801603020610bc3ff0'} from 'ACTIONS_MODULE5'\nexport {getDeploymentStatus as '402dafaac7348ffb5e5a02863bc22ac161792e2d58'} from 'ACTIONS_MODULE6'\nexport {openIde as '409e55273c71b48b411b0d98ca453099fdf01741b5'} from 'ACTIONS_MODULE7'\nexport {openShell as '40f622d1738431868f87b48dc758215933c96ac234'} from 'ACTIONS_MODULE8'\nexport {openFolder as '40fd06485a22d154cff6b3af4d4ea2a19b623ffeea'} from 'ACTIONS_MODULE9'\nexport {syncRepository as '40659e08581e83adc2099f839b88fea47d7cfd0cc4'} from 'ACTIONS_MODULE10'\nexport {getDeploymentLogs as '4061c0b3814d0f2a2ae9a1f773582aedbaf9a2101f'} from 'ACTIONS_MODULE11'\nexport {isAgentSetupComplete as '0065cca102b484937834ac7ea2c198740ae52d9b06'} from 'ACTIONS_MODULE12'\nexport {checkAgentAuth as '00db26aa1c5e8bacb7d83ac9f634d6f51010422496'} from 'ACTIONS_MODULE13'\nexport {checkToolStatus as '005858d4eb4e26bf1240140e9ded5fe9c185c1d686'} from 'ACTIONS_MODULE14'\nexport {getAllAgentModels as '000b4cf5d08025fc20b6ef326899c5083c44d6200e'} from 'ACTIONS_MODULE15'\nexport {updateAgentAndModel as '60c1e233607b6de6f3571bf9fdda35f44bed277b6d'} from 'ACTIONS_MODULE16'\nexport {archiveFeature as '4083c03126d1792988adf1c1f1287f3560fbea27ae'} from 'ACTIONS_MODULE17'\nexport {deleteFeature as '7887efc615f5da77cb1d9fd6f40d9d14822839f36e'} from 'ACTIONS_MODULE18'\nexport {resumeFeature as '40065b4f5ac6a0463624e6ffd40a6a3ddb96ce28d7'} from 'ACTIONS_MODULE19'\nexport {startFeature as '40c109a0ffa12cf7f4dde69bc46e6388aaca4e253b'} from 'ACTIONS_MODULE20'\nexport {stopFeature as '40587a1d8af78900a89eb87ea8de856805d50e4c2d'} from 'ACTIONS_MODULE21'\nexport {unarchiveFeature as '403b1f7ef9109cc8e6e9d44e4eed492752aaae5838'} from 'ACTIONS_MODULE22'\nexport {addRepository as '40f5eb01d9463e3758054dbb2725806be1dede4b86'} from 'ACTIONS_MODULE23'\nexport {deleteRepository as '40b8b91fbf1f6b5428a8b688ae8428e2e1307ebcd8'} from 'ACTIONS_MODULE24'\nexport {getFeatureMetadata as '408ec5d7997d9f40a931f404d47925b673cf8e00b6'} from 'ACTIONS_MODULE25'\nexport {adoptBranch as '4091c777ba7c69ad7485c396a972a217b424b95186'} from 'ACTIONS_MODULE26'\nexport {listBranches as '40342b519a64916aa57f19b65cf1f51eb151375529'} from 'ACTIONS_MODULE27'\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { AdoptBranchUseCase } from '@shepai/core/application/use-cases/features/adopt-branch.use-case';\nimport type { Feature } from '@shepai/core/domain/generated/output';\n\ninterface AdoptBranchInput {\n branchName: string;\n repositoryPath: string;\n}\n\nexport async function adoptBranch(\n input: AdoptBranchInput\n): Promise<{ feature?: Feature; error?: string }> {\n const { branchName, repositoryPath } = input;\n\n if (!branchName?.trim()) {\n return { error: 'Branch name is required' };\n }\n if (!repositoryPath?.trim()) {\n return { error: 'Repository path is required' };\n }\n\n try {\n const useCase = resolve<AdoptBranchUseCase>('AdoptBranchUseCase');\n const result = await useCase.execute({ branchName, repositoryPath });\n return { feature: result.feature };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to adopt branch';\n return { error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { IWorktreeService } from '@shepai/core/application/ports/output/services/worktree-service.interface';\n\n/**\n * Server action that returns all branch names (local + remote) for a repository.\n * Used by the adopt branch drawer to populate the branch combobox.\n */\nexport async function listBranches(repositoryPath: string): Promise<string[]> {\n if (!repositoryPath?.trim()) {\n return [];\n }\n\n try {\n const worktreeService = resolve<IWorktreeService>('IWorktreeService');\n return await worktreeService.listBranches(repositoryPath);\n } catch {\n return [];\n }\n}\n"],"names":["registerServerReference","ensureServerEntryExports","actions","i","length","action","Error"],"mappings":"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","ignoreList":[0,1]}