Skip to content

[Bug]: Azure DevOps reviewer votes are ignored, so review state and the Review filter are wrong #31165

Open

Description

@Tabonx

Before submitting

  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.

Area

apps/server

Steps to reproduce

  1. Open the Pull requests page for a project on Azure DevOps.
  2. Find a PR you reviewed and voted on. It still sits in the review-requested group.
  3. Set the Review filter to Approved, Changes requested, or Review required.

Expected behavior

  • A reviewer who voted is no longer counted as requested.
  • PRs carry a review state, as they do on GitHub and GitLab.
  • The Review filter works.

Actual behavior

The provider reads the name of each reviewer and ignores the vote. az repos pr show and az repos pr list both return reviewers[].vote, so the data is already there. As a result:

  • reviewRequestLogins holds every reviewer, including those who voted, so a PR stays in the Reviewing group and the mobile badge permanently (azureDevOpsPullRequestJson.ts, toPullRequest).
  • reviewDecision is never set, so PRs show no verdict and never reach the top merge-readiness tier.
  • The web Review filter compares reviewDecision with the selected value (pullRequestList.logic.ts), so Approved, Changes requested and Review required return an empty list, and No reviews returns everything. The server deliberately lets undefined decisions through, so web and server disagree.
  • Azure records a vote as a system comment such as <name> voted 10, and the activity decoder drops system comments. A vote therefore never wakes watch_pull_request, whose description promises review notifications.

#28085 adds casting a vote but does not read votes back.

Impact

Review state on Azure DevOps is missing or wrong in the list, in the detail view, and for agents watching a PR.

Version or commit

a21d788752

Environment

macOS, azure-cli 2.90, azure-devops extension 1.0.8, T3 Code built from a21d788752

Workaround

Check votes on the Azure DevOps website.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions