@shepai/cli 1.169.1 → 1.170.0-pr513.cff27cb

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 (546) hide show
  1. package/apis/json-schema/Feature.yaml +27 -5
  2. package/apis/json-schema/FeatureMode.yaml +8 -0
  3. package/apis/json-schema/SdlcLifecycle.yaml +1 -0
  4. package/apis/json-schema/SkillInjectionConfig.yaml +17 -0
  5. package/apis/json-schema/SkillSource.yaml +21 -0
  6. package/apis/json-schema/SkillSourceType.yaml +7 -0
  7. package/apis/json-schema/WorkflowConfig.yaml +13 -5
  8. package/dist/packages/core/src/application/ports/output/agents/feature-agent-process.interface.d.ts +2 -2
  9. package/dist/packages/core/src/application/ports/output/agents/feature-agent-process.interface.d.ts.map +1 -1
  10. package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts +8 -0
  11. package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts.map +1 -1
  12. package/dist/packages/core/src/application/ports/output/services/index.d.ts +1 -0
  13. package/dist/packages/core/src/application/ports/output/services/index.d.ts.map +1 -1
  14. package/dist/packages/core/src/application/ports/output/services/skill-injector.interface.d.ts +39 -0
  15. package/dist/packages/core/src/application/ports/output/services/skill-injector.interface.d.ts.map +1 -0
  16. package/dist/packages/core/src/application/ports/output/services/skill-injector.interface.js +8 -0
  17. package/dist/packages/core/src/application/ports/output/services/spec-initializer.interface.d.ts +4 -3
  18. package/dist/packages/core/src/application/ports/output/services/spec-initializer.interface.d.ts.map +1 -1
  19. package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.js +2 -2
  20. package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.js +2 -2
  21. package/dist/packages/core/src/application/use-cases/features/adopt-branch.use-case.d.ts.map +1 -1
  22. package/dist/packages/core/src/application/use-cases/features/adopt-branch.use-case.js +4 -2
  23. package/dist/packages/core/src/application/use-cases/features/check-and-unblock-features.use-case.js +2 -2
  24. package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.d.ts +3 -1
  25. package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.d.ts.map +1 -1
  26. package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.js +40 -10
  27. package/dist/packages/core/src/application/use-cases/features/create/types.d.ts +5 -2
  28. package/dist/packages/core/src/application/use-cases/features/create/types.d.ts.map +1 -1
  29. package/dist/packages/core/src/application/use-cases/features/delete-feature.use-case.d.ts.map +1 -1
  30. package/dist/packages/core/src/application/use-cases/features/delete-feature.use-case.js +13 -0
  31. package/dist/packages/core/src/application/use-cases/features/promote/promote-exploration.use-case.d.ts +40 -0
  32. package/dist/packages/core/src/application/use-cases/features/promote/promote-exploration.use-case.d.ts.map +1 -0
  33. package/dist/packages/core/src/application/use-cases/features/promote/promote-exploration.use-case.js +125 -0
  34. package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.d.ts.map +1 -1
  35. package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.js +23 -2
  36. package/dist/packages/core/src/application/use-cases/features/resume-feature.use-case.js +2 -2
  37. package/dist/packages/core/src/application/use-cases/features/start-feature.use-case.d.ts.map +1 -1
  38. package/dist/packages/core/src/application/use-cases/features/start-feature.use-case.js +5 -3
  39. package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
  40. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +57 -2
  41. package/dist/packages/core/src/domain/generated/output.d.ts +72 -4
  42. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  43. package/dist/packages/core/src/domain/generated/output.js +12 -0
  44. package/dist/packages/core/src/domain/lifecycle-gates.d.ts +21 -6
  45. package/dist/packages/core/src/domain/lifecycle-gates.d.ts.map +1 -1
  46. package/dist/packages/core/src/domain/lifecycle-gates.js +25 -6
  47. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  48. package/dist/packages/core/src/infrastructure/di/container.js +7 -0
  49. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.d.ts +5 -1
  50. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.d.ts.map +1 -1
  51. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.js +16 -4
  52. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +4 -1
  53. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  54. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +34 -2
  55. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/051-replace-fast-with-mode.d.ts +19 -0
  56. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/051-replace-fast-with-mode.d.ts.map +1 -0
  57. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/051-replace-fast-with-mode.js +46 -0
  58. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/052-replace-default-fast-mode-with-default-mode.d.ts +17 -0
  59. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/052-replace-default-fast-mode-with-default-mode.d.ts.map +1 -0
  60. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/052-replace-default-fast-mode-with-default-mode.js +37 -0
  61. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.d.ts +12 -0
  62. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.d.ts.map +1 -0
  63. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.js +17 -0
  64. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-skill-injection-config.d.ts +15 -0
  65. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-skill-injection-config.d.ts.map +1 -0
  66. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-skill-injection-config.js +23 -0
  67. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/054-add-injected-skills-to-features.d.ts +11 -0
  68. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/054-add-injected-skills-to-features.d.ts.map +1 -0
  69. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/054-add-injected-skills-to-features.js +19 -0
  70. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.d.ts.map +1 -1
  71. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.js +13 -7
  72. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +3 -3
  73. package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.prompt.d.ts +21 -0
  74. package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.prompt.d.ts.map +1 -1
  75. package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.prompt.js +61 -0
  76. package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.d.ts +16 -0
  77. package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.d.ts.map +1 -1
  78. package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.js +47 -4
  79. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.d.ts +362 -0
  80. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.d.ts.map +1 -0
  81. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.js +72 -0
  82. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts +20 -0
  83. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts.map +1 -1
  84. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts +68 -0
  85. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts.map +1 -1
  86. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.d.ts +2 -2
  87. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.d.ts.map +1 -1
  88. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.js +3 -3
  89. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts +2 -2
  90. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts.map +1 -1
  91. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.js +19 -8
  92. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/lifecycle-context.d.ts.map +1 -1
  93. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/lifecycle-context.js +1 -0
  94. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.d.ts +18 -0
  95. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.d.ts.map +1 -0
  96. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.js +52 -0
  97. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/merge.node.d.ts.map +1 -1
  98. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/merge.node.js +39 -20
  99. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.d.ts.map +1 -1
  100. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.js +1 -0
  101. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.d.ts +24 -0
  102. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.d.ts.map +1 -0
  103. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.js +38 -0
  104. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.d.ts +31 -0
  105. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.d.ts.map +1 -0
  106. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.js +240 -0
  107. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prototype-generate.node.d.ts +21 -0
  108. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prototype-generate.node.d.ts.map +1 -0
  109. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prototype-generate.node.js +134 -0
  110. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts +4 -0
  111. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts.map +1 -1
  112. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.js +17 -0
  113. package/dist/packages/core/src/infrastructure/services/git/git-fork.service.d.ts +5 -0
  114. package/dist/packages/core/src/infrastructure/services/git/git-fork.service.d.ts.map +1 -1
  115. package/dist/packages/core/src/infrastructure/services/git/git-fork.service.js +34 -0
  116. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts +1 -0
  117. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts.map +1 -1
  118. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.js +8 -0
  119. package/dist/packages/core/src/infrastructure/services/skill-injector.service.d.ts +26 -0
  120. package/dist/packages/core/src/infrastructure/services/skill-injector.service.d.ts.map +1 -0
  121. package/dist/packages/core/src/infrastructure/services/skill-injector.service.js +201 -0
  122. package/dist/packages/core/src/infrastructure/services/spec/spec-initializer.service.d.ts +1 -1
  123. package/dist/packages/core/src/infrastructure/services/spec/spec-initializer.service.d.ts.map +1 -1
  124. package/dist/packages/core/src/infrastructure/services/spec/spec-initializer.service.js +7 -4
  125. package/dist/src/presentation/cli/commands/feat/feedback.command.d.ts +12 -0
  126. package/dist/src/presentation/cli/commands/feat/feedback.command.d.ts.map +1 -0
  127. package/dist/src/presentation/cli/commands/feat/feedback.command.js +64 -0
  128. package/dist/src/presentation/cli/commands/feat/index.d.ts.map +1 -1
  129. package/dist/src/presentation/cli/commands/feat/index.js +5 -1
  130. package/dist/src/presentation/cli/commands/feat/new.command.d.ts.map +1 -1
  131. package/dist/src/presentation/cli/commands/feat/new.command.js +21 -5
  132. package/dist/src/presentation/cli/commands/feat/promote.command.d.ts +13 -0
  133. package/dist/src/presentation/cli/commands/feat/promote.command.d.ts.map +1 -0
  134. package/dist/src/presentation/cli/commands/feat/promote.command.js +41 -0
  135. package/dist/src/presentation/web/app/actions/add-injected-skill.d.ts +7 -0
  136. package/dist/src/presentation/web/app/actions/add-injected-skill.d.ts.map +1 -0
  137. package/dist/src/presentation/web/app/actions/add-injected-skill.js +34 -0
  138. package/dist/src/presentation/web/app/actions/create-feature.d.ts +5 -2
  139. package/dist/src/presentation/web/app/actions/create-feature.d.ts.map +1 -1
  140. package/dist/src/presentation/web/app/actions/create-feature.js +5 -3
  141. package/dist/src/presentation/web/app/actions/discard-exploration.d.ts +9 -0
  142. package/dist/src/presentation/web/app/actions/discard-exploration.d.ts.map +1 -0
  143. package/dist/src/presentation/web/app/actions/discard-exploration.js +29 -0
  144. package/dist/src/presentation/web/app/actions/get-workflow-defaults.d.ts +3 -1
  145. package/dist/src/presentation/web/app/actions/get-workflow-defaults.d.ts.map +1 -1
  146. package/dist/src/presentation/web/app/actions/get-workflow-defaults.js +3 -1
  147. package/dist/src/presentation/web/app/actions/promote-exploration.d.ts +11 -0
  148. package/dist/src/presentation/web/app/actions/promote-exploration.d.ts.map +1 -0
  149. package/dist/src/presentation/web/app/actions/promote-exploration.js +21 -0
  150. package/dist/src/presentation/web/app/actions/remove-injected-skill.d.ts +6 -0
  151. package/dist/src/presentation/web/app/actions/remove-injected-skill.d.ts.map +1 -0
  152. package/dist/src/presentation/web/app/actions/remove-injected-skill.js +35 -0
  153. package/dist/src/presentation/web/app/actions/submit-exploration-feedback.d.ts +12 -0
  154. package/dist/src/presentation/web/app/actions/submit-exploration-feedback.d.ts.map +1 -0
  155. package/dist/src/presentation/web/app/actions/submit-exploration-feedback.js +40 -0
  156. package/dist/src/presentation/web/app/api/agent-events/route.d.ts.map +1 -1
  157. package/dist/src/presentation/web/app/api/agent-events/route.js +1 -0
  158. package/dist/src/presentation/web/app/build-feature-node-data.d.ts.map +1 -1
  159. package/dist/src/presentation/web/app/build-feature-node-data.js +6 -2
  160. package/dist/src/presentation/web/app/build-graph-nodes.js +4 -2
  161. package/dist/src/presentation/web/app/skills/page.d.ts.map +1 -1
  162. package/dist/src/presentation/web/app/skills/page.js +6 -1
  163. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.d.ts +1 -1
  164. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.d.ts.map +1 -1
  165. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.js +3 -0
  166. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts.map +1 -1
  167. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.js +65 -1
  168. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts +5 -2
  169. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -1
  170. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +20 -12
  171. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.d.ts.map +1 -1
  172. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.js +3 -1
  173. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.d.ts +8 -0
  174. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.d.ts.map +1 -0
  175. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.js +33 -0
  176. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.stories.d.ts +10 -0
  177. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.stories.d.ts.map +1 -0
  178. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.stories.js +33 -0
  179. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts +6 -1
  180. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts.map +1 -1
  181. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.js +16 -4
  182. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.d.ts.map +1 -1
  183. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.js +10 -4
  184. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.d.ts +2 -0
  185. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.d.ts.map +1 -1
  186. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.js +12 -0
  187. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.d.ts +11 -0
  188. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.d.ts.map +1 -0
  189. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.js +34 -0
  190. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.stories.d.ts +16 -0
  191. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.stories.d.ts.map +1 -0
  192. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.stories.js +70 -0
  193. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.d.ts.map +1 -1
  194. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.js +2 -0
  195. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts +10 -2
  196. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts.map +1 -1
  197. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.js +12 -0
  198. package/dist/src/presentation/web/components/common/feature-node/feature-node.d.ts.map +1 -1
  199. package/dist/src/presentation/web/components/common/feature-node/feature-node.js +7 -2
  200. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  201. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +6 -6
  202. package/dist/src/presentation/web/components/features/settings/workflow-settings-section.stories.js +3 -3
  203. package/dist/src/presentation/web/components/features/skills/add-skill-dialog.d.ts +10 -0
  204. package/dist/src/presentation/web/components/features/skills/add-skill-dialog.d.ts.map +1 -0
  205. package/dist/src/presentation/web/components/features/skills/add-skill-dialog.js +56 -0
  206. package/dist/src/presentation/web/components/features/skills/add-skill-dialog.stories.d.ts +16 -0
  207. package/dist/src/presentation/web/components/features/skills/add-skill-dialog.stories.d.ts.map +1 -0
  208. package/dist/src/presentation/web/components/features/skills/add-skill-dialog.stories.js +66 -0
  209. package/dist/src/presentation/web/components/features/skills/auto-injected-skills-section.d.ts +8 -0
  210. package/dist/src/presentation/web/components/features/skills/auto-injected-skills-section.d.ts.map +1 -0
  211. package/dist/src/presentation/web/components/features/skills/auto-injected-skills-section.js +42 -0
  212. package/dist/src/presentation/web/components/features/skills/auto-injected-skills-section.stories.d.ts +16 -0
  213. package/dist/src/presentation/web/components/features/skills/auto-injected-skills-section.stories.d.ts.map +1 -0
  214. package/dist/src/presentation/web/components/features/skills/auto-injected-skills-section.stories.js +69 -0
  215. package/dist/src/presentation/web/components/features/skills/skills-page-client.d.ts +3 -1
  216. package/dist/src/presentation/web/components/features/skills/skills-page-client.d.ts.map +1 -1
  217. package/dist/src/presentation/web/components/features/skills/skills-page-client.js +5 -3
  218. package/dist/src/presentation/web/components/features/skills/skills-page-client.stories.d.ts +1 -0
  219. package/dist/src/presentation/web/components/features/skills/skills-page-client.stories.d.ts.map +1 -1
  220. package/dist/src/presentation/web/components/features/skills/skills-page-client.stories.js +27 -0
  221. package/dist/src/presentation/web/components/ui/toggle-group.d.ts +10 -0
  222. package/dist/src/presentation/web/components/ui/toggle-group.d.ts.map +1 -0
  223. package/dist/src/presentation/web/components/ui/toggle-group.js +22 -0
  224. package/dist/src/presentation/web/components/ui/toggle.d.ts +10 -0
  225. package/dist/src/presentation/web/components/ui/toggle.d.ts.map +1 -0
  226. package/dist/src/presentation/web/components/ui/toggle.js +26 -0
  227. package/dist/translations/ar/cli.json +26 -0
  228. package/dist/translations/ar/web.json +21 -13
  229. package/dist/translations/de/cli.json +26 -0
  230. package/dist/translations/de/web.json +41 -19
  231. package/dist/translations/en/cli.json +26 -0
  232. package/dist/translations/en/web.json +10 -2
  233. package/dist/translations/es/cli.json +26 -0
  234. package/dist/translations/es/web.json +22 -14
  235. package/dist/translations/fr/cli.json +26 -0
  236. package/dist/translations/fr/web.json +22 -14
  237. package/dist/translations/he/cli.json +26 -0
  238. package/dist/translations/he/web.json +22 -14
  239. package/dist/translations/pt/cli.json +26 -0
  240. package/dist/translations/pt/web.json +22 -14
  241. package/dist/translations/ru/cli.json +26 -0
  242. package/dist/translations/ru/web.json +22 -14
  243. package/dist/tsconfig.build.tsbuildinfo +1 -1
  244. package/package.json +1 -1
  245. package/web/.next/BUILD_ID +1 -1
  246. package/web/.next/build-manifest.json +5 -5
  247. package/web/.next/fallback-build-manifest.json +2 -2
  248. package/web/.next/prerender-manifest.json +3 -3
  249. package/web/.next/required-server-files.js +3 -3
  250. package/web/.next/required-server-files.json +3 -3
  251. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/build-manifest.json +3 -3
  252. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +29 -29
  253. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +1 -1
  254. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  255. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  256. package/web/.next/server/app/(dashboard)/@drawer/chat/page/build-manifest.json +3 -3
  257. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +27 -27
  258. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js +1 -1
  259. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  260. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  261. package/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +3 -3
  262. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +30 -30
  263. package/web/.next/server/app/(dashboard)/@drawer/create/page.js +1 -1
  264. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  265. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  266. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/build-manifest.json +3 -3
  267. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +121 -76
  268. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +3 -2
  269. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  270. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  271. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +3 -3
  272. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +121 -76
  273. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +3 -2
  274. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  275. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  276. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/build-manifest.json +3 -3
  277. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  278. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js +1 -1
  279. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  280. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  281. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +3 -3
  282. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  283. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +1 -1
  284. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  285. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  286. package/web/.next/server/app/(dashboard)/chat/page/build-manifest.json +3 -3
  287. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +27 -27
  288. package/web/.next/server/app/(dashboard)/chat/page.js +1 -1
  289. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  290. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  291. package/web/.next/server/app/(dashboard)/create/page/build-manifest.json +3 -3
  292. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +30 -30
  293. package/web/.next/server/app/(dashboard)/create/page.js +1 -1
  294. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  295. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  296. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/build-manifest.json +3 -3
  297. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +121 -76
  298. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +3 -2
  299. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  300. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  301. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +3 -3
  302. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +121 -76
  303. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +3 -2
  304. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  305. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  306. package/web/.next/server/app/(dashboard)/page/build-manifest.json +3 -3
  307. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +27 -27
  308. package/web/.next/server/app/(dashboard)/page.js +1 -1
  309. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  310. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  311. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/build-manifest.json +3 -3
  312. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  313. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js +1 -1
  314. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  315. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  316. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +3 -3
  317. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  318. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +1 -1
  319. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  320. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  321. package/web/.next/server/app/_global-error/page/build-manifest.json +3 -3
  322. package/web/.next/server/app/_global-error.html +2 -2
  323. package/web/.next/server/app/_global-error.rsc +1 -1
  324. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  325. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  326. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  327. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  328. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  329. package/web/.next/server/app/_not-found/page/build-manifest.json +3 -3
  330. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +6 -6
  331. package/web/.next/server/app/_not-found/page.js +1 -1
  332. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  333. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  334. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  335. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  336. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  337. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -1
  338. package/web/.next/server/app/features/page/build-manifest.json +3 -3
  339. package/web/.next/server/app/features/page/server-reference-manifest.json +6 -6
  340. package/web/.next/server/app/features/page.js +1 -1
  341. package/web/.next/server/app/features/page.js.nft.json +1 -1
  342. package/web/.next/server/app/features/page_client-reference-manifest.js +1 -1
  343. package/web/.next/server/app/settings/page/build-manifest.json +3 -3
  344. package/web/.next/server/app/settings/page/server-reference-manifest.json +9 -9
  345. package/web/.next/server/app/settings/page.js +3 -3
  346. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  347. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  348. package/web/.next/server/app/skills/page/build-manifest.json +3 -3
  349. package/web/.next/server/app/skills/page/server-reference-manifest.json +52 -22
  350. package/web/.next/server/app/skills/page.js +3 -2
  351. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  352. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  353. package/web/.next/server/app/tools/page/build-manifest.json +3 -3
  354. package/web/.next/server/app/tools/page/server-reference-manifest.json +11 -11
  355. package/web/.next/server/app/tools/page.js +1 -1
  356. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  357. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  358. package/web/.next/server/app/version/page/build-manifest.json +3 -3
  359. package/web/.next/server/app/version/page/server-reference-manifest.json +6 -6
  360. package/web/.next/server/app/version/page.js +1 -1
  361. package/web/.next/server/app/version/page.js.nft.json +1 -1
  362. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  363. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js +1 -1
  364. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js.map +1 -1
  365. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js +1 -1
  366. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js.map +1 -1
  367. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  368. package/web/.next/server/chunks/[root-of-the-server]__c78383b1._.js +1 -1
  369. package/web/.next/server/chunks/[root-of-the-server]__c78383b1._.js.map +1 -1
  370. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js +1 -1
  371. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
  372. package/web/.next/server/chunks/ssr/{_0727935d._.js → 403f9_next_8a33ddee._.js} +2 -2
  373. package/web/.next/server/chunks/ssr/403f9_next_8a33ddee._.js.map +1 -0
  374. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  375. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  376. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +3 -3
  377. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
  378. package/web/.next/server/chunks/ssr/[root-of-the-server]__03c66352._.js +4 -0
  379. package/web/.next/server/chunks/ssr/[root-of-the-server]__03c66352._.js.map +1 -0
  380. package/web/.next/server/chunks/ssr/{[root-of-the-server]__e88da4ee._.js → [root-of-the-server]__1cd4327c._.js} +2 -2
  381. package/web/.next/server/chunks/ssr/[root-of-the-server]__1cd4327c._.js.map +1 -0
  382. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f389e5d._.js +1 -1
  383. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f389e5d._.js.map +1 -1
  384. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  385. package/web/.next/server/chunks/ssr/[root-of-the-server]__403afc23._.js +4 -0
  386. package/web/.next/server/chunks/ssr/[root-of-the-server]__403afc23._.js.map +1 -0
  387. package/web/.next/server/chunks/ssr/[root-of-the-server]__4ed9b909._.js +1 -1
  388. package/web/.next/server/chunks/ssr/[root-of-the-server]__684a868c._.js +1 -1
  389. package/web/.next/server/chunks/ssr/[root-of-the-server]__684a868c._.js.map +1 -1
  390. package/web/.next/server/chunks/ssr/[root-of-the-server]__69dd3217._.js +1 -1
  391. package/web/.next/server/chunks/ssr/[root-of-the-server]__69dd3217._.js.map +1 -1
  392. package/web/.next/server/chunks/ssr/[root-of-the-server]__6c7d3936._.js +1 -1
  393. package/web/.next/server/chunks/ssr/[root-of-the-server]__6c7d3936._.js.map +1 -1
  394. package/web/.next/server/chunks/ssr/{[root-of-the-server]__7ffd3598._.js → [root-of-the-server]__92ffd5ee._.js} +3 -3
  395. package/web/.next/server/chunks/ssr/[root-of-the-server]__92ffd5ee._.js.map +1 -0
  396. package/web/.next/server/chunks/ssr/[root-of-the-server]__b020c17d._.js +2 -2
  397. package/web/.next/server/chunks/ssr/[root-of-the-server]__b020c17d._.js.map +1 -1
  398. package/web/.next/server/chunks/ssr/[root-of-the-server]__b7b96453._.js +1 -1
  399. package/web/.next/server/chunks/ssr/[root-of-the-server]__b7b96453._.js.map +1 -1
  400. package/web/.next/server/chunks/ssr/[root-of-the-server]__c1262d08._.js +1 -1
  401. package/web/.next/server/chunks/ssr/[root-of-the-server]__c16bf5de._.js +1 -1
  402. package/web/.next/server/chunks/ssr/[root-of-the-server]__c16bf5de._.js.map +1 -1
  403. package/web/.next/server/chunks/ssr/[root-of-the-server]__df550e85._.js +3 -0
  404. package/web/.next/server/chunks/ssr/[root-of-the-server]__df550e85._.js.map +1 -0
  405. package/web/.next/server/chunks/ssr/[root-of-the-server]__df5602bf._.js +4 -0
  406. package/web/.next/server/chunks/ssr/[root-of-the-server]__df5602bf._.js.map +1 -0
  407. package/web/.next/server/chunks/ssr/[root-of-the-server]__e9f4767a._.js +4 -0
  408. package/web/.next/server/chunks/ssr/[root-of-the-server]__e9f4767a._.js.map +1 -0
  409. package/web/.next/server/chunks/ssr/_02e01240._.js +1 -1
  410. package/web/.next/server/chunks/ssr/_02e01240._.js.map +1 -1
  411. package/web/.next/server/chunks/ssr/_05c23ad9._.js +1 -1
  412. package/web/.next/server/chunks/ssr/_05c23ad9._.js.map +1 -1
  413. package/web/.next/server/chunks/ssr/{_fe058119._.js → _0fd635d7._.js} +2 -2
  414. package/web/.next/server/chunks/ssr/_0fd635d7._.js.map +1 -0
  415. package/web/.next/server/chunks/ssr/_16eb4fec._.js +1 -1
  416. package/web/.next/server/chunks/ssr/_16eb4fec._.js.map +1 -1
  417. package/web/.next/server/chunks/ssr/_18886033._.js +1 -1
  418. package/web/.next/server/chunks/ssr/_18886033._.js.map +1 -1
  419. package/web/.next/server/chunks/ssr/_22e00a14._.js +1 -1
  420. package/web/.next/server/chunks/ssr/_22e00a14._.js.map +1 -1
  421. package/web/.next/server/chunks/ssr/_30ddea9d._.js +9 -0
  422. package/web/.next/server/chunks/ssr/_30ddea9d._.js.map +1 -0
  423. package/web/.next/server/chunks/ssr/{_a8b338ec._.js → _34d897da._.js} +2 -2
  424. package/web/.next/server/chunks/ssr/{_a8b338ec._.js.map → _34d897da._.js.map} +1 -1
  425. package/web/.next/server/chunks/ssr/_45496654._.js +3 -0
  426. package/web/.next/server/chunks/ssr/_45496654._.js.map +1 -0
  427. package/web/.next/server/chunks/ssr/_4cbb7f95._.js +1 -1
  428. package/web/.next/server/chunks/ssr/_4cbb7f95._.js.map +1 -1
  429. package/web/.next/server/chunks/ssr/_5119a3df._.js +1 -1
  430. package/web/.next/server/chunks/ssr/_5119a3df._.js.map +1 -1
  431. package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
  432. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
  433. package/web/.next/server/chunks/ssr/_6e79a2cc._.js +3 -0
  434. package/web/.next/server/chunks/ssr/_6e79a2cc._.js.map +1 -0
  435. package/web/.next/server/chunks/ssr/_6f35fb9a._.js +3 -0
  436. package/web/.next/server/chunks/ssr/_6f35fb9a._.js.map +1 -0
  437. package/web/.next/server/chunks/ssr/_a5a5901d._.js +1 -1
  438. package/web/.next/server/chunks/ssr/_a5a5901d._.js.map +1 -1
  439. package/web/.next/server/chunks/ssr/_ad09f271._.js +1 -1
  440. package/web/.next/server/chunks/ssr/_ad09f271._.js.map +1 -1
  441. package/web/.next/server/chunks/ssr/_c3f595c6._.js +1 -1
  442. package/web/.next/server/chunks/ssr/_c3f595c6._.js.map +1 -1
  443. package/web/.next/server/chunks/ssr/{_9b964adc._.js → _cac4abe6._.js} +2 -2
  444. package/web/.next/server/chunks/ssr/_cac4abe6._.js.map +1 -0
  445. package/web/.next/server/chunks/ssr/_df737cce._.js +3 -0
  446. package/web/.next/server/chunks/ssr/_df737cce._.js.map +1 -0
  447. package/web/.next/server/chunks/ssr/_ea9e1556._.js +1 -1
  448. package/web/.next/server/chunks/ssr/_ea9e1556._.js.map +1 -1
  449. package/web/.next/server/chunks/ssr/_f1ba9be6._.js +2 -2
  450. package/web/.next/server/chunks/ssr/_f1ba9be6._.js.map +1 -1
  451. package/web/.next/server/chunks/ssr/_f33cd07e._.js +2 -2
  452. package/web/.next/server/chunks/ssr/_f33cd07e._.js.map +1 -1
  453. package/web/.next/server/chunks/ssr/_f8b45233._.js +1 -1
  454. package/web/.next/server/chunks/ssr/_f8b45233._.js.map +1 -1
  455. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  456. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  457. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
  458. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js.map +1 -1
  459. package/web/.next/server/chunks/ssr/node_modules__pnpm_1300ae39._.js +3 -0
  460. package/web/.next/server/chunks/ssr/node_modules__pnpm_1300ae39._.js.map +1 -0
  461. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_approve-feature_ts_9453ce8b._.js +3 -0
  462. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_approve-feature_ts_9453ce8b._.js.map +1 -0
  463. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +1 -1
  464. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
  465. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js.map +1 -1
  466. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js +1 -1
  467. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js.map +1 -1
  468. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  469. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  470. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js +3 -0
  471. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js.map +1 -0
  472. package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js +1 -1
  473. package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js.map +1 -1
  474. package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js +1 -1
  475. package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js.map +1 -1
  476. package/web/.next/server/middleware-build-manifest.js +3 -3
  477. package/web/.next/server/pages/500.html +2 -2
  478. package/web/.next/server/server-reference-manifest.js +1 -1
  479. package/web/.next/server/server-reference-manifest.json +349 -211
  480. package/web/.next/static/chunks/0769c695d6b663c7.js +1 -0
  481. package/web/.next/static/chunks/09a25231e5fc1ab8.js +3 -0
  482. package/web/.next/static/chunks/{d6c39780c2f75ecd.js → 0f30a983f3467cd5.js} +1 -1
  483. package/web/.next/static/chunks/185e4f36cb6efb24.js +1 -0
  484. package/web/.next/static/chunks/{d5366257d6b9f855.js → 2a9af061f4fbe7f5.js} +1 -1
  485. package/web/.next/static/chunks/2ceebcc839ee0d4b.js +1 -0
  486. package/web/.next/static/chunks/{04c874f52a7cd435.js → 37f9543560c58ea6.js} +1 -1
  487. package/web/.next/static/chunks/{caf7d7e1b439b29e.js → 4219ddfde68a6d0b.js} +1 -1
  488. package/web/.next/static/chunks/{562c70303d910295.js → 478adf5d5156f002.js} +1 -1
  489. package/web/.next/static/chunks/52681a7f14138e48.js +1 -0
  490. package/web/.next/static/chunks/5743a9c1c63e5261.js +5 -0
  491. package/web/.next/static/chunks/5cf9745e2ef3837c.js +1 -0
  492. package/web/.next/static/chunks/5e20f692bbfcfb94.js +7 -0
  493. package/web/.next/static/chunks/74729cbad964be13.js +1 -0
  494. package/web/.next/static/chunks/{c5d89c12a73e0461.js → 9a78b4c5dcd28196.js} +2 -2
  495. package/web/.next/static/chunks/c80e8e3d0cf5baa6.css +1 -0
  496. package/web/.next/static/chunks/cc5fe8d1d9e1e519.js +5 -0
  497. package/web/.next/static/chunks/d5bf9c963b5346e1.js +1 -0
  498. package/web/.next/static/chunks/d60cee2e7318f425.js +1 -0
  499. package/web/.next/static/chunks/da565c85277c2461.js +1 -0
  500. package/web/.next/static/chunks/e93ae5725b0babeb.js +1 -0
  501. package/web/.next/static/chunks/fb89cf91c10b2e8b.js +1 -0
  502. package/web/.next/static/chunks/{021c9b0effb6d688.js → fc595d95626ac9bb.js} +1 -1
  503. package/web/.next/static/chunks/{turbopack-57bb0674e2cd1d31.js → turbopack-b38a68b1b1c41a87.js} +1 -1
  504. package/web/.next/server/chunks/ssr/[root-of-the-server]__20a36a42._.js +0 -3
  505. package/web/.next/server/chunks/ssr/[root-of-the-server]__20a36a42._.js.map +0 -1
  506. package/web/.next/server/chunks/ssr/[root-of-the-server]__4fb81977._.js +0 -4
  507. package/web/.next/server/chunks/ssr/[root-of-the-server]__4fb81977._.js.map +0 -1
  508. package/web/.next/server/chunks/ssr/[root-of-the-server]__7dcd0917._.js +0 -4
  509. package/web/.next/server/chunks/ssr/[root-of-the-server]__7dcd0917._.js.map +0 -1
  510. package/web/.next/server/chunks/ssr/[root-of-the-server]__7ffd3598._.js.map +0 -1
  511. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba7f5873._.js +0 -4
  512. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba7f5873._.js.map +0 -1
  513. package/web/.next/server/chunks/ssr/[root-of-the-server]__c5e09f6f._.js +0 -4
  514. package/web/.next/server/chunks/ssr/[root-of-the-server]__c5e09f6f._.js.map +0 -1
  515. package/web/.next/server/chunks/ssr/[root-of-the-server]__e88da4ee._.js.map +0 -1
  516. package/web/.next/server/chunks/ssr/_0727935d._.js.map +0 -1
  517. package/web/.next/server/chunks/ssr/_0dc06d07._.js +0 -3
  518. package/web/.next/server/chunks/ssr/_0dc06d07._.js.map +0 -1
  519. package/web/.next/server/chunks/ssr/_682fc996._.js +0 -9
  520. package/web/.next/server/chunks/ssr/_682fc996._.js.map +0 -1
  521. package/web/.next/server/chunks/ssr/_6892e3b9._.js +0 -3
  522. package/web/.next/server/chunks/ssr/_6892e3b9._.js.map +0 -1
  523. package/web/.next/server/chunks/ssr/_9b964adc._.js.map +0 -1
  524. package/web/.next/server/chunks/ssr/_a1068852._.js +0 -3
  525. package/web/.next/server/chunks/ssr/_a1068852._.js.map +0 -1
  526. package/web/.next/server/chunks/ssr/_fe058119._.js.map +0 -1
  527. package/web/.next/server/chunks/ssr/node_modules__pnpm_12a7ede0._.js +0 -3
  528. package/web/.next/server/chunks/ssr/node_modules__pnpm_12a7ede0._.js.map +0 -1
  529. package/web/.next/static/chunks/20f7cc98a013b11c.js +0 -1
  530. package/web/.next/static/chunks/4cec255f2754e5ec.js +0 -1
  531. package/web/.next/static/chunks/5b7275374d2696b3.css +0 -1
  532. package/web/.next/static/chunks/647140fe96a7c88a.js +0 -1
  533. package/web/.next/static/chunks/6d6f70ff5151b8cb.js +0 -7
  534. package/web/.next/static/chunks/84792d40edc4b027.js +0 -5
  535. package/web/.next/static/chunks/8800875bb3d56192.js +0 -3
  536. package/web/.next/static/chunks/8d581adafe8d1dd0.js +0 -1
  537. package/web/.next/static/chunks/982aef195c118996.js +0 -1
  538. package/web/.next/static/chunks/a052c19c18e9eced.js +0 -1
  539. package/web/.next/static/chunks/a6b5e739d2f89c6b.js +0 -1
  540. package/web/.next/static/chunks/b0e2fb3d4eb42f3d.js +0 -1
  541. package/web/.next/static/chunks/c3ef3b892f7794ec.js +0 -1
  542. package/web/.next/static/chunks/dc134f3f58cdf850.js +0 -5
  543. package/web/.next/static/chunks/ff9e33615f5c856c.js +0 -1
  544. /package/web/.next/static/{lFiCv3l4nIAIpZmj6eehh → G895CgnbZl4YvWN_DaRC-}/_buildManifest.js +0 -0
  545. /package/web/.next/static/{lFiCv3l4nIAIpZmj6eehh → G895CgnbZl4YvWN_DaRC-}/_clientMiddlewareManifest.json +0 -0
  546. /package/web/.next/static/{lFiCv3l4nIAIpZmj6eehh → G895CgnbZl4YvWN_DaRC-}/_ssgManifest.js +0 -0
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Migration 053: Add exploration_max_iterations column to the settings table.
3
+ *
4
+ * Adds a nullable INTEGER column for the maximum number of feedback iterations
5
+ * in exploration mode. When NULL, the default of 10 is applied at the application layer.
6
+ * Guards against duplicate column using PRAGMA table_info.
7
+ */
8
+ import type { MigrationParams } from 'umzug';
9
+ import type Database from 'better-sqlite3';
10
+ export declare function up({ context: db }: MigrationParams<Database.Database>): Promise<void>;
11
+ export declare function down({ context: db }: MigrationParams<Database.Database>): Promise<void>;
12
+ //# sourceMappingURL=053-add-exploration-max-iterations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"053-add-exploration-max-iterations.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C,wBAAsB,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAO3F;AAED,wBAAsB,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7F"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Migration 053: Add exploration_max_iterations column to the settings table.
3
+ *
4
+ * Adds a nullable INTEGER column for the maximum number of feedback iterations
5
+ * in exploration mode. When NULL, the default of 10 is applied at the application layer.
6
+ * Guards against duplicate column using PRAGMA table_info.
7
+ */
8
+ export async function up({ context: db }) {
9
+ const columns = db.pragma('table_info(settings)');
10
+ const names = new Set(columns.map((c) => c.name));
11
+ if (!names.has('exploration_max_iterations')) {
12
+ db.exec('ALTER TABLE settings ADD COLUMN exploration_max_iterations INTEGER');
13
+ }
14
+ }
15
+ export async function down({ context: db }) {
16
+ void db;
17
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Migration 050: Add skill injection config columns to the settings table.
3
+ *
4
+ * Adds two new columns for configuring skill injection during feature creation:
5
+ * - skill_injection_enabled (INTEGER DEFAULT 0): whether skill injection is active
6
+ * - skill_injection_skills (TEXT, nullable): JSON array of SkillSource objects
7
+ *
8
+ * Default value of 0 means skill injection is opt-in (disabled by default).
9
+ * Guards against duplicate column errors using table_info pragma.
10
+ */
11
+ import type { MigrationParams } from 'umzug';
12
+ import type Database from 'better-sqlite3';
13
+ export declare function up({ context: db }: MigrationParams<Database.Database>): Promise<void>;
14
+ export declare function down({ context: db }: MigrationParams<Database.Database>): Promise<void>;
15
+ //# sourceMappingURL=053-add-skill-injection-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"053-add-skill-injection-config.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-skill-injection-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C,wBAAsB,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAW3F;AAED,wBAAsB,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7F"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Migration 050: Add skill injection config columns to the settings table.
3
+ *
4
+ * Adds two new columns for configuring skill injection during feature creation:
5
+ * - skill_injection_enabled (INTEGER DEFAULT 0): whether skill injection is active
6
+ * - skill_injection_skills (TEXT, nullable): JSON array of SkillSource objects
7
+ *
8
+ * Default value of 0 means skill injection is opt-in (disabled by default).
9
+ * Guards against duplicate column errors using table_info pragma.
10
+ */
11
+ export async function up({ context: db }) {
12
+ const columns = db.pragma('table_info(settings)');
13
+ const names = new Set(columns.map((c) => c.name));
14
+ if (!names.has('skill_injection_enabled')) {
15
+ db.exec('ALTER TABLE settings ADD COLUMN skill_injection_enabled INTEGER NOT NULL DEFAULT 0');
16
+ }
17
+ if (!names.has('skill_injection_skills')) {
18
+ db.exec('ALTER TABLE settings ADD COLUMN skill_injection_skills TEXT');
19
+ }
20
+ }
21
+ export async function down({ context: db }) {
22
+ void db;
23
+ }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Migration 054: Add inject_skills and injected_skills columns to features table.
3
+ *
4
+ * inject_skills: boolean flag indicating skill injection was enabled for this feature.
5
+ * injected_skills: JSON array of skill names that were injected into the worktree.
6
+ */
7
+ import type { MigrationParams } from 'umzug';
8
+ import type Database from 'better-sqlite3';
9
+ export declare function up({ context: db }: MigrationParams<Database.Database>): Promise<void>;
10
+ export declare function down({ context: db }: MigrationParams<Database.Database>): Promise<void>;
11
+ //# sourceMappingURL=054-add-injected-skills-to-features.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"054-add-injected-skills-to-features.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/infrastructure/persistence/sqlite/migrations/054-add-injected-skills-to-features.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C,wBAAsB,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAU3F;AAED,wBAAsB,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7F"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Migration 054: Add inject_skills and injected_skills columns to features table.
3
+ *
4
+ * inject_skills: boolean flag indicating skill injection was enabled for this feature.
5
+ * injected_skills: JSON array of skill names that were injected into the worktree.
6
+ */
7
+ export async function up({ context: db }) {
8
+ const columns = db.pragma('table_info(features)');
9
+ const names = new Set(columns.map((c) => c.name));
10
+ if (!names.has('inject_skills')) {
11
+ db.exec('ALTER TABLE features ADD COLUMN inject_skills INTEGER NOT NULL DEFAULT 0');
12
+ }
13
+ if (!names.has('injected_skills')) {
14
+ db.exec('ALTER TABLE features ADD COLUMN injected_skills TEXT');
15
+ }
16
+ }
17
+ export async function down({ context: db }) {
18
+ void db;
19
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-feature.repository.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/src/infrastructure/repositories/sqlite-feature.repository.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,6EAA6E,CAAC;AACrF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAOhE;;;GAGG;AACH,qBACa,uBAAwB,YAAW,kBAAkB;IACpD,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,QAAQ,CAAC,QAAQ;IAE5C,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAsCvC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAW7C,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAcvD,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAazE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAa7E,IAAI,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IA8BtD,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAQpD,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAqDvC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAK5C"}
1
+ {"version":3,"file":"sqlite-feature.repository.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/src/infrastructure/repositories/sqlite-feature.repository.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,6EAA6E,CAAC;AACrF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAOhE;;;GAGG;AACH,qBACa,uBAAwB,YAAW,kBAAkB;IACpD,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,QAAQ,CAAC,QAAQ;IAE5C,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAwCvC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAW7C,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAcvD,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAazE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAa7E,IAAI,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IA8BtD,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAQpD,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAyDvC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAK5C"}
@@ -32,7 +32,7 @@ let SQLiteFeatureRepository = class SQLiteFeatureRepository {
32
32
  id, name, slug, description, user_query, repository_path, branch,
33
33
  lifecycle, messages, plan, related_artifacts,
34
34
  agent_run_id, spec_path,
35
- fast,
35
+ mode, iteration_count, max_iterations,
36
36
  push, open_pr, fork_and_pr, commit_specs,
37
37
  ci_watch_enabled, enable_evidence, commit_evidence,
38
38
  auto_merge, allow_prd, allow_plan, allow_merge,
@@ -40,13 +40,14 @@ let SQLiteFeatureRepository = class SQLiteFeatureRepository {
40
40
  pr_url, pr_number, pr_status, commit_hash, ci_status,
41
41
  ci_fix_attempts, ci_fix_history, pr_mergeable,
42
42
  upstream_pr_url, upstream_pr_number, upstream_pr_status,
43
- parent_id, previous_lifecycle, attachments, deleted_at,
44
- created_at, updated_at
43
+ parent_id, previous_lifecycle, attachments,
44
+ inject_skills, injected_skills,
45
+ deleted_at, created_at, updated_at
45
46
  ) VALUES (
46
47
  @id, @name, @slug, @description, @user_query, @repository_path, @branch,
47
48
  @lifecycle, @messages, @plan, @related_artifacts,
48
49
  @agent_run_id, @spec_path,
49
- @fast,
50
+ @mode, @iteration_count, @max_iterations,
50
51
  @push, @open_pr, @fork_and_pr, @commit_specs,
51
52
  @ci_watch_enabled, @enable_evidence, @commit_evidence,
52
53
  @auto_merge, @allow_prd, @allow_plan, @allow_merge,
@@ -54,8 +55,9 @@ let SQLiteFeatureRepository = class SQLiteFeatureRepository {
54
55
  @pr_url, @pr_number, @pr_status, @commit_hash, @ci_status,
55
56
  @ci_fix_attempts, @ci_fix_history, @pr_mergeable,
56
57
  @upstream_pr_url, @upstream_pr_number, @upstream_pr_status,
57
- @parent_id, @previous_lifecycle, @attachments, @deleted_at,
58
- @created_at, @updated_at
58
+ @parent_id, @previous_lifecycle, @attachments,
59
+ @inject_skills, @injected_skills,
60
+ @deleted_at, @created_at, @updated_at
59
61
  )
60
62
  `);
61
63
  stmt.run(row);
@@ -138,7 +140,9 @@ let SQLiteFeatureRepository = class SQLiteFeatureRepository {
138
140
  related_artifacts = @related_artifacts,
139
141
  agent_run_id = @agent_run_id,
140
142
  spec_path = @spec_path,
141
- fast = @fast,
143
+ mode = @mode,
144
+ iteration_count = @iteration_count,
145
+ max_iterations = @max_iterations,
142
146
  push = @push,
143
147
  open_pr = @open_pr,
144
148
  fork_and_pr = @fork_and_pr,
@@ -166,6 +170,8 @@ let SQLiteFeatureRepository = class SQLiteFeatureRepository {
166
170
  parent_id = @parent_id,
167
171
  previous_lifecycle = @previous_lifecycle,
168
172
  attachments = @attachments,
173
+ inject_skills = @inject_skills,
174
+ injected_skills = @injected_skills,
169
175
  deleted_at = @deleted_at,
170
176
  updated_at = @updated_at
171
177
  WHERE id = @id
@@ -68,7 +68,7 @@ let SQLiteSettingsRepository = class SQLiteSettingsRepository {
68
68
  feature_flag_react_file_manager,
69
69
  feature_flag_inventory,
70
70
  workflow_enable_evidence, workflow_commit_evidence,
71
- hide_ci_status, default_fast_mode,
71
+ hide_ci_status, default_mode,
72
72
  interactive_agent_enabled, interactive_agent_auto_timeout_minutes,
73
73
  interactive_agent_max_concurrent_sessions,
74
74
  auto_archive_delay_minutes,
@@ -100,7 +100,7 @@ let SQLiteSettingsRepository = class SQLiteSettingsRepository {
100
100
  @feature_flag_react_file_manager,
101
101
  @feature_flag_inventory,
102
102
  @workflow_enable_evidence, @workflow_commit_evidence,
103
- @hide_ci_status, @default_fast_mode,
103
+ @hide_ci_status, @default_mode,
104
104
  @interactive_agent_enabled, @interactive_agent_auto_timeout_minutes,
105
105
  @interactive_agent_max_concurrent_sessions,
106
106
  @auto_archive_delay_minutes,
@@ -205,7 +205,7 @@ let SQLiteSettingsRepository = class SQLiteSettingsRepository {
205
205
  workflow_enable_evidence = @workflow_enable_evidence,
206
206
  workflow_commit_evidence = @workflow_commit_evidence,
207
207
  hide_ci_status = @hide_ci_status,
208
- default_fast_mode = @default_fast_mode,
208
+ default_mode = @default_mode,
209
209
  interactive_agent_enabled = @interactive_agent_enabled,
210
210
  interactive_agent_auto_timeout_minutes = @interactive_agent_auto_timeout_minutes,
211
211
  interactive_agent_max_concurrent_sessions = @interactive_agent_max_concurrent_sessions,
@@ -32,4 +32,25 @@ export interface ConflictResolutionPromptParams {
32
32
  * all conflict markers by editing files in the working directory.
33
33
  */
34
34
  export declare function buildConflictResolutionPrompt(params: ConflictResolutionPromptParams): string;
35
+ export interface StashPopResolutionPromptParams {
36
+ /** Files with conflict markers from stash pop */
37
+ conflictedFiles: ConflictedFile[];
38
+ /** The feature branch */
39
+ featureBranch: string;
40
+ /** The base branch the feature was rebased onto */
41
+ baseBranch: string;
42
+ /** 1-based attempt number */
43
+ attemptNumber: number;
44
+ /** Maximum allowed attempts */
45
+ maxAttempts: number;
46
+ /** Feedback from previous failed attempt */
47
+ previousFeedback?: string;
48
+ }
49
+ /**
50
+ * Build a prompt for resolving stash pop conflicts.
51
+ *
52
+ * Stash pop conflicts occur when rebased code conflicts with uncommitted
53
+ * changes that were stashed before the rebase.
54
+ */
55
+ export declare function buildStashPopResolutionPrompt(params: StashPopResolutionPromptParams): string;
35
56
  //# sourceMappingURL=conflict-resolution.prompt.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"conflict-resolution.prompt.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.prompt.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,cAAc;IAC7B,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,8BAA8B;IAC7C,kCAAkC;IAClC,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,uCAAuC;IACvC,aAAa,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,6BAA6B;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,+BAA+B;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,qEAAqE;IACrE,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,8BAA8B,GAAG,MAAM,CAgE5F"}
1
+ {"version":3,"file":"conflict-resolution.prompt.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.prompt.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,cAAc;IAC7B,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,8BAA8B;IAC7C,kCAAkC;IAClC,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,uCAAuC;IACvC,aAAa,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,6BAA6B;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,+BAA+B;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,qEAAqE;IACrE,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,8BAA8B,GAAG,MAAM,CAgE5F;AAED,MAAM,WAAW,8BAA8B;IAC7C,iDAAiD;IACjD,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,yBAAyB;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,6BAA6B;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,+BAA+B;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,8BAA8B,GAAG,MAAM,CAkE5F"}
@@ -64,3 +64,64 @@ ${fileSection}
64
64
  - Do NOT run tests, builds, or linters — only resolve the conflict markers
65
65
  - Every conflicted file must have zero remaining conflict markers when you are done`;
66
66
  }
67
+ /**
68
+ * Build a prompt for resolving stash pop conflicts.
69
+ *
70
+ * Stash pop conflicts occur when rebased code conflicts with uncommitted
71
+ * changes that were stashed before the rebase.
72
+ */
73
+ export function buildStashPopResolutionPrompt(params) {
74
+ const { conflictedFiles, featureBranch, baseBranch, attemptNumber, maxAttempts, previousFeedback, } = params;
75
+ const fileSection = conflictedFiles
76
+ .map((f) => `### \`${f.path}\`
77
+
78
+ \`\`\`
79
+ ${f.content}
80
+ \`\`\``)
81
+ .join('\n\n');
82
+ const feedbackSection = previousFeedback
83
+ ? `
84
+ ## Previous Attempt Feedback
85
+
86
+ Your previous resolution attempt (${attemptNumber - 1}/${maxAttempts}) was incomplete:
87
+
88
+ ${previousFeedback}
89
+
90
+ You MUST resolve all remaining conflict markers in this attempt.
91
+ `
92
+ : '';
93
+ return `You are resolving git stash pop conflicts (attempt ${attemptNumber}/${maxAttempts}).
94
+
95
+ ## Context
96
+
97
+ - Feature branch: \`${featureBranch}\`
98
+ - Base branch: \`${baseBranch}\`
99
+ - The feature branch was just rebased onto \`${baseBranch}\`.
100
+ - Uncommitted changes were stashed before the rebase and are now being restored via stash pop.
101
+ - The stash pop caused conflicts because the rebased code modified the same files as the stashed uncommitted changes.
102
+ ${feedbackSection}
103
+ ## Conflicted Files
104
+
105
+ The following files contain conflict markers from the stash pop:
106
+
107
+ ${fileSection}
108
+
109
+ ## Instructions
110
+
111
+ 1. Read each conflicted file listed above
112
+ 2. Resolve ALL conflict markers (\`<<<<<<<\`, \`=======\`, \`>>>>>>>\`) by editing the files
113
+ 3. For each conflict:
114
+ - The \`<<<<<<< Updated upstream\` section contains the rebased code (current branch state after rebase)
115
+ - The \`>>>>>>> Stashed changes\` section contains the user's uncommitted work-in-progress
116
+ 4. Preserve the user's uncommitted changes where possible — these are work-in-progress edits the user was actively developing
117
+ 5. Integrate the rebased code changes that don't conflict with the user's intent
118
+
119
+ ## Constraints
120
+
121
+ - Edit ONLY the conflicted files listed above — do NOT modify any other files
122
+ - Remove ALL conflict markers (\`<<<<<<<\`, \`=======\`, \`>>>>>>>\`) from every conflicted file
123
+ - Do NOT add new files or delete files
124
+ - Do NOT run git commands — only edit files to resolve conflicts
125
+ - Do NOT run tests, builds, or linters — only resolve the conflict markers
126
+ - Every conflicted file must have zero remaining conflict markers when you are done`;
127
+ }
@@ -26,6 +26,22 @@ export declare class ConflictResolutionService {
26
26
  * @param baseBranch - Base branch being rebased onto
27
27
  */
28
28
  resolve(cwd: string, featureBranch: string, baseBranch: string): Promise<void>;
29
+ /**
30
+ * Resolve conflicts from a failed stash pop.
31
+ *
32
+ * After a rebase, stash pop may fail if the rebased code conflicts with
33
+ * stashed uncommitted changes. This method invokes the agent to resolve
34
+ * those conflicts, validates, and stages the resolved files.
35
+ *
36
+ * Unlike resolve(), this does NOT call rebaseContinue — the rebase is
37
+ * already complete. On success, the caller is responsible for dropping
38
+ * the stash entry.
39
+ *
40
+ * @param cwd - Working directory (repo root or worktree path)
41
+ * @param featureBranch - Feature branch name
42
+ * @param baseBranch - Base branch name
43
+ */
44
+ resolveStashPop(cwd: string, featureBranch: string, baseBranch: string): Promise<void>;
29
45
  /**
30
46
  * Read the contents of conflicted files from the working directory.
31
47
  */
@@ -1 +1 @@
1
- {"version":3,"file":"conflict-resolution.service.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wEAAwE,CAAC;AACrH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iEAAiE,CAAC;AAerG,qBACa,yBAAyB;IAGlC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAFZ,aAAa,EAAE,sBAAsB,EAErC,YAAY,EAAE,aAAa;IAG9C;;;;;;;;;;;;;OAaG;IACG,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkEpF;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAWlC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgB1B;;OAEG;IACH,OAAO,CAAC,iCAAiC;CAyB1C"}
1
+ {"version":3,"file":"conflict-resolution.service.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wEAAwE,CAAC;AACrH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iEAAiE,CAAC;AAgBrG,qBACa,yBAAyB;IAGlC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAFZ,aAAa,EAAE,sBAAsB,EAErC,YAAY,EAAE,aAAa;IAG9C;;;;;;;;;;;;;OAaG;IACG,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkEpF;;;;;;;;;;;;;;OAcG;IACG,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuC5F;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAWlC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgB1B;;OAEG;IACH,OAAO,CAAC,iCAAiC;CAyB1C"}
@@ -21,7 +21,7 @@ import { injectable, inject } from 'tsyringe';
21
21
  import { readFileSync } from 'node:fs';
22
22
  import { join } from 'node:path';
23
23
  import { GitPrError, GitPrErrorCode, } from '../../../../application/ports/output/services/git-pr-service.interface.js';
24
- import { buildConflictResolutionPrompt, } from './conflict-resolution.prompt.js';
24
+ import { buildConflictResolutionPrompt, buildStashPopResolutionPrompt, } from './conflict-resolution.prompt.js';
25
25
  const MAX_RETRIES_PER_COMMIT = 3;
26
26
  /** Conflict markers that indicate unresolved conflicts */
27
27
  const CONFLICT_MARKERS = ['<<<<<<<', '=======', '>>>>>>>'];
@@ -86,9 +86,9 @@ let ConflictResolutionService = class ConflictResolutionService {
86
86
  await this.gitPrService.stageFiles(cwd, conflictedFiles);
87
87
  try {
88
88
  await this.gitPrService.rebaseContinue(cwd);
89
- // rebaseContinue succeeded — check if there are more conflicts
90
- // from subsequent commits (loop continues)
91
- return; // No more conflicts
89
+ // rebaseContinue succeeded — loop back to check if subsequent
90
+ // commits have conflicts (getConflictedFiles at top of while loop)
91
+ continue;
92
92
  }
93
93
  catch (error) {
94
94
  if (error instanceof GitPrError && error.code === GitPrErrorCode.REBASE_CONFLICT) {
@@ -99,6 +99,49 @@ let ConflictResolutionService = class ConflictResolutionService {
99
99
  }
100
100
  }
101
101
  }
102
+ /**
103
+ * Resolve conflicts from a failed stash pop.
104
+ *
105
+ * After a rebase, stash pop may fail if the rebased code conflicts with
106
+ * stashed uncommitted changes. This method invokes the agent to resolve
107
+ * those conflicts, validates, and stages the resolved files.
108
+ *
109
+ * Unlike resolve(), this does NOT call rebaseContinue — the rebase is
110
+ * already complete. On success, the caller is responsible for dropping
111
+ * the stash entry.
112
+ *
113
+ * @param cwd - Working directory (repo root or worktree path)
114
+ * @param featureBranch - Feature branch name
115
+ * @param baseBranch - Base branch name
116
+ */
117
+ async resolveStashPop(cwd, featureBranch, baseBranch) {
118
+ const conflictedFiles = await this.gitPrService.getConflictedFiles(cwd);
119
+ if (conflictedFiles.length === 0) {
120
+ return;
121
+ }
122
+ const executor = await this.agentProvider.getExecutor();
123
+ for (let attempt = 1; attempt <= MAX_RETRIES_PER_COMMIT; attempt++) {
124
+ const fileContents = this.readConflictedFileContents(cwd, conflictedFiles);
125
+ const previousFeedback = attempt > 1 ? this.buildFeedbackFromRemainingMarkers(cwd, conflictedFiles) : undefined;
126
+ const prompt = buildStashPopResolutionPrompt({
127
+ conflictedFiles: fileContents,
128
+ featureBranch,
129
+ baseBranch,
130
+ attemptNumber: attempt,
131
+ maxAttempts: MAX_RETRIES_PER_COMMIT,
132
+ previousFeedback,
133
+ });
134
+ await executor.execute(prompt, { cwd });
135
+ if (this.validateResolution(cwd, conflictedFiles)) {
136
+ await this.gitPrService.stageFiles(cwd, conflictedFiles);
137
+ return;
138
+ }
139
+ }
140
+ const remaining = conflictedFiles.join(', ');
141
+ throw new Error(`Failed to resolve stash pop conflicts after ${MAX_RETRIES_PER_COMMIT} attempts. ` +
142
+ `Unresolved files: ${remaining}. Your stash entry is preserved — ` +
143
+ `run \`git stash pop\` manually to resolve.`);
144
+ }
102
145
  /**
103
146
  * Read the contents of conflicted files from the working directory.
104
147
  */