reviewflow 3.0.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.
- package/CHANGELOG.md +271 -0
- package/LICENSE +21 -0
- package/README.md +209 -0
- package/dist/claude/invoker.d.ts +3 -0
- package/dist/claude/invoker.d.ts.map +1 -0
- package/dist/claude/invoker.js +4 -0
- package/dist/claude/invoker.js.map +1 -0
- package/dist/claude/progressParser.d.ts +3 -0
- package/dist/claude/progressParser.d.ts.map +1 -0
- package/dist/claude/progressParser.js +4 -0
- package/dist/claude/progressParser.js.map +1 -0
- package/dist/cli/parseCliArgs.d.ts +6 -0
- package/dist/cli/parseCliArgs.d.ts.map +1 -0
- package/dist/cli/parseCliArgs.js +13 -0
- package/dist/cli/parseCliArgs.js.map +1 -0
- package/dist/config/loader.d.ts +3 -0
- package/dist/config/loader.d.ts.map +1 -0
- package/dist/config/loader.js +4 -0
- package/dist/config/loader.js.map +1 -0
- package/dist/config/projectConfig.d.ts +30 -0
- package/dist/config/projectConfig.d.ts.map +1 -0
- package/dist/config/projectConfig.js +89 -0
- package/dist/config/projectConfig.js.map +1 -0
- package/dist/entities/diffMetadata/diffMetadata.gateway.d.ts +5 -0
- package/dist/entities/diffMetadata/diffMetadata.gateway.d.ts.map +1 -0
- package/dist/entities/diffMetadata/diffMetadata.gateway.js +2 -0
- package/dist/entities/diffMetadata/diffMetadata.gateway.js.map +1 -0
- package/dist/entities/github/githubPullRequestEvent.guard.d.ts +199 -0
- package/dist/entities/github/githubPullRequestEvent.guard.d.ts.map +1 -0
- package/dist/entities/github/githubPullRequestEvent.guard.js +28 -0
- package/dist/entities/github/githubPullRequestEvent.guard.js.map +1 -0
- package/dist/entities/gitlab/gitlabMergeRequestEvent.guard.d.ts +231 -0
- package/dist/entities/gitlab/gitlabMergeRequestEvent.guard.d.ts.map +1 -0
- package/dist/entities/gitlab/gitlabMergeRequestEvent.guard.js +52 -0
- package/dist/entities/gitlab/gitlabMergeRequestEvent.guard.js.map +1 -0
- package/dist/entities/job/jobContext.gateway.d.ts +10 -0
- package/dist/entities/job/jobContext.gateway.d.ts.map +1 -0
- package/dist/entities/job/jobContext.gateway.js +2 -0
- package/dist/entities/job/jobContext.gateway.js.map +1 -0
- package/dist/entities/progress/agentDefinition.type.d.ts +7 -0
- package/dist/entities/progress/agentDefinition.type.d.ts.map +1 -0
- package/dist/entities/progress/agentDefinition.type.js +18 -0
- package/dist/entities/progress/agentDefinition.type.js.map +1 -0
- package/dist/entities/progress/progress.calculator.d.ts +3 -0
- package/dist/entities/progress/progress.calculator.d.ts.map +1 -0
- package/dist/entities/progress/progress.calculator.js +17 -0
- package/dist/entities/progress/progress.calculator.js.map +1 -0
- package/dist/entities/progress/progress.factory.d.ts +4 -0
- package/dist/entities/progress/progress.factory.d.ts.map +1 -0
- package/dist/entities/progress/progress.factory.js +15 -0
- package/dist/entities/progress/progress.factory.js.map +1 -0
- package/dist/entities/progress/progress.gateway.d.ts +12 -0
- package/dist/entities/progress/progress.gateway.d.ts.map +1 -0
- package/dist/entities/progress/progress.gateway.js +2 -0
- package/dist/entities/progress/progress.gateway.js.map +1 -0
- package/dist/entities/progress/progress.type.d.ts +28 -0
- package/dist/entities/progress/progress.type.d.ts.map +1 -0
- package/dist/entities/progress/progress.type.js +2 -0
- package/dist/entities/progress/progress.type.js.map +1 -0
- package/dist/entities/review/reviewScore.valueObject.d.ts +25 -0
- package/dist/entities/review/reviewScore.valueObject.d.ts.map +1 -0
- package/dist/entities/review/reviewScore.valueObject.js +60 -0
- package/dist/entities/review/reviewScore.valueObject.js.map +1 -0
- package/dist/entities/reviewAction/reviewAction.d.ts +12 -0
- package/dist/entities/reviewAction/reviewAction.d.ts.map +1 -0
- package/dist/entities/reviewAction/reviewAction.gateway.d.ts +19 -0
- package/dist/entities/reviewAction/reviewAction.gateway.d.ts.map +1 -0
- package/dist/entities/reviewAction/reviewAction.gateway.js +2 -0
- package/dist/entities/reviewAction/reviewAction.gateway.js.map +1 -0
- package/dist/entities/reviewAction/reviewAction.guard.d.ts +27 -0
- package/dist/entities/reviewAction/reviewAction.guard.d.ts.map +1 -0
- package/dist/entities/reviewAction/reviewAction.guard.js +8 -0
- package/dist/entities/reviewAction/reviewAction.guard.js.map +1 -0
- package/dist/entities/reviewAction/reviewAction.js +2 -0
- package/dist/entities/reviewAction/reviewAction.js.map +1 -0
- package/dist/entities/reviewAction/reviewAction.schema.d.ts +51 -0
- package/dist/entities/reviewAction/reviewAction.schema.d.ts.map +1 -0
- package/dist/entities/reviewAction/reviewAction.schema.js +37 -0
- package/dist/entities/reviewAction/reviewAction.schema.js.map +1 -0
- package/dist/entities/reviewContext/reviewContext.d.ts +62 -0
- package/dist/entities/reviewContext/reviewContext.d.ts.map +1 -0
- package/dist/entities/reviewContext/reviewContext.gateway.d.ts +16 -0
- package/dist/entities/reviewContext/reviewContext.gateway.d.ts.map +1 -0
- package/dist/entities/reviewContext/reviewContext.gateway.js +2 -0
- package/dist/entities/reviewContext/reviewContext.gateway.js.map +1 -0
- package/dist/entities/reviewContext/reviewContext.js +2 -0
- package/dist/entities/reviewContext/reviewContext.js.map +1 -0
- package/dist/entities/reviewContext/reviewContext.schema.d.ts +122 -0
- package/dist/entities/reviewContext/reviewContext.schema.d.ts.map +1 -0
- package/dist/entities/reviewContext/reviewContext.schema.js +42 -0
- package/dist/entities/reviewContext/reviewContext.schema.js.map +1 -0
- package/dist/entities/reviewContext/reviewContextAction.guard.d.ts +247 -0
- package/dist/entities/reviewContext/reviewContextAction.guard.d.ts.map +1 -0
- package/dist/entities/reviewContext/reviewContextAction.guard.js +28 -0
- package/dist/entities/reviewContext/reviewContextAction.guard.js.map +1 -0
- package/dist/entities/reviewContext/reviewContextAction.schema.d.ts +16 -0
- package/dist/entities/reviewContext/reviewContextAction.schema.d.ts.map +1 -0
- package/dist/entities/reviewContext/reviewContextAction.schema.js +13 -0
- package/dist/entities/reviewContext/reviewContextAction.schema.js.map +1 -0
- package/dist/entities/reviewRequest/reviewRequest.entity.d.ts +37 -0
- package/dist/entities/reviewRequest/reviewRequest.entity.d.ts.map +1 -0
- package/dist/entities/reviewRequest/reviewRequest.entity.js +24 -0
- package/dist/entities/reviewRequest/reviewRequest.entity.js.map +1 -0
- package/dist/entities/reviewRequest/reviewRequest.guard.d.ts +20 -0
- package/dist/entities/reviewRequest/reviewRequest.guard.d.ts.map +1 -0
- package/dist/entities/reviewRequest/reviewRequest.guard.js +11 -0
- package/dist/entities/reviewRequest/reviewRequest.guard.js.map +1 -0
- package/dist/entities/reviewRequest/reviewRequestState.valueObject.d.ts +26 -0
- package/dist/entities/reviewRequest/reviewRequestState.valueObject.d.ts.map +1 -0
- package/dist/entities/reviewRequest/reviewRequestState.valueObject.js +61 -0
- package/dist/entities/reviewRequest/reviewRequestState.valueObject.js.map +1 -0
- package/dist/entities/shared/duration.valueObject.d.ts +21 -0
- package/dist/entities/shared/duration.valueObject.d.ts.map +1 -0
- package/dist/entities/shared/duration.valueObject.js +60 -0
- package/dist/entities/shared/duration.valueObject.js.map +1 -0
- package/dist/entities/threadFetch/threadFetch.gateway.d.ts +5 -0
- package/dist/entities/threadFetch/threadFetch.gateway.d.ts.map +1 -0
- package/dist/entities/threadFetch/threadFetch.gateway.js +2 -0
- package/dist/entities/threadFetch/threadFetch.gateway.js.map +1 -0
- package/dist/entities/tracking/assignmentInfo.d.ts +6 -0
- package/dist/entities/tracking/assignmentInfo.d.ts.map +1 -0
- package/dist/entities/tracking/assignmentInfo.js +2 -0
- package/dist/entities/tracking/assignmentInfo.js.map +1 -0
- package/dist/entities/tracking/mrTrackingData.d.ts +19 -0
- package/dist/entities/tracking/mrTrackingData.d.ts.map +1 -0
- package/dist/entities/tracking/mrTrackingData.js +11 -0
- package/dist/entities/tracking/mrTrackingData.js.map +1 -0
- package/dist/entities/tracking/reviewEvent.d.ts +12 -0
- package/dist/entities/tracking/reviewEvent.d.ts.map +1 -0
- package/dist/entities/tracking/reviewEvent.js +2 -0
- package/dist/entities/tracking/reviewEvent.js.map +1 -0
- package/dist/entities/tracking/trackedMr.d.ts +33 -0
- package/dist/entities/tracking/trackedMr.d.ts.map +1 -0
- package/dist/entities/tracking/trackedMr.js +4 -0
- package/dist/entities/tracking/trackedMr.js.map +1 -0
- package/dist/frameworks/claude/claudeInvoker.d.ts +30 -0
- package/dist/frameworks/claude/claudeInvoker.d.ts.map +1 -0
- package/dist/frameworks/claude/claudeInvoker.js +500 -0
- package/dist/frameworks/claude/claudeInvoker.js.map +1 -0
- package/dist/frameworks/claude/progressParser.d.ts +70 -0
- package/dist/frameworks/claude/progressParser.d.ts.map +1 -0
- package/dist/frameworks/claude/progressParser.js +196 -0
- package/dist/frameworks/claude/progressParser.js.map +1 -0
- package/dist/frameworks/config/configLoader.d.ts +34 -0
- package/dist/frameworks/config/configLoader.d.ts.map +1 -0
- package/dist/frameworks/config/configLoader.js +182 -0
- package/dist/frameworks/config/configLoader.js.map +1 -0
- package/dist/frameworks/logging/logBuffer.d.ts +38 -0
- package/dist/frameworks/logging/logBuffer.d.ts.map +1 -0
- package/dist/frameworks/logging/logBuffer.js +72 -0
- package/dist/frameworks/logging/logBuffer.js.map +1 -0
- package/dist/frameworks/queue/pQueueAdapter.d.ts +127 -0
- package/dist/frameworks/queue/pQueueAdapter.d.ts.map +1 -0
- package/dist/frameworks/queue/pQueueAdapter.js +276 -0
- package/dist/frameworks/queue/pQueueAdapter.js.map +1 -0
- package/dist/frameworks/settings/runtimeSettings.d.ts +12 -0
- package/dist/frameworks/settings/runtimeSettings.d.ts.map +1 -0
- package/dist/frameworks/settings/runtimeSettings.js +19 -0
- package/dist/frameworks/settings/runtimeSettings.js.map +1 -0
- package/dist/interface-adapters/adapters/githubPullRequest.adapter.d.ts +6 -0
- package/dist/interface-adapters/adapters/githubPullRequest.adapter.d.ts.map +1 -0
- package/dist/interface-adapters/adapters/githubPullRequest.adapter.js +27 -0
- package/dist/interface-adapters/adapters/githubPullRequest.adapter.js.map +1 -0
- package/dist/interface-adapters/adapters/gitlabMergeRequest.adapter.d.ts +6 -0
- package/dist/interface-adapters/adapters/gitlabMergeRequest.adapter.d.ts.map +1 -0
- package/dist/interface-adapters/adapters/gitlabMergeRequest.adapter.js +35 -0
- package/dist/interface-adapters/adapters/gitlabMergeRequest.adapter.js.map +1 -0
- package/dist/interface-adapters/adapters/platformAdapter.d.ts +9 -0
- package/dist/interface-adapters/adapters/platformAdapter.d.ts.map +1 -0
- package/dist/interface-adapters/adapters/platformAdapter.js +16 -0
- package/dist/interface-adapters/adapters/platformAdapter.js.map +1 -0
- package/dist/interface-adapters/controllers/http/cliStatus.routes.d.ts +3 -0
- package/dist/interface-adapters/controllers/http/cliStatus.routes.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/http/cliStatus.routes.js +173 -0
- package/dist/interface-adapters/controllers/http/cliStatus.routes.js.map +1 -0
- package/dist/interface-adapters/controllers/http/health.routes.d.ts +9 -0
- package/dist/interface-adapters/controllers/http/health.routes.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/http/health.routes.js +23 -0
- package/dist/interface-adapters/controllers/http/health.routes.js.map +1 -0
- package/dist/interface-adapters/controllers/http/index.d.ts +6 -0
- package/dist/interface-adapters/controllers/http/index.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/http/index.js +6 -0
- package/dist/interface-adapters/controllers/http/index.js.map +1 -0
- package/dist/interface-adapters/controllers/http/logs.routes.d.ts +3 -0
- package/dist/interface-adapters/controllers/http/logs.routes.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/http/logs.routes.js +12 -0
- package/dist/interface-adapters/controllers/http/logs.routes.js.map +1 -0
- package/dist/interface-adapters/controllers/http/mrTracking.routes.d.ts +8 -0
- package/dist/interface-adapters/controllers/http/mrTracking.routes.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/http/mrTracking.routes.js +63 -0
- package/dist/interface-adapters/controllers/http/mrTracking.routes.js.map +1 -0
- package/dist/interface-adapters/controllers/http/mrTrackingAdvanced.routes.d.ts +12 -0
- package/dist/interface-adapters/controllers/http/mrTrackingAdvanced.routes.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/http/mrTrackingAdvanced.routes.js +265 -0
- package/dist/interface-adapters/controllers/http/mrTrackingAdvanced.routes.js.map +1 -0
- package/dist/interface-adapters/controllers/http/projectConfig.routes.d.ts +3 -0
- package/dist/interface-adapters/controllers/http/projectConfig.routes.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/http/projectConfig.routes.js +75 -0
- package/dist/interface-adapters/controllers/http/projectConfig.routes.js.map +1 -0
- package/dist/interface-adapters/controllers/http/reviews.routes.d.ts +18 -0
- package/dist/interface-adapters/controllers/http/reviews.routes.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/http/reviews.routes.js +96 -0
- package/dist/interface-adapters/controllers/http/reviews.routes.js.map +1 -0
- package/dist/interface-adapters/controllers/http/settings.routes.d.ts +3 -0
- package/dist/interface-adapters/controllers/http/settings.routes.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/http/settings.routes.js +21 -0
- package/dist/interface-adapters/controllers/http/settings.routes.js.map +1 -0
- package/dist/interface-adapters/controllers/http/stats.routes.d.ts +13 -0
- package/dist/interface-adapters/controllers/http/stats.routes.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/http/stats.routes.js +37 -0
- package/dist/interface-adapters/controllers/http/stats.routes.js.map +1 -0
- package/dist/interface-adapters/controllers/mcp/addAction.handler.d.ts +4 -0
- package/dist/interface-adapters/controllers/mcp/addAction.handler.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/mcp/addAction.handler.js +87 -0
- package/dist/interface-adapters/controllers/mcp/addAction.handler.js.map +1 -0
- package/dist/interface-adapters/controllers/mcp/completeAgent.handler.d.ts +4 -0
- package/dist/interface-adapters/controllers/mcp/completeAgent.handler.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/mcp/completeAgent.handler.js +62 -0
- package/dist/interface-adapters/controllers/mcp/completeAgent.handler.js.map +1 -0
- package/dist/interface-adapters/controllers/mcp/getThreads.handler.d.ts +4 -0
- package/dist/interface-adapters/controllers/mcp/getThreads.handler.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/mcp/getThreads.handler.js +32 -0
- package/dist/interface-adapters/controllers/mcp/getThreads.handler.js.map +1 -0
- package/dist/interface-adapters/controllers/mcp/getWorkflow.handler.d.ts +4 -0
- package/dist/interface-adapters/controllers/mcp/getWorkflow.handler.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/mcp/getWorkflow.handler.js +28 -0
- package/dist/interface-adapters/controllers/mcp/getWorkflow.handler.js.map +1 -0
- package/dist/interface-adapters/controllers/mcp/setPhase.handler.d.ts +4 -0
- package/dist/interface-adapters/controllers/mcp/setPhase.handler.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/mcp/setPhase.handler.js +60 -0
- package/dist/interface-adapters/controllers/mcp/setPhase.handler.js.map +1 -0
- package/dist/interface-adapters/controllers/mcp/startAgent.handler.d.ts +4 -0
- package/dist/interface-adapters/controllers/mcp/startAgent.handler.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/mcp/startAgent.handler.js +40 -0
- package/dist/interface-adapters/controllers/mcp/startAgent.handler.js.map +1 -0
- package/dist/interface-adapters/controllers/webhook/eventFilter.d.ts +71 -0
- package/dist/interface-adapters/controllers/webhook/eventFilter.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/webhook/eventFilter.js +252 -0
- package/dist/interface-adapters/controllers/webhook/eventFilter.js.map +1 -0
- package/dist/interface-adapters/controllers/webhook/github.controller.d.ts +5 -0
- package/dist/interface-adapters/controllers/webhook/github.controller.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/webhook/github.controller.js +266 -0
- package/dist/interface-adapters/controllers/webhook/github.controller.js.map +1 -0
- package/dist/interface-adapters/controllers/webhook/gitlab.controller.d.ts +5 -0
- package/dist/interface-adapters/controllers/webhook/gitlab.controller.d.ts.map +1 -0
- package/dist/interface-adapters/controllers/webhook/gitlab.controller.js +461 -0
- package/dist/interface-adapters/controllers/webhook/gitlab.controller.js.map +1 -0
- package/dist/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.d.ts +7 -0
- package/dist/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.js +71 -0
- package/dist/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.js.map +1 -0
- package/dist/interface-adapters/gateways/cli/reviewAction.gitlab.cli.gateway.d.ts +7 -0
- package/dist/interface-adapters/gateways/cli/reviewAction.gitlab.cli.gateway.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/cli/reviewAction.gitlab.cli.gateway.js +58 -0
- package/dist/interface-adapters/gateways/cli/reviewAction.gitlab.cli.gateway.js.map +1 -0
- package/dist/interface-adapters/gateways/diffMetadataFetch.github.gateway.d.ts +9 -0
- package/dist/interface-adapters/gateways/diffMetadataFetch.github.gateway.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/diffMetadataFetch.github.gateway.js +16 -0
- package/dist/interface-adapters/gateways/diffMetadataFetch.github.gateway.js.map +1 -0
- package/dist/interface-adapters/gateways/diffMetadataFetch.gitlab.gateway.d.ts +9 -0
- package/dist/interface-adapters/gateways/diffMetadataFetch.gitlab.gateway.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/diffMetadataFetch.gitlab.gateway.js +18 -0
- package/dist/interface-adapters/gateways/diffMetadataFetch.gitlab.gateway.js.map +1 -0
- package/dist/interface-adapters/gateways/fileSystem/reviewFile.fileSystem.d.ts +10 -0
- package/dist/interface-adapters/gateways/fileSystem/reviewFile.fileSystem.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/fileSystem/reviewFile.fileSystem.js +81 -0
- package/dist/interface-adapters/gateways/fileSystem/reviewFile.fileSystem.js.map +1 -0
- package/dist/interface-adapters/gateways/fileSystem/reviewRequestTracking.fileSystem.d.ts +22 -0
- package/dist/interface-adapters/gateways/fileSystem/reviewRequestTracking.fileSystem.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/fileSystem/reviewRequestTracking.fileSystem.js +142 -0
- package/dist/interface-adapters/gateways/fileSystem/reviewRequestTracking.fileSystem.js.map +1 -0
- package/dist/interface-adapters/gateways/fileSystem/stats.fileSystem.d.ts +8 -0
- package/dist/interface-adapters/gateways/fileSystem/stats.fileSystem.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/fileSystem/stats.fileSystem.js +37 -0
- package/dist/interface-adapters/gateways/fileSystem/stats.fileSystem.js.map +1 -0
- package/dist/interface-adapters/gateways/jobContext.memory.gateway.d.ts +8 -0
- package/dist/interface-adapters/gateways/jobContext.memory.gateway.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/jobContext.memory.gateway.js +13 -0
- package/dist/interface-adapters/gateways/jobContext.memory.gateway.js.map +1 -0
- package/dist/interface-adapters/gateways/reviewContext.fileSystem.gateway.d.ts +14 -0
- package/dist/interface-adapters/gateways/reviewContext.fileSystem.gateway.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/reviewContext.fileSystem.gateway.js +87 -0
- package/dist/interface-adapters/gateways/reviewContext.fileSystem.gateway.js.map +1 -0
- package/dist/interface-adapters/gateways/reviewFile.gateway.d.ts +18 -0
- package/dist/interface-adapters/gateways/reviewFile.gateway.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/reviewFile.gateway.js +2 -0
- package/dist/interface-adapters/gateways/reviewFile.gateway.js.map +1 -0
- package/dist/interface-adapters/gateways/reviewProgress.memory.gateway.d.ts +13 -0
- package/dist/interface-adapters/gateways/reviewProgress.memory.gateway.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/reviewProgress.memory.gateway.js +73 -0
- package/dist/interface-adapters/gateways/reviewProgress.memory.gateway.js.map +1 -0
- package/dist/interface-adapters/gateways/reviewRequestTracking.gateway.d.ts +19 -0
- package/dist/interface-adapters/gateways/reviewRequestTracking.gateway.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/reviewRequestTracking.gateway.js +2 -0
- package/dist/interface-adapters/gateways/reviewRequestTracking.gateway.js.map +1 -0
- package/dist/interface-adapters/gateways/stats.gateway.d.ts +7 -0
- package/dist/interface-adapters/gateways/stats.gateway.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/stats.gateway.js +2 -0
- package/dist/interface-adapters/gateways/stats.gateway.js.map +1 -0
- package/dist/interface-adapters/gateways/threadFetch.github.gateway.d.ts +10 -0
- package/dist/interface-adapters/gateways/threadFetch.github.gateway.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/threadFetch.github.gateway.js +33 -0
- package/dist/interface-adapters/gateways/threadFetch.github.gateway.js.map +1 -0
- package/dist/interface-adapters/gateways/threadFetch.gitlab.gateway.d.ts +10 -0
- package/dist/interface-adapters/gateways/threadFetch.gitlab.gateway.d.ts.map +1 -0
- package/dist/interface-adapters/gateways/threadFetch.gitlab.gateway.js +30 -0
- package/dist/interface-adapters/gateways/threadFetch.gitlab.gateway.js.map +1 -0
- package/dist/interface-adapters/presenters/jobStatus.presenter.d.ts +29 -0
- package/dist/interface-adapters/presenters/jobStatus.presenter.d.ts.map +1 -0
- package/dist/interface-adapters/presenters/jobStatus.presenter.js +57 -0
- package/dist/interface-adapters/presenters/jobStatus.presenter.js.map +1 -0
- package/dist/interface-adapters/presenters/reviewContextProgress.presenter.d.ts +8 -0
- package/dist/interface-adapters/presenters/reviewContextProgress.presenter.d.ts.map +1 -0
- package/dist/interface-adapters/presenters/reviewContextProgress.presenter.js +45 -0
- package/dist/interface-adapters/presenters/reviewContextProgress.presenter.js.map +1 -0
- package/dist/interface-adapters/presenters/reviewList.presenter.d.ts +22 -0
- package/dist/interface-adapters/presenters/reviewList.presenter.d.ts.map +1 -0
- package/dist/interface-adapters/presenters/reviewList.presenter.js +32 -0
- package/dist/interface-adapters/presenters/reviewList.presenter.js.map +1 -0
- package/dist/interface-adapters/services/projectStats.calculator.d.ts +8 -0
- package/dist/interface-adapters/services/projectStats.calculator.d.ts.map +1 -0
- package/dist/interface-adapters/services/projectStats.calculator.js +52 -0
- package/dist/interface-adapters/services/projectStats.calculator.js.map +1 -0
- package/dist/interface-adapters/views/dashboard/index.html +1537 -0
- package/dist/interface-adapters/views/dashboard/styles.css +1127 -0
- package/dist/main/cli.d.ts +12 -0
- package/dist/main/cli.d.ts.map +1 -0
- package/dist/main/cli.js +67 -0
- package/dist/main/cli.js.map +1 -0
- package/dist/main/dependencies.d.ts +20 -0
- package/dist/main/dependencies.d.ts.map +1 -0
- package/dist/main/dependencies.js +28 -0
- package/dist/main/dependencies.js.map +1 -0
- package/dist/main/mcpDependencies.d.ts +16 -0
- package/dist/main/mcpDependencies.d.ts.map +1 -0
- package/dist/main/mcpDependencies.js +35 -0
- package/dist/main/mcpDependencies.js.map +1 -0
- package/dist/main/routes.d.ts +4 -0
- package/dist/main/routes.d.ts.map +1 -0
- package/dist/main/routes.js +74 -0
- package/dist/main/routes.js.map +1 -0
- package/dist/main/server.d.ts +8 -0
- package/dist/main/server.d.ts.map +1 -0
- package/dist/main/server.js +54 -0
- package/dist/main/server.js.map +1 -0
- package/dist/main/websocket.d.ts +10 -0
- package/dist/main/websocket.d.ts.map +1 -0
- package/dist/main/websocket.js +109 -0
- package/dist/main/websocket.js.map +1 -0
- package/dist/mcp/mcpLogger.d.ts +9 -0
- package/dist/mcp/mcpLogger.d.ts.map +1 -0
- package/dist/mcp/mcpLogger.js +49 -0
- package/dist/mcp/mcpLogger.js.map +1 -0
- package/dist/mcp/mcpServerStdio.d.ts +13 -0
- package/dist/mcp/mcpServerStdio.d.ts.map +1 -0
- package/dist/mcp/mcpServerStdio.js +239 -0
- package/dist/mcp/mcpServerStdio.js.map +1 -0
- package/dist/mcp/server.d.ts +8 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +24 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/types.d.ts +27 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/mcp/types.js +2 -0
- package/dist/mcp/types.js.map +1 -0
- package/dist/mcpServer.d.ts +2 -0
- package/dist/mcpServer.d.ts.map +1 -0
- package/dist/mcpServer.js +16 -0
- package/dist/mcpServer.js.map +1 -0
- package/dist/queue/reviewQueue.d.ts +3 -0
- package/dist/queue/reviewQueue.d.ts.map +1 -0
- package/dist/queue/reviewQueue.js +4 -0
- package/dist/queue/reviewQueue.js.map +1 -0
- package/dist/security/verifier.d.ts +21 -0
- package/dist/security/verifier.d.ts.map +1 -0
- package/dist/security/verifier.js +67 -0
- package/dist/security/verifier.js.map +1 -0
- package/dist/server.d.ts +2 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +6 -0
- package/dist/server.js.map +1 -0
- package/dist/services/agentInstructionsBuilder.d.ts +4 -0
- package/dist/services/agentInstructionsBuilder.d.ts.map +1 -0
- package/dist/services/agentInstructionsBuilder.js +65 -0
- package/dist/services/agentInstructionsBuilder.js.map +1 -0
- package/dist/services/contextActionsExecutor.d.ts +19 -0
- package/dist/services/contextActionsExecutor.d.ts.map +1 -0
- package/dist/services/contextActionsExecutor.js +18 -0
- package/dist/services/contextActionsExecutor.js.map +1 -0
- package/dist/services/logService.d.ts +3 -0
- package/dist/services/logService.d.ts.map +1 -0
- package/dist/services/logService.js +4 -0
- package/dist/services/logService.js.map +1 -0
- package/dist/services/mrTrackingService.d.ts +196 -0
- package/dist/services/mrTrackingService.d.ts.map +1 -0
- package/dist/services/mrTrackingService.js +540 -0
- package/dist/services/mrTrackingService.js.map +1 -0
- package/dist/services/reviewContextWatcher.service.d.ts +15 -0
- package/dist/services/reviewContextWatcher.service.d.ts.map +1 -0
- package/dist/services/reviewContextWatcher.service.js +44 -0
- package/dist/services/reviewContextWatcher.service.js.map +1 -0
- package/dist/services/runtimeSettings.d.ts +3 -0
- package/dist/services/runtimeSettings.d.ts.map +1 -0
- package/dist/services/runtimeSettings.js +4 -0
- package/dist/services/runtimeSettings.js.map +1 -0
- package/dist/services/statsService.d.ts +76 -0
- package/dist/services/statsService.d.ts.map +1 -0
- package/dist/services/statsService.js +250 -0
- package/dist/services/statsService.js.map +1 -0
- package/dist/services/threadActionsExecutor.d.ts +26 -0
- package/dist/services/threadActionsExecutor.d.ts.map +1 -0
- package/dist/services/threadActionsExecutor.js +27 -0
- package/dist/services/threadActionsExecutor.js.map +1 -0
- package/dist/services/threadActionsParser.d.ts +4 -0
- package/dist/services/threadActionsParser.d.ts.map +1 -0
- package/dist/services/threadActionsParser.js +50 -0
- package/dist/services/threadActionsParser.js.map +1 -0
- package/dist/shared/foundation/executionGateway.base.d.ts +14 -0
- package/dist/shared/foundation/executionGateway.base.d.ts.map +1 -0
- package/dist/shared/foundation/executionGateway.base.js +30 -0
- package/dist/shared/foundation/executionGateway.base.js.map +1 -0
- package/dist/shared/foundation/gateway.base.d.ts +9 -0
- package/dist/shared/foundation/gateway.base.d.ts.map +1 -0
- package/dist/shared/foundation/gateway.base.js +2 -0
- package/dist/shared/foundation/gateway.base.js.map +1 -0
- package/dist/shared/foundation/guard.base.d.ts +8 -0
- package/dist/shared/foundation/guard.base.d.ts.map +1 -0
- package/dist/shared/foundation/guard.base.js +17 -0
- package/dist/shared/foundation/guard.base.js.map +1 -0
- package/dist/shared/foundation/presenter.base.d.ts +4 -0
- package/dist/shared/foundation/presenter.base.d.ts.map +1 -0
- package/dist/shared/foundation/presenter.base.js +2 -0
- package/dist/shared/foundation/presenter.base.js.map +1 -0
- package/dist/shared/foundation/usecase.base.d.ts +4 -0
- package/dist/shared/foundation/usecase.base.d.ts.map +1 -0
- package/dist/shared/foundation/usecase.base.js +2 -0
- package/dist/shared/foundation/usecase.base.js.map +1 -0
- package/dist/shared/services/claudePathResolver.d.ts +3 -0
- package/dist/shared/services/claudePathResolver.d.ts.map +1 -0
- package/dist/shared/services/claudePathResolver.js +62 -0
- package/dist/shared/services/claudePathResolver.js.map +1 -0
- package/dist/shared/services/dependencyChecker.d.ts +13 -0
- package/dist/shared/services/dependencyChecker.d.ts.map +1 -0
- package/dist/shared/services/dependencyChecker.js +37 -0
- package/dist/shared/services/dependencyChecker.js.map +1 -0
- package/dist/shared/services/mcpJobContext.d.ts +3 -0
- package/dist/shared/services/mcpJobContext.d.ts.map +1 -0
- package/dist/shared/services/mcpJobContext.js +10 -0
- package/dist/shared/services/mcpJobContext.js.map +1 -0
- package/dist/tests/factories/config.factory.d.ts +4 -0
- package/dist/tests/factories/config.factory.d.ts.map +1 -0
- package/dist/tests/factories/config.factory.js +27 -0
- package/dist/tests/factories/config.factory.js.map +1 -0
- package/dist/tests/factories/gitHubEvent.factory.d.ts +14 -0
- package/dist/tests/factories/gitHubEvent.factory.d.ts.map +1 -0
- package/dist/tests/factories/gitHubEvent.factory.js +93 -0
- package/dist/tests/factories/gitHubEvent.factory.js.map +1 -0
- package/dist/tests/factories/gitLabEvent.factory.d.ts +18 -0
- package/dist/tests/factories/gitLabEvent.factory.d.ts.map +1 -0
- package/dist/tests/factories/gitLabEvent.factory.js +129 -0
- package/dist/tests/factories/gitLabEvent.factory.js.map +1 -0
- package/dist/tests/factories/githubApiResponse.factory.d.ts +21 -0
- package/dist/tests/factories/githubApiResponse.factory.d.ts.map +1 -0
- package/dist/tests/factories/githubApiResponse.factory.js +25 -0
- package/dist/tests/factories/githubApiResponse.factory.js.map +1 -0
- package/dist/tests/factories/gitlabApiResponse.factory.d.ts +26 -0
- package/dist/tests/factories/gitlabApiResponse.factory.d.ts.map +1 -0
- package/dist/tests/factories/gitlabApiResponse.factory.js +9 -0
- package/dist/tests/factories/gitlabApiResponse.factory.js.map +1 -0
- package/dist/tests/factories/projectStats.factory.d.ts +9 -0
- package/dist/tests/factories/projectStats.factory.d.ts.map +1 -0
- package/dist/tests/factories/projectStats.factory.js +48 -0
- package/dist/tests/factories/projectStats.factory.js.map +1 -0
- package/dist/tests/factories/reviewContext.factory.d.ts +9 -0
- package/dist/tests/factories/reviewContext.factory.d.ts.map +1 -0
- package/dist/tests/factories/reviewContext.factory.js +59 -0
- package/dist/tests/factories/reviewContext.factory.js.map +1 -0
- package/dist/tests/factories/reviewJob.factory.d.ts +10 -0
- package/dist/tests/factories/reviewJob.factory.d.ts.map +1 -0
- package/dist/tests/factories/reviewJob.factory.js +43 -0
- package/dist/tests/factories/reviewJob.factory.js.map +1 -0
- package/dist/tests/factories/trackedMr.factory.d.ts +10 -0
- package/dist/tests/factories/trackedMr.factory.d.ts.map +1 -0
- package/dist/tests/factories/trackedMr.factory.js +65 -0
- package/dist/tests/factories/trackedMr.factory.js.map +1 -0
- package/dist/tests/factories/webhookEvent.factory.d.ts +8 -0
- package/dist/tests/factories/webhookEvent.factory.d.ts.map +1 -0
- package/dist/tests/factories/webhookEvent.factory.js +72 -0
- package/dist/tests/factories/webhookEvent.factory.js.map +1 -0
- package/dist/tests/integration/server.integration.test.d.ts +2 -0
- package/dist/tests/integration/server.integration.test.d.ts.map +1 -0
- package/dist/tests/integration/server.integration.test.js +93 -0
- package/dist/tests/integration/server.integration.test.js.map +1 -0
- package/dist/tests/stubs/fastifyRequest.stub.d.ts +9 -0
- package/dist/tests/stubs/fastifyRequest.stub.d.ts.map +1 -0
- package/dist/tests/stubs/fastifyRequest.stub.js +11 -0
- package/dist/tests/stubs/fastifyRequest.stub.js.map +1 -0
- package/dist/tests/stubs/logger.stub.d.ts +3 -0
- package/dist/tests/stubs/logger.stub.d.ts.map +1 -0
- package/dist/tests/stubs/logger.stub.js +14 -0
- package/dist/tests/stubs/logger.stub.js.map +1 -0
- package/dist/tests/stubs/reviewContextGateway.stub.d.ts +18 -0
- package/dist/tests/stubs/reviewContextGateway.stub.d.ts.map +1 -0
- package/dist/tests/stubs/reviewContextGateway.stub.js +69 -0
- package/dist/tests/stubs/reviewContextGateway.stub.js.map +1 -0
- package/dist/tests/stubs/reviewFile.stub.d.ts +13 -0
- package/dist/tests/stubs/reviewFile.stub.d.ts.map +1 -0
- package/dist/tests/stubs/reviewFile.stub.js +56 -0
- package/dist/tests/stubs/reviewFile.stub.js.map +1 -0
- package/dist/tests/stubs/reviewQueue.stub.d.ts +20 -0
- package/dist/tests/stubs/reviewQueue.stub.d.ts.map +1 -0
- package/dist/tests/stubs/reviewQueue.stub.js +46 -0
- package/dist/tests/stubs/reviewQueue.stub.js.map +1 -0
- package/dist/tests/stubs/reviewRequestTracking.stub.d.ts +21 -0
- package/dist/tests/stubs/reviewRequestTracking.stub.d.ts.map +1 -0
- package/dist/tests/stubs/reviewRequestTracking.stub.js +121 -0
- package/dist/tests/stubs/reviewRequestTracking.stub.js.map +1 -0
- package/dist/tests/stubs/stats.stub.d.ts +10 -0
- package/dist/tests/stubs/stats.stub.d.ts.map +1 -0
- package/dist/tests/stubs/stats.stub.js +17 -0
- package/dist/tests/stubs/stats.stub.js.map +1 -0
- package/dist/tests/stubs/threadFetch.stub.d.ts +8 -0
- package/dist/tests/stubs/threadFetch.stub.d.ts.map +1 -0
- package/dist/tests/stubs/threadFetch.stub.js +10 -0
- package/dist/tests/stubs/threadFetch.stub.js.map +1 -0
- package/dist/tests/units/claude/progressParser.test.d.ts +2 -0
- package/dist/tests/units/claude/progressParser.test.d.ts.map +1 -0
- package/dist/tests/units/claude/progressParser.test.js +202 -0
- package/dist/tests/units/claude/progressParser.test.js.map +1 -0
- package/dist/tests/units/cli/cli.integration.test.d.ts +2 -0
- package/dist/tests/units/cli/cli.integration.test.d.ts.map +1 -0
- package/dist/tests/units/cli/cli.integration.test.js +18 -0
- package/dist/tests/units/cli/cli.integration.test.js.map +1 -0
- package/dist/tests/units/cli/parseCliArgs.test.d.ts +2 -0
- package/dist/tests/units/cli/parseCliArgs.test.d.ts.map +1 -0
- package/dist/tests/units/cli/parseCliArgs.test.js +35 -0
- package/dist/tests/units/cli/parseCliArgs.test.js.map +1 -0
- package/dist/tests/units/entities/duration.valueObject.test.d.ts +2 -0
- package/dist/tests/units/entities/duration.valueObject.test.d.ts.map +1 -0
- package/dist/tests/units/entities/duration.valueObject.test.js +112 -0
- package/dist/tests/units/entities/duration.valueObject.test.js.map +1 -0
- package/dist/tests/units/entities/github/githubPullRequestEvent.guard.test.d.ts +2 -0
- package/dist/tests/units/entities/github/githubPullRequestEvent.guard.test.d.ts.map +1 -0
- package/dist/tests/units/entities/github/githubPullRequestEvent.guard.test.js +53 -0
- package/dist/tests/units/entities/github/githubPullRequestEvent.guard.test.js.map +1 -0
- package/dist/tests/units/entities/gitlab/gitlabMergeRequestEvent.guard.test.d.ts +2 -0
- package/dist/tests/units/entities/gitlab/gitlabMergeRequestEvent.guard.test.d.ts.map +1 -0
- package/dist/tests/units/entities/gitlab/gitlabMergeRequestEvent.guard.test.js +97 -0
- package/dist/tests/units/entities/gitlab/gitlabMergeRequestEvent.guard.test.js.map +1 -0
- package/dist/tests/units/entities/progress/progress.test.d.ts +2 -0
- package/dist/tests/units/entities/progress/progress.test.d.ts.map +1 -0
- package/dist/tests/units/entities/progress/progress.test.js +137 -0
- package/dist/tests/units/entities/progress/progress.test.js.map +1 -0
- package/dist/tests/units/entities/reviewAction/reviewAction.guard.test.d.ts +2 -0
- package/dist/tests/units/entities/reviewAction/reviewAction.guard.test.d.ts.map +1 -0
- package/dist/tests/units/entities/reviewAction/reviewAction.guard.test.js +89 -0
- package/dist/tests/units/entities/reviewAction/reviewAction.guard.test.js.map +1 -0
- package/dist/tests/units/entities/reviewContext/reviewContext.schema.test.d.ts +2 -0
- package/dist/tests/units/entities/reviewContext/reviewContext.schema.test.d.ts.map +1 -0
- package/dist/tests/units/entities/reviewContext/reviewContext.schema.test.js +176 -0
- package/dist/tests/units/entities/reviewContext/reviewContext.schema.test.js.map +1 -0
- package/dist/tests/units/entities/reviewContext/reviewContextAction.guard.test.d.ts +2 -0
- package/dist/tests/units/entities/reviewContext/reviewContextAction.guard.test.d.ts.map +1 -0
- package/dist/tests/units/entities/reviewContext/reviewContextAction.guard.test.js +88 -0
- package/dist/tests/units/entities/reviewContext/reviewContextAction.guard.test.js.map +1 -0
- package/dist/tests/units/entities/reviewContext/reviewContextAction.schema.test.d.ts +2 -0
- package/dist/tests/units/entities/reviewContext/reviewContextAction.schema.test.d.ts.map +1 -0
- package/dist/tests/units/entities/reviewContext/reviewContextAction.schema.test.js +132 -0
- package/dist/tests/units/entities/reviewContext/reviewContextAction.schema.test.js.map +1 -0
- package/dist/tests/units/entities/reviewRequestState.valueObject.test.d.ts +2 -0
- package/dist/tests/units/entities/reviewRequestState.valueObject.test.d.ts.map +1 -0
- package/dist/tests/units/entities/reviewRequestState.valueObject.test.js +100 -0
- package/dist/tests/units/entities/reviewRequestState.valueObject.test.js.map +1 -0
- package/dist/tests/units/entities/reviewScore.valueObject.test.d.ts +2 -0
- package/dist/tests/units/entities/reviewScore.valueObject.test.d.ts.map +1 -0
- package/dist/tests/units/entities/reviewScore.valueObject.test.js +90 -0
- package/dist/tests/units/entities/reviewScore.valueObject.test.js.map +1 -0
- package/dist/tests/units/factories/factories.test.d.ts +2 -0
- package/dist/tests/units/factories/factories.test.d.ts.map +1 -0
- package/dist/tests/units/factories/factories.test.js +100 -0
- package/dist/tests/units/factories/factories.test.js.map +1 -0
- package/dist/tests/units/frameworks/claude/ensureProjectMcpConfig.test.d.ts +2 -0
- package/dist/tests/units/frameworks/claude/ensureProjectMcpConfig.test.d.ts.map +1 -0
- package/dist/tests/units/frameworks/claude/ensureProjectMcpConfig.test.js +88 -0
- package/dist/tests/units/frameworks/claude/ensureProjectMcpConfig.test.js.map +1 -0
- package/dist/tests/units/frameworks/claude/mcpContext.test.d.ts +2 -0
- package/dist/tests/units/frameworks/claude/mcpContext.test.d.ts.map +1 -0
- package/dist/tests/units/frameworks/claude/mcpContext.test.js +88 -0
- package/dist/tests/units/frameworks/claude/mcpContext.test.js.map +1 -0
- package/dist/tests/units/frameworks/claude/resolveMcpServerPath.test.d.ts +2 -0
- package/dist/tests/units/frameworks/claude/resolveMcpServerPath.test.d.ts.map +1 -0
- package/dist/tests/units/frameworks/claude/resolveMcpServerPath.test.js +20 -0
- package/dist/tests/units/frameworks/claude/resolveMcpServerPath.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/adapters/platformAdapter.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/adapters/platformAdapter.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/adapters/platformAdapter.test.js +181 -0
- package/dist/tests/units/interface-adapters/adapters/platformAdapter.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/addAction.handler.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/addAction.handler.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/addAction.handler.test.js +84 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/addAction.handler.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/completeAgent.handler.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/completeAgent.handler.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/completeAgent.handler.test.js +71 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/completeAgent.handler.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/getThreads.handler.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/getThreads.handler.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/getThreads.handler.test.js +52 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/getThreads.handler.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/getWorkflow.handler.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/getWorkflow.handler.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/getWorkflow.handler.test.js +32 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/getWorkflow.handler.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/setPhase.handler.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/setPhase.handler.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/setPhase.handler.test.js +44 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/setPhase.handler.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/startAgent.handler.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/startAgent.handler.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/startAgent.handler.test.js +38 -0
- package/dist/tests/units/interface-adapters/controllers/mcp/startAgent.handler.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/webhook/eventFilter.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/controllers/webhook/eventFilter.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/webhook/eventFilter.test.js +389 -0
- package/dist/tests/units/interface-adapters/controllers/webhook/eventFilter.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/webhook/github.controller.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/controllers/webhook/github.controller.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/webhook/github.controller.test.js +284 -0
- package/dist/tests/units/interface-adapters/controllers/webhook/github.controller.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/webhook/gitlab.controller.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/controllers/webhook/gitlab.controller.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/controllers/webhook/gitlab.controller.test.js +202 -0
- package/dist/tests/units/interface-adapters/controllers/webhook/gitlab.controller.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.test.js +83 -0
- package/dist/tests/units/interface-adapters/gateways/cli/reviewAction.github.cli.gateway.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/cli/reviewAction.gitlab.cli.gateway.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/gateways/cli/reviewAction.gitlab.cli.gateway.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/cli/reviewAction.gitlab.cli.gateway.test.js +92 -0
- package/dist/tests/units/interface-adapters/gateways/cli/reviewAction.gitlab.cli.gateway.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/diffMetadataFetch.github.gateway.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/gateways/diffMetadataFetch.github.gateway.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/diffMetadataFetch.github.gateway.test.js +41 -0
- package/dist/tests/units/interface-adapters/gateways/diffMetadataFetch.github.gateway.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/diffMetadataFetch.gitlab.gateway.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/gateways/diffMetadataFetch.gitlab.gateway.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/diffMetadataFetch.gitlab.gateway.test.js +57 -0
- package/dist/tests/units/interface-adapters/gateways/diffMetadataFetch.gitlab.gateway.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/reviewContext.fileSystem.gateway.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/gateways/reviewContext.fileSystem.gateway.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/reviewContext.fileSystem.gateway.test.js +204 -0
- package/dist/tests/units/interface-adapters/gateways/reviewContext.fileSystem.gateway.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/reviewFile.gateway.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/gateways/reviewFile.gateway.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/reviewFile.gateway.test.js +126 -0
- package/dist/tests/units/interface-adapters/gateways/reviewFile.gateway.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/reviewProgress.memory.gateway.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/gateways/reviewProgress.memory.gateway.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/reviewProgress.memory.gateway.test.js +137 -0
- package/dist/tests/units/interface-adapters/gateways/reviewProgress.memory.gateway.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/reviewRequestTracking.gateway.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/gateways/reviewRequestTracking.gateway.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/reviewRequestTracking.gateway.test.js +242 -0
- package/dist/tests/units/interface-adapters/gateways/reviewRequestTracking.gateway.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/stats.gateway.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/gateways/stats.gateway.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/stats.gateway.test.js +52 -0
- package/dist/tests/units/interface-adapters/gateways/stats.gateway.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/threadFetch.github.gateway.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/gateways/threadFetch.github.gateway.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/threadFetch.github.gateway.test.js +41 -0
- package/dist/tests/units/interface-adapters/gateways/threadFetch.github.gateway.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/threadFetch.gitlab.gateway.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/gateways/threadFetch.gitlab.gateway.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/gateways/threadFetch.gitlab.gateway.test.js +31 -0
- package/dist/tests/units/interface-adapters/gateways/threadFetch.gitlab.gateway.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/presenters/jobStatus.presenter.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/presenters/jobStatus.presenter.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/presenters/jobStatus.presenter.test.js +128 -0
- package/dist/tests/units/interface-adapters/presenters/jobStatus.presenter.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/presenters/reviewContextProgress.presenter.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/presenters/reviewContextProgress.presenter.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/presenters/reviewContextProgress.presenter.test.js +83 -0
- package/dist/tests/units/interface-adapters/presenters/reviewContextProgress.presenter.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/presenters/reviewList.presenter.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/presenters/reviewList.presenter.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/presenters/reviewList.presenter.test.js +64 -0
- package/dist/tests/units/interface-adapters/presenters/reviewList.presenter.test.js.map +1 -0
- package/dist/tests/units/interface-adapters/services/projectStats.calculator.test.d.ts +2 -0
- package/dist/tests/units/interface-adapters/services/projectStats.calculator.test.d.ts.map +1 -0
- package/dist/tests/units/interface-adapters/services/projectStats.calculator.test.js +85 -0
- package/dist/tests/units/interface-adapters/services/projectStats.calculator.test.js.map +1 -0
- package/dist/tests/units/main/dependencies.test.d.ts +2 -0
- package/dist/tests/units/main/dependencies.test.d.ts.map +1 -0
- package/dist/tests/units/main/dependencies.test.js +43 -0
- package/dist/tests/units/main/dependencies.test.js.map +1 -0
- package/dist/tests/units/main/executeStart.test.d.ts +2 -0
- package/dist/tests/units/main/executeStart.test.d.ts.map +1 -0
- package/dist/tests/units/main/executeStart.test.js +61 -0
- package/dist/tests/units/main/executeStart.test.js.map +1 -0
- package/dist/tests/units/main/mcpDependencies.test.d.ts +2 -0
- package/dist/tests/units/main/mcpDependencies.test.d.ts.map +1 -0
- package/dist/tests/units/main/mcpDependencies.test.js +56 -0
- package/dist/tests/units/main/mcpDependencies.test.js.map +1 -0
- package/dist/tests/units/main/websocket.test.d.ts +2 -0
- package/dist/tests/units/main/websocket.test.d.ts.map +1 -0
- package/dist/tests/units/main/websocket.test.js +63 -0
- package/dist/tests/units/main/websocket.test.js.map +1 -0
- package/dist/tests/units/mcp/mcpServerStdio.test.d.ts +2 -0
- package/dist/tests/units/mcp/mcpServerStdio.test.d.ts.map +1 -0
- package/dist/tests/units/mcp/mcpServerStdio.test.js +179 -0
- package/dist/tests/units/mcp/mcpServerStdio.test.js.map +1 -0
- package/dist/tests/units/mcp/server.test.d.ts +2 -0
- package/dist/tests/units/mcp/server.test.d.ts.map +1 -0
- package/dist/tests/units/mcp/server.test.js +85 -0
- package/dist/tests/units/mcp/server.test.js.map +1 -0
- package/dist/tests/units/security/verifier.test.d.ts +2 -0
- package/dist/tests/units/security/verifier.test.d.ts.map +1 -0
- package/dist/tests/units/security/verifier.test.js +200 -0
- package/dist/tests/units/security/verifier.test.js.map +1 -0
- package/dist/tests/units/services/contextActionsExecutor.test.d.ts +2 -0
- package/dist/tests/units/services/contextActionsExecutor.test.d.ts.map +1 -0
- package/dist/tests/units/services/contextActionsExecutor.test.js +112 -0
- package/dist/tests/units/services/contextActionsExecutor.test.js.map +1 -0
- package/dist/tests/units/services/mrTrackingRemoveMr.test.d.ts +2 -0
- package/dist/tests/units/services/mrTrackingRemoveMr.test.d.ts.map +1 -0
- package/dist/tests/units/services/mrTrackingRemoveMr.test.js +155 -0
- package/dist/tests/units/services/mrTrackingRemoveMr.test.js.map +1 -0
- package/dist/tests/units/services/mrTrackingService.autoFollowup.test.d.ts +2 -0
- package/dist/tests/units/services/mrTrackingService.autoFollowup.test.d.ts.map +1 -0
- package/dist/tests/units/services/mrTrackingService.autoFollowup.test.js +82 -0
- package/dist/tests/units/services/mrTrackingService.autoFollowup.test.js.map +1 -0
- package/dist/tests/units/services/reviewContextWatcher.service.test.d.ts +2 -0
- package/dist/tests/units/services/reviewContextWatcher.service.test.d.ts.map +1 -0
- package/dist/tests/units/services/reviewContextWatcher.service.test.js +112 -0
- package/dist/tests/units/services/reviewContextWatcher.service.test.js.map +1 -0
- package/dist/tests/units/services/threadActionsExecutor.test.d.ts +2 -0
- package/dist/tests/units/services/threadActionsExecutor.test.d.ts.map +1 -0
- package/dist/tests/units/services/threadActionsExecutor.test.js +206 -0
- package/dist/tests/units/services/threadActionsExecutor.test.js.map +1 -0
- package/dist/tests/units/services/threadActionsParser.test.d.ts +2 -0
- package/dist/tests/units/services/threadActionsParser.test.d.ts.map +1 -0
- package/dist/tests/units/services/threadActionsParser.test.js +148 -0
- package/dist/tests/units/services/threadActionsParser.test.js.map +1 -0
- package/dist/tests/units/shared/foundation/foundation.contracts.test.d.ts +2 -0
- package/dist/tests/units/shared/foundation/foundation.contracts.test.d.ts.map +1 -0
- package/dist/tests/units/shared/foundation/foundation.contracts.test.js +46 -0
- package/dist/tests/units/shared/foundation/foundation.contracts.test.js.map +1 -0
- package/dist/tests/units/shared/foundation/guard.base.test.d.ts +2 -0
- package/dist/tests/units/shared/foundation/guard.base.test.d.ts.map +1 -0
- package/dist/tests/units/shared/foundation/guard.base.test.js +40 -0
- package/dist/tests/units/shared/foundation/guard.base.test.js.map +1 -0
- package/dist/tests/units/shared/services/claudePathResolver.test.d.ts +2 -0
- package/dist/tests/units/shared/services/claudePathResolver.test.d.ts.map +1 -0
- package/dist/tests/units/shared/services/claudePathResolver.test.js +61 -0
- package/dist/tests/units/shared/services/claudePathResolver.test.js.map +1 -0
- package/dist/tests/units/shared/services/dependencyChecker.test.d.ts +2 -0
- package/dist/tests/units/shared/services/dependencyChecker.test.d.ts.map +1 -0
- package/dist/tests/units/shared/services/dependencyChecker.test.js +35 -0
- package/dist/tests/units/shared/services/dependencyChecker.test.js.map +1 -0
- package/dist/tests/units/shared/services/mcpJobContext.test.d.ts +2 -0
- package/dist/tests/units/shared/services/mcpJobContext.test.d.ts.map +1 -0
- package/dist/tests/units/shared/services/mcpJobContext.test.js +38 -0
- package/dist/tests/units/shared/services/mcpJobContext.test.js.map +1 -0
- package/dist/tests/units/types/progress.test.d.ts +2 -0
- package/dist/tests/units/types/progress.test.d.ts.map +1 -0
- package/dist/tests/units/types/progress.test.js +135 -0
- package/dist/tests/units/types/progress.test.js.map +1 -0
- package/dist/tests/units/usecases/cancelReview.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/cancelReview.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/cancelReview.usecase.test.js +57 -0
- package/dist/tests/units/usecases/cancelReview.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/handleReviewRequestPush.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/handleReviewRequestPush.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/handleReviewRequestPush.usecase.test.js +124 -0
- package/dist/tests/units/usecases/handleReviewRequestPush.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/mcp/addAction.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/mcp/addAction.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/mcp/addAction.usecase.test.js +123 -0
- package/dist/tests/units/usecases/mcp/addAction.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/mcp/completeAgent.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/mcp/completeAgent.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/mcp/completeAgent.usecase.test.js +67 -0
- package/dist/tests/units/usecases/mcp/completeAgent.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/mcp/getThreads.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/mcp/getThreads.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/mcp/getThreads.usecase.test.js +77 -0
- package/dist/tests/units/usecases/mcp/getThreads.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/mcp/getWorkflow.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/mcp/getWorkflow.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/mcp/getWorkflow.usecase.test.js +55 -0
- package/dist/tests/units/usecases/mcp/getWorkflow.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/mcp/setPhase.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/mcp/setPhase.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/mcp/setPhase.usecase.test.js +41 -0
- package/dist/tests/units/usecases/mcp/setPhase.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/mcp/startAgent.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/mcp/startAgent.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/mcp/startAgent.usecase.test.js +42 -0
- package/dist/tests/units/usecases/mcp/startAgent.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/tracking/checkFollowupNeeded.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/tracking/checkFollowupNeeded.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/tracking/checkFollowupNeeded.usecase.test.js +71 -0
- package/dist/tests/units/usecases/tracking/checkFollowupNeeded.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/tracking/recordPush.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/tracking/recordPush.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/tracking/recordPush.usecase.test.js +22 -0
- package/dist/tests/units/usecases/tracking/recordPush.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/tracking/recordReviewCompletion.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/tracking/recordReviewCompletion.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/tracking/recordReviewCompletion.usecase.test.js +106 -0
- package/dist/tests/units/usecases/tracking/recordReviewCompletion.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/tracking/syncThreads.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/tracking/syncThreads.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/tracking/syncThreads.usecase.test.js +76 -0
- package/dist/tests/units/usecases/tracking/syncThreads.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/tracking/trackAssignment.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/tracking/trackAssignment.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/tracking/trackAssignment.usecase.test.js +70 -0
- package/dist/tests/units/usecases/tracking/trackAssignment.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/tracking/transitionState.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/tracking/transitionState.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/tracking/transitionState.usecase.test.js +48 -0
- package/dist/tests/units/usecases/tracking/transitionState.usecase.test.js.map +1 -0
- package/dist/tests/units/usecases/triggerReview.usecase.test.d.ts +2 -0
- package/dist/tests/units/usecases/triggerReview.usecase.test.d.ts.map +1 -0
- package/dist/tests/units/usecases/triggerReview.usecase.test.js +103 -0
- package/dist/tests/units/usecases/triggerReview.usecase.test.js.map +1 -0
- package/dist/types/progress.d.ts +55 -0
- package/dist/types/progress.d.ts.map +1 -0
- package/dist/types/progress.js +63 -0
- package/dist/types/progress.js.map +1 -0
- package/dist/usecases/cancelReview.usecase.d.ts +21 -0
- package/dist/usecases/cancelReview.usecase.d.ts.map +1 -0
- package/dist/usecases/cancelReview.usecase.js +19 -0
- package/dist/usecases/cancelReview.usecase.js.map +1 -0
- package/dist/usecases/handleReviewRequestPush.usecase.d.ts +26 -0
- package/dist/usecases/handleReviewRequestPush.usecase.d.ts.map +1 -0
- package/dist/usecases/handleReviewRequestPush.usecase.js +45 -0
- package/dist/usecases/handleReviewRequestPush.usecase.js.map +1 -0
- package/dist/usecases/mcp/addAction.usecase.d.ts +33 -0
- package/dist/usecases/mcp/addAction.usecase.d.ts.map +1 -0
- package/dist/usecases/mcp/addAction.usecase.js +94 -0
- package/dist/usecases/mcp/addAction.usecase.js.map +1 -0
- package/dist/usecases/mcp/completeAgent.usecase.d.ts +18 -0
- package/dist/usecases/mcp/completeAgent.usecase.d.ts.map +1 -0
- package/dist/usecases/mcp/completeAgent.usecase.js +20 -0
- package/dist/usecases/mcp/completeAgent.usecase.js.map +1 -0
- package/dist/usecases/mcp/getThreads.usecase.d.ts +16 -0
- package/dist/usecases/mcp/getThreads.usecase.d.ts.map +1 -0
- package/dist/usecases/mcp/getThreads.usecase.js +22 -0
- package/dist/usecases/mcp/getThreads.usecase.js.map +1 -0
- package/dist/usecases/mcp/getWorkflow.usecase.d.ts +28 -0
- package/dist/usecases/mcp/getWorkflow.usecase.d.ts.map +1 -0
- package/dist/usecases/mcp/getWorkflow.usecase.js +36 -0
- package/dist/usecases/mcp/getWorkflow.usecase.js.map +1 -0
- package/dist/usecases/mcp/setPhase.usecase.d.ts +15 -0
- package/dist/usecases/mcp/setPhase.usecase.d.ts.map +1 -0
- package/dist/usecases/mcp/setPhase.usecase.js +16 -0
- package/dist/usecases/mcp/setPhase.usecase.js.map +1 -0
- package/dist/usecases/mcp/startAgent.usecase.d.ts +15 -0
- package/dist/usecases/mcp/startAgent.usecase.d.ts.map +1 -0
- package/dist/usecases/mcp/startAgent.usecase.js +18 -0
- package/dist/usecases/mcp/startAgent.usecase.js.map +1 -0
- package/dist/usecases/tracking/checkFollowupNeeded.usecase.d.ts +14 -0
- package/dist/usecases/tracking/checkFollowupNeeded.usecase.d.ts.map +1 -0
- package/dist/usecases/tracking/checkFollowupNeeded.usecase.js +17 -0
- package/dist/usecases/tracking/checkFollowupNeeded.usecase.js.map +1 -0
- package/dist/usecases/tracking/recordPush.usecase.d.ts +15 -0
- package/dist/usecases/tracking/recordPush.usecase.d.ts.map +1 -0
- package/dist/usecases/tracking/recordPush.usecase.js +10 -0
- package/dist/usecases/tracking/recordPush.usecase.js.map +1 -0
- package/dist/usecases/tracking/recordReviewCompletion.usecase.d.ts +24 -0
- package/dist/usecases/tracking/recordReviewCompletion.usecase.d.ts.map +1 -0
- package/dist/usecases/tracking/recordReviewCompletion.usecase.js +52 -0
- package/dist/usecases/tracking/recordReviewCompletion.usecase.js.map +1 -0
- package/dist/usecases/tracking/syncThreads.usecase.d.ts +16 -0
- package/dist/usecases/tracking/syncThreads.usecase.d.ts.map +1 -0
- package/dist/usecases/tracking/syncThreads.usecase.js +26 -0
- package/dist/usecases/tracking/syncThreads.usecase.js.map +1 -0
- package/dist/usecases/tracking/trackAssignment.usecase.d.ts +28 -0
- package/dist/usecases/tracking/trackAssignment.usecase.d.ts.map +1 -0
- package/dist/usecases/tracking/trackAssignment.usecase.js +69 -0
- package/dist/usecases/tracking/trackAssignment.usecase.js.map +1 -0
- package/dist/usecases/tracking/transitionState.usecase.d.ts +14 -0
- package/dist/usecases/tracking/transitionState.usecase.d.ts.map +1 -0
- package/dist/usecases/tracking/transitionState.usecase.js +22 -0
- package/dist/usecases/tracking/transitionState.usecase.js.map +1 -0
- package/dist/usecases/triggerReview.usecase.d.ts +41 -0
- package/dist/usecases/triggerReview.usecase.d.ts.map +1 -0
- package/dist/usecases/triggerReview.usecase.js +34 -0
- package/dist/usecases/triggerReview.usecase.js.map +1 -0
- package/package.json +82 -0
- package/scripts/copyAssets.mjs +10 -0
- package/scripts/launcher.sh +35 -0
- package/templates/SETUP.md +183 -0
- package/templates/SKILL.md.template +207 -0
- package/templates/claude-mcp-config.example.json +12 -0
- package/templates/config.json.template +15 -0
- package/templates/en/followup-basic/README.md +66 -0
- package/templates/en/followup-basic/SKILL.md +317 -0
- package/templates/en/review-basic/README.md +75 -0
- package/templates/en/review-basic/SKILL.md +160 -0
- package/templates/en/review-with-agents/README.md +78 -0
- package/templates/en/review-with-agents/SKILL.md +225 -0
- package/templates/fr/followup-basic/README.md +66 -0
- package/templates/fr/followup-basic/SKILL.md +317 -0
- package/templates/fr/review-basic/README.md +59 -0
- package/templates/fr/review-basic/SKILL.md +160 -0
- package/templates/fr/review-with-agents/README.md +54 -0
- package/templates/fr/review-with-agents/SKILL.md +225 -0
- package/templates/skills/review-bootstrap/SKILL.md +119 -0
- package/templates/skills/review-with-mcp.md +133 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [3.0.0](https://github.com/DGouron/claude-review-automation/compare/reviewflow-v2.0.1...reviewflow-v3.0.0) (2026-02-08)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### ⚠ BREAKING CHANGES
|
|
12
|
+
|
|
13
|
+
* **deps:** @fastify/websocket v9+ passes WebSocket directly instead of connection.socket wrapper
|
|
14
|
+
* **security:** Users must now copy config.example.json to config.json and fill in their own values.
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
* add CLI entry point and fix distribution blockers (MVP tickets [#1](https://github.com/DGouron/claude-review-automation/issues/1)-[#4](https://github.com/DGouron/claude-review-automation/issues/4)) ([9df0773](https://github.com/DGouron/claude-review-automation/commit/9df0773ebf5a8716b0785ec9d26e4a29e6711368))
|
|
19
|
+
* add deployment docs and restructure architecture ([2c26fa6](https://github.com/DGouron/claude-review-automation/commit/2c26fa662a0e25362d774a6ebd075d4f3a8cf5ac))
|
|
20
|
+
* add dynamic dashboard tabs and followup job tracking ([07b85b4](https://github.com/DGouron/claude-review-automation/commit/07b85b4da0ce14384a0792ed11a52bb0e21f166a))
|
|
21
|
+
* add gateway pattern for Clean Architecture decoupling ([462c134](https://github.com/DGouron/claude-review-automation/commit/462c134355ada077d8e5a71670d5359668a693de))
|
|
22
|
+
* add memory guard and fix followup debug logging ([c7a2c34](https://github.com/DGouron/claude-review-automation/commit/c7a2c34c23bd427026897d0c8b33789ef321a7d9))
|
|
23
|
+
* add POST_INLINE_COMMENT MCP action ([a8b9f28](https://github.com/DGouron/claude-review-automation/commit/a8b9f28aba0acfb175b6ea3f1e461702644cdd4b))
|
|
24
|
+
* add POST_INLINE_COMMENT MCP action for platform-agnostic inline comments ([4d739c5](https://github.com/DGouron/claude-review-automation/commit/4d739c59799264c708de05e980be88d8188b70a0))
|
|
25
|
+
* add presenters and shared foundation interfaces ([7ba223c](https://github.com/DGouron/claude-review-automation/commit/7ba223c3b16fa88eb655b7e74f494e7930b2d3ee))
|
|
26
|
+
* add project config loader with multi-platform support ([a650eb9](https://github.com/DGouron/claude-review-automation/commit/a650eb9daf728598a1caf42262897e8b2002e278))
|
|
27
|
+
* add real-time updates, MR tracking, and dashboard improvements ([c61edbc](https://github.com/DGouron/claude-review-automation/commit/c61edbcf61da1b0683d360544619eed658b46965))
|
|
28
|
+
* add thread sync, GitHub support, templates, and fix stats parsing ([a710032](https://github.com/DGouron/claude-review-automation/commit/a710032e624617b3752c6cc4ae8f57e57131e42f))
|
|
29
|
+
* add use cases, ACL, value objects and ubiquitous language ([d33787f](https://github.com/DGouron/claude-review-automation/commit/d33787f96a889c4dd5830ae86e2b3b4bc61be97e))
|
|
30
|
+
* add Vitest test infrastructure with 90 tests ([6b54daa](https://github.com/DGouron/claude-review-automation/commit/6b54daa450de80de037bb2239840f2d4ef3d6353))
|
|
31
|
+
* auto-cleanup tracking when MR/PR is closed ([78ecaa3](https://github.com/DGouron/claude-review-automation/commit/78ecaa3e493692b6187b114f4e5417a621c85564))
|
|
32
|
+
* **cli:** add automatic Claude CLI path resolution ([b2a77c1](https://github.com/DGouron/claude-review-automation/commit/b2a77c1e99a5d2eb4b2cada56596f983c3da1c18))
|
|
33
|
+
* composition root completion + bug fixes ([f271240](https://github.com/DGouron/claude-review-automation/commit/f27124094ea373b26b0af88c10c32ac1c331e9a9))
|
|
34
|
+
* **context:** add Claude write capability to review context file ([47e2d97](https://github.com/DGouron/claude-review-automation/commit/47e2d97ec89537216da0a42a523d551649b4a422))
|
|
35
|
+
* **context:** add Claude write capability to review context file ([8a3a020](https://github.com/DGouron/claude-review-automation/commit/8a3a020ec5c6d0c8a0382c7579a9f199a86bcf6b))
|
|
36
|
+
* **context:** add live tracking of review context file ([5644150](https://github.com/DGouron/claude-review-automation/commit/5644150cac72b511bfaaeaf08e322328723b87d3))
|
|
37
|
+
* **context:** add live tracking of review context file ([a62b00d](https://github.com/DGouron/claude-review-automation/commit/a62b00d95ad0632cb9b3a7616487090a35bc64e1))
|
|
38
|
+
* **context:** add review context file infrastructure ([d736c0e](https://github.com/DGouron/claude-review-automation/commit/d736c0e967348561d622780c486e1b681fc2cb15))
|
|
39
|
+
* **context:** integrate review context in controllers ([d2db97b](https://github.com/DGouron/claude-review-automation/commit/d2db97b61d22a69042e39d725ebda5a4ec856a4a))
|
|
40
|
+
* **context:** review context file infrastructure (ticket 007) ([982931a](https://github.com/DGouron/claude-review-automation/commit/982931a3acba6015cba19b76be33d806c8c2a28c))
|
|
41
|
+
* **dashboard:** add auto-followup toggle and cancel review button ([1f32df8](https://github.com/DGouron/claude-review-automation/commit/1f32df8d25f22d6ae291e1f7e8f310722c89c536))
|
|
42
|
+
* display PR/MR title in review history ([5662859](https://github.com/DGouron/claude-review-automation/commit/566285950fc72b77a355535c00b3850b2b1b7f50))
|
|
43
|
+
* **docs:** add custom theme with cyan brand colors and typography ([3cf5560](https://github.com/DGouron/claude-review-automation/commit/3cf5560b54982e01d09a7fb4d9cdce4c95516e45))
|
|
44
|
+
* **docs:** add landing page with hero section and feature grid ([a38a487](https://github.com/DGouron/claude-review-automation/commit/a38a487c601fda92d03583d8249906eb648ab7a9))
|
|
45
|
+
* **docs:** add logo, favicon, and social media meta tags ([f1aeedc](https://github.com/DGouron/claude-review-automation/commit/f1aeedcd80e2a0ba1f0dfb0e0ff262afdf70eee2))
|
|
46
|
+
* **docs:** add quick start steps and platform badges to landing page ([013b6a1](https://github.com/DGouron/claude-review-automation/commit/013b6a14ba8465d9c1edeead15dba7d1fa63adad))
|
|
47
|
+
* **docs:** install VitePress and configure foundation ([5008acc](https://github.com/DGouron/claude-review-automation/commit/5008accaa2f5203d35d49479b7e98aef2197614a))
|
|
48
|
+
* **entities:** unify ThreadAction and ReviewContextAction into ReviewAction ([dcece2f](https://github.com/DGouron/claude-review-automation/commit/dcece2fd79a854f6179ef3c45ea1d96c51e89448))
|
|
49
|
+
* **gateways:** add GitHubReviewActionCliGateway and backward compat wrappers ([21e269a](https://github.com/DGouron/claude-review-automation/commit/21e269a60567251d460abe4f06ee1dd4a8fbebfe))
|
|
50
|
+
* GitHub PR tracking + dashboard UI fixes ([1bccfc1](https://github.com/DGouron/claude-review-automation/commit/1bccfc15eb9af93f9449cac71bfc77930e732d10))
|
|
51
|
+
* **main:** complete Composition Root with full feature parity ([3521f89](https://github.com/DGouron/claude-review-automation/commit/3521f89a358ed2d254fb25811f4f95033b02e926))
|
|
52
|
+
* **main:** create Composition Root for Clean Architecture ([90ae639](https://github.com/DGouron/claude-review-automation/commit/90ae6390fce460343cf36abcb7b887f32f9db14b))
|
|
53
|
+
* **main:** create Composition Root structure ([d8bc0b1](https://github.com/DGouron/claude-review-automation/commit/d8bc0b1e191d9a44f76766bdc9dd67325a071e70))
|
|
54
|
+
* **mcp:** add file-based context for MCP server ([9d0c8d6](https://github.com/DGouron/claude-review-automation/commit/9d0c8d6c515cf14cd0517341dee89610946ccb18))
|
|
55
|
+
* **mcp:** add file-based logging for MCP server debugging ([ab2739f](https://github.com/DGouron/claude-review-automation/commit/ab2739f264b097941696e65bdd716aacd561dce2))
|
|
56
|
+
* **mcp:** add MCP handlers and fix dashboard assignee attribution ([56a561f](https://github.com/DGouron/claude-review-automation/commit/56a561fb8405aba657c68d1d0afe890c08eedd05))
|
|
57
|
+
* **mcp:** add MCP server infrastructure with progress gateway ([fdd6d62](https://github.com/DGouron/claude-review-automation/commit/fdd6d6235b80b5c658d4fe22da64d816c16f095e))
|
|
58
|
+
* **mcp:** auto-create .mcp.json in project directory ([278144c](https://github.com/DGouron/claude-review-automation/commit/278144c70b8e6ab0d96654009fd0f86dfb83ed47))
|
|
59
|
+
* **mcp:** inject authoritative MCP instructions via system prompt ([670cb9d](https://github.com/DGouron/claude-review-automation/commit/670cb9d6b186d0de0b0a5011d5f7e6734bea37dc))
|
|
60
|
+
* **mcp:** MCP server infrastructure for real-time review progress ([752474b](https://github.com/DGouron/claude-review-automation/commit/752474bcb80a513b6635ff6b7150bce7a329153c))
|
|
61
|
+
* **mcp:** per-job context files and lazy-loading for concurrent reviews ([5be6a23](https://github.com/DGouron/claude-review-automation/commit/5be6a2320e9dc208864ff3ca5f05cedf10a5e253))
|
|
62
|
+
* MVP reviewflow CLI package distribution ([07294bb](https://github.com/DGouron/claude-review-automation/commit/07294bbbe5524f92ddd97af35413c05f53ac09a7))
|
|
63
|
+
* rename package from claude-review-automation to reviewflow ([7850479](https://github.com/DGouron/claude-review-automation/commit/78504792fffe5038791905847cac478f6c80e105))
|
|
64
|
+
* simplify config and add portable launcher ([f6048fa](https://github.com/DGouron/claude-review-automation/commit/f6048fa78d4e87d3473f404a5f38cf6691de9386))
|
|
65
|
+
* Standardized review markers with templates and documentation ([c613d7c](https://github.com/DGouron/claude-review-automation/commit/c613d7cb9404b01c060bdd8793f4d739e1ce6738))
|
|
66
|
+
* **templates:** add EN/FR skill templates (SPEC-003) ([42add0b](https://github.com/DGouron/claude-review-automation/commit/42add0b3700a6c968f009ff2966095ac0c4bf247))
|
|
67
|
+
* **thread-actions:** add standardized review markers parsing and execution ([f4d5353](https://github.com/DGouron/claude-review-automation/commit/f4d5353fbd8bfbbde53bb5d48ab76e102cefa508))
|
|
68
|
+
* **webhook:** add label trigger for GitHub reviews ([7a33628](https://github.com/DGouron/claude-review-automation/commit/7a33628940fa4324013630b6e1af19ea2ca75e01))
|
|
69
|
+
* **webhook:** add MR tracking for GitHub PRs ([7915bb1](https://github.com/DGouron/claude-review-automation/commit/7915bb128704e2b860819e86379a8f5000fe1aa4))
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
### Fixed
|
|
73
|
+
|
|
74
|
+
* address PR [#20](https://github.com/DGouron/claude-review-automation/issues/20) review blocking issues ([43c2b4f](https://github.com/DGouron/claude-review-automation/commit/43c2b4f3c61d57a7ad43657946e7fb421b0f4125))
|
|
75
|
+
* address PR [#20](https://github.com/DGouron/claude-review-automation/issues/20) review important items ([#3](https://github.com/DGouron/claude-review-automation/issues/3) and [#4](https://github.com/DGouron/claude-review-automation/issues/4)) ([05aaaff](https://github.com/DGouron/claude-review-automation/commit/05aaaffdf0ab38ccd19d5a080e9fd53657fd8236))
|
|
76
|
+
* address PR [#7](https://github.com/DGouron/claude-review-automation/issues/7) review feedback - configurable polling and websocket tests ([5fcc278](https://github.com/DGouron/claude-review-automation/commit/5fcc278975ae5a5403e18ed323af278f7cdada23))
|
|
77
|
+
* address PR review comments ([cf3641a](https://github.com/DGouron/claude-review-automation/commit/cf3641ae316e978d8e77a7d01b5d0c9d2ad3c1a1))
|
|
78
|
+
* address PR review findings (non-null assertion, DRY, DIP) ([3553317](https://github.com/DGouron/claude-review-automation/commit/3553317298b57047543b3705e98389b90e43195e))
|
|
79
|
+
* **build:** update dashboard path in build script ([dafa4d3](https://github.com/DGouron/claude-review-automation/commit/dafa4d3aa5a6d5cabd80de6657ff54c4f2b568d8))
|
|
80
|
+
* **dashboard:** correct API status endpoint URL ([048cd84](https://github.com/DGouron/claude-review-automation/commit/048cd84d989e1b75895b8cfdae50b18e47fd11dd))
|
|
81
|
+
* **dashboard:** enlarge model card container ([6db215d](https://github.com/DGouron/claude-review-automation/commit/6db215d6f02d4aa03fe5076a52132c87de010f94))
|
|
82
|
+
* **dashboard:** fix data mapping and add debug logging ([25cebac](https://github.com/DGouron/claude-review-automation/commit/25cebac53a64074034148358ee712dffd4108c1f))
|
|
83
|
+
* **dashboard:** fix model select overflow and project info layout ([6e3b257](https://github.com/DGouron/claude-review-automation/commit/6e3b2577c581079de584a53317d6fc207845036b))
|
|
84
|
+
* display stats in dashboard ([2edacd2](https://github.com/DGouron/claude-review-automation/commit/2edacd2de93dde7183bc28a5d62682b9d6f984c1))
|
|
85
|
+
* **docs:** correct copyright year to 2026 ([69ba7a9](https://github.com/DGouron/claude-review-automation/commit/69ba7a9f5d2e9253bcf8cb424fbfb237e49ef6b8))
|
|
86
|
+
* **docs:** correct copyright year to 2026 ([8448faa](https://github.com/DGouron/claude-review-automation/commit/8448faa6e9fcf91963a5a9e544d3ff52e312e3ef))
|
|
87
|
+
* **docs:** correct copyright year to 2026 ([afe694e](https://github.com/DGouron/claude-review-automation/commit/afe694e50b5456ef5c4994747ae66da46cbbfa02))
|
|
88
|
+
* **github:** add title and assignedBy to job for dashboard display ([d027356](https://github.com/DGouron/claude-review-automation/commit/d0273562f2df45271eb569b66a6220b2e484bea7))
|
|
89
|
+
* **lint:** configure Biome and fix lint errors ([8ef360e](https://github.com/DGouron/claude-review-automation/commit/8ef360e1fd66bea05550b0c2e431beb9e0845cb7))
|
|
90
|
+
* **lint:** resolve Biome noDelete and useImportType errors ([9f932b0](https://github.com/DGouron/claude-review-automation/commit/9f932b0fe747599d14e381d2ab4ee08c37df2c08))
|
|
91
|
+
* **mcp:** pass env vars via --mcp-config instead of process env ([893c62e](https://github.com/DGouron/claude-review-automation/commit/893c62e1902eba696744776ba4b7f7463d67e937))
|
|
92
|
+
* **mcp:** remove --mcp-config and --dangerously-skip-permissions ([4baf630](https://github.com/DGouron/claude-review-automation/commit/4baf6300c305d63823a4f5a28eedf740da8ee210))
|
|
93
|
+
* prevent followup from triggering new review + sync threads after followup ([981f49c](https://github.com/DGouron/claude-review-automation/commit/981f49cb7dc220eb971bbadfc3d98076a5a01ddd))
|
|
94
|
+
* **progress:** write progress to context file for live dashboard updates ([26ae254](https://github.com/DGouron/claude-review-automation/commit/26ae254a34bdcc31092d8434c49708e624c8ab64))
|
|
95
|
+
* support GitHub PR filename format in reviews ([b727822](https://github.com/DGouron/claude-review-automation/commit/b727822b074afb86a41dd4bcc916ed00fd721789))
|
|
96
|
+
* **tracking:** warnings should not block MR approval ([45068aa](https://github.com/DGouron/claude-review-automation/commit/45068aa602f47688144ab517c0f4e5a6b6d12922))
|
|
97
|
+
* **tracking:** warnings should not block MR approval ([7dc12ef](https://github.com/DGouron/claude-review-automation/commit/7dc12ef8ac18c50a5f4cbc203cf97342daf2fa74))
|
|
98
|
+
* **webhook:** add filterGitLabMrMerge to detect merged MRs ([fd33009](https://github.com/DGouron/claude-review-automation/commit/fd33009c44328f24e9298447a6b8b9478758ae3e))
|
|
99
|
+
* **webhook:** address PR review feedback - type safety and tests ([0734289](https://github.com/DGouron/claude-review-automation/commit/07342892217ae4cdaaa1bd0f78fbe57f7e7a2cb7))
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
### Changed
|
|
103
|
+
|
|
104
|
+
* add SyncThreadsUseCase reusing existing ThreadFetchGateway ([c6e11e9](https://github.com/DGouron/claude-review-automation/commit/c6e11e92bcd161679da3665a2d4fb3f6ce478875))
|
|
105
|
+
* **arch:** create frameworks layer with Strangler Fig migration ([db54aaa](https://github.com/DGouron/claude-review-automation/commit/db54aaa328266311bc2d75e29265bac5a3aaa90c))
|
|
106
|
+
* create tracking use cases with UseCase<Input, Output> pattern ([208a4d8](https://github.com/DGouron/claude-review-automation/commit/208a4d8c459ecb7fefd9f77b1facb101ce71a58f))
|
|
107
|
+
* enrich ReviewRequestTrackingGateway with query/remove methods ([d111e92](https://github.com/DGouron/claude-review-automation/commit/d111e927ece9361065861e4b060450ee2d11d3c0))
|
|
108
|
+
* **entities:** move progress types to domain layer ([7f2c054](https://github.com/DGouron/claude-review-automation/commit/7f2c054c3547860a829afe6532be215da76e2b83))
|
|
109
|
+
* **executor:** extract magic number to named constant ([0583f78](https://github.com/DGouron/claude-review-automation/commit/0583f7831bb15a5441a24b34df3cb212ca0bc65c))
|
|
110
|
+
* extract ProjectStatsCalculator to interface-adapters/services ([8a4a198](https://github.com/DGouron/claude-review-automation/commit/8a4a198634ff174fd8e0b7f01bb813fb56596e63))
|
|
111
|
+
* extract tracking types to entities/tracking/ ([aa0242d](https://github.com/DGouron/claude-review-automation/commit/aa0242de91baf7a00c44d1edc6c0d31c51668e74))
|
|
112
|
+
* **main:** complete composition root with WebSocket dependencies ([57dfd58](https://github.com/DGouron/claude-review-automation/commit/57dfd58bfdd31ee65526f3987b82a46f3c53b5a5))
|
|
113
|
+
* migrate all consumers to gateway+usecases, delete mrTrackingService ([db03372](https://github.com/DGouron/claude-review-automation/commit/db033724f128c5717b3266783bdf089a552c1172))
|
|
114
|
+
* move http routes to interface-adapters/controllers ([5b3b788](https://github.com/DGouron/claude-review-automation/commit/5b3b788f1c546ed3131840d15ac21702a8b41f24))
|
|
115
|
+
* move webhooks to interface-adapters/controllers ([d7713ee](https://github.com/DGouron/claude-review-automation/commit/d7713ee31dea893c09bc73286a9514ad9e50111c))
|
|
116
|
+
* rename acl/ to adapters/ for Clean Architecture compliance ([cd16b44](https://github.com/DGouron/claude-review-automation/commit/cd16b4479f8427b4cef7dfba3d2ffcaf5b1ceb83))
|
|
117
|
+
* split mrTrackingService God Object (BACKLOG-013) ([1ce0b35](https://github.com/DGouron/claude-review-automation/commit/1ce0b3570f425c739db96d8ff8d8cba698150f22))
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
### Miscellaneous
|
|
121
|
+
|
|
122
|
+
* **deps:** upgrade to Fastify v5 with compatible plugins ([c1661f7](https://github.com/DGouron/claude-review-automation/commit/c1661f7b726224d36c7466c7582629c8c08fbabf))
|
|
123
|
+
* **security:** remove personal config from tracking ([b1d8892](https://github.com/DGouron/claude-review-automation/commit/b1d8892dcf6d142cc4f4728a79ff51ea1a419838))
|
|
124
|
+
|
|
125
|
+
## [2.0.1](https://github.com/DGouron/claude-review-automation/compare/claude-review-automation-v2.0.0...claude-review-automation-v2.0.1) (2026-02-08)
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
### Fixed
|
|
129
|
+
|
|
130
|
+
* address PR review findings (non-null assertion, DRY, DIP) ([3553317](https://github.com/DGouron/claude-review-automation/commit/3553317298b57047543b3705e98389b90e43195e))
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
### Changed
|
|
134
|
+
|
|
135
|
+
* migrate all consumers to gateway+usecases, delete mrTrackingService ([db03372](https://github.com/DGouron/claude-review-automation/commit/db033724f128c5717b3266783bdf089a552c1172))
|
|
136
|
+
* split mrTrackingService God Object (BACKLOG-013) ([1ce0b35](https://github.com/DGouron/claude-review-automation/commit/1ce0b3570f425c739db96d8ff8d8cba698150f22))
|
|
137
|
+
|
|
138
|
+
## [2.0.0](https://github.com/DGouron/claude-review-automation/compare/claude-review-automation-v1.0.0...claude-review-automation-v2.0.0) (2026-02-07)
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
### ⚠ BREAKING CHANGES
|
|
142
|
+
|
|
143
|
+
* **deps:** @fastify/websocket v9+ passes WebSocket directly instead of connection.socket wrapper
|
|
144
|
+
* **security:** Users must now copy config.example.json to config.json and fill in their own values.
|
|
145
|
+
|
|
146
|
+
### Added
|
|
147
|
+
|
|
148
|
+
* add deployment docs and restructure architecture ([2c26fa6](https://github.com/DGouron/claude-review-automation/commit/2c26fa662a0e25362d774a6ebd075d4f3a8cf5ac))
|
|
149
|
+
* add dynamic dashboard tabs and followup job tracking ([07b85b4](https://github.com/DGouron/claude-review-automation/commit/07b85b4da0ce14384a0792ed11a52bb0e21f166a))
|
|
150
|
+
* add gateway pattern for Clean Architecture decoupling ([462c134](https://github.com/DGouron/claude-review-automation/commit/462c134355ada077d8e5a71670d5359668a693de))
|
|
151
|
+
* add memory guard and fix followup debug logging ([c7a2c34](https://github.com/DGouron/claude-review-automation/commit/c7a2c34c23bd427026897d0c8b33789ef321a7d9))
|
|
152
|
+
* add POST_INLINE_COMMENT MCP action ([a8b9f28](https://github.com/DGouron/claude-review-automation/commit/a8b9f28aba0acfb175b6ea3f1e461702644cdd4b))
|
|
153
|
+
* add POST_INLINE_COMMENT MCP action for platform-agnostic inline comments ([4d739c5](https://github.com/DGouron/claude-review-automation/commit/4d739c59799264c708de05e980be88d8188b70a0))
|
|
154
|
+
* add presenters and shared foundation interfaces ([7ba223c](https://github.com/DGouron/claude-review-automation/commit/7ba223c3b16fa88eb655b7e74f494e7930b2d3ee))
|
|
155
|
+
* add project config loader with multi-platform support ([a650eb9](https://github.com/DGouron/claude-review-automation/commit/a650eb9daf728598a1caf42262897e8b2002e278))
|
|
156
|
+
* add real-time updates, MR tracking, and dashboard improvements ([c61edbc](https://github.com/DGouron/claude-review-automation/commit/c61edbcf61da1b0683d360544619eed658b46965))
|
|
157
|
+
* add thread sync, GitHub support, templates, and fix stats parsing ([a710032](https://github.com/DGouron/claude-review-automation/commit/a710032e624617b3752c6cc4ae8f57e57131e42f))
|
|
158
|
+
* add use cases, ACL, value objects and ubiquitous language ([d33787f](https://github.com/DGouron/claude-review-automation/commit/d33787f96a889c4dd5830ae86e2b3b4bc61be97e))
|
|
159
|
+
* add Vitest test infrastructure with 90 tests ([6b54daa](https://github.com/DGouron/claude-review-automation/commit/6b54daa450de80de037bb2239840f2d4ef3d6353))
|
|
160
|
+
* auto-cleanup tracking when MR/PR is closed ([78ecaa3](https://github.com/DGouron/claude-review-automation/commit/78ecaa3e493692b6187b114f4e5417a621c85564))
|
|
161
|
+
* **cli:** add automatic Claude CLI path resolution ([b2a77c1](https://github.com/DGouron/claude-review-automation/commit/b2a77c1e99a5d2eb4b2cada56596f983c3da1c18))
|
|
162
|
+
* composition root completion + bug fixes ([f271240](https://github.com/DGouron/claude-review-automation/commit/f27124094ea373b26b0af88c10c32ac1c331e9a9))
|
|
163
|
+
* **context:** add Claude write capability to review context file ([47e2d97](https://github.com/DGouron/claude-review-automation/commit/47e2d97ec89537216da0a42a523d551649b4a422))
|
|
164
|
+
* **context:** add Claude write capability to review context file ([8a3a020](https://github.com/DGouron/claude-review-automation/commit/8a3a020ec5c6d0c8a0382c7579a9f199a86bcf6b))
|
|
165
|
+
* **context:** add live tracking of review context file ([5644150](https://github.com/DGouron/claude-review-automation/commit/5644150cac72b511bfaaeaf08e322328723b87d3))
|
|
166
|
+
* **context:** add live tracking of review context file ([a62b00d](https://github.com/DGouron/claude-review-automation/commit/a62b00d95ad0632cb9b3a7616487090a35bc64e1))
|
|
167
|
+
* **context:** add review context file infrastructure ([d736c0e](https://github.com/DGouron/claude-review-automation/commit/d736c0e967348561d622780c486e1b681fc2cb15))
|
|
168
|
+
* **context:** integrate review context in controllers ([d2db97b](https://github.com/DGouron/claude-review-automation/commit/d2db97b61d22a69042e39d725ebda5a4ec856a4a))
|
|
169
|
+
* **context:** review context file infrastructure (ticket 007) ([982931a](https://github.com/DGouron/claude-review-automation/commit/982931a3acba6015cba19b76be33d806c8c2a28c))
|
|
170
|
+
* **dashboard:** add auto-followup toggle and cancel review button ([1f32df8](https://github.com/DGouron/claude-review-automation/commit/1f32df8d25f22d6ae291e1f7e8f310722c89c536))
|
|
171
|
+
* display PR/MR title in review history ([5662859](https://github.com/DGouron/claude-review-automation/commit/566285950fc72b77a355535c00b3850b2b1b7f50))
|
|
172
|
+
* **docs:** add custom theme with cyan brand colors and typography ([3cf5560](https://github.com/DGouron/claude-review-automation/commit/3cf5560b54982e01d09a7fb4d9cdce4c95516e45))
|
|
173
|
+
* **docs:** add landing page with hero section and feature grid ([a38a487](https://github.com/DGouron/claude-review-automation/commit/a38a487c601fda92d03583d8249906eb648ab7a9))
|
|
174
|
+
* **docs:** add logo, favicon, and social media meta tags ([f1aeedc](https://github.com/DGouron/claude-review-automation/commit/f1aeedcd80e2a0ba1f0dfb0e0ff262afdf70eee2))
|
|
175
|
+
* **docs:** add quick start steps and platform badges to landing page ([013b6a1](https://github.com/DGouron/claude-review-automation/commit/013b6a14ba8465d9c1edeead15dba7d1fa63adad))
|
|
176
|
+
* **docs:** install VitePress and configure foundation ([5008acc](https://github.com/DGouron/claude-review-automation/commit/5008accaa2f5203d35d49479b7e98aef2197614a))
|
|
177
|
+
* **entities:** unify ThreadAction and ReviewContextAction into ReviewAction ([dcece2f](https://github.com/DGouron/claude-review-automation/commit/dcece2fd79a854f6179ef3c45ea1d96c51e89448))
|
|
178
|
+
* **gateways:** add GitHubReviewActionCliGateway and backward compat wrappers ([21e269a](https://github.com/DGouron/claude-review-automation/commit/21e269a60567251d460abe4f06ee1dd4a8fbebfe))
|
|
179
|
+
* GitHub PR tracking + dashboard UI fixes ([1bccfc1](https://github.com/DGouron/claude-review-automation/commit/1bccfc15eb9af93f9449cac71bfc77930e732d10))
|
|
180
|
+
* **main:** complete Composition Root with full feature parity ([3521f89](https://github.com/DGouron/claude-review-automation/commit/3521f89a358ed2d254fb25811f4f95033b02e926))
|
|
181
|
+
* **main:** create Composition Root for Clean Architecture ([90ae639](https://github.com/DGouron/claude-review-automation/commit/90ae6390fce460343cf36abcb7b887f32f9db14b))
|
|
182
|
+
* **main:** create Composition Root structure ([d8bc0b1](https://github.com/DGouron/claude-review-automation/commit/d8bc0b1e191d9a44f76766bdc9dd67325a071e70))
|
|
183
|
+
* **mcp:** add file-based context for MCP server ([9d0c8d6](https://github.com/DGouron/claude-review-automation/commit/9d0c8d6c515cf14cd0517341dee89610946ccb18))
|
|
184
|
+
* **mcp:** add file-based logging for MCP server debugging ([ab2739f](https://github.com/DGouron/claude-review-automation/commit/ab2739f264b097941696e65bdd716aacd561dce2))
|
|
185
|
+
* **mcp:** add MCP handlers and fix dashboard assignee attribution ([56a561f](https://github.com/DGouron/claude-review-automation/commit/56a561fb8405aba657c68d1d0afe890c08eedd05))
|
|
186
|
+
* **mcp:** add MCP server infrastructure with progress gateway ([fdd6d62](https://github.com/DGouron/claude-review-automation/commit/fdd6d6235b80b5c658d4fe22da64d816c16f095e))
|
|
187
|
+
* **mcp:** auto-create .mcp.json in project directory ([278144c](https://github.com/DGouron/claude-review-automation/commit/278144c70b8e6ab0d96654009fd0f86dfb83ed47))
|
|
188
|
+
* **mcp:** inject authoritative MCP instructions via system prompt ([670cb9d](https://github.com/DGouron/claude-review-automation/commit/670cb9d6b186d0de0b0a5011d5f7e6734bea37dc))
|
|
189
|
+
* **mcp:** MCP server infrastructure for real-time review progress ([752474b](https://github.com/DGouron/claude-review-automation/commit/752474bcb80a513b6635ff6b7150bce7a329153c))
|
|
190
|
+
* **mcp:** per-job context files and lazy-loading for concurrent reviews ([5be6a23](https://github.com/DGouron/claude-review-automation/commit/5be6a2320e9dc208864ff3ca5f05cedf10a5e253))
|
|
191
|
+
* simplify config and add portable launcher ([f6048fa](https://github.com/DGouron/claude-review-automation/commit/f6048fa78d4e87d3473f404a5f38cf6691de9386))
|
|
192
|
+
* Standardized review markers with templates and documentation ([c613d7c](https://github.com/DGouron/claude-review-automation/commit/c613d7cb9404b01c060bdd8793f4d739e1ce6738))
|
|
193
|
+
* **templates:** add EN/FR skill templates (SPEC-003) ([42add0b](https://github.com/DGouron/claude-review-automation/commit/42add0b3700a6c968f009ff2966095ac0c4bf247))
|
|
194
|
+
* **thread-actions:** add standardized review markers parsing and execution ([f4d5353](https://github.com/DGouron/claude-review-automation/commit/f4d5353fbd8bfbbde53bb5d48ab76e102cefa508))
|
|
195
|
+
* **webhook:** add label trigger for GitHub reviews ([7a33628](https://github.com/DGouron/claude-review-automation/commit/7a33628940fa4324013630b6e1af19ea2ca75e01))
|
|
196
|
+
* **webhook:** add MR tracking for GitHub PRs ([7915bb1](https://github.com/DGouron/claude-review-automation/commit/7915bb128704e2b860819e86379a8f5000fe1aa4))
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
### Fixed
|
|
200
|
+
|
|
201
|
+
* address PR [#7](https://github.com/DGouron/claude-review-automation/issues/7) review feedback - configurable polling and websocket tests ([5fcc278](https://github.com/DGouron/claude-review-automation/commit/5fcc278975ae5a5403e18ed323af278f7cdada23))
|
|
202
|
+
* address PR review comments ([cf3641a](https://github.com/DGouron/claude-review-automation/commit/cf3641ae316e978d8e77a7d01b5d0c9d2ad3c1a1))
|
|
203
|
+
* **build:** update dashboard path in build script ([dafa4d3](https://github.com/DGouron/claude-review-automation/commit/dafa4d3aa5a6d5cabd80de6657ff54c4f2b568d8))
|
|
204
|
+
* **dashboard:** correct API status endpoint URL ([048cd84](https://github.com/DGouron/claude-review-automation/commit/048cd84d989e1b75895b8cfdae50b18e47fd11dd))
|
|
205
|
+
* **dashboard:** enlarge model card container ([6db215d](https://github.com/DGouron/claude-review-automation/commit/6db215d6f02d4aa03fe5076a52132c87de010f94))
|
|
206
|
+
* **dashboard:** fix data mapping and add debug logging ([25cebac](https://github.com/DGouron/claude-review-automation/commit/25cebac53a64074034148358ee712dffd4108c1f))
|
|
207
|
+
* **dashboard:** fix model select overflow and project info layout ([6e3b257](https://github.com/DGouron/claude-review-automation/commit/6e3b2577c581079de584a53317d6fc207845036b))
|
|
208
|
+
* display stats in dashboard ([2edacd2](https://github.com/DGouron/claude-review-automation/commit/2edacd2de93dde7183bc28a5d62682b9d6f984c1))
|
|
209
|
+
* **docs:** correct copyright year to 2026 ([69ba7a9](https://github.com/DGouron/claude-review-automation/commit/69ba7a9f5d2e9253bcf8cb424fbfb237e49ef6b8))
|
|
210
|
+
* **docs:** correct copyright year to 2026 ([8448faa](https://github.com/DGouron/claude-review-automation/commit/8448faa6e9fcf91963a5a9e544d3ff52e312e3ef))
|
|
211
|
+
* **docs:** correct copyright year to 2026 ([afe694e](https://github.com/DGouron/claude-review-automation/commit/afe694e50b5456ef5c4994747ae66da46cbbfa02))
|
|
212
|
+
* **github:** add title and assignedBy to job for dashboard display ([d027356](https://github.com/DGouron/claude-review-automation/commit/d0273562f2df45271eb569b66a6220b2e484bea7))
|
|
213
|
+
* **lint:** configure Biome and fix lint errors ([8ef360e](https://github.com/DGouron/claude-review-automation/commit/8ef360e1fd66bea05550b0c2e431beb9e0845cb7))
|
|
214
|
+
* **lint:** resolve Biome noDelete and useImportType errors ([9f932b0](https://github.com/DGouron/claude-review-automation/commit/9f932b0fe747599d14e381d2ab4ee08c37df2c08))
|
|
215
|
+
* **mcp:** pass env vars via --mcp-config instead of process env ([893c62e](https://github.com/DGouron/claude-review-automation/commit/893c62e1902eba696744776ba4b7f7463d67e937))
|
|
216
|
+
* **mcp:** remove --mcp-config and --dangerously-skip-permissions ([4baf630](https://github.com/DGouron/claude-review-automation/commit/4baf6300c305d63823a4f5a28eedf740da8ee210))
|
|
217
|
+
* prevent followup from triggering new review + sync threads after followup ([981f49c](https://github.com/DGouron/claude-review-automation/commit/981f49cb7dc220eb971bbadfc3d98076a5a01ddd))
|
|
218
|
+
* **progress:** write progress to context file for live dashboard updates ([26ae254](https://github.com/DGouron/claude-review-automation/commit/26ae254a34bdcc31092d8434c49708e624c8ab64))
|
|
219
|
+
* support GitHub PR filename format in reviews ([b727822](https://github.com/DGouron/claude-review-automation/commit/b727822b074afb86a41dd4bcc916ed00fd721789))
|
|
220
|
+
* **tracking:** warnings should not block MR approval ([45068aa](https://github.com/DGouron/claude-review-automation/commit/45068aa602f47688144ab517c0f4e5a6b6d12922))
|
|
221
|
+
* **tracking:** warnings should not block MR approval ([7dc12ef](https://github.com/DGouron/claude-review-automation/commit/7dc12ef8ac18c50a5f4cbc203cf97342daf2fa74))
|
|
222
|
+
* **webhook:** add filterGitLabMrMerge to detect merged MRs ([fd33009](https://github.com/DGouron/claude-review-automation/commit/fd33009c44328f24e9298447a6b8b9478758ae3e))
|
|
223
|
+
* **webhook:** address PR review feedback - type safety and tests ([0734289](https://github.com/DGouron/claude-review-automation/commit/07342892217ae4cdaaa1bd0f78fbe57f7e7a2cb7))
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
### Changed
|
|
227
|
+
|
|
228
|
+
* **arch:** create frameworks layer with Strangler Fig migration ([db54aaa](https://github.com/DGouron/claude-review-automation/commit/db54aaa328266311bc2d75e29265bac5a3aaa90c))
|
|
229
|
+
* **entities:** move progress types to domain layer ([7f2c054](https://github.com/DGouron/claude-review-automation/commit/7f2c054c3547860a829afe6532be215da76e2b83))
|
|
230
|
+
* **executor:** extract magic number to named constant ([0583f78](https://github.com/DGouron/claude-review-automation/commit/0583f7831bb15a5441a24b34df3cb212ca0bc65c))
|
|
231
|
+
* **main:** complete composition root with WebSocket dependencies ([57dfd58](https://github.com/DGouron/claude-review-automation/commit/57dfd58bfdd31ee65526f3987b82a46f3c53b5a5))
|
|
232
|
+
* move http routes to interface-adapters/controllers ([5b3b788](https://github.com/DGouron/claude-review-automation/commit/5b3b788f1c546ed3131840d15ac21702a8b41f24))
|
|
233
|
+
* move webhooks to interface-adapters/controllers ([d7713ee](https://github.com/DGouron/claude-review-automation/commit/d7713ee31dea893c09bc73286a9514ad9e50111c))
|
|
234
|
+
* rename acl/ to adapters/ for Clean Architecture compliance ([cd16b44](https://github.com/DGouron/claude-review-automation/commit/cd16b4479f8427b4cef7dfba3d2ffcaf5b1ceb83))
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
### Miscellaneous
|
|
238
|
+
|
|
239
|
+
* **deps:** upgrade to Fastify v5 with compatible plugins ([c1661f7](https://github.com/DGouron/claude-review-automation/commit/c1661f7b726224d36c7466c7582629c8c08fbabf))
|
|
240
|
+
* **security:** remove personal config from tracking ([b1d8892](https://github.com/DGouron/claude-review-automation/commit/b1d8892dcf6d142cc4f4728a79ff51ea1a419838))
|
|
241
|
+
|
|
242
|
+
## [1.0.0] - 2026-02-07
|
|
243
|
+
|
|
244
|
+
### Added
|
|
245
|
+
|
|
246
|
+
- **Webhook server** for GitLab merge requests and GitHub pull requests
|
|
247
|
+
- **Dual platform support**: GitLab (native webhooks) and GitHub (webhooks + label triggers)
|
|
248
|
+
- **Claude CLI integration** with automatic path resolution
|
|
249
|
+
- **MCP server** for real-time review progress tracking
|
|
250
|
+
- **Real-time dashboard** with WebSocket updates, review history, and per-project tracking
|
|
251
|
+
- **Review context files** with live tracking and Claude write capability
|
|
252
|
+
- **Review skills system** with EN/FR templates for customizable review prompts
|
|
253
|
+
- **Standardized review markers** parsing and execution for thread actions
|
|
254
|
+
- **Thread synchronization** between review comments and MR/PR discussions
|
|
255
|
+
- **Auto-followup** toggle to re-check resolved issues
|
|
256
|
+
- **Auto-cleanup** of tracking data when MR/PR is closed or merged
|
|
257
|
+
- **Queue system** with deduplication to prevent concurrent reviews
|
|
258
|
+
- **Composition Root** with full dependency injection (Clean Architecture)
|
|
259
|
+
- **Gateway pattern** for external service decoupling (GitLab CLI, GitHub CLI)
|
|
260
|
+
- **Presenters and value objects** for domain-driven data transformation
|
|
261
|
+
- **90+ unit tests** with Vitest
|
|
262
|
+
- **GitHub Actions CI** with TypeScript validation, Biome linting, and tests
|
|
263
|
+
- **Comprehensive documentation**: architecture, quickstart, config reference, troubleshooting
|
|
264
|
+
|
|
265
|
+
### Security
|
|
266
|
+
|
|
267
|
+
- Webhook signature verification with timing-safe comparison
|
|
268
|
+
- CLI argument escaping to prevent injection
|
|
269
|
+
- No sensitive data in production logs
|
|
270
|
+
|
|
271
|
+
[1.0.0]: https://github.com/DGouron/claude-review-automation/releases/tag/v1.0.0
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Damien Gouron
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
# Reviewflow
|
|
2
|
+
|
|
3
|
+
[](https://github.com/DGouron/review-flow/actions/workflows/ci.yml)
|
|
4
|
+
[](LICENSE)
|
|
5
|
+
[](https://nodejs.org/)
|
|
6
|
+
[](https://www.typescriptlang.org/)
|
|
7
|
+
|
|
8
|
+
Automated AI code reviews powered by [Claude Code](https://docs.anthropic.com/en/docs/claude-code). Assign a reviewer on your merge request — Claude reviews the code, tracks progress in real time, and follows up when you push fixes.
|
|
9
|
+
|
|
10
|
+
Works with **GitLab** and **GitHub** out of the box.
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## How It Works
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
Developer pushes code
|
|
18
|
+
│
|
|
19
|
+
▼
|
|
20
|
+
GitLab/GitHub webhook ──► Review server receives event
|
|
21
|
+
│
|
|
22
|
+
▼
|
|
23
|
+
Queue deduplicates & schedules
|
|
24
|
+
│
|
|
25
|
+
▼
|
|
26
|
+
Claude Code runs review skill
|
|
27
|
+
│
|
|
28
|
+
┌─────────┼─────────┐
|
|
29
|
+
▼ ▼ ▼
|
|
30
|
+
Agent 1 Agent 2 Agent N
|
|
31
|
+
(Archi) (Tests) (Quality)
|
|
32
|
+
│ │ │
|
|
33
|
+
└─────────┼─────────┘
|
|
34
|
+
▼
|
|
35
|
+
MCP server reports progress
|
|
36
|
+
│
|
|
37
|
+
▼
|
|
38
|
+
Dashboard shows live status
|
|
39
|
+
│
|
|
40
|
+
▼
|
|
41
|
+
Review posted on MR/PR
|
|
42
|
+
│
|
|
43
|
+
▼
|
|
44
|
+
Dev pushes fixes ──► Auto follow-up
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Key Features
|
|
50
|
+
|
|
51
|
+
### Multi-Agent Reviews
|
|
52
|
+
|
|
53
|
+
Each review runs a configurable set of specialized audit agents — Clean Architecture, SOLID, Testing, DDD, Code Quality, and more. Define your own agents per project to match your team's standards.
|
|
54
|
+
|
|
55
|
+
```json
|
|
56
|
+
{
|
|
57
|
+
"agents": [
|
|
58
|
+
{ "name": "clean-architecture", "displayName": "Clean Archi" },
|
|
59
|
+
{ "name": "security", "displayName": "Security" },
|
|
60
|
+
{ "name": "testing", "displayName": "Testing" }
|
|
61
|
+
]
|
|
62
|
+
}
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### MCP Integration
|
|
66
|
+
|
|
67
|
+
A built-in [Model Context Protocol](https://modelcontextprotocol.io/) server gives Claude structured tools to report progress, manage review phases, and queue actions on discussion threads — replacing fragile text-marker parsing with typed tool calls.
|
|
68
|
+
|
|
69
|
+
| MCP Tool | Purpose |
|
|
70
|
+
|----------|---------|
|
|
71
|
+
| `get_workflow` | Read current review state and agent list |
|
|
72
|
+
| `start_agent` / `complete_agent` | Track per-agent progress |
|
|
73
|
+
| `set_phase` | Advance review phases |
|
|
74
|
+
| `get_threads` | Fetch MR/PR discussion threads |
|
|
75
|
+
| `add_action` | Queue thread actions (resolve, reply, comment) |
|
|
76
|
+
|
|
77
|
+
### Smart Queue
|
|
78
|
+
|
|
79
|
+
Powered by [p-queue](https://github.com/sindresorhus/p-queue) with:
|
|
80
|
+
|
|
81
|
+
- **Concurrency control** — limit parallel reviews (default: 2)
|
|
82
|
+
- **Deduplication** — prevents duplicate reviews within a configurable time window
|
|
83
|
+
- **Graceful cancellation** — abort running reviews via dashboard or API
|
|
84
|
+
- **Memory guard** — auto-kills if RSS exceeds 4 GB
|
|
85
|
+
- **Retry on failure** — failed jobs clear deduplication so they can be re-triggered immediately
|
|
86
|
+
|
|
87
|
+
### Real-Time Dashboard
|
|
88
|
+
|
|
89
|
+
A WebSocket-powered dashboard shows live review progress:
|
|
90
|
+
|
|
91
|
+
- Phase and agent-level progress bars
|
|
92
|
+
- Running / queued / completed review counts
|
|
93
|
+
- Review history with duration, scores, and error details
|
|
94
|
+
- Log stream for debugging
|
|
95
|
+
- Auto-reconnection with exponential backoff
|
|
96
|
+
|
|
97
|
+
### Follow-Up Reviews
|
|
98
|
+
|
|
99
|
+
When a developer pushes fixes after a review, Claude automatically:
|
|
100
|
+
|
|
101
|
+
1. Re-reads the discussion threads
|
|
102
|
+
2. Checks if blocking issues are resolved
|
|
103
|
+
3. Resolves threads on GitLab/GitHub
|
|
104
|
+
4. Posts a follow-up summary with updated score
|
|
105
|
+
|
|
106
|
+
This creates an iterative review loop, not just a one-shot check.
|
|
107
|
+
|
|
108
|
+
### Multi-Platform Support
|
|
109
|
+
|
|
110
|
+
| Feature | GitLab | GitHub |
|
|
111
|
+
|---------|--------|--------|
|
|
112
|
+
| Webhook trigger | Reviewer assigned | Review requested or `needs-review` label |
|
|
113
|
+
| Thread actions | Resolve, reply, comment | Resolve, reply, comment |
|
|
114
|
+
| Auto-followup | On MR push | On PR push |
|
|
115
|
+
| Authentication | `glab` CLI (OAuth) | `gh` CLI (OAuth) |
|
|
116
|
+
|
|
117
|
+
No API tokens needed — both platforms use secure CLI-based OAuth.
|
|
118
|
+
|
|
119
|
+
### Customizable Review Skills
|
|
120
|
+
|
|
121
|
+
Review behavior is defined by [Claude Code skills](https://docs.anthropic.com/en/docs/claude-code/skills) — Markdown files in your project that tell Claude what to audit and how. Templates included for frontend, backend, and API reviews in English and French.
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## Quick Start
|
|
126
|
+
|
|
127
|
+
### Install globally
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
npm install -g reviewflow
|
|
131
|
+
# or
|
|
132
|
+
yarn global add reviewflow
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
### Or run directly with npx
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
npx reviewflow --help
|
|
139
|
+
npx reviewflow start
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
### Configure & run
|
|
143
|
+
|
|
144
|
+
```bash
|
|
145
|
+
# Configure
|
|
146
|
+
cp .env.example .env
|
|
147
|
+
cp config.example.json config.json
|
|
148
|
+
# Edit config.json with your repositories
|
|
149
|
+
|
|
150
|
+
# Start the server
|
|
151
|
+
reviewflow start
|
|
152
|
+
# Dashboard at http://localhost:3847
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
Then [configure a webhook](docs/QUICKSTART.md) on your GitLab/GitHub project pointing to your server.
|
|
156
|
+
|
|
157
|
+
For detailed setup, see the **[Quick Start Guide](docs/QUICKSTART.md)**.
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## Documentation
|
|
162
|
+
|
|
163
|
+
| Topic | Link |
|
|
164
|
+
|-------|------|
|
|
165
|
+
| Quick Start | [docs/QUICKSTART.md](docs/QUICKSTART.md) |
|
|
166
|
+
| Configuration Reference | [docs/CONFIG-REFERENCE.md](docs/CONFIG-REFERENCE.md) |
|
|
167
|
+
| Project Configuration | [docs/PROJECT_CONFIG.md](docs/PROJECT_CONFIG.md) |
|
|
168
|
+
| Review Skills Guide | [docs/REVIEW-SKILLS-GUIDE.md](docs/REVIEW-SKILLS-GUIDE.md) |
|
|
169
|
+
| MCP Tools Reference | [docs/MCP-TOOLS-REFERENCE.md](docs/MCP-TOOLS-REFERENCE.md) |
|
|
170
|
+
| Architecture | [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) |
|
|
171
|
+
| Deployment | [docs/deployment/README.md](docs/deployment/README.md) |
|
|
172
|
+
| Troubleshooting | [docs/TROUBLESHOOTING.md](docs/TROUBLESHOOTING.md) |
|
|
173
|
+
| Full Documentation Index | [docs/INDEX.md](docs/INDEX.md) |
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## API
|
|
178
|
+
|
|
179
|
+
| Endpoint | Method | Description |
|
|
180
|
+
|----------|--------|-------------|
|
|
181
|
+
| `/dashboard/` | GET | Web dashboard |
|
|
182
|
+
| `/health` | GET | Health check |
|
|
183
|
+
| `/status` | GET | Queue status |
|
|
184
|
+
| `/webhooks/gitlab` | POST | GitLab webhook receiver |
|
|
185
|
+
| `/webhooks/github` | POST | GitHub webhook receiver |
|
|
186
|
+
| `/api/reviews` | GET | List reviews |
|
|
187
|
+
| `/api/reviews/cancel/:jobId` | POST | Cancel a running review |
|
|
188
|
+
| `/ws` | WS | Real-time progress updates |
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## Development
|
|
193
|
+
|
|
194
|
+
```bash
|
|
195
|
+
npm run dev # Dev server with hot reload
|
|
196
|
+
npm test # Tests in watch mode
|
|
197
|
+
npm run test:ci # Tests (CI mode)
|
|
198
|
+
npm run typecheck # TypeScript validation
|
|
199
|
+
npm run lint # Biome linting
|
|
200
|
+
npm run verify # All checks (typecheck + lint + test)
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
|
|
207
|
+
## License
|
|
208
|
+
|
|
209
|
+
[MIT](LICENSE) — Damien Gouron
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invoker.d.ts","sourceRoot":"","sources":["../../src/claude/invoker.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,uCAAuC,CAAC;AAE/C,YAAY,EACV,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,uCAAuC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invoker.js","sourceRoot":"","sources":["../../src/claude/invoker.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,yDAAyD;AACzD,OAAO,EACL,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,uCAAuC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progressParser.d.ts","sourceRoot":"","sources":["../../src/claude/progressParser.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,cAAc,EACd,oBAAoB,GACrB,MAAM,wCAAwC,CAAC;AAEhD,YAAY,EACV,WAAW,EACX,gBAAgB,GACjB,MAAM,wCAAwC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progressParser.js","sourceRoot":"","sources":["../../src/claude/progressParser.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,yDAAyD;AACzD,OAAO,EACL,cAAc,EACd,oBAAoB,GACrB,MAAM,wCAAwC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseCliArgs.d.ts","sourceRoot":"","sources":["../../src/cli/parseCliArgs.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACtC,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAapD"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export function parseCliArgs(args) {
|
|
2
|
+
if (args.includes('--version') || args.includes('-v')) {
|
|
3
|
+
return { command: 'version', skipDependencyCheck: false };
|
|
4
|
+
}
|
|
5
|
+
if (args.includes('--help') || args.includes('-h')) {
|
|
6
|
+
return { command: 'help', skipDependencyCheck: false };
|
|
7
|
+
}
|
|
8
|
+
return {
|
|
9
|
+
command: 'start',
|
|
10
|
+
skipDependencyCheck: args.includes('--skip-dependency-check'),
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=parseCliArgs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseCliArgs.js","sourceRoot":"","sources":["../../src/cli/parseCliArgs.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,YAAY,CAAC,IAAc;IACzC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC;IAC5D,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC;IACzD,CAAC;IAED,OAAO;QACL,OAAO,EAAE,OAAO;QAChB,mBAAmB,EAAE,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC;KAC9D,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { loadConfig, loadEnvSecrets, findRepositoryByRemoteUrl, findRepositoryByProjectPath, } from '../frameworks/config/configLoader.js';
|
|
2
|
+
export type { Config, RepositoryConfig, ServerConfig, UserConfig, QueueConfig, EnvSecrets, } from '../frameworks/config/configLoader.js';
|
|
3
|
+
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,UAAU,EACV,cAAc,EACd,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,sCAAsC,CAAC;AAE9C,YAAY,EACV,MAAM,EACN,gBAAgB,EAChB,YAAY,EACZ,UAAU,EACV,WAAW,EACX,UAAU,GACX,MAAM,sCAAsC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
// Strangler Fig: Re-export from new location
|
|
2
|
+
// This file will be removed once all imports are updated
|
|
3
|
+
export { loadConfig, loadEnvSecrets, findRepositoryByRemoteUrl, findRepositoryByProjectPath, } from '../frameworks/config/configLoader.js';
|
|
4
|
+
//# sourceMappingURL=loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,yDAAyD;AACzD,OAAO,EACL,UAAU,EACV,cAAc,EACd,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,sCAAsC,CAAC"}
|