@shepai/cli 1.170.0-pr513.cff27cb → 1.170.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (413) hide show
  1. package/apis/json-schema/Feature.yaml +5 -17
  2. package/apis/json-schema/SdlcLifecycle.yaml +0 -1
  3. package/apis/json-schema/WorkflowConfig.yaml +5 -10
  4. package/dist/packages/core/src/application/ports/output/agents/feature-agent-process.interface.d.ts +2 -2
  5. package/dist/packages/core/src/application/ports/output/agents/feature-agent-process.interface.d.ts.map +1 -1
  6. package/dist/packages/core/src/application/ports/output/services/spec-initializer.interface.d.ts +3 -4
  7. package/dist/packages/core/src/application/ports/output/services/spec-initializer.interface.d.ts.map +1 -1
  8. package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.js +2 -2
  9. package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.js +2 -2
  10. package/dist/packages/core/src/application/use-cases/features/adopt-branch.use-case.d.ts.map +1 -1
  11. package/dist/packages/core/src/application/use-cases/features/adopt-branch.use-case.js +2 -3
  12. package/dist/packages/core/src/application/use-cases/features/check-and-unblock-features.use-case.js +2 -2
  13. package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.d.ts.map +1 -1
  14. package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.js +7 -18
  15. package/dist/packages/core/src/application/use-cases/features/create/types.d.ts +2 -3
  16. package/dist/packages/core/src/application/use-cases/features/create/types.d.ts.map +1 -1
  17. package/dist/packages/core/src/application/use-cases/features/delete-feature.use-case.d.ts.map +1 -1
  18. package/dist/packages/core/src/application/use-cases/features/delete-feature.use-case.js +0 -13
  19. package/dist/packages/core/src/application/use-cases/features/resume-feature.use-case.js +2 -2
  20. package/dist/packages/core/src/application/use-cases/features/start-feature.use-case.d.ts.map +1 -1
  21. package/dist/packages/core/src/application/use-cases/features/start-feature.use-case.js +3 -5
  22. package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
  23. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +1 -2
  24. package/dist/packages/core/src/domain/generated/output.d.ts +4 -22
  25. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  26. package/dist/packages/core/src/domain/generated/output.js +0 -7
  27. package/dist/packages/core/src/domain/lifecycle-gates.d.ts +6 -21
  28. package/dist/packages/core/src/domain/lifecycle-gates.d.ts.map +1 -1
  29. package/dist/packages/core/src/domain/lifecycle-gates.js +6 -25
  30. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  31. package/dist/packages/core/src/infrastructure/di/container.js +0 -5
  32. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.d.ts +1 -3
  33. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.d.ts.map +1 -1
  34. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.js +4 -10
  35. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +1 -2
  36. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  37. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +2 -7
  38. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.d.ts.map +1 -1
  39. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.js +3 -5
  40. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +3 -3
  41. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts +0 -20
  42. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts.map +1 -1
  43. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts +0 -68
  44. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts.map +1 -1
  45. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.d.ts +2 -2
  46. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.d.ts.map +1 -1
  47. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.js +3 -3
  48. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts +2 -2
  49. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts.map +1 -1
  50. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.js +8 -19
  51. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/lifecycle-context.d.ts.map +1 -1
  52. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/lifecycle-context.js +0 -1
  53. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.d.ts.map +1 -1
  54. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.js +0 -1
  55. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts +0 -4
  56. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts.map +1 -1
  57. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.js +0 -17
  58. package/dist/packages/core/src/infrastructure/services/spec/spec-initializer.service.d.ts +1 -1
  59. package/dist/packages/core/src/infrastructure/services/spec/spec-initializer.service.d.ts.map +1 -1
  60. package/dist/packages/core/src/infrastructure/services/spec/spec-initializer.service.js +4 -7
  61. package/dist/src/presentation/cli/commands/feat/index.d.ts.map +1 -1
  62. package/dist/src/presentation/cli/commands/feat/index.js +1 -5
  63. package/dist/src/presentation/cli/commands/feat/new.command.d.ts.map +1 -1
  64. package/dist/src/presentation/cli/commands/feat/new.command.js +5 -18
  65. package/dist/src/presentation/web/app/actions/create-feature.d.ts +2 -3
  66. package/dist/src/presentation/web/app/actions/create-feature.d.ts.map +1 -1
  67. package/dist/src/presentation/web/app/actions/create-feature.js +3 -3
  68. package/dist/src/presentation/web/app/actions/get-workflow-defaults.d.ts +1 -2
  69. package/dist/src/presentation/web/app/actions/get-workflow-defaults.d.ts.map +1 -1
  70. package/dist/src/presentation/web/app/actions/get-workflow-defaults.js +1 -2
  71. package/dist/src/presentation/web/app/api/agent-events/route.d.ts.map +1 -1
  72. package/dist/src/presentation/web/app/api/agent-events/route.js +0 -1
  73. package/dist/src/presentation/web/app/build-feature-node-data.d.ts.map +1 -1
  74. package/dist/src/presentation/web/app/build-feature-node-data.js +2 -4
  75. package/dist/src/presentation/web/app/build-graph-nodes.js +2 -4
  76. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.d.ts +1 -1
  77. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.d.ts.map +1 -1
  78. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.js +0 -3
  79. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts.map +1 -1
  80. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.js +1 -65
  81. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts +2 -3
  82. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -1
  83. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +11 -15
  84. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.d.ts.map +1 -1
  85. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.js +1 -2
  86. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts +1 -6
  87. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts.map +1 -1
  88. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.js +4 -16
  89. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.d.ts.map +1 -1
  90. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.js +0 -2
  91. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts +2 -6
  92. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts.map +1 -1
  93. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.js +0 -12
  94. package/dist/src/presentation/web/components/common/feature-node/feature-node.d.ts.map +1 -1
  95. package/dist/src/presentation/web/components/common/feature-node/feature-node.js +2 -7
  96. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  97. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +6 -6
  98. package/dist/src/presentation/web/components/features/settings/workflow-settings-section.stories.js +3 -3
  99. package/dist/translations/ar/cli.json +0 -24
  100. package/dist/translations/ar/web.json +2 -6
  101. package/dist/translations/de/cli.json +0 -24
  102. package/dist/translations/de/web.json +2 -6
  103. package/dist/translations/en/cli.json +0 -24
  104. package/dist/translations/en/web.json +2 -6
  105. package/dist/translations/es/cli.json +0 -24
  106. package/dist/translations/es/web.json +2 -6
  107. package/dist/translations/fr/cli.json +0 -24
  108. package/dist/translations/fr/web.json +2 -6
  109. package/dist/translations/he/cli.json +0 -24
  110. package/dist/translations/he/web.json +2 -6
  111. package/dist/translations/pt/cli.json +0 -24
  112. package/dist/translations/pt/web.json +2 -6
  113. package/dist/translations/ru/cli.json +0 -24
  114. package/dist/translations/ru/web.json +2 -6
  115. package/dist/tsconfig.build.tsbuildinfo +1 -1
  116. package/package.json +1 -1
  117. package/web/.next/BUILD_ID +1 -1
  118. package/web/.next/build-manifest.json +2 -2
  119. package/web/.next/fallback-build-manifest.json +2 -2
  120. package/web/.next/prerender-manifest.json +3 -3
  121. package/web/.next/required-server-files.js +3 -3
  122. package/web/.next/required-server-files.json +3 -3
  123. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +29 -29
  124. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  125. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  126. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +27 -27
  127. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  128. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  129. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +30 -30
  130. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  131. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  132. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +76 -121
  133. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +1 -2
  134. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  135. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  136. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +76 -121
  137. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +1 -2
  138. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  139. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  140. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  141. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  142. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  143. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  144. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  145. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  146. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +27 -27
  147. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  148. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  149. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +30 -30
  150. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  151. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  152. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +76 -121
  153. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +1 -2
  154. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  155. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  156. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +76 -121
  157. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +1 -2
  158. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  159. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  160. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +27 -27
  161. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  162. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  163. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  164. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  165. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  166. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  167. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  168. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  169. package/web/.next/server/app/_global-error.html +2 -2
  170. package/web/.next/server/app/_global-error.rsc +1 -1
  171. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  172. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  173. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  174. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  175. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  176. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +6 -6
  177. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  178. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  179. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  180. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  181. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  182. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -1
  183. package/web/.next/server/app/features/page/server-reference-manifest.json +6 -6
  184. package/web/.next/server/app/features/page.js.nft.json +1 -1
  185. package/web/.next/server/app/features/page_client-reference-manifest.js +1 -1
  186. package/web/.next/server/app/settings/page/server-reference-manifest.json +9 -9
  187. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  188. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  189. package/web/.next/server/app/skills/page/server-reference-manifest.json +13 -13
  190. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  191. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  192. package/web/.next/server/app/tools/page/server-reference-manifest.json +11 -11
  193. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  194. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  195. package/web/.next/server/app/version/page/server-reference-manifest.json +6 -6
  196. package/web/.next/server/app/version/page.js.nft.json +1 -1
  197. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  198. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js +1 -1
  199. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js.map +1 -1
  200. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js +1 -1
  201. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js.map +1 -1
  202. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  203. package/web/.next/server/chunks/[root-of-the-server]__c78383b1._.js +1 -1
  204. package/web/.next/server/chunks/[root-of-the-server]__c78383b1._.js.map +1 -1
  205. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js +1 -1
  206. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
  207. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  208. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  209. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +3 -3
  210. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
  211. package/web/.next/server/chunks/ssr/[root-of-the-server]__1cd4327c._.js +1 -1
  212. package/web/.next/server/chunks/ssr/[root-of-the-server]__1cd4327c._.js.map +1 -1
  213. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f389e5d._.js +1 -1
  214. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f389e5d._.js.map +1 -1
  215. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  216. package/web/.next/server/chunks/ssr/[root-of-the-server]__4ed9b909._.js +1 -1
  217. package/web/.next/server/chunks/ssr/[root-of-the-server]__4fb81977._.js +4 -0
  218. package/web/.next/server/chunks/ssr/[root-of-the-server]__4fb81977._.js.map +1 -0
  219. package/web/.next/server/chunks/ssr/[root-of-the-server]__684a868c._.js +1 -1
  220. package/web/.next/server/chunks/ssr/[root-of-the-server]__684a868c._.js.map +1 -1
  221. package/web/.next/server/chunks/ssr/[root-of-the-server]__69dd3217._.js +1 -1
  222. package/web/.next/server/chunks/ssr/[root-of-the-server]__69dd3217._.js.map +1 -1
  223. package/web/.next/server/chunks/ssr/[root-of-the-server]__6c7d3936._.js +1 -1
  224. package/web/.next/server/chunks/ssr/[root-of-the-server]__6c7d3936._.js.map +1 -1
  225. package/web/.next/server/chunks/ssr/[root-of-the-server]__7dcd0917._.js +4 -0
  226. package/web/.next/server/chunks/ssr/[root-of-the-server]__7dcd0917._.js.map +1 -0
  227. package/web/.next/server/chunks/ssr/[root-of-the-server]__92ffd5ee._.js +2 -2
  228. package/web/.next/server/chunks/ssr/[root-of-the-server]__92ffd5ee._.js.map +1 -1
  229. package/web/.next/server/chunks/ssr/[root-of-the-server]__b020c17d._.js +2 -2
  230. package/web/.next/server/chunks/ssr/[root-of-the-server]__b020c17d._.js.map +1 -1
  231. package/web/.next/server/chunks/ssr/[root-of-the-server]__b7b96453._.js +1 -1
  232. package/web/.next/server/chunks/ssr/[root-of-the-server]__b7b96453._.js.map +1 -1
  233. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba7f5873._.js +4 -0
  234. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba7f5873._.js.map +1 -0
  235. package/web/.next/server/chunks/ssr/[root-of-the-server]__c1262d08._.js +1 -1
  236. package/web/.next/server/chunks/ssr/[root-of-the-server]__c16bf5de._.js +1 -1
  237. package/web/.next/server/chunks/ssr/[root-of-the-server]__c16bf5de._.js.map +1 -1
  238. package/web/.next/server/chunks/ssr/[root-of-the-server]__c5e09f6f._.js +4 -0
  239. package/web/.next/server/chunks/ssr/[root-of-the-server]__c5e09f6f._.js.map +1 -0
  240. package/web/.next/server/chunks/ssr/[root-of-the-server]__fa525872._.js +3 -0
  241. package/web/.next/server/chunks/ssr/[root-of-the-server]__fa525872._.js.map +1 -0
  242. package/web/.next/server/chunks/ssr/_02e01240._.js +1 -1
  243. package/web/.next/server/chunks/ssr/_02e01240._.js.map +1 -1
  244. package/web/.next/server/chunks/ssr/_05c23ad9._.js +1 -1
  245. package/web/.next/server/chunks/ssr/_05c23ad9._.js.map +1 -1
  246. package/web/.next/server/chunks/ssr/{_0fd635d7._.js → _0d7dd23b._.js} +2 -2
  247. package/web/.next/server/chunks/ssr/_0d7dd23b._.js.map +1 -0
  248. package/web/.next/server/chunks/ssr/_16eb4fec._.js +1 -1
  249. package/web/.next/server/chunks/ssr/_16eb4fec._.js.map +1 -1
  250. package/web/.next/server/chunks/ssr/_18886033._.js +1 -1
  251. package/web/.next/server/chunks/ssr/_18886033._.js.map +1 -1
  252. package/web/.next/server/chunks/ssr/_22e00a14._.js +1 -1
  253. package/web/.next/server/chunks/ssr/_22e00a14._.js.map +1 -1
  254. package/web/.next/server/chunks/ssr/_45496654._.js +1 -1
  255. package/web/.next/server/chunks/ssr/_45496654._.js.map +1 -1
  256. package/web/.next/server/chunks/ssr/_4cbb7f95._.js +1 -1
  257. package/web/.next/server/chunks/ssr/_4cbb7f95._.js.map +1 -1
  258. package/web/.next/server/chunks/ssr/_5119a3df._.js +1 -1
  259. package/web/.next/server/chunks/ssr/_5119a3df._.js.map +1 -1
  260. package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
  261. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
  262. package/web/.next/server/chunks/ssr/{_34d897da._.js → _77ae079a._.js} +2 -2
  263. package/web/.next/server/chunks/ssr/{_34d897da._.js.map → _77ae079a._.js.map} +1 -1
  264. package/web/.next/server/chunks/ssr/_a5a5901d._.js +1 -1
  265. package/web/.next/server/chunks/ssr/_a5a5901d._.js.map +1 -1
  266. package/web/.next/server/chunks/ssr/_a963dd3c._.js +3 -0
  267. package/web/.next/server/chunks/ssr/_a963dd3c._.js.map +1 -0
  268. package/web/.next/server/chunks/ssr/_ad09f271._.js +1 -1
  269. package/web/.next/server/chunks/ssr/_ad09f271._.js.map +1 -1
  270. package/web/.next/server/chunks/ssr/_c3f595c6._.js +1 -1
  271. package/web/.next/server/chunks/ssr/_c3f595c6._.js.map +1 -1
  272. package/web/.next/server/chunks/ssr/{_cac4abe6._.js → _deabc145._.js} +2 -2
  273. package/web/.next/server/chunks/ssr/_deabc145._.js.map +1 -0
  274. package/web/.next/server/chunks/ssr/_df737cce._.js +1 -1
  275. package/web/.next/server/chunks/ssr/_e3f14907._.js +9 -0
  276. package/web/.next/server/chunks/ssr/_e3f14907._.js.map +1 -0
  277. package/web/.next/server/chunks/ssr/_ea9e1556._.js +1 -1
  278. package/web/.next/server/chunks/ssr/_ea9e1556._.js.map +1 -1
  279. package/web/.next/server/chunks/ssr/_f1ba9be6._.js +2 -2
  280. package/web/.next/server/chunks/ssr/_f1ba9be6._.js.map +1 -1
  281. package/web/.next/server/chunks/ssr/_f33cd07e._.js +2 -2
  282. package/web/.next/server/chunks/ssr/_f33cd07e._.js.map +1 -1
  283. package/web/.next/server/chunks/ssr/_f8b45233._.js +1 -1
  284. package/web/.next/server/chunks/ssr/_f8b45233._.js.map +1 -1
  285. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  286. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  287. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
  288. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js.map +1 -1
  289. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +1 -1
  290. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
  291. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js.map +1 -1
  292. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js +1 -1
  293. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js.map +1 -1
  294. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  295. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  296. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js +1 -1
  297. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js.map +1 -1
  298. package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js +1 -1
  299. package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js.map +1 -1
  300. package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js +1 -1
  301. package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js.map +1 -1
  302. package/web/.next/server/pages/500.html +2 -2
  303. package/web/.next/server/server-reference-manifest.js +1 -1
  304. package/web/.next/server/server-reference-manifest.json +202 -310
  305. package/web/.next/static/chunks/06a86173379e6c51.js +1 -0
  306. package/web/.next/static/chunks/16ed73f9880b7d63.js +1 -0
  307. package/web/.next/static/chunks/{e93ae5725b0babeb.js → 2b2f3a70ebd6ac1c.js} +1 -1
  308. package/web/.next/static/chunks/{37f9543560c58ea6.js → 3d1df5c349d855eb.js} +1 -1
  309. package/web/.next/static/chunks/{5e20f692bbfcfb94.js → 4559a403ee40dd19.js} +1 -1
  310. package/web/.next/static/chunks/74e5b5c7950efbc1.js +1 -0
  311. package/web/.next/static/chunks/{0f30a983f3467cd5.js → 7a6854bb07182777.js} +1 -1
  312. package/web/.next/static/chunks/{52681a7f14138e48.js → 8e12deeabf6624e9.js} +1 -1
  313. package/web/.next/static/chunks/9c6f8f49799efd3a.js +1 -0
  314. package/web/.next/static/chunks/{9a78b4c5dcd28196.js → a3802d6f8677cd04.js} +2 -2
  315. package/web/.next/static/chunks/{09a25231e5fc1ab8.js → b0a6fce5425f8d3a.js} +1 -1
  316. package/web/.next/static/chunks/b14085e99b88e7f7.css +1 -0
  317. package/web/.next/static/chunks/b65e555419a0c664.js +1 -0
  318. package/web/.next/static/chunks/{478adf5d5156f002.js → c5a0b452afc8fe47.js} +1 -1
  319. package/web/.next/static/chunks/ca23a8642f750548.js +5 -0
  320. package/web/.next/static/chunks/{2a9af061f4fbe7f5.js → d5366257d6b9f855.js} +1 -1
  321. package/web/.next/static/chunks/{fc595d95626ac9bb.js → f29814a72404ea2b.js} +1 -1
  322. package/web/.next/static/chunks/{0769c695d6b663c7.js → f51250616da82bd2.js} +1 -1
  323. package/web/.next/static/chunks/{4219ddfde68a6d0b.js → f9da308b3033c57a.js} +1 -1
  324. package/apis/json-schema/FeatureMode.yaml +0 -8
  325. package/dist/packages/core/src/application/use-cases/features/promote/promote-exploration.use-case.d.ts +0 -40
  326. package/dist/packages/core/src/application/use-cases/features/promote/promote-exploration.use-case.d.ts.map +0 -1
  327. package/dist/packages/core/src/application/use-cases/features/promote/promote-exploration.use-case.js +0 -125
  328. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/051-replace-fast-with-mode.d.ts +0 -19
  329. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/051-replace-fast-with-mode.d.ts.map +0 -1
  330. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/051-replace-fast-with-mode.js +0 -46
  331. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/052-replace-default-fast-mode-with-default-mode.d.ts +0 -17
  332. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/052-replace-default-fast-mode-with-default-mode.d.ts.map +0 -1
  333. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/052-replace-default-fast-mode-with-default-mode.js +0 -37
  334. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.d.ts +0 -12
  335. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.d.ts.map +0 -1
  336. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.js +0 -17
  337. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.d.ts +0 -362
  338. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.d.ts.map +0 -1
  339. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.js +0 -72
  340. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.d.ts +0 -18
  341. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.d.ts.map +0 -1
  342. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.js +0 -52
  343. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.d.ts +0 -24
  344. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.d.ts.map +0 -1
  345. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.js +0 -38
  346. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.d.ts +0 -31
  347. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.d.ts.map +0 -1
  348. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.js +0 -240
  349. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prototype-generate.node.d.ts +0 -21
  350. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prototype-generate.node.d.ts.map +0 -1
  351. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prototype-generate.node.js +0 -134
  352. package/dist/src/presentation/cli/commands/feat/feedback.command.d.ts +0 -12
  353. package/dist/src/presentation/cli/commands/feat/feedback.command.d.ts.map +0 -1
  354. package/dist/src/presentation/cli/commands/feat/feedback.command.js +0 -64
  355. package/dist/src/presentation/cli/commands/feat/promote.command.d.ts +0 -13
  356. package/dist/src/presentation/cli/commands/feat/promote.command.d.ts.map +0 -1
  357. package/dist/src/presentation/cli/commands/feat/promote.command.js +0 -41
  358. package/dist/src/presentation/web/app/actions/discard-exploration.d.ts +0 -9
  359. package/dist/src/presentation/web/app/actions/discard-exploration.d.ts.map +0 -1
  360. package/dist/src/presentation/web/app/actions/discard-exploration.js +0 -29
  361. package/dist/src/presentation/web/app/actions/promote-exploration.d.ts +0 -11
  362. package/dist/src/presentation/web/app/actions/promote-exploration.d.ts.map +0 -1
  363. package/dist/src/presentation/web/app/actions/promote-exploration.js +0 -21
  364. package/dist/src/presentation/web/app/actions/submit-exploration-feedback.d.ts +0 -12
  365. package/dist/src/presentation/web/app/actions/submit-exploration-feedback.d.ts.map +0 -1
  366. package/dist/src/presentation/web/app/actions/submit-exploration-feedback.js +0 -40
  367. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.d.ts +0 -8
  368. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.d.ts.map +0 -1
  369. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.js +0 -33
  370. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.stories.d.ts +0 -10
  371. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.stories.d.ts.map +0 -1
  372. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.stories.js +0 -33
  373. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.d.ts +0 -11
  374. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.d.ts.map +0 -1
  375. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.js +0 -34
  376. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.stories.d.ts +0 -16
  377. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.stories.d.ts.map +0 -1
  378. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.stories.js +0 -70
  379. package/dist/src/presentation/web/components/ui/toggle-group.d.ts +0 -10
  380. package/dist/src/presentation/web/components/ui/toggle-group.d.ts.map +0 -1
  381. package/dist/src/presentation/web/components/ui/toggle-group.js +0 -22
  382. package/dist/src/presentation/web/components/ui/toggle.d.ts +0 -10
  383. package/dist/src/presentation/web/components/ui/toggle.d.ts.map +0 -1
  384. package/dist/src/presentation/web/components/ui/toggle.js +0 -26
  385. package/web/.next/server/chunks/ssr/[root-of-the-server]__03c66352._.js +0 -4
  386. package/web/.next/server/chunks/ssr/[root-of-the-server]__03c66352._.js.map +0 -1
  387. package/web/.next/server/chunks/ssr/[root-of-the-server]__403afc23._.js +0 -4
  388. package/web/.next/server/chunks/ssr/[root-of-the-server]__403afc23._.js.map +0 -1
  389. package/web/.next/server/chunks/ssr/[root-of-the-server]__df550e85._.js +0 -3
  390. package/web/.next/server/chunks/ssr/[root-of-the-server]__df550e85._.js.map +0 -1
  391. package/web/.next/server/chunks/ssr/[root-of-the-server]__df5602bf._.js +0 -4
  392. package/web/.next/server/chunks/ssr/[root-of-the-server]__df5602bf._.js.map +0 -1
  393. package/web/.next/server/chunks/ssr/[root-of-the-server]__e9f4767a._.js +0 -4
  394. package/web/.next/server/chunks/ssr/[root-of-the-server]__e9f4767a._.js.map +0 -1
  395. package/web/.next/server/chunks/ssr/_0fd635d7._.js.map +0 -1
  396. package/web/.next/server/chunks/ssr/_30ddea9d._.js +0 -9
  397. package/web/.next/server/chunks/ssr/_30ddea9d._.js.map +0 -1
  398. package/web/.next/server/chunks/ssr/_6e79a2cc._.js +0 -3
  399. package/web/.next/server/chunks/ssr/_6e79a2cc._.js.map +0 -1
  400. package/web/.next/server/chunks/ssr/_cac4abe6._.js.map +0 -1
  401. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_approve-feature_ts_9453ce8b._.js +0 -3
  402. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_approve-feature_ts_9453ce8b._.js.map +0 -1
  403. package/web/.next/static/chunks/2ceebcc839ee0d4b.js +0 -1
  404. package/web/.next/static/chunks/5743a9c1c63e5261.js +0 -5
  405. package/web/.next/static/chunks/5cf9745e2ef3837c.js +0 -1
  406. package/web/.next/static/chunks/c80e8e3d0cf5baa6.css +0 -1
  407. package/web/.next/static/chunks/d5bf9c963b5346e1.js +0 -1
  408. package/web/.next/static/chunks/d60cee2e7318f425.js +0 -1
  409. package/web/.next/static/chunks/da565c85277c2461.js +0 -1
  410. package/web/.next/static/chunks/fb89cf91c10b2e8b.js +0 -1
  411. /package/web/.next/static/{G895CgnbZl4YvWN_DaRC- → 0KDwNT3AGQmFGIwjHx99r}/_buildManifest.js +0 -0
  412. /package/web/.next/static/{G895CgnbZl4YvWN_DaRC- → 0KDwNT3AGQmFGIwjHx99r}/_clientMiddlewareManifest.json +0 -0
  413. /package/web/.next/static/{G895CgnbZl4YvWN_DaRC- → 0KDwNT3AGQmFGIwjHx99r}/_ssgManifest.js +0 -0
@@ -50,10 +50,10 @@ properties:
50
50
  repositoryId:
51
51
  $ref: UUID.yaml
52
52
  description: ID of the Repository entity this feature belongs to
53
- mode:
54
- $ref: FeatureMode.yaml
55
- default: Regular
56
- description: "Execution mode determining the workflow: Regular (full SDLC), Fast (direct implementation), or Exploration (iterative prototyping)"
53
+ fast:
54
+ type: boolean
55
+ default: false
56
+ description: When true, SDLC phases were skipped and the feature was implemented directly from the prompt
57
57
  push:
58
58
  type: boolean
59
59
  default: false
@@ -92,17 +92,6 @@ properties:
92
92
  worktreePath:
93
93
  type: string
94
94
  description: Absolute path to the git worktree for this feature
95
- iterationCount:
96
- type: integer
97
- minimum: -2147483648
98
- maximum: 2147483647
99
- default: 0
100
- description: Current feedback iteration count in exploration mode (0 when not exploring)
101
- maxIterations:
102
- type: integer
103
- minimum: -2147483648
104
- maximum: 2147483647
105
- description: Maximum allowed iterations for exploration mode (only set when mode is Exploration)
106
95
  pr:
107
96
  $ref: PullRequest.yaml
108
97
  description: Pull request data (null until PR created)
@@ -127,7 +116,7 @@ required:
127
116
  - lifecycle
128
117
  - messages
129
118
  - relatedArtifacts
130
- - mode
119
+ - fast
131
120
  - push
132
121
  - openPr
133
122
  - forkAndPr
@@ -137,7 +126,6 @@ required:
137
126
  - injectSkills
138
127
  - commitEvidence
139
128
  - approvalGates
140
- - iterationCount
141
129
  allOf:
142
130
  - $ref: SoftDeletableEntity.yaml
143
131
  description: Central entity tracking a piece of work through the SDLC lifecycle (Aggregate Root)
@@ -12,7 +12,6 @@ enum:
12
12
  - Maintain
13
13
  - Blocked
14
14
  - Pending
15
- - Exploring
16
15
  - Deleting
17
16
  - AwaitingUpstream
18
17
  - Archived
@@ -55,15 +55,10 @@ properties:
55
55
  hideCiStatus:
56
56
  type: boolean
57
57
  description: "Hide CI status badges from UI (default: true)"
58
- defaultMode:
59
- type: string
60
- default: Fast
61
- description: "Default feature mode for new features: 'Regular', 'Fast', or 'Exploration' (default: 'Fast')"
62
- explorationMaxIterations:
63
- type: integer
64
- minimum: -2147483648
65
- maximum: 2147483647
66
- description: "Maximum exploration feedback iterations (default: 10, 0 = unlimited)"
58
+ defaultFastMode:
59
+ type: boolean
60
+ default: true
61
+ description: "Default new features to fast mode (default: true)"
67
62
  autoArchiveDelayMinutes:
68
63
  type: integer
69
64
  minimum: -2147483648
@@ -78,5 +73,5 @@ required:
78
73
  - ciWatchEnabled
79
74
  - enableEvidence
80
75
  - commitEvidence
81
- - defaultMode
76
+ - defaultFastMode
82
77
  description: Global workflow configuration defaults
@@ -9,7 +9,7 @@
9
9
  * - Application layer depends on this interface
10
10
  * - Infrastructure layer provides concrete implementation
11
11
  */
12
- import type { ApprovalGates, AgentType, FeatureMode } from '../../../../domain/generated/output.js';
12
+ import type { ApprovalGates, AgentType } from '../../../../domain/generated/output.js';
13
13
  /**
14
14
  * Service interface for feature agent background process management.
15
15
  */
@@ -37,7 +37,7 @@ export interface IFeatureAgentProcessService {
37
37
  commitEvidence?: boolean;
38
38
  resumePayload?: string;
39
39
  agentType?: AgentType;
40
- mode?: FeatureMode;
40
+ fast?: boolean;
41
41
  model?: string;
42
42
  resumeReason?: string;
43
43
  }): number;
@@ -1 +1 @@
1
- {"version":3,"file":"feature-agent-process.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/agents/feature-agent-process.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAEpG;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;;;;;;;OAQG;IACH,KAAK,CACH,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,IAAI,CAAC,EAAE,WAAW,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GACA,MAAM,CAAC;IAEV;;;;;OAKG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAE9B;;;;;OAKG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnD"}
1
+ {"version":3,"file":"feature-agent-process.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/agents/feature-agent-process.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAEvF;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;;;;;;;OAQG;IACH,KAAK,CACH,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GACA,MAAM,CAAC;IAEV;;;;;OAKG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAE9B;;;;;OAKG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnD"}
@@ -22,16 +22,15 @@ export interface ISpecInitializerService {
22
22
  * - tasks.yaml
23
23
  * - feature.yaml
24
24
  *
25
- * When mode is 'fast', only feature.yaml and spec.yaml are created.
26
- * When mode is 'exploration', only feature.yaml is created.
25
+ * When mode is 'fast', only feature.yaml is created (no spec/research/plan/tasks).
27
26
  *
28
27
  * @param basePath - Directory to create specs/ in (typically the worktree path)
29
28
  * @param slug - Feature slug (kebab-case, e.g., "user-authentication")
30
29
  * @param featureNumber - Sequential feature number (will be zero-padded to 3 digits)
31
30
  * @param description - Feature description for template substitution
32
- * @param mode - Optional mode; controls which template files are created
31
+ * @param mode - Optional mode; when 'fast', only feature.yaml is created
33
32
  * @returns The spec directory path and feature number used
34
33
  */
35
- initialize(basePath: string, slug: string, featureNumber: number, description: string, mode?: 'fast' | 'exploration'): Promise<SpecInitializerResult>;
34
+ initialize(basePath: string, slug: string, featureNumber: number, description: string, mode?: 'fast'): Promise<SpecInitializerResult>;
36
35
  }
37
36
  //# sourceMappingURL=spec-initializer.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spec-initializer.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/spec-initializer.interface.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,qBAAqB;IACpC,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,uBAAuB;IACtC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,UAAU,CACR,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,IAAI,CAAC,EAAE,MAAM,GAAG,aAAa,GAC5B,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACnC"}
1
+ {"version":3,"file":"spec-initializer.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/spec-initializer.interface.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,qBAAqB;IACpC,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,uBAAuB;IACtC;;;;;;;;;;;;;;;;;;OAkBG;IACH,UAAU,CACR,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACnC"}
@@ -22,7 +22,7 @@ import { injectable, inject } from 'tsyringe';
22
22
  import yaml from 'js-yaml';
23
23
  import { readFileSync } from 'node:fs';
24
24
  import { join } from 'node:path';
25
- import { AgentRunStatus, FeatureMode } from '../../../domain/generated/output.js';
25
+ import { AgentRunStatus } from '../../../domain/generated/output.js';
26
26
  import { writeSpecFileAtomic, safeYamlDump, } from '../../../infrastructure/services/agents/feature-agent/nodes/node-helpers.js';
27
27
  import { computeWorktreePath } from '../../../infrastructure/services/ide-launchers/compute-worktree-path.js';
28
28
  let ApproveAgentRunUseCase = class ApproveAgentRunUseCase {
@@ -119,7 +119,7 @@ let ApproveAgentRunUseCase = class ApproveAgentRunUseCase {
119
119
  ...(payload ? { resumePayload: JSON.stringify(payload) } : {}),
120
120
  agentType: run.agentType,
121
121
  ...(run.modelId ? { model: run.modelId } : {}),
122
- ...(feature?.mode && feature.mode !== FeatureMode.Regular ? { mode: feature.mode } : {}),
122
+ ...(feature?.fast ? { fast: true } : {}),
123
123
  });
124
124
  return { approved: true, reason: 'Approved and resumed' };
125
125
  }
@@ -21,7 +21,7 @@ import { injectable, inject } from 'tsyringe';
21
21
  import yaml from 'js-yaml';
22
22
  import { readFileSync } from 'node:fs';
23
23
  import { join } from 'node:path';
24
- import { AgentRunStatus, FeatureMode } from '../../../domain/generated/output.js';
24
+ import { AgentRunStatus } from '../../../domain/generated/output.js';
25
25
  import { writeSpecFileAtomic, safeYamlDump, } from '../../../infrastructure/services/agents/feature-agent/nodes/node-helpers.js';
26
26
  import { recordLifecycleEvent } from '../../../infrastructure/services/agents/feature-agent/phase-timing-context.js';
27
27
  import { computeWorktreePath } from '../../../infrastructure/services/ide-launchers/compute-worktree-path.js';
@@ -135,7 +135,7 @@ let RejectAgentRunUseCase = class RejectAgentRunUseCase {
135
135
  resumePayload: JSON.stringify(rejectionPayload),
136
136
  agentType: run.agentType,
137
137
  ...(run.modelId ? { model: run.modelId } : {}),
138
- ...(feature.mode !== FeatureMode.Regular ? { mode: feature.mode } : {}),
138
+ ...(feature.fast ? { fast: true } : {}),
139
139
  });
140
140
  return {
141
141
  rejected: true,
@@ -1 +1 @@
1
- {"version":3,"file":"adopt-branch.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/features/adopt-branch.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAe,MAAM,qCAAqC,CAAC;AAEhF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAC1G,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oEAAoE,CAAC;AAChH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAC;AAClG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yDAAyD,CAAC;AAG7F,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;CAClB;AAKD,qBACa,kBAAkB;IAG3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAEhC,OAAO,CAAC,QAAQ,CAAC,YAAY;gBANZ,WAAW,EAAE,kBAAkB,EAE/B,cAAc,EAAE,qBAAqB,EAErC,eAAe,EAAE,gBAAgB,EAEjC,YAAY,EAAE,aAAa;IAGxC,OAAO,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgGlE;;;;OAIG;YACW,gBAAgB;IAiB9B;;;;OAIG;YACW,iBAAiB;IA4B/B;;;OAGG;YACW,iBAAiB;CAuBhC"}
1
+ {"version":3,"file":"adopt-branch.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/features/adopt-branch.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAe,MAAM,qCAAqC,CAAC;AAEhF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAC1G,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oEAAoE,CAAC;AAChH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAC;AAClG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yDAAyD,CAAC;AAG7F,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;CAClB;AAKD,qBACa,kBAAkB;IAG3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAEhC,OAAO,CAAC,QAAQ,CAAC,YAAY;gBANZ,WAAW,EAAE,kBAAkB,EAE/B,cAAc,EAAE,qBAAqB,EAErC,eAAe,EAAE,gBAAgB,EAEjC,YAAY,EAAE,aAAa;IAGxC,OAAO,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA+FlE;;;;OAIG;YACW,gBAAgB;IAiB9B;;;;OAIG;YACW,iBAAiB;IA4B/B;;;OAGG;YACW,iBAAiB;CAuBhC"}
@@ -23,7 +23,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
23
23
  };
24
24
  import { injectable, inject } from 'tsyringe';
25
25
  import { randomUUID } from 'node:crypto';
26
- import { SdlcLifecycle, PrStatus, FeatureMode } from '../../../domain/generated/output.js';
26
+ import { SdlcLifecycle, PrStatus } from '../../../domain/generated/output.js';
27
27
  import { deriveName, deriveSlug } from './branch-name-utils.js';
28
28
  /** Branches that must not be adopted as features. */
29
29
  const PROTECTED_BRANCHES = new Set(['main', 'master']);
@@ -89,8 +89,7 @@ let AdoptBranchUseCase = class AdoptBranchUseCase {
89
89
  lifecycle,
90
90
  messages: [],
91
91
  relatedArtifacts: [],
92
- mode: FeatureMode.Regular,
93
- iterationCount: 0,
92
+ fast: false,
94
93
  push: false,
95
94
  openPr: hasOpenPr,
96
95
  forkAndPr: false,
@@ -27,7 +27,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
27
27
  return function (target, key) { decorator(target, key, paramIndex); }
28
28
  };
29
29
  import { injectable, inject } from 'tsyringe';
30
- import { SdlcLifecycle, FeatureMode } from '../../../domain/generated/output.js';
30
+ import { SdlcLifecycle } from '../../../domain/generated/output.js';
31
31
  import { POST_IMPLEMENTATION } from '../../../domain/lifecycle-gates.js';
32
32
  let CheckAndUnblockFeaturesUseCase = class CheckAndUnblockFeaturesUseCase {
33
33
  featureRepo;
@@ -69,7 +69,7 @@ let CheckAndUnblockFeaturesUseCase = class CheckAndUnblockFeaturesUseCase {
69
69
  ciWatchEnabled: child.ciWatchEnabled,
70
70
  enableEvidence: child.enableEvidence,
71
71
  commitEvidence: child.commitEvidence,
72
- ...(child.mode !== FeatureMode.Regular ? { mode: child.mode } : {}),
72
+ ...(child.fast ? { fast: true } : {}),
73
73
  });
74
74
  }
75
75
  }
@@ -1 +1 @@
1
- {"version":3,"file":"create-feature.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/use-cases/features/create/create-feature.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wCAAwC,CAAC;AAOtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oEAAoE,CAAC;AAC7G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8DAA8D,CAAC;AACrG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iEAAiE,CAAC;AACnH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gEAAgE,CAAC;AAC1G,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8DAA8D,CAAC;AAC5G,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uEAAuE,CAAC;AACnH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4DAA4D,CAAC;AAChG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2DAA2D,CAAC;AACjG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4DAA4D,CAAC;AAIxG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mEAAmE,CAAC;AAC7G,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE9F,qBACa,oBAAoB;IAG7B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAEhC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAE7B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAEhC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAE7B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAE7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAtBb,WAAW,EAAE,kBAAkB,EAE/B,eAAe,EAAE,gBAAgB,EAEjC,YAAY,EAAE,2BAA2B,EAEzC,aAAa,EAAE,mBAAmB,EAElC,eAAe,EAAE,uBAAuB,EAExC,iBAAiB,EAAE,iBAAiB,EAEpC,YAAY,EAAE,YAAY,EAE1B,cAAc,EAAE,qBAAqB,EAErC,YAAY,EAAE,aAAa,EAE3B,iBAAiB,EAAE,wBAAwB,EAE3C,cAAc,EAAE,eAAe,EAE/B,aAAa,EAAE,qBAAqB;IAGvD;;;OAGG;IACG,OAAO,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAMtE;;;;OAIG;IACG,YAAY,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAiJ1E;;;OAGG;IACG,kBAAkB,CACtB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,kBAAkB,EACzB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,OAAO,CAAA;KAAE,CAAC;CA0K1D"}
1
+ {"version":3,"file":"create-feature.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/use-cases/features/create/create-feature.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wCAAwC,CAAC;AAMtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oEAAoE,CAAC;AAC7G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8DAA8D,CAAC;AACrG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iEAAiE,CAAC;AACnH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gEAAgE,CAAC;AAC1G,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8DAA8D,CAAC;AAC5G,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uEAAuE,CAAC;AACnH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4DAA4D,CAAC;AAChG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2DAA2D,CAAC;AACjG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4DAA4D,CAAC;AAIxG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mEAAmE,CAAC;AAC7G,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE9F,qBACa,oBAAoB;IAG7B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAEhC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAE7B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAEhC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAE7B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAE7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAtBb,WAAW,EAAE,kBAAkB,EAE/B,eAAe,EAAE,gBAAgB,EAEjC,YAAY,EAAE,2BAA2B,EAEzC,aAAa,EAAE,mBAAmB,EAElC,eAAe,EAAE,uBAAuB,EAExC,iBAAiB,EAAE,iBAAiB,EAEpC,YAAY,EAAE,YAAY,EAE1B,cAAc,EAAE,qBAAqB,EAErC,YAAY,EAAE,aAAa,EAE3B,iBAAiB,EAAE,wBAAwB,EAE3C,cAAc,EAAE,eAAe,EAE/B,aAAa,EAAE,qBAAqB;IAGvD;;;OAGG;IACG,OAAO,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAMtE;;;;OAIG;IACG,YAAY,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAyI1E;;;OAGG;IACG,kBAAkB,CACtB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,kBAAkB,EACzB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,OAAO,CAAA;KAAE,CAAC;CAsK1D"}
@@ -29,7 +29,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
29
29
  };
30
30
  import { injectable, inject } from 'tsyringe';
31
31
  import { randomUUID } from 'node:crypto';
32
- import { SdlcLifecycle, AgentRunStatus, FeatureMode, } from '../../../../domain/generated/output.js';
32
+ import { SdlcLifecycle, AgentRunStatus, } from '../../../../domain/generated/output.js';
33
33
  import { getSettings } from '../../../../infrastructure/services/settings.service.js';
34
34
  import { createDefaultSettings } from '../../../../domain/factories/settings-defaults.factory.js';
35
35
  import { POST_IMPLEMENTATION } from '../../../../domain/lifecycle-gates.js';
@@ -78,12 +78,9 @@ let CreateFeatureUseCase = class CreateFeatureUseCase {
78
78
  * No AI calls, no git operations — just DB writes.
79
79
  */
80
80
  async createRecord(input) {
81
- const effectiveMode = input.mode ?? FeatureMode.Regular;
82
- let initialLifecycle = effectiveMode === FeatureMode.Exploration
83
- ? SdlcLifecycle.Exploring
84
- : effectiveMode === FeatureMode.Fast
85
- ? SdlcLifecycle.Implementation
86
- : SdlcLifecycle.Requirements;
81
+ let initialLifecycle = input.fast
82
+ ? SdlcLifecycle.Implementation
83
+ : SdlcLifecycle.Requirements;
87
84
  let shouldSpawn = true;
88
85
  let effectiveRepoPath = input.repositoryPath.replace(/\\/g, '/');
89
86
  // Pending flag takes precedence — user explicitly defers agent execution.
@@ -156,7 +153,7 @@ let CreateFeatureUseCase = class CreateFeatureUseCase {
156
153
  lifecycle: initialLifecycle,
157
154
  messages: [],
158
155
  relatedArtifacts: [],
159
- mode: effectiveMode,
156
+ fast: input.fast ?? false,
160
157
  push: input.push ?? false,
161
158
  openPr: input.openPr ?? false,
162
159
  forkAndPr: input.forkAndPr ?? false,
@@ -170,10 +167,6 @@ let CreateFeatureUseCase = class CreateFeatureUseCase {
170
167
  allowPlan: false,
171
168
  allowMerge: false,
172
169
  },
173
- iterationCount: 0,
174
- ...(effectiveMode === FeatureMode.Exploration && {
175
- maxIterations: getSettings().workflow.explorationMaxIterations ?? 10,
176
- }),
177
170
  agentRunId: runId,
178
171
  specPath: '',
179
172
  repositoryId: repository.id,
@@ -238,11 +231,7 @@ let CreateFeatureUseCase = class CreateFeatureUseCase {
238
231
  const worktreePath = this.worktreeService.getWorktreePath(effectiveRepoPath, branch);
239
232
  await this.worktreeService.create(effectiveRepoPath, branch, worktreePath, defaultBranch);
240
233
  // Initialize spec directory — full user input goes into spec.yaml as-is
241
- const { specDir } = await this.specInitializer.initialize(worktreePath, slug, featureNumber, input.userInput, feature.mode === FeatureMode.Fast
242
- ? 'fast'
243
- : feature.mode === FeatureMode.Exploration
244
- ? 'exploration'
245
- : undefined);
234
+ const { specDir } = await this.specInitializer.initialize(worktreePath, slug, featureNumber, input.userInput, input.fast ? 'fast' : undefined);
246
235
  // Commit pending attachments if sessionId was provided (web UI flow)
247
236
  let committedAttachments = input.attachments;
248
237
  if (input.sessionId) {
@@ -334,7 +323,7 @@ let CreateFeatureUseCase = class CreateFeatureUseCase {
334
323
  ciWatchEnabled: input.ciWatchEnabled ?? true,
335
324
  enableEvidence: input.enableEvidence ?? false,
336
325
  commitEvidence: input.commitEvidence ?? false,
337
- ...(feature.mode !== FeatureMode.Regular ? { mode: feature.mode } : {}),
326
+ ...(input.fast ? { fast: true } : {}),
338
327
  ...(input.agentType ? { agentType: input.agentType } : {}),
339
328
  ...(input.model ? { model: input.model } : {}),
340
329
  });
@@ -1,5 +1,4 @@
1
1
  import type { ApprovalGates, Attachment, Feature } from '../../../../domain/generated/output.js';
2
- import { type FeatureMode } from '../../../../domain/generated/output.js';
3
2
  export interface CreateFeatureInput {
4
3
  userInput: string;
5
4
  repositoryPath: string;
@@ -12,8 +11,8 @@ export interface CreateFeatureInput {
12
11
  name?: string;
13
12
  /** Pre-supplied description (skips AI metadata extraction for description). */
14
13
  description?: string;
15
- /** Execution mode: Regular (full SDLC), Fast (direct implementation), or Exploration (iterative prototyping). */
16
- mode?: FeatureMode;
14
+ /** When true, skip SDLC phases and implement directly from the user prompt. */
15
+ fast?: boolean;
17
16
  /** Fork repo and create PR to upstream at merge time (default: false). */
18
17
  forkAndPr?: boolean;
19
18
  /** Commit specs/evidences into the repo (default: true, auto-false when forkAndPr). */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/use-cases/features/create/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,wCAAwC,CAAC;AACjG,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAE1E,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,+EAA+E;IAC/E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iHAAiH;IACjH,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uFAAuF;IACvF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2DAA2D;IAC3D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wEAAwE;IACxE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,uEAAuE;IACvE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qFAAqF;IACrF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,8FAA8F;IAC9F,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oGAAoG;IACpG,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,8EAA8E;AAC9E,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,WAAW,EAAE,OAAO,CAAC;CACtB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/use-cases/features/create/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,wCAAwC,CAAC;AAEjG,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,+EAA+E;IAC/E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,0EAA0E;IAC1E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uFAAuF;IACvF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2DAA2D;IAC3D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wEAAwE;IACxE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,uEAAuE;IACvE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qFAAqF;IACrF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,8FAA8F;IAC9F,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oGAAoG;IACpG,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,8EAA8E;AAC9E,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,WAAW,EAAE,OAAO,CAAC;CACtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"delete-feature.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/features/delete-feature.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qCAAqC,CAAC;AAEnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAC1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAC;AAClG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yDAAyD,CAAC;AAE7F,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,qBACa,oBAAoB;IAEC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAE5D,OAAO,CAAC,QAAQ,CAAC,cAAc;IACA,OAAO,CAAC,QAAQ,CAAC,OAAO;IAC9B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBALP,WAAW,EAAE,kBAAkB,EACjC,eAAe,EAAE,gBAAgB,EAE7D,cAAc,EAAE,2BAA2B,EACZ,OAAO,EAAE,mBAAmB,EAClC,YAAY,EAAE,aAAa;IAGjE,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IA8BlF,oGAAoG;YACtF,gBAAgB;IAW9B,0DAA0D;YAC5C,iBAAiB;IAQ/B,6DAA6D;YAC/C,yBAAyB;IAevC,sDAAsD;YACxC,sBAAsB;IAYpC,6EAA6E;YAC/D,oBAAoB;CAyFnC"}
1
+ {"version":3,"file":"delete-feature.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/features/delete-feature.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qCAAqC,CAAC;AAEnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAC1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAC;AAClG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yDAAyD,CAAC;AAE7F,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,qBACa,oBAAoB;IAEC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAE5D,OAAO,CAAC,QAAQ,CAAC,cAAc;IACA,OAAO,CAAC,QAAQ,CAAC,OAAO;IAC9B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBALP,WAAW,EAAE,kBAAkB,EACjC,eAAe,EAAE,gBAAgB,EAE7D,cAAc,EAAE,2BAA2B,EACZ,OAAO,EAAE,mBAAmB,EAClC,YAAY,EAAE,aAAa;IAGjE,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IA8BlF,oGAAoG;YACtF,gBAAgB;IAW9B,0DAA0D;YAC5C,iBAAiB;IAQ/B,6DAA6D;YAC/C,yBAAyB;IAevC,sDAAsD;YACxC,sBAAsB;IAYpC,6EAA6E;YAC/D,oBAAoB;CA+EnC"}
@@ -25,9 +25,6 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
25
25
  return function (target, key) { decorator(target, key, paramIndex); }
26
26
  };
27
27
  import { injectable, inject } from 'tsyringe';
28
- import { homedir } from 'node:os';
29
- import { join } from 'node:path';
30
- import { unlink } from 'node:fs/promises';
31
28
  import { AgentRunStatus, PrStatus, SdlcLifecycle } from '../../../domain/generated/output.js';
32
29
  let DeleteFeatureUseCase = class DeleteFeatureUseCase {
33
30
  featureRepo;
@@ -126,16 +123,6 @@ let DeleteFeatureUseCase = class DeleteFeatureUseCase {
126
123
  }
127
124
  await this.runRepo.updateStatus(run.id, AgentRunStatus.cancelled);
128
125
  }
129
- // Clean up checkpoint database file (used by LangGraph for state persistence)
130
- if (run?.threadId) {
131
- const checkpointPath = join(homedir(), '.shep', 'checkpoints', `${run.threadId}.db`);
132
- try {
133
- await unlink(checkpointPath);
134
- }
135
- catch {
136
- // Checkpoint file may not exist or already be removed
137
- }
138
- }
139
126
  }
140
127
  // Cleanup worktree and branches directly using the feature data we already
141
128
  // have (CleanupFeatureWorktreeUseCase.execute() would fail because
@@ -18,7 +18,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
18
18
  };
19
19
  import { injectable, inject } from 'tsyringe';
20
20
  import { randomUUID } from 'node:crypto';
21
- import { AgentRunStatus, FeatureMode } from '../../../domain/generated/output.js';
21
+ import { AgentRunStatus } from '../../../domain/generated/output.js';
22
22
  const RESUMABLE_STATUSES = new Set([
23
23
  AgentRunStatus.interrupted,
24
24
  AgentRunStatus.failed,
@@ -115,7 +115,7 @@ let ResumeFeatureUseCase = class ResumeFeatureUseCase {
115
115
  enableEvidence: feature.enableEvidence,
116
116
  commitEvidence: feature.commitEvidence,
117
117
  agentType: lastRun.agentType,
118
- ...(feature.mode !== FeatureMode.Regular ? { mode: feature.mode } : {}),
118
+ ...(feature.fast ? { fast: true } : {}),
119
119
  ...(lastRun.modelId ? { model: lastRun.modelId } : {}),
120
120
  resumeReason: lastRun.status,
121
121
  });
@@ -1 +1 @@
1
- {"version":3,"file":"start-feature.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/features/start-feature.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAE7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAC1G,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAC;AAGlG,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,qBACa,mBAAmB;IAG5B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAExB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBANf,WAAW,EAAE,kBAAkB,EAE/B,OAAO,EAAE,mBAAmB,EAE5B,cAAc,EAAE,2BAA2B,EAE3C,eAAe,EAAE,gBAAgB;IAG9C,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;CA4G9D"}
1
+ {"version":3,"file":"start-feature.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/features/start-feature.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAE7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAC1G,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAC;AAGlG,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,qBACa,mBAAmB;IAG5B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAExB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBANf,WAAW,EAAE,kBAAkB,EAE/B,OAAO,EAAE,mBAAmB,EAE5B,cAAc,EAAE,2BAA2B,EAE3C,eAAe,EAAE,gBAAgB;IAG9C,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAyG9D"}
@@ -18,7 +18,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
18
18
  return function (target, key) { decorator(target, key, paramIndex); }
19
19
  };
20
20
  import { injectable, inject } from 'tsyringe';
21
- import { SdlcLifecycle, FeatureMode } from '../../../domain/generated/output.js';
21
+ import { SdlcLifecycle } from '../../../domain/generated/output.js';
22
22
  import { POST_IMPLEMENTATION } from '../../../domain/lifecycle-gates.js';
23
23
  let StartFeatureUseCase = class StartFeatureUseCase {
24
24
  featureRepo;
@@ -71,9 +71,7 @@ let StartFeatureUseCase = class StartFeatureUseCase {
71
71
  }
72
72
  }
73
73
  // Check parent gate if feature has a parent
74
- let targetLifecycle = resolved.mode === FeatureMode.Fast
75
- ? SdlcLifecycle.Implementation
76
- : SdlcLifecycle.Requirements;
74
+ let targetLifecycle = resolved.fast ? SdlcLifecycle.Implementation : SdlcLifecycle.Requirements;
77
75
  let shouldSpawn = true;
78
76
  if (resolved.parentId) {
79
77
  const parent = await this.featureRepo.findById(resolved.parentId);
@@ -105,7 +103,7 @@ let StartFeatureUseCase = class StartFeatureUseCase {
105
103
  enableEvidence: resolved.enableEvidence,
106
104
  commitEvidence: resolved.commitEvidence,
107
105
  agentType: agentRun.agentType,
108
- ...(resolved.mode !== FeatureMode.Regular ? { mode: resolved.mode } : {}),
106
+ ...(resolved.fast ? { fast: true } : {}),
109
107
  ...(agentRun.modelId ? { model: agentRun.modelId } : {}),
110
108
  });
111
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"settings-defaults.factory.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/src/domain/factories/settings-defaults.factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EACV,QAAQ,EAWT,MAAM,qBAAqB,CAAC;AAmD7B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,qBAAqB,IAAI,QAAQ,CA+IhD"}
1
+ {"version":3,"file":"settings-defaults.factory.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/src/domain/factories/settings-defaults.factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EACV,QAAQ,EAWT,MAAM,qBAAqB,CAAC;AAmD7B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,qBAAqB,IAAI,QAAQ,CA8IhD"}
@@ -171,8 +171,7 @@ export function createDefaultSettings() {
171
171
  ciWatchEnabled: true,
172
172
  enableEvidence: false,
173
173
  commitEvidence: false,
174
- defaultMode: 'Fast',
175
- explorationMaxIterations: 10,
174
+ defaultFastMode: true,
176
175
  autoArchiveDelayMinutes: 10,
177
176
  skillInjection,
178
177
  };
@@ -474,13 +474,9 @@ export type WorkflowConfig = {
474
474
  */
475
475
  hideCiStatus?: boolean;
476
476
  /**
477
- * Default feature mode for new features: 'Regular', 'Fast', or 'Exploration' (default: 'Fast')
477
+ * Default new features to fast mode (default: true)
478
478
  */
479
- defaultMode: string;
480
- /**
481
- * Maximum exploration feedback iterations (default: 10, 0 = unlimited)
482
- */
483
- explorationMaxIterations?: number;
479
+ defaultFastMode: boolean;
484
480
  /**
485
481
  * Minutes after completion before auto-archiving a feature (default: 10, 0 = disabled)
486
482
  */
@@ -854,16 +850,10 @@ export declare enum SdlcLifecycle {
854
850
  Maintain = "Maintain",
855
851
  Blocked = "Blocked",
856
852
  Pending = "Pending",
857
- Exploring = "Exploring",
858
853
  Deleting = "Deleting",
859
854
  AwaitingUpstream = "AwaitingUpstream",
860
855
  Archived = "Archived"
861
856
  }
862
- export declare enum FeatureMode {
863
- Regular = "Regular",
864
- Fast = "Fast",
865
- Exploration = "Exploration"
866
- }
867
857
  /**
868
858
  * Configuration for human-in-the-loop approval gates
869
859
  */
@@ -1055,9 +1045,9 @@ export type Feature = SoftDeletableEntity & {
1055
1045
  */
1056
1046
  repositoryId?: UUID;
1057
1047
  /**
1058
- * Execution mode determining the workflow: Regular (full SDLC), Fast (direct implementation), or Exploration (iterative prototyping)
1048
+ * When true, SDLC phases were skipped and the feature was implemented directly from the prompt
1059
1049
  */
1060
- mode: FeatureMode;
1050
+ fast: boolean;
1061
1051
  /**
1062
1052
  * Push branch to remote after implementation (default: false)
1063
1053
  */
@@ -1098,14 +1088,6 @@ export type Feature = SoftDeletableEntity & {
1098
1088
  * Absolute path to the git worktree for this feature
1099
1089
  */
1100
1090
  worktreePath?: string;
1101
- /**
1102
- * Current feedback iteration count in exploration mode (0 when not exploring)
1103
- */
1104
- iterationCount: number;
1105
- /**
1106
- * Maximum allowed iterations for exploration mode (only set when mode is Exploration)
1107
- */
1108
- maxIterations?: number;
1109
1091
  /**
1110
1092
  * Pull request data (null until PR created)
1111
1093
  */