Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

When sending "stale review" notifications, create separate threads on GitHub Discussions. #4

Open
seanlip opened this issue Nov 18, 2024 · 7 comments · May be fixed by #5
Open

When sending "stale review" notifications, create separate threads on GitHub Discussions. #4

seanlip opened this issue Nov 18, 2024 · 7 comments · May be fixed by #5
Assignees

Comments

@seanlip
Copy link
Member

seanlip commented Nov 18, 2024

Currently, all our "pending review" notifications go into a single thread on GitHub Discussions. This makes it hard to keep track of pending reviews, because we cannot easily mark a message as resolved or see which of them are still open, It is also a bit difficult for reviewers to find the latest thread that they are supposed to look at.

Instead, it would be nice if the stale review notifier did the following each time it ran:

  • Delete all old threads in that GitHub Discussions category.
  • Collect the list of contributors and the PRs assigned to them.
  • For each person in that list, create a new thread in the "Notify Reviewers" category titled "Pending Reviews: @xxx", where @xxx is the name of the user.
  • The top message in that thread should be the one that's currently sent -- but change the "It looks like..." sentence to "The following PRs are blocked on your review:"

This would have the following effects:

  • https://github.com/oppia/oppia/discussions/categories/notify-reviewers would show a list of threads with pending PRs, one for each reviewer.
  • We can turn that category into a Q&A one, and maintainers (or the corresponding reviewer) can resolve threads as they get addressed. This makes it easy to see which reviews are stalling and take action to address those.
  • If reviewers are watching for their username, they'll only get emails that pertain to them.
@SD-13
Copy link
Contributor

SD-13 commented Nov 18, 2024

@seanlip I would like to work on this issue to check the feasibility of all the points you mentioned and work on them. Thanks!

@seanlip
Copy link
Member Author

seanlip commented Nov 18, 2024

Thanks @SD-13, assigned you!

@SD-13
Copy link
Contributor

SD-13 commented Nov 18, 2024

Delete all old threads in that GitHub Discussions category

This makes it easy to see which reviews are stalling and take action to address those.

@seanlip If we delete all old threads (including "open" threads), how we are going to monitor stalling reviews?

@seanlip
Copy link
Member Author

seanlip commented Nov 18, 2024

Deletion of all threads is only done just before we populate that category with new threads. This way, the category will only contain the latest stale review threads.

@SD-13
Copy link
Contributor

SD-13 commented Nov 18, 2024

Okay. Then we will be able to monitor stale reviews till new threads are created.

@SD-13
Copy link
Contributor

SD-13 commented Nov 19, 2024

This is working in my test repo with one issue, sometimes it is not deleting last few discussions and I am looking into that.
test repo: https://github.com/SD-13/test-pending-review-notifier
https://jam.dev/c/aa9f8633-7f49-4c74-8b08-402bf203fab3

@SD-13
Copy link
Contributor

SD-13 commented Nov 20, 2024

sometimes it is not deleting last few discussions

Can't reproduce the issue anymore https://jam.dev/c/c9a2c136-9b90-4a6e-bf47-bb6ee4accbef

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants