Skip to content

Make Copilot ⏳ mean a review is actually in flight - #217

Merged
trask merged 3 commits into
open-telemetry:mainfrom
trask:trask-copilot-review-pending-icon
Aug 4, 2026
Merged

Make Copilot ⏳ mean a review is actually in flight#217
trask merged 3 commits into
open-telemetry:mainfrom
trask:trask-copilot-review-pending-icon

Conversation

@trask

@trask trask commented Aug 1, 2026

Copy link
Copy Markdown
Member

Copilot ⏳ shows on 23 of ~35 rows of the opentelemetry-java-instrumentation dashboard, so it tells you nothing. Most of those PRs have nothing for anyone to do — Copilot already reviewed them cleanly, and the only thing that changed since was a new commit.

It now means what the legend says: a Copilot review is actually in flight. It appears when a re-review has been requested, or while a PR is held waiting for Copilot's automatic first review, and it clears when Copilot reports.

Two behaviour changes come with that:

  • Copilot findings the author has already resolved no longer hold a PR. The count of Copilot's inline comments never went down, so a PR could sit held on feedback addressed weeks ago.
  • A PR is no longer sent back to Copilot to re-review code that hasn't changed. Re-reviews are requested only after a push.

Copilot's live findings still appear in the reviewers column as 💬, unchanged.

On the 24 gated PRs today, the icon goes from 23 rows to 1 — the one PR Copilot has never reviewed.

Scope: this only affects repos with require_clean_copilot_review_branches configured, which today is opentelemetry-java-instrumentation on main. The other dashboards never showed Copilot ⏳ and are unchanged.

trask and others added 2 commits August 1, 2026 10:08
The reviewers column showed `Copilot ⏳` on 23 of ~35 rows of the
opentelemetry-java-instrumentation dashboard, so the icon carried almost no
signal. Two causes:

`copilot_review_status` treated a review as needing attention when its
`finding_count` was non-zero. That count is the review's total inline comment
count, which never shrinks, so it kept counting feedback the author had already
resolved and held the pull request on finished work. Findings now come from
unresolved, non-outdated review threads Copilot started.

The renderer synthesized a pending Copilot row from `copilot_review_outstanding`,
which is true whenever the gate applies and the review is missing or stale.
A stale review is the ordinary state between a push and the next re-review, so
the icon was close to permanent, and it conflated three situations with
different owners: Copilot has never reviewed, a push made its review stale, and
Copilot left findings. Only the last is anyone's work, and it already renders as
an open review thread. The icon now means a review is genuinely in flight: a
requested re-review, or the automatic first review on a pull request the gate is
holding because Copilot has never reviewed it.

Re-review requests are now keyed on staleness rather than on the gate. Findings
on the current head sit on unchanged code, so re-reviewing it would reach the
same verdict and be requested again on the next pass.

Against live data for the 24 gated pull requests, the icon drops from 23 rows to
the one pull request Copilot has never reviewed.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f468856d-6c6f-4b97-a67c-3f87bc297a1c
Document the same open-thread predicate the gate uses, and state that
copilot_review_stale presupposes an existing review.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f468856d-6c6f-4b97-a67c-3f87bc297a1c
@opentelemetry-pr-dashboard

opentelemetry-pr-dashboard Bot commented Aug 1, 2026

Copy link
Copy Markdown

Pull request dashboard status

Merged · refreshed 2026-08-04 13:37 UTC

Status above doesn't look right?
  • Anything look wrong? Report it with what you expected; it helps us improve the dashboard.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Refines Copilot review gating so pending indicators represent active reviews and resolved/outdated findings no longer block routing.

Changes:

  • Derives Copilot findings from unresolved, non-outdated threads.
  • Requests re-reviews only after code changes.
  • Updates pending-icon rendering, tests, and documentation.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
pull-request-dashboard/README.md Documents revised gate and pending-icon behavior.
.github/scripts/pull-request-dashboard/test_render.py Tests pending Copilot rendering states.
.github/scripts/pull-request-dashboard/test_dashboard.py Tests thread-based findings and stale-review gating.
.github/scripts/pull-request-dashboard/test_copilot_review.py Updates request-delivery expectations.
.github/scripts/pull-request-dashboard/render.py Restricts pending icons to in-flight reviews.
.github/scripts/pull-request-dashboard/RATIONALE.md Explains the revised gating design.
.github/scripts/pull-request-dashboard/dashboard.py Adds stale-review and live-finding facts.
.github/scripts/pull-request-dashboard/copilot_review.py Implements thread-based findings and push-only re-reviews.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/scripts/pull-request-dashboard/render.py
A pending review request is read for every PR, so returning early on it
put the icon on ungated branches, where nothing holds the PR and a
requested human reviewer is left off the row entirely.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f468856d-6c6f-4b97-a67c-3f87bc297a1c

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 8 out of 8 changed files in this pull request and generated no new comments.

@trask
trask marked this pull request as ready for review August 1, 2026 17:40
@trask
trask requested a review from a team as a code owner August 1, 2026 17:40
@trask
trask requested a review from maryliag August 1, 2026 17:41
@trask
trask merged commit 6dade8d into open-telemetry:main Aug 4, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants