reviewflow 3.25.0 → 3.27.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 (310) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/config/projectConfig.d.ts +1 -0
  3. package/dist/config/projectConfig.d.ts.map +1 -1
  4. package/dist/config/projectConfig.js +17 -0
  5. package/dist/config/projectConfig.js.map +1 -1
  6. package/dist/dashboard/index.html +113 -7
  7. package/dist/dashboard/modules/constants.d.ts +1 -0
  8. package/dist/dashboard/modules/constants.d.ts.map +1 -1
  9. package/dist/dashboard/modules/constants.js +1 -0
  10. package/dist/dashboard/modules/constants.js.map +1 -1
  11. package/dist/dashboard/modules/headerCapacityBadge.d.ts +33 -0
  12. package/dist/dashboard/modules/headerCapacityBadge.d.ts.map +1 -0
  13. package/dist/dashboard/modules/headerCapacityBadge.js +53 -0
  14. package/dist/dashboard/modules/headerCapacityBadge.js.map +1 -0
  15. package/dist/dashboard/modules/i18n.d.ts.map +1 -1
  16. package/dist/dashboard/modules/i18n.js +4 -0
  17. package/dist/dashboard/modules/i18n.js.map +1 -1
  18. package/dist/dashboard/modules/settingsModal.d.ts +17 -0
  19. package/dist/dashboard/modules/settingsModal.d.ts.map +1 -1
  20. package/dist/dashboard/modules/settingsModal.js +38 -0
  21. package/dist/dashboard/modules/settingsModal.js.map +1 -1
  22. package/dist/dashboard/modules/worktreePanel.d.ts +40 -0
  23. package/dist/dashboard/modules/worktreePanel.d.ts.map +1 -1
  24. package/dist/dashboard/modules/worktreePanel.js +98 -1
  25. package/dist/dashboard/modules/worktreePanel.js.map +1 -1
  26. package/dist/dashboard/styles.css +152 -1
  27. package/dist/frameworks/claude/claudeInvoker.d.ts.map +1 -1
  28. package/dist/frameworks/claude/claudeInvoker.js +5 -10
  29. package/dist/frameworks/claude/claudeInvoker.js.map +1 -1
  30. package/dist/frameworks/config/configLoader.d.ts +1 -0
  31. package/dist/frameworks/config/configLoader.d.ts.map +1 -1
  32. package/dist/frameworks/config/configLoader.js +11 -0
  33. package/dist/frameworks/config/configLoader.js.map +1 -1
  34. package/dist/frameworks/queue/pQueueAdapter.d.ts +17 -0
  35. package/dist/frameworks/queue/pQueueAdapter.d.ts.map +1 -1
  36. package/dist/frameworks/queue/pQueueAdapter.js +103 -40
  37. package/dist/frameworks/queue/pQueueAdapter.js.map +1 -1
  38. package/dist/frameworks/queue/projectSemaphore.d.ts +26 -0
  39. package/dist/frameworks/queue/projectSemaphore.d.ts.map +1 -0
  40. package/dist/frameworks/queue/projectSemaphore.js +79 -0
  41. package/dist/frameworks/queue/projectSemaphore.js.map +1 -0
  42. package/dist/frameworks/settings/runtimeSettings.d.ts +3 -0
  43. package/dist/frameworks/settings/runtimeSettings.d.ts.map +1 -1
  44. package/dist/frameworks/settings/runtimeSettings.js +14 -0
  45. package/dist/frameworks/settings/runtimeSettings.js.map +1 -1
  46. package/dist/main/dependencies.d.ts +4 -0
  47. package/dist/main/dependencies.d.ts.map +1 -1
  48. package/dist/main/dependencies.js +8 -0
  49. package/dist/main/dependencies.js.map +1 -1
  50. package/dist/main/routes.d.ts.map +1 -1
  51. package/dist/main/routes.js +32 -3
  52. package/dist/main/routes.js.map +1 -1
  53. package/dist/main/server.d.ts.map +1 -1
  54. package/dist/main/server.js +69 -1
  55. package/dist/main/server.js.map +1 -1
  56. package/dist/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.guard.d.ts +2 -0
  57. package/dist/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.guard.d.ts.map +1 -0
  58. package/dist/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.guard.js +4 -0
  59. package/dist/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.guard.js.map +1 -0
  60. package/dist/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.schema.d.ts +7 -0
  61. package/dist/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.schema.d.ts.map +1 -0
  62. package/dist/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.schema.js +10 -0
  63. package/dist/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.schema.js.map +1 -0
  64. package/dist/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.valueObject.d.ts +18 -0
  65. package/dist/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.valueObject.d.ts.map +1 -0
  66. package/dist/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.valueObject.js +28 -0
  67. package/dist/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.valueObject.js.map +1 -0
  68. package/dist/modules/cli-configuration/entities/repositoriesList/repositoriesList.gateway.d.ts +9 -0
  69. package/dist/modules/cli-configuration/entities/repositoriesList/repositoriesList.gateway.d.ts.map +1 -0
  70. package/dist/modules/cli-configuration/entities/repositoriesList/repositoriesList.gateway.js +2 -0
  71. package/dist/modules/cli-configuration/entities/repositoriesList/repositoriesList.gateway.js.map +1 -0
  72. package/dist/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.d.ts +1 -0
  73. package/dist/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.d.ts.map +1 -1
  74. package/dist/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.js +26 -0
  75. package/dist/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.js.map +1 -1
  76. package/dist/modules/cli-configuration/interface-adapters/gateways/repositoriesList.runtimeConfig.gateway.d.ts +8 -0
  77. package/dist/modules/cli-configuration/interface-adapters/gateways/repositoriesList.runtimeConfig.gateway.d.ts.map +1 -0
  78. package/dist/modules/cli-configuration/interface-adapters/gateways/repositoriesList.runtimeConfig.gateway.js +14 -0
  79. package/dist/modules/cli-configuration/interface-adapters/gateways/repositoriesList.runtimeConfig.gateway.js.map +1 -0
  80. package/dist/modules/cli-configuration/usecases/projectConfig/recomputeGlobalConcurrency.usecase.d.ts +26 -0
  81. package/dist/modules/cli-configuration/usecases/projectConfig/recomputeGlobalConcurrency.usecase.d.ts.map +1 -0
  82. package/dist/modules/cli-configuration/usecases/projectConfig/recomputeGlobalConcurrency.usecase.js +24 -0
  83. package/dist/modules/cli-configuration/usecases/projectConfig/recomputeGlobalConcurrency.usecase.js.map +1 -0
  84. package/dist/modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.d.ts +2 -1
  85. package/dist/modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.d.ts.map +1 -1
  86. package/dist/modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.js +29 -5
  87. package/dist/modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.js.map +1 -1
  88. package/dist/modules/review-execution/entities/job/jobHistory.gateway.d.ts +10 -0
  89. package/dist/modules/review-execution/entities/job/jobHistory.gateway.d.ts.map +1 -0
  90. package/dist/modules/review-execution/entities/job/jobHistory.gateway.js +2 -0
  91. package/dist/modules/review-execution/entities/job/jobHistory.gateway.js.map +1 -0
  92. package/dist/modules/review-execution/entities/job/jobRecord.guard.d.ts +13 -0
  93. package/dist/modules/review-execution/entities/job/jobRecord.guard.d.ts.map +1 -0
  94. package/dist/modules/review-execution/entities/job/jobRecord.guard.js +4 -0
  95. package/dist/modules/review-execution/entities/job/jobRecord.guard.js.map +1 -0
  96. package/dist/modules/review-execution/entities/job/jobRecord.schema.d.ts +33 -0
  97. package/dist/modules/review-execution/entities/job/jobRecord.schema.d.ts.map +1 -0
  98. package/dist/modules/review-execution/entities/job/jobRecord.schema.js +15 -0
  99. package/dist/modules/review-execution/entities/job/jobRecord.schema.js.map +1 -0
  100. package/dist/modules/review-execution/interface-adapters/gateways/fileSystem/jobHistory.fileSystem.gateway.d.ts +19 -0
  101. package/dist/modules/review-execution/interface-adapters/gateways/fileSystem/jobHistory.fileSystem.gateway.d.ts.map +1 -0
  102. package/dist/modules/review-execution/interface-adapters/gateways/fileSystem/jobHistory.fileSystem.gateway.js +120 -0
  103. package/dist/modules/review-execution/interface-adapters/gateways/fileSystem/jobHistory.fileSystem.gateway.js.map +1 -0
  104. package/dist/modules/review-execution/usecases/jobHistory/loadRecentJobHistory.usecase.d.ts +17 -0
  105. package/dist/modules/review-execution/usecases/jobHistory/loadRecentJobHistory.usecase.d.ts.map +1 -0
  106. package/dist/modules/review-execution/usecases/jobHistory/loadRecentJobHistory.usecase.js +11 -0
  107. package/dist/modules/review-execution/usecases/jobHistory/loadRecentJobHistory.usecase.js.map +1 -0
  108. package/dist/modules/review-execution/usecases/jobHistory/persistJobRecord.usecase.d.ts +18 -0
  109. package/dist/modules/review-execution/usecases/jobHistory/persistJobRecord.usecase.d.ts.map +1 -0
  110. package/dist/modules/review-execution/usecases/jobHistory/persistJobRecord.usecase.js +58 -0
  111. package/dist/modules/review-execution/usecases/jobHistory/persistJobRecord.usecase.js.map +1 -0
  112. package/dist/modules/review-execution/usecases/jobHistory/pruneJobHistory.usecase.d.ts +16 -0
  113. package/dist/modules/review-execution/usecases/jobHistory/pruneJobHistory.usecase.d.ts.map +1 -0
  114. package/dist/modules/review-execution/usecases/jobHistory/pruneJobHistory.usecase.js +12 -0
  115. package/dist/modules/review-execution/usecases/jobHistory/pruneJobHistory.usecase.js.map +1 -0
  116. package/dist/modules/statistics-insights/interface-adapters/controllers/http/overview.routes.d.ts +4 -0
  117. package/dist/modules/statistics-insights/interface-adapters/controllers/http/overview.routes.d.ts.map +1 -1
  118. package/dist/modules/statistics-insights/interface-adapters/controllers/http/overview.routes.js +2 -0
  119. package/dist/modules/statistics-insights/interface-adapters/controllers/http/overview.routes.js.map +1 -1
  120. package/dist/modules/statistics-insights/interface-adapters/presenters/overview.presenter.d.ts +12 -0
  121. package/dist/modules/statistics-insights/interface-adapters/presenters/overview.presenter.d.ts.map +1 -1
  122. package/dist/modules/statistics-insights/interface-adapters/presenters/overview.presenter.js +8 -0
  123. package/dist/modules/statistics-insights/interface-adapters/presenters/overview.presenter.js.map +1 -1
  124. package/dist/modules/statistics-insights/services/fetchDiffStatsSafely.d.ts +5 -0
  125. package/dist/modules/statistics-insights/services/fetchDiffStatsSafely.d.ts.map +1 -0
  126. package/dist/modules/statistics-insights/services/fetchDiffStatsSafely.js +10 -0
  127. package/dist/modules/statistics-insights/services/fetchDiffStatsSafely.js.map +1 -0
  128. package/dist/modules/statistics-insights/services/statsService.d.ts +5 -0
  129. package/dist/modules/statistics-insights/services/statsService.d.ts.map +1 -1
  130. package/dist/modules/statistics-insights/services/statsService.js +5 -0
  131. package/dist/modules/statistics-insights/services/statsService.js.map +1 -1
  132. package/dist/modules/worktree-management/entities/gitCommand/gitCommand.gateway.d.ts +1 -1
  133. package/dist/modules/worktree-management/entities/gitCommand/gitCommand.gateway.d.ts.map +1 -1
  134. package/dist/modules/worktree-management/entities/worktree/worktree.gateway.d.ts +1 -0
  135. package/dist/modules/worktree-management/entities/worktree/worktree.gateway.d.ts.map +1 -1
  136. package/dist/modules/worktree-management/entities/worktree/worktreeHealth.schema.d.ts +44 -0
  137. package/dist/modules/worktree-management/entities/worktree/worktreeHealth.schema.d.ts.map +1 -0
  138. package/dist/modules/worktree-management/entities/worktree/worktreeHealth.schema.js +31 -0
  139. package/dist/modules/worktree-management/entities/worktree/worktreeHealth.schema.js.map +1 -0
  140. package/dist/modules/worktree-management/entities/worktree/worktreeHealthProbe.gateway.d.ts +20 -0
  141. package/dist/modules/worktree-management/entities/worktree/worktreeHealthProbe.gateway.d.ts.map +1 -0
  142. package/dist/modules/worktree-management/entities/worktree/worktreeHealthProbe.gateway.js +2 -0
  143. package/dist/modules/worktree-management/entities/worktree/worktreeHealthProbe.gateway.js.map +1 -0
  144. package/dist/modules/worktree-management/interface-adapters/controllers/http/worktreeOverview.routes.d.ts +6 -0
  145. package/dist/modules/worktree-management/interface-adapters/controllers/http/worktreeOverview.routes.d.ts.map +1 -1
  146. package/dist/modules/worktree-management/interface-adapters/controllers/http/worktreeOverview.routes.js +52 -1
  147. package/dist/modules/worktree-management/interface-adapters/controllers/http/worktreeOverview.routes.js.map +1 -1
  148. package/dist/modules/worktree-management/interface-adapters/gateways/worktree.fileSystem.gateway.d.ts.map +1 -1
  149. package/dist/modules/worktree-management/interface-adapters/gateways/worktree.fileSystem.gateway.js +5 -1
  150. package/dist/modules/worktree-management/interface-adapters/gateways/worktree.fileSystem.gateway.js.map +1 -1
  151. package/dist/modules/worktree-management/interface-adapters/gateways/worktreeHealthProbe.fileSystem.gateway.d.ts +14 -0
  152. package/dist/modules/worktree-management/interface-adapters/gateways/worktreeHealthProbe.fileSystem.gateway.d.ts.map +1 -0
  153. package/dist/modules/worktree-management/interface-adapters/gateways/worktreeHealthProbe.fileSystem.gateway.js +97 -0
  154. package/dist/modules/worktree-management/interface-adapters/gateways/worktreeHealthProbe.fileSystem.gateway.js.map +1 -0
  155. package/dist/modules/worktree-management/interface-adapters/presenters/worktreePanel.presenter.d.ts +20 -0
  156. package/dist/modules/worktree-management/interface-adapters/presenters/worktreePanel.presenter.d.ts.map +1 -1
  157. package/dist/modules/worktree-management/interface-adapters/presenters/worktreePanel.presenter.js +58 -0
  158. package/dist/modules/worktree-management/interface-adapters/presenters/worktreePanel.presenter.js.map +1 -1
  159. package/dist/modules/worktree-management/services/forceCleanupLock.d.ts +10 -0
  160. package/dist/modules/worktree-management/services/forceCleanupLock.d.ts.map +1 -0
  161. package/dist/modules/worktree-management/services/forceCleanupLock.js +14 -0
  162. package/dist/modules/worktree-management/services/forceCleanupLock.js.map +1 -0
  163. package/dist/modules/worktree-management/usecases/detectDegradedWorktrees.usecase.d.ts +13 -0
  164. package/dist/modules/worktree-management/usecases/detectDegradedWorktrees.usecase.d.ts.map +1 -0
  165. package/dist/modules/worktree-management/usecases/detectDegradedWorktrees.usecase.js +35 -0
  166. package/dist/modules/worktree-management/usecases/detectDegradedWorktrees.usecase.js.map +1 -0
  167. package/dist/modules/worktree-management/usecases/removeWorktree.usecase.d.ts +1 -0
  168. package/dist/modules/worktree-management/usecases/removeWorktree.usecase.d.ts.map +1 -1
  169. package/dist/modules/worktree-management/usecases/removeWorktree.usecase.js +2 -1
  170. package/dist/modules/worktree-management/usecases/removeWorktree.usecase.js.map +1 -1
  171. package/dist/tests/acceptance/175-worktree-failure-visibility.acceptance.test.d.ts +12 -0
  172. package/dist/tests/acceptance/175-worktree-failure-visibility.acceptance.test.d.ts.map +1 -0
  173. package/dist/tests/acceptance/175-worktree-failure-visibility.acceptance.test.js +293 -0
  174. package/dist/tests/acceptance/175-worktree-failure-visibility.acceptance.test.js.map +1 -0
  175. package/dist/tests/acceptance/176-job-history-persistence.acceptance.test.d.ts +13 -0
  176. package/dist/tests/acceptance/176-job-history-persistence.acceptance.test.d.ts.map +1 -0
  177. package/dist/tests/acceptance/176-job-history-persistence.acceptance.test.js +261 -0
  178. package/dist/tests/acceptance/176-job-history-persistence.acceptance.test.js.map +1 -0
  179. package/dist/tests/acceptance/186-per-project-concurrency-cap.acceptance.test.d.ts +16 -0
  180. package/dist/tests/acceptance/186-per-project-concurrency-cap.acceptance.test.d.ts.map +1 -0
  181. package/dist/tests/acceptance/186-per-project-concurrency-cap.acceptance.test.js +391 -0
  182. package/dist/tests/acceptance/186-per-project-concurrency-cap.acceptance.test.js.map +1 -0
  183. package/dist/tests/acceptance/47-capture-git-diff-stats.acceptance.test.d.ts +18 -0
  184. package/dist/tests/acceptance/47-capture-git-diff-stats.acceptance.test.d.ts.map +1 -0
  185. package/dist/tests/acceptance/47-capture-git-diff-stats.acceptance.test.js +221 -0
  186. package/dist/tests/acceptance/47-capture-git-diff-stats.acceptance.test.js.map +1 -0
  187. package/dist/tests/factories/config.factory.d.ts.map +1 -1
  188. package/dist/tests/factories/config.factory.js +1 -0
  189. package/dist/tests/factories/config.factory.js.map +1 -1
  190. package/dist/tests/factories/jobRecord.factory.d.ts +5 -0
  191. package/dist/tests/factories/jobRecord.factory.d.ts.map +1 -0
  192. package/dist/tests/factories/jobRecord.factory.js +18 -0
  193. package/dist/tests/factories/jobRecord.factory.js.map +1 -0
  194. package/dist/tests/factories/projectConcurrencyCap.factory.d.ts +5 -0
  195. package/dist/tests/factories/projectConcurrencyCap.factory.d.ts.map +1 -0
  196. package/dist/tests/factories/projectConcurrencyCap.factory.js +8 -0
  197. package/dist/tests/factories/projectConcurrencyCap.factory.js.map +1 -0
  198. package/dist/tests/factories/worktreeHealth.factory.d.ts +22 -0
  199. package/dist/tests/factories/worktreeHealth.factory.d.ts.map +1 -0
  200. package/dist/tests/factories/worktreeHealth.factory.js +53 -0
  201. package/dist/tests/factories/worktreeHealth.factory.js.map +1 -0
  202. package/dist/tests/stubs/jobHistory.stub.d.ts +13 -0
  203. package/dist/tests/stubs/jobHistory.stub.d.ts.map +1 -0
  204. package/dist/tests/stubs/jobHistory.stub.js +63 -0
  205. package/dist/tests/stubs/jobHistory.stub.js.map +1 -0
  206. package/dist/tests/stubs/queueCapacityPort.stub.d.ts +8 -0
  207. package/dist/tests/stubs/queueCapacityPort.stub.d.ts.map +1 -0
  208. package/dist/tests/stubs/queueCapacityPort.stub.js +11 -0
  209. package/dist/tests/stubs/queueCapacityPort.stub.js.map +1 -0
  210. package/dist/tests/stubs/repositoriesListGateway.stub.d.ts +7 -0
  211. package/dist/tests/stubs/repositoriesListGateway.stub.d.ts.map +1 -0
  212. package/dist/tests/stubs/repositoriesListGateway.stub.js +10 -0
  213. package/dist/tests/stubs/repositoriesListGateway.stub.js.map +1 -0
  214. package/dist/tests/stubs/worktreeHealthProbe.stub.d.ts +11 -0
  215. package/dist/tests/stubs/worktreeHealthProbe.stub.d.ts.map +1 -0
  216. package/dist/tests/stubs/worktreeHealthProbe.stub.js +26 -0
  217. package/dist/tests/stubs/worktreeHealthProbe.stub.js.map +1 -0
  218. package/dist/tests/units/cli/cli.integration.test.js +6 -4
  219. package/dist/tests/units/cli/cli.integration.test.js.map +1 -1
  220. package/dist/tests/units/dashboard/modules/headerCapacityBadge.test.d.ts +2 -0
  221. package/dist/tests/units/dashboard/modules/headerCapacityBadge.test.d.ts.map +1 -0
  222. package/dist/tests/units/dashboard/modules/headerCapacityBadge.test.js +55 -0
  223. package/dist/tests/units/dashboard/modules/headerCapacityBadge.test.js.map +1 -0
  224. package/dist/tests/units/dashboard/modules/notifications.test.js +17 -0
  225. package/dist/tests/units/dashboard/modules/notifications.test.js.map +1 -1
  226. package/dist/tests/units/dashboard/modules/settingsModal.test.js +7 -0
  227. package/dist/tests/units/dashboard/modules/settingsModal.test.js.map +1 -1
  228. package/dist/tests/units/dashboard/modules/worktreePanel.test.js +123 -1
  229. package/dist/tests/units/dashboard/modules/worktreePanel.test.js.map +1 -1
  230. package/dist/tests/units/frameworks/config/configLoader.test.js +28 -0
  231. package/dist/tests/units/frameworks/config/configLoader.test.js.map +1 -1
  232. package/dist/tests/units/frameworks/queue/pQueueAdapter.test.js +125 -0
  233. package/dist/tests/units/frameworks/queue/pQueueAdapter.test.js.map +1 -1
  234. package/dist/tests/units/frameworks/queue/projectSemaphore.test.d.ts +2 -0
  235. package/dist/tests/units/frameworks/queue/projectSemaphore.test.d.ts.map +1 -0
  236. package/dist/tests/units/frameworks/queue/projectSemaphore.test.js +92 -0
  237. package/dist/tests/units/frameworks/queue/projectSemaphore.test.js.map +1 -0
  238. package/dist/tests/units/frameworks/settings/runtimeSettings.test.js +34 -2
  239. package/dist/tests/units/frameworks/settings/runtimeSettings.test.js.map +1 -1
  240. package/dist/tests/units/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.guard.test.d.ts +2 -0
  241. package/dist/tests/units/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.guard.test.d.ts.map +1 -0
  242. package/dist/tests/units/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.guard.test.js +22 -0
  243. package/dist/tests/units/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.guard.test.js.map +1 -0
  244. package/dist/tests/units/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.valueObject.test.d.ts +2 -0
  245. package/dist/tests/units/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.valueObject.test.d.ts.map +1 -0
  246. package/dist/tests/units/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.valueObject.test.js +85 -0
  247. package/dist/tests/units/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.valueObject.test.js.map +1 -0
  248. package/dist/tests/units/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.test.js +91 -0
  249. package/dist/tests/units/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.test.js.map +1 -1
  250. package/dist/tests/units/modules/cli-configuration/interface-adapters/gateways/repositoriesList.runtimeConfig.gateway.test.d.ts +2 -0
  251. package/dist/tests/units/modules/cli-configuration/interface-adapters/gateways/repositoriesList.runtimeConfig.gateway.test.d.ts.map +1 -0
  252. package/dist/tests/units/modules/cli-configuration/interface-adapters/gateways/repositoriesList.runtimeConfig.gateway.test.js +29 -0
  253. package/dist/tests/units/modules/cli-configuration/interface-adapters/gateways/repositoriesList.runtimeConfig.gateway.test.js.map +1 -0
  254. package/dist/tests/units/modules/cli-configuration/usecases/projectConfig/recomputeGlobalConcurrency.usecase.test.d.ts +2 -0
  255. package/dist/tests/units/modules/cli-configuration/usecases/projectConfig/recomputeGlobalConcurrency.usecase.test.d.ts.map +1 -0
  256. package/dist/tests/units/modules/cli-configuration/usecases/projectConfig/recomputeGlobalConcurrency.usecase.test.js +126 -0
  257. package/dist/tests/units/modules/cli-configuration/usecases/projectConfig/recomputeGlobalConcurrency.usecase.test.js.map +1 -0
  258. package/dist/tests/units/modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.test.js +78 -0
  259. package/dist/tests/units/modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.test.js.map +1 -1
  260. package/dist/tests/units/modules/review-execution/entities/job/jobRecord.guard.test.d.ts +2 -0
  261. package/dist/tests/units/modules/review-execution/entities/job/jobRecord.guard.test.d.ts.map +1 -0
  262. package/dist/tests/units/modules/review-execution/entities/job/jobRecord.guard.test.js +48 -0
  263. package/dist/tests/units/modules/review-execution/entities/job/jobRecord.guard.test.js.map +1 -0
  264. package/dist/tests/units/modules/review-execution/interface-adapters/gateways/fileSystem/jobHistory.fileSystem.gateway.test.d.ts +2 -0
  265. package/dist/tests/units/modules/review-execution/interface-adapters/gateways/fileSystem/jobHistory.fileSystem.gateway.test.d.ts.map +1 -0
  266. package/dist/tests/units/modules/review-execution/interface-adapters/gateways/fileSystem/jobHistory.fileSystem.gateway.test.js +134 -0
  267. package/dist/tests/units/modules/review-execution/interface-adapters/gateways/fileSystem/jobHistory.fileSystem.gateway.test.js.map +1 -0
  268. package/dist/tests/units/modules/review-execution/usecases/jobHistory/loadRecentJobHistory.usecase.test.d.ts +2 -0
  269. package/dist/tests/units/modules/review-execution/usecases/jobHistory/loadRecentJobHistory.usecase.test.d.ts.map +1 -0
  270. package/dist/tests/units/modules/review-execution/usecases/jobHistory/loadRecentJobHistory.usecase.test.js +38 -0
  271. package/dist/tests/units/modules/review-execution/usecases/jobHistory/loadRecentJobHistory.usecase.test.js.map +1 -0
  272. package/dist/tests/units/modules/review-execution/usecases/jobHistory/persistJobRecord.usecase.test.d.ts +2 -0
  273. package/dist/tests/units/modules/review-execution/usecases/jobHistory/persistJobRecord.usecase.test.d.ts.map +1 -0
  274. package/dist/tests/units/modules/review-execution/usecases/jobHistory/persistJobRecord.usecase.test.js +126 -0
  275. package/dist/tests/units/modules/review-execution/usecases/jobHistory/persistJobRecord.usecase.test.js.map +1 -0
  276. package/dist/tests/units/modules/review-execution/usecases/jobHistory/pruneJobHistory.usecase.test.d.ts +2 -0
  277. package/dist/tests/units/modules/review-execution/usecases/jobHistory/pruneJobHistory.usecase.test.d.ts.map +1 -0
  278. package/dist/tests/units/modules/review-execution/usecases/jobHistory/pruneJobHistory.usecase.test.js +42 -0
  279. package/dist/tests/units/modules/review-execution/usecases/jobHistory/pruneJobHistory.usecase.test.js.map +1 -0
  280. package/dist/tests/units/modules/statistics-insights/interface-adapters/controllers/http/overview.routes.test.js +28 -0
  281. package/dist/tests/units/modules/statistics-insights/interface-adapters/controllers/http/overview.routes.test.js.map +1 -1
  282. package/dist/tests/units/modules/statistics-insights/interface-adapters/presenters/overview.presenter.test.js +39 -0
  283. package/dist/tests/units/modules/statistics-insights/interface-adapters/presenters/overview.presenter.test.js.map +1 -1
  284. package/dist/tests/units/modules/worktree-management/entities/worktree/worktreeHealth.schema.test.d.ts +2 -0
  285. package/dist/tests/units/modules/worktree-management/entities/worktree/worktreeHealth.schema.test.d.ts.map +1 -0
  286. package/dist/tests/units/modules/worktree-management/entities/worktree/worktreeHealth.schema.test.js +50 -0
  287. package/dist/tests/units/modules/worktree-management/entities/worktree/worktreeHealth.schema.test.js.map +1 -0
  288. package/dist/tests/units/modules/worktree-management/interface-adapters/controllers/http/worktreeOverview.routes.test.js +106 -0
  289. package/dist/tests/units/modules/worktree-management/interface-adapters/controllers/http/worktreeOverview.routes.test.js.map +1 -1
  290. package/dist/tests/units/modules/worktree-management/interface-adapters/gateways/worktreeHealthProbe.fileSystem.gateway.test.d.ts +2 -0
  291. package/dist/tests/units/modules/worktree-management/interface-adapters/gateways/worktreeHealthProbe.fileSystem.gateway.test.d.ts.map +1 -0
  292. package/dist/tests/units/modules/worktree-management/interface-adapters/gateways/worktreeHealthProbe.fileSystem.gateway.test.js +114 -0
  293. package/dist/tests/units/modules/worktree-management/interface-adapters/gateways/worktreeHealthProbe.fileSystem.gateway.test.js.map +1 -0
  294. package/dist/tests/units/modules/worktree-management/interface-adapters/presenters/worktreePanel.presenter.test.js +140 -0
  295. package/dist/tests/units/modules/worktree-management/interface-adapters/presenters/worktreePanel.presenter.test.js.map +1 -1
  296. package/dist/tests/units/modules/worktree-management/services/forceCleanupLock.test.d.ts +2 -0
  297. package/dist/tests/units/modules/worktree-management/services/forceCleanupLock.test.d.ts.map +1 -0
  298. package/dist/tests/units/modules/worktree-management/services/forceCleanupLock.test.js +29 -0
  299. package/dist/tests/units/modules/worktree-management/services/forceCleanupLock.test.js.map +1 -0
  300. package/dist/tests/units/modules/worktree-management/usecases/detectDegradedWorktrees.usecase.test.d.ts +2 -0
  301. package/dist/tests/units/modules/worktree-management/usecases/detectDegradedWorktrees.usecase.test.d.ts.map +1 -0
  302. package/dist/tests/units/modules/worktree-management/usecases/detectDegradedWorktrees.usecase.test.js +124 -0
  303. package/dist/tests/units/modules/worktree-management/usecases/detectDegradedWorktrees.usecase.test.js.map +1 -0
  304. package/dist/tests/units/modules/worktree-management/usecases/removeWorktree.usecase.test.js +27 -0
  305. package/dist/tests/units/modules/worktree-management/usecases/removeWorktree.usecase.test.js.map +1 -1
  306. package/dist/tests/units/services/statsService.summary.test.d.ts +2 -0
  307. package/dist/tests/units/services/statsService.summary.test.d.ts.map +1 -0
  308. package/dist/tests/units/services/statsService.summary.test.js +43 -0
  309. package/dist/tests/units/services/statsService.summary.test.js.map +1 -0
  310. package/package.json +1 -1
@@ -5,13 +5,16 @@ import { dirname, join } from 'node:path';
5
5
  import { z } from 'zod';
6
6
  import { languageSchema } from '../../modules/shared-kernel/entities/language/language.schema.js';
7
7
  export const claudeModelSchema = z.enum(['haiku', 'sonnet', 'opus']);
8
+ const worktreeStaleThresholdHoursSchema = z.number().int().min(1).max(720);
8
9
  const runtimeSettingsSchema = z.object({
9
10
  language: languageSchema,
10
11
  model: claudeModelSchema,
12
+ worktreeStaleThresholdHours: worktreeStaleThresholdHoursSchema.default(24),
11
13
  });
12
14
  const DEFAULT_SETTINGS = {
13
15
  model: 'opus',
14
16
  language: 'en',
17
+ worktreeStaleThresholdHours: 24,
15
18
  };
16
19
  let settings = { ...DEFAULT_SETTINGS };
17
20
  let settingsPath = null;
@@ -97,6 +100,17 @@ export async function setDefaultLanguage(language) {
97
100
  settings.language = result.data;
98
101
  await persistAsync();
99
102
  }
103
+ export function getWorktreeStaleThresholdHours() {
104
+ return settings.worktreeStaleThresholdHours;
105
+ }
106
+ export async function setWorktreeStaleThresholdHours(hours) {
107
+ const result = worktreeStaleThresholdHoursSchema.safeParse(hours);
108
+ if (!result.success) {
109
+ throw new Error(`Invalid stale threshold (hours): ${hours}`);
110
+ }
111
+ settings.worktreeStaleThresholdHours = result.data;
112
+ await persistAsync();
113
+ }
100
114
  export function getSettings() {
101
115
  return { ...settings };
102
116
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runtimeSettings.js","sourceRoot":"","sources":["../../../src/frameworks/settings/runtimeSettings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtimeSettings.js","sourceRoot":"","sources":["../../../src/frameworks/settings/runtimeSettings.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,8 @@ import { WorktreePanelPresenter } from '../modules/worktree-management/interface
13
13
  import type { GitCommandExecutor } from '../modules/worktree-management/entities/gitCommand/gitCommand.gateway.js';
14
14
  import type { WorktreeGateway } from '../modules/worktree-management/entities/worktree/worktree.gateway.js';
15
15
  import type { WorktreeSizeProbeGateway } from '../modules/worktree-management/entities/worktree/worktreeSizeProbe.gateway.js';
16
+ import type { WorktreeHealthProbeGateway } from '../modules/worktree-management/entities/worktree/worktreeHealthProbe.gateway.js';
17
+ import type { ForceCleanupLockService } from '../modules/worktree-management/services/forceCleanupLock.js';
16
18
  import type { WorktreeSchedulerControls } from '../modules/worktree-management/interface-adapters/controllers/http/worktreeOverview.routes.js';
17
19
  import { type Logger } from 'pino';
18
20
  export interface Dependencies {
@@ -29,8 +31,10 @@ export interface Dependencies {
29
31
  gitCommandExecutor: GitCommandExecutor;
30
32
  worktreeGateway: WorktreeGateway;
31
33
  worktreeSizeProbeGateway: WorktreeSizeProbeGateway;
34
+ worktreeHealthProbeGateway: WorktreeHealthProbeGateway;
32
35
  worktreePanelPresenter: WorktreePanelPresenter;
33
36
  sweepSchedulerControls: WorktreeSchedulerControls | null;
37
+ forceCleanupLock: ForceCleanupLockService;
34
38
  logger: Logger;
35
39
  config: Config;
36
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../../src/main/dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iFAAiF,CAAC;AACpI,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4EAA4E,CAAC;AAC/G,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8EAA8E,CAAC;AACtH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+EAA+E,CAAC;AAC1H,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4EAA4E,CAAC;AACvH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oEAAoE,CAAC;AAC1G,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sFAAsF,CAAC;AAQlI,OAAO,EAAE,2BAA2B,EAAE,MAAM,qEAAqE,CAAC;AAClH,OAAO,EAAE,8BAA8B,EAAE,MAAM,6FAA6F,CAAC;AAE7I,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,sCAAsC,CAAC;AAI9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,wFAAwF,CAAC;AAChI,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yEAAyE,CAAC;AAClH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qEAAqE,CAAC;AAC3G,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8EAA8E,CAAC;AAC7H,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8FAA8F,CAAC;AAC9I,OAAO,EAAQ,KAAK,MAAM,EAAsB,MAAM,MAAM,CAAC;AAI7D,MAAM,WAAW,YAAY;IAC3B,4BAA4B,EAAE,4BAA4B,CAAC;IAC3D,YAAY,EAAE,YAAY,CAAC;IAC3B,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,eAAe,EAAE,eAAe,CAAC;IACjC,oBAAoB,EAAE,2BAA2B,CAAC;IAClD,iBAAiB,EAAE,8BAA8B,CAAC;IAClD,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC;IACjC,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,sBAAsB,EAAE,yBAAyB,GAAG,IAAI,CAAC;IACzD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AA+BD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CA8B/D"}
1
+ {"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../../src/main/dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iFAAiF,CAAC;AACpI,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4EAA4E,CAAC;AAC/G,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8EAA8E,CAAC;AACtH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+EAA+E,CAAC;AAC1H,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4EAA4E,CAAC;AACvH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oEAAoE,CAAC;AAC1G,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sFAAsF,CAAC;AAQlI,OAAO,EAAE,2BAA2B,EAAE,MAAM,qEAAqE,CAAC;AAClH,OAAO,EAAE,8BAA8B,EAAE,MAAM,6FAA6F,CAAC;AAE7I,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,sCAAsC,CAAC;AAI9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,wFAAwF,CAAC;AAGhI,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yEAAyE,CAAC;AAClH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qEAAqE,CAAC;AAC3G,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8EAA8E,CAAC;AAC7H,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,gFAAgF,CAAC;AACjI,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4DAA4D,CAAC;AAC1G,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8FAA8F,CAAC;AAC9I,OAAO,EAAQ,KAAK,MAAM,EAAsB,MAAM,MAAM,CAAC;AAI7D,MAAM,WAAW,YAAY;IAC3B,4BAA4B,EAAE,4BAA4B,CAAC;IAC3D,YAAY,EAAE,YAAY,CAAC;IAC3B,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,eAAe,EAAE,eAAe,CAAC;IACjC,oBAAoB,EAAE,2BAA2B,CAAC;IAClD,iBAAiB,EAAE,8BAA8B,CAAC;IAClD,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC;IACjC,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,0BAA0B,EAAE,0BAA0B,CAAC;IACvD,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,sBAAsB,EAAE,yBAAyB,GAAG,IAAI,CAAC;IACzD,gBAAgB,EAAE,uBAAuB,CAAC;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AA+BD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAoC/D"}
@@ -13,6 +13,8 @@ import { GitCommandCliGateway } from '../modules/worktree-management/interface-a
13
13
  import { WorktreeFileSystemGateway } from '../modules/worktree-management/interface-adapters/gateways/worktree.fileSystem.gateway.js';
14
14
  import { WorktreeSizeProbeCliGateway } from '../modules/worktree-management/interface-adapters/gateways/worktreeSizeProbe.cli.gateway.js';
15
15
  import { WorktreePanelPresenter } from '../modules/worktree-management/interface-adapters/presenters/worktreePanel.presenter.js';
16
+ import { WorktreeHealthProbeFileSystemGateway } from '../modules/worktree-management/interface-adapters/gateways/worktreeHealthProbe.fileSystem.gateway.js';
17
+ import { InMemoryForceCleanupLockService } from '../modules/worktree-management/services/forceCleanupLock.js';
16
18
  import { pino } from 'pino';
17
19
  import { mkdirSync } from 'node:fs';
18
20
  import { LOG_DIR, LOG_FILE_PATH } from '../shared/services/daemonPaths.js';
@@ -45,9 +47,13 @@ export function createDependencies(config) {
45
47
  const gitCommandExecutor = new GitCommandCliGateway();
46
48
  const worktreeGateway = new WorktreeFileSystemGateway({ executor: gitCommandExecutor });
47
49
  const worktreeSizeProbeGateway = new WorktreeSizeProbeCliGateway();
50
+ const worktreeHealthProbeGateway = new WorktreeHealthProbeFileSystemGateway({
51
+ executor: gitCommandExecutor,
52
+ });
48
53
  const worktreePanelPresenter = new WorktreePanelPresenter({
49
54
  sizeProbe: worktreeSizeProbeGateway,
50
55
  });
56
+ const forceCleanupLock = new InMemoryForceCleanupLockService();
51
57
  return {
52
58
  reviewRequestTrackingGateway: new FileSystemReviewRequestTrackingGateway(new ProjectStatsCalculator()),
53
59
  statsGateway: new FileSystemStatsGateway(),
@@ -62,8 +68,10 @@ export function createDependencies(config) {
62
68
  gitCommandExecutor,
63
69
  worktreeGateway,
64
70
  worktreeSizeProbeGateway,
71
+ worktreeHealthProbeGateway,
65
72
  worktreePanelPresenter,
66
73
  sweepSchedulerControls: null,
74
+ forceCleanupLock,
67
75
  logger,
68
76
  config,
69
77
  };
@@ -1 +1 @@
1
- {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../src/main/dependencies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../src/main/dependencies.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/main/routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAI/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAsG3D,wBAAsB,cAAc,CAClC,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,IAAI,CAAC,CAsVf"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/main/routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAI/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAkH3D,wBAAsB,cAAc,CAClC,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,IAAI,CAAC,CAqXf"}
@@ -29,7 +29,9 @@ import { insightsRoutes } from '../modules/statistics-insights/interface-adapter
29
29
  import { registerWebSocketRoutes } from '../main/websocket.js';
30
30
  import { handleGitLabWebhook } from '../modules/platform-integration/interface-adapters/controllers/webhook/gitlab.controller.js';
31
31
  import { handleGitHubWebhook } from '../modules/platform-integration/interface-adapters/controllers/webhook/github.controller.js';
32
- import { cancelJob, getJobStatus, enqueueReview, getJobsStatus } from '../frameworks/queue/pQueueAdapter.js';
32
+ import { cancelJob, getJobStatus, enqueueReview, getJobsStatus, setProjectConcurrencyCap, setGlobalConcurrency, getRunningCount, getTotalCapacity, } from '../frameworks/queue/pQueueAdapter.js';
33
+ import { RecomputeGlobalConcurrencyUseCase } from '../modules/cli-configuration/usecases/projectConfig/recomputeGlobalConcurrency.usecase.js';
34
+ import { RepositoriesListRuntimeConfigGateway } from '../modules/cli-configuration/interface-adapters/gateways/repositoriesList.runtimeConfig.gateway.js';
33
35
  import { GitLabThreadFetchGateway, defaultGitLabExecutor } from '../modules/platform-integration/interface-adapters/gateways/threadFetch.gitlab.gateway.js';
34
36
  import { GitLabDiffMetadataFetchGateway } from '../modules/platform-integration/interface-adapters/gateways/diffMetadataFetch.gitlab.gateway.js';
35
37
  import { GitHubThreadFetchGateway, defaultGitHubExecutor } from '../modules/platform-integration/interface-adapters/gateways/threadFetch.github.gateway.js';
@@ -78,7 +80,8 @@ import { SelfUpdateCliGateway } from '../modules/cli-configuration/interface-ada
78
80
  import { InstallTypeDetectorFsGateway } from '../modules/cli-configuration/interface-adapters/gateways/installTypeDetector.fs.gateway.js';
79
81
  import { broadcastBackfillProgress } from '../main/websocket.js';
80
82
  import { createClaudeInsightsInvoker } from '../frameworks/claude/claudeInsightsInvoker.js';
81
- import { getDefaultLanguage } from '../frameworks/settings/runtimeSettings.js';
83
+ import { getDefaultLanguage, getWorktreeStaleThresholdHours } from '../frameworks/settings/runtimeSettings.js';
84
+ import { detectDegradedWorktrees } from '../modules/worktree-management/usecases/detectDegradedWorktrees.usecase.js';
82
85
  const __filename = fileURLToPath(import.meta.url);
83
86
  const __dirname = dirname(__filename);
84
87
  function readVersion() {
@@ -121,6 +124,15 @@ export async function registerRoutes(app, deps) {
121
124
  });
122
125
  const projectConfigGateway = new ProjectConfigFileSystemGateway();
123
126
  const updateProjectConfig = new UpdateProjectConfigUseCase(projectConfigGateway);
127
+ const recomputeGlobalConcurrency = new RecomputeGlobalConcurrencyUseCase({
128
+ repositoriesListGateway: new RepositoriesListRuntimeConfigGateway(() => deps.config.repositories),
129
+ projectConfigGateway,
130
+ queueCapacityPort: {
131
+ setGlobalConcurrency,
132
+ setProjectConcurrencyCap,
133
+ },
134
+ });
135
+ recomputeGlobalConcurrency.execute({});
124
136
  await app.register(overviewRoutes, {
125
137
  getRepositories: () => deps.config.repositories,
126
138
  getActiveJobs: () => getJobsStatus().active.map((job) => ({
@@ -136,6 +148,7 @@ export async function registerRoutes(app, deps) {
136
148
  statsGateway: deps.statsGateway,
137
149
  reviewFileGateway: deps.reviewFileGateway,
138
150
  projectConfigGateway,
151
+ getCapacity: () => ({ running: getRunningCount(), max: getTotalCapacity() }),
139
152
  });
140
153
  await app.register(mrTrackingRoutes, {
141
154
  reviewRequestTrackingGateway: deps.reviewRequestTrackingGateway,
@@ -151,6 +164,17 @@ export async function registerRoutes(app, deps) {
151
164
  presenter: deps.worktreePanelPresenter,
152
165
  schedulerControls: deps.sweepSchedulerControls,
153
166
  logger: deps.logger,
167
+ detectDegradedWorktrees: (entries) => detectDegradedWorktrees({
168
+ entries,
169
+ staleThresholdMs: getWorktreeStaleThresholdHours() * 60 * 60 * 1000,
170
+ now: () => new Date(),
171
+ }, { healthProbe: deps.worktreeHealthProbeGateway }),
172
+ forceCleanupLock: deps.forceCleanupLock,
173
+ removeWorktreeForCleanup: (identity) => {
174
+ const firstEnabled = deps.config.repositories.find((repository) => repository.enabled);
175
+ const sourceCheckoutPath = firstEnabled?.localPath ?? '';
176
+ return deps.worktreeGateway.remove({ identity, sourceCheckoutPath, force: true });
177
+ },
154
178
  });
155
179
  const budgetGateway = new FilesystemBudgetGateway();
156
180
  const existingBudget = await budgetGateway.load();
@@ -272,7 +296,12 @@ export async function registerRoutes(app, deps) {
272
296
  });
273
297
  await app.register(logsRoutes);
274
298
  await app.register(cliStatusRoutes);
275
- await app.register(projectConfigRoutes, { updateProjectConfig });
299
+ await app.register(projectConfigRoutes, {
300
+ updateProjectConfig,
301
+ onSaved: () => {
302
+ recomputeGlobalConcurrency.execute({});
303
+ },
304
+ });
276
305
  await registerWebSocketRoutes(app, deps);
277
306
  const trackingGw = deps.reviewRequestTrackingGateway;
278
307
  const threadFetchGw = new GitLabThreadFetchGateway(defaultGitLabExecutor);
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/main/routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/main/routes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/main/server.ts"],"names":[],"mappings":"AAAA,OAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AAExD,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAmB9D,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AA4BD,wBAAsB,YAAY,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,eAAe,CAAC,CAKxF;AAED,wBAAsB,WAAW,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,eAAe,CAAC,CAsHvF"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/main/server.ts"],"names":[],"mappings":"AAAA,OAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AAExD,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AA6B9D,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAgED,wBAAsB,YAAY,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,eAAe,CAAC,CAKxF;AAED,wBAAsB,WAAW,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,eAAe,CAAC,CAuJvF"}
@@ -4,7 +4,11 @@ import { loadConfig } from '../config/loader.js';
4
4
  import { createDependencies } from './dependencies.js';
5
5
  import { registerRoutes } from './routes.js';
6
6
  import { setupWebSocketCallbacks } from './websocket.js';
7
- import { initQueue } from '../frameworks/queue/pQueueAdapter.js';
7
+ import { initQueue, replaceCompletedJobs, setPersistJobRecordCallback, } from '../frameworks/queue/pQueueAdapter.js';
8
+ import { JobHistoryFileSystemGateway } from '../modules/review-execution/interface-adapters/gateways/fileSystem/jobHistory.fileSystem.gateway.js';
9
+ import { PersistJobRecordUseCase } from '../modules/review-execution/usecases/jobHistory/persistJobRecord.usecase.js';
10
+ import { LoadRecentJobHistoryUseCase } from '../modules/review-execution/usecases/jobHistory/loadRecentJobHistory.usecase.js';
11
+ import { PruneJobHistoryUseCase } from '../modules/review-execution/usecases/jobHistory/pruneJobHistory.usecase.js';
8
12
  import { removePidFile } from '../shared/services/pidFileManager.js';
9
13
  import { PID_FILE_PATH } from '../shared/services/daemonPaths.js';
10
14
  import { startCleanupScheduler } from '../frameworks/scheduler/cleanupScheduler.js';
@@ -30,6 +34,41 @@ function addRawBodyParser(app) {
30
34
  }
31
35
  });
32
36
  }
37
+ // Revives a historical JobRecord into a JobStatus to seed the in-memory recent list at startup.
38
+ //
39
+ // KNOWN LIMITATIONS (acknowledged in PR #227 review, follow-ups tracked outside SPEC-176):
40
+ //
41
+ // 1. Status granularity loss: JobRecord persists 4 outcomes (success/failed/killed/timeout),
42
+ // but the runtime JobStatus.status only knows queued/running/completed/failed. After a
43
+ // daemon restart, killed and timeout outcomes collapse to 'failed' here; the original
44
+ // distinction survives only via the `error` field (populated from `exitReason`).
45
+ // Real fix requires extending JobStatus.status — out of SPEC-176 scope.
46
+ //
47
+ // 2. Empty-string placeholders: ReviewJob fields localPath/mrUrl/sourceBranch/targetBranch/skill
48
+ // are typed `string` (non-nullable) but not persisted by SPEC-176. Revived jobs assign ''
49
+ // so downstream display code must treat empty strings as "no value" — most dashboard
50
+ // consumers already guard defensively (sanitizeHttpUrl, length checks). Real fix requires
51
+ // narrowing those fields to `string | null` in ReviewJob — out of SPEC-176 scope.
52
+ function reviveJobStatusFromRecord(record) {
53
+ return {
54
+ job: {
55
+ id: record.jobId,
56
+ platform: record.platform,
57
+ projectPath: record.projectPath,
58
+ localPath: '',
59
+ mrNumber: record.mergeRequestId,
60
+ skill: '',
61
+ mrUrl: '',
62
+ sourceBranch: '',
63
+ targetBranch: '',
64
+ jobType: record.jobType,
65
+ },
66
+ status: record.status === 'success' ? 'completed' : 'failed',
67
+ startedAt: new Date(record.startedAt),
68
+ completedAt: new Date(record.completedAt),
69
+ error: record.exitReason ?? undefined,
70
+ };
71
+ }
33
72
  async function buildServer(deps) {
34
73
  const app = Fastify({ logger: false });
35
74
  addRawBodyParser(app);
@@ -49,6 +88,35 @@ export async function startServer(options = {}) {
49
88
  configureSettingsLogger(deps.logger);
50
89
  await loadSettingsFromDisk();
51
90
  initQueue(deps.logger);
91
+ const jobHistoryGateway = new JobHistoryFileSystemGateway({ logger: deps.logger });
92
+ const persistJobRecord = new PersistJobRecordUseCase({
93
+ jobHistoryGateway,
94
+ logger: deps.logger,
95
+ });
96
+ const loadRecentJobHistory = new LoadRecentJobHistoryUseCase({
97
+ jobHistoryGateway,
98
+ logger: deps.logger,
99
+ });
100
+ const pruneJobHistory = new PruneJobHistoryUseCase({
101
+ jobHistoryGateway,
102
+ logger: deps.logger,
103
+ });
104
+ await pruneJobHistory.execute({
105
+ retentionDays: config.queue.jobHistoryRetentionDays,
106
+ now: () => new Date(),
107
+ });
108
+ const recentRecords = await loadRecentJobHistory.execute({
109
+ retentionDays: config.queue.jobHistoryRetentionDays,
110
+ now: () => new Date(),
111
+ });
112
+ replaceCompletedJobs(recentRecords.map(reviveJobStatusFromRecord));
113
+ setPersistJobRecordCallback(async (jobStatus, abortSignalAborted) => {
114
+ await persistJobRecord.execute({
115
+ jobStatus,
116
+ abortSignalAborted,
117
+ now: () => new Date(),
118
+ });
119
+ });
52
120
  setupWebSocketCallbacks({
53
121
  reviewContextWatcher: deps.reviewContextWatcher,
54
122
  progressPresenter: deps.progressPresenter,
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/main/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/main/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const projectConcurrencyCapGuard: import("../../../../shared/foundation/guard.base.js").Guard<number>;
2
+ //# sourceMappingURL=projectConcurrencyCap.guard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectConcurrencyCap.guard.d.ts","sourceRoot":"","sources":["../../../../../src/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.guard.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,0BAA0B,2DAGtC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { createGuard } from '../../../../shared/foundation/guard.base.js';
2
+ import { projectConcurrencyCapSchema, } from '../../../../modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.schema.js';
3
+ export const projectConcurrencyCapGuard = createGuard(projectConcurrencyCapSchema, 'projectConcurrencyCap');
4
+ //# sourceMappingURL=projectConcurrencyCap.guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectConcurrencyCap.guard.js","sourceRoot":"","sources":["../../../../../src/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EACL,2BAA2B,GAE5B,MAAM,4FAA4F,CAAC;AAEpG,MAAM,CAAC,MAAM,0BAA0B,GAAG,WAAW,CACnD,2BAA2B,EAC3B,uBAAuB,CACxB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { z } from 'zod';
2
+ export declare const MIN_PROJECT_CONCURRENCY_CAP = 1;
3
+ export declare const MAX_PROJECT_CONCURRENCY_CAP = 10;
4
+ export declare const DEFAULT_PROJECT_CONCURRENCY_CAP = 2;
5
+ export declare const projectConcurrencyCapSchema: z.ZodNumber;
6
+ export type ProjectConcurrencyCap = z.infer<typeof projectConcurrencyCapSchema>;
7
+ //# sourceMappingURL=projectConcurrencyCap.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectConcurrencyCap.schema.d.ts","sourceRoot":"","sources":["../../../../../src/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAC7C,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,eAAO,MAAM,+BAA+B,IAAI,CAAC;AAEjD,eAAO,MAAM,2BAA2B,aAIL,CAAC;AAEpC,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { z } from 'zod';
2
+ export const MIN_PROJECT_CONCURRENCY_CAP = 1;
3
+ export const MAX_PROJECT_CONCURRENCY_CAP = 10;
4
+ export const DEFAULT_PROJECT_CONCURRENCY_CAP = 2;
5
+ export const projectConcurrencyCapSchema = z
6
+ .number()
7
+ .int()
8
+ .min(MIN_PROJECT_CONCURRENCY_CAP)
9
+ .max(MAX_PROJECT_CONCURRENCY_CAP);
10
+ //# sourceMappingURL=projectConcurrencyCap.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectConcurrencyCap.schema.js","sourceRoot":"","sources":["../../../../../src/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAC7C,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAC9C,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC;AAEjD,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC;KACzC,MAAM,EAAE;KACR,GAAG,EAAE;KACL,GAAG,CAAC,2BAA2B,CAAC;KAChC,GAAG,CAAC,2BAA2B,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { DEFAULT_PROJECT_CONCURRENCY_CAP, MAX_PROJECT_CONCURRENCY_CAP, MIN_PROJECT_CONCURRENCY_CAP, type ProjectConcurrencyCap } from '../../../../modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.schema.js';
2
+ export { DEFAULT_PROJECT_CONCURRENCY_CAP, MAX_PROJECT_CONCURRENCY_CAP, MIN_PROJECT_CONCURRENCY_CAP, };
3
+ export type { ProjectConcurrencyCap };
4
+ export declare const PROJECT_CAP_REQUIRED_MESSAGE = "La valeur est obligatoire";
5
+ export declare const PROJECT_CAP_NOT_INTEGER_MESSAGE = "La valeur doit \u00EAtre un nombre entier";
6
+ export declare const PROJECT_CAP_OUT_OF_RANGE_MESSAGE = "La valeur doit \u00EAtre comprise entre 1 et 10";
7
+ export type ProjectConcurrencyCapValidation = {
8
+ ok: true;
9
+ value: ProjectConcurrencyCap;
10
+ } | {
11
+ ok: false;
12
+ reason: string;
13
+ };
14
+ export declare function validateProjectConcurrencyCap(value: unknown): ProjectConcurrencyCapValidation;
15
+ export declare function effectiveProjectConcurrencyCap(config: {
16
+ maxConcurrentReviews?: number | null;
17
+ }): number;
18
+ //# sourceMappingURL=projectConcurrencyCap.valueObject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectConcurrencyCap.valueObject.d.ts","sourceRoot":"","sources":["../../../../../src/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.valueObject.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,+BAA+B,EAC/B,2BAA2B,EAC3B,2BAA2B,EAC3B,KAAK,qBAAqB,EAC3B,MAAM,4FAA4F,CAAC;AAEpG,OAAO,EACL,+BAA+B,EAC/B,2BAA2B,EAC3B,2BAA2B,GAC5B,CAAC;AACF,YAAY,EAAE,qBAAqB,EAAE,CAAC;AAEtC,eAAO,MAAM,4BAA4B,8BAA8B,CAAC;AACxE,eAAO,MAAM,+BAA+B,8CAAyC,CAAC;AACtF,eAAO,MAAM,gCAAgC,oDAA+C,CAAC;AAE7F,MAAM,MAAM,+BAA+B,GACvC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,qBAAqB,CAAA;CAAE,GAC1C;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAElC,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,OAAO,GACb,+BAA+B,CAWjC;AAED,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE;IAAE,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC/C,MAAM,CASR"}
@@ -0,0 +1,28 @@
1
+ import { DEFAULT_PROJECT_CONCURRENCY_CAP, MAX_PROJECT_CONCURRENCY_CAP, MIN_PROJECT_CONCURRENCY_CAP, } from '../../../../modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.schema.js';
2
+ export { DEFAULT_PROJECT_CONCURRENCY_CAP, MAX_PROJECT_CONCURRENCY_CAP, MIN_PROJECT_CONCURRENCY_CAP, };
3
+ export const PROJECT_CAP_REQUIRED_MESSAGE = 'La valeur est obligatoire';
4
+ export const PROJECT_CAP_NOT_INTEGER_MESSAGE = 'La valeur doit être un nombre entier';
5
+ export const PROJECT_CAP_OUT_OF_RANGE_MESSAGE = 'La valeur doit être comprise entre 1 et 10';
6
+ export function validateProjectConcurrencyCap(value) {
7
+ if (value === null || value === undefined || value === '') {
8
+ return { ok: false, reason: PROJECT_CAP_REQUIRED_MESSAGE };
9
+ }
10
+ if (typeof value !== 'number' || !Number.isInteger(value)) {
11
+ return { ok: false, reason: PROJECT_CAP_NOT_INTEGER_MESSAGE };
12
+ }
13
+ if (value < MIN_PROJECT_CONCURRENCY_CAP || value > MAX_PROJECT_CONCURRENCY_CAP) {
14
+ return { ok: false, reason: PROJECT_CAP_OUT_OF_RANGE_MESSAGE };
15
+ }
16
+ return { ok: true, value };
17
+ }
18
+ export function effectiveProjectConcurrencyCap(config) {
19
+ const raw = config.maxConcurrentReviews;
20
+ if (typeof raw !== 'number' || !Number.isInteger(raw)) {
21
+ return DEFAULT_PROJECT_CONCURRENCY_CAP;
22
+ }
23
+ if (raw < MIN_PROJECT_CONCURRENCY_CAP || raw > MAX_PROJECT_CONCURRENCY_CAP) {
24
+ return DEFAULT_PROJECT_CONCURRENCY_CAP;
25
+ }
26
+ return raw;
27
+ }
28
+ //# sourceMappingURL=projectConcurrencyCap.valueObject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectConcurrencyCap.valueObject.js","sourceRoot":"","sources":["../../../../../src/modules/cli-configuration/entities/projectConcurrencyCap/projectConcurrencyCap.valueObject.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,+BAA+B,EAC/B,2BAA2B,EAC3B,2BAA2B,GAE5B,MAAM,4FAA4F,CAAC;AAEpG,OAAO,EACL,+BAA+B,EAC/B,2BAA2B,EAC3B,2BAA2B,GAC5B,CAAC;AAGF,MAAM,CAAC,MAAM,4BAA4B,GAAG,2BAA2B,CAAC;AACxE,MAAM,CAAC,MAAM,+BAA+B,GAAG,sCAAsC,CAAC;AACtF,MAAM,CAAC,MAAM,gCAAgC,GAAG,4CAA4C,CAAC;AAM7F,MAAM,UAAU,6BAA6B,CAC3C,KAAc;IAEd,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QAC1D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,4BAA4B,EAAE,CAAC;IAC7D,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,+BAA+B,EAAE,CAAC;IAChE,CAAC;IACD,IAAI,KAAK,GAAG,2BAA2B,IAAI,KAAK,GAAG,2BAA2B,EAAE,CAAC;QAC/E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,gCAAgC,EAAE,CAAC;IACjE,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,MAAgD;IAEhD,MAAM,GAAG,GAAG,MAAM,CAAC,oBAAoB,CAAC;IACxC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;QACtD,OAAO,+BAA+B,CAAC;IACzC,CAAC;IACD,IAAI,GAAG,GAAG,2BAA2B,IAAI,GAAG,GAAG,2BAA2B,EAAE,CAAC;QAC3E,OAAO,+BAA+B,CAAC;IACzC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,9 @@
1
+ export interface DeclaredRepository {
2
+ name: string;
3
+ localPath: string;
4
+ enabled: boolean;
5
+ }
6
+ export interface RepositoriesListGateway {
7
+ list(): DeclaredRepository[];
8
+ }
9
+ //# sourceMappingURL=repositoriesList.gateway.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repositoriesList.gateway.d.ts","sourceRoot":"","sources":["../../../../../src/modules/cli-configuration/entities/repositoriesList/repositoriesList.gateway.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,IAAI,kBAAkB,EAAE,CAAC;CAC9B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=repositoriesList.gateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repositoriesList.gateway.js","sourceRoot":"","sources":["../../../../../src/modules/cli-configuration/entities/repositoriesList/repositoriesList.gateway.ts"],"names":[],"mappings":""}
@@ -2,6 +2,7 @@ import type { FastifyPluginAsync } from 'fastify';
2
2
  import type { UpdateProjectConfigUseCase } from '../../../../../modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.js';
3
3
  interface ProjectConfigRoutesOptions {
4
4
  updateProjectConfig?: UpdateProjectConfigUseCase;
5
+ onSaved?: (projectPath: string) => void;
5
6
  }
6
7
  export declare const projectConfigRoutes: FastifyPluginAsync<ProjectConfigRoutesOptions>;
7
8
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"projectConfig.routes.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAUlD,OAAO,KAAK,EACV,0BAA0B,EAE3B,MAAM,mFAAmF,CAAC;AAE3F,UAAU,0BAA0B;IAClC,mBAAmB,CAAC,EAAE,0BAA0B,CAAC;CAClD;AAmFD,eAAO,MAAM,mBAAmB,EAAE,kBAAkB,CAAC,0BAA0B,CAmJ9E,CAAC"}
1
+ {"version":3,"file":"projectConfig.routes.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAUlD,OAAO,KAAK,EACV,0BAA0B,EAE3B,MAAM,mFAAmF,CAAC;AAE3F,UAAU,0BAA0B;IAClC,mBAAmB,CAAC,EAAE,0BAA0B,CAAC;IACjD,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAuGD,eAAO,MAAM,mBAAmB,EAAE,kBAAkB,CAAC,0BAA0B,CAoJ9E,CAAC"}