From a966bbf11b2c6f51c3f9a32d0ba2934d5dd8a373 Mon Sep 17 00:00:00 2001 From: Christopher Dignam Date: Fri, 12 Dec 2025 21:32:54 -0500 Subject: [PATCH] handle review node being null --- bot/kodiak/queries/__init__.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/bot/kodiak/queries/__init__.py b/bot/kodiak/queries/__init__.py index 5ca0e2af8..ee28bd44b 100644 --- a/bot/kodiak/queries/__init__.py +++ b/bot/kodiak/queries/__init__.py @@ -222,6 +222,9 @@ def get_event_info_query( asCodeOwner requestedReviewer { __typename + ... on Bot { + login + } ... on User { login } @@ -766,9 +769,9 @@ def get_ruleset_rules(*, pull_request: Dict[str, Any]) -> List[RulesetRule]: return rules -def get_review_requests_dicts(*, pr: Dict[str, Any]) -> List[Dict[str, Any]]: +def get_review_requests_dicts(*, pr: Dict[str, Any]) -> List[Optional[Dict[str, Any]]]: try: - return cast(List[Dict[str, Any]], pr["reviewRequests"]["nodes"]) + return cast(List[Optional[Dict[str, Any]]], pr["reviewRequests"]["nodes"]) except (KeyError, TypeError): return [] @@ -779,6 +782,8 @@ def get_requested_reviews(*, pr: Dict[str, Any]) -> List[PRReviewRequest]: """ review_requests: List[PRReviewRequest] = [] for request_dict in get_review_requests_dicts(pr=pr): + if request_dict is None: + continue try: asCodeOwner = request_dict["asCodeOwner"] request = request_dict["requestedReviewer"]