@shepai/cli 1.170.0-pr513.cff27cb → 1.171.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 (417) 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/application/use-cases/upgrade/upgrade-cli.use-case.d.ts +1 -0
  23. package/dist/packages/core/src/application/use-cases/upgrade/upgrade-cli.use-case.d.ts.map +1 -1
  24. package/dist/packages/core/src/application/use-cases/upgrade/upgrade-cli.use-case.js +59 -2
  25. package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
  26. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +1 -2
  27. package/dist/packages/core/src/domain/generated/output.d.ts +4 -22
  28. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  29. package/dist/packages/core/src/domain/generated/output.js +0 -7
  30. package/dist/packages/core/src/domain/lifecycle-gates.d.ts +6 -21
  31. package/dist/packages/core/src/domain/lifecycle-gates.d.ts.map +1 -1
  32. package/dist/packages/core/src/domain/lifecycle-gates.js +6 -25
  33. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  34. package/dist/packages/core/src/infrastructure/di/container.js +0 -5
  35. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.d.ts +1 -3
  36. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.d.ts.map +1 -1
  37. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.js +4 -10
  38. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +1 -2
  39. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  40. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +2 -7
  41. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.d.ts.map +1 -1
  42. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.js +3 -5
  43. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +3 -3
  44. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts +0 -20
  45. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts.map +1 -1
  46. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts +0 -68
  47. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts.map +1 -1
  48. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.d.ts +2 -2
  49. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.d.ts.map +1 -1
  50. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.js +3 -3
  51. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts +2 -2
  52. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts.map +1 -1
  53. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.js +8 -19
  54. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/lifecycle-context.d.ts.map +1 -1
  55. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/lifecycle-context.js +0 -1
  56. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.d.ts.map +1 -1
  57. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.js +0 -1
  58. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts +0 -4
  59. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts.map +1 -1
  60. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.js +0 -17
  61. package/dist/packages/core/src/infrastructure/services/spec/spec-initializer.service.d.ts +1 -1
  62. package/dist/packages/core/src/infrastructure/services/spec/spec-initializer.service.d.ts.map +1 -1
  63. package/dist/packages/core/src/infrastructure/services/spec/spec-initializer.service.js +4 -7
  64. package/dist/src/presentation/cli/commands/feat/index.d.ts.map +1 -1
  65. package/dist/src/presentation/cli/commands/feat/index.js +1 -5
  66. package/dist/src/presentation/cli/commands/feat/new.command.d.ts.map +1 -1
  67. package/dist/src/presentation/cli/commands/feat/new.command.js +5 -18
  68. package/dist/src/presentation/cli/commands/upgrade.command.d.ts.map +1 -1
  69. package/dist/src/presentation/cli/commands/upgrade.command.js +68 -3
  70. package/dist/src/presentation/web/app/actions/create-feature.d.ts +2 -3
  71. package/dist/src/presentation/web/app/actions/create-feature.d.ts.map +1 -1
  72. package/dist/src/presentation/web/app/actions/create-feature.js +3 -3
  73. package/dist/src/presentation/web/app/actions/get-workflow-defaults.d.ts +1 -2
  74. package/dist/src/presentation/web/app/actions/get-workflow-defaults.d.ts.map +1 -1
  75. package/dist/src/presentation/web/app/actions/get-workflow-defaults.js +1 -2
  76. package/dist/src/presentation/web/app/api/agent-events/route.d.ts.map +1 -1
  77. package/dist/src/presentation/web/app/api/agent-events/route.js +0 -1
  78. package/dist/src/presentation/web/app/build-feature-node-data.d.ts.map +1 -1
  79. package/dist/src/presentation/web/app/build-feature-node-data.js +2 -4
  80. package/dist/src/presentation/web/app/build-graph-nodes.js +2 -4
  81. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.d.ts +1 -1
  82. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.d.ts.map +1 -1
  83. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.js +0 -3
  84. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts.map +1 -1
  85. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.js +1 -65
  86. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts +2 -3
  87. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -1
  88. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +11 -15
  89. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.d.ts.map +1 -1
  90. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.js +1 -2
  91. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts +1 -6
  92. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts.map +1 -1
  93. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.js +4 -16
  94. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.d.ts.map +1 -1
  95. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.js +0 -2
  96. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts +2 -6
  97. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts.map +1 -1
  98. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.js +0 -12
  99. package/dist/src/presentation/web/components/common/feature-node/feature-node.d.ts.map +1 -1
  100. package/dist/src/presentation/web/components/common/feature-node/feature-node.js +2 -7
  101. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  102. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +6 -6
  103. package/dist/src/presentation/web/components/features/settings/workflow-settings-section.stories.js +3 -3
  104. package/dist/translations/ar/cli.json +2 -24
  105. package/dist/translations/ar/web.json +2 -6
  106. package/dist/translations/de/cli.json +2 -24
  107. package/dist/translations/de/web.json +2 -6
  108. package/dist/translations/en/cli.json +2 -24
  109. package/dist/translations/en/web.json +2 -6
  110. package/dist/translations/es/cli.json +2 -24
  111. package/dist/translations/es/web.json +2 -6
  112. package/dist/translations/fr/cli.json +2 -24
  113. package/dist/translations/fr/web.json +2 -6
  114. package/dist/translations/he/cli.json +2 -24
  115. package/dist/translations/he/web.json +2 -6
  116. package/dist/translations/pt/cli.json +2 -24
  117. package/dist/translations/pt/web.json +2 -6
  118. package/dist/translations/ru/cli.json +2 -24
  119. package/dist/translations/ru/web.json +2 -6
  120. package/dist/tsconfig.build.tsbuildinfo +1 -1
  121. package/package.json +1 -1
  122. package/web/.next/BUILD_ID +1 -1
  123. package/web/.next/build-manifest.json +2 -2
  124. package/web/.next/fallback-build-manifest.json +2 -2
  125. package/web/.next/prerender-manifest.json +3 -3
  126. package/web/.next/required-server-files.js +2 -2
  127. package/web/.next/required-server-files.json +2 -2
  128. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +29 -29
  129. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  130. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  131. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +27 -27
  132. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  133. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  134. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +30 -30
  135. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  136. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  137. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +76 -121
  138. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +1 -2
  139. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  140. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  141. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +76 -121
  142. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +1 -2
  143. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  144. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  145. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  146. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  147. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  148. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  149. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  150. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  151. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +27 -27
  152. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  153. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  154. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +30 -30
  155. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  156. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  157. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +76 -121
  158. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +1 -2
  159. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  160. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  161. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +76 -121
  162. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +1 -2
  163. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  164. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  165. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +27 -27
  166. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  167. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  168. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  169. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  170. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  171. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  172. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  173. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  174. package/web/.next/server/app/_global-error.html +2 -2
  175. package/web/.next/server/app/_global-error.rsc +1 -1
  176. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  177. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  178. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  179. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  180. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  181. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +6 -6
  182. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  183. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  184. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  185. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  186. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  187. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -1
  188. package/web/.next/server/app/features/page/server-reference-manifest.json +6 -6
  189. package/web/.next/server/app/features/page.js.nft.json +1 -1
  190. package/web/.next/server/app/features/page_client-reference-manifest.js +1 -1
  191. package/web/.next/server/app/settings/page/server-reference-manifest.json +9 -9
  192. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  193. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  194. package/web/.next/server/app/skills/page/server-reference-manifest.json +13 -13
  195. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  196. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  197. package/web/.next/server/app/tools/page/server-reference-manifest.json +11 -11
  198. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  199. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  200. package/web/.next/server/app/version/page/server-reference-manifest.json +6 -6
  201. package/web/.next/server/app/version/page.js.nft.json +1 -1
  202. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  203. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js +1 -1
  204. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js.map +1 -1
  205. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js +1 -1
  206. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js.map +1 -1
  207. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  208. package/web/.next/server/chunks/[root-of-the-server]__c78383b1._.js +1 -1
  209. package/web/.next/server/chunks/[root-of-the-server]__c78383b1._.js.map +1 -1
  210. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js +1 -1
  211. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
  212. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  213. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  214. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +3 -3
  215. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
  216. package/web/.next/server/chunks/ssr/[root-of-the-server]__1cd4327c._.js +1 -1
  217. package/web/.next/server/chunks/ssr/[root-of-the-server]__1cd4327c._.js.map +1 -1
  218. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f389e5d._.js +1 -1
  219. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f389e5d._.js.map +1 -1
  220. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  221. package/web/.next/server/chunks/ssr/[root-of-the-server]__4ed9b909._.js +1 -1
  222. package/web/.next/server/chunks/ssr/[root-of-the-server]__4fb81977._.js +4 -0
  223. package/web/.next/server/chunks/ssr/[root-of-the-server]__4fb81977._.js.map +1 -0
  224. package/web/.next/server/chunks/ssr/[root-of-the-server]__684a868c._.js +1 -1
  225. package/web/.next/server/chunks/ssr/[root-of-the-server]__684a868c._.js.map +1 -1
  226. package/web/.next/server/chunks/ssr/[root-of-the-server]__69dd3217._.js +1 -1
  227. package/web/.next/server/chunks/ssr/[root-of-the-server]__69dd3217._.js.map +1 -1
  228. package/web/.next/server/chunks/ssr/[root-of-the-server]__6c7d3936._.js +1 -1
  229. package/web/.next/server/chunks/ssr/[root-of-the-server]__6c7d3936._.js.map +1 -1
  230. package/web/.next/server/chunks/ssr/[root-of-the-server]__7dcd0917._.js +4 -0
  231. package/web/.next/server/chunks/ssr/[root-of-the-server]__7dcd0917._.js.map +1 -0
  232. package/web/.next/server/chunks/ssr/[root-of-the-server]__92ffd5ee._.js +2 -2
  233. package/web/.next/server/chunks/ssr/[root-of-the-server]__92ffd5ee._.js.map +1 -1
  234. package/web/.next/server/chunks/ssr/[root-of-the-server]__b020c17d._.js +2 -2
  235. package/web/.next/server/chunks/ssr/[root-of-the-server]__b020c17d._.js.map +1 -1
  236. package/web/.next/server/chunks/ssr/[root-of-the-server]__b7b96453._.js +1 -1
  237. package/web/.next/server/chunks/ssr/[root-of-the-server]__b7b96453._.js.map +1 -1
  238. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba7f5873._.js +4 -0
  239. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba7f5873._.js.map +1 -0
  240. package/web/.next/server/chunks/ssr/[root-of-the-server]__c1262d08._.js +1 -1
  241. package/web/.next/server/chunks/ssr/[root-of-the-server]__c16bf5de._.js +1 -1
  242. package/web/.next/server/chunks/ssr/[root-of-the-server]__c16bf5de._.js.map +1 -1
  243. package/web/.next/server/chunks/ssr/[root-of-the-server]__c5e09f6f._.js +4 -0
  244. package/web/.next/server/chunks/ssr/[root-of-the-server]__c5e09f6f._.js.map +1 -0
  245. package/web/.next/server/chunks/ssr/[root-of-the-server]__fa525872._.js +3 -0
  246. package/web/.next/server/chunks/ssr/[root-of-the-server]__fa525872._.js.map +1 -0
  247. package/web/.next/server/chunks/ssr/_02e01240._.js +1 -1
  248. package/web/.next/server/chunks/ssr/_02e01240._.js.map +1 -1
  249. package/web/.next/server/chunks/ssr/_05c23ad9._.js +1 -1
  250. package/web/.next/server/chunks/ssr/_05c23ad9._.js.map +1 -1
  251. package/web/.next/server/chunks/ssr/_16eb4fec._.js +1 -1
  252. package/web/.next/server/chunks/ssr/_16eb4fec._.js.map +1 -1
  253. package/web/.next/server/chunks/ssr/_18886033._.js +1 -1
  254. package/web/.next/server/chunks/ssr/_18886033._.js.map +1 -1
  255. package/web/.next/server/chunks/ssr/_22e00a14._.js +1 -1
  256. package/web/.next/server/chunks/ssr/_22e00a14._.js.map +1 -1
  257. package/web/.next/server/chunks/ssr/_45496654._.js +1 -1
  258. package/web/.next/server/chunks/ssr/_45496654._.js.map +1 -1
  259. package/web/.next/server/chunks/ssr/{_cac4abe6._.js → _49447b3c._.js} +2 -2
  260. package/web/.next/server/chunks/ssr/_49447b3c._.js.map +1 -0
  261. package/web/.next/server/chunks/ssr/_4cbb7f95._.js +1 -1
  262. package/web/.next/server/chunks/ssr/_4cbb7f95._.js.map +1 -1
  263. package/web/.next/server/chunks/ssr/_5119a3df._.js +1 -1
  264. package/web/.next/server/chunks/ssr/_5119a3df._.js.map +1 -1
  265. package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
  266. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
  267. package/web/.next/server/chunks/ssr/_a5a5901d._.js +1 -1
  268. package/web/.next/server/chunks/ssr/_a5a5901d._.js.map +1 -1
  269. package/web/.next/server/chunks/ssr/_a963dd3c._.js +3 -0
  270. package/web/.next/server/chunks/ssr/_a963dd3c._.js.map +1 -0
  271. package/web/.next/server/chunks/ssr/_ad09f271._.js +1 -1
  272. package/web/.next/server/chunks/ssr/_ad09f271._.js.map +1 -1
  273. package/web/.next/server/chunks/ssr/_c3f595c6._.js +1 -1
  274. package/web/.next/server/chunks/ssr/_c3f595c6._.js.map +1 -1
  275. package/web/.next/server/chunks/ssr/{_0fd635d7._.js → _d50cde79._.js} +2 -2
  276. package/web/.next/server/chunks/ssr/_d50cde79._.js.map +1 -0
  277. package/web/.next/server/chunks/ssr/_df737cce._.js +1 -1
  278. package/web/.next/server/chunks/ssr/_e3f14907._.js +9 -0
  279. package/web/.next/server/chunks/ssr/_e3f14907._.js.map +1 -0
  280. package/web/.next/server/chunks/ssr/_ea9e1556._.js +1 -1
  281. package/web/.next/server/chunks/ssr/_ea9e1556._.js.map +1 -1
  282. package/web/.next/server/chunks/ssr/_f1ba9be6._.js +2 -2
  283. package/web/.next/server/chunks/ssr/_f1ba9be6._.js.map +1 -1
  284. package/web/.next/server/chunks/ssr/_f33cd07e._.js +2 -2
  285. package/web/.next/server/chunks/ssr/_f33cd07e._.js.map +1 -1
  286. package/web/.next/server/chunks/ssr/{_34d897da._.js → _f778f3ef._.js} +2 -2
  287. package/web/.next/server/chunks/ssr/{_34d897da._.js.map → _f778f3ef._.js.map} +1 -1
  288. package/web/.next/server/chunks/ssr/_f8b45233._.js +1 -1
  289. package/web/.next/server/chunks/ssr/_f8b45233._.js.map +1 -1
  290. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  291. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  292. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
  293. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js.map +1 -1
  294. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +1 -1
  295. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
  296. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js.map +1 -1
  297. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js +1 -1
  298. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js.map +1 -1
  299. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  300. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  301. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js +1 -1
  302. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js.map +1 -1
  303. package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js +1 -1
  304. package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js.map +1 -1
  305. package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js +1 -1
  306. package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js.map +1 -1
  307. package/web/.next/server/pages/500.html +2 -2
  308. package/web/.next/server/server-reference-manifest.js +1 -1
  309. package/web/.next/server/server-reference-manifest.json +202 -310
  310. package/web/.next/static/chunks/{9a78b4c5dcd28196.js → 02fe1303471793b9.js} +2 -2
  311. package/web/.next/static/chunks/0ce50b34df07306b.js +1 -0
  312. package/web/.next/static/chunks/18d4601f068c700d.js +1 -0
  313. package/web/.next/static/chunks/{52681a7f14138e48.js → 24dd6b3021c2d849.js} +1 -1
  314. package/web/.next/static/chunks/3d182168cdc4c15c.js +1 -0
  315. package/web/.next/static/chunks/{0769c695d6b663c7.js → 4383bcae769740e7.js} +1 -1
  316. package/web/.next/static/chunks/{5e20f692bbfcfb94.js → 4559a403ee40dd19.js} +1 -1
  317. package/web/.next/static/chunks/{e93ae5725b0babeb.js → 5983ef48d50d2d2a.js} +1 -1
  318. package/web/.next/static/chunks/{4219ddfde68a6d0b.js → 67a430796dea42a7.js} +1 -1
  319. package/web/.next/static/chunks/6ee5d45de67d3547.js +5 -0
  320. package/web/.next/static/chunks/{0f30a983f3467cd5.js → 9705f2a5695a4995.js} +1 -1
  321. package/web/.next/static/chunks/{d5bf9c963b5346e1.js → a80bbfca8ee3d79b.js} +1 -1
  322. package/web/.next/static/chunks/{37f9543560c58ea6.js → aa077ab14015a8fd.js} +1 -1
  323. package/web/.next/static/chunks/b14085e99b88e7f7.css +1 -0
  324. package/web/.next/static/chunks/b65e555419a0c664.js +1 -0
  325. package/web/.next/static/chunks/{478adf5d5156f002.js → b93a918712cd4987.js} +1 -1
  326. package/web/.next/static/chunks/{fc595d95626ac9bb.js → bb962a996814718a.js} +1 -1
  327. package/web/.next/static/chunks/{2a9af061f4fbe7f5.js → d5366257d6b9f855.js} +1 -1
  328. package/web/.next/static/chunks/{09a25231e5fc1ab8.js → eff45ffddd85918c.js} +1 -1
  329. package/apis/json-schema/FeatureMode.yaml +0 -8
  330. package/dist/packages/core/src/application/use-cases/features/promote/promote-exploration.use-case.d.ts +0 -40
  331. package/dist/packages/core/src/application/use-cases/features/promote/promote-exploration.use-case.d.ts.map +0 -1
  332. package/dist/packages/core/src/application/use-cases/features/promote/promote-exploration.use-case.js +0 -125
  333. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/051-replace-fast-with-mode.d.ts +0 -19
  334. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/051-replace-fast-with-mode.d.ts.map +0 -1
  335. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/051-replace-fast-with-mode.js +0 -46
  336. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/052-replace-default-fast-mode-with-default-mode.d.ts +0 -17
  337. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/052-replace-default-fast-mode-with-default-mode.d.ts.map +0 -1
  338. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/052-replace-default-fast-mode-with-default-mode.js +0 -37
  339. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.d.ts +0 -12
  340. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.d.ts.map +0 -1
  341. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.js +0 -17
  342. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.d.ts +0 -362
  343. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.d.ts.map +0 -1
  344. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.js +0 -72
  345. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.d.ts +0 -18
  346. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.d.ts.map +0 -1
  347. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.js +0 -52
  348. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.d.ts +0 -24
  349. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.d.ts.map +0 -1
  350. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.js +0 -38
  351. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.d.ts +0 -31
  352. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.d.ts.map +0 -1
  353. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.js +0 -240
  354. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prototype-generate.node.d.ts +0 -21
  355. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prototype-generate.node.d.ts.map +0 -1
  356. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prototype-generate.node.js +0 -134
  357. package/dist/src/presentation/cli/commands/feat/feedback.command.d.ts +0 -12
  358. package/dist/src/presentation/cli/commands/feat/feedback.command.d.ts.map +0 -1
  359. package/dist/src/presentation/cli/commands/feat/feedback.command.js +0 -64
  360. package/dist/src/presentation/cli/commands/feat/promote.command.d.ts +0 -13
  361. package/dist/src/presentation/cli/commands/feat/promote.command.d.ts.map +0 -1
  362. package/dist/src/presentation/cli/commands/feat/promote.command.js +0 -41
  363. package/dist/src/presentation/web/app/actions/discard-exploration.d.ts +0 -9
  364. package/dist/src/presentation/web/app/actions/discard-exploration.d.ts.map +0 -1
  365. package/dist/src/presentation/web/app/actions/discard-exploration.js +0 -29
  366. package/dist/src/presentation/web/app/actions/promote-exploration.d.ts +0 -11
  367. package/dist/src/presentation/web/app/actions/promote-exploration.d.ts.map +0 -1
  368. package/dist/src/presentation/web/app/actions/promote-exploration.js +0 -21
  369. package/dist/src/presentation/web/app/actions/submit-exploration-feedback.d.ts +0 -12
  370. package/dist/src/presentation/web/app/actions/submit-exploration-feedback.d.ts.map +0 -1
  371. package/dist/src/presentation/web/app/actions/submit-exploration-feedback.js +0 -40
  372. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.d.ts +0 -8
  373. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.d.ts.map +0 -1
  374. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.js +0 -33
  375. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.stories.d.ts +0 -10
  376. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.stories.d.ts.map +0 -1
  377. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.stories.js +0 -33
  378. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.d.ts +0 -11
  379. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.d.ts.map +0 -1
  380. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.js +0 -34
  381. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.stories.d.ts +0 -16
  382. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.stories.d.ts.map +0 -1
  383. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.stories.js +0 -70
  384. package/dist/src/presentation/web/components/ui/toggle-group.d.ts +0 -10
  385. package/dist/src/presentation/web/components/ui/toggle-group.d.ts.map +0 -1
  386. package/dist/src/presentation/web/components/ui/toggle-group.js +0 -22
  387. package/dist/src/presentation/web/components/ui/toggle.d.ts +0 -10
  388. package/dist/src/presentation/web/components/ui/toggle.d.ts.map +0 -1
  389. package/dist/src/presentation/web/components/ui/toggle.js +0 -26
  390. package/web/.next/server/chunks/ssr/[root-of-the-server]__03c66352._.js +0 -4
  391. package/web/.next/server/chunks/ssr/[root-of-the-server]__03c66352._.js.map +0 -1
  392. package/web/.next/server/chunks/ssr/[root-of-the-server]__403afc23._.js +0 -4
  393. package/web/.next/server/chunks/ssr/[root-of-the-server]__403afc23._.js.map +0 -1
  394. package/web/.next/server/chunks/ssr/[root-of-the-server]__df550e85._.js +0 -3
  395. package/web/.next/server/chunks/ssr/[root-of-the-server]__df550e85._.js.map +0 -1
  396. package/web/.next/server/chunks/ssr/[root-of-the-server]__df5602bf._.js +0 -4
  397. package/web/.next/server/chunks/ssr/[root-of-the-server]__df5602bf._.js.map +0 -1
  398. package/web/.next/server/chunks/ssr/[root-of-the-server]__e9f4767a._.js +0 -4
  399. package/web/.next/server/chunks/ssr/[root-of-the-server]__e9f4767a._.js.map +0 -1
  400. package/web/.next/server/chunks/ssr/_0fd635d7._.js.map +0 -1
  401. package/web/.next/server/chunks/ssr/_30ddea9d._.js +0 -9
  402. package/web/.next/server/chunks/ssr/_30ddea9d._.js.map +0 -1
  403. package/web/.next/server/chunks/ssr/_6e79a2cc._.js +0 -3
  404. package/web/.next/server/chunks/ssr/_6e79a2cc._.js.map +0 -1
  405. package/web/.next/server/chunks/ssr/_cac4abe6._.js.map +0 -1
  406. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_approve-feature_ts_9453ce8b._.js +0 -3
  407. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_approve-feature_ts_9453ce8b._.js.map +0 -1
  408. package/web/.next/static/chunks/2ceebcc839ee0d4b.js +0 -1
  409. package/web/.next/static/chunks/5743a9c1c63e5261.js +0 -5
  410. package/web/.next/static/chunks/5cf9745e2ef3837c.js +0 -1
  411. package/web/.next/static/chunks/c80e8e3d0cf5baa6.css +0 -1
  412. package/web/.next/static/chunks/d60cee2e7318f425.js +0 -1
  413. package/web/.next/static/chunks/da565c85277c2461.js +0 -1
  414. package/web/.next/static/chunks/fb89cf91c10b2e8b.js +0 -1
  415. /package/web/.next/static/{G895CgnbZl4YvWN_DaRC- → akDn2qFk1krSwrjt4345P}/_buildManifest.js +0 -0
  416. /package/web/.next/static/{G895CgnbZl4YvWN_DaRC- → akDn2qFk1krSwrjt4345P}/_clientMiddlewareManifest.json +0 -0
  417. /package/web/.next/static/{G895CgnbZl4YvWN_DaRC- → akDn2qFk1krSwrjt4345P}/_ssgManifest.js +0 -0
@@ -1,362 +0,0 @@
1
- /**
2
- * Exploration Agent Graph Factory
3
- *
4
- * Creates a LangGraph StateGraph for exploration/prototyping mode with
5
- * the topology:
6
- * START → prototype-generate → (interrupt for feedback)
7
- * → apply-feedback → prototype-generate (loop)
8
- * → END (on promote or discard)
9
- *
10
- * The graph uses the same FeatureAgentAnnotation state shape as the
11
- * full and fast graphs, enabling checkpointing, resume, and identical
12
- * worker lifecycle handling.
13
- *
14
- * Unlike the full SDLC graph which uses executeNode() with approval gates,
15
- * the exploration graph uses custom node functions with shared utilities
16
- * (retryExecute, createNodeLogger). The feedback loop is driven by
17
- * LangGraph interrupt/resume — the same mechanism used for approval gates.
18
- */
19
- import { type BaseCheckpointSaver } from '@langchain/langgraph';
20
- import type { IAgentExecutor } from '../../../../application/ports/output/agents/agent-executor.interface.js';
21
- import { type FeatureAgentState } from './state.js';
22
- export { FeatureAgentAnnotation, type FeatureAgentState } from './state.js';
23
- /**
24
- * Dependencies needed to build the exploration agent graph.
25
- * Intentionally minimal — exploration mode does not use merge nodes.
26
- */
27
- export interface ExplorationAgentGraphDeps {
28
- executor: IAgentExecutor;
29
- }
30
- /**
31
- * Routing function that determines the next node after prototype-generate
32
- * resumes from interrupt.
33
- *
34
- * The resume payload (set via Command({update})) controls the flow:
35
- * - _approvalAction === 'rejected' → apply-feedback (iterate with feedback)
36
- * - _approvalAction === 'approved' or any other → END (promote or discard)
37
- *
38
- * The 'rejected' action maps to the iterate flow because the existing
39
- * worker resume logic already sets _approvalAction='rejected' and
40
- * _rejectionFeedback=<text> for rejection payloads. For exploration,
41
- * "rejected" means "iterate with feedback" rather than "rejected for merge".
42
- */
43
- export declare function routeAfterPrototypeGenerate(state: FeatureAgentState): string;
44
- /**
45
- * Factory function that creates and compiles the exploration-mode agent graph.
46
- *
47
- * The graph defines a feedback loop:
48
- * START → prototype-generate → (interrupt) → route:
49
- * - iterate: → apply-feedback → prototype-generate (loop)
50
- * - promote/discard: → END
51
- *
52
- * @param depsOrExecutor - Graph dependencies or a legacy executor
53
- * @param checkpointer - Optional checkpoint saver for state persistence
54
- * @returns A compiled LangGraph ready to be invoked
55
- */
56
- export declare function createExplorationAgentGraph(depsOrExecutor: ExplorationAgentGraphDeps | IAgentExecutor, checkpointer?: BaseCheckpointSaver): import("@langchain/langgraph").CompiledStateGraph<{
57
- featureId: string;
58
- repositoryPath: string;
59
- specDir: string;
60
- worktreePath: string;
61
- currentNode: string;
62
- error: string | null;
63
- approvalGates: import("../../../../domain/index.js").ApprovalGates | undefined;
64
- model: string | undefined;
65
- messages: string[];
66
- validationRetries: number;
67
- lastValidationTarget: string;
68
- lastValidationErrors: string[];
69
- _approvalAction: string | null;
70
- _rejectionFeedback: string | null;
71
- _needsReexecution: boolean;
72
- prUrl: string | null;
73
- prNumber: number | null;
74
- commitHash: string | null;
75
- ciStatus: string | null;
76
- push: boolean;
77
- openPr: boolean;
78
- forkAndPr: boolean;
79
- commitSpecs: boolean;
80
- ciWatchEnabled: boolean;
81
- enableEvidence: boolean;
82
- commitEvidence: boolean;
83
- evidence: import("../../../../domain/index.js").Evidence[];
84
- evidenceRetries: number;
85
- resumeReason: string | undefined;
86
- ciFixAttempts: number;
87
- ciFixHistory: import("../../../../domain/index.js").CiFixRecord[];
88
- ciFixStatus: "success" | "timeout" | "idle" | "watching" | "fixing" | "exhausted";
89
- iterationCount: number;
90
- maxIterations: number;
91
- feedbackHistory: string[];
92
- explorationStatus: "generating" | "waiting-feedback" | "applying-feedback" | "promoting" | "discarding" | undefined;
93
- }, {
94
- featureId?: string | undefined;
95
- repositoryPath?: string | undefined;
96
- specDir?: string | undefined;
97
- worktreePath?: string | undefined;
98
- currentNode?: string | undefined;
99
- error?: string | null | undefined;
100
- approvalGates?: import("../../../../domain/index.js").ApprovalGates | undefined;
101
- model?: string | undefined;
102
- messages?: string[] | undefined;
103
- validationRetries?: number | undefined;
104
- lastValidationTarget?: string | undefined;
105
- lastValidationErrors?: string[] | undefined;
106
- _approvalAction?: string | null | undefined;
107
- _rejectionFeedback?: string | null | undefined;
108
- _needsReexecution?: boolean | undefined;
109
- prUrl?: string | null | undefined;
110
- prNumber?: number | null | undefined;
111
- commitHash?: string | null | undefined;
112
- ciStatus?: string | null | undefined;
113
- push?: boolean | undefined;
114
- openPr?: boolean | undefined;
115
- forkAndPr?: boolean | undefined;
116
- commitSpecs?: boolean | undefined;
117
- ciWatchEnabled?: boolean | undefined;
118
- enableEvidence?: boolean | undefined;
119
- commitEvidence?: boolean | undefined;
120
- evidence?: import("../../../../domain/index.js").Evidence[] | undefined;
121
- evidenceRetries?: number | undefined;
122
- resumeReason?: string | undefined;
123
- ciFixAttempts?: number | undefined;
124
- ciFixHistory?: import("../../../../domain/index.js").CiFixRecord[] | undefined;
125
- ciFixStatus?: "success" | "timeout" | "idle" | "watching" | "fixing" | "exhausted" | undefined;
126
- iterationCount?: number | undefined;
127
- maxIterations?: number | undefined;
128
- feedbackHistory?: string[] | undefined;
129
- explorationStatus?: "generating" | "waiting-feedback" | "applying-feedback" | "promoting" | "discarding" | undefined;
130
- }, "__start__" | "prototype-generate" | "apply-feedback", {
131
- featureId: {
132
- (): import("@langchain/langgraph").LastValue<string>;
133
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
134
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
135
- };
136
- repositoryPath: {
137
- (): import("@langchain/langgraph").LastValue<string>;
138
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
139
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
140
- };
141
- specDir: {
142
- (): import("@langchain/langgraph").LastValue<string>;
143
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
144
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
145
- };
146
- worktreePath: {
147
- (): import("@langchain/langgraph").LastValue<string>;
148
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
149
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
150
- };
151
- currentNode: {
152
- (): import("@langchain/langgraph").LastValue<string>;
153
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
154
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
155
- };
156
- error: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
157
- approvalGates: import("@langchain/langgraph").BinaryOperatorAggregate<import("../../../../domain/index.js").ApprovalGates | undefined, import("../../../../domain/index.js").ApprovalGates | undefined>;
158
- model: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
159
- messages: import("@langchain/langgraph").BinaryOperatorAggregate<string[], string[]>;
160
- validationRetries: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
161
- lastValidationTarget: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
162
- lastValidationErrors: import("@langchain/langgraph").BinaryOperatorAggregate<string[], string[]>;
163
- _approvalAction: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
164
- _rejectionFeedback: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
165
- _needsReexecution: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
166
- prUrl: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
167
- prNumber: import("@langchain/langgraph").BinaryOperatorAggregate<number | null, number | null>;
168
- commitHash: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
169
- ciStatus: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
170
- push: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
171
- openPr: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
172
- forkAndPr: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
173
- commitSpecs: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
174
- ciWatchEnabled: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
175
- enableEvidence: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
176
- commitEvidence: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
177
- evidence: import("@langchain/langgraph").BinaryOperatorAggregate<import("../../../../domain/index.js").Evidence[], import("../../../../domain/index.js").Evidence[]>;
178
- evidenceRetries: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
179
- resumeReason: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
180
- ciFixAttempts: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
181
- ciFixHistory: import("@langchain/langgraph").BinaryOperatorAggregate<import("../../../../domain/index.js").CiFixRecord[], import("../../../../domain/index.js").CiFixRecord[]>;
182
- ciFixStatus: import("@langchain/langgraph").BinaryOperatorAggregate<"success" | "timeout" | "idle" | "watching" | "fixing" | "exhausted", "success" | "timeout" | "idle" | "watching" | "fixing" | "exhausted">;
183
- iterationCount: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
184
- maxIterations: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
185
- feedbackHistory: import("@langchain/langgraph").BinaryOperatorAggregate<string[], string[]>;
186
- explorationStatus: import("@langchain/langgraph").BinaryOperatorAggregate<"generating" | "waiting-feedback" | "applying-feedback" | "promoting" | "discarding" | undefined, "generating" | "waiting-feedback" | "applying-feedback" | "promoting" | "discarding" | undefined>;
187
- }, {
188
- featureId: {
189
- (): import("@langchain/langgraph").LastValue<string>;
190
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
191
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
192
- };
193
- repositoryPath: {
194
- (): import("@langchain/langgraph").LastValue<string>;
195
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
196
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
197
- };
198
- specDir: {
199
- (): import("@langchain/langgraph").LastValue<string>;
200
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
201
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
202
- };
203
- worktreePath: {
204
- (): import("@langchain/langgraph").LastValue<string>;
205
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
206
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
207
- };
208
- currentNode: {
209
- (): import("@langchain/langgraph").LastValue<string>;
210
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
211
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
212
- };
213
- error: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
214
- approvalGates: import("@langchain/langgraph").BinaryOperatorAggregate<import("../../../../domain/index.js").ApprovalGates | undefined, import("../../../../domain/index.js").ApprovalGates | undefined>;
215
- model: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
216
- messages: import("@langchain/langgraph").BinaryOperatorAggregate<string[], string[]>;
217
- validationRetries: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
218
- lastValidationTarget: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
219
- lastValidationErrors: import("@langchain/langgraph").BinaryOperatorAggregate<string[], string[]>;
220
- _approvalAction: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
221
- _rejectionFeedback: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
222
- _needsReexecution: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
223
- prUrl: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
224
- prNumber: import("@langchain/langgraph").BinaryOperatorAggregate<number | null, number | null>;
225
- commitHash: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
226
- ciStatus: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
227
- push: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
228
- openPr: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
229
- forkAndPr: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
230
- commitSpecs: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
231
- ciWatchEnabled: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
232
- enableEvidence: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
233
- commitEvidence: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
234
- evidence: import("@langchain/langgraph").BinaryOperatorAggregate<import("../../../../domain/index.js").Evidence[], import("../../../../domain/index.js").Evidence[]>;
235
- evidenceRetries: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
236
- resumeReason: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
237
- ciFixAttempts: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
238
- ciFixHistory: import("@langchain/langgraph").BinaryOperatorAggregate<import("../../../../domain/index.js").CiFixRecord[], import("../../../../domain/index.js").CiFixRecord[]>;
239
- ciFixStatus: import("@langchain/langgraph").BinaryOperatorAggregate<"success" | "timeout" | "idle" | "watching" | "fixing" | "exhausted", "success" | "timeout" | "idle" | "watching" | "fixing" | "exhausted">;
240
- iterationCount: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
241
- maxIterations: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
242
- feedbackHistory: import("@langchain/langgraph").BinaryOperatorAggregate<string[], string[]>;
243
- explorationStatus: import("@langchain/langgraph").BinaryOperatorAggregate<"generating" | "waiting-feedback" | "applying-feedback" | "promoting" | "discarding" | undefined, "generating" | "waiting-feedback" | "applying-feedback" | "promoting" | "discarding" | undefined>;
244
- }, import("@langchain/langgraph").StateDefinition, {
245
- "prototype-generate": Partial<import("@langchain/langgraph").StateType<{
246
- featureId: {
247
- (): import("@langchain/langgraph").LastValue<string>;
248
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
249
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
250
- };
251
- repositoryPath: {
252
- (): import("@langchain/langgraph").LastValue<string>;
253
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
254
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
255
- };
256
- specDir: {
257
- (): import("@langchain/langgraph").LastValue<string>;
258
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
259
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
260
- };
261
- worktreePath: {
262
- (): import("@langchain/langgraph").LastValue<string>;
263
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
264
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
265
- };
266
- currentNode: {
267
- (): import("@langchain/langgraph").LastValue<string>;
268
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
269
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
270
- };
271
- error: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
272
- approvalGates: import("@langchain/langgraph").BinaryOperatorAggregate<import("../../../../domain/index.js").ApprovalGates | undefined, import("../../../../domain/index.js").ApprovalGates | undefined>;
273
- model: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
274
- messages: import("@langchain/langgraph").BinaryOperatorAggregate<string[], string[]>;
275
- validationRetries: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
276
- lastValidationTarget: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
277
- lastValidationErrors: import("@langchain/langgraph").BinaryOperatorAggregate<string[], string[]>;
278
- _approvalAction: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
279
- _rejectionFeedback: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
280
- _needsReexecution: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
281
- prUrl: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
282
- prNumber: import("@langchain/langgraph").BinaryOperatorAggregate<number | null, number | null>;
283
- commitHash: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
284
- ciStatus: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
285
- push: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
286
- openPr: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
287
- forkAndPr: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
288
- commitSpecs: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
289
- ciWatchEnabled: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
290
- enableEvidence: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
291
- commitEvidence: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
292
- evidence: import("@langchain/langgraph").BinaryOperatorAggregate<import("../../../../domain/index.js").Evidence[], import("../../../../domain/index.js").Evidence[]>;
293
- evidenceRetries: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
294
- resumeReason: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
295
- ciFixAttempts: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
296
- ciFixHistory: import("@langchain/langgraph").BinaryOperatorAggregate<import("../../../../domain/index.js").CiFixRecord[], import("../../../../domain/index.js").CiFixRecord[]>;
297
- ciFixStatus: import("@langchain/langgraph").BinaryOperatorAggregate<"success" | "timeout" | "idle" | "watching" | "fixing" | "exhausted", "success" | "timeout" | "idle" | "watching" | "fixing" | "exhausted">;
298
- iterationCount: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
299
- maxIterations: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
300
- feedbackHistory: import("@langchain/langgraph").BinaryOperatorAggregate<string[], string[]>;
301
- explorationStatus: import("@langchain/langgraph").BinaryOperatorAggregate<"generating" | "waiting-feedback" | "applying-feedback" | "promoting" | "discarding" | undefined, "generating" | "waiting-feedback" | "applying-feedback" | "promoting" | "discarding" | undefined>;
302
- }>>;
303
- "apply-feedback": Partial<import("@langchain/langgraph").StateType<{
304
- featureId: {
305
- (): import("@langchain/langgraph").LastValue<string>;
306
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
307
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
308
- };
309
- repositoryPath: {
310
- (): import("@langchain/langgraph").LastValue<string>;
311
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
312
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
313
- };
314
- specDir: {
315
- (): import("@langchain/langgraph").LastValue<string>;
316
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
317
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
318
- };
319
- worktreePath: {
320
- (): import("@langchain/langgraph").LastValue<string>;
321
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
322
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
323
- };
324
- currentNode: {
325
- (): import("@langchain/langgraph").LastValue<string>;
326
- (annotation: import("@langchain/langgraph").SingleReducer<string, string>): import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
327
- Root: <S extends import("@langchain/langgraph").StateDefinition>(sd: S) => import("@langchain/langgraph").AnnotationRoot<S>;
328
- };
329
- error: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
330
- approvalGates: import("@langchain/langgraph").BinaryOperatorAggregate<import("../../../../domain/index.js").ApprovalGates | undefined, import("../../../../domain/index.js").ApprovalGates | undefined>;
331
- model: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
332
- messages: import("@langchain/langgraph").BinaryOperatorAggregate<string[], string[]>;
333
- validationRetries: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
334
- lastValidationTarget: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
335
- lastValidationErrors: import("@langchain/langgraph").BinaryOperatorAggregate<string[], string[]>;
336
- _approvalAction: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
337
- _rejectionFeedback: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
338
- _needsReexecution: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
339
- prUrl: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
340
- prNumber: import("@langchain/langgraph").BinaryOperatorAggregate<number | null, number | null>;
341
- commitHash: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
342
- ciStatus: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
343
- push: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
344
- openPr: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
345
- forkAndPr: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
346
- commitSpecs: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
347
- ciWatchEnabled: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
348
- enableEvidence: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
349
- commitEvidence: import("@langchain/langgraph").BinaryOperatorAggregate<boolean, boolean>;
350
- evidence: import("@langchain/langgraph").BinaryOperatorAggregate<import("../../../../domain/index.js").Evidence[], import("../../../../domain/index.js").Evidence[]>;
351
- evidenceRetries: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
352
- resumeReason: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
353
- ciFixAttempts: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
354
- ciFixHistory: import("@langchain/langgraph").BinaryOperatorAggregate<import("../../../../domain/index.js").CiFixRecord[], import("../../../../domain/index.js").CiFixRecord[]>;
355
- ciFixStatus: import("@langchain/langgraph").BinaryOperatorAggregate<"success" | "timeout" | "idle" | "watching" | "fixing" | "exhausted", "success" | "timeout" | "idle" | "watching" | "fixing" | "exhausted">;
356
- iterationCount: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
357
- maxIterations: import("@langchain/langgraph").BinaryOperatorAggregate<number, number>;
358
- feedbackHistory: import("@langchain/langgraph").BinaryOperatorAggregate<string[], string[]>;
359
- explorationStatus: import("@langchain/langgraph").BinaryOperatorAggregate<"generating" | "waiting-feedback" | "applying-feedback" | "promoting" | "discarding" | undefined, "generating" | "waiting-feedback" | "applying-feedback" | "promoting" | "discarding" | undefined>;
360
- }>>;
361
- }, unknown, unknown>;
362
- //# sourceMappingURL=exploration-agent-graph.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"exploration-agent-graph.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAqB,KAAK,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+DAA+D,CAAC;AACpG,OAAO,EAA0B,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAK5E,OAAO,EAAE,sBAAsB,EAAE,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE5E;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAO5E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CACzC,cAAc,EAAE,yBAAyB,GAAG,cAAc,EAC1D,YAAY,CAAC,EAAE,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAqBnC"}
@@ -1,72 +0,0 @@
1
- /**
2
- * Exploration Agent Graph Factory
3
- *
4
- * Creates a LangGraph StateGraph for exploration/prototyping mode with
5
- * the topology:
6
- * START → prototype-generate → (interrupt for feedback)
7
- * → apply-feedback → prototype-generate (loop)
8
- * → END (on promote or discard)
9
- *
10
- * The graph uses the same FeatureAgentAnnotation state shape as the
11
- * full and fast graphs, enabling checkpointing, resume, and identical
12
- * worker lifecycle handling.
13
- *
14
- * Unlike the full SDLC graph which uses executeNode() with approval gates,
15
- * the exploration graph uses custom node functions with shared utilities
16
- * (retryExecute, createNodeLogger). The feedback loop is driven by
17
- * LangGraph interrupt/resume — the same mechanism used for approval gates.
18
- */
19
- import { StateGraph, START } from '@langchain/langgraph';
20
- import { FeatureAgentAnnotation } from './state.js';
21
- import { createPrototypeGenerateNode } from './nodes/prototype-generate.node.js';
22
- import { createApplyFeedbackNode } from './nodes/apply-feedback.node.js';
23
- // Re-export for consumers
24
- export { FeatureAgentAnnotation } from './state.js';
25
- /**
26
- * Routing function that determines the next node after prototype-generate
27
- * resumes from interrupt.
28
- *
29
- * The resume payload (set via Command({update})) controls the flow:
30
- * - _approvalAction === 'rejected' → apply-feedback (iterate with feedback)
31
- * - _approvalAction === 'approved' or any other → END (promote or discard)
32
- *
33
- * The 'rejected' action maps to the iterate flow because the existing
34
- * worker resume logic already sets _approvalAction='rejected' and
35
- * _rejectionFeedback=<text> for rejection payloads. For exploration,
36
- * "rejected" means "iterate with feedback" rather than "rejected for merge".
37
- */
38
- export function routeAfterPrototypeGenerate(state) {
39
- // If the user provided feedback (rejection = iterate in exploration context)
40
- if (state._approvalAction === 'rejected') {
41
- return 'apply-feedback';
42
- }
43
- // Otherwise: approved = promote/discard = exit the loop
44
- return '__end__';
45
- }
46
- /**
47
- * Factory function that creates and compiles the exploration-mode agent graph.
48
- *
49
- * The graph defines a feedback loop:
50
- * START → prototype-generate → (interrupt) → route:
51
- * - iterate: → apply-feedback → prototype-generate (loop)
52
- * - promote/discard: → END
53
- *
54
- * @param depsOrExecutor - Graph dependencies or a legacy executor
55
- * @param checkpointer - Optional checkpoint saver for state persistence
56
- * @returns A compiled LangGraph ready to be invoked
57
- */
58
- export function createExplorationAgentGraph(depsOrExecutor, checkpointer) {
59
- // Support legacy signature: createExplorationAgentGraph(executor, checkpointer)
60
- const deps = 'execute' in depsOrExecutor ? { executor: depsOrExecutor } : depsOrExecutor;
61
- const { executor } = deps;
62
- const graph = new StateGraph(FeatureAgentAnnotation)
63
- .addNode('prototype-generate', createPrototypeGenerateNode(executor))
64
- .addNode('apply-feedback', createApplyFeedbackNode());
65
- // START → prototype-generate
66
- graph.addEdge(START, 'prototype-generate');
67
- // prototype-generate → conditional routing (after resume from interrupt)
68
- graph.addConditionalEdges('prototype-generate', routeAfterPrototypeGenerate);
69
- // apply-feedback → prototype-generate (loop back)
70
- graph.addEdge('apply-feedback', 'prototype-generate');
71
- return graph.compile({ checkpointer });
72
- }
@@ -1,18 +0,0 @@
1
- /**
2
- * Apply-Feedback Node
3
- *
4
- * Exploration mode state-transformation node that receives user feedback
5
- * from the resume payload, appends it to feedbackHistory, and prepares
6
- * context for the next prototype-generate iteration.
7
- *
8
- * This node does NOT call the agent executor — it is a pure state
9
- * transformation that processes the feedback and returns updated state.
10
- */
11
- import type { FeatureAgentState } from '../state.js';
12
- /**
13
- * Factory that creates the apply-feedback node function.
14
- *
15
- * @returns A LangGraph node function
16
- */
17
- export declare function createApplyFeedbackNode(): (state: FeatureAgentState) => Promise<Partial<FeatureAgentState>>;
18
- //# sourceMappingURL=apply-feedback.node.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"apply-feedback.node.d.ts","sourceRoot":"","sources":["../../../../../../../../../packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAKrD;;;;GAIG;AACH,wBAAgB,uBAAuB,KAGvB,OAAO,iBAAiB,KAAG,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAkC7E"}
@@ -1,52 +0,0 @@
1
- /**
2
- * Apply-Feedback Node
3
- *
4
- * Exploration mode state-transformation node that receives user feedback
5
- * from the resume payload, appends it to feedbackHistory, and prepares
6
- * context for the next prototype-generate iteration.
7
- *
8
- * This node does NOT call the agent executor — it is a pure state
9
- * transformation that processes the feedback and returns updated state.
10
- */
11
- import { createNodeLogger } from './node-helpers.js';
12
- import { reportNodeStart } from '../heartbeat.js';
13
- import { buildApplyFeedbackContext } from './prompts/apply-feedback.prompt.js';
14
- /**
15
- * Factory that creates the apply-feedback node function.
16
- *
17
- * @returns A LangGraph node function
18
- */
19
- export function createApplyFeedbackNode() {
20
- const log = createNodeLogger('apply-feedback');
21
- return async (state) => {
22
- log.activate();
23
- log.info('Processing user feedback');
24
- reportNodeStart('apply-feedback');
25
- // Extract feedback from the resume state.
26
- // The worker sets _rejectionFeedback from the resume payload,
27
- // or the feedback may come through a dedicated exploration channel.
28
- const feedback = state._rejectionFeedback ?? '';
29
- const iterationCount = state.iterationCount ?? 0;
30
- if (!feedback || feedback.trim().length === 0) {
31
- log.info('No feedback text provided — proceeding with empty feedback');
32
- }
33
- else {
34
- log.info(`Feedback received (${feedback.length} chars) for iteration ${iterationCount}`);
35
- }
36
- // Build context summary for logging
37
- const contextSummary = buildApplyFeedbackContext(state, feedback);
38
- log.info(`Context prepared for next iteration`);
39
- return {
40
- currentNode: 'apply-feedback',
41
- explorationStatus: 'applying-feedback',
42
- feedbackHistory: [feedback],
43
- // Clear the rejection feedback after consuming it
44
- _rejectionFeedback: null,
45
- _approvalAction: null,
46
- messages: [
47
- `[apply-feedback] Feedback applied for iteration ${iterationCount + 1}: "${feedback.slice(0, 100)}${feedback.length > 100 ? '...' : ''}"`,
48
- `[apply-feedback] Context: ${contextSummary.slice(0, 200)}`,
49
- ],
50
- };
51
- };
52
- }
@@ -1,24 +0,0 @@
1
- /**
2
- * Apply-Feedback Prompt Builder
3
- *
4
- * Builds a context summary for the apply-feedback node. This is used
5
- * internally by the graph to prepare context for the next
6
- * prototype-generate iteration — it does NOT call the executor.
7
- *
8
- * The prompt text produced here serves as a structured summary of
9
- * the current feedback and iteration context that the apply-feedback
10
- * node stores in state for the next prototype-generate node to consume.
11
- */
12
- import type { FeatureAgentState } from '../../state.js';
13
- /**
14
- * Build a context summary for the apply-feedback state transformation.
15
- *
16
- * Includes:
17
- * 1. Current feedback text
18
- * 2. Iteration count
19
- * 3. Summary of prior feedback history
20
- *
21
- * This is stored in graph state, not sent to an executor.
22
- */
23
- export declare function buildApplyFeedbackContext(state: FeatureAgentState, currentFeedback: string): string;
24
- //# sourceMappingURL=apply-feedback.prompt.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"apply-feedback.prompt.d.ts","sourceRoot":"","sources":["../../../../../../../../../../packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,iBAAiB,EACxB,eAAe,EAAE,MAAM,GACtB,MAAM,CAoBR"}
@@ -1,38 +0,0 @@
1
- /**
2
- * Apply-Feedback Prompt Builder
3
- *
4
- * Builds a context summary for the apply-feedback node. This is used
5
- * internally by the graph to prepare context for the next
6
- * prototype-generate iteration — it does NOT call the executor.
7
- *
8
- * The prompt text produced here serves as a structured summary of
9
- * the current feedback and iteration context that the apply-feedback
10
- * node stores in state for the next prototype-generate node to consume.
11
- */
12
- /**
13
- * Build a context summary for the apply-feedback state transformation.
14
- *
15
- * Includes:
16
- * 1. Current feedback text
17
- * 2. Iteration count
18
- * 3. Summary of prior feedback history
19
- *
20
- * This is stored in graph state, not sent to an executor.
21
- */
22
- export function buildApplyFeedbackContext(state, currentFeedback) {
23
- const iterationCount = state.iterationCount ?? 0;
24
- const feedbackHistory = state.feedbackHistory ?? [];
25
- const sections = [];
26
- sections.push(`## Feedback Applied — Iteration ${iterationCount + 1}`);
27
- sections.push(`**Current feedback:** ${currentFeedback}`);
28
- if (feedbackHistory.length > 0) {
29
- sections.push(`**Prior feedback rounds:** ${feedbackHistory.length}`);
30
- const recentPrior = feedbackHistory.slice(-3);
31
- const startIdx = feedbackHistory.length - recentPrior.length;
32
- recentPrior.forEach((fb, i) => {
33
- const summary = fb.length > 80 ? `${fb.slice(0, 80)}...` : fb;
34
- sections.push(`- Iteration ${startIdx + i + 1}: ${summary}`);
35
- });
36
- }
37
- return sections.join('\n');
38
- }
@@ -1,31 +0,0 @@
1
- /**
2
- * Prototype-Generate Prompt Builder
3
- *
4
- * Builds the prompt for exploration mode prototype generation.
5
- * Emphasizes quick prototyping, minimal scope, and throwaway quality.
6
- * Includes iteration context (feedback history) for subsequent rounds.
7
- *
8
- * The prompt instructs the executor to produce a working prototype that
9
- * demonstrates the idea — prioritizing concept demonstration over
10
- * production quality.
11
- */
12
- import type { FeatureAgentState } from '../../state.js';
13
- /**
14
- * Build a feedback history section for the prompt.
15
- * Recent feedback (last 3) gets full detail; older entries are summarized.
16
- */
17
- export declare function buildFeedbackHistorySection(feedbackHistory: string[]): string;
18
- /**
19
- * Build the prototype-generate prompt.
20
- *
21
- * The prompt includes:
22
- * 1. Exploration mode instructions (speed over quality)
23
- * 2. User's idea/query
24
- * 3. Iteration context (feedback history from prior rounds)
25
- * 4. CLAUDE.md content (if exists)
26
- * 5. Shallow directory listing
27
- *
28
- * Instructs the executor to produce a quick, working prototype.
29
- */
30
- export declare function buildPrototypeGeneratePrompt(state: FeatureAgentState): string;
31
- //# sourceMappingURL=prototype-generate.prompt.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prototype-generate.prompt.d.ts","sourceRoot":"","sources":["../../../../../../../../../../packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAgHxD;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM,CAwB7E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAsF7E"}