apps/server/src/pullRequest/AzureDevOpsPullRequestCli.test.ts | 2 +- apps/server/src/pullRequest/AzureDevOpsPullRequestCli.ts | 12 +- apps/server/src/pullRequest/AzureDevOpsPullRequestProvider.ts | 3 + apps/server/src/pullRequest/GitHubPullRequestCli.test.ts | 385 +++++++++++++++++++++++++++++++- apps/server/src/pullRequest/GitHubPullRequestCli.ts | 370 +++++++++++++++++++++++++++--- apps/server/src/pullRequest/GitHubPullRequestProvider.test.ts | 286 +++++++++++++++++++++--- apps/server/src/pullRequest/GitHubPullRequestProvider.ts | 122 ++++++++-- apps/server/src/pullRequest/GitLabPullRequestCli.ts | 4 + apps/server/src/pullRequest/PullRequestProvider.ts | 4 + apps/server/src/pullRequest/PullRequestService.ts | 9 + apps/server/src/pullRequest/azureDevOpsPullRequestJson.test.ts | 28 +++ apps/server/src/pullRequest/azureDevOpsPullRequestJson.ts | 30 +++ apps/server/src/pullRequest/gitHubPullRequestJson.test.ts | 81 ++++++- apps/server/src/pullRequest/gitHubPullRequestJson.ts | 126 ++++++++++- apps/server/src/pullRequest/gitLabMergeRequestJson.test.ts | 22 ++ apps/server/src/pullRequest/gitLabMergeRequestJson.ts | 9 + apps/web/src/components/pullRequest/PullRequestChecksPopover.tsx | 3 +- apps/web/src/components/pullRequest/PullRequestDetailPanel.tsx | 224 +++++++++++++++---- apps/web/src/components/pullRequest/PullRequestListFilters.tsx | 2 +- apps/web/src/components/pullRequest/PullRequestSummaryTab.tsx | 78 ++++++- apps/web/src/components/pullRequest/pullRequestChecks.test.tsx | 33 ++- apps/web/src/components/pullRequest/pullRequestDetail.logic.test.ts | 54 ++++- apps/web/src/components/pullRequest/pullRequestDetail.logic.ts | 50 ++++- apps/web/src/components/pullRequest/pullRequestList.logic.test.ts | 167 ++++++++++++++ apps/web/src/components/pullRequest/pullRequestList.logic.ts | 31 ++- apps/web/src/components/pullRequest/pullRequestListPreferences.ts | 122 ++++++++++ apps/web/src/components/pullRequest/pullRequestPresentation.tsx | 41 +++- apps/web/src/components/sidebar/SidebarChrome.tsx | 6 +- apps/web/src/components/ui/badge.tsx | 2 + apps/web/src/components/ui/button.tsx | 2 + apps/web/src/routes/_chat.pull-requests.tsx | 83 ++++--- docs/user/source-control.md | 16 +- packages/contracts/src/pullRequest.test.ts | 30 ++- packages/contracts/src/pullRequest.ts | 9 + 34 files changed, 2241 insertions(+), 205 deletions(-)