Skip to content

Commit cfa1ebd

Browse files
authored
Merge pull request #5 from tnull/2025-06-default-reviewers
Introduce per-repo default reviewers
2 parents 73fe19d + 0051a82 commit cfa1ebd

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

github_bot.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
MIN_PR_ID = { "lightningdevkit/rust-lightning": 3634, "lightningdevkit/ldk-node": 512, "lightningdevkit/ldk-server": 64, "lightningdevkit/vss-server": 49, "lightningdevkit/vss-rust-client": 37 }
1313
NUM_REQUIRED_REVIEWS = { "lightningdevkit/rust-lightning": 2, "lightningdevkit/ldk-node": 1, "lightningdevkit/ldk-server": 1, "lightningdevkit/vss-server": 1, "lightningdevkit/vss-rust-client": 1 }
14+
DEFAULT_FIRST_REVIEWER = { "lightningdevkit/ldk-node": "tnull" }
1415

1516
class GitHubBot:
1617
def __init__(self, token, webhook_secret, db):
@@ -219,7 +220,7 @@ def _handle_review_request_removed(self, pr, requested_reviewer):
219220
# Update the initial comment
220221
comment = (
221222
f"👋 I see @{reviewer} was un-assigned.\n"
222-
f"If you'd like another reviewer assignemnt, please [click here]({second_reviewer_url})."
223+
f"If you'd like another reviewer assignment, please [click here]({second_reviewer_url})."
223224
)
224225

225226
self._update_comment(repo_url, pr_record, comment)
@@ -463,6 +464,18 @@ def _auto_assign_next_reviewer(self, pr_record, pr):
463464
for review in reviews:
464465
current_reviewers.append(review.reviewer)
465466

467+
# If this is the first reviewer assignment and we have a default
468+
# reviewer for the given repo, assign them and return early.
469+
if not current_reviewers:
470+
default_reviewer = DEFAULT_FIRST_REVIEWER.get(repo_name)
471+
if default_reviewer is not None and default_reviewer != pr_author:
472+
self.assign_reviewer(repo_name, pr_number, default_reviewer)
473+
474+
if pr_record is not None:
475+
pr_record.status = PRStatus.PENDING_REVIEW
476+
self.db.session.commit()
477+
return default_reviewer
478+
466479
collaborators = [
467480
c for c in self.get_repo_collaborators(repo_name)
468481
if c != pr_author and c not in current_reviewers

0 commit comments

Comments
 (0)