Skip to content

[Bug]: Azure DevOps Updated time is the creation date, so active PRs sync slowly #31167

Closed as not planned

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 a PR on Azure DevOps that was created more than 30 minutes ago.
  2. Push to it, or add a comment.
  3. Look at its Updated time, and sort the list by Updated.

Expected behavior

Updated moves when the PR changes, and the app notices the change soon after.

Actual behavior

updatedAt is closedDate ?? creationDate (azureDevOpsPullRequestJson.ts), so it never moves on an open PR. Azure DevOps has no updated field on the PR itself, but iterations return updatedDate and threads return lastUpdatedDate. As a result:

  • The label says Updated and shows the creation date, on web and mobile.
  • Sorting by Updated sorts by creation.
  • PullRequestSyncReactor treats every PR older than 30 minutes as quiet, so an active PR syncs every 5 minutes for the rest of its life.
  • An open PR panel revalidates activity only when updatedAt changes, so new comments need a manual refresh.

This overlaps with the read volume in #21888: a real timestamp needs more reads per PR unless it comes from a batched source.

Impact

Azure DevOps PRs look stale, and pushes and comments reach the app late.

Version or commit

a21d788752

Environment

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

Workaround

Use Refresh in the PR panel.

Activity

  1. juliusmarminge commented on Nov 12, 2026

    @juliusmarminge
    Member

    I tried to reproduce this on the current build and could not.

    Commit 4bf5d53 (origin/main). No live Azure DevOps run: the VM has no az CLI and no Azure DevOps account. The issue was reproduced as a unit test instead. In packages/source-control-azure-devops/src/server/AzureDevOpsPullRequestProvider.test.ts, getChangeRequest is called on an open pull request whose Azure record has updatedAt equal to createdAt (2026-07-01) and whose threads hold a comment from 2026-07-09. vp test run src/server/AzureDevOpsPullRequestProvider.test.ts -t getChangeRequest fails with: expected '2026-07-01T00:00:00Z' to be '2026-07-09T12:00:00Z'. Code reading agrees: updatedAt is closedAt ?? raw.creationDate (azureDevOpsPullRequestJson.ts:223) and closedDate orElse creationDate (azureDevOpsPullRequests.ts:178). Related: #34611 (closed as a duplicate of this issue) and PR #34613 (closed by the maintainer in favour of open PR #31209, which claims to close this issue and is not merged).

    Closing as not planned. If it still happens for you, reply with the exact steps and the version you are on and it will be looked at again.

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