juliethecao opened a new issue, #5611:
URL: https://github.com/apache/texera/issues/5611
### Feature Summary
When a PR author, especially a first-time or cross-team contributor, doesn't
know who to request a review from, there is currently no automated way to
surface relevant reviewers. Manually identifying the right person requires
knowledge of the codebase that new contributors often don't have.
A naive solution would be to automatically send a review request to
blame-detected users, but this is problematic: a contributor Alice who
committed to a file 5 years ago and no longer wishes to work on Texera would
receive a review request every time someone opens a PR touching that file with
no opt-out.
This feature introduces a CI job that automatically suggests reviewers based
on git blame on PR open/update, leaving the PR author fully in control of who
actually gets requested.
### Proposed Solution or Design
Trigger: The CI job runs automatically on pull_request events (opened,
synchronize, reopened), no command needed from the author.
Behavior:
- On PR open or update, the CI runs `git blame -p <base.sha>` on each
changed file to find candidates
- Candidates are split into two groups:
- Committers: can be formally review-requested via GitHub's API
- Non-committer contributors: have context but cannot be review-requested
(GitHub only allows requests to committers and prior reviewers)
- The CI posts or updates a comment on the PR:
- Suggested reviewers: @ A, @ B (committer), @ C
- Use /request-review @ B to request a review or cc @ A @ C to notify them
- On every subsequent push, the CI finds the existing suggestion comment and
edits it rather than posting a new one, keeping the PR timeline clean
- The author must explicitly use /request-review @ B to formally send a
review request. The CI never sends one on its own
The existing /request-review @ user explicit command remains unchanged.
### Affected Area
Deployment / Infrastructure
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]