@shepai/cli 1.158.0 → 1.159.0-pr495.3c86979

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 (228) hide show
  1. package/apis/json-schema/WorkflowConfig.yaml +5 -0
  2. package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.d.ts.map +1 -1
  3. package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.js +12 -0
  4. package/dist/packages/core/src/application/use-cases/features/create/types.d.ts +2 -0
  5. package/dist/packages/core/src/application/use-cases/features/create/types.d.ts.map +1 -1
  6. package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
  7. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +1 -0
  8. package/dist/packages/core/src/domain/generated/output.d.ts +4 -0
  9. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  10. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +1 -0
  11. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  12. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +2 -0
  13. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/049-add-default-fast-mode.d.ts +14 -0
  14. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/049-add-default-fast-mode.d.ts.map +1 -0
  15. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/049-add-default-fast-mode.js +19 -0
  16. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -1
  17. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +3 -2
  18. package/dist/src/presentation/cli/commands/feat/new.command.d.ts.map +1 -1
  19. package/dist/src/presentation/cli/commands/feat/new.command.js +14 -2
  20. package/dist/src/presentation/web/app/actions/create-feature.d.ts +2 -0
  21. package/dist/src/presentation/web/app/actions/create-feature.d.ts.map +1 -1
  22. package/dist/src/presentation/web/app/actions/create-feature.js +3 -1
  23. package/dist/src/presentation/web/app/actions/get-workflow-defaults.d.ts +1 -0
  24. package/dist/src/presentation/web/app/actions/get-workflow-defaults.d.ts.map +1 -1
  25. package/dist/src/presentation/web/app/actions/get-workflow-defaults.js +1 -0
  26. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts +2 -0
  27. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -1
  28. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +11 -4
  29. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.d.ts +10 -0
  30. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.d.ts.map +1 -1
  31. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.js +33 -0
  32. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  33. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +6 -1
  34. package/dist/src/presentation/web/components/features/settings/workflow-settings-section.stories.d.ts.map +1 -1
  35. package/dist/src/presentation/web/components/features/settings/workflow-settings-section.stories.js +3 -0
  36. package/dist/translations/ar/cli.json +3 -1
  37. package/dist/translations/ar/web.json +4 -0
  38. package/dist/translations/de/cli.json +3 -1
  39. package/dist/translations/de/web.json +4 -0
  40. package/dist/translations/en/cli.json +3 -1
  41. package/dist/translations/en/web.json +4 -0
  42. package/dist/translations/es/cli.json +3 -1
  43. package/dist/translations/es/web.json +4 -0
  44. package/dist/translations/fr/cli.json +3 -1
  45. package/dist/translations/fr/web.json +4 -0
  46. package/dist/translations/he/cli.json +3 -1
  47. package/dist/translations/he/web.json +4 -0
  48. package/dist/translations/pt/cli.json +3 -1
  49. package/dist/translations/pt/web.json +4 -0
  50. package/dist/translations/ru/cli.json +3 -1
  51. package/dist/translations/ru/web.json +4 -0
  52. package/dist/tsconfig.build.tsbuildinfo +1 -1
  53. package/package.json +1 -1
  54. package/web/.next/BUILD_ID +1 -1
  55. package/web/.next/build-manifest.json +2 -2
  56. package/web/.next/fallback-build-manifest.json +2 -2
  57. package/web/.next/prerender-manifest.json +3 -3
  58. package/web/.next/required-server-files.js +3 -3
  59. package/web/.next/required-server-files.json +3 -3
  60. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +28 -28
  61. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  62. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  63. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +26 -26
  64. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  65. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  66. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +29 -29
  67. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  68. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  69. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +36 -36
  70. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  71. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  72. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +36 -36
  73. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  74. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  75. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +26 -26
  76. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  77. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  78. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +26 -26
  79. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  80. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  81. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +26 -26
  82. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  83. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  84. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +29 -29
  85. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  86. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  87. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +36 -36
  88. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  89. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  90. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +36 -36
  91. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  92. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  93. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +26 -26
  94. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  95. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  96. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +26 -26
  97. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  98. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  99. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +26 -26
  100. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  101. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  102. package/web/.next/server/app/_global-error.html +2 -2
  103. package/web/.next/server/app/_global-error.rsc +1 -1
  104. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  105. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  106. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  107. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  108. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  109. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +5 -5
  110. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  111. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  112. package/web/.next/server/app/settings/page/server-reference-manifest.json +8 -8
  113. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  114. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  115. package/web/.next/server/app/skills/page/server-reference-manifest.json +10 -10
  116. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  117. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  118. package/web/.next/server/app/tools/page/server-reference-manifest.json +10 -10
  119. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  120. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  121. package/web/.next/server/app/version/page/server-reference-manifest.json +5 -5
  122. package/web/.next/server/app/version/page.js.nft.json +1 -1
  123. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  124. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  125. package/web/.next/server/chunks/[root-of-the-server]__beda892a._.js.map +1 -1
  126. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
  127. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  128. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  129. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +2 -2
  130. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
  131. package/web/.next/server/chunks/ssr/[root-of-the-server]__209c9597._.js +1 -1
  132. package/web/.next/server/chunks/ssr/[root-of-the-server]__209c9597._.js.map +1 -1
  133. package/web/.next/server/chunks/ssr/[root-of-the-server]__27301e38._.js +1 -1
  134. package/web/.next/server/chunks/ssr/[root-of-the-server]__27301e38._.js.map +1 -1
  135. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  136. package/web/.next/server/chunks/ssr/[root-of-the-server]__56b70465._.js +1 -1
  137. package/web/.next/server/chunks/ssr/[root-of-the-server]__56b70465._.js.map +1 -1
  138. package/web/.next/server/chunks/ssr/[root-of-the-server]__6fecf886._.js +1 -1
  139. package/web/.next/server/chunks/ssr/[root-of-the-server]__6fecf886._.js.map +1 -1
  140. package/web/.next/server/chunks/ssr/[root-of-the-server]__8b0aac03._.js +1 -1
  141. package/web/.next/server/chunks/ssr/[root-of-the-server]__8d27866c._.js +2 -2
  142. package/web/.next/server/chunks/ssr/[root-of-the-server]__8d27866c._.js.map +1 -1
  143. package/web/.next/server/chunks/ssr/[root-of-the-server]__9f3504c7._.js +1 -1
  144. package/web/.next/server/chunks/ssr/[root-of-the-server]__9f3504c7._.js.map +1 -1
  145. package/web/.next/server/chunks/ssr/[root-of-the-server]__bd6ed91a._.js +2 -2
  146. package/web/.next/server/chunks/ssr/[root-of-the-server]__bd6ed91a._.js.map +1 -1
  147. package/web/.next/server/chunks/ssr/[root-of-the-server]__c30f1f82._.js +1 -1
  148. package/web/.next/server/chunks/ssr/[root-of-the-server]__c30f1f82._.js.map +1 -1
  149. package/web/.next/server/chunks/ssr/[root-of-the-server]__f8dd4422._.js +1 -1
  150. package/web/.next/server/chunks/ssr/[root-of-the-server]__f8dd4422._.js.map +1 -1
  151. package/web/.next/server/chunks/ssr/_05c23ad9._.js +1 -1
  152. package/web/.next/server/chunks/ssr/_05c23ad9._.js.map +1 -1
  153. package/web/.next/server/chunks/ssr/_0dc06d07._.js.map +1 -1
  154. package/web/.next/server/chunks/ssr/_16eb4fec._.js +1 -1
  155. package/web/.next/server/chunks/ssr/_16eb4fec._.js.map +1 -1
  156. package/web/.next/server/chunks/ssr/_3a0b989f._.js +2 -2
  157. package/web/.next/server/chunks/ssr/_3a0b989f._.js.map +1 -1
  158. package/web/.next/server/chunks/ssr/_5119a3df._.js.map +1 -1
  159. package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
  160. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
  161. package/web/.next/server/chunks/ssr/_573caadf._.js +3 -0
  162. package/web/.next/server/chunks/ssr/_573caadf._.js.map +1 -0
  163. package/web/.next/server/chunks/ssr/_5f69c13f._.js +1 -1
  164. package/web/.next/server/chunks/ssr/_5f69c13f._.js.map +1 -1
  165. package/web/.next/server/chunks/ssr/{_5fcd76f8._.js → _6bbf9f84._.js} +2 -2
  166. package/web/.next/server/chunks/ssr/{_5fcd76f8._.js.map → _6bbf9f84._.js.map} +1 -1
  167. package/web/.next/server/chunks/ssr/{_e235f1d7._.js → _6c5cf95b._.js} +2 -2
  168. package/web/.next/server/chunks/ssr/{_e235f1d7._.js.map → _6c5cf95b._.js.map} +1 -1
  169. package/web/.next/server/chunks/ssr/{_ce55d5d7._.js → _7656d621._.js} +2 -2
  170. package/web/.next/server/chunks/ssr/{_ce55d5d7._.js.map → _7656d621._.js.map} +1 -1
  171. package/web/.next/server/chunks/ssr/_7c5b97c6._.js +1 -1
  172. package/web/.next/server/chunks/ssr/_7c5b97c6._.js.map +1 -1
  173. package/web/.next/server/chunks/ssr/_82c57f10._.js +1 -1
  174. package/web/.next/server/chunks/ssr/_82c57f10._.js.map +1 -1
  175. package/web/.next/server/chunks/ssr/_9495d50b._.js +1 -1
  176. package/web/.next/server/chunks/ssr/_9495d50b._.js.map +1 -1
  177. package/web/.next/server/chunks/ssr/_a0e3f7e4._.js +1 -1
  178. package/web/.next/server/chunks/ssr/_a0e3f7e4._.js.map +1 -1
  179. package/web/.next/server/chunks/ssr/_ac4a3873._.js +1 -1
  180. package/web/.next/server/chunks/ssr/_ac4a3873._.js.map +1 -1
  181. package/web/.next/server/chunks/ssr/_bb09579b._.js +3 -0
  182. package/web/.next/server/chunks/ssr/_bb09579b._.js.map +1 -0
  183. package/web/.next/server/chunks/ssr/_ca0aa7f0._.js +1 -1
  184. package/web/.next/server/chunks/ssr/_ca0aa7f0._.js.map +1 -1
  185. package/web/.next/server/chunks/ssr/_cb5a021e._.js +1 -1
  186. package/web/.next/server/chunks/ssr/_cb5a021e._.js.map +1 -1
  187. package/web/.next/server/chunks/ssr/_d86175ae._.js +1 -1
  188. package/web/.next/server/chunks/ssr/_d86175ae._.js.map +1 -1
  189. package/web/.next/server/chunks/ssr/_d8bedf13._.js +1 -1
  190. package/web/.next/server/chunks/ssr/_d8bedf13._.js.map +1 -1
  191. package/web/.next/server/chunks/ssr/_fa7efce3._.js +2 -2
  192. package/web/.next/server/chunks/ssr/_fa7efce3._.js.map +1 -1
  193. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  194. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  195. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +1 -1
  196. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js +1 -1
  197. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js.map +1 -1
  198. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  199. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  200. package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js +1 -1
  201. package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js.map +1 -1
  202. package/web/.next/server/pages/500.html +2 -2
  203. package/web/.next/server/server-reference-manifest.js +1 -1
  204. package/web/.next/server/server-reference-manifest.json +45 -45
  205. package/web/.next/static/chunks/{ae817db1b6fa2be0.js → 0c10c30cd38439dc.js} +1 -1
  206. package/web/.next/static/chunks/14d9d9181bb4e337.js +1 -0
  207. package/web/.next/static/chunks/{ed06120ac92793b3.js → 3209de0c4746e264.js} +1 -1
  208. package/web/.next/static/chunks/{bcda6d46050c1477.js → 443c224e560cd12e.js} +1 -1
  209. package/web/.next/static/chunks/{c9b3a4cbc31be5c3.js → 469c4462f812822f.js} +1 -1
  210. package/web/.next/static/chunks/63b4954715fc3423.js +1 -0
  211. package/web/.next/static/chunks/{16fc84c95e5cb130.js → 851606c031f1a310.js} +1 -1
  212. package/web/.next/static/chunks/{59d3ef81a2758df0.js → 90a4d544bbdc4d03.js} +1 -1
  213. package/web/.next/static/chunks/{15433683bac2e176.js → c082649fae82ca78.js} +1 -1
  214. package/web/.next/static/chunks/{2337801081b74f5a.js → cd4674d315f46297.js} +2 -2
  215. package/web/.next/static/chunks/cf0cf05ae9d0469b.js +1 -0
  216. package/web/.next/static/chunks/{552148a08a9b5c5d.js → cfe48b00c8a2d808.js} +1 -1
  217. package/web/.next/static/chunks/{6db5b5b61680673e.js → f13e8d8047af583c.js} +1 -1
  218. package/web/.next/static/chunks/{7f5391c2ef1db758.js → f4381be59156c4b1.js} +3 -3
  219. package/web/.next/server/chunks/ssr/_78ff6f1d._.js +0 -3
  220. package/web/.next/server/chunks/ssr/_78ff6f1d._.js.map +0 -1
  221. package/web/.next/server/chunks/ssr/_8d733ce4._.js +0 -3
  222. package/web/.next/server/chunks/ssr/_8d733ce4._.js.map +0 -1
  223. package/web/.next/static/chunks/0c38793438b8c038.js +0 -1
  224. package/web/.next/static/chunks/9061f08ab7e537a8.js +0 -1
  225. package/web/.next/static/chunks/e2ddb5a0827128c5.js +0 -1
  226. /package/web/.next/static/{cwnv600d0M83uNCbwfGB- → 2iKcf8CT1SHoCuXvnyS0f}/_buildManifest.js +0 -0
  227. /package/web/.next/static/{cwnv600d0M83uNCbwfGB- → 2iKcf8CT1SHoCuXvnyS0f}/_clientMiddlewareManifest.json +0 -0
  228. /package/web/.next/static/{cwnv600d0M83uNCbwfGB- → 2iKcf8CT1SHoCuXvnyS0f}/_ssgManifest.js +0 -0
@@ -271,6 +271,7 @@ const SAMPLE_WORKFLOW_DEFAULTS = {
271
271
  ciWatchEnabled: true,
272
272
  enableEvidence: true,
273
273
  commitEvidence: false,
274
+ fast: true,
274
275
  };
275
276
  /**
276
277
  * Drawer pre-populated from workflow settings — PRD and Plan approval gates
@@ -398,6 +399,38 @@ export const Interactive = {
398
399
  }, repositoryPath: "/Users/dev/my-repo", currentAgentType: "claude-code", currentModel: "claude-sonnet-4-6" })] }));
399
400
  },
400
401
  };
402
+ /* ---------------------------------------------------------------------------
403
+ * Sync (Rebase before branch) stories
404
+ * ------------------------------------------------------------------------- */
405
+ /**
406
+ * Sync toggle ON (default) — the "Sync" toggle in the GIT row is checked.
407
+ * Main will be pulled from remote before the feature branch is created.
408
+ */
409
+ export const SyncOnDefault = {
410
+ render: () => _jsx(CreateDrawerTrigger, { label: "Open (Sync On)" }),
411
+ play: async ({ canvasElement }) => {
412
+ const canvas = within(canvasElement);
413
+ await userEvent.click(canvas.getByRole('button', { name: 'Open (Sync On)' }));
414
+ const body = within(canvasElement.ownerDocument.body);
415
+ // Wait for the GIT row to render and verify Sync toggle exists and is checked
416
+ const syncToggle = await body.findByLabelText('Sync');
417
+ await expect(syncToggle).toBeInTheDocument();
418
+ },
419
+ };
420
+ /**
421
+ * Sync toggle OFF — user disables the "Sync" toggle to skip pulling latest main.
422
+ * Useful when working offline or on local-only repositories.
423
+ */
424
+ export const SyncOff = {
425
+ render: () => _jsx(CreateDrawerTrigger, { label: "Open (Sync Off)" }),
426
+ play: async ({ canvasElement }) => {
427
+ const canvas = within(canvasElement);
428
+ await userEvent.click(canvas.getByRole('button', { name: 'Open (Sync Off)' }));
429
+ const body = within(canvasElement.ownerDocument.body);
430
+ const syncToggle = await body.findByLabelText('Sync');
431
+ await userEvent.click(syncToggle);
432
+ },
433
+ };
401
434
  /* ---------------------------------------------------------------------------
402
435
  * Contribute (Fork & PR) stories
403
436
  * ------------------------------------------------------------------------- */
@@ -1 +1 @@
1
- {"version":3,"file":"settings-page-client.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/features/settings/settings-page-client.tsx"],"names":[],"mappings":"AA2CA,OAAO,KAAK,EACV,QAAQ,EAIT,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AA6B/E,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAC1C;AA+QD,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,kBAAkB,GACnB,EAAE,uBAAuB,2CA8wCzB"}
1
+ {"version":3,"file":"settings-page-client.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/features/settings/settings-page-client.tsx"],"names":[],"mappings":"AA2CA,OAAO,KAAK,EACV,QAAQ,EAIT,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AA6B/E,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAC1C;AA+QD,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,kBAAkB,GACnB,EAAE,uBAAuB,2CA8xCzB"}
@@ -157,6 +157,7 @@ export function SettingsPageClient({ settings, shepHome, dbFileSize, availableTe
157
157
  const [commitEvidence, setCommitEvidence] = useState(settings.workflow.commitEvidence);
158
158
  const [ciWatchEnabled, setCiWatchEnabled] = useState(settings.workflow.ciWatchEnabled !== false);
159
159
  const [hideCiStatus, setHideCiStatus] = useState(settings.workflow.hideCiStatus !== false);
160
+ const [defaultFastMode, setDefaultFastMode] = useState(settings.workflow.defaultFastMode !== false);
160
161
  const [ciMaxFix, setCiMaxFix] = useState(settings.workflow.ciMaxFixAttempts != null ? String(settings.workflow.ciMaxFixAttempts) : '');
161
162
  const [ciTimeout, setCiTimeout] = useState(settings.workflow.ciWatchTimeoutMs != null
162
163
  ? String(Math.round(settings.workflow.ciWatchTimeoutMs / 1000))
@@ -249,6 +250,7 @@ export function SettingsPageClient({ settings, shepHome, dbFileSize, availableTe
249
250
  commitEvidence: overrides.commitEvidence ?? commitEvidence,
250
251
  ciWatchEnabled: overrides.ciWatchEnabled ?? ciWatchEnabled,
251
252
  hideCiStatus: overrides.hideCiStatus ?? hideCiStatus,
253
+ defaultFastMode: overrides.defaultFastMode ?? defaultFastMode,
252
254
  ciMaxFixAttempts: parseOptionalInt(overrides.ciMaxFix ?? ciMaxFix),
253
255
  ciWatchTimeoutMs: timeoutSeconds != null ? timeoutSeconds * 1000 : undefined,
254
256
  ciLogMaxChars: parseOptionalInt(overrides.ciLogMax ?? ciLogMax),
@@ -358,7 +360,10 @@ export function SettingsPageClient({ settings, shepHome, dbFileSize, availableTe
358
360
  label: t('settings.environment.links.configurationGuide'),
359
361
  href: 'https://github.com/shep-ai/shep/blob/main/docs/guides/configuration.md',
360
362
  },
361
- ], children: t('settings.environment.hint') })] }), _jsxs("div", { id: "section-workflow", className: "grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]", children: [_jsxs(SettingsSection, { icon: GitBranch, title: t('settings.workflow.title'), description: t('settings.workflow.sectionDescription'), testId: "workflow-settings-section", children: [_jsx(SubsectionLabel, { children: t('settings.workflow.subsections.approve') }), _jsx(SwitchRow, { label: t('settings.workflow.autoApprovePrd'), description: t('settings.workflow.autoApprovePrdDescription'), id: "allow-prd", testId: "switch-allow-prd", checked: allowPrd, onChange: (v) => {
363
+ ], children: t('settings.environment.hint') })] }), _jsxs("div", { id: "section-workflow", className: "grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]", children: [_jsxs(SettingsSection, { icon: GitBranch, title: t('settings.workflow.title'), description: t('settings.workflow.sectionDescription'), testId: "workflow-settings-section", children: [_jsx(SwitchRow, { label: t('settings.workflow.defaultFastMode'), description: t('settings.workflow.defaultFastModeDescription'), id: "default-fast-mode", testId: "switch-default-fast-mode", checked: defaultFastMode, onChange: (v) => {
364
+ setDefaultFastMode(v);
365
+ save(buildWorkflowPayload({ defaultFastMode: v }));
366
+ } }), _jsx(SubsectionLabel, { children: t('settings.workflow.subsections.approve') }), _jsx(SwitchRow, { label: t('settings.workflow.autoApprovePrd'), description: t('settings.workflow.autoApprovePrdDescription'), id: "allow-prd", testId: "switch-allow-prd", checked: allowPrd, onChange: (v) => {
362
367
  setAllowPrd(v);
363
368
  save(buildWorkflowPayload({ allowPrd: v }));
364
369
  } }), _jsx(SwitchRow, { label: t('settings.workflow.autoApprovePlan'), description: t('settings.workflow.autoApprovePlanDescription'), id: "allow-plan", testId: "switch-allow-plan", checked: allowPlan, onChange: (v) => {
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-settings-section.stories.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/features/settings/workflow-settings-section.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAEtE,QAAA,MAAM,IAAI;;;;;;;CAOsC,CAAC;AAEjD,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAerB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KA6BxB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KA6B5B,CAAC"}
1
+ {"version":3,"file":"workflow-settings-section.stories.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/features/settings/workflow-settings-section.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAEtE,QAAA,MAAM,IAAI;;;;;;;CAOsC,CAAC;AAEjD,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAgBrB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KA8BxB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KA8B5B,CAAC"}
@@ -21,6 +21,7 @@ export const Default = {
21
21
  ciWatchEnabled: true,
22
22
  enableEvidence: false,
23
23
  commitEvidence: false,
24
+ defaultFastMode: true,
24
25
  },
25
26
  },
26
27
  };
@@ -51,6 +52,7 @@ export const AllEnabled = {
51
52
  ciWatchEnabled: true,
52
53
  enableEvidence: true,
53
54
  commitEvidence: true,
55
+ defaultFastMode: true,
54
56
  },
55
57
  },
56
58
  };
@@ -81,6 +83,7 @@ export const WithCiSettings = {
81
83
  ciWatchEnabled: true,
82
84
  enableEvidence: false,
83
85
  commitEvidence: false,
86
+ defaultFastMode: true,
84
87
  },
85
88
  },
86
89
  };
@@ -202,8 +202,10 @@
202
202
  "allowAllOption": "التشغيل بشكل مستقل بالكامل (بدون توقف للموافقة)",
203
203
  "parentOption": "معرّف الميزة الأصلية (كامل أو بادئة جزئية)",
204
204
  "pendingOption": "إنشاء الميزة بدون بدء الوكيل",
205
- "fastOption": "تخطي مراحل SDLC والتنفيذ مباشرة من الأمر",
205
+ "fastOption": "تخطي مراحل SDLC والتنفيذ مباشرة من الأمر (الافتراضي: مفعّل)",
206
+ "noFastOption": "تشغيل جميع مراحل SDLC (تحليل → متطلبات → خطة → تنفيذ)",
206
207
  "modelOption": "معرّف نموذج LLM لهذا التشغيل (مثال: claude-opus-4-6)",
208
+ "noRebaseOption": "Skip syncing main from remote before creating the feature branch",
207
209
  "attachOption": "إرفاق ملف (قابل للتكرار)",
208
210
  "parentNotFound": "الميزة الأصلية غير موجودة: {{id}}",
209
211
  "attachmentNotFound": "المرفق غير موجود: {{path}}",
@@ -67,6 +67,8 @@
67
67
  "title": "سير العمل",
68
68
  "description": "تكوين سلوك PR وبوابات الموافقة وإعدادات CI",
69
69
  "sectionDescription": "سلوك الأتمتة بعد التنفيذ",
70
+ "defaultFastMode": "الوضع السريع كافتراضي",
71
+ "defaultFastModeDescription": "تخطي مراحل SDLC والتنفيذ مباشرة من الأمر",
70
72
  "subsections": {
71
73
  "approve": "الموافقة",
72
74
  "evidence": "الأدلة",
@@ -447,6 +449,8 @@
447
449
  "prDescription": "فتح طلب سحب بعد الدفع.",
448
450
  "watch": "مراقبة",
449
451
  "watchDescription": "مراقبة CI وإصلاح الأخطاء تلقائياً.",
452
+ "sync": "Sync",
453
+ "syncDescription": "Pull latest main from remote before creating the feature branch.",
450
454
  "commitSpecs": "حفظ المواصفات",
451
455
  "commitSpecsDescription": "حفظ المواصفات في المستودع.",
452
456
  "forkAndPr": "Fork و PR",
@@ -202,8 +202,10 @@
202
202
  "allowAllOption": "Vollständig autonom ausführen (keine Genehmigungspausen)",
203
203
  "parentOption": "Übergeordnete Feature-ID (vollständig oder Teilpräfix)",
204
204
  "pendingOption": "Feature erstellen, ohne den Agenten zu starten",
205
- "fastOption": "SDLC-Phasen überspringen und direkt nach Ihrem Prompt implementieren",
205
+ "fastOption": "SDLC-Phasen überspringen und direkt nach Ihrem Prompt implementieren (Standard: ein)",
206
+ "noFastOption": "Alle SDLC-Phasen durchlaufen (Analyse → Anforderungen → Plan → Implementierung)",
206
207
  "modelOption": "LLM-Modellbezeichnung für diesen Lauf (z.B. claude-opus-4-6)",
208
+ "noRebaseOption": "Skip syncing main from remote before creating the feature branch",
207
209
  "attachOption": "Eine Datei anhängen (wiederholbar)",
208
210
  "parentNotFound": "Übergeordnetes Feature nicht gefunden: {{id}}",
209
211
  "attachmentNotFound": "Anhang nicht gefunden: {{path}}",
@@ -65,6 +65,8 @@
65
65
  "title": "Workflow",
66
66
  "description": "Konfigurieren Sie PR-Verhalten, Genehmigungsstufen und CI-Einstellungen",
67
67
  "sectionDescription": "Automatisierungsverhalten nach der Implementierung",
68
+ "defaultFastMode": "Schnellmodus als Standard",
69
+ "defaultFastModeDescription": "SDLC-Phasen überspringen und direkt aus dem Prompt implementieren",
68
70
  "subsections": { "approve": "Genehmigen", "evidence": "Nachweise", "git": "Git" },
69
71
  "autoApprovePrd": "PRD automatisch genehmigen",
70
72
  "autoApprovePrdDescription": "Manuelle Überprüfung der Anforderungen überspringen",
@@ -433,6 +435,8 @@
433
435
  "prDescription": "Nach dem Pushen einen Pull Request öffnen.",
434
436
  "watch": "Überwachen",
435
437
  "watchDescription": "CI überwachen und Fehler automatisch beheben.",
438
+ "sync": "Sync",
439
+ "syncDescription": "Pull latest main from remote before creating the feature branch.",
436
440
  "commitSpecs": "Specs committen",
437
441
  "commitSpecsDescription": "Specs ins Repository committen.",
438
442
  "forkAndPr": "Fork & PR",
@@ -202,8 +202,10 @@
202
202
  "allowAllOption": "Run fully autonomous (no approval pauses)",
203
203
  "parentOption": "Parent feature ID (full or partial prefix)",
204
204
  "pendingOption": "Create feature without starting the agent",
205
- "fastOption": "Skip SDLC phases and implement directly from your prompt",
205
+ "fastOption": "Skip SDLC phases and implement directly from your prompt (default: on)",
206
+ "noFastOption": "Run full SDLC phases (analyze → requirements → plan → implement)",
206
207
  "modelOption": "LLM model identifier for this run (e.g. claude-opus-4-6)",
208
+ "noRebaseOption": "Skip syncing main from remote before creating the feature branch",
207
209
  "attachOption": "Attach a file (repeatable)",
208
210
  "parentNotFound": "Parent feature not found: {{id}}",
209
211
  "attachmentNotFound": "Attachment not found: {{path}}",
@@ -67,6 +67,8 @@
67
67
  "title": "Workflow",
68
68
  "description": "Configure PR behavior, approval gates, and CI settings",
69
69
  "sectionDescription": "Automation behavior after implementation",
70
+ "defaultFastMode": "Fast mode by default",
71
+ "defaultFastModeDescription": "Skip SDLC phases and implement directly from prompt",
70
72
  "subsections": {
71
73
  "approve": "Approve",
72
74
  "evidence": "Evidence",
@@ -447,6 +449,8 @@
447
449
  "prDescription": "Open a pull request after pushing.",
448
450
  "watch": "Watch",
449
451
  "watchDescription": "Watch CI and auto-fix after push.",
452
+ "sync": "Sync",
453
+ "syncDescription": "Pull latest main from remote before creating the feature branch.",
450
454
  "commitSpecs": "Commit Specs",
451
455
  "commitSpecsDescription": "Commit specs to repository.",
452
456
  "forkAndPr": "Fork & PR",
@@ -202,8 +202,10 @@
202
202
  "allowAllOption": "Ejecutar completamente autónomo (sin pausas de aprobación)",
203
203
  "parentOption": "ID de funcionalidad padre (completo o prefijo parcial)",
204
204
  "pendingOption": "Crear funcionalidad sin iniciar el agente",
205
- "fastOption": "Omitir las fases SDLC e implementar directamente desde tu prompt",
205
+ "fastOption": "Omitir las fases SDLC e implementar directamente desde tu prompt (predeterminado: activado)",
206
+ "noFastOption": "Ejecutar todas las fases SDLC (analizar → requisitos → plan → implementar)",
206
207
  "modelOption": "Identificador del modelo LLM para esta ejecución (ej., claude-opus-4-6)",
208
+ "noRebaseOption": "Skip syncing main from remote before creating the feature branch",
207
209
  "attachOption": "Adjuntar un archivo (repetible)",
208
210
  "parentNotFound": "Funcionalidad padre no encontrada: {{id}}",
209
211
  "attachmentNotFound": "Archivo adjunto no encontrado: {{path}}",
@@ -67,6 +67,8 @@
67
67
  "title": "Flujo de trabajo",
68
68
  "description": "Configura el comportamiento de PR, puertas de aprobación y configuración de CI",
69
69
  "sectionDescription": "Comportamiento de automatización después de la implementación",
70
+ "defaultFastMode": "Modo rápido por defecto",
71
+ "defaultFastModeDescription": "Omitir fases SDLC e implementar directamente desde el prompt",
70
72
  "subsections": {
71
73
  "approve": "Aprobar",
72
74
  "evidence": "Evidencia",
@@ -447,6 +449,8 @@
447
449
  "prDescription": "Abrir un pull request después de enviar.",
448
450
  "watch": "Vigilar",
449
451
  "watchDescription": "Vigilar CI y auto-corregir errores.",
452
+ "sync": "Sync",
453
+ "syncDescription": "Pull latest main from remote before creating the feature branch.",
450
454
  "commitSpecs": "Commit de specs",
451
455
  "commitSpecsDescription": "Hacer commit de specs al repositorio.",
452
456
  "forkAndPr": "Fork y PR",
@@ -202,8 +202,10 @@
202
202
  "allowAllOption": "Exécuter de manière entièrement autonome (sans pause d'approbation)",
203
203
  "parentOption": "ID de fonctionnalité parente (préfixe complet ou partiel)",
204
204
  "pendingOption": "Créer la fonctionnalité sans démarrer l'agent",
205
- "fastOption": "Ignorer les phases SDLC et implémenter directement à partir de votre invite",
205
+ "fastOption": "Ignorer les phases SDLC et implémenter directement à partir de votre invite (par défaut: activé)",
206
+ "noFastOption": "Exécuter toutes les phases SDLC (analyser → exigences → plan → implémenter)",
206
207
  "modelOption": "Identifiant du modèle LLM pour cette exécution (par ex. claude-opus-4-6)",
208
+ "noRebaseOption": "Skip syncing main from remote before creating the feature branch",
207
209
  "attachOption": "Joindre un fichier (répétable)",
208
210
  "parentNotFound": "Fonctionnalité parente introuvable : {{id}}",
209
211
  "attachmentNotFound": "Pièce jointe introuvable : {{path}}",
@@ -67,6 +67,8 @@
67
67
  "title": "Workflow",
68
68
  "description": "Configurez le comportement des PR, les portes d'approbation et les paramètres CI",
69
69
  "sectionDescription": "Comportement d'automatisation après l'implémentation",
70
+ "defaultFastMode": "Mode rapide par défaut",
71
+ "defaultFastModeDescription": "Ignorer les phases SDLC et implémenter directement depuis le prompt",
70
72
  "subsections": {
71
73
  "approve": "Approuver",
72
74
  "evidence": "Preuves",
@@ -447,6 +449,8 @@
447
449
  "prDescription": "Ouvrir un pull request après avoir poussé.",
448
450
  "watch": "Surveiller",
449
451
  "watchDescription": "Surveiller le CI et auto-corriger les erreurs.",
452
+ "sync": "Sync",
453
+ "syncDescription": "Pull latest main from remote before creating the feature branch.",
450
454
  "commitSpecs": "Commit des specs",
451
455
  "commitSpecsDescription": "Commiter les specs dans le dépôt.",
452
456
  "forkAndPr": "Fork et PR",
@@ -202,8 +202,10 @@
202
202
  "allowAllOption": "הרץ באופן אוטונומי מלא (ללא עצירות אישור)",
203
203
  "parentOption": "מזהה פיצ'ר הורה (מלא או קידומת חלקית)",
204
204
  "pendingOption": "צור פיצ'ר מבלי להפעיל את הסוכן",
205
- "fastOption": "דלג על שלבי SDLC ומימש ישירות מההנחיה שלך",
205
+ "fastOption": "דלג על שלבי SDLC ומימש ישירות מההנחיה שלך (ברירת מחדל: מופעל)",
206
+ "noFastOption": "הרץ את כל שלבי ה-SDLC (ניתוח → דרישות → תוכנית → מימוש)",
206
207
  "modelOption": "מזהה מודל LLM להרצה זו (לדוגמה claude-opus-4-6)",
208
+ "noRebaseOption": "Skip syncing main from remote before creating the feature branch",
207
209
  "attachOption": "צרף קובץ (ניתן לחזור)",
208
210
  "parentNotFound": "פיצ'ר הורה לא נמצא: {{id}}",
209
211
  "attachmentNotFound": "קובץ מצורף לא נמצא: {{path}}",
@@ -67,6 +67,8 @@
67
67
  "title": "תהליך עבודה",
68
68
  "description": "הגדר התנהגות PR, שערי אישור והגדרות CI",
69
69
  "sectionDescription": "התנהגות אוטומציה לאחר מימוש",
70
+ "defaultFastMode": "מצב מהיר כברירת מחדל",
71
+ "defaultFastModeDescription": "דילוג על שלבי SDLC ויישום ישירות מהפרומפט",
70
72
  "subsections": {
71
73
  "approve": "אישור",
72
74
  "evidence": "ראיות",
@@ -447,6 +449,8 @@
447
449
  "prDescription": "פתיחת בקשת משיכה לאחר הדחיפה.",
448
450
  "watch": "מעקב",
449
451
  "watchDescription": "מעקב אחר CI ותיקון שגיאות אוטומטי.",
452
+ "sync": "Sync",
453
+ "syncDescription": "Pull latest main from remote before creating the feature branch.",
450
454
  "commitSpecs": "שמירת מפרטים",
451
455
  "commitSpecsDescription": "שמירת מפרטים למאגר.",
452
456
  "forkAndPr": "Fork ו-PR",
@@ -202,8 +202,10 @@
202
202
  "allowAllOption": "Executar totalmente autônomo (sem pausas de aprovação)",
203
203
  "parentOption": "ID do recurso pai (prefixo completo ou parcial)",
204
204
  "pendingOption": "Criar recurso sem iniciar o agente",
205
- "fastOption": "Pular fases do SDLC e implementar diretamente a partir do seu prompt",
205
+ "fastOption": "Pular fases do SDLC e implementar diretamente a partir do seu prompt (padrão: ativado)",
206
+ "noFastOption": "Executar todas as fases do SDLC (analisar → requisitos → plano → implementar)",
206
207
  "modelOption": "Identificador do modelo LLM para esta execução (ex: claude-opus-4-6)",
208
+ "noRebaseOption": "Skip syncing main from remote before creating the feature branch",
207
209
  "attachOption": "Anexar um arquivo (repetível)",
208
210
  "parentNotFound": "Recurso pai não encontrado: {{id}}",
209
211
  "attachmentNotFound": "Anexo não encontrado: {{path}}",
@@ -67,6 +67,8 @@
67
67
  "title": "Fluxo de Trabalho",
68
68
  "description": "Configure o comportamento de PR, portas de aprovação e configurações de CI",
69
69
  "sectionDescription": "Comportamento de automação após a implementação",
70
+ "defaultFastMode": "Modo rápido por padrão",
71
+ "defaultFastModeDescription": "Pular fases SDLC e implementar direto do prompt",
70
72
  "subsections": {
71
73
  "approve": "Aprovar",
72
74
  "evidence": "Evidência",
@@ -447,6 +449,8 @@
447
449
  "prDescription": "Abrir um pull request após enviar.",
448
450
  "watch": "Monitorar",
449
451
  "watchDescription": "Monitorar CI e auto-corrigir erros.",
452
+ "sync": "Sync",
453
+ "syncDescription": "Pull latest main from remote before creating the feature branch.",
450
454
  "commitSpecs": "Commit de specs",
451
455
  "commitSpecsDescription": "Fazer commit de specs no repositório.",
452
456
  "forkAndPr": "Fork e PR",
@@ -202,8 +202,10 @@
202
202
  "allowAllOption": "Запуск полностью автономно (без пауз для одобрения)",
203
203
  "parentOption": "Идентификатор родительской функции (полный или частичный префикс)",
204
204
  "pendingOption": "Создать функцию без запуска агента",
205
- "fastOption": "Пропустить фазы SDLC и реализовать непосредственно из вашего промпта",
205
+ "fastOption": "Пропустить фазы SDLC и реализовать непосредственно из вашего промпта (по умолчанию: вкл.)",
206
+ "noFastOption": "Выполнить все фазы SDLC (анализ → требования → план → реализация)",
206
207
  "modelOption": "Идентификатор модели LLM для этого запуска (например, claude-opus-4-6)",
208
+ "noRebaseOption": "Skip syncing main from remote before creating the feature branch",
207
209
  "attachOption": "Прикрепить файл (можно повторять)",
208
210
  "parentNotFound": "Родительская функция не найдена: {{id}}",
209
211
  "attachmentNotFound": "Вложение не найдено: {{path}}",
@@ -67,6 +67,8 @@
67
67
  "title": "Рабочий процесс",
68
68
  "description": "Настройте поведение PR, этапы одобрения и параметры CI",
69
69
  "sectionDescription": "Поведение автоматизации после реализации",
70
+ "defaultFastMode": "Быстрый режим по умолчанию",
71
+ "defaultFastModeDescription": "Пропустить фазы SDLC и реализовать напрямую из промпта",
70
72
  "subsections": {
71
73
  "approve": "Одобрение",
72
74
  "evidence": "Подтверждение",
@@ -447,6 +449,8 @@
447
449
  "prDescription": "Открыть запрос на слияние после отправки.",
448
450
  "watch": "Наблюдение",
449
451
  "watchDescription": "Следить за CI и автоматически исправлять ошибки.",
452
+ "sync": "Sync",
453
+ "syncDescription": "Pull latest main from remote before creating the feature branch.",
450
454
  "commitSpecs": "Коммит спецификаций",
451
455
  "commitSpecsDescription": "Закоммитить спецификации в репозиторий.",
452
456
  "forkAndPr": "Форк и PR",