reviewflow 3.34.0 → 3.36.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 (218) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/dist/dashboard/index.html +63 -2
  3. package/dist/dashboard/modules/i18n.d.ts.map +1 -1
  4. package/dist/dashboard/modules/i18n.js +10 -0
  5. package/dist/dashboard/modules/i18n.js.map +1 -1
  6. package/dist/dashboard/setup.html +17 -1
  7. package/dist/dashboard/styles.css +75 -0
  8. package/dist/frameworks/settings/runtimeSettings.d.ts +7 -0
  9. package/dist/frameworks/settings/runtimeSettings.d.ts.map +1 -1
  10. package/dist/frameworks/settings/runtimeSettings.js +14 -0
  11. package/dist/frameworks/settings/runtimeSettings.js.map +1 -1
  12. package/dist/main/routes.d.ts.map +1 -1
  13. package/dist/main/routes.js +63 -30
  14. package/dist/main/routes.js.map +1 -1
  15. package/dist/modules/cli-configuration/interface-adapters/controllers/http/settings.routes.d.ts.map +1 -1
  16. package/dist/modules/cli-configuration/interface-adapters/controllers/http/settings.routes.js +19 -1
  17. package/dist/modules/cli-configuration/interface-adapters/controllers/http/settings.routes.js.map +1 -1
  18. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.d.ts +4 -0
  19. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.d.ts.map +1 -1
  20. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.js +54 -46
  21. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.js.map +1 -1
  22. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.github.cli.gateway.d.ts.map +1 -1
  23. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.github.cli.gateway.js +4 -1
  24. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.github.cli.gateway.js.map +1 -1
  25. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.gitlab.cli.gateway.d.ts.map +1 -1
  26. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.gitlab.cli.gateway.js +4 -1
  27. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.gitlab.cli.gateway.js.map +1 -1
  28. package/dist/modules/platform-integration/interface-adapters/gateways/threadFetch.gitlab.gateway.d.ts.map +1 -1
  29. package/dist/modules/platform-integration/interface-adapters/gateways/threadFetch.gitlab.gateway.js +3 -0
  30. package/dist/modules/platform-integration/interface-adapters/gateways/threadFetch.gitlab.gateway.js.map +1 -1
  31. package/dist/modules/platform-integration/services/scopedExecutorEnvironment.d.ts +1 -0
  32. package/dist/modules/platform-integration/services/scopedExecutorEnvironment.d.ts.map +1 -1
  33. package/dist/modules/platform-integration/services/scopedExecutorEnvironment.js +10 -3
  34. package/dist/modules/platform-integration/services/scopedExecutorEnvironment.js.map +1 -1
  35. package/dist/modules/review-execution/interface-adapters/controllers/http/pendingReviews.routes.d.ts.map +1 -1
  36. package/dist/modules/review-execution/interface-adapters/controllers/http/pendingReviews.routes.js +5 -1
  37. package/dist/modules/review-execution/interface-adapters/controllers/http/pendingReviews.routes.js.map +1 -1
  38. package/dist/modules/review-execution/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.d.ts.map +1 -1
  39. package/dist/modules/review-execution/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.js +6 -4
  40. package/dist/modules/review-execution/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.js.map +1 -1
  41. package/dist/modules/review-execution/services/contextActionsExecutor.d.ts.map +1 -1
  42. package/dist/modules/review-execution/services/contextActionsExecutor.js +23 -1
  43. package/dist/modules/review-execution/services/contextActionsExecutor.js.map +1 -1
  44. package/dist/modules/review-execution/usecases/confirmPendingReview.usecase.d.ts +4 -0
  45. package/dist/modules/review-execution/usecases/confirmPendingReview.usecase.d.ts.map +1 -1
  46. package/dist/modules/review-execution/usecases/confirmPendingReview.usecase.js +6 -1
  47. package/dist/modules/review-execution/usecases/confirmPendingReview.usecase.js.map +1 -1
  48. package/dist/modules/review-execution/usecases/gateClaudeInvocation.usecase.d.ts +3 -2
  49. package/dist/modules/review-execution/usecases/gateClaudeInvocation.usecase.d.ts.map +1 -1
  50. package/dist/modules/review-execution/usecases/gateClaudeInvocation.usecase.js +2 -1
  51. package/dist/modules/review-execution/usecases/gateClaudeInvocation.usecase.js.map +1 -1
  52. package/dist/modules/setup-wizard/interface-adapters/controllers/http/setupWizard.routes.d.ts.map +1 -1
  53. package/dist/modules/setup-wizard/interface-adapters/controllers/http/setupWizard.routes.js +9 -0
  54. package/dist/modules/setup-wizard/interface-adapters/controllers/http/setupWizard.routes.js.map +1 -1
  55. package/dist/modules/setup-wizard/usecases/streamSetupRun.usecase.d.ts +14 -1
  56. package/dist/modules/setup-wizard/usecases/streamSetupRun.usecase.d.ts.map +1 -1
  57. package/dist/modules/setup-wizard/usecases/streamSetupRun.usecase.js +50 -6
  58. package/dist/modules/setup-wizard/usecases/streamSetupRun.usecase.js.map +1 -1
  59. package/dist/modules/shared-kernel/entities/triggerMode/triggerMode.schema.d.ts +7 -0
  60. package/dist/modules/shared-kernel/entities/triggerMode/triggerMode.schema.d.ts.map +1 -0
  61. package/dist/modules/shared-kernel/entities/triggerMode/triggerMode.schema.js +3 -0
  62. package/dist/modules/shared-kernel/entities/triggerMode/triggerMode.schema.js.map +1 -0
  63. package/dist/modules/tracking/interface-adapters/controllers/http/mrTrackingAdvanced.routes.d.ts.map +1 -1
  64. package/dist/modules/tracking/interface-adapters/controllers/http/mrTrackingAdvanced.routes.js +14 -6
  65. package/dist/modules/tracking/interface-adapters/controllers/http/mrTrackingAdvanced.routes.js.map +1 -1
  66. package/dist/tests/acceptance/174-semi-auto-review-trigger-mode.acceptance.test.js +4 -3
  67. package/dist/tests/acceptance/174-semi-auto-review-trigger-mode.acceptance.test.js.map +1 -1
  68. package/dist/tests/acceptance/202-confirm-pending-review-runs-review.acceptance.test.d.ts +2 -0
  69. package/dist/tests/acceptance/202-confirm-pending-review-runs-review.acceptance.test.d.ts.map +1 -0
  70. package/dist/tests/acceptance/202-confirm-pending-review-runs-review.acceptance.test.js +173 -0
  71. package/dist/tests/acceptance/202-confirm-pending-review-runs-review.acceptance.test.js.map +1 -0
  72. package/dist/tests/factories/pendingReviewRequest.factory.d.ts +1 -0
  73. package/dist/tests/factories/pendingReviewRequest.factory.d.ts.map +1 -1
  74. package/dist/tests/factories/pendingReviewRequest.factory.js +22 -0
  75. package/dist/tests/factories/pendingReviewRequest.factory.js.map +1 -1
  76. package/dist/tests/stubs/claudeSession.stub.d.ts +8 -0
  77. package/dist/tests/stubs/claudeSession.stub.d.ts.map +1 -1
  78. package/dist/tests/stubs/claudeSession.stub.js +24 -2
  79. package/dist/tests/stubs/claudeSession.stub.js.map +1 -1
  80. package/dist/tests/units/entities/insight/teamInsight.guard.test.d.ts +2 -0
  81. package/dist/tests/units/entities/insight/teamInsight.guard.test.d.ts.map +1 -0
  82. package/dist/tests/units/entities/insight/teamInsight.guard.test.js +45 -0
  83. package/dist/tests/units/entities/insight/teamInsight.guard.test.js.map +1 -0
  84. package/dist/tests/units/frameworks/settings/runtimeSettings.test.js +48 -3
  85. package/dist/tests/units/frameworks/settings/runtimeSettings.test.js.map +1 -1
  86. package/dist/tests/units/interface-adapters/controllers/http/settings.routes.test.js +36 -1
  87. package/dist/tests/units/interface-adapters/controllers/http/settings.routes.test.js.map +1 -1
  88. package/dist/tests/units/interface-adapters/controllers/http/stats.routes.test.d.ts +2 -0
  89. package/dist/tests/units/interface-adapters/controllers/http/stats.routes.test.d.ts.map +1 -0
  90. package/dist/tests/units/interface-adapters/controllers/http/stats.routes.test.js +208 -0
  91. package/dist/tests/units/interface-adapters/controllers/http/stats.routes.test.js.map +1 -0
  92. package/dist/tests/units/interface-adapters/controllers/mcp/addAction.handler.test.js +92 -0
  93. package/dist/tests/units/interface-adapters/controllers/mcp/addAction.handler.test.js.map +1 -1
  94. package/dist/tests/units/interface-adapters/controllers/webhook/github.controller.test.js +303 -0
  95. package/dist/tests/units/interface-adapters/controllers/webhook/github.controller.test.js.map +1 -1
  96. package/dist/tests/units/interface-adapters/controllers/webhook/gitlab.controller.test.js +360 -2
  97. package/dist/tests/units/interface-adapters/controllers/webhook/gitlab.controller.test.js.map +1 -1
  98. package/dist/tests/units/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.test.js +10 -3
  99. package/dist/tests/units/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.test.js.map +1 -1
  100. package/dist/tests/units/modules/claude-invocation/usecases/awaitSessionCompletion.usecase.test.js +66 -0
  101. package/dist/tests/units/modules/claude-invocation/usecases/awaitSessionCompletion.usecase.test.js.map +1 -1
  102. package/dist/tests/units/modules/claude-invocation/usecases/cleanupClaudeSession.usecase.test.js +62 -0
  103. package/dist/tests/units/modules/claude-invocation/usecases/cleanupClaudeSession.usecase.test.js.map +1 -1
  104. package/dist/tests/units/modules/cli-configuration/interface-adapters/controllers/http/cliStatus.routes.test.d.ts +2 -0
  105. package/dist/tests/units/modules/cli-configuration/interface-adapters/controllers/http/cliStatus.routes.test.d.ts.map +1 -0
  106. package/dist/tests/units/modules/cli-configuration/interface-adapters/controllers/http/cliStatus.routes.test.js +182 -0
  107. package/dist/tests/units/modules/cli-configuration/interface-adapters/controllers/http/cliStatus.routes.test.js.map +1 -0
  108. package/dist/tests/units/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.test.js +225 -0
  109. package/dist/tests/units/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.test.js.map +1 -1
  110. package/dist/tests/units/modules/ember-chat/gateways/emberAnswerTransport.claude.gateway.test.d.ts +2 -0
  111. package/dist/tests/units/modules/ember-chat/gateways/emberAnswerTransport.claude.gateway.test.d.ts.map +1 -0
  112. package/dist/tests/units/modules/ember-chat/gateways/emberAnswerTransport.claude.gateway.test.js +171 -0
  113. package/dist/tests/units/modules/ember-chat/gateways/emberAnswerTransport.claude.gateway.test.js.map +1 -0
  114. package/dist/tests/units/modules/platform-integration/controllers/githubProcessorProvenance.test.d.ts +2 -0
  115. package/dist/tests/units/modules/platform-integration/controllers/githubProcessorProvenance.test.d.ts.map +1 -0
  116. package/dist/tests/units/modules/platform-integration/controllers/githubProcessorProvenance.test.js +70 -0
  117. package/dist/tests/units/modules/platform-integration/controllers/githubProcessorProvenance.test.js.map +1 -0
  118. package/dist/tests/units/modules/platform-integration/entities/transport/cidr.test.d.ts +2 -0
  119. package/dist/tests/units/modules/platform-integration/entities/transport/cidr.test.d.ts.map +1 -0
  120. package/dist/tests/units/modules/platform-integration/entities/transport/cidr.test.js +51 -0
  121. package/dist/tests/units/modules/platform-integration/entities/transport/cidr.test.js.map +1 -0
  122. package/dist/tests/units/modules/platform-integration/gateways/scopedGitLabExecutor.test.js +4 -0
  123. package/dist/tests/units/modules/platform-integration/gateways/scopedGitLabExecutor.test.js.map +1 -1
  124. package/dist/tests/units/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.cli.shellSafety.test.d.ts +2 -0
  125. package/dist/tests/units/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.cli.shellSafety.test.d.ts.map +1 -0
  126. package/dist/tests/units/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.cli.shellSafety.test.js +39 -0
  127. package/dist/tests/units/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.cli.shellSafety.test.js.map +1 -0
  128. package/dist/tests/units/modules/platform-integration/services/scopedExecutorEnvironment.test.js +15 -2
  129. package/dist/tests/units/modules/platform-integration/services/scopedExecutorEnvironment.test.js.map +1 -1
  130. package/dist/tests/units/modules/review-execution/entities/reviewRequest/reviewRequest.guard.test.d.ts +2 -0
  131. package/dist/tests/units/modules/review-execution/entities/reviewRequest/reviewRequest.guard.test.d.ts.map +1 -0
  132. package/dist/tests/units/modules/review-execution/entities/reviewRequest/reviewRequest.guard.test.js +34 -0
  133. package/dist/tests/units/modules/review-execution/entities/reviewRequest/reviewRequest.guard.test.js.map +1 -0
  134. package/dist/tests/units/modules/review-execution/interface-adapters/controllers/http/pendingReviews.routes.test.js +21 -2
  135. package/dist/tests/units/modules/review-execution/interface-adapters/controllers/http/pendingReviews.routes.test.js.map +1 -1
  136. package/dist/tests/units/modules/review-execution/interface-adapters/controllers/http/reviews.routes.test.d.ts +2 -0
  137. package/dist/tests/units/modules/review-execution/interface-adapters/controllers/http/reviews.routes.test.d.ts.map +1 -0
  138. package/dist/tests/units/modules/review-execution/interface-adapters/controllers/http/reviews.routes.test.js +210 -0
  139. package/dist/tests/units/modules/review-execution/interface-adapters/controllers/http/reviews.routes.test.js.map +1 -0
  140. package/dist/tests/units/modules/review-execution/interface-adapters/gateways/fileSystem/reviewFile.fileSystem.test.d.ts +2 -0
  141. package/dist/tests/units/modules/review-execution/interface-adapters/gateways/fileSystem/reviewFile.fileSystem.test.d.ts.map +1 -0
  142. package/dist/tests/units/modules/review-execution/interface-adapters/gateways/fileSystem/reviewFile.fileSystem.test.js +103 -0
  143. package/dist/tests/units/modules/review-execution/interface-adapters/gateways/fileSystem/reviewFile.fileSystem.test.js.map +1 -0
  144. package/dist/tests/units/modules/review-execution/usecases/confirmPendingReview.usecase.test.js +25 -0
  145. package/dist/tests/units/modules/review-execution/usecases/confirmPendingReview.usecase.test.js.map +1 -1
  146. package/dist/tests/units/modules/review-execution/usecases/gateClaudeInvocation.usecase.test.js +34 -7
  147. package/dist/tests/units/modules/review-execution/usecases/gateClaudeInvocation.usecase.test.js.map +1 -1
  148. package/dist/tests/units/modules/setup-wizard/gateways/serverConfig.fileSystem.gateway.test.d.ts +2 -0
  149. package/dist/tests/units/modules/setup-wizard/gateways/serverConfig.fileSystem.gateway.test.d.ts.map +1 -0
  150. package/dist/tests/units/modules/setup-wizard/gateways/serverConfig.fileSystem.gateway.test.js +98 -0
  151. package/dist/tests/units/modules/setup-wizard/gateways/serverConfig.fileSystem.gateway.test.js.map +1 -0
  152. package/dist/tests/units/modules/setup-wizard/interface-adapters/controllers/http/setupWizard.routes.test.js +12 -0
  153. package/dist/tests/units/modules/setup-wizard/interface-adapters/controllers/http/setupWizard.routes.test.js.map +1 -1
  154. package/dist/tests/units/modules/setup-wizard/interface-adapters/gateways/skillTemplate.fileSystem.gateway.test.d.ts +2 -0
  155. package/dist/tests/units/modules/setup-wizard/interface-adapters/gateways/skillTemplate.fileSystem.gateway.test.d.ts.map +1 -0
  156. package/dist/tests/units/modules/setup-wizard/interface-adapters/gateways/skillTemplate.fileSystem.gateway.test.js +51 -0
  157. package/dist/tests/units/modules/setup-wizard/interface-adapters/gateways/skillTemplate.fileSystem.gateway.test.js.map +1 -0
  158. package/dist/tests/units/modules/setup-wizard/interface-adapters/gateways/validation.adapter.gateway.test.d.ts +2 -0
  159. package/dist/tests/units/modules/setup-wizard/interface-adapters/gateways/validation.adapter.gateway.test.d.ts.map +1 -0
  160. package/dist/tests/units/modules/setup-wizard/interface-adapters/gateways/validation.adapter.gateway.test.js +70 -0
  161. package/dist/tests/units/modules/setup-wizard/interface-adapters/gateways/validation.adapter.gateway.test.js.map +1 -0
  162. package/dist/tests/units/modules/setup-wizard/usecases/streamSetupRun.usecase.test.js +60 -1
  163. package/dist/tests/units/modules/setup-wizard/usecases/streamSetupRun.usecase.test.js.map +1 -1
  164. package/dist/tests/units/modules/shared-kernel/entities/triggerMode/triggerMode.schema.test.d.ts +2 -0
  165. package/dist/tests/units/modules/shared-kernel/entities/triggerMode/triggerMode.schema.test.d.ts.map +1 -0
  166. package/dist/tests/units/modules/shared-kernel/entities/triggerMode/triggerMode.schema.test.js +14 -0
  167. package/dist/tests/units/modules/shared-kernel/entities/triggerMode/triggerMode.schema.test.js.map +1 -0
  168. package/dist/tests/units/modules/statistics-insights/entities/insight/developerInsight.guard.test.d.ts +2 -0
  169. package/dist/tests/units/modules/statistics-insights/entities/insight/developerInsight.guard.test.d.ts.map +1 -0
  170. package/dist/tests/units/modules/statistics-insights/entities/insight/developerInsight.guard.test.js +49 -0
  171. package/dist/tests/units/modules/statistics-insights/entities/insight/developerInsight.guard.test.js.map +1 -0
  172. package/dist/tests/units/modules/statistics-insights/entities/insight/persistedInsightsData.guard.test.d.ts +2 -0
  173. package/dist/tests/units/modules/statistics-insights/entities/insight/persistedInsightsData.guard.test.d.ts.map +1 -0
  174. package/dist/tests/units/modules/statistics-insights/entities/insight/persistedInsightsData.guard.test.js +29 -0
  175. package/dist/tests/units/modules/statistics-insights/entities/insight/persistedInsightsData.guard.test.js.map +1 -0
  176. package/dist/tests/units/modules/statistics-insights/gateways/aiInsightsSession.claude.gateway.test.d.ts +2 -0
  177. package/dist/tests/units/modules/statistics-insights/gateways/aiInsightsSession.claude.gateway.test.d.ts.map +1 -0
  178. package/dist/tests/units/modules/statistics-insights/gateways/aiInsightsSession.claude.gateway.test.js +63 -0
  179. package/dist/tests/units/modules/statistics-insights/gateways/aiInsightsSession.claude.gateway.test.js.map +1 -0
  180. package/dist/tests/units/modules/statistics-insights/gateways/stats.fileSystem.test.d.ts +2 -0
  181. package/dist/tests/units/modules/statistics-insights/gateways/stats.fileSystem.test.d.ts.map +1 -0
  182. package/dist/tests/units/modules/statistics-insights/gateways/stats.fileSystem.test.js +73 -0
  183. package/dist/tests/units/modules/statistics-insights/gateways/stats.fileSystem.test.js.map +1 -0
  184. package/dist/tests/units/modules/statistics-insights/interface-adapters/presenters/overview.presenter.test.js +99 -0
  185. package/dist/tests/units/modules/statistics-insights/interface-adapters/presenters/overview.presenter.test.js.map +1 -1
  186. package/dist/tests/units/modules/supervisor-management/gateways/supervisorLock.fileSystem.gateway.test.js +60 -2
  187. package/dist/tests/units/modules/supervisor-management/gateways/supervisorLock.fileSystem.gateway.test.js.map +1 -1
  188. package/dist/tests/units/modules/tracking/interface-adapters/controllers/http/mrTrackingAdvanced.routes.test.js +499 -18
  189. package/dist/tests/units/modules/tracking/interface-adapters/controllers/http/mrTrackingAdvanced.routes.test.js.map +1 -1
  190. package/dist/tests/units/modules/tracking/interface-adapters/gateways/fileSystem/reviewRequestTracking.fileSystem.test.d.ts +2 -0
  191. package/dist/tests/units/modules/tracking/interface-adapters/gateways/fileSystem/reviewRequestTracking.fileSystem.test.d.ts.map +1 -0
  192. package/dist/tests/units/modules/tracking/interface-adapters/gateways/fileSystem/reviewRequestTracking.fileSystem.test.js +273 -0
  193. package/dist/tests/units/modules/tracking/interface-adapters/gateways/fileSystem/reviewRequestTracking.fileSystem.test.js.map +1 -0
  194. package/dist/tests/units/modules/worktree-management/entities/worktree/worktree.test.js +47 -1
  195. package/dist/tests/units/modules/worktree-management/entities/worktree/worktree.test.js.map +1 -1
  196. package/dist/tests/units/modules/worktree-management/usecases/sweepStaleWorktrees.usecase.test.js +98 -0
  197. package/dist/tests/units/modules/worktree-management/usecases/sweepStaleWorktrees.usecase.test.js.map +1 -1
  198. package/dist/tests/units/services/contextActionsExecutor.test.js +67 -0
  199. package/dist/tests/units/services/contextActionsExecutor.test.js.map +1 -1
  200. package/dist/tests/units/services/statsService.branches.test.d.ts +2 -0
  201. package/dist/tests/units/services/statsService.branches.test.d.ts.map +1 -0
  202. package/dist/tests/units/services/statsService.branches.test.js +266 -0
  203. package/dist/tests/units/services/statsService.branches.test.js.map +1 -0
  204. package/dist/tests/units/shared/services/logFileReader.test.d.ts +2 -0
  205. package/dist/tests/units/shared/services/logFileReader.test.d.ts.map +1 -0
  206. package/dist/tests/units/shared/services/logFileReader.test.js +70 -0
  207. package/dist/tests/units/shared/services/logFileReader.test.js.map +1 -0
  208. package/dist/tests/units/usecases/insights/buildAiInsightsPrompt.test.js +206 -0
  209. package/dist/tests/units/usecases/insights/buildAiInsightsPrompt.test.js.map +1 -1
  210. package/dist/tests/units/usecases/insights/computeDeveloperInsights.usecase.test.js +40 -0
  211. package/dist/tests/units/usecases/insights/computeDeveloperInsights.usecase.test.js.map +1 -1
  212. package/dist/tests/units/usecases/insights/computeInsightsWithPersistence.usecase.test.js +204 -0
  213. package/dist/tests/units/usecases/insights/computeInsightsWithPersistence.usecase.test.js.map +1 -1
  214. package/dist/tests/units/usecases/insights/getInsightsWithAiStatus.usecase.test.js +57 -0
  215. package/dist/tests/units/usecases/insights/getInsightsWithAiStatus.usecase.test.js.map +1 -1
  216. package/dist/tests/units/usecases/insights/insightLevelComputation.service.test.js +391 -1
  217. package/dist/tests/units/usecases/insights/insightLevelComputation.service.test.js.map +1 -1
  218. package/package.json +4 -1
@@ -6,6 +6,7 @@ import { invokeClaudeReview, sendNotification } from '../../../../../claude/invo
6
6
  import { parseReviewOutput } from '../../../../../modules/statistics-insights/services/statsService.js';
7
7
  import { parseThreadActions } from '../../../../../modules/review-execution/services/threadActionsParser.js';
8
8
  import { executeThreadActions, defaultCommandExecutor } from '../../../../../modules/review-execution/services/threadActionsExecutor.js';
9
+ import { executeActionsFromContext } from '../../../../../modules/review-execution/services/contextActionsExecutor.js';
9
10
  import { startWatchingReviewContext, stopWatchingReviewContext } from '../../../../../main/websocket.js';
10
11
  function validateProjectPath(path) {
11
12
  if (!path) {
@@ -146,13 +147,20 @@ export const mrTrackingAdvancedRoutes = async (fastify, opts) => {
146
147
  const reviewContext = contextGateway.read(job.localPath, mrId);
147
148
  const mcpActions = reviewContext?.actions ?? [];
148
149
  const markerActions = parseThreadActions(result.stdout);
149
- // Combine actions (MCP takes priority, markers as fallback)
150
- const threadActions = mcpActions.length > 0 ? mcpActions : markerActions;
151
150
  let threadResolveCount = 0;
152
- if (threadActions.length > 0) {
153
- threadResolveCount = threadActions.filter(a => a.type === 'THREAD_RESOLVE').length;
154
- logger.info({ mcpActionsCount: mcpActions.length, markerActionsCount: markerActions.length, mrNumber: job.mrNumber }, 'Executing thread actions');
155
- const actionResult = await executeThreadActions(threadActions, {
151
+ if (reviewContext && mcpActions.length > 0) {
152
+ // Primary path: MCP actions execute against the authenticated context inventory,
153
+ // which re-admits THREAD_RESOLVE for threads owned by this MR (forged ids stay dropped).
154
+ threadResolveCount = mcpActions.filter(a => a.type === 'THREAD_RESOLVE').length;
155
+ logger.info({ mcpActionsCount: mcpActions.length, mrNumber: job.mrNumber }, 'Executing thread actions');
156
+ const actionResult = await executeActionsFromContext(reviewContext, job.localPath, logger, defaultCommandExecutor);
157
+ logger.info({ ...actionResult, threadResolveCount, mrNumber: job.mrNumber }, 'Thread actions executed for manual followup');
158
+ }
159
+ else if (markerActions.length > 0) {
160
+ // Legacy fallback: stdout markers carry no authenticated inventory, so resolves stay dropped.
161
+ threadResolveCount = markerActions.filter(a => a.type === 'THREAD_RESOLVE').length;
162
+ logger.info({ markerActionsCount: markerActions.length, mrNumber: job.mrNumber }, 'Executing thread actions');
163
+ const actionResult = await executeThreadActions(markerActions, {
156
164
  platform: job.platform,
157
165
  projectPath: job.projectPath,
158
166
  mrNumber: job.mrNumber,
@@ -1 +1 @@
1
- {"version":3,"file":"mrTrackingAdvanced.routes.js","sourceRoot":"","sources":["../../../../../../src/modules/tracking/interface-adapters/controllers/http/mrTrackingAdvanced.routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mrTrackingAdvanced.routes.js","sourceRoot":"","sources":["../../../../../../src/modules/tracking/interface-adapters/controllers/http/mrTrackingAdvanced.routes.ts"],"names":[],"mappings":"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"}
@@ -52,7 +52,7 @@ describe('Acceptance — SPEC-174: Semi-automatic review trigger mode', () => {
52
52
  describe('Rule: semi-auto initial review parks the job instead of invoking Claude', () => {
53
53
  it('produces a persisted pending review and never invokes Claude', async () => {
54
54
  const useCase = new GateClaudeInvocationUseCase({
55
- triggerMode: 'semi-auto',
55
+ getTriggerMode: () => 'semi-auto',
56
56
  pendingReviewRequestGateway: gateway,
57
57
  enqueue: fakeEnqueue,
58
58
  broadcastPendingChanged: () => { },
@@ -78,7 +78,7 @@ describe('Acceptance — SPEC-174: Semi-automatic review trigger mode', () => {
78
78
  describe('Rule: confirming a pending job invokes Claude exactly once', () => {
79
79
  it('confirms then enqueues + invokes Claude + deletes the pending file', async () => {
80
80
  const gateUseCase = new GateClaudeInvocationUseCase({
81
- triggerMode: 'semi-auto',
81
+ getTriggerMode: () => 'semi-auto',
82
82
  pendingReviewRequestGateway: gateway,
83
83
  enqueue: fakeEnqueue,
84
84
  broadcastPendingChanged: () => { },
@@ -97,6 +97,7 @@ describe('Acceptance — SPEC-174: Semi-automatic review trigger mode', () => {
97
97
  queuePort: { hasActiveJob: (id) => activeJobIds.has(id), getJobStatus: () => null },
98
98
  enqueue: fakeEnqueue,
99
99
  resolveProcessor: () => fakeProcessor,
100
+ isProjectRunnable: () => true,
100
101
  logger,
101
102
  });
102
103
  const confirmResult = await confirmUseCase.execute({ pendingId });
@@ -111,7 +112,7 @@ describe('Acceptance — SPEC-174: Semi-automatic review trigger mode', () => {
111
112
  describe('Rule: dismissing a pending job removes it without invoking Claude', () => {
112
113
  it('dismisses then deletes the pending file and never invokes Claude', async () => {
113
114
  const gateUseCase = new GateClaudeInvocationUseCase({
114
- triggerMode: 'semi-auto',
115
+ getTriggerMode: () => 'semi-auto',
115
116
  pendingReviewRequestGateway: gateway,
116
117
  enqueue: fakeEnqueue,
117
118
  broadcastPendingChanged: () => { },
@@ -1 +1 @@
1
- {"version":3,"file":"174-semi-auto-review-trigger-mode.acceptance.test.js","sourceRoot":"","sources":["../../../src/tests/acceptance/174-semi-auto-review-trigger-mode.acceptance.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"174-semi-auto-review-trigger-mode.acceptance.test.js","sourceRoot":"","sources":["../../../src/tests/acceptance/174-semi-auto-review-trigger-mode.acceptance.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=202-confirm-pending-review-runs-review.acceptance.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"202-confirm-pending-review-runs-review.acceptance.test.d.ts","sourceRoot":"","sources":["../../../src/tests/acceptance/202-confirm-pending-review-runs-review.acceptance.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,173 @@
1
+ import { describe, it, expect, beforeEach } from 'vitest';
2
+ import { ConfirmPendingReviewUseCase } from '../../modules/review-execution/usecases/confirmPendingReview.usecase.js';
3
+ import { ProcessorRegistry } from '../../modules/review-execution/services/processorRegistry.js';
4
+ import { StubPendingReviewRequestGateway } from '../../tests/stubs/pendingReviewRequest.stub.js';
5
+ import { PendingReviewRequestFactory } from '../../tests/factories/pendingReviewRequest.factory.js';
6
+ import { createStubLogger } from '../../tests/stubs/logger.stub.js';
7
+ class AcceptanceWorld {
8
+ gateway = new StubPendingReviewRequestGateway();
9
+ registry = new ProcessorRegistry();
10
+ activeJobs = new Set();
11
+ enqueued = [];
12
+ runs = [];
13
+ configuredProjectPaths = new Set();
14
+ logger = createStubLogger();
15
+ configureProject(projectPath) {
16
+ this.configuredProjectPaths.add(projectPath);
17
+ }
18
+ registerPlatformBuilders(platform) {
19
+ const builder = this.buildRecordingBuilder(platform);
20
+ const triggerSources = [
21
+ 'webhook-initial',
22
+ 'webhook-followup',
23
+ 'dashboard-manual',
24
+ ];
25
+ for (const triggerSource of triggerSources) {
26
+ this.registry.register({ triggerSource, platform, jobType: 'review' }, builder);
27
+ this.registry.register({ triggerSource, platform, jobType: 'followup' }, builder);
28
+ }
29
+ }
30
+ buildRecordingBuilder(platform) {
31
+ return (job) => async (runJob) => {
32
+ if (!this.configuredProjectPaths.has(runJob.projectPath)) {
33
+ throw new Error(`No repository configured for projectPath "${runJob.projectPath}"`);
34
+ }
35
+ const jobType = job.jobType === 'followup' ? 'followup' : 'review';
36
+ this.runs.push({ platform, jobType, jobId: runJob.id });
37
+ };
38
+ }
39
+ makeUseCase() {
40
+ return new ConfirmPendingReviewUseCase({
41
+ pendingReviewRequestGateway: this.gateway,
42
+ queuePort: {
43
+ hasActiveJob: (id) => this.activeJobs.has(id),
44
+ getJobStatus: () => null,
45
+ },
46
+ enqueue: async (job, processor) => {
47
+ this.enqueued.push(job);
48
+ this.activeJobs.add(job.id);
49
+ await processor(job, new AbortController().signal);
50
+ return true;
51
+ },
52
+ resolveProcessor: (pending) => this.registry.resolve(pending),
53
+ isProjectRunnable: (pending) => this.configuredProjectPaths.has(pending.job.projectPath),
54
+ logger: this.logger,
55
+ });
56
+ }
57
+ }
58
+ const PLATFORMS = [
59
+ {
60
+ platform: 'gitlab',
61
+ pending: () => PendingReviewRequestFactory.create(),
62
+ },
63
+ {
64
+ platform: 'github',
65
+ pending: () => PendingReviewRequestFactory.github(),
66
+ },
67
+ ];
68
+ describe('Confirm a parked review runs the real review (acceptance, spec-202)', () => {
69
+ let world;
70
+ beforeEach(() => {
71
+ world = new AcceptanceWorld();
72
+ });
73
+ for (const { platform, pending: makePending } of PLATFORMS) {
74
+ describe(`platform: ${platform}`, () => {
75
+ describe('Rule: confirming a parked review runs the full review', () => {
76
+ it('confirmed runs review: enqueues and runs the real processor, leaving the waiting list', async () => {
77
+ const pending = makePending();
78
+ world.configureProject(pending.job.projectPath);
79
+ world.registerPlatformBuilders(platform);
80
+ world.gateway.prepopulate(pending);
81
+ const result = await world
82
+ .makeUseCase()
83
+ .execute({ pendingId: pending.pendingReviewRequestId });
84
+ expect(result.status).toBe('confirmed');
85
+ expect(world.enqueued).toHaveLength(1);
86
+ expect(world.runs).toEqual([
87
+ { platform, jobType: 'review', jobId: pending.job.id },
88
+ ]);
89
+ expect(await world.gateway.listAll()).toHaveLength(0);
90
+ });
91
+ });
92
+ describe('Rule: confirmation works even after a server restart', () => {
93
+ it('survives restart: rebuilds registry and use case from the persisted snapshot only', async () => {
94
+ const persisted = makePending();
95
+ world.gateway.prepopulate(persisted);
96
+ const rebornWorld = new AcceptanceWorld();
97
+ rebornWorld.gateway.prepopulate(persisted);
98
+ rebornWorld.configureProject(persisted.job.projectPath);
99
+ rebornWorld.registerPlatformBuilders(platform);
100
+ const result = await rebornWorld
101
+ .makeUseCase()
102
+ .execute({ pendingId: persisted.pendingReviewRequestId });
103
+ expect(result.status).toBe('confirmed');
104
+ expect(rebornWorld.runs).toEqual([
105
+ { platform, jobType: 'review', jobId: persisted.job.id },
106
+ ]);
107
+ });
108
+ });
109
+ describe('Rule: the kind of run is preserved from the original trigger', () => {
110
+ it('follow-up preserved: a parked follow-up runs a follow-up review', async () => {
111
+ const base = makePending();
112
+ const pending = {
113
+ ...base,
114
+ jobType: 'followup',
115
+ job: { ...base.job, jobType: 'followup' },
116
+ };
117
+ world.configureProject(pending.job.projectPath);
118
+ world.registerPlatformBuilders(platform);
119
+ world.gateway.prepopulate(pending);
120
+ const result = await world
121
+ .makeUseCase()
122
+ .execute({ pendingId: pending.pendingReviewRequestId });
123
+ expect(result.status).toBe('confirmed');
124
+ expect(world.runs).toEqual([
125
+ { platform, jobType: 'followup', jobId: pending.job.id },
126
+ ]);
127
+ });
128
+ });
129
+ describe('Rule: a project no longer configured cannot run', () => {
130
+ it('project no longer available: rejects with the French message and keeps the waiting list', async () => {
131
+ const pending = makePending();
132
+ world.registerPlatformBuilders(platform);
133
+ world.gateway.prepopulate(pending);
134
+ const result = await world
135
+ .makeUseCase()
136
+ .execute({ pendingId: pending.pendingReviewRequestId });
137
+ expect(result.status).toBe('project-not-configured');
138
+ if (result.status === 'project-not-configured') {
139
+ expect(result.message).toBe("Le projet associé n'est plus configuré");
140
+ }
141
+ expect(world.enqueued).toHaveLength(0);
142
+ expect(world.runs).toHaveLength(0);
143
+ expect(await world.gateway.listAll()).toHaveLength(1);
144
+ });
145
+ });
146
+ });
147
+ }
148
+ describe('Rule: a review already queued or running cannot be started again', () => {
149
+ it('already running: rejects with the exact French message and never enqueues', async () => {
150
+ const pending = PendingReviewRequestFactory.create();
151
+ world.configureProject(pending.job.projectPath);
152
+ world.registerPlatformBuilders('gitlab');
153
+ world.gateway.prepopulate(pending);
154
+ world.activeJobs.add(pending.job.id);
155
+ const result = await world
156
+ .makeUseCase()
157
+ .execute({ pendingId: pending.pendingReviewRequestId });
158
+ expect(result.status).toBe('already-running');
159
+ if (result.status === 'already-running') {
160
+ expect(result.message).toBe('Cette review est déjà en cours');
161
+ }
162
+ expect(world.enqueued).toHaveLength(0);
163
+ });
164
+ });
165
+ describe('Rule: a parked review that no longer exists cannot be confirmed', () => {
166
+ it('unknown request: rejects with not-found', async () => {
167
+ world.registerPlatformBuilders('gitlab');
168
+ const result = await world.makeUseCase().execute({ pendingId: 'does-not-exist' });
169
+ expect(result.status).toBe('not-found');
170
+ });
171
+ });
172
+ });
173
+ //# sourceMappingURL=202-confirm-pending-review-runs-review.acceptance.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"202-confirm-pending-review-runs-review.acceptance.test.js","sourceRoot":"","sources":["../../../src/tests/acceptance/202-confirm-pending-review-runs-review.acceptance.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { PendingReviewRequest } from '../../modules/review-execution/entities/pendingReviewRequest/pendingReviewRequest.schema.js';
2
2
  export declare const PendingReviewRequestFactory: {
3
3
  create(overrides?: Partial<PendingReviewRequest>): PendingReviewRequest;
4
+ github(overrides?: Partial<PendingReviewRequest>): PendingReviewRequest;
4
5
  };
5
6
  //# sourceMappingURL=pendingReviewRequest.factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pendingReviewRequest.factory.d.ts","sourceRoot":"","sources":["../../../src/tests/factories/pendingReviewRequest.factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yFAAyF,CAAC;AAEpI,eAAO,MAAM,2BAA2B;uBACpB,OAAO,CAAC,oBAAoB,CAAC,GAAQ,oBAAoB;CAsB5E,CAAC"}
1
+ {"version":3,"file":"pendingReviewRequest.factory.d.ts","sourceRoot":"","sources":["../../../src/tests/factories/pendingReviewRequest.factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yFAAyF,CAAC;AAEpI,eAAO,MAAM,2BAA2B;uBACpB,OAAO,CAAC,oBAAoB,CAAC,GAAQ,oBAAoB;uBAuBzD,OAAO,CAAC,oBAAoB,CAAC,GAAQ,oBAAoB;CAsB5E,CAAC"}
@@ -21,5 +21,27 @@ export const PendingReviewRequestFactory = {
21
21
  ...overrides,
22
22
  };
23
23
  },
24
+ github(overrides = {}) {
25
+ return {
26
+ pendingReviewRequestId: 'pending-github-owner-repo-7',
27
+ job: {
28
+ id: 'github:owner/repo:7',
29
+ platform: 'github',
30
+ projectPath: 'owner/repo',
31
+ localPath: '/home/user/projects/github-test',
32
+ mrNumber: 7,
33
+ skill: 'review-code',
34
+ mrUrl: 'https://github.com/owner/repo/pull/7',
35
+ sourceBranch: 'feature/y',
36
+ targetBranch: 'main',
37
+ jobType: 'review',
38
+ },
39
+ jobType: 'review',
40
+ platform: 'github',
41
+ triggerSource: 'webhook-initial',
42
+ createdAt: '2026-05-23T10:00:00.000Z',
43
+ ...overrides,
44
+ };
45
+ },
24
46
  };
25
47
  //# sourceMappingURL=pendingReviewRequest.factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pendingReviewRequest.factory.js","sourceRoot":"","sources":["../../../src/tests/factories/pendingReviewRequest.factory.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,MAAM,CAAC,YAA2C,EAAE;QAClD,OAAO;YACL,sBAAsB,EAAE,iCAAiC;YACzD,GAAG,EAAE;gBACH,EAAE,EAAE,yBAAyB;gBAC7B,QAAQ,EAAE,QAAQ;gBAClB,WAAW,EAAE,eAAe;gBAC5B,SAAS,EAAE,0BAA0B;gBACrC,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,aAAa;gBACpB,KAAK,EAAE,8DAA8D;gBACrE,YAAY,EAAE,WAAW;gBACzB,YAAY,EAAE,MAAM;gBACpB,OAAO,EAAE,QAAQ;aAClB;YACD,OAAO,EAAE,QAAQ;YACjB,QAAQ,EAAE,QAAQ;YAClB,aAAa,EAAE,iBAAiB;YAChC,SAAS,EAAE,0BAA0B;YACrC,GAAG,SAAS;SACb,CAAC;IACJ,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"pendingReviewRequest.factory.js","sourceRoot":"","sources":["../../../src/tests/factories/pendingReviewRequest.factory.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,MAAM,CAAC,YAA2C,EAAE;QAClD,OAAO;YACL,sBAAsB,EAAE,iCAAiC;YACzD,GAAG,EAAE;gBACH,EAAE,EAAE,yBAAyB;gBAC7B,QAAQ,EAAE,QAAQ;gBAClB,WAAW,EAAE,eAAe;gBAC5B,SAAS,EAAE,0BAA0B;gBACrC,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,aAAa;gBACpB,KAAK,EAAE,8DAA8D;gBACrE,YAAY,EAAE,WAAW;gBACzB,YAAY,EAAE,MAAM;gBACpB,OAAO,EAAE,QAAQ;aAClB;YACD,OAAO,EAAE,QAAQ;YACjB,QAAQ,EAAE,QAAQ;YAClB,aAAa,EAAE,iBAAiB;YAChC,SAAS,EAAE,0BAA0B;YACrC,GAAG,SAAS;SACb,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,YAA2C,EAAE;QAClD,OAAO;YACL,sBAAsB,EAAE,6BAA6B;YACrD,GAAG,EAAE;gBACH,EAAE,EAAE,qBAAqB;gBACzB,QAAQ,EAAE,QAAQ;gBAClB,WAAW,EAAE,YAAY;gBACzB,SAAS,EAAE,iCAAiC;gBAC5C,QAAQ,EAAE,CAAC;gBACX,KAAK,EAAE,aAAa;gBACpB,KAAK,EAAE,sCAAsC;gBAC7C,YAAY,EAAE,WAAW;gBACzB,YAAY,EAAE,MAAM;gBACpB,OAAO,EAAE,QAAQ;aAClB;YACD,OAAO,EAAE,QAAQ;YACjB,QAAQ,EAAE,QAAQ;YAClB,aAAa,EAAE,iBAAiB;YAChC,SAAS,EAAE,0BAA0B;YACrC,GAAG,SAAS;SACb,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -15,10 +15,18 @@ export declare class StubClaudeSessionGateway implements ClaudeSessionGateway {
15
15
  private usageValue;
16
16
  private scheduledAgentStatuses;
17
17
  private sessionUsageResult;
18
+ private stopResult;
19
+ private removeResult;
20
+ private stopError;
21
+ private removeError;
18
22
  setDispatchResult(result: DispatchResult): void;
19
23
  setDaemonStatus(status: DaemonStatus): void;
20
24
  setUsage(report: UsageReport): void;
21
25
  setSessionUsage(value: SessionUsageSnapshot | null): void;
26
+ setStopResult(result: CleanupResult): void;
27
+ setRemoveResult(result: CleanupResult): void;
28
+ setStopError(error: unknown): void;
29
+ setRemoveError(error: unknown): void;
22
30
  scheduleAgentCompletion(sessionIdValue: string, status: AgentStatusValue, afterPollCount: number): void;
23
31
  dispatch(input: DispatchInput): Promise<DispatchResult>;
24
32
  stop(sessionId: SessionId): Promise<CleanupResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"claudeSession.stub.d.ts","sourceRoot":"","sources":["../../../src/tests/stubs/claudeSession.stub.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,YAAY,EACZ,aAAa,EACb,cAAc,EACd,WAAW,EACZ,MAAM,6EAA6E,CAAC;AACrF,OAAO,EAEL,KAAK,SAAS,EACf,MAAM,4EAA4E,CAAC;AACpF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2EAA2E,CAAC;AAQtH,qBAAa,wBAAyB,YAAW,oBAAoB;IACnE,aAAa,EAAE,aAAa,EAAE,CAAM;IACpC,SAAS,EAAE,MAAM,EAAE,CAAM;IACzB,WAAW,EAAE,MAAM,EAAE,CAAM;IAC3B,mBAAmB,SAAK;IACxB,oBAAoB,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,SAAS,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAM;IAExE,OAAO,CAAC,cAAc,CAGpB;IACF,OAAO,CAAC,iBAAiB,CAAmD;IAC5E,OAAO,CAAC,UAAU,CAAiE;IACnF,OAAO,CAAC,sBAAsB,CAA8B;IAC5D,OAAO,CAAC,kBAAkB,CAAqC;IAE/D,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IAI/C,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAI3C,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAInC,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI;IAIzD,uBAAuB,CACrB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,gBAAgB,EACxB,cAAc,EAAE,MAAM,GACrB,IAAI;IAQD,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAKvD,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC;IAKlD,MAAM,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC;IAKpD,UAAU,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAOzC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC;IAIrC,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC;IAI7B,eAAe,CACnB,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;CAIxC"}
1
+ {"version":3,"file":"claudeSession.stub.d.ts","sourceRoot":"","sources":["../../../src/tests/stubs/claudeSession.stub.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,YAAY,EACZ,aAAa,EACb,cAAc,EACd,WAAW,EACZ,MAAM,6EAA6E,CAAC;AACrF,OAAO,EAEL,KAAK,SAAS,EACf,MAAM,4EAA4E,CAAC;AACpF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2EAA2E,CAAC;AAQtH,qBAAa,wBAAyB,YAAW,oBAAoB;IACnE,aAAa,EAAE,aAAa,EAAE,CAAM;IACpC,SAAS,EAAE,MAAM,EAAE,CAAM;IACzB,WAAW,EAAE,MAAM,EAAE,CAAM;IAC3B,mBAAmB,SAAK;IACxB,oBAAoB,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,SAAS,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAM;IAExE,OAAO,CAAC,cAAc,CAGpB;IACF,OAAO,CAAC,iBAAiB,CAAmD;IAC5E,OAAO,CAAC,UAAU,CAAiE;IACnF,OAAO,CAAC,sBAAsB,CAA8B;IAC5D,OAAO,CAAC,kBAAkB,CAAqC;IAC/D,OAAO,CAAC,UAAU,CAAmD;IACrE,OAAO,CAAC,YAAY,CAAmD;IACvE,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,WAAW,CAAiB;IAEpC,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IAI/C,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAI3C,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAInC,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI;IAIzD,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAI1C,eAAe,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAI5C,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAIlC,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAIpC,uBAAuB,CACrB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,gBAAgB,EACxB,cAAc,EAAE,MAAM,GACrB,IAAI;IAQD,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAKvD,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC;IAQlD,MAAM,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC;IAQpD,UAAU,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAOzC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC;IAIrC,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC;IAI7B,eAAe,CACnB,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;CAIxC"}
@@ -13,6 +13,10 @@ export class StubClaudeSessionGateway {
13
13
  usageValue = { usesApiPool: false, raw: 'subscription pool' };
14
14
  scheduledAgentStatuses = [];
15
15
  sessionUsageResult = null;
16
+ stopResult = { success: true, warning: null };
17
+ removeResult = { success: true, warning: null };
18
+ stopError = null;
19
+ removeError = null;
16
20
  setDispatchResult(result) {
17
21
  this.dispatchResult = result;
18
22
  }
@@ -25,6 +29,18 @@ export class StubClaudeSessionGateway {
25
29
  setSessionUsage(value) {
26
30
  this.sessionUsageResult = value;
27
31
  }
32
+ setStopResult(result) {
33
+ this.stopResult = result;
34
+ }
35
+ setRemoveResult(result) {
36
+ this.removeResult = result;
37
+ }
38
+ setStopError(error) {
39
+ this.stopError = error;
40
+ }
41
+ setRemoveError(error) {
42
+ this.removeError = error;
43
+ }
28
44
  scheduleAgentCompletion(sessionIdValue, status, afterPollCount) {
29
45
  this.scheduledAgentStatuses.push({
30
46
  sessionId: parseSessionId(sessionIdValue),
@@ -38,11 +54,17 @@ export class StubClaudeSessionGateway {
38
54
  }
39
55
  async stop(sessionId) {
40
56
  this.stopCalls.push(sessionId);
41
- return { success: true, warning: null };
57
+ if (this.stopError !== null) {
58
+ throw this.stopError;
59
+ }
60
+ return this.stopResult;
42
61
  }
43
62
  async remove(sessionId) {
44
63
  this.removeCalls.push(sessionId);
45
- return { success: true, warning: null };
64
+ if (this.removeError !== null) {
65
+ throw this.removeError;
66
+ }
67
+ return this.removeResult;
46
68
  }
47
69
  async listAgents() {
48
70
  this.listAgentsCallCount += 1;
@@ -1 +1 @@
1
- {"version":3,"file":"claudeSession.stub.js","sourceRoot":"","sources":["../../../src/tests/stubs/claudeSession.stub.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,cAAc,GAEf,MAAM,4EAA4E,CAAC;AASpF,MAAM,OAAO,wBAAwB;IACnC,aAAa,GAAoB,EAAE,CAAC;IACpC,SAAS,GAAa,EAAE,CAAC;IACzB,WAAW,GAAa,EAAE,CAAC;IAC3B,mBAAmB,GAAG,CAAC,CAAC;IACxB,oBAAoB,GAAiD,EAAE,CAAC;IAEhE,cAAc,GAAmB;QACvC,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,cAAc,CAAC,cAAc,CAAC;KAC1C,CAAC;IACM,iBAAiB,GAAiB,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACpE,UAAU,GAAgB,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC;IAC3E,sBAAsB,GAA2B,EAAE,CAAC;IACpD,kBAAkB,GAAgC,IAAI,CAAC;IAE/D,iBAAiB,CAAC,MAAsB;QACtC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;IAC/B,CAAC;IAED,eAAe,CAAC,MAAoB;QAClC,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC;IAClC,CAAC;IAED,QAAQ,CAAC,MAAmB;QAC1B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;IAC3B,CAAC;IAED,eAAe,CAAC,KAAkC;QAChD,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;IAClC,CAAC;IAED,uBAAuB,CACrB,cAAsB,EACtB,MAAwB,EACxB,cAAsB;QAEtB,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC;YAC/B,SAAS,EAAE,cAAc,CAAC,cAAc,CAAC;YACzC,MAAM;YACN,cAAc;SACf,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAoB;QACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,SAAoB;QAC7B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAoB;QAC/B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,mBAAmB,IAAI,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC,sBAAsB;aAC/B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,IAAI,IAAI,CAAC,mBAAmB,CAAC;aACjE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,SAAoB,EACpB,GAAW;QAEX,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;CACF"}
1
+ {"version":3,"file":"claudeSession.stub.js","sourceRoot":"","sources":["../../../src/tests/stubs/claudeSession.stub.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=teamInsight.guard.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"teamInsight.guard.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/units/entities/insight/teamInsight.guard.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,45 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { parseTeamInsight, safeParseTeamInsight, isValidTeamInsight, } from '../../../../modules/statistics-insights/entities/insight/teamInsight.guard.js';
3
+ import { TeamInsightFactory } from '../../../../tests/factories/teamInsight.factory.js';
4
+ describe('TeamInsight guard', () => {
5
+ describe('parseTeamInsight', () => {
6
+ it('should return the typed insight for a valid object', () => {
7
+ const valid = TeamInsightFactory.createValid();
8
+ const result = parseTeamInsight(valid);
9
+ expect(result.developerCount).toBe(3);
10
+ expect(result.averageLevels.quality).toBe(6);
11
+ expect(result.strengths).toEqual(['codeVolume']);
12
+ });
13
+ it('should throw with the instigator label for an invalid object', () => {
14
+ expect(() => parseTeamInsight({ developerCount: -1 })).toThrow(/teamInsight/);
15
+ });
16
+ });
17
+ describe('safeParseTeamInsight', () => {
18
+ it('should succeed for a valid object', () => {
19
+ const valid = TeamInsightFactory.createValid();
20
+ const result = safeParseTeamInsight(valid);
21
+ expect(result.success).toBe(true);
22
+ });
23
+ it('should fail when averageLevels is out of bounds', () => {
24
+ const invalid = TeamInsightFactory.create({
25
+ averageLevels: { quality: 11, responsiveness: 5, codeVolume: 7, iteration: 5 },
26
+ });
27
+ const result = safeParseTeamInsight(invalid);
28
+ expect(result.success).toBe(false);
29
+ });
30
+ });
31
+ describe('isValidTeamInsight', () => {
32
+ it('should return true for a valid object', () => {
33
+ const valid = TeamInsightFactory.createValid();
34
+ expect(isValidTeamInsight(valid)).toBe(true);
35
+ });
36
+ it('should return false for an unknown strength category', () => {
37
+ const invalid = TeamInsightFactory.create({ strengths: ['unknownCategory'] });
38
+ expect(isValidTeamInsight(invalid)).toBe(false);
39
+ });
40
+ it('should return false for a non-object input', () => {
41
+ expect(isValidTeamInsight(null)).toBe(false);
42
+ });
43
+ });
44
+ });
45
+ //# sourceMappingURL=teamInsight.guard.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"teamInsight.guard.test.js","sourceRoot":"","sources":["../../../../../src/tests/units/entities/insight/teamInsight.guard.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,qEAAqE,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAE9E,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAC5D,MAAM,KAAK,GAAG,kBAAkB,CAAC,WAAW,EAAE,CAAC;YAE/C,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAEvC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;YACtE,MAAM,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACpC,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,MAAM,KAAK,GAAG,kBAAkB,CAAC,WAAW,EAAE,CAAC;YAE/C,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAE3C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC;gBACxC,aAAa,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;aAC/E,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;YAE7C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAClC,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,MAAM,KAAK,GAAG,kBAAkB,CAAC,WAAW,EAAE,CAAC;YAE/C,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;YAE9E,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}