reviewflow 3.21.0 → 3.23.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 (254) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +44 -1
  3. package/dist/config/projectConfig.d.ts +1 -0
  4. package/dist/config/projectConfig.d.ts.map +1 -1
  5. package/dist/config/projectConfig.js +13 -0
  6. package/dist/config/projectConfig.js.map +1 -1
  7. package/dist/dashboard/index.html +258 -44
  8. package/dist/dashboard/modules/animations.d.ts +164 -0
  9. package/dist/dashboard/modules/animations.d.ts.map +1 -0
  10. package/dist/dashboard/modules/animations.js +405 -0
  11. package/dist/dashboard/modules/animations.js.map +1 -0
  12. package/dist/dashboard/modules/cardCounters.d.ts +16 -1
  13. package/dist/dashboard/modules/cardCounters.d.ts.map +1 -1
  14. package/dist/dashboard/modules/cardCounters.js +36 -2
  15. package/dist/dashboard/modules/cardCounters.js.map +1 -1
  16. package/dist/dashboard/modules/i18n.d.ts.map +1 -1
  17. package/dist/dashboard/modules/i18n.js +20 -2
  18. package/dist/dashboard/modules/i18n.js.map +1 -1
  19. package/dist/dashboard/modules/settingsModal.d.ts.map +1 -1
  20. package/dist/dashboard/modules/settingsModal.js +28 -8
  21. package/dist/dashboard/modules/settingsModal.js.map +1 -1
  22. package/dist/dashboard/styles.css +731 -372
  23. package/dist/main/routes.d.ts.map +1 -1
  24. package/dist/main/routes.js +20 -0
  25. package/dist/main/routes.js.map +1 -1
  26. package/dist/main/server.d.ts.map +1 -1
  27. package/dist/main/server.js +22 -0
  28. package/dist/main/server.js.map +1 -1
  29. package/dist/modules/claude-invocation/interface-adapters/gateways/reviewReport.fileSystem.gateway.d.ts +1 -0
  30. package/dist/modules/claude-invocation/interface-adapters/gateways/reviewReport.fileSystem.gateway.d.ts.map +1 -1
  31. package/dist/modules/claude-invocation/interface-adapters/gateways/reviewReport.fileSystem.gateway.js +26 -5
  32. package/dist/modules/claude-invocation/interface-adapters/gateways/reviewReport.fileSystem.gateway.js.map +1 -1
  33. package/dist/modules/cli-configuration/interface-adapters/controllers/http/repositories.routes.d.ts.map +1 -1
  34. package/dist/modules/cli-configuration/interface-adapters/controllers/http/repositories.routes.js +1 -0
  35. package/dist/modules/cli-configuration/interface-adapters/controllers/http/repositories.routes.js.map +1 -1
  36. package/dist/modules/platform-integration/entities/approvalRevocation/approvalRevocation.gateway.d.ts +10 -0
  37. package/dist/modules/platform-integration/entities/approvalRevocation/approvalRevocation.gateway.d.ts.map +1 -0
  38. package/dist/modules/platform-integration/entities/approvalRevocation/approvalRevocation.gateway.js +2 -0
  39. package/dist/modules/platform-integration/entities/approvalRevocation/approvalRevocation.gateway.js.map +1 -0
  40. package/dist/modules/platform-integration/entities/github/githubIssueCommentEvent.guard.d.ts +50 -0
  41. package/dist/modules/platform-integration/entities/github/githubIssueCommentEvent.guard.d.ts.map +1 -0
  42. package/dist/modules/platform-integration/entities/github/githubIssueCommentEvent.guard.js +21 -0
  43. package/dist/modules/platform-integration/entities/github/githubIssueCommentEvent.guard.js.map +1 -0
  44. package/dist/modules/platform-integration/entities/github/githubPullRequestReviewEvent.guard.d.ts +53 -0
  45. package/dist/modules/platform-integration/entities/github/githubPullRequestReviewEvent.guard.d.ts.map +1 -0
  46. package/dist/modules/platform-integration/entities/github/githubPullRequestReviewEvent.guard.js +23 -0
  47. package/dist/modules/platform-integration/entities/github/githubPullRequestReviewEvent.guard.js.map +1 -0
  48. package/dist/modules/platform-integration/entities/gitlab/gitlabNoteEvent.guard.d.ts +62 -0
  49. package/dist/modules/platform-integration/entities/gitlab/gitlabNoteEvent.guard.d.ts.map +1 -0
  50. package/dist/modules/platform-integration/entities/gitlab/gitlabNoteEvent.guard.js +33 -0
  51. package/dist/modules/platform-integration/entities/gitlab/gitlabNoteEvent.guard.js.map +1 -0
  52. package/dist/modules/platform-integration/entities/noteComment/noteCommentPost.gateway.d.ts +9 -0
  53. package/dist/modules/platform-integration/entities/noteComment/noteCommentPost.gateway.d.ts.map +1 -0
  54. package/dist/modules/platform-integration/entities/noteComment/noteCommentPost.gateway.js +2 -0
  55. package/dist/modules/platform-integration/entities/noteComment/noteCommentPost.gateway.js.map +1 -0
  56. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/eventFilter.d.ts +28 -0
  57. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/eventFilter.d.ts.map +1 -1
  58. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/eventFilter.js +48 -0
  59. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/eventFilter.js.map +1 -1
  60. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.d.ts +10 -0
  61. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.d.ts.map +1 -1
  62. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.js +159 -1
  63. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.js.map +1 -1
  64. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/gitlab.controller.d.ts +10 -0
  65. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/gitlab.controller.d.ts.map +1 -1
  66. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/gitlab.controller.js +129 -5
  67. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/gitlab.controller.js.map +1 -1
  68. package/dist/modules/platform-integration/interface-adapters/gateways/cli/approvalRevocation.github.cli.gateway.d.ts +8 -0
  69. package/dist/modules/platform-integration/interface-adapters/gateways/cli/approvalRevocation.github.cli.gateway.d.ts.map +1 -0
  70. package/dist/modules/platform-integration/interface-adapters/gateways/cli/approvalRevocation.github.cli.gateway.js +15 -0
  71. package/dist/modules/platform-integration/interface-adapters/gateways/cli/approvalRevocation.github.cli.gateway.js.map +1 -0
  72. package/dist/modules/platform-integration/interface-adapters/gateways/cli/approvalRevocation.gitlab.cli.gateway.d.ts +8 -0
  73. package/dist/modules/platform-integration/interface-adapters/gateways/cli/approvalRevocation.gitlab.cli.gateway.d.ts.map +1 -0
  74. package/dist/modules/platform-integration/interface-adapters/gateways/cli/approvalRevocation.gitlab.cli.gateway.js +12 -0
  75. package/dist/modules/platform-integration/interface-adapters/gateways/cli/approvalRevocation.gitlab.cli.gateway.js.map +1 -0
  76. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.github.cli.gateway.d.ts +8 -0
  77. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.github.cli.gateway.d.ts.map +1 -0
  78. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.github.cli.gateway.js +11 -0
  79. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.github.cli.gateway.js.map +1 -0
  80. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.gitlab.cli.gateway.d.ts +8 -0
  81. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.gitlab.cli.gateway.d.ts.map +1 -0
  82. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.gitlab.cli.gateway.js +12 -0
  83. package/dist/modules/platform-integration/interface-adapters/gateways/cli/noteCommentPost.gitlab.cli.gateway.js.map +1 -0
  84. package/dist/modules/review-execution/entities/reviewContext/reviewContext.gateway.d.ts +1 -0
  85. package/dist/modules/review-execution/entities/reviewContext/reviewContext.gateway.d.ts.map +1 -1
  86. package/dist/modules/review-execution/entities/reviewContext/reviewContext.schema.d.ts +10 -2
  87. package/dist/modules/review-execution/entities/reviewContext/reviewContext.schema.d.ts.map +1 -1
  88. package/dist/modules/review-execution/entities/reviewContext/reviewContextResult.factory.d.ts +11 -0
  89. package/dist/modules/review-execution/entities/reviewContext/reviewContextResult.factory.d.ts.map +1 -0
  90. package/dist/modules/review-execution/entities/reviewContext/reviewContextResult.factory.js +22 -0
  91. package/dist/modules/review-execution/entities/reviewContext/reviewContextResult.factory.js.map +1 -0
  92. package/dist/modules/review-execution/entities/reviewContext/reviewContextResult.guard.d.ts +10 -0
  93. package/dist/modules/review-execution/entities/reviewContext/reviewContextResult.guard.d.ts.map +1 -1
  94. package/dist/modules/review-execution/entities/reviewContext/reviewContextResult.schema.d.ts +31 -1
  95. package/dist/modules/review-execution/entities/reviewContext/reviewContextResult.schema.d.ts.map +1 -1
  96. package/dist/modules/review-execution/entities/reviewContext/reviewContextResult.schema.js +11 -1
  97. package/dist/modules/review-execution/entities/reviewContext/reviewContextResult.schema.js.map +1 -1
  98. package/dist/modules/review-execution/interface-adapters/gateways/reviewContext.fileSystem.gateway.d.ts +1 -0
  99. package/dist/modules/review-execution/interface-adapters/gateways/reviewContext.fileSystem.gateway.d.ts.map +1 -1
  100. package/dist/modules/review-execution/interface-adapters/gateways/reviewContext.fileSystem.gateway.js +27 -1
  101. package/dist/modules/review-execution/interface-adapters/gateways/reviewContext.fileSystem.gateway.js.map +1 -1
  102. package/dist/modules/review-execution/services/reviewRecovery.service.d.ts +33 -0
  103. package/dist/modules/review-execution/services/reviewRecovery.service.d.ts.map +1 -0
  104. package/dist/modules/review-execution/services/reviewRecovery.service.js +80 -0
  105. package/dist/modules/review-execution/services/reviewRecovery.service.js.map +1 -0
  106. package/dist/modules/tracking/entities/bypassMarker/bypassMarker.d.ts +10 -0
  107. package/dist/modules/tracking/entities/bypassMarker/bypassMarker.d.ts.map +1 -0
  108. package/dist/modules/tracking/entities/bypassMarker/bypassMarker.js +17 -0
  109. package/dist/modules/tracking/entities/bypassMarker/bypassMarker.js.map +1 -0
  110. package/dist/modules/tracking/entities/qualityGate/qualityGate.d.ts +15 -0
  111. package/dist/modules/tracking/entities/qualityGate/qualityGate.d.ts.map +1 -0
  112. package/dist/modules/tracking/entities/qualityGate/qualityGate.js +24 -0
  113. package/dist/modules/tracking/entities/qualityGate/qualityGate.js.map +1 -0
  114. package/dist/modules/tracking/entities/tracking/trackedMr.d.ts +6 -0
  115. package/dist/modules/tracking/entities/tracking/trackedMr.d.ts.map +1 -1
  116. package/dist/modules/tracking/entities/tracking/trackedMr.js.map +1 -1
  117. package/dist/modules/tracking/interface-adapters/controllers/http/mrTracking.routes.d.ts +1 -0
  118. package/dist/modules/tracking/interface-adapters/controllers/http/mrTracking.routes.d.ts.map +1 -1
  119. package/dist/modules/tracking/interface-adapters/controllers/http/mrTracking.routes.js +14 -3
  120. package/dist/modules/tracking/interface-adapters/controllers/http/mrTracking.routes.js.map +1 -1
  121. package/dist/modules/tracking/interface-adapters/controllers/http/mrTrackingAdvanced.routes.d.ts.map +1 -1
  122. package/dist/modules/tracking/interface-adapters/controllers/http/mrTrackingAdvanced.routes.js +1 -0
  123. package/dist/modules/tracking/interface-adapters/controllers/http/mrTrackingAdvanced.routes.js.map +1 -1
  124. package/dist/modules/tracking/usecases/tracking/handlePlatformApproval.usecase.d.ts +28 -0
  125. package/dist/modules/tracking/usecases/tracking/handlePlatformApproval.usecase.d.ts.map +1 -0
  126. package/dist/modules/tracking/usecases/tracking/handlePlatformApproval.usecase.js +37 -0
  127. package/dist/modules/tracking/usecases/tracking/handlePlatformApproval.usecase.js.map +1 -0
  128. package/dist/modules/tracking/usecases/tracking/recordBypass.usecase.d.ts +28 -0
  129. package/dist/modules/tracking/usecases/tracking/recordBypass.usecase.d.ts.map +1 -0
  130. package/dist/modules/tracking/usecases/tracking/recordBypass.usecase.js +28 -0
  131. package/dist/modules/tracking/usecases/tracking/recordBypass.usecase.js.map +1 -0
  132. package/dist/modules/tracking/usecases/tracking/recordReviewCompletion.usecase.d.ts +1 -0
  133. package/dist/modules/tracking/usecases/tracking/recordReviewCompletion.usecase.d.ts.map +1 -1
  134. package/dist/modules/tracking/usecases/tracking/recordReviewCompletion.usecase.js +10 -1
  135. package/dist/modules/tracking/usecases/tracking/recordReviewCompletion.usecase.js.map +1 -1
  136. package/dist/modules/tracking/usecases/tracking/trackAssignment.usecase.d.ts.map +1 -1
  137. package/dist/modules/tracking/usecases/tracking/trackAssignment.usecase.js +1 -0
  138. package/dist/modules/tracking/usecases/tracking/trackAssignment.usecase.js.map +1 -1
  139. package/dist/modules/tracking/usecases/tracking/transitionState.usecase.d.ts +15 -2
  140. package/dist/modules/tracking/usecases/tracking/transitionState.usecase.d.ts.map +1 -1
  141. package/dist/modules/tracking/usecases/tracking/transitionState.usecase.js +8 -2
  142. package/dist/modules/tracking/usecases/tracking/transitionState.usecase.js.map +1 -1
  143. package/dist/tests/acceptance/170-prebuilt-worktree-lifecycle.acceptance.test.js +1 -0
  144. package/dist/tests/acceptance/170-prebuilt-worktree-lifecycle.acceptance.test.js.map +1 -1
  145. package/dist/tests/acceptance/180-quality-threshold-block-approval-iter-B.acceptance.test.d.ts +17 -0
  146. package/dist/tests/acceptance/180-quality-threshold-block-approval-iter-B.acceptance.test.d.ts.map +1 -0
  147. package/dist/tests/acceptance/180-quality-threshold-block-approval-iter-B.acceptance.test.js +294 -0
  148. package/dist/tests/acceptance/180-quality-threshold-block-approval-iter-B.acceptance.test.js.map +1 -0
  149. package/dist/tests/acceptance/180-quality-threshold-block-approval-iter-C.acceptance.test.d.ts +16 -0
  150. package/dist/tests/acceptance/180-quality-threshold-block-approval-iter-C.acceptance.test.d.ts.map +1 -0
  151. package/dist/tests/acceptance/180-quality-threshold-block-approval-iter-C.acceptance.test.js +316 -0
  152. package/dist/tests/acceptance/180-quality-threshold-block-approval-iter-C.acceptance.test.js.map +1 -0
  153. package/dist/tests/acceptance/180-quality-threshold-block-approval.acceptance.test.d.ts +20 -0
  154. package/dist/tests/acceptance/180-quality-threshold-block-approval.acceptance.test.d.ts.map +1 -0
  155. package/dist/tests/acceptance/180-quality-threshold-block-approval.acceptance.test.js +146 -0
  156. package/dist/tests/acceptance/180-quality-threshold-block-approval.acceptance.test.js.map +1 -0
  157. package/dist/tests/acceptance/91-dashboard-multi-project-overview.acceptance.test.js +2 -0
  158. package/dist/tests/acceptance/91-dashboard-multi-project-overview.acceptance.test.js.map +1 -1
  159. package/dist/tests/factories/projectConfig.factory.d.ts +1 -0
  160. package/dist/tests/factories/projectConfig.factory.d.ts.map +1 -1
  161. package/dist/tests/factories/projectConfig.factory.js +3 -0
  162. package/dist/tests/factories/projectConfig.factory.js.map +1 -1
  163. package/dist/tests/factories/trackedMr.factory.d.ts.map +1 -1
  164. package/dist/tests/factories/trackedMr.factory.js +1 -0
  165. package/dist/tests/factories/trackedMr.factory.js.map +1 -1
  166. package/dist/tests/stubs/approvalRevocation.stub.d.ts +7 -0
  167. package/dist/tests/stubs/approvalRevocation.stub.d.ts.map +1 -0
  168. package/dist/tests/stubs/approvalRevocation.stub.js +11 -0
  169. package/dist/tests/stubs/approvalRevocation.stub.js.map +1 -0
  170. package/dist/tests/stubs/noteCommentPost.stub.d.ts +6 -0
  171. package/dist/tests/stubs/noteCommentPost.stub.d.ts.map +1 -0
  172. package/dist/tests/stubs/noteCommentPost.stub.js +7 -0
  173. package/dist/tests/stubs/noteCommentPost.stub.js.map +1 -0
  174. package/dist/tests/stubs/reviewContextGateway.stub.d.ts +1 -0
  175. package/dist/tests/stubs/reviewContextGateway.stub.d.ts.map +1 -1
  176. package/dist/tests/stubs/reviewContextGateway.stub.js +3 -0
  177. package/dist/tests/stubs/reviewContextGateway.stub.js.map +1 -1
  178. package/dist/tests/units/config/projectConfig.test.js +62 -0
  179. package/dist/tests/units/config/projectConfig.test.js.map +1 -1
  180. package/dist/tests/units/dashboard/modules/animations.test.d.ts +10 -0
  181. package/dist/tests/units/dashboard/modules/animations.test.d.ts.map +1 -0
  182. package/dist/tests/units/dashboard/modules/animations.test.js +223 -0
  183. package/dist/tests/units/dashboard/modules/animations.test.js.map +1 -0
  184. package/dist/tests/units/dashboard/modules/cardCounters.test.js +56 -0
  185. package/dist/tests/units/dashboard/modules/cardCounters.test.js.map +1 -1
  186. package/dist/tests/units/entities/reviewContext/reviewContext.schema.test.js +1 -0
  187. package/dist/tests/units/entities/reviewContext/reviewContext.schema.test.js.map +1 -1
  188. package/dist/tests/units/entities/reviewContext/reviewContextResult.factory.test.d.ts +2 -0
  189. package/dist/tests/units/entities/reviewContext/reviewContextResult.factory.test.d.ts.map +1 -0
  190. package/dist/tests/units/entities/reviewContext/reviewContextResult.factory.test.js +43 -0
  191. package/dist/tests/units/entities/reviewContext/reviewContextResult.factory.test.js.map +1 -0
  192. package/dist/tests/units/entities/reviewContext/reviewContextResult.guard.test.js +7 -3
  193. package/dist/tests/units/entities/reviewContext/reviewContextResult.guard.test.js.map +1 -1
  194. package/dist/tests/units/entities/reviewContext/reviewContextResult.schema.test.js +12 -1
  195. package/dist/tests/units/entities/reviewContext/reviewContextResult.schema.test.js.map +1 -1
  196. package/dist/tests/units/interface-adapters/controllers/webhook/eventFilter.test.js +50 -1
  197. package/dist/tests/units/interface-adapters/controllers/webhook/eventFilter.test.js.map +1 -1
  198. package/dist/tests/units/interface-adapters/controllers/webhook/github.controller.test.js +63 -0
  199. package/dist/tests/units/interface-adapters/controllers/webhook/github.controller.test.js.map +1 -1
  200. package/dist/tests/units/interface-adapters/controllers/webhook/gitlab.controller.test.js +11 -0
  201. package/dist/tests/units/interface-adapters/controllers/webhook/gitlab.controller.test.js.map +1 -1
  202. package/dist/tests/units/interface-adapters/gateways/reviewContext.fileSystem.gateway.test.js +64 -4
  203. package/dist/tests/units/interface-adapters/gateways/reviewContext.fileSystem.gateway.test.js.map +1 -1
  204. package/dist/tests/units/modules/claude-invocation/interface-adapters/gateways/reviewReport.fileSystem.gateway.test.js +56 -0
  205. package/dist/tests/units/modules/claude-invocation/interface-adapters/gateways/reviewReport.fileSystem.gateway.test.js.map +1 -1
  206. package/dist/tests/units/modules/cli-configuration/interface-adapters/controllers/http/repositories.routes.test.js +1 -1
  207. package/dist/tests/units/modules/cli-configuration/interface-adapters/controllers/http/repositories.routes.test.js.map +1 -1
  208. package/dist/tests/units/modules/platform-integration/entities/github/githubIssueCommentEvent.guard.test.d.ts +2 -0
  209. package/dist/tests/units/modules/platform-integration/entities/github/githubIssueCommentEvent.guard.test.d.ts.map +1 -0
  210. package/dist/tests/units/modules/platform-integration/entities/github/githubIssueCommentEvent.guard.test.js +39 -0
  211. package/dist/tests/units/modules/platform-integration/entities/github/githubIssueCommentEvent.guard.test.js.map +1 -0
  212. package/dist/tests/units/modules/platform-integration/entities/github/githubPullRequestReviewEvent.guard.test.d.ts +2 -0
  213. package/dist/tests/units/modules/platform-integration/entities/github/githubPullRequestReviewEvent.guard.test.d.ts.map +1 -0
  214. package/dist/tests/units/modules/platform-integration/entities/github/githubPullRequestReviewEvent.guard.test.js +54 -0
  215. package/dist/tests/units/modules/platform-integration/entities/github/githubPullRequestReviewEvent.guard.test.js.map +1 -0
  216. package/dist/tests/units/modules/platform-integration/entities/gitlab/gitlabNoteEvent.guard.test.d.ts +2 -0
  217. package/dist/tests/units/modules/platform-integration/entities/gitlab/gitlabNoteEvent.guard.test.d.ts.map +1 -0
  218. package/dist/tests/units/modules/platform-integration/entities/gitlab/gitlabNoteEvent.guard.test.js +48 -0
  219. package/dist/tests/units/modules/platform-integration/entities/gitlab/gitlabNoteEvent.guard.test.js.map +1 -0
  220. package/dist/tests/units/modules/tracking/entities/bypassMarker/bypassMarker.test.d.ts +2 -0
  221. package/dist/tests/units/modules/tracking/entities/bypassMarker/bypassMarker.test.d.ts.map +1 -0
  222. package/dist/tests/units/modules/tracking/entities/bypassMarker/bypassMarker.test.js +29 -0
  223. package/dist/tests/units/modules/tracking/entities/bypassMarker/bypassMarker.test.js.map +1 -0
  224. package/dist/tests/units/modules/tracking/entities/qualityGate/qualityGate.test.d.ts +2 -0
  225. package/dist/tests/units/modules/tracking/entities/qualityGate/qualityGate.test.d.ts.map +1 -0
  226. package/dist/tests/units/modules/tracking/entities/qualityGate/qualityGate.test.js +52 -0
  227. package/dist/tests/units/modules/tracking/entities/qualityGate/qualityGate.test.js.map +1 -0
  228. package/dist/tests/units/modules/tracking/interface-adapters/controllers/http/mrTracking.routes.test.d.ts +2 -0
  229. package/dist/tests/units/modules/tracking/interface-adapters/controllers/http/mrTracking.routes.test.d.ts.map +1 -0
  230. package/dist/tests/units/modules/tracking/interface-adapters/controllers/http/mrTracking.routes.test.js +103 -0
  231. package/dist/tests/units/modules/tracking/interface-adapters/controllers/http/mrTracking.routes.test.js.map +1 -0
  232. package/dist/tests/units/modules/tracking/usecases/tracking/handlePlatformApproval.usecase.test.d.ts +2 -0
  233. package/dist/tests/units/modules/tracking/usecases/tracking/handlePlatformApproval.usecase.test.d.ts.map +1 -0
  234. package/dist/tests/units/modules/tracking/usecases/tracking/handlePlatformApproval.usecase.test.js +113 -0
  235. package/dist/tests/units/modules/tracking/usecases/tracking/handlePlatformApproval.usecase.test.js.map +1 -0
  236. package/dist/tests/units/modules/tracking/usecases/tracking/recordBypass.usecase.test.d.ts +2 -0
  237. package/dist/tests/units/modules/tracking/usecases/tracking/recordBypass.usecase.test.d.ts.map +1 -0
  238. package/dist/tests/units/modules/tracking/usecases/tracking/recordBypass.usecase.test.js +77 -0
  239. package/dist/tests/units/modules/tracking/usecases/tracking/recordBypass.usecase.test.js.map +1 -0
  240. package/dist/tests/units/modules/worktree-management/usecases/sweepStaleWorktrees.usecase.test.js +1 -0
  241. package/dist/tests/units/modules/worktree-management/usecases/sweepStaleWorktrees.usecase.test.js.map +1 -1
  242. package/dist/tests/units/services/reviewRecovery.service.test.d.ts +2 -0
  243. package/dist/tests/units/services/reviewRecovery.service.test.d.ts.map +1 -0
  244. package/dist/tests/units/services/reviewRecovery.service.test.js +49 -0
  245. package/dist/tests/units/services/reviewRecovery.service.test.js.map +1 -0
  246. package/dist/tests/units/services/runReviewRecovery.service.test.d.ts +2 -0
  247. package/dist/tests/units/services/runReviewRecovery.service.test.d.ts.map +1 -0
  248. package/dist/tests/units/services/runReviewRecovery.service.test.js +199 -0
  249. package/dist/tests/units/services/runReviewRecovery.service.test.js.map +1 -0
  250. package/dist/tests/units/usecases/tracking/recordReviewCompletion.usecase.test.js +71 -0
  251. package/dist/tests/units/usecases/tracking/recordReviewCompletion.usecase.test.js.map +1 -1
  252. package/dist/tests/units/usecases/tracking/transitionState.usecase.test.js +87 -4
  253. package/dist/tests/units/usecases/tracking/transitionState.usecase.test.js.map +1 -1
  254. package/package.json +1 -1
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
- export declare const reviewContextResultSchema: z.ZodObject<{
2
+ export declare const measuredReviewResultSchema: z.ZodObject<{
3
+ kind: z.ZodLiteral<"measured">;
3
4
  blocking: z.ZodNumber;
4
5
  warnings: z.ZodNumber;
5
6
  suggestions: z.ZodNumber;
@@ -10,5 +11,34 @@ export declare const reviewContextResultSchema: z.ZodObject<{
10
11
  needs_discussion: "needs_discussion";
11
12
  }>;
12
13
  }, z.core.$strip>;
14
+ export declare const backfilledReviewResultSchema: z.ZodObject<{
15
+ kind: z.ZodLiteral<"backfilled">;
16
+ backfilledAt: z.ZodString;
17
+ reason: z.ZodEnum<{
18
+ "stale-on-boot": "stale-on-boot";
19
+ "recovered-after-restart": "recovered-after-restart";
20
+ }>;
21
+ }, z.core.$strip>;
22
+ export declare const reviewContextResultSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
23
+ kind: z.ZodLiteral<"measured">;
24
+ blocking: z.ZodNumber;
25
+ warnings: z.ZodNumber;
26
+ suggestions: z.ZodNumber;
27
+ score: z.ZodNumber;
28
+ verdict: z.ZodEnum<{
29
+ ready_to_merge: "ready_to_merge";
30
+ needs_fixes: "needs_fixes";
31
+ needs_discussion: "needs_discussion";
32
+ }>;
33
+ }, z.core.$strip>, z.ZodObject<{
34
+ kind: z.ZodLiteral<"backfilled">;
35
+ backfilledAt: z.ZodString;
36
+ reason: z.ZodEnum<{
37
+ "stale-on-boot": "stale-on-boot";
38
+ "recovered-after-restart": "recovered-after-restart";
39
+ }>;
40
+ }, z.core.$strip>], "kind">;
41
+ export type MeasuredReviewResult = z.infer<typeof measuredReviewResultSchema>;
42
+ export type BackfilledReviewResult = z.infer<typeof backfilledReviewResultSchema>;
13
43
  export type ReviewContextResult = z.infer<typeof reviewContextResultSchema>;
14
44
  //# sourceMappingURL=reviewContextResult.schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reviewContextResult.schema.d.ts","sourceRoot":"","sources":["../../../../../src/modules/review-execution/entities/reviewContext/reviewContextResult.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,yBAAyB;;;;;;;;;;iBAMpC,CAAA;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA"}
1
+ {"version":3,"file":"reviewContextResult.schema.d.ts","sourceRoot":"","sources":["../../../../../src/modules/review-execution/entities/reviewContext/reviewContextResult.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,0BAA0B;;;;;;;;;;;iBAOrC,CAAA;AAEF,eAAO,MAAM,4BAA4B;;;;;;;iBAIvC,CAAA;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;2BAGpC,CAAA;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAC7E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAA;AACjF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA"}
@@ -1,9 +1,19 @@
1
1
  import { z } from 'zod';
2
- export const reviewContextResultSchema = z.object({
2
+ export const measuredReviewResultSchema = z.object({
3
+ kind: z.literal('measured'),
3
4
  blocking: z.number(),
4
5
  warnings: z.number(),
5
6
  suggestions: z.number(),
6
7
  score: z.number(),
7
8
  verdict: z.enum(['ready_to_merge', 'needs_fixes', 'needs_discussion']),
8
9
  });
10
+ export const backfilledReviewResultSchema = z.object({
11
+ kind: z.literal('backfilled'),
12
+ backfilledAt: z.string(),
13
+ reason: z.enum(['stale-on-boot', 'recovered-after-restart']),
14
+ });
15
+ export const reviewContextResultSchema = z.discriminatedUnion('kind', [
16
+ measuredReviewResultSchema,
17
+ backfilledReviewResultSchema,
18
+ ]);
9
19
  //# sourceMappingURL=reviewContextResult.schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reviewContextResult.schema.js","sourceRoot":"","sources":["../../../../../src/modules/review-execution/entities/reviewContext/reviewContextResult.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,CAAC,CAAC;CACvE,CAAC,CAAA"}
1
+ {"version":3,"file":"reviewContextResult.schema.js","sourceRoot":"","sources":["../../../../../src/modules/review-execution/entities/reviewContext/reviewContextResult.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;IAC3B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,CAAC,CAAC;CACvE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;IAC7B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,yBAAyB,CAAC,CAAC;CAC7D,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACpE,0BAA0B;IAC1B,4BAA4B;CAC7B,CAAC,CAAA"}
@@ -11,5 +11,6 @@ export declare class ReviewContextFileSystemGateway implements ReviewContextGate
11
11
  appendAction(localPath: string, mergeRequestId: string, action: ReviewContextAction): UpdateResult;
12
12
  updateProgress(localPath: string, mergeRequestId: string, progress: ReviewContextProgress): UpdateResult;
13
13
  setResult(localPath: string, mergeRequestId: string, result: ReviewContextResult): UpdateResult;
14
+ listAll(localPath: string): ReviewContext[];
14
15
  }
15
16
  //# sourceMappingURL=reviewContext.fileSystem.gateway.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reviewContext.fileSystem.gateway.d.ts","sourceRoot":"","sources":["../../../../../src/modules/review-execution/interface-adapters/gateways/reviewContext.fileSystem.gateway.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,4EAA4E,CAAA;AACpI,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,aAAa,EACb,qBAAqB,EACtB,MAAM,oEAAoE,CAAA;AAE3E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kEAAkE,CAAA;AAC3G,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iFAAiF,CAAA;AAE1H,qBAAa,8BAA+B,YAAW,oBAAoB;IACzE,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM;IAI9D,MAAM,CAAC,KAAK,EAAE,wBAAwB,GAAG,yBAAyB;IA8BlE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,yBAAyB;IAW5E,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAWrE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO;IAK1D,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,YAAY;IAalG,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,qBAAqB,GAAG,YAAY;IAiBxG,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,YAAY;CAYhG"}
1
+ {"version":3,"file":"reviewContext.fileSystem.gateway.d.ts","sourceRoot":"","sources":["../../../../../src/modules/review-execution/interface-adapters/gateways/reviewContext.fileSystem.gateway.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,4EAA4E,CAAA;AACpI,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,aAAa,EACb,qBAAqB,EACtB,MAAM,oEAAoE,CAAA;AAE3E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kEAAkE,CAAA;AAC3G,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iFAAiF,CAAA;AAE1H,qBAAa,8BAA+B,YAAW,oBAAoB;IACzE,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM;IAI9D,MAAM,CAAC,KAAK,EAAE,wBAAwB,GAAG,yBAAyB;IA8BlE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,yBAAyB;IAW5E,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAWrE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO;IAK1D,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,YAAY;IAalG,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,qBAAqB,GAAG,YAAY;IAiBxG,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,YAAY;IAa/F,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE;CAiB5C"}
@@ -1,4 +1,4 @@
1
- import { writeFileSync, readFileSync, existsSync, mkdirSync, unlinkSync } from 'node:fs';
1
+ import { writeFileSync, readFileSync, existsSync, mkdirSync, unlinkSync, readdirSync, statSync } from 'node:fs';
2
2
  import { join, dirname } from 'node:path';
3
3
  import { buildAgentInstructions } from '../../../../modules/review-execution/services/agentInstructionsBuilder.js';
4
4
  export class ReviewContextFileSystemGateway {
@@ -83,5 +83,31 @@ export class ReviewContextFileSystemGateway {
83
83
  writeFileSync(filePath, JSON.stringify(context, null, 2));
84
84
  return { success: true };
85
85
  }
86
+ listAll(localPath) {
87
+ const logsDir = join(localPath, '.claude', 'reviews', 'logs');
88
+ if (!existsSync(logsDir)) {
89
+ return [];
90
+ }
91
+ return collectJsonFiles(logsDir).flatMap((path) => {
92
+ try {
93
+ return [JSON.parse(readFileSync(path, 'utf-8'))];
94
+ }
95
+ catch (error) {
96
+ const message = error instanceof Error ? error.message : String(error);
97
+ process.stderr.write(`[reviewContextGateway] malformed JSON skipped at ${path}: ${message}\n`);
98
+ return [];
99
+ }
100
+ });
101
+ }
102
+ }
103
+ function collectJsonFiles(directory) {
104
+ const entries = readdirSync(directory);
105
+ return entries.flatMap((entry) => {
106
+ const fullPath = join(directory, entry);
107
+ if (statSync(fullPath).isDirectory()) {
108
+ return collectJsonFiles(fullPath);
109
+ }
110
+ return entry.endsWith('.json') ? [fullPath] : [];
111
+ });
86
112
  }
87
113
  //# sourceMappingURL=reviewContext.fileSystem.gateway.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reviewContext.fileSystem.gateway.js","sourceRoot":"","sources":["../../../../../src/modules/review-execution/interface-adapters/gateways/reviewContext.fileSystem.gateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reviewContext.fileSystem.gateway.js","sourceRoot":"","sources":["../../../../../src/modules/review-execution/interface-adapters/gateways/reviewContext.fileSystem.gateway.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { ReviewContext } from '../../../modules/review-execution/entities/reviewContext/reviewContext.js';
2
+ import type { ReviewContextGateway } from '../../../modules/review-execution/entities/reviewContext/reviewContext.gateway.js';
3
+ export declare function shouldRecover(context: ReviewContext): boolean;
4
+ export interface RecoveryLogger {
5
+ info: (obj: object, msg: string) => void;
6
+ warn: (obj: object, msg: string) => void;
7
+ error: (obj: object, msg: string) => void;
8
+ }
9
+ export interface RecoveryRepository {
10
+ localPath: string;
11
+ }
12
+ export interface RecoverySummary {
13
+ scanned: number;
14
+ recovered: number;
15
+ partial: number;
16
+ backfilled: number;
17
+ skipped: number;
18
+ failed: number;
19
+ }
20
+ export interface ExecuteActionsOutcome {
21
+ posted: number;
22
+ failed: number;
23
+ }
24
+ export interface RecoveryDeps {
25
+ repositories: RecoveryRepository[];
26
+ reviewContextGateway: ReviewContextGateway;
27
+ executeActions: (context: ReviewContext, localPath: string) => Promise<ExecuteActionsOutcome>;
28
+ now: () => number;
29
+ logger: RecoveryLogger;
30
+ graceWindowMs?: number;
31
+ }
32
+ export declare function runReviewRecovery(deps: RecoveryDeps): Promise<RecoverySummary>;
33
+ //# sourceMappingURL=reviewRecovery.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reviewRecovery.service.d.ts","sourceRoot":"","sources":["../../../../src/modules/review-execution/services/reviewRecovery.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oEAAoE,CAAA;AACvG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4EAA4E,CAAA;AAItH,wBAAgB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAE7D;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CAC1C;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,kBAAkB,EAAE,CAAA;IAClC,oBAAoB,EAAE,oBAAoB,CAAA;IAC1C,cAAc,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAA;IAC7F,GAAG,EAAE,MAAM,MAAM,CAAA;IACjB,MAAM,EAAE,cAAc,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,CAwFpF"}
@@ -0,0 +1,80 @@
1
+ const DEFAULT_GRACE_WINDOW_MS = 30 * 60 * 1000;
2
+ export function shouldRecover(context) {
3
+ return context.progress.phase === 'completed' && context.actions.length > 0 && !context.result;
4
+ }
5
+ export async function runReviewRecovery(deps) {
6
+ const graceWindowMs = deps.graceWindowMs ?? DEFAULT_GRACE_WINDOW_MS;
7
+ const summary = {
8
+ scanned: 0,
9
+ recovered: 0,
10
+ partial: 0,
11
+ backfilled: 0,
12
+ skipped: 0,
13
+ failed: 0,
14
+ };
15
+ for (const repository of deps.repositories) {
16
+ for (const context of deps.reviewContextGateway.listAll(repository.localPath)) {
17
+ summary.scanned += 1;
18
+ if (!shouldRecover(context)) {
19
+ summary.skipped += 1;
20
+ continue;
21
+ }
22
+ const lastActivityMs = lastActivityTime(context);
23
+ const ageMs = deps.now() - lastActivityMs;
24
+ const isStale = ageMs > graceWindowMs;
25
+ if (isStale) {
26
+ markBackfilled(deps.reviewContextGateway, repository.localPath, context, 'stale-on-boot', deps.now);
27
+ deps.logger.info({ mergeRequestId: context.mergeRequestId, ageMs }, 'Review context backfilled (older than grace window, not replayed)');
28
+ summary.backfilled += 1;
29
+ continue;
30
+ }
31
+ try {
32
+ const outcome = await deps.executeActions(context, repository.localPath);
33
+ if (outcome.posted === 0) {
34
+ // Nothing reached the platform — safe to retry on the next boot, so do
35
+ // not finalize the context.
36
+ summary.failed += 1;
37
+ deps.logger.warn({ mergeRequestId: context.mergeRequestId, outcome }, 'Recovery posted zero actions, leaving context for retry');
38
+ continue;
39
+ }
40
+ // At least one action was posted. Finalize the context regardless of
41
+ // partial failures — re-running would double-post the successes.
42
+ markBackfilled(deps.reviewContextGateway, repository.localPath, context, 'recovered-after-restart', deps.now);
43
+ if (outcome.failed > 0) {
44
+ summary.partial += 1;
45
+ deps.logger.warn({ mergeRequestId: context.mergeRequestId, outcome }, 'Recovery completed with partial failures — context finalized to avoid double-post');
46
+ }
47
+ else {
48
+ summary.recovered += 1;
49
+ deps.logger.info({ mergeRequestId: context.mergeRequestId, posted: outcome.posted }, 'Review context recovered after restart');
50
+ }
51
+ }
52
+ catch (error) {
53
+ summary.failed += 1;
54
+ deps.logger.error({
55
+ mergeRequestId: context.mergeRequestId,
56
+ error: error instanceof Error ? error.message : String(error),
57
+ }, 'Recovery execution threw');
58
+ }
59
+ }
60
+ }
61
+ return summary;
62
+ }
63
+ function lastActivityTime(context) {
64
+ const updatedAt = context.progress.updatedAt;
65
+ if (updatedAt) {
66
+ const parsed = new Date(updatedAt).getTime();
67
+ if (!Number.isNaN(parsed)) {
68
+ return parsed;
69
+ }
70
+ }
71
+ return new Date(context.createdAt).getTime();
72
+ }
73
+ function markBackfilled(gateway, localPath, context, reason, now) {
74
+ gateway.setResult(localPath, context.mergeRequestId, {
75
+ kind: 'backfilled',
76
+ backfilledAt: new Date(now()).toISOString(),
77
+ reason,
78
+ });
79
+ }
80
+ //# sourceMappingURL=reviewRecovery.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reviewRecovery.service.js","sourceRoot":"","sources":["../../../../src/modules/review-execution/services/reviewRecovery.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export type BypassMarkerResult = {
2
+ kind: 'no-marker';
3
+ } | {
4
+ kind: 'valid';
5
+ reason: string;
6
+ } | {
7
+ kind: 'invalid-missing-reason';
8
+ };
9
+ export declare function parseBypassMarker(commentBody: string): BypassMarkerResult;
10
+ //# sourceMappingURL=bypassMarker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bypassMarker.d.ts","sourceRoot":"","sources":["../../../../../src/modules/tracking/entities/bypassMarker/bypassMarker.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,wBAAwB,CAAA;CAAE,CAAC;AAKvC,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,CAgBzE"}
@@ -0,0 +1,17 @@
1
+ const MARKER_TOKEN = '/bypass-quality';
2
+ const QUOTED_REASON_PATTERN = /\/bypass-quality\s+"([^"]*)"/;
3
+ export function parseBypassMarker(commentBody) {
4
+ if (!commentBody.includes(MARKER_TOKEN)) {
5
+ return { kind: 'no-marker' };
6
+ }
7
+ const match = commentBody.match(QUOTED_REASON_PATTERN);
8
+ if (!match) {
9
+ return { kind: 'invalid-missing-reason' };
10
+ }
11
+ const reason = match[1].trim();
12
+ if (reason.length === 0) {
13
+ return { kind: 'invalid-missing-reason' };
14
+ }
15
+ return { kind: 'valid', reason };
16
+ }
17
+ //# sourceMappingURL=bypassMarker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bypassMarker.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/entities/bypassMarker/bypassMarker.ts"],"names":[],"mappings":"AAKA,MAAM,YAAY,GAAG,iBAAiB,CAAC;AACvC,MAAM,qBAAqB,GAAG,8BAA8B,CAAC;AAE7D,MAAM,UAAU,iBAAiB,CAAC,WAAmB;IACnD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QACxC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACvD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;IAC5C,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;IAC5C,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AACnC,CAAC"}
@@ -0,0 +1,15 @@
1
+ export interface QualityGateInput {
2
+ latestScore: number | null;
3
+ blockingIssues: number;
4
+ threshold: number | null;
5
+ }
6
+ export type QualityGateRejectionReason = 'below-threshold' | 'blockers-present';
7
+ export type QualityGateResult = {
8
+ allowed: true;
9
+ } | {
10
+ allowed: false;
11
+ reason: QualityGateRejectionReason;
12
+ message: string;
13
+ };
14
+ export declare function evaluateQualityGate(input: QualityGateInput): QualityGateResult;
15
+ //# sourceMappingURL=qualityGate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qualityGate.d.ts","sourceRoot":"","sources":["../../../../../src/modules/tracking/entities/qualityGate/qualityGate.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,MAAM,0BAA0B,GAAG,iBAAiB,GAAG,kBAAkB,CAAC;AAEhF,MAAM,MAAM,iBAAiB,GACzB;IAAE,OAAO,EAAE,IAAI,CAAA;CAAE,GACjB;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,0BAA0B,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5E,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,iBAAiB,CA0B9E"}
@@ -0,0 +1,24 @@
1
+ export function evaluateQualityGate(input) {
2
+ if (input.threshold === null) {
3
+ return { allowed: true };
4
+ }
5
+ if (input.latestScore === null) {
6
+ return { allowed: true };
7
+ }
8
+ if (input.blockingIssues > 0) {
9
+ return {
10
+ allowed: false,
11
+ reason: 'blockers-present',
12
+ message: 'Issues bloquantes non résolues',
13
+ };
14
+ }
15
+ if (input.latestScore < input.threshold) {
16
+ return {
17
+ allowed: false,
18
+ reason: 'below-threshold',
19
+ message: `Seuil qualité non atteint (${input.latestScore}/10 < ${input.threshold}/10)`,
20
+ };
21
+ }
22
+ return { allowed: true };
23
+ }
24
+ //# sourceMappingURL=qualityGate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qualityGate.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/entities/qualityGate/qualityGate.ts"],"names":[],"mappings":"AAYA,MAAM,UAAU,mBAAmB,CAAC,KAAuB;IACzD,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;QAC7B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,KAAK,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;QAC/B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,KAAK,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,kBAAkB;YAC1B,OAAO,EAAE,gCAAgC;SAC1C,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QACxC,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,iBAAiB;YACzB,OAAO,EAAE,8BAA8B,KAAK,CAAC,WAAW,SAAS,KAAK,CAAC,SAAS,MAAM;SACvF,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC"}
@@ -27,6 +27,12 @@ export interface TrackedMr {
27
27
  totalDurationMs: number;
28
28
  latestScore: number | null;
29
29
  autoFollowup: boolean;
30
+ bypass: BypassRecord | null;
31
+ }
32
+ export interface BypassRecord {
33
+ author: string;
34
+ reason: string;
35
+ recordedAt: string;
30
36
  }
31
37
  export declare function createTrackedMrId(platform: 'gitlab' | 'github', project: string, mrNumber: number): string;
32
38
  //# sourceMappingURL=trackedMr.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"trackedMr.d.ts","sourceRoot":"","sources":["../../../../../src/modules/tracking/entities/tracking/trackedMr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IAErB,UAAU,EAAE,cAAc,CAAC;IAE3B,KAAK,EAAE,gBAAgB,GAAG,aAAa,GAAG,kBAAkB,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAChG,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IAErB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB,OAAO,EAAE,WAAW,EAAE,CAAC;IAEvB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE1G"}
1
+ {"version":3,"file":"trackedMr.d.ts","sourceRoot":"","sources":["../../../../../src/modules/tracking/entities/tracking/trackedMr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IAErB,UAAU,EAAE,cAAc,CAAC;IAE3B,KAAK,EAAE,gBAAgB,GAAG,aAAa,GAAG,kBAAkB,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAChG,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IAErB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB,OAAO,EAAE,WAAW,EAAE,CAAC;IAEvB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B,YAAY,EAAE,OAAO,CAAC;IAEtB,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE1G"}
@@ -1 +1 @@
1
- {"version":3,"file":"trackedMr.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/entities/tracking/trackedMr.ts"],"names":[],"mappings":"AAsCA,MAAM,UAAU,iBAAiB,CAAC,QAA6B,EAAE,OAAe,EAAE,QAAgB;IAChG,OAAO,GAAG,QAAQ,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"trackedMr.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/entities/tracking/trackedMr.ts"],"names":[],"mappings":"AA8CA,MAAM,UAAU,iBAAiB,CAAC,QAA6B,EAAE,OAAe,EAAE,QAAgB;IAChG,OAAO,GAAG,QAAQ,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;AAC9C,CAAC"}
@@ -2,6 +2,7 @@ import type { FastifyPluginAsync } from 'fastify';
2
2
  import type { ReviewRequestTrackingGateway } from '../../gateways/reviewRequestTracking.gateway.js';
3
3
  interface MrTrackingRoutesOptions {
4
4
  reviewRequestTrackingGateway: ReviewRequestTrackingGateway;
5
+ getQualityThreshold?: (projectPath: string) => number | null;
5
6
  }
6
7
  export declare const mrTrackingRoutes: FastifyPluginAsync<MrTrackingRoutesOptions>;
7
8
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"mrTracking.routes.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/tracking/interface-adapters/controllers/http/mrTracking.routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AAIpG,UAAU,uBAAuB;IAC/B,4BAA4B,EAAE,4BAA4B,CAAC;CAC5D;AAeD,eAAO,MAAM,gBAAgB,EAAE,kBAAkB,CAAC,uBAAuB,CA4DxE,CAAC"}
1
+ {"version":3,"file":"mrTracking.routes.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/tracking/interface-adapters/controllers/http/mrTracking.routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AAKpG,UAAU,uBAAuB;IAC/B,4BAA4B,EAAE,4BAA4B,CAAC;IAC3D,mBAAmB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAC9D;AAeD,eAAO,MAAM,gBAAgB,EAAE,kBAAkB,CAAC,uBAAuB,CAwExE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { TransitionStateUseCase } from '../../../../../modules/tracking/usecases/tracking/transitionState.usecase.js';
2
+ import { evaluateQualityGate } from '../../../../../modules/tracking/entities/qualityGate/qualityGate.js';
2
3
  import { logInfo, logError } from '../../../../../frameworks/logging/logBuffer.js';
3
4
  function validateProjectPath(path) {
4
5
  if (!path) {
@@ -11,7 +12,7 @@ function validateProjectPath(path) {
11
12
  return { valid: true, path: trimmed };
12
13
  }
13
14
  export const mrTrackingRoutes = async (fastify, opts) => {
14
- const { reviewRequestTrackingGateway } = opts;
15
+ const { reviewRequestTrackingGateway, getQualityThreshold } = opts;
15
16
  fastify.get('/api/mr-tracking', async (request, reply) => {
16
17
  const query = request.query;
17
18
  const validation = validateProjectPath(query.path);
@@ -47,15 +48,25 @@ export const mrTrackingRoutes = async (fastify, opts) => {
47
48
  return { success: false, error: validation.error };
48
49
  }
49
50
  const transitionState = new TransitionStateUseCase(reviewRequestTrackingGateway);
50
- const approved = transitionState.execute({
51
+ const threshold = getQualityThreshold?.(validation.path) ?? null;
52
+ const result = transitionState.execute({
51
53
  projectPath: validation.path,
52
54
  mrId,
53
55
  targetState: 'approved',
56
+ qualityCheck: (mr) => evaluateQualityGate({
57
+ latestScore: mr.latestScore,
58
+ blockingIssues: mr.openThreads,
59
+ threshold,
60
+ }),
54
61
  });
55
- if (approved) {
62
+ if (result.ok) {
56
63
  logInfo('MR approuvée', { mrId });
57
64
  return { success: true, mrId, message: 'MR marquée comme approuvée' };
58
65
  }
66
+ if (result.reason === 'quality-gate') {
67
+ reply.code(409);
68
+ return { success: false, error: result.message };
69
+ }
59
70
  reply.code(404);
60
71
  return { success: false, error: 'MR non trouvée' };
61
72
  });
@@ -1 +1 @@
1
- {"version":3,"file":"mrTracking.routes.js","sourceRoot":"","sources":["../../../../../../src/modules/tracking/interface-adapters/controllers/http/mrTracking.routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mrTracking.routes.js","sourceRoot":"","sources":["../../../../../../src/modules/tracking/interface-adapters/controllers/http/mrTracking.routes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mrTrackingAdvanced.routes.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/tracking/interface-adapters/controllers/http/mrTrackingAdvanced.routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAG3D,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qEAAqE,CAAC;AAIvH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACtF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AACpG,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,wEAAwE,CAAC;AAC5H,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6DAA6D,CAAC;AAItG,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,4FAA4F,CAAC;AACjJ,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0FAA0F,CAAC;AACzI,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0FAA0F,CAAC;AACzI,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,gGAAgG,CAAC;AACrJ,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,gGAAgG,CAAC;AAErJ,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,4FAA4F,CAAC;AAC9I,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,4FAA4F,CAAC;AAC9I,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4EAA4E,CAAC;AACvH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE,KAAK,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEpC,MAAM,WAAW,+BAA+B;IAC9C,eAAe,EAAE,MAAM,gBAAgB,EAAE,CAAC;IAC1C,4BAA4B,EAAE,4BAA4B,CAAC;IAC3D,oBAAoB,EAAE,8BAA8B,CAAC;IACrD,yBAAyB,EAAE,CACzB,QAAQ,EAAE,QAAQ,KACf,wBAAwB,GAAG,wBAAwB,CAAC;IACzD,+BAA+B,EAAE,CAC/B,QAAQ,EAAE,QAAQ,KACf,8BAA8B,GAAG,8BAA8B,CAAC;IACrE,4BAA4B,EAAE,CAC5B,QAAQ,EAAE,QAAQ,KACf,2BAA2B,GAAG,2BAA2B,CAAC;IAC/D,wBAAwB,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,kBAAkB,CAAC;IACrE,sBAAsB,EAAE,6BAA6B,CAAC;IACtD,aAAa,EAAE,IAAI,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;IACrD,uBAAuB,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAClE,iBAAiB,CAAC,EAAE,yBAAyB,CAAC;IAC9C,oBAAoB,CAAC,EAAE,2BAA2B,CAAC;IACnD,MAAM,EAAE,MAAM,CAAC;CAChB;AAeD,eAAO,MAAM,wBAAwB,EAAE,kBAAkB,CAAC,+BAA+B,CAuaxF,CAAC"}
1
+ {"version":3,"file":"mrTrackingAdvanced.routes.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/tracking/interface-adapters/controllers/http/mrTrackingAdvanced.routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAG3D,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qEAAqE,CAAC;AAIvH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACtF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AACpG,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,wEAAwE,CAAC;AAC5H,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6DAA6D,CAAC;AAItG,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,4FAA4F,CAAC;AACjJ,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0FAA0F,CAAC;AACzI,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0FAA0F,CAAC;AACzI,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,gGAAgG,CAAC;AACrJ,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,gGAAgG,CAAC;AAErJ,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,4FAA4F,CAAC;AAC9I,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,4FAA4F,CAAC;AAC9I,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4EAA4E,CAAC;AACvH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE,KAAK,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEpC,MAAM,WAAW,+BAA+B;IAC9C,eAAe,EAAE,MAAM,gBAAgB,EAAE,CAAC;IAC1C,4BAA4B,EAAE,4BAA4B,CAAC;IAC3D,oBAAoB,EAAE,8BAA8B,CAAC;IACrD,yBAAyB,EAAE,CACzB,QAAQ,EAAE,QAAQ,KACf,wBAAwB,GAAG,wBAAwB,CAAC;IACzD,+BAA+B,EAAE,CAC/B,QAAQ,EAAE,QAAQ,KACf,8BAA8B,GAAG,8BAA8B,CAAC;IACrE,4BAA4B,EAAE,CAC5B,QAAQ,EAAE,QAAQ,KACf,2BAA2B,GAAG,2BAA2B,CAAC;IAC/D,wBAAwB,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,kBAAkB,CAAC;IACrE,sBAAsB,EAAE,6BAA6B,CAAC;IACtD,aAAa,EAAE,IAAI,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;IACrD,uBAAuB,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAClE,iBAAiB,CAAC,EAAE,yBAAyB,CAAC;IAC9C,oBAAoB,CAAC,EAAE,2BAA2B,CAAC;IACnD,MAAM,EAAE,MAAM,CAAC;CAChB;AAeD,eAAO,MAAM,wBAAwB,EAAE,kBAAkB,CAAC,+BAA+B,CAwaxF,CAAC"}
@@ -180,6 +180,7 @@ export const mrTrackingAdvancedRoutes = async (fastify, opts) => {
180
180
  threadsClosed: threadResolveCount,
181
181
  diffStats,
182
182
  },
183
+ qualityThreshold: loadProjectConfig(job.localPath)?.qualityThreshold ?? null,
183
184
  });
184
185
  logger.info({
185
186
  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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"}
@@ -0,0 +1,28 @@
1
+ import type { UseCase } from '../../../../shared/foundation/usecase.base.js';
2
+ import type { ReviewRequestTrackingGateway } from '../../../../modules/tracking/interface-adapters/gateways/reviewRequestTracking.gateway.js';
3
+ import { type QualityGateRejectionReason } from '../../../../modules/tracking/entities/qualityGate/qualityGate.js';
4
+ interface HandlePlatformApprovalInput {
5
+ projectPath: string;
6
+ mrId: string;
7
+ qualityThreshold: number | null;
8
+ }
9
+ export type HandlePlatformApprovalResult = {
10
+ kind: 'allowed';
11
+ } | {
12
+ kind: 'bypass-active';
13
+ } | {
14
+ kind: 'mr-not-found';
15
+ } | {
16
+ kind: 'reverted';
17
+ reason: QualityGateRejectionReason;
18
+ threshold: number;
19
+ latestScore: number;
20
+ message: string;
21
+ };
22
+ export declare class HandlePlatformApprovalUseCase implements UseCase<HandlePlatformApprovalInput, HandlePlatformApprovalResult> {
23
+ private readonly trackingGateway;
24
+ constructor(trackingGateway: ReviewRequestTrackingGateway);
25
+ execute(input: HandlePlatformApprovalInput): HandlePlatformApprovalResult;
26
+ }
27
+ export {};
28
+ //# sourceMappingURL=handlePlatformApproval.usecase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlePlatformApproval.usecase.d.ts","sourceRoot":"","sources":["../../../../../src/modules/tracking/usecases/tracking/handlePlatformApproval.usecase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iFAAiF,CAAC;AACpI,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,wDAAwD,CAAC;AAEhE,UAAU,2BAA2B;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,MAAM,4BAA4B,GACpC;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,GACzB;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,0BAA0B,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAaN,qBAAa,6BACX,YAAW,OAAO,CAAC,2BAA2B,EAAE,4BAA4B,CAAC;IAEjE,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAAf,eAAe,EAAE,4BAA4B;IAE1E,OAAO,CAAC,KAAK,EAAE,2BAA2B,GAAG,4BAA4B;CAwB1E"}