From 70adc48bc10c2d70bdc219cc9e4e9f40197c2ed5 Mon Sep 17 00:00:00 2001 From: avasconcelos114 Date: Mon, 27 Apr 2026 14:22:26 +0300 Subject: [PATCH] Added handling for cases where the user in a PR review is missing --- server/plugin/api.go | 10 +++++++++- webapp/src/components/sidebar_right/github_items.tsx | 6 +++++- webapp/src/types/github_types.ts | 2 +- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/server/plugin/api.go b/server/plugin/api.go index a2f70cd62..8676c6690 100644 --- a/server/plugin/api.go +++ b/server/plugin/api.go @@ -859,7 +859,15 @@ func fetchReviews(c *UserContext, client *github.Client, repoOwner string, repoN return []*github.PullRequestReview{}, errors.Wrap(err, "could not list reviews") } - return reviewsList, nil + // Filtering reviews where user is nil + filtered := make([]*github.PullRequestReview, 0, len(reviewsList)) + for _, review := range reviewsList { + if review != nil && review.User != nil { + filtered = append(filtered, review) + } + } + + return filtered, nil } func getRepoOwnerAndNameFromURL(rawURL string) (string, string, error) { diff --git a/webapp/src/components/sidebar_right/github_items.tsx b/webapp/src/components/sidebar_right/github_items.tsx index e98d2bb88..80a09e0ad 100644 --- a/webapp/src/components/sidebar_right/github_items.tsx +++ b/webapp/src/components/sidebar_right/github_items.tsx @@ -407,7 +407,11 @@ function getReviewText(item: GithubItem, style: any, secondLine: boolean) { }; const lastReviews = item.reviews.reduce(reverse, []).filter((v) => { - if (v.user.login === item.user.login) { + if (!v.user) { + return false; + } + + if (item.user && v.user.login === item.user.login) { return false; } diff --git a/webapp/src/types/github_types.ts b/webapp/src/types/github_types.ts index e5b90415d..6a2d92252 100644 --- a/webapp/src/types/github_types.ts +++ b/webapp/src/types/github_types.ts @@ -17,7 +17,7 @@ type GitHubUser = { export type Review = { state: string; - user: GitHubUser; + user?: GitHubUser; } export type GithubItem = PrsDetailsData & {