Skip to content

[Bug]: Azure DevOps pull requests never look updated, so open panels and sync stop refreshing #34611

Closed as duplicate

Description

@mbeckenbach

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 an active Azure DevOps pull request in T3 Code (Pull requests page or a thread's PR panel).
  2. From outside T3 Code, push a commit to its branch or add a comment in Azure DevOps.
  3. Leave the panel open for a few minutes.

Expected behavior

updatedAt follows the pull request's latest activity, as it does for GitHub. The panel's "updated" label moves, and anything T3 Code refreshes on an updatedAt change picks up the push or comment.

Actual behavior

For open Azure DevOps pull requests, updatedAt is always the creation time. It only changes when the pull request closes (it becomes closedDate).

Azure's pull request resource has no last-updated field (same fields in REST 5.0, which az repos pr show/list use, 7.1 and 7.2-preview). The adapter falls back to closedDate ?? creationDate:

  • packages/source-control-azure-devops/src/server/azureDevOpsPullRequestJson.ts:223
  • packages/source-control-azure-devops/src/server/azureDevOpsPullRequests.ts:178

Azure does record activity elsewhere. Every push, vote, reviewer change, status change and comment creates or updates a pull request thread, and each thread carries lastUpdatedDate.

Impact

T3 Code uses an updatedAt change as its signal that a pull request moved. For Azure DevOps that signal never fires while the pull request is open.

Feature Observed (dev build, Azure DevOps Services)
Open PR panel, Code tab After a push the diff stayed on the old version for 2+ min, also after switching tabs. The client sent no further detail or diff request.
Open PR panel, comments A new comment stayed missing (Comments (0)) for 2+ min.
"updated X ago" in panel and list Shows the creation time, e.g. "updated 3m ago" 30 s after a push.
Background sync of linked PRs Every Azure PR is treated as quiet 30 min after creation, however active, and is then read every 5 min instead of every minute (measured: 5 min 26 s vs 84 s to pick up a rename).
"Recently updated" sort Sorts by creation time; a PR commented on a minute ago sorted below a newer, idle one.

Found in code, not exercised: mobile drops a list row's cached diff stats only when its updatedAt moves, and a thread orders its linked PRs by updatedAt.

Version or commit

Reproduced on bc3eb6d. The code is unchanged on current main.

Environment

Linux, web client served by vp run dev; Azure CLI 2.92.0 with azure-devops 1.0.10; Azure DevOps Services.

Logs or stack traces

Azure vs. T3 Code after a push and a comment (test PR 1)
azure  creationDate=2026-11-11T20:55:57.58Z  closedDate=null
azure  latest iteration updatedDate=2026-11-11T20:56:11.68Z (2 iterations)
azure  latest thread lastUpdatedDate=2026-11-11T20:56:14.34Z (RefUpdate, comment, ReviewersUpdate, VoteUpdate)
t3     detail, summary and list updatedAt=2026-11-11T20:55:57.58Z
Background sync, both PRs renamed on Azure at 21:25:59
test PR 3 created 21:14:55 (active)  rename picked up 21:27:23  (84 s)
test PR 1 created 20:55:57 (quiet)   rename picked up 21:31:26  (5 min 26 s)

Screenshots, recordings, or supporting files

A pull request linked to a thread, its panel left open on the Code tab, and a push from outside T3 Code:

Before: the open panel ignores a push

Workaround

The Pull requests page's Refresh button drops the cached reads, so the Code tab and comments catch up. The "updated" time stays wrong.

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