@gitkraken/core-gitlens 0.3.0 → 0.4.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 +20 -1
- package/README.md +13 -10
- package/dist/git/cache.d.ts +12 -6
- package/dist/git/cache.d.ts.map +1 -1
- package/dist/git/cache.js +40 -39
- package/dist/git/cache.js.map +1 -1
- package/dist/git/context.d.ts +23 -3
- package/dist/git/context.d.ts.map +1 -1
- package/dist/git/context.js.map +1 -1
- package/dist/git/features.d.ts +1 -1
- package/dist/git/features.d.ts.map +1 -1
- package/dist/git/features.js +1 -0
- package/dist/git/features.js.map +1 -1
- package/dist/git/models/graph.d.ts +96 -0
- package/dist/git/models/graph.d.ts.map +1 -1
- package/dist/git/models/graph.js +24 -1
- package/dist/git/models/graph.js.map +1 -1
- package/dist/git/models/remoteProvider.d.ts +1 -0
- package/dist/git/models/remoteProvider.d.ts.map +1 -1
- package/dist/git/models/remoteProvider.js.map +1 -1
- package/dist/git/models/repository.d.ts +21 -12
- package/dist/git/models/repository.d.ts.map +1 -1
- package/dist/git/models/repository.js +70 -84
- package/dist/git/models/repository.js.map +1 -1
- package/dist/git/models/statusFile.d.ts +9 -0
- package/dist/git/models/statusFile.d.ts.map +1 -1
- package/dist/git/models/statusFile.js +11 -0
- package/dist/git/models/statusFile.js.map +1 -1
- package/dist/git/providers/commits.d.ts +4 -0
- package/dist/git/providers/commits.d.ts.map +1 -1
- package/dist/git/providers/config.d.ts +1 -3
- package/dist/git/providers/config.d.ts.map +1 -1
- package/dist/git/providers/operations.d.ts +40 -13
- package/dist/git/providers/operations.d.ts.map +1 -1
- package/dist/git/providers/worktrees.d.ts +2 -0
- package/dist/git/providers/worktrees.d.ts.map +1 -1
- package/dist/git/remotes/custom.d.ts +2 -0
- package/dist/git/remotes/custom.d.ts.map +1 -1
- package/dist/git/remotes/custom.js +20 -0
- package/dist/git/remotes/custom.js.map +1 -1
- package/dist/git/utils/conflictResolution.utils.d.ts +32 -0
- package/dist/git/utils/conflictResolution.utils.d.ts.map +1 -1
- package/dist/git/utils/conflictResolution.utils.js +95 -0
- package/dist/git/utils/conflictResolution.utils.js.map +1 -1
- package/dist/git/utils/contributor.utils.d.ts +3 -0
- package/dist/git/utils/contributor.utils.d.ts.map +1 -1
- package/dist/git/utils/contributor.utils.js +22 -0
- package/dist/git/utils/contributor.utils.js.map +1 -1
- package/dist/git/utils/reachability.utils.d.ts +37 -0
- package/dist/git/utils/reachability.utils.d.ts.map +1 -0
- package/dist/git/utils/reachability.utils.js +96 -0
- package/dist/git/utils/reachability.utils.js.map +1 -0
- package/dist/git/watching/watchService.d.ts +4 -2
- package/dist/git/watching/watchService.d.ts.map +1 -1
- package/dist/git/watching/watchService.js +8 -3
- package/dist/git/watching/watchService.js.map +1 -1
- package/dist/git/watching/watchSession.d.ts +14 -12
- package/dist/git/watching/watchSession.d.ts.map +1 -1
- package/dist/git/watching/watchSession.js +56 -55
- package/dist/git/watching/watchSession.js.map +1 -1
- package/dist/git-cli/providers/branches.d.ts.map +1 -1
- package/dist/git-cli/providers/branches.js +1 -0
- package/dist/git-cli/providers/branches.js.map +1 -1
- package/dist/git-cli/providers/commits.d.ts +1 -0
- package/dist/git-cli/providers/commits.d.ts.map +1 -1
- package/dist/git-cli/providers/commits.js +12 -0
- package/dist/git-cli/providers/commits.js.map +1 -1
- package/dist/git-cli/providers/config.d.ts +8 -4
- package/dist/git-cli/providers/config.d.ts.map +1 -1
- package/dist/git-cli/providers/config.js +62 -39
- package/dist/git-cli/providers/config.js.map +1 -1
- package/dist/git-cli/providers/diff.d.ts.map +1 -1
- package/dist/git-cli/providers/diff.js +1 -1
- package/dist/git-cli/providers/diff.js.map +1 -1
- package/dist/git-cli/providers/graph.d.ts.map +1 -1
- package/dist/git-cli/providers/graph.js +132 -14
- package/dist/git-cli/providers/graph.js.map +1 -1
- package/dist/git-cli/providers/operations.d.ts +7 -5
- package/dist/git-cli/providers/operations.d.ts.map +1 -1
- package/dist/git-cli/providers/operations.js +118 -95
- package/dist/git-cli/providers/operations.js.map +1 -1
- package/dist/git-cli/providers/stash.d.ts.map +1 -1
- package/dist/git-cli/providers/stash.js +20 -2
- package/dist/git-cli/providers/stash.js.map +1 -1
- package/dist/git-cli/providers/status.d.ts.map +1 -1
- package/dist/git-cli/providers/status.js +5 -2
- package/dist/git-cli/providers/status.js.map +1 -1
- package/dist/git-cli/providers/worktrees.d.ts +2 -0
- package/dist/git-cli/providers/worktrees.d.ts.map +1 -1
- package/dist/git-cli/providers/worktrees.js +3 -0
- package/dist/git-cli/providers/worktrees.js.map +1 -1
- package/dist/ipc/discovery.d.ts +22 -0
- package/dist/ipc/discovery.d.ts.map +1 -1
- package/dist/ipc/discovery.js +111 -2
- package/dist/ipc/discovery.js.map +1 -1
- package/dist/plus/agents/providers/claudeCodeProvider.d.ts +73 -20
- package/dist/plus/agents/providers/claudeCodeProvider.d.ts.map +1 -1
- package/dist/plus/agents/providers/claudeCodeProvider.js +394 -88
- package/dist/plus/agents/providers/claudeCodeProvider.js.map +1 -1
- package/dist/plus/agents/types.d.ts +62 -11
- package/dist/plus/agents/types.d.ts.map +1 -1
- package/dist/plus/ai/models/model.d.ts +1 -1
- package/dist/plus/ai/models/model.d.ts.map +1 -1
- package/dist/plus/ai/models/model.js.map +1 -1
- package/dist/plus/ai/models/provider.d.ts +3 -0
- package/dist/plus/ai/models/provider.d.ts.map +1 -1
- package/dist/plus/ai/providers/gitkrakenProvider.d.ts +1 -1
- package/dist/plus/ai/providers/gitkrakenProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/gitkrakenProvider.js +4 -1
- package/dist/plus/ai/providers/gitkrakenProvider.js.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts +4 -3
- package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProviderBase.js +9 -6
- package/dist/plus/ai/providers/openAICompatibleProviderBase.js.map +1 -1
- package/dist/plus/ai/utils/ai.utils.d.ts.map +1 -1
- package/dist/plus/ai/utils/ai.utils.js +6 -4
- package/dist/plus/ai/utils/ai.utils.js.map +1 -1
- package/dist/plus/git-github/api/github.d.ts +8 -13
- package/dist/plus/git-github/api/github.d.ts.map +1 -1
- package/dist/plus/git-github/api/github.js +96 -14
- package/dist/plus/git-github/api/github.js.map +1 -1
- package/dist/plus/git-github/providers/github/refs.js +1 -1
- package/dist/plus/integrations/authentication/cloudIntegrationService.d.ts +11 -0
- package/dist/plus/integrations/authentication/cloudIntegrationService.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/cloudIntegrationService.js +90 -0
- package/dist/plus/integrations/authentication/cloudIntegrationService.js.map +1 -0
- package/dist/plus/integrations/authentication/configuredIntegrationService.d.ts +67 -0
- package/dist/plus/integrations/authentication/configuredIntegrationService.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/configuredIntegrationService.js +295 -0
- package/dist/plus/integrations/authentication/configuredIntegrationService.js.map +1 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.d.ts +92 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.js +185 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.js.map +1 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationService.d.ts +62 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationService.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationService.js +122 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationService.js.map +1 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.d.ts +15 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.js +49 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.js.map +1 -0
- package/dist/plus/integrations/authentication/models.d.ts +87 -0
- package/dist/plus/integrations/authentication/models.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/models.js +64 -0
- package/dist/plus/integrations/authentication/models.js.map +1 -0
- package/dist/plus/integrations/constants.d.ts +47 -0
- package/dist/plus/integrations/constants.d.ts.map +1 -0
- package/dist/plus/integrations/constants.js +128 -0
- package/dist/plus/integrations/constants.js.map +1 -0
- package/dist/plus/integrations/context.d.ts +354 -0
- package/dist/plus/integrations/context.d.ts.map +1 -0
- package/dist/plus/integrations/context.js +2 -0
- package/dist/plus/integrations/context.js.map +1 -0
- package/dist/plus/integrations/errors.d.ts +14 -0
- package/dist/plus/integrations/errors.d.ts.map +1 -0
- package/dist/plus/integrations/errors.js +19 -0
- package/dist/plus/integrations/errors.js.map +1 -0
- package/dist/plus/integrations/index.d.ts +32 -0
- package/dist/plus/integrations/index.d.ts.map +1 -0
- package/dist/plus/integrations/index.js +62 -0
- package/dist/plus/integrations/index.js.map +1 -0
- package/dist/plus/integrations/integrationService.d.ts +98 -0
- package/dist/plus/integrations/integrationService.d.ts.map +1 -0
- package/dist/plus/integrations/integrationService.js +627 -0
- package/dist/plus/integrations/integrationService.js.map +1 -0
- package/dist/plus/integrations/models/gitHostIntegration.d.ts +82 -0
- package/dist/plus/integrations/models/gitHostIntegration.d.ts.map +1 -0
- package/dist/plus/integrations/models/gitHostIntegration.js +522 -0
- package/dist/plus/integrations/models/gitHostIntegration.js.map +1 -0
- package/dist/plus/integrations/models/integration.d.ts +127 -0
- package/dist/plus/integrations/models/integration.d.ts.map +1 -0
- package/dist/plus/integrations/models/integration.js +456 -0
- package/dist/plus/integrations/models/integration.js.map +1 -0
- package/dist/plus/integrations/models/issuesIntegration.d.ts +28 -0
- package/dist/plus/integrations/models/issuesIntegration.d.ts.map +1 -0
- package/dist/plus/integrations/models/issuesIntegration.js +101 -0
- package/dist/plus/integrations/models/issuesIntegration.js.map +1 -0
- package/dist/plus/integrations/providers/apiClients.d.ts +25 -0
- package/dist/plus/integrations/providers/apiClients.d.ts.map +1 -0
- package/dist/plus/integrations/providers/apiClients.js +39 -0
- package/dist/plus/integrations/providers/apiClients.js.map +1 -0
- package/dist/plus/integrations/providers/azure/azure.d.ts +47 -0
- package/dist/plus/integrations/providers/azure/azure.d.ts.map +1 -0
- package/dist/plus/integrations/providers/azure/azure.js +444 -0
- package/dist/plus/integrations/providers/azure/azure.js.map +1 -0
- package/dist/plus/integrations/providers/azure/models.d.ts +286 -0
- package/dist/plus/integrations/providers/azure/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/azure/models.js +203 -0
- package/dist/plus/integrations/providers/azure/models.js.map +1 -0
- package/dist/plus/integrations/providers/azureDevOps.d.ts +95 -0
- package/dist/plus/integrations/providers/azureDevOps.d.ts.map +1 -0
- package/dist/plus/integrations/providers/azureDevOps.js +432 -0
- package/dist/plus/integrations/providers/azureDevOps.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket/bitbucket.d.ts +42 -0
- package/dist/plus/integrations/providers/bitbucket/bitbucket.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket/bitbucket.js +513 -0
- package/dist/plus/integrations/providers/bitbucket/bitbucket.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket/models.d.ts +222 -0
- package/dist/plus/integrations/providers/bitbucket/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket/models.js +158 -0
- package/dist/plus/integrations/providers/bitbucket/models.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket-server/models.d.ts +120 -0
- package/dist/plus/integrations/providers/bitbucket-server/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket-server/models.js +111 -0
- package/dist/plus/integrations/providers/bitbucket-server/models.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket-server.d.ts +60 -0
- package/dist/plus/integrations/providers/bitbucket-server.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket-server.js +138 -0
- package/dist/plus/integrations/providers/bitbucket-server.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket.d.ts +50 -0
- package/dist/plus/integrations/providers/bitbucket.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket.js +181 -0
- package/dist/plus/integrations/providers/bitbucket.js.map +1 -0
- package/dist/plus/integrations/providers/github/github.d.ts +5 -0
- package/dist/plus/integrations/providers/github/github.d.ts.map +1 -0
- package/dist/plus/integrations/providers/github/github.js +47 -0
- package/dist/plus/integrations/providers/github/github.js.map +1 -0
- package/dist/plus/integrations/providers/github/github.utils.d.ts +11 -0
- package/dist/plus/integrations/providers/github/github.utils.d.ts.map +1 -0
- package/dist/plus/integrations/providers/github/github.utils.js +6 -0
- package/dist/plus/integrations/providers/github/github.utils.js.map +1 -0
- package/dist/plus/integrations/providers/github/models.d.ts +3 -0
- package/dist/plus/integrations/providers/github/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/github/models.js +2 -0
- package/dist/plus/integrations/providers/github/models.js.map +1 -0
- package/dist/plus/integrations/providers/github.d.ts +73 -0
- package/dist/plus/integrations/providers/github.d.ts.map +1 -0
- package/dist/plus/integrations/providers/github.js +160 -0
- package/dist/plus/integrations/providers/github.js.map +1 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.d.ts +63 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.d.ts.map +1 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.js +828 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.js.map +1 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.d.ts +21 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.d.ts.map +1 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.js +45 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.js.map +1 -0
- package/dist/plus/integrations/providers/gitlab/models.d.ts +128 -0
- package/dist/plus/integrations/providers/gitlab/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/gitlab/models.js +96 -0
- package/dist/plus/integrations/providers/gitlab/models.js.map +1 -0
- package/dist/plus/integrations/providers/gitlab.d.ts +79 -0
- package/dist/plus/integrations/providers/gitlab.d.ts.map +1 -0
- package/dist/plus/integrations/providers/gitlab.js +253 -0
- package/dist/plus/integrations/providers/gitlab.js.map +1 -0
- package/dist/plus/integrations/providers/jira.d.ts +46 -0
- package/dist/plus/integrations/providers/jira.d.ts.map +1 -0
- package/dist/plus/integrations/providers/jira.js +255 -0
- package/dist/plus/integrations/providers/jira.js.map +1 -0
- package/dist/plus/integrations/providers/linear.d.ts +47 -0
- package/dist/plus/integrations/providers/linear.d.ts.map +1 -0
- package/dist/plus/integrations/providers/linear.js +198 -0
- package/dist/plus/integrations/providers/linear.js.map +1 -0
- package/dist/plus/integrations/providers/models.d.ts +433 -0
- package/dist/plus/integrations/providers/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/models.js +602 -0
- package/dist/plus/integrations/providers/models.js.map +1 -0
- package/dist/plus/integrations/providers/providersApi.d.ts +129 -0
- package/dist/plus/integrations/providers/providersApi.d.ts.map +1 -0
- package/dist/plus/integrations/providers/providersApi.js +602 -0
- package/dist/plus/integrations/providers/providersApi.js.map +1 -0
- package/dist/plus/integrations/providers/utils.d.ts +54 -0
- package/dist/plus/integrations/providers/utils.d.ts.map +1 -0
- package/dist/plus/integrations/providers/utils.js +262 -0
- package/dist/plus/integrations/providers/utils.js.map +1 -0
- package/dist/plus/integrations/telemetry.d.ts +26 -0
- package/dist/plus/integrations/telemetry.d.ts.map +1 -0
- package/dist/plus/integrations/telemetry.js +11 -0
- package/dist/plus/integrations/telemetry.js.map +1 -0
- package/dist/plus/integrations/utils/integration.utils.d.ts +14 -0
- package/dist/plus/integrations/utils/integration.utils.d.ts.map +1 -0
- package/dist/plus/integrations/utils/integration.utils.js +111 -0
- package/dist/plus/integrations/utils/integration.utils.js.map +1 -0
- package/dist/utils/date.d.ts.map +1 -1
- package/dist/utils/date.js +6 -0
- package/dist/utils/date.js.map +1 -1
- package/dist/utils/debounce.js +1 -1
- package/dist/utils/disposable.d.ts +15 -2
- package/dist/utils/disposable.d.ts.map +1 -1
- package/dist/utils/disposable.js.map +1 -1
- package/dist/utils/iterable.d.ts +7 -1
- package/dist/utils/iterable.d.ts.map +1 -1
- package/dist/utils/iterable.js +12 -4
- package/dist/utils/iterable.js.map +1 -1
- package/dist/utils/object.d.ts +22 -1
- package/dist/utils/object.d.ts.map +1 -1
- package/dist/utils/object.js +56 -3
- package/dist/utils/object.js.map +1 -1
- package/dist/utils/paging.js +14 -15
- package/dist/utils/paging.js.map +1 -1
- package/dist/utils/promiseCache.d.ts.map +1 -1
- package/dist/utils/promiseCache.js +12 -4
- package/dist/utils/promiseCache.js.map +1 -1
- package/dist/utils/string.js +1 -1
- package/package.json +43 -2
- package/src/git/cache.ts +58 -70
- package/src/git/context.ts +25 -3
- package/src/git/features.ts +2 -0
- package/src/git/models/graph.ts +97 -0
- package/src/git/models/remoteProvider.ts +1 -0
- package/src/git/models/repository.ts +84 -93
- package/src/git/models/statusFile.ts +12 -0
- package/src/git/providers/commits.ts +4 -0
- package/src/git/providers/config.ts +1 -5
- package/src/git/providers/operations.ts +42 -22
- package/src/git/providers/worktrees.ts +14 -2
- package/src/git/remotes/custom.ts +23 -0
- package/src/git/utils/conflictResolution.utils.ts +126 -0
- package/src/git/utils/contributor.utils.ts +24 -0
- package/src/git/utils/reachability.utils.ts +109 -0
- package/src/git/watching/watchService.ts +9 -4
- package/src/git/watching/watchSession.ts +61 -55
- package/src/git-cli/providers/branches.ts +1 -0
- package/src/git-cli/providers/commits.ts +24 -0
- package/src/git-cli/providers/config.ts +63 -49
- package/src/git-cli/providers/diff.ts +2 -1
- package/src/git-cli/providers/graph.ts +145 -14
- package/src/git-cli/providers/operations.ts +138 -130
- package/src/git-cli/providers/stash.ts +20 -2
- package/src/git-cli/providers/status.ts +11 -3
- package/src/git-cli/providers/worktrees.ts +17 -2
- package/src/ipc/discovery.ts +132 -2
- package/src/plus/agents/providers/claudeCodeProvider.ts +430 -90
- package/src/plus/agents/types.ts +59 -11
- package/src/plus/ai/models/model.ts +1 -0
- package/src/plus/ai/models/provider.ts +7 -1
- package/src/plus/ai/providers/gitkrakenProvider.ts +4 -0
- package/src/plus/ai/providers/openAICompatibleProviderBase.ts +21 -4
- package/src/plus/ai/utils/ai.utils.ts +6 -4
- package/src/plus/git-github/api/github.ts +131 -31
- package/src/plus/git-github/providers/github/refs.ts +1 -1
- package/src/plus/integrations/authentication/cloudIntegrationService.ts +120 -0
- package/src/plus/integrations/authentication/configuredIntegrationService.ts +414 -0
- package/src/plus/integrations/authentication/integrationAuthenticationProvider.ts +289 -0
- package/src/plus/integrations/authentication/integrationAuthenticationService.ts +144 -0
- package/src/plus/integrations/authentication/manualTokenProvider.ts +72 -0
- package/src/plus/integrations/authentication/models.ts +168 -0
- package/src/plus/integrations/constants.ts +169 -0
- package/src/plus/integrations/context.ts +383 -0
- package/src/plus/integrations/errors.ts +35 -0
- package/src/plus/integrations/index.ts +119 -0
- package/src/plus/integrations/integrationService.ts +924 -0
- package/src/plus/integrations/models/gitHostIntegration.ts +738 -0
- package/src/plus/integrations/models/integration.ts +657 -0
- package/src/plus/integrations/models/issuesIntegration.ts +124 -0
- package/src/plus/integrations/providers/apiClients.ts +72 -0
- package/src/plus/integrations/providers/azure/azure.ts +691 -0
- package/src/plus/integrations/providers/azure/models.ts +605 -0
- package/src/plus/integrations/providers/azureDevOps.ts +677 -0
- package/src/plus/integrations/providers/bitbucket/bitbucket.ts +774 -0
- package/src/plus/integrations/providers/bitbucket/models.ts +445 -0
- package/src/plus/integrations/providers/bitbucket-server/models.ts +252 -0
- package/src/plus/integrations/providers/bitbucket-server.ts +282 -0
- package/src/plus/integrations/providers/bitbucket.ts +350 -0
- package/src/plus/integrations/providers/github/github.ts +64 -0
- package/src/plus/integrations/providers/github/github.utils.ts +23 -0
- package/src/plus/integrations/providers/github/models.ts +29 -0
- package/src/plus/integrations/providers/github.ts +366 -0
- package/src/plus/integrations/providers/gitlab/gitlab.ts +1210 -0
- package/src/plus/integrations/providers/gitlab/gitlab.utils.ts +71 -0
- package/src/plus/integrations/providers/gitlab/models.ts +257 -0
- package/src/plus/integrations/providers/gitlab.ts +473 -0
- package/src/plus/integrations/providers/jira.ts +359 -0
- package/src/plus/integrations/providers/linear.ts +275 -0
- package/src/plus/integrations/providers/models.ts +1114 -0
- package/src/plus/integrations/providers/providersApi.ts +1126 -0
- package/src/plus/integrations/providers/utils.ts +359 -0
- package/src/plus/integrations/telemetry.ts +29 -0
- package/src/plus/integrations/utils/integration.utils.ts +138 -0
- package/src/utils/date.ts +5 -0
- package/src/utils/debounce.ts +1 -1
- package/src/utils/disposable.ts +15 -2
- package/src/utils/iterable.ts +14 -3
- package/src/utils/object.ts +55 -4
- package/src/utils/paging.ts +14 -14
- package/src/utils/promiseCache.ts +24 -16
- package/src/utils/string.ts +1 -1
|
@@ -91,7 +91,10 @@ export class OpenAICompatibleProviderBase {
|
|
|
91
91
|
url: keyUrl,
|
|
92
92
|
}, silent);
|
|
93
93
|
}
|
|
94
|
-
getHeaders(_action, apiKey, _model, _url
|
|
94
|
+
getHeaders(_action, apiKey, _model, _url,
|
|
95
|
+
// Deliberately unused here: only the GitKraken provider forwards the conversation ID (as
|
|
96
|
+
// `GK-Conversation-ID`); it must never reach third-party APIs.
|
|
97
|
+
_conversationId) {
|
|
95
98
|
return {
|
|
96
99
|
Accept: 'application/json',
|
|
97
100
|
'Content-Type': 'application/json',
|
|
@@ -103,7 +106,7 @@ export class OpenAICompatibleProviderBase {
|
|
|
103
106
|
try {
|
|
104
107
|
const scope = __addDisposableResource(env_1, maybeStartScopedLogger(`${getLoggableName(this)}.sendRequest`), false);
|
|
105
108
|
try {
|
|
106
|
-
const result = await this.fetch(action, model, apiKey, getMessages, options.modelOptions, options.signal);
|
|
109
|
+
const result = await this.fetch(action, model, apiKey, getMessages, options.modelOptions, options.signal, options.conversationId);
|
|
107
110
|
return result;
|
|
108
111
|
}
|
|
109
112
|
catch (ex) {
|
|
@@ -128,7 +131,7 @@ export class OpenAICompatibleProviderBase {
|
|
|
128
131
|
__disposeResources(env_1);
|
|
129
132
|
}
|
|
130
133
|
}
|
|
131
|
-
async fetch(action, model, apiKey, messages, modelOptions, signal) {
|
|
134
|
+
async fetch(action, model, apiKey, messages, modelOptions, signal, conversationId) {
|
|
132
135
|
let retries = 0;
|
|
133
136
|
let maxInputTokens = model.maxTokens.input;
|
|
134
137
|
while (true) {
|
|
@@ -141,7 +144,7 @@ export class OpenAICompatibleProviderBase {
|
|
|
141
144
|
: modelOptions?.outputTokens,
|
|
142
145
|
temperature: getValidatedTemperature(model, modelOptions?.temperature ?? model.temperature, this.context.defaultTemperature),
|
|
143
146
|
};
|
|
144
|
-
const rsp = await this.fetchCore(action, model, apiKey, request, signal);
|
|
147
|
+
const rsp = await this.fetchCore(action, model, apiKey, request, signal, conversationId);
|
|
145
148
|
if (!rsp.ok) {
|
|
146
149
|
const result = await this.handleFetchFailure(rsp, action, model, retries, maxInputTokens);
|
|
147
150
|
if (result.retry) {
|
|
@@ -195,14 +198,14 @@ export class OpenAICompatibleProviderBase {
|
|
|
195
198
|
}
|
|
196
199
|
throw new Error(`(${this.name}) ${rsp.status}: ${json?.error?.message || rsp.statusText}`);
|
|
197
200
|
}
|
|
198
|
-
async fetchCore(action, model, apiKey, request, signal) {
|
|
201
|
+
async fetchCore(action, model, apiKey, request, signal, conversationId) {
|
|
199
202
|
const url = this.getUrl(model);
|
|
200
203
|
if (!url) {
|
|
201
204
|
throw new Error(`(${this.name}) ${getActionName(action)}: No URL configured`);
|
|
202
205
|
}
|
|
203
206
|
try {
|
|
204
207
|
return await this.context.fetch(url, {
|
|
205
|
-
headers: await this.getHeaders(action, apiKey, model, url),
|
|
208
|
+
headers: await this.getHeaders(action, apiKey, model, url, conversationId),
|
|
206
209
|
method: 'POST',
|
|
207
210
|
body: JSON.stringify(request),
|
|
208
211
|
signal: signal,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openAICompatibleProviderBase.js","sourceRoot":"","sources":["../../src/providers/openAICompatibleProviderBase.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAEzE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGtD,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAGxG,MAAM,OAAgB,4BAA4B;IAClB;IAA/B,YAA+B,OAA0B;QAA1B,YAAO,GAAP,OAAO,CAAmB;IAAG,CAAC;IAE7D,OAAO,KAAU,CAAC;IAClB,CAAC,MAAM,CAAC,OAAO,CAAC;QACf,IAAI,CAAC,OAAO,EAAE,CAAC;IAChB,CAAC;IAOD,KAAK,CAAC,UAAU,CAAC,MAAe;QAC/B,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC5C,OAAO,MAAM,IAAI,IAAI,CAAC;QACvB,CAAC;QAAC,OAAO,EAAE,EAAE,CAAC;YACb,IAAI,mBAAmB,CAAC,EAAE,CAAC;gBAAE,OAAO,KAAK,CAAC;YAE1C,MAAM,EAAE,CAAC;QACV,CAAC;IACF,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAe;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QACvC,IAAI,OAAO,CAAC,GAAG;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC;QAEpC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QAE7C,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAC5B;YACC,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,eAAe;YAChD,SAAS,EAAE,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI;YACxE,GAAG,EAAE,MAAM;SACX,EACD,MAAM,CACN,CAAC;IACH,CAAC;IAMS,UAAU,CACnB,OAAgB,EAChB,MAAc,EACd,MAAkB,EAClB,IAAY;
|
|
1
|
+
{"version":3,"file":"openAICompatibleProviderBase.js","sourceRoot":"","sources":["../../src/providers/openAICompatibleProviderBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.utils.d.ts","sourceRoot":"","sources":["../../src/utils/ai.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAEhE,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"ai.utils.d.ts","sourceRoot":"","sources":["../../src/utils/ai.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAEhE,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAyB1D;AAED,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAE/C,wBAAgB,uBAAuB,CACtC,KAAK,EAAE,OAAO,EACd,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,EAChC,kBAAkB,CAAC,EAAE,MAAM,GACzB,MAAM,GAAG,SAAS,CAOpB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE/C;AAED,wBAAgB,wBAAwB,CAAC,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAuBrH"}
|
|
@@ -9,17 +9,19 @@ export function getActionName(action) {
|
|
|
9
9
|
case 'generate-stashMessage':
|
|
10
10
|
return 'Generate Stash Message';
|
|
11
11
|
case 'generate-changelog':
|
|
12
|
-
return 'Generate Changelog
|
|
12
|
+
return 'Generate Changelog';
|
|
13
13
|
case 'generate-create-cloudPatch':
|
|
14
14
|
return 'Create Cloud Patch Details';
|
|
15
15
|
case 'generate-create-codeSuggestion':
|
|
16
16
|
return 'Create Code Suggestion Details';
|
|
17
17
|
case 'generate-create-pullRequest':
|
|
18
|
-
return 'Create Pull Request Details
|
|
18
|
+
return 'Create Pull Request Details';
|
|
19
19
|
case 'generate-commits':
|
|
20
|
-
return 'Generate Commits
|
|
20
|
+
return 'Generate Commits';
|
|
21
|
+
case 'conflict-resolution':
|
|
22
|
+
return 'Resolve Conflicts (Preview)';
|
|
21
23
|
case 'generate-searchQuery':
|
|
22
|
-
return 'Generate Search Query
|
|
24
|
+
return 'Generate Search Query';
|
|
23
25
|
}
|
|
24
26
|
}
|
|
25
27
|
export const estimatedCharactersPerToken = 2.8;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.utils.js","sourceRoot":"","sources":["../../src/utils/ai.utils.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,aAAa,CAAC,MAAoB;IACjD,QAAQ,MAAM,EAAE,CAAC;QAChB,KAAK,iBAAiB;YACrB,OAAO,iBAAiB,CAAC;QAC1B,KAAK,gBAAgB;YACpB,OAAO,gBAAgB,CAAC;QACzB,KAAK,wBAAwB;YAC5B,OAAO,yBAAyB,CAAC;QAClC,KAAK,uBAAuB;YAC3B,OAAO,wBAAwB,CAAC;QACjC,KAAK,oBAAoB;YACxB,OAAO,
|
|
1
|
+
{"version":3,"file":"ai.utils.js","sourceRoot":"","sources":["../../src/utils/ai.utils.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,aAAa,CAAC,MAAoB;IACjD,QAAQ,MAAM,EAAE,CAAC;QAChB,KAAK,iBAAiB;YACrB,OAAO,iBAAiB,CAAC;QAC1B,KAAK,gBAAgB;YACpB,OAAO,gBAAgB,CAAC;QACzB,KAAK,wBAAwB;YAC5B,OAAO,yBAAyB,CAAC;QAClC,KAAK,uBAAuB;YAC3B,OAAO,wBAAwB,CAAC;QACjC,KAAK,oBAAoB;YACxB,OAAO,oBAAoB,CAAC;QAC7B,KAAK,4BAA4B;YAChC,OAAO,4BAA4B,CAAC;QACrC,KAAK,gCAAgC;YACpC,OAAO,gCAAgC,CAAC;QACzC,KAAK,6BAA6B;YACjC,OAAO,6BAA6B,CAAC;QACtC,KAAK,kBAAkB;YACtB,OAAO,kBAAkB,CAAC;QAC3B,KAAK,qBAAqB;YACzB,OAAO,6BAA6B,CAAC;QACtC,KAAK,sBAAsB;YAC1B,OAAO,uBAAuB,CAAC;IACjC,CAAC;AACF,CAAC;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAC;AAE/C,MAAM,UAAU,uBAAuB,CACtC,KAAc,EACd,gBAAgC,EAChC,kBAA2B;IAE3B,IAAI,gBAAgB,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAChD,4DAA4D;IAC5D,IAAI,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAC;IAEnD,gBAAgB,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,kBAAkB,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACzE,OAAO,gBAAgB,CAAC;AACzB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,GAAW;IACrC,OAAO,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,cAAsB,EAAE,UAAkB,EAAE,eAAwB;IAC5G,wEAAwE;IACxE,IAAI,eAAe,IAAI,IAAI,IAAI,eAAe,GAAG,cAAc,EAAE,CAAC;QACjE,MAAM,YAAY,GAAG,eAAe,GAAG,cAAc,CAAC;QACtD,uEAAuE;QACvE,MAAM,aAAa,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,CAAC;QAC/C,MAAM,WAAW,GAAG,CAAC,GAAG,YAAY,GAAG,aAAa,CAAC;QACrD,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,gEAAgE;IAChE,QAAQ,UAAU,EAAE,CAAC;QACpB,KAAK,CAAC;YACL,kDAAkD;YAClD,OAAO,cAAc,GAAG,IAAI,CAAC;QAC9B,KAAK,CAAC;YACL,sCAAsC;YACtC,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,GAAG,CAAC,CAAC;QACzC,KAAK,CAAC,CAAC;QACP;YACC,wCAAwC;YACxC,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC3C,CAAC;AACF,CAAC"}
|
|
@@ -15,12 +15,6 @@ import type { PagedResult } from '../../../utils/paging.js';
|
|
|
15
15
|
import type { GitHubBlame, GitHubBranch, GitHubCommit, GitHubCommitRef, GitHubContributor, GitHubPagedResult, GitHubPullRequestState, GitHubTag } from '../models.js';
|
|
16
16
|
import type { GitHubApiConfig } from './config.js';
|
|
17
17
|
import type { GitHubTokenInfo } from './token.js';
|
|
18
|
-
interface CancellationToken {
|
|
19
|
-
isCancellationRequested: boolean;
|
|
20
|
-
onCancellationRequested(fn: () => void): {
|
|
21
|
-
dispose(): void;
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
18
|
export declare class GitHubApi {
|
|
25
19
|
readonly config: GitHubApiConfig;
|
|
26
20
|
private readonly _onDidReauthenticate;
|
|
@@ -64,10 +58,10 @@ export declare class GitHubApi {
|
|
|
64
58
|
getPullRequestForCommit(provider: Provider, token: GitHubTokenInfo, owner: string, repo: string, rev: string, options?: {
|
|
65
59
|
baseUrl?: string;
|
|
66
60
|
avatarSize?: number;
|
|
67
|
-
}, cancellation?:
|
|
61
|
+
}, cancellation?: AbortSignal): Promise<PullRequest | undefined>;
|
|
68
62
|
getRepositoryMetadata(provider: Provider, token: GitHubTokenInfo, owner: string, repo: string, options?: {
|
|
69
63
|
baseUrl?: string;
|
|
70
|
-
}, cancellation?:
|
|
64
|
+
}, cancellation?: AbortSignal): Promise<RepositoryMetadata | undefined>;
|
|
71
65
|
getBlame(token: GitHubTokenInfo, owner: string, repo: string, ref: string, path: string): Promise<GitHubBlame>;
|
|
72
66
|
getBranches(token: GitHubTokenInfo, owner: string, repo: string, options?: {
|
|
73
67
|
query?: string;
|
|
@@ -146,6 +140,8 @@ export declare class GitHubApi {
|
|
|
146
140
|
}> | undefined>;
|
|
147
141
|
private _enterpriseVersions;
|
|
148
142
|
private getEnterpriseVersion;
|
|
143
|
+
private requestWithRetries;
|
|
144
|
+
private delayWithAbort;
|
|
149
145
|
private readonly _pendingGraphQL;
|
|
150
146
|
private graphql;
|
|
151
147
|
private request;
|
|
@@ -162,7 +158,7 @@ export declare class GitHubApi {
|
|
|
162
158
|
baseUrl?: string;
|
|
163
159
|
avatarSize?: number;
|
|
164
160
|
silent?: boolean;
|
|
165
|
-
}, cancellation?:
|
|
161
|
+
}, cancellation?: AbortSignal): Promise<PullRequest[]>;
|
|
166
162
|
searchMyIssues(provider: Provider, token: GitHubTokenInfo, options?: {
|
|
167
163
|
search?: string;
|
|
168
164
|
user?: string;
|
|
@@ -170,18 +166,17 @@ export declare class GitHubApi {
|
|
|
170
166
|
baseUrl?: string;
|
|
171
167
|
avatarSize?: number;
|
|
172
168
|
includeBody?: boolean;
|
|
173
|
-
}, cancellation?:
|
|
169
|
+
}, cancellation?: AbortSignal): Promise<IssueShape[] | undefined>;
|
|
174
170
|
searchPullRequests(provider: Provider, token: GitHubTokenInfo, options?: {
|
|
175
171
|
search?: string;
|
|
176
172
|
user?: string;
|
|
177
173
|
repos?: string[];
|
|
178
174
|
baseUrl?: string;
|
|
179
175
|
avatarSize?: number;
|
|
180
|
-
}, cancellation?:
|
|
176
|
+
}, cancellation?: AbortSignal): Promise<PullRequest[]>;
|
|
181
177
|
mergePullRequest(provider: Provider, token: GitHubTokenInfo, nodeId: string, expectedSourceSha: string, options?: {
|
|
182
178
|
mergeMethod?: PullRequestMergeMethod;
|
|
183
179
|
baseUrl?: string;
|
|
184
|
-
}, cancellation?:
|
|
180
|
+
}, cancellation?: AbortSignal): Promise<boolean>;
|
|
185
181
|
}
|
|
186
|
-
export {};
|
|
187
182
|
//# sourceMappingURL=github.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/api/github.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAqB,MAAM,gBAAgB,CAAC;AAQnE,OAAO,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAW5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAMrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAK5D,OAAO,KAAK,EACX,WAAW,EAEX,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,iBAAiB,EAGjB,iBAAiB,EAIjB,sBAAsB,EACtB,SAAS,EACT,MAAM,cAAc,CAAC;AAOtB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/api/github.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,42 @@ import { fromString, satisfies } from '../../../utils/version.js';
|
|
|
24
24
|
import { fromGitHubIssue, fromGitHubIssueOrPullRequestState, fromGitHubPullRequest, fromGitHubPullRequestLite, } from '../models.js';
|
|
25
25
|
const emptyPagedResult = Object.freeze({ values: [] });
|
|
26
26
|
const emptyBlameResult = Object.freeze({ ranges: [] });
|
|
27
|
+
// Transient gateway/network failures (e.g. an upstream `502 Bad Gateway`) are worth a few quick
|
|
28
|
+
// retries before surfacing to the caller. octokit provides no built-in retry for the standalone
|
|
29
|
+
// `request`/`graphql` functions we use (its retry/throttle plugins only attach to the `Octokit`
|
|
30
|
+
// class), so we retry here — but only for idempotent reads (REST GET/HEAD, GraphQL queries),
|
|
31
|
+
// never for mutations.
|
|
32
|
+
const maxRequestRetries = 2;
|
|
33
|
+
const requestRetryBaseDelay = 300; // ms
|
|
34
|
+
const requestRetryMaxDelay = 2000; // ms
|
|
35
|
+
function isRetryableTransientError(ex) {
|
|
36
|
+
// An aborted request is rethrown as the original `AbortError` (not a `RequestError`), so it is
|
|
37
|
+
// excluded here. octokit maps a fetch/network failure to a `RequestError` with status 500 and
|
|
38
|
+
// no response — those, along with real gateway statuses, are transient and safe to retry.
|
|
39
|
+
if (!(ex instanceof RequestError))
|
|
40
|
+
return false;
|
|
41
|
+
switch (ex.status) {
|
|
42
|
+
case 502: // Bad Gateway
|
|
43
|
+
case 503: // Service Unavailable
|
|
44
|
+
case 504: // Gateway Timeout
|
|
45
|
+
return true;
|
|
46
|
+
case 500: // Internal Server Error — only the network-failure variant (no response)
|
|
47
|
+
return ex.response == null;
|
|
48
|
+
default:
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
function getRequestRetryDelay(attempt) {
|
|
53
|
+
// Exponential backoff with equal jitter, capped — spreads retries so a brief upstream blip
|
|
54
|
+
// isn't hammered by every in-flight request landing on the same schedule.
|
|
55
|
+
const backoff = Math.min(requestRetryMaxDelay, requestRetryBaseDelay * 2 ** (attempt - 1));
|
|
56
|
+
return Math.round(backoff / 2 + Math.random() * (backoff / 2));
|
|
57
|
+
}
|
|
58
|
+
// Matches a GraphQL document whose operation is definitely a read query — the `query` keyword as
|
|
59
|
+
// the first significant token, after any leading whitespace or `#` comment lines. We retry only
|
|
60
|
+
// when this matches; a mutation (even one prefixed by a comment), a subscription, or anything we
|
|
61
|
+
// can't classify is left non-retryable so a transient failure can never re-run a mutation.
|
|
62
|
+
const graphqlReadQueryRegex = /^(?:\s|#[^\n]*\n?)*query\b/;
|
|
27
63
|
const gqlIssueOrPullRequestFragment = `
|
|
28
64
|
closed
|
|
29
65
|
closedAt
|
|
@@ -1693,6 +1729,46 @@ export class GitHubApi {
|
|
|
1693
1729
|
this._enterpriseVersions.set(accessToken, version);
|
|
1694
1730
|
return version ?? undefined;
|
|
1695
1731
|
}
|
|
1732
|
+
// Runs `execute`, retrying transient gateway/network failures with backoff. `retryable` gates
|
|
1733
|
+
// retries to idempotent reads; `signal` lets an in-flight cancellation abort the backoff wait.
|
|
1734
|
+
async requestWithRetries(execute, retryable, signal, scope) {
|
|
1735
|
+
let attempt = 0;
|
|
1736
|
+
while (true) {
|
|
1737
|
+
try {
|
|
1738
|
+
return await execute();
|
|
1739
|
+
}
|
|
1740
|
+
catch (ex) {
|
|
1741
|
+
if (!retryable || attempt >= maxRequestRetries || signal?.aborted || !isRetryableTransientError(ex)) {
|
|
1742
|
+
throw ex;
|
|
1743
|
+
}
|
|
1744
|
+
attempt++;
|
|
1745
|
+
const delay = getRequestRetryDelay(attempt);
|
|
1746
|
+
scope?.warn(`Transient request failure (status ${ex.status}); retrying ${attempt}/${maxRequestRetries} in ${delay}ms`);
|
|
1747
|
+
await this.delayWithAbort(delay, signal);
|
|
1748
|
+
// Bail rather than retry if we were cancelled while waiting
|
|
1749
|
+
if (signal?.aborted)
|
|
1750
|
+
throw new CancellationError();
|
|
1751
|
+
}
|
|
1752
|
+
}
|
|
1753
|
+
}
|
|
1754
|
+
delayWithAbort(ms, signal) {
|
|
1755
|
+
return new Promise(resolve => {
|
|
1756
|
+
if (signal?.aborted) {
|
|
1757
|
+
resolve();
|
|
1758
|
+
return;
|
|
1759
|
+
}
|
|
1760
|
+
let timer;
|
|
1761
|
+
const onAbort = () => {
|
|
1762
|
+
clearTimeout(timer);
|
|
1763
|
+
resolve();
|
|
1764
|
+
};
|
|
1765
|
+
timer = setTimeout(() => {
|
|
1766
|
+
signal?.removeEventListener('abort', onAbort);
|
|
1767
|
+
resolve();
|
|
1768
|
+
}, ms);
|
|
1769
|
+
signal?.addEventListener('abort', onAbort, { once: true });
|
|
1770
|
+
});
|
|
1771
|
+
}
|
|
1696
1772
|
// Inflight dedupe: identical concurrent GraphQL requests share a single promise
|
|
1697
1773
|
// to cut redundant traffic during graph/details enrichment bursts.
|
|
1698
1774
|
_pendingGraphQL = new Map();
|
|
@@ -1718,18 +1794,18 @@ export class GitHubApi {
|
|
|
1718
1794
|
}
|
|
1719
1795
|
const run = async () => {
|
|
1720
1796
|
try {
|
|
1721
|
-
let aborter;
|
|
1722
1797
|
if (cancellation != null) {
|
|
1723
|
-
if (cancellation.
|
|
1798
|
+
if (cancellation.aborted)
|
|
1724
1799
|
throw new CancellationError();
|
|
1725
|
-
aborter = new AbortController();
|
|
1726
|
-
cancellation.onCancellationRequested(() => aborter.abort());
|
|
1727
1800
|
variables = {
|
|
1728
1801
|
...variables,
|
|
1729
|
-
request: { ...variables?.request, signal:
|
|
1802
|
+
request: { ...variables?.request, signal: cancellation },
|
|
1730
1803
|
};
|
|
1731
1804
|
}
|
|
1732
|
-
|
|
1805
|
+
// Retry transient gateway/network failures, but only confirmed read queries — never
|
|
1806
|
+
// mutations (re-running one isn't idempotent)
|
|
1807
|
+
const retryable = graphqlReadQueryRegex.test(query);
|
|
1808
|
+
return await this.requestWithRetries(() => this.config.wrapForForcedInsecureSSL(provider?.getIgnoreSSLErrors() ?? false, () => this.getDefaults(accessToken, graphql)(query, variables)), retryable, cancellation, scope);
|
|
1733
1809
|
}
|
|
1734
1810
|
catch (ex) {
|
|
1735
1811
|
if (ex instanceof GraphqlResponseError) {
|
|
@@ -1768,25 +1844,31 @@ export class GitHubApi {
|
|
|
1768
1844
|
const promise = run();
|
|
1769
1845
|
this._pendingGraphQL.set(dedupeKey, promise);
|
|
1770
1846
|
// Clear from the inflight map once the promise settles — successes and failures both
|
|
1771
|
-
// clear, so failed requests don't poison subsequent retries.
|
|
1772
|
-
|
|
1847
|
+
// clear, so failed requests don't poison subsequent retries. Use `then(cleanup, cleanup)`
|
|
1848
|
+
// rather than `finally` so a rejected request doesn't spawn an orphaned (unhandled) promise;
|
|
1849
|
+
// the real caller still receives the rejection via the returned `promise`.
|
|
1850
|
+
const cleanup = () => {
|
|
1773
1851
|
if (this._pendingGraphQL.get(dedupeKey) === promise) {
|
|
1774
1852
|
this._pendingGraphQL.delete(dedupeKey);
|
|
1775
1853
|
}
|
|
1776
|
-
}
|
|
1854
|
+
};
|
|
1855
|
+
promise.then(cleanup, cleanup);
|
|
1777
1856
|
return promise;
|
|
1778
1857
|
}
|
|
1779
1858
|
async request(provider, token, route, options, scope, cancellation) {
|
|
1780
1859
|
const { accessToken } = token;
|
|
1781
1860
|
try {
|
|
1861
|
+
let signal;
|
|
1782
1862
|
if (cancellation != null) {
|
|
1783
|
-
if (cancellation.
|
|
1863
|
+
if (cancellation.aborted)
|
|
1784
1864
|
throw new CancellationError();
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
options = { ...options, request: { ...options?.request, signal: aborter.signal } };
|
|
1865
|
+
signal = cancellation;
|
|
1866
|
+
options = { ...options, request: { ...options?.request, signal: signal } };
|
|
1788
1867
|
}
|
|
1789
|
-
|
|
1868
|
+
// Retry transient gateway/network failures on idempotent reads only
|
|
1869
|
+
const method = route.split(' ', 1)[0].toUpperCase();
|
|
1870
|
+
const retryable = method === 'GET' || method === 'HEAD';
|
|
1871
|
+
return (await this.requestWithRetries(() => this.config.wrapForForcedInsecureSSL(provider?.getIgnoreSSLErrors() ?? false, () => this.getDefaults(accessToken, request)(route, options)), retryable, signal, scope));
|
|
1790
1872
|
}
|
|
1791
1873
|
catch (ex) {
|
|
1792
1874
|
if (ex instanceof RequestError || ex.name === 'AbortError') {
|