Skip to content

Explore read-only review status evaluator for PRs #2247

Description

@NssGourav

Problem

The Python SDK review process currently uses PR labels and GitHub review state to communicate where a pull request is in the review flow. Labels such as step: 1st, step: 2nd, reviewer: maintainer, reviewer: committer, and reviewer: write help indicate the expected review stage or reviewer group.

However, contributors and reviewers still need to inspect the PR manually to understand what the PR is currently waiting on. There is also related discussion in #2229 around review queue automation, but that issue focuses on write-enabled behavior such as queue labels, assignments, and comments.

This issue proposes a smaller read-only first layer that can evaluate and report review status without changing PR state.

Proposed scope

Create a read-only review status evaluator that:

  • reads existing PR labels
  • reads GitHub review state
  • determines the current review stage and what the PR is waiting on
  • reports the computed status in a safe, non-enforcing way

Example output:

Review status: step 1, waiting on committer review.
Current state: review required.
Next action: committer review or approval needed.

Non-goals for the first version

The first version should not:

  • change PR labels
  • assign or unassign reviewers
  • request reviews
  • change draft or review state
  • block merges
  • require broad write permissions

Reporting options

Possible first reporting options:

  • workflow logs only, to validate the logic safely
  • a GitHub check summary, if suitable with read-only permissions
  • one updatable PR comment later, if maintainers decide that issues: write is acceptable

Relationship to #2229

This issue is intended to complement #2229, not replace it.

#2229 covers write-enabled review queue automation. This issue focuses on the read-only status evaluation layer that could be used as a safer foundation before label or assignment automation is added.

Possible next steps

  • define the review states to report for the Python SDK
  • map existing labels to expected review stages
  • decide the safest initial reporting mechanism
  • keep the evaluator structured so it could later be reused by broader SDK automation

Metadata

Metadata

Assignees

No one assigned

    Labels

    skill: beginnerAchievable by a fairly new comer that has already completed a couple of good first issues

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions