reviewflow 3.4.0 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/cli/parseCliArgs.d.ts +6 -1
  3. package/dist/cli/parseCliArgs.d.ts.map +1 -1
  4. package/dist/cli/parseCliArgs.js +11 -1
  5. package/dist/cli/parseCliArgs.js.map +1 -1
  6. package/dist/config/projectConfig.d.ts +6 -0
  7. package/dist/config/projectConfig.d.ts.map +1 -1
  8. package/dist/config/projectConfig.js +13 -0
  9. package/dist/config/projectConfig.js.map +1 -1
  10. package/dist/entities/language/language.schema.d.ts +7 -0
  11. package/dist/entities/language/language.schema.d.ts.map +1 -0
  12. package/dist/entities/language/language.schema.js +3 -0
  13. package/dist/entities/language/language.schema.js.map +1 -0
  14. package/dist/frameworks/claude/claudeInvoker.d.ts +1 -1
  15. package/dist/frameworks/claude/claudeInvoker.d.ts.map +1 -1
  16. package/dist/frameworks/claude/claudeInvoker.js +6 -3
  17. package/dist/frameworks/claude/claudeInvoker.js.map +1 -1
  18. package/dist/frameworks/claude/languageDirective.d.ts +3 -0
  19. package/dist/frameworks/claude/languageDirective.d.ts.map +1 -0
  20. package/dist/frameworks/claude/languageDirective.js +9 -0
  21. package/dist/frameworks/claude/languageDirective.js.map +1 -0
  22. package/dist/frameworks/queue/pQueueAdapter.d.ts +2 -0
  23. package/dist/frameworks/queue/pQueueAdapter.d.ts.map +1 -1
  24. package/dist/frameworks/queue/pQueueAdapter.js +1 -1
  25. package/dist/frameworks/queue/pQueueAdapter.js.map +1 -1
  26. package/dist/frameworks/settings/runtimeSettings.d.ts +4 -0
  27. package/dist/frameworks/settings/runtimeSettings.d.ts.map +1 -1
  28. package/dist/frameworks/settings/runtimeSettings.js +8 -1
  29. package/dist/frameworks/settings/runtimeSettings.js.map +1 -1
  30. package/dist/interface-adapters/controllers/http/settings.routes.d.ts.map +1 -1
  31. package/dist/interface-adapters/controllers/http/settings.routes.js +12 -1
  32. package/dist/interface-adapters/controllers/http/settings.routes.js.map +1 -1
  33. package/dist/interface-adapters/controllers/webhook/github.controller.d.ts.map +1 -1
  34. package/dist/interface-adapters/controllers/webhook/github.controller.js +2 -1
  35. package/dist/interface-adapters/controllers/webhook/github.controller.js.map +1 -1
  36. package/dist/interface-adapters/controllers/webhook/gitlab.controller.d.ts.map +1 -1
  37. package/dist/interface-adapters/controllers/webhook/gitlab.controller.js +2 -1
  38. package/dist/interface-adapters/controllers/webhook/gitlab.controller.js.map +1 -1
  39. package/dist/interface-adapters/views/dashboard/index.html +974 -393
  40. package/dist/interface-adapters/views/dashboard/modules/assignee.d.ts +7 -0
  41. package/dist/interface-adapters/views/dashboard/modules/assignee.d.ts.map +1 -0
  42. package/dist/interface-adapters/views/dashboard/modules/assignee.js +47 -0
  43. package/dist/interface-adapters/views/dashboard/modules/assignee.js.map +1 -0
  44. package/dist/interface-adapters/views/dashboard/modules/constants.d.ts +7 -0
  45. package/dist/interface-adapters/views/dashboard/modules/constants.d.ts.map +1 -0
  46. package/dist/interface-adapters/views/dashboard/modules/constants.js +6 -0
  47. package/dist/interface-adapters/views/dashboard/modules/constants.js.map +1 -0
  48. package/dist/interface-adapters/views/dashboard/modules/desktopNotifications.d.ts +23 -0
  49. package/dist/interface-adapters/views/dashboard/modules/desktopNotifications.d.ts.map +1 -0
  50. package/dist/interface-adapters/views/dashboard/modules/desktopNotifications.js +37 -0
  51. package/dist/interface-adapters/views/dashboard/modules/desktopNotifications.js.map +1 -0
  52. package/dist/interface-adapters/views/dashboard/modules/formatting.d.ts +23 -0
  53. package/dist/interface-adapters/views/dashboard/modules/formatting.d.ts.map +1 -0
  54. package/dist/interface-adapters/views/dashboard/modules/formatting.js +57 -0
  55. package/dist/interface-adapters/views/dashboard/modules/formatting.js.map +1 -0
  56. package/dist/interface-adapters/views/dashboard/modules/html.d.ts +16 -0
  57. package/dist/interface-adapters/views/dashboard/modules/html.d.ts.map +1 -0
  58. package/dist/interface-adapters/views/dashboard/modules/html.js +68 -0
  59. package/dist/interface-adapters/views/dashboard/modules/html.js.map +1 -0
  60. package/dist/interface-adapters/views/dashboard/modules/i18n.d.ts +11 -0
  61. package/dist/interface-adapters/views/dashboard/modules/i18n.d.ts.map +1 -0
  62. package/dist/interface-adapters/views/dashboard/modules/i18n.js +500 -0
  63. package/dist/interface-adapters/views/dashboard/modules/i18n.js.map +1 -0
  64. package/dist/interface-adapters/views/dashboard/modules/icons.d.ts +13 -0
  65. package/dist/interface-adapters/views/dashboard/modules/icons.d.ts.map +1 -0
  66. package/dist/interface-adapters/views/dashboard/modules/icons.js +29 -0
  67. package/dist/interface-adapters/views/dashboard/modules/icons.js.map +1 -0
  68. package/dist/interface-adapters/views/dashboard/modules/loading.d.ts +30 -0
  69. package/dist/interface-adapters/views/dashboard/modules/loading.d.ts.map +1 -0
  70. package/dist/interface-adapters/views/dashboard/modules/loading.js +48 -0
  71. package/dist/interface-adapters/views/dashboard/modules/loading.js.map +1 -0
  72. package/dist/interface-adapters/views/dashboard/modules/notifications.d.ts +39 -0
  73. package/dist/interface-adapters/views/dashboard/modules/notifications.d.ts.map +1 -0
  74. package/dist/interface-adapters/views/dashboard/modules/notifications.js +131 -0
  75. package/dist/interface-adapters/views/dashboard/modules/notifications.js.map +1 -0
  76. package/dist/interface-adapters/views/dashboard/modules/priority.d.ts +10 -0
  77. package/dist/interface-adapters/views/dashboard/modules/priority.d.ts.map +1 -0
  78. package/dist/interface-adapters/views/dashboard/modules/priority.js +86 -0
  79. package/dist/interface-adapters/views/dashboard/modules/priority.js.map +1 -0
  80. package/dist/interface-adapters/views/dashboard/modules/quality.d.ts +30 -0
  81. package/dist/interface-adapters/views/dashboard/modules/quality.d.ts.map +1 -0
  82. package/dist/interface-adapters/views/dashboard/modules/quality.js +83 -0
  83. package/dist/interface-adapters/views/dashboard/modules/quality.js.map +1 -0
  84. package/dist/interface-adapters/views/dashboard/modules/queueLanes.d.ts +22 -0
  85. package/dist/interface-adapters/views/dashboard/modules/queueLanes.d.ts.map +1 -0
  86. package/dist/interface-adapters/views/dashboard/modules/queueLanes.js +27 -0
  87. package/dist/interface-adapters/views/dashboard/modules/queueLanes.js.map +1 -0
  88. package/dist/interface-adapters/views/dashboard/modules/sessionMetrics.d.ts +54 -0
  89. package/dist/interface-adapters/views/dashboard/modules/sessionMetrics.d.ts.map +1 -0
  90. package/dist/interface-adapters/views/dashboard/modules/sessionMetrics.js +120 -0
  91. package/dist/interface-adapters/views/dashboard/modules/sessionMetrics.js.map +1 -0
  92. package/dist/interface-adapters/views/dashboard/styles.css +1031 -93
  93. package/dist/main/cli.d.ts +41 -1
  94. package/dist/main/cli.d.ts.map +1 -1
  95. package/dist/main/cli.js +228 -88
  96. package/dist/main/cli.js.map +1 -1
  97. package/dist/tests/factories/reviewJob.factory.d.ts.map +1 -1
  98. package/dist/tests/factories/reviewJob.factory.js +1 -0
  99. package/dist/tests/factories/reviewJob.factory.js.map +1 -1
  100. package/dist/tests/units/cli/parseCliArgs.test.js +14 -0
  101. package/dist/tests/units/cli/parseCliArgs.test.js.map +1 -1
  102. package/dist/tests/units/config/projectConfig.test.d.ts +2 -0
  103. package/dist/tests/units/config/projectConfig.test.d.ts.map +1 -0
  104. package/dist/tests/units/config/projectConfig.test.js +69 -0
  105. package/dist/tests/units/config/projectConfig.test.js.map +1 -0
  106. package/dist/tests/units/entities/language/language.schema.test.d.ts +2 -0
  107. package/dist/tests/units/entities/language/language.schema.test.d.ts.map +1 -0
  108. package/dist/tests/units/entities/language/language.schema.test.js +17 -0
  109. package/dist/tests/units/entities/language/language.schema.test.js.map +1 -0
  110. package/dist/tests/units/frameworks/claude/languageDirective.test.d.ts +2 -0
  111. package/dist/tests/units/frameworks/claude/languageDirective.test.d.ts.map +1 -0
  112. package/dist/tests/units/frameworks/claude/languageDirective.test.js +13 -0
  113. package/dist/tests/units/frameworks/claude/languageDirective.test.js.map +1 -0
  114. package/dist/tests/units/frameworks/settings/runtimeSettings.test.d.ts +2 -0
  115. package/dist/tests/units/frameworks/settings/runtimeSettings.test.d.ts.map +1 -0
  116. package/dist/tests/units/frameworks/settings/runtimeSettings.test.js +20 -0
  117. package/dist/tests/units/frameworks/settings/runtimeSettings.test.js.map +1 -0
  118. package/dist/tests/units/interface-adapters/controllers/webhook/gitlab.controller.test.js +1 -0
  119. package/dist/tests/units/interface-adapters/controllers/webhook/gitlab.controller.test.js.map +1 -1
  120. package/dist/tests/units/interface-adapters/views/dashboard/modules/assignee.test.d.ts +2 -0
  121. package/dist/tests/units/interface-adapters/views/dashboard/modules/assignee.test.d.ts.map +1 -0
  122. package/dist/tests/units/interface-adapters/views/dashboard/modules/assignee.test.js +35 -0
  123. package/dist/tests/units/interface-adapters/views/dashboard/modules/assignee.test.js.map +1 -0
  124. package/dist/tests/units/interface-adapters/views/dashboard/modules/constants.test.d.ts +2 -0
  125. package/dist/tests/units/interface-adapters/views/dashboard/modules/constants.test.d.ts.map +1 -0
  126. package/dist/tests/units/interface-adapters/views/dashboard/modules/constants.test.js +17 -0
  127. package/dist/tests/units/interface-adapters/views/dashboard/modules/constants.test.js.map +1 -0
  128. package/dist/tests/units/interface-adapters/views/dashboard/modules/desktopNotifications.test.d.ts +2 -0
  129. package/dist/tests/units/interface-adapters/views/dashboard/modules/desktopNotifications.test.d.ts.map +1 -0
  130. package/dist/tests/units/interface-adapters/views/dashboard/modules/desktopNotifications.test.js +54 -0
  131. package/dist/tests/units/interface-adapters/views/dashboard/modules/desktopNotifications.test.js.map +1 -0
  132. package/dist/tests/units/interface-adapters/views/dashboard/modules/formatting.test.d.ts +2 -0
  133. package/dist/tests/units/interface-adapters/views/dashboard/modules/formatting.test.d.ts.map +1 -0
  134. package/dist/tests/units/interface-adapters/views/dashboard/modules/formatting.test.js +95 -0
  135. package/dist/tests/units/interface-adapters/views/dashboard/modules/formatting.test.js.map +1 -0
  136. package/dist/tests/units/interface-adapters/views/dashboard/modules/html.test.d.ts +2 -0
  137. package/dist/tests/units/interface-adapters/views/dashboard/modules/html.test.d.ts.map +1 -0
  138. package/dist/tests/units/interface-adapters/views/dashboard/modules/html.test.js +55 -0
  139. package/dist/tests/units/interface-adapters/views/dashboard/modules/html.test.js.map +1 -0
  140. package/dist/tests/units/interface-adapters/views/dashboard/modules/i18n.test.d.ts +2 -0
  141. package/dist/tests/units/interface-adapters/views/dashboard/modules/i18n.test.d.ts.map +1 -0
  142. package/dist/tests/units/interface-adapters/views/dashboard/modules/i18n.test.js +98 -0
  143. package/dist/tests/units/interface-adapters/views/dashboard/modules/i18n.test.js.map +1 -0
  144. package/dist/tests/units/interface-adapters/views/dashboard/modules/icons.test.d.ts +2 -0
  145. package/dist/tests/units/interface-adapters/views/dashboard/modules/icons.test.d.ts.map +1 -0
  146. package/dist/tests/units/interface-adapters/views/dashboard/modules/icons.test.js +28 -0
  147. package/dist/tests/units/interface-adapters/views/dashboard/modules/icons.test.js.map +1 -0
  148. package/dist/tests/units/interface-adapters/views/dashboard/modules/loading.test.d.ts +2 -0
  149. package/dist/tests/units/interface-adapters/views/dashboard/modules/loading.test.d.ts.map +1 -0
  150. package/dist/tests/units/interface-adapters/views/dashboard/modules/loading.test.js +51 -0
  151. package/dist/tests/units/interface-adapters/views/dashboard/modules/loading.test.js.map +1 -0
  152. package/dist/tests/units/interface-adapters/views/dashboard/modules/notifications.test.d.ts +2 -0
  153. package/dist/tests/units/interface-adapters/views/dashboard/modules/notifications.test.d.ts.map +1 -0
  154. package/dist/tests/units/interface-adapters/views/dashboard/modules/notifications.test.js +43 -0
  155. package/dist/tests/units/interface-adapters/views/dashboard/modules/notifications.test.js.map +1 -0
  156. package/dist/tests/units/interface-adapters/views/dashboard/modules/priority.test.d.ts +2 -0
  157. package/dist/tests/units/interface-adapters/views/dashboard/modules/priority.test.d.ts.map +1 -0
  158. package/dist/tests/units/interface-adapters/views/dashboard/modules/priority.test.js +78 -0
  159. package/dist/tests/units/interface-adapters/views/dashboard/modules/priority.test.js.map +1 -0
  160. package/dist/tests/units/interface-adapters/views/dashboard/modules/quality.test.d.ts +2 -0
  161. package/dist/tests/units/interface-adapters/views/dashboard/modules/quality.test.d.ts.map +1 -0
  162. package/dist/tests/units/interface-adapters/views/dashboard/modules/quality.test.js +87 -0
  163. package/dist/tests/units/interface-adapters/views/dashboard/modules/quality.test.js.map +1 -0
  164. package/dist/tests/units/interface-adapters/views/dashboard/modules/queueLanes.test.d.ts +2 -0
  165. package/dist/tests/units/interface-adapters/views/dashboard/modules/queueLanes.test.d.ts.map +1 -0
  166. package/dist/tests/units/interface-adapters/views/dashboard/modules/queueLanes.test.js +29 -0
  167. package/dist/tests/units/interface-adapters/views/dashboard/modules/queueLanes.test.js.map +1 -0
  168. package/dist/tests/units/interface-adapters/views/dashboard/modules/sessionMetrics.test.d.ts +2 -0
  169. package/dist/tests/units/interface-adapters/views/dashboard/modules/sessionMetrics.test.d.ts.map +1 -0
  170. package/dist/tests/units/interface-adapters/views/dashboard/modules/sessionMetrics.test.js +60 -0
  171. package/dist/tests/units/interface-adapters/views/dashboard/modules/sessionMetrics.test.js.map +1 -0
  172. package/dist/tests/units/main/executeDiscover.test.d.ts +2 -0
  173. package/dist/tests/units/main/executeDiscover.test.d.ts.map +1 -0
  174. package/dist/tests/units/main/executeDiscover.test.js +106 -0
  175. package/dist/tests/units/main/executeDiscover.test.js.map +1 -0
  176. package/dist/tests/units/main/executeInit.test.d.ts +2 -0
  177. package/dist/tests/units/main/executeInit.test.d.ts.map +1 -0
  178. package/dist/tests/units/main/executeInit.test.js +290 -0
  179. package/dist/tests/units/main/executeInit.test.js.map +1 -0
  180. package/dist/tests/units/usecases/cli/addRepositoriesToConfig.usecase.test.d.ts +2 -0
  181. package/dist/tests/units/usecases/cli/addRepositoriesToConfig.usecase.test.d.ts.map +1 -0
  182. package/dist/tests/units/usecases/cli/addRepositoriesToConfig.usecase.test.js +127 -0
  183. package/dist/tests/units/usecases/cli/addRepositoriesToConfig.usecase.test.js.map +1 -0
  184. package/dist/tests/units/usecases/cli/checkInitPrerequisites.test.d.ts +2 -0
  185. package/dist/tests/units/usecases/cli/checkInitPrerequisites.test.d.ts.map +1 -0
  186. package/dist/tests/units/usecases/cli/checkInitPrerequisites.test.js +57 -0
  187. package/dist/tests/units/usecases/cli/checkInitPrerequisites.test.js.map +1 -0
  188. package/dist/usecases/cli/addRepositoriesToConfig.usecase.d.ts +27 -0
  189. package/dist/usecases/cli/addRepositoriesToConfig.usecase.d.ts.map +1 -0
  190. package/dist/usecases/cli/addRepositoriesToConfig.usecase.js +34 -0
  191. package/dist/usecases/cli/addRepositoriesToConfig.usecase.js.map +1 -0
  192. package/dist/usecases/cli/checkInitPrerequisites.d.ts +16 -0
  193. package/dist/usecases/cli/checkInitPrerequisites.d.ts.map +1 -0
  194. package/dist/usecases/cli/checkInitPrerequisites.js +23 -0
  195. package/dist/usecases/cli/checkInitPrerequisites.js.map +1 -0
  196. package/dist/usecases/cli/configureMcp.usecase.d.ts +1 -1
  197. package/dist/usecases/cli/configureMcp.usecase.d.ts.map +1 -1
  198. package/dist/usecases/cli/validateConfig.usecase.d.ts +1 -1
  199. package/dist/usecases/cli/validateConfig.usecase.d.ts.map +1 -1
  200. package/dist/usecases/triggerReview.usecase.d.ts +2 -0
  201. package/dist/usecases/triggerReview.usecase.d.ts.map +1 -1
  202. package/dist/usecases/triggerReview.usecase.js +1 -0
  203. package/dist/usecases/triggerReview.usecase.js.map +1 -1
  204. package/package.json +1 -1
  205. package/templates/SETUP.md +23 -8
@@ -3,6 +3,11 @@ import { type StartDaemonDependencies } from '../usecases/cli/startDaemon.usecas
3
3
  import { type StopDaemonDependencies } from '../usecases/cli/stopDaemon.usecase.js';
4
4
  import { type QueryStatusDependencies } from '../usecases/cli/queryStatus.usecase.js';
5
5
  import { type ReadLogsDependencies } from '../usecases/cli/readLogs.usecase.js';
6
+ import { type DiscoveredRepository, type DiscoverRepositoriesResult } from '../usecases/cli/discoverRepositories.usecase.js';
7
+ import { type ConfigureMcpResult } from '../usecases/cli/configureMcp.usecase.js';
8
+ import { type WriteInitConfigInput, type WriteInitConfigResult } from '../usecases/cli/writeInitConfig.usecase.js';
9
+ import { type InitSummaryInput } from '../cli/formatters/initSummary.js';
10
+ import { type PrerequisitesResult } from '../usecases/cli/checkInitPrerequisites.js';
6
11
  export interface StartDependencies {
7
12
  validateDependencies: () => {
8
13
  name: string;
@@ -40,6 +45,41 @@ export interface LogsDeps {
40
45
  exit: (code: number) => void;
41
46
  }
42
47
  export declare function executeLogs(follow: boolean, lines: number, deps: LogsDeps): void;
43
- export declare function executeInit(yes: boolean, skipMcp: boolean, showSecrets: boolean, scanPaths: string[]): Promise<void>;
48
+ export type PlatformChoice = 'gitlab' | 'github' | 'both';
49
+ export interface InitDependencies {
50
+ log: (...args: unknown[]) => void;
51
+ exit: (code: number) => void;
52
+ getConfigDir: () => string;
53
+ existsSync: (path: string) => boolean;
54
+ checkPrerequisites: () => PrerequisitesResult;
55
+ confirmOverwrite: (configPath: string) => Promise<boolean>;
56
+ promptPlatform: () => Promise<PlatformChoice>;
57
+ promptPort: () => Promise<number>;
58
+ promptGitlabUsername: () => Promise<string>;
59
+ promptGithubUsername: () => Promise<string>;
60
+ confirmScanRepositories: () => Promise<boolean>;
61
+ selectRepositories: (repos: DiscoveredRepository[]) => Promise<DiscoveredRepository[]>;
62
+ generateWebhookSecret: () => string;
63
+ truncateSecret: (secret: string, length: number) => string;
64
+ discoverRepositories: (scanPaths: string[], maxDepth: number) => DiscoverRepositoriesResult;
65
+ configureMcp: () => ConfigureMcpResult;
66
+ writeConfig: (input: WriteInitConfigInput) => WriteInitConfigResult;
67
+ formatSummary: (input: InitSummaryInput) => string;
68
+ }
69
+ export declare function executeInit(yes: boolean, skipMcp: boolean, showSecrets: boolean, scanPaths: string[], deps: InitDependencies): Promise<void>;
70
+ export interface DiscoverDependencies {
71
+ existsSync: (path: string) => boolean;
72
+ readFileSync: (path: string, encoding: BufferEncoding) => string;
73
+ writeFileSync: (path: string, content: string) => void;
74
+ readdirSync: (path: string) => Array<{
75
+ name: string;
76
+ isDirectory: () => boolean;
77
+ }>;
78
+ getGitRemoteUrl: (localPath: string) => string | null;
79
+ getConfigPath: () => string;
80
+ log: (...args: unknown[]) => void;
81
+ selectRepositories: (repositories: DiscoveredRepository[]) => Promise<DiscoveredRepository[]>;
82
+ }
83
+ export declare function executeDiscover(scanPaths: string[], maxDepth: number, deps: DiscoverDependencies): Promise<void>;
44
84
  export declare function executeValidate(fix: boolean): void;
45
85
  //# sourceMappingURL=cli.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/main/cli.ts"],"names":[],"mappings":";AAUA,OAAO,EAAsB,KAAK,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAC1G,OAAO,EAAqB,KAAK,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AACvG,OAAO,EAAsB,KAAK,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAC1G,OAAO,EAAmB,KAAK,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AA8EjG,MAAM,WAAW,iBAAiB;IAChC,oBAAoB,EAAE,MAAM;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACnE,WAAW,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpC,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAClC,eAAe,EAAE,uBAAuB,CAAC;IACzC,eAAe,EAAE,MAAM;QAAE,gBAAgB,EAAE,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7F,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAkBD,wBAAgB,YAAY,CAC1B,mBAAmB,EAAE,OAAO,EAC5B,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,iBAAiB,GACtB,IAAI,CA0CN;AAED,MAAM,WAAW,QAAQ;IACvB,cAAc,EAAE,sBAAsB,CAAC;IACvC,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAClC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,GAAG,IAAI,CAgBhE;AAED,MAAM,WAAW,UAAU;IACzB,eAAe,EAAE,uBAAuB,CAAC;IACzC,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAClC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI,CAmBnE;AAED,MAAM,WAAW,QAAQ;IACvB,YAAY,EAAE,oBAAoB,CAAC;IACnC,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAClC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,IAAI,CAyBhF;AAwCD,wBAAsB,WAAW,CAC/B,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,IAAI,CAAC,CA4Jf;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CA0ClD"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/main/cli.ts"],"names":[],"mappings":"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"}
package/dist/main/cli.js CHANGED
@@ -6,7 +6,7 @@ import { execSync } from 'node:child_process';
6
6
  import { homedir } from 'node:os';
7
7
  import { parseCliArgs } from '../cli/parseCliArgs.js';
8
8
  import { validateDependencies, checkDependency } from '../shared/services/dependencyChecker.js';
9
- import { startServer } from './server.js';
9
+ import { startServer } from '../main/server.js';
10
10
  import { StartDaemonUseCase } from '../usecases/cli/startDaemon.usecase.js';
11
11
  import { StopDaemonUseCase } from '../usecases/cli/stopDaemon.usecase.js';
12
12
  import { QueryStatusUseCase } from '../usecases/cli/queryStatus.usecase.js';
@@ -27,8 +27,10 @@ import { DiscoverRepositoriesUseCase } from '../usecases/cli/discoverRepositorie
27
27
  import { ConfigureMcpUseCase } from '../usecases/cli/configureMcp.usecase.js';
28
28
  import { WriteInitConfigUseCase } from '../usecases/cli/writeInitConfig.usecase.js';
29
29
  import { ValidateConfigUseCase } from '../usecases/cli/validateConfig.usecase.js';
30
+ import { AddRepositoriesToConfigUseCase } from '../usecases/cli/addRepositoriesToConfig.usecase.js';
30
31
  import { formatInitSummary } from '../cli/formatters/initSummary.js';
31
32
  import { resolveMcpServerPath } from '../frameworks/claude/claudeInvoker.js';
33
+ import { checkInitPrerequisites } from '../usecases/cli/checkInitPrerequisites.js';
32
34
  const currentDir = dirname(fileURLToPath(import.meta.url));
33
35
  function readVersion() {
34
36
  const packageJsonPath = join(currentDir, '..', '..', 'package.json');
@@ -48,8 +50,13 @@ Commands:
48
50
  status Show server status
49
51
  logs Show daemon logs
50
52
  validate Validate configuration
53
+ discover Scan and add repositories to existing config
51
54
  followup-importants Trigger followups for pending-approval MRs with Important issues
52
55
 
56
+ Discover options:
57
+ --scan-path <path> Custom scan path (repeatable)
58
+ --max-depth <n> Max directory depth (default: 3)
59
+
53
60
  Init options:
54
61
  -y, --yes Accept all defaults (non-interactive)
55
62
  --skip-mcp Skip MCP server configuration
@@ -229,17 +236,29 @@ function getGitRemoteUrl(localPath) {
229
236
  return null;
230
237
  }
231
238
  }
232
- export async function executeInit(yes, skipMcp, showSecrets, scanPaths) {
233
- const configDir = getConfigDir();
239
+ const WELCOME_BANNER = `
240
+ Welcome to ReviewFlow!
241
+ Automated code review powered by Claude Code.
242
+ `;
243
+ export async function executeInit(yes, skipMcp, showSecrets, scanPaths, deps) {
244
+ deps.log(WELCOME_BANNER);
245
+ const prereqResult = deps.checkPrerequisites();
246
+ if (prereqResult.status === 'node-version-too-low') {
247
+ deps.log(red(`Node.js >= ${prereqResult.required} is required (found: ${prereqResult.found})`));
248
+ deps.exit(1);
249
+ return;
250
+ }
251
+ if (prereqResult.status === 'claude-not-installed') {
252
+ deps.log(red(`Claude CLI is not installed. Install it from: ${prereqResult.installUrl}`));
253
+ deps.exit(1);
254
+ return;
255
+ }
256
+ const configDir = deps.getConfigDir();
234
257
  const configPath = join(configDir, 'config.json');
235
- if (existsSync(configPath) && !yes) {
236
- const { confirm } = await import('@inquirer/prompts');
237
- const overwrite = await confirm({
238
- message: `Config already exists at ${configPath}. Overwrite?`,
239
- default: false,
240
- });
258
+ if (deps.existsSync(configPath) && !yes) {
259
+ const overwrite = await deps.confirmOverwrite(configPath);
241
260
  if (!overwrite) {
242
- console.log(yellow('Init cancelled.'));
261
+ deps.log(yellow('Init cancelled.'));
243
262
  return;
244
263
  }
245
264
  }
@@ -247,60 +266,38 @@ export async function executeInit(yes, skipMcp, showSecrets, scanPaths) {
247
266
  let gitlabUsername = '';
248
267
  let githubUsername = '';
249
268
  if (yes) {
250
- console.log(dim('Non-interactive mode: using defaults'));
269
+ deps.log(dim('Non-interactive mode: using defaults'));
251
270
  }
252
271
  else {
253
- const { input, number: numberPrompt } = await import('@inquirer/prompts');
254
- const portAnswer = await numberPrompt({
255
- message: 'Server port:',
256
- default: 3847,
257
- validate: (value) => {
258
- if (value === undefined || value < 1 || value > 65535)
259
- return 'Port must be between 1 and 65535';
260
- return true;
261
- },
262
- });
263
- port = portAnswer ?? 3847;
264
- gitlabUsername = await input({
265
- message: 'GitLab username (optional):',
266
- default: '',
267
- });
268
- githubUsername = await input({
269
- message: 'GitHub username (optional):',
270
- default: '',
271
- });
272
+ const platform = await deps.promptPlatform();
273
+ port = await deps.promptPort();
274
+ if (platform === 'gitlab' || platform === 'both') {
275
+ gitlabUsername = await deps.promptGitlabUsername();
276
+ }
277
+ if (platform === 'github' || platform === 'both') {
278
+ githubUsername = await deps.promptGithubUsername();
279
+ }
272
280
  }
273
- const gitlabSecret = generateWebhookSecret();
274
- const githubSecret = generateWebhookSecret();
275
- console.log('');
276
- console.log(bold('Webhook secrets generated:'));
281
+ const gitlabSecret = deps.generateWebhookSecret();
282
+ const githubSecret = deps.generateWebhookSecret();
283
+ deps.log('');
284
+ deps.log(bold('Webhook secrets generated:'));
277
285
  if (showSecrets) {
278
- console.log(` GitLab: ${gitlabSecret}`);
279
- console.log(` GitHub: ${githubSecret}`);
286
+ deps.log(` GitLab: ${gitlabSecret}`);
287
+ deps.log(` GitHub: ${githubSecret}`);
280
288
  }
281
289
  else {
282
- console.log(` GitLab: ${truncateSecret(gitlabSecret, 16)}`);
283
- console.log(` GitHub: ${truncateSecret(githubSecret, 16)}`);
284
- console.log(dim(' Use --show-secrets to display full values'));
290
+ deps.log(` GitLab: ${deps.truncateSecret(gitlabSecret, 16)}`);
291
+ deps.log(` GitHub: ${deps.truncateSecret(githubSecret, 16)}`);
292
+ deps.log(dim(' Use --show-secrets to display full values'));
285
293
  }
286
294
  const pathsToScan = scanPaths.length > 0 ? scanPaths : DEFAULT_SCAN_PATHS;
287
295
  let selectedRepos = [];
288
- const shouldScan = yes || (await (async () => {
289
- const { confirm } = await import('@inquirer/prompts');
290
- return confirm({ message: 'Scan for repositories?', default: true });
291
- })());
296
+ const shouldScan = yes || await deps.confirmScanRepositories();
292
297
  if (shouldScan) {
293
- console.log(dim('\nScanning for repositories...'));
294
- const discoverer = new DiscoverRepositoriesUseCase({
295
- existsSync,
296
- readdirSync: (path) => readdirSync(path, { withFileTypes: true }).map(d => ({
297
- name: d.name,
298
- isDirectory: () => d.isDirectory(),
299
- })),
300
- getGitRemoteUrl,
301
- });
302
- const discovered = discoverer.execute({ scanPaths: pathsToScan, maxDepth: 3 });
303
- console.log(` Found ${discovered.repositories.length} repositories`);
298
+ deps.log(dim('\nScanning for repositories...'));
299
+ const discovered = deps.discoverRepositories(pathsToScan, 3);
300
+ deps.log(` Found ${discovered.repositories.length} repositories`);
304
301
  if (discovered.repositories.length > 0) {
305
302
  if (yes) {
306
303
  selectedRepos = discovered.repositories.map(r => ({
@@ -310,15 +307,7 @@ export async function executeInit(yes, skipMcp, showSecrets, scanPaths) {
310
307
  }));
311
308
  }
312
309
  else {
313
- const { checkbox } = await import('@inquirer/prompts');
314
- const selected = await checkbox({
315
- message: 'Select repositories to configure:',
316
- choices: discovered.repositories.map(r => ({
317
- name: `${r.name} ${dim(`(${r.localPath})`)}${r.hasReviewConfig ? green(' [configured]') : ''}`,
318
- value: r,
319
- checked: r.hasReviewConfig,
320
- })),
321
- });
310
+ const selected = await deps.selectRepositories(discovered.repositories);
322
311
  selectedRepos = selected.map(r => ({
323
312
  name: r.name,
324
313
  localPath: r.localPath,
@@ -329,33 +318,16 @@ export async function executeInit(yes, skipMcp, showSecrets, scanPaths) {
329
318
  }
330
319
  let mcpStatus = 'skipped';
331
320
  if (!skipMcp) {
332
- console.log(dim('\nConfiguring MCP server...'));
321
+ deps.log(dim('\nConfiguring MCP server...'));
333
322
  try {
334
- const mcpUseCase = new ConfigureMcpUseCase({
335
- isClaudeInstalled: () => checkDependency({ name: 'Claude', command: 'claude --version' }),
336
- readFileSync: (path, encoding) => readFileSync(path, encoding),
337
- writeFileSync,
338
- existsSync,
339
- copyFileSync,
340
- resolveMcpServerPath: () => {
341
- try {
342
- return resolveMcpServerPath();
343
- }
344
- catch {
345
- return join(dirname(fileURLToPath(import.meta.url)), '..', 'mcpServer.js');
346
- }
347
- },
348
- settingsPath: join(homedir(), '.claude', 'settings.json'),
349
- });
350
- mcpStatus = mcpUseCase.execute();
323
+ mcpStatus = deps.configureMcp();
351
324
  }
352
325
  catch {
353
326
  mcpStatus = 'failed';
354
327
  }
355
- console.log(` MCP: ${mcpStatus}`);
328
+ deps.log(` MCP: ${mcpStatus}`);
356
329
  }
357
- const writer = new WriteInitConfigUseCase({ mkdirSync, writeFileSync });
358
- const result = writer.execute({
330
+ const result = deps.writeConfig({
359
331
  configDir,
360
332
  port,
361
333
  gitlabUsername,
@@ -364,7 +336,7 @@ export async function executeInit(yes, skipMcp, showSecrets, scanPaths) {
364
336
  gitlabWebhookSecret: gitlabSecret,
365
337
  githubWebhookSecret: githubSecret,
366
338
  });
367
- const summary = formatInitSummary({
339
+ const summary = deps.formatSummary({
368
340
  configPath: result.configPath,
369
341
  envPath: result.envPath,
370
342
  port,
@@ -373,7 +345,50 @@ export async function executeInit(yes, skipMcp, showSecrets, scanPaths) {
373
345
  gitlabUsername,
374
346
  githubUsername,
375
347
  });
376
- console.log(green(summary));
348
+ deps.log(green(summary));
349
+ }
350
+ export async function executeDiscover(scanPaths, maxDepth, deps) {
351
+ const configPath = deps.getConfigPath();
352
+ const pathsToScan = scanPaths.length > 0 ? scanPaths : DEFAULT_SCAN_PATHS;
353
+ deps.log(dim('\nScanning for repositories...'));
354
+ const discoverer = new DiscoverRepositoriesUseCase({
355
+ existsSync: deps.existsSync,
356
+ readdirSync: deps.readdirSync,
357
+ getGitRemoteUrl: deps.getGitRemoteUrl,
358
+ });
359
+ const discovered = discoverer.execute({ scanPaths: pathsToScan, maxDepth });
360
+ deps.log(` Found ${discovered.repositories.length} repositories`);
361
+ if (discovered.repositories.length === 0) {
362
+ deps.log(yellow('No new repositories found.'));
363
+ return;
364
+ }
365
+ const selected = await deps.selectRepositories(discovered.repositories);
366
+ if (selected.length === 0) {
367
+ deps.log(yellow('No repositories selected.'));
368
+ return;
369
+ }
370
+ const adder = new AddRepositoriesToConfigUseCase({
371
+ readFileSync: deps.readFileSync,
372
+ writeFileSync: deps.writeFileSync,
373
+ existsSync: deps.existsSync,
374
+ });
375
+ const result = adder.execute({
376
+ configPath,
377
+ newRepositories: selected.map(repo => ({
378
+ name: repo.name,
379
+ localPath: repo.localPath,
380
+ enabled: true,
381
+ })),
382
+ });
383
+ if (result.added.length > 0) {
384
+ deps.log(green(`\n Added ${result.added.length} repositories:`));
385
+ for (const repo of result.added) {
386
+ deps.log(green(` + ${repo.name} (${repo.localPath})`));
387
+ }
388
+ }
389
+ if (result.skipped.length > 0) {
390
+ deps.log(dim(` Skipped ${result.skipped.length} already configured`));
391
+ }
377
392
  }
378
393
  export function executeValidate(fix) {
379
394
  const configDir = getConfigDir();
@@ -384,7 +399,7 @@ export function executeValidate(fix) {
384
399
  const resolvedEnvPath = existsSync(join(process.cwd(), '.env')) ? join(process.cwd(), '.env') : envPath;
385
400
  const validator = new ValidateConfigUseCase({
386
401
  existsSync,
387
- readFileSync: (path, encoding) => readFileSync(path, encoding),
402
+ readFileSync,
388
403
  });
389
404
  const result = validator.execute({ configPath: resolvedConfigPath, envPath: resolvedEnvPath });
390
405
  switch (result.status) {
@@ -492,7 +507,132 @@ if (isDirectlyExecuted) {
492
507
  });
493
508
  break;
494
509
  case 'init':
495
- executeInit(args.yes, args.skipMcp, args.showSecrets, args.scanPaths);
510
+ executeInit(args.yes, args.skipMcp, args.showSecrets, args.scanPaths, {
511
+ log: console.log,
512
+ exit: process.exit,
513
+ getConfigDir,
514
+ existsSync,
515
+ checkPrerequisites: () => checkInitPrerequisites({
516
+ executeCommand: execSync,
517
+ getNodeMajorVersion: () => Number(process.versions.node.split('.')[0]),
518
+ }),
519
+ confirmOverwrite: async (configPath) => {
520
+ const { confirm } = await import('@inquirer/prompts');
521
+ return confirm({
522
+ message: `Config already exists at ${configPath}. Overwrite?`,
523
+ default: false,
524
+ });
525
+ },
526
+ promptPlatform: async () => {
527
+ const { select } = await import('@inquirer/prompts');
528
+ return select({
529
+ message: 'Which platform(s) do you use?',
530
+ choices: [
531
+ { name: 'GitLab', value: 'gitlab' },
532
+ { name: 'GitHub', value: 'github' },
533
+ { name: 'Both', value: 'both' },
534
+ ],
535
+ });
536
+ },
537
+ promptPort: async () => {
538
+ const { number: numberPrompt } = await import('@inquirer/prompts');
539
+ const portAnswer = await numberPrompt({
540
+ message: 'Server port:',
541
+ default: 3847,
542
+ validate: (value) => {
543
+ if (value === undefined || value < 1 || value > 65535)
544
+ return 'Port must be between 1 and 65535';
545
+ return true;
546
+ },
547
+ });
548
+ return portAnswer ?? 3847;
549
+ },
550
+ promptGitlabUsername: async () => {
551
+ const { input } = await import('@inquirer/prompts');
552
+ return input({ message: 'GitLab username:', default: '' });
553
+ },
554
+ promptGithubUsername: async () => {
555
+ const { input } = await import('@inquirer/prompts');
556
+ return input({ message: 'GitHub username:', default: '' });
557
+ },
558
+ confirmScanRepositories: async () => {
559
+ const { confirm } = await import('@inquirer/prompts');
560
+ return confirm({ message: 'Scan for repositories?', default: true });
561
+ },
562
+ selectRepositories: async (repositories) => {
563
+ const { checkbox } = await import('@inquirer/prompts');
564
+ return checkbox({
565
+ message: 'Select repositories to configure:',
566
+ choices: repositories.map(r => ({
567
+ name: `${r.name} ${dim(`(${r.localPath})`)}${r.hasReviewConfig ? green(' [configured]') : ''}`,
568
+ value: r,
569
+ checked: r.hasReviewConfig,
570
+ })),
571
+ });
572
+ },
573
+ generateWebhookSecret,
574
+ truncateSecret,
575
+ discoverRepositories: (scanPaths, maxDepth) => {
576
+ const discoverer = new DiscoverRepositoriesUseCase({
577
+ existsSync,
578
+ readdirSync: (path) => readdirSync(path, { withFileTypes: true }).map(d => ({
579
+ name: d.name,
580
+ isDirectory: () => d.isDirectory(),
581
+ })),
582
+ getGitRemoteUrl,
583
+ });
584
+ return discoverer.execute({ scanPaths, maxDepth });
585
+ },
586
+ configureMcp: () => {
587
+ const mcpUseCase = new ConfigureMcpUseCase({
588
+ isClaudeInstalled: () => checkDependency({ name: 'Claude', command: 'claude --version' }),
589
+ readFileSync,
590
+ writeFileSync,
591
+ existsSync,
592
+ copyFileSync,
593
+ resolveMcpServerPath: () => {
594
+ try {
595
+ return resolveMcpServerPath();
596
+ }
597
+ catch {
598
+ return join(dirname(fileURLToPath(import.meta.url)), '..', 'mcpServer.js');
599
+ }
600
+ },
601
+ settingsPath: join(homedir(), '.claude', 'settings.json'),
602
+ });
603
+ return mcpUseCase.execute();
604
+ },
605
+ writeConfig: (input) => {
606
+ const writer = new WriteInitConfigUseCase({ mkdirSync, writeFileSync });
607
+ return writer.execute(input);
608
+ },
609
+ formatSummary: formatInitSummary,
610
+ });
611
+ break;
612
+ case 'discover':
613
+ executeDiscover(args.scanPaths, args.maxDepth, {
614
+ existsSync,
615
+ readFileSync,
616
+ writeFileSync,
617
+ readdirSync: (path) => readdirSync(path, { withFileTypes: true }).map(d => ({
618
+ name: d.name,
619
+ isDirectory: () => d.isDirectory(),
620
+ })),
621
+ getGitRemoteUrl,
622
+ getConfigPath: () => join(getConfigDir(), 'config.json'),
623
+ log: console.log,
624
+ selectRepositories: async (repositories) => {
625
+ const { checkbox } = await import('@inquirer/prompts');
626
+ return checkbox({
627
+ message: 'Select repositories to add:',
628
+ choices: repositories.map(r => ({
629
+ name: `${r.name} ${dim(`(${r.localPath})`)}${r.hasReviewConfig ? green(' [configured]') : ''}`,
630
+ value: r,
631
+ checked: r.hasReviewConfig,
632
+ })),
633
+ });
634
+ },
635
+ });
496
636
  break;
497
637
  case 'validate':
498
638
  executeValidate(args.fix);
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/main/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/main/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"reviewJob.factory.d.ts","sourceRoot":"","sources":["../../../src/tests/factories/reviewJob.factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAExE,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS;IAgBxD,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS;IAI9D,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS;IAI/D,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS;IAIjE,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS;IAOhE,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS;CAU/D"}
1
+ {"version":3,"file":"reviewJob.factory.d.ts","sourceRoot":"","sources":["../../../src/tests/factories/reviewJob.factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAA;AAEpE,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS;IAiBxD,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS;IAI9D,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS;IAI/D,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS;IAIjE,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS;IAOhE,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS;CAU/D"}
@@ -11,6 +11,7 @@ export class ReviewJobFactory {
11
11
  sourceBranch: 'feature/test',
12
12
  targetBranch: 'main',
13
13
  jobType: 'review',
14
+ language: 'en',
14
15
  ...overrides,
15
16
  };
16
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"reviewJob.factory.js","sourceRoot":"","sources":["../../../src/tests/factories/reviewJob.factory.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAC,MAAM,CAAC,SAA8B;QAC1C,OAAO;YACL,EAAE,EAAE,iCAAiC;YACrC,QAAQ,EAAE,QAAQ;YAClB,WAAW,EAAE,uBAAuB;YACpC,SAAS,EAAE,yBAAyB;YACpC,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,aAAa;YACpB,KAAK,EAAE,8DAA8D;YACrE,YAAY,EAAE,cAAc;YAC5B,YAAY,EAAE,MAAM;YACpB,OAAO,EAAE,QAAQ;YACjB,GAAG,SAAS;SACb,CAAA;IACH,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,SAA8B;QAChD,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,SAA8B;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,SAA8B;QACnD,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,SAA8B;QAClD,OAAO,IAAI,CAAC,MAAM,CAAC;YACjB,OAAO,EAAE,UAAU;YACnB,GAAG,SAAS;SACb,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,SAA8B;QAChD,OAAO,IAAI,CAAC,MAAM,CAAC;YACjB,EAAE,EAAE,iCAAiC;YACrC,QAAQ,EAAE,QAAQ;YAClB,WAAW,EAAE,sBAAsB;YACnC,KAAK,EAAE,kDAAkD;YACzD,QAAQ,EAAE,GAAG;YACb,GAAG,SAAS;SACb,CAAC,CAAA;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"reviewJob.factory.js","sourceRoot":"","sources":["../../../src/tests/factories/reviewJob.factory.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAC,MAAM,CAAC,SAA8B;QAC1C,OAAO;YACL,EAAE,EAAE,iCAAiC;YACrC,QAAQ,EAAE,QAAQ;YAClB,WAAW,EAAE,uBAAuB;YACpC,SAAS,EAAE,yBAAyB;YACpC,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,aAAa;YACpB,KAAK,EAAE,8DAA8D;YACrE,YAAY,EAAE,cAAc;YAC5B,YAAY,EAAE,MAAM;YACpB,OAAO,EAAE,QAAQ;YACjB,QAAQ,EAAE,IAAI;YACd,GAAG,SAAS;SACb,CAAA;IACH,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,SAA8B;QAChD,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,SAA8B;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,SAA8B;QACnD,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,SAA8B;QAClD,OAAO,IAAI,CAAC,MAAM,CAAC;YACjB,OAAO,EAAE,UAAU;YACnB,GAAG,SAAS;SACb,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,SAA8B;QAChD,OAAO,IAAI,CAAC,MAAM,CAAC;YACjB,EAAE,EAAE,iCAAiC;YACrC,QAAQ,EAAE,QAAQ;YAClB,WAAW,EAAE,sBAAsB;YACnC,KAAK,EAAE,kDAAkD;YACzD,QAAQ,EAAE,GAAG;YACb,GAAG,SAAS;SACb,CAAC,CAAA;IACJ,CAAC;CACF"}
@@ -220,6 +220,20 @@ describe('parseCliArgs', () => {
220
220
  }));
221
221
  });
222
222
  });
223
+ describe('discover command', () => {
224
+ it('should detect discover command with default values', () => {
225
+ const result = parseCliArgs(['discover']);
226
+ expect(result.command).toBe('discover');
227
+ expect(result.scanPaths).toEqual([]);
228
+ expect(result.maxDepth).toBe(3);
229
+ });
230
+ it('should detect --scan-path and --max-depth flags', () => {
231
+ const result = parseCliArgs(['discover', '--scan-path', '/my/path', '--max-depth', '5']);
232
+ expect(result.command).toBe('discover');
233
+ expect(result.scanPaths).toEqual(['/my/path']);
234
+ expect(result.maxDepth).toBe(5);
235
+ });
236
+ });
223
237
  describe('version and help flags', () => {
224
238
  it('should detect --version flag', () => {
225
239
  const result = parseCliArgs(['--version']);