heydeer
Sign in
Reviews on GitHub

Follow-up reviews

After a pull request’s first review, HeyDeer reviews what changed and rechecks earlier concerns. Learn how that works and how to decline a finding.

Review only new changes

Review only new changes is on by default. Find it in Workspace settings → Review rules → How to review, or in a repository’s Review rules. It applies to automatic and requested reviews.

A later review looks for new findings only in what the pull request’s own commits changed since HeyDeer’s last successful review. It also rechecks that review’s findings, and the ones that still apply count toward the check and approval.

Commits merged or rebased in from the base branch are left out, but conflict resolutions are reviewed. Repository checks added or edited since the last review apply to the whole pull request.

The walkthrough of a later review still covers the whole pull request and tags the groups whose files changed since the last review.

Earlier concerns

An earlier concern is a finding HeyDeer raised in its own inline review conversation on an earlier review. Each later review rechecks the open ones against the current code.

Concerns that still apply are listed under Earlier concerns to address. Concerns HeyDeer can’t verify are listed under Earlier concerns to confirm, with the information it needs.

Open or unconfirmed earlier concerns appear in the check’s summary and block automatic approval. With Fail the check when issues are found on, they also fail the check.

HeyDeer resolves only conversations it started. With Resolve addressed HeyDeer conversations on, the default, it resolves them once the current code fixes the concern or shows it was mistaken, or the concern is declined. A reply saying it’s fixed isn’t enough.

Changes merged from a fix PR are rechecked the same way on the original PR’s next review.

Declining a finding

Reply in the finding’s conversation and say why, for example that the behavior is intended or tracked in an issue, or resolve the conversation. Only people with write access or higher can decline; other replies are read as context.

alexcommented
Intended: new records return 404 until they replicate, and the sync job’s timeout stops the loop. Tracked in #482.@heydeer review

On the next review, HeyDeer reads your reply and accepts the decision unless it has concrete evidence that the decision missed something serious. Comment @heydeer review to request that review now.

An accepted decline isn’t posted again, doesn’t count as a finding, and is listed under Declined in discussion. If HeyDeer disagrees, it replies once in the conversation with its evidence.

When HeyDeer reviews the whole pull request

  • The first review, or any review while Review only new changes is off.
  • Someone commented @heydeer full review.
  • The base branch changed since the last review.
  • Someone requested another review of a commit HeyDeer already reviewed, for example after adding context.
  • The last review had review notes about omitted findings, too many matching checks or an incomplete assessment, or it asked for clarification.
  • GitHub no longer has the last reviewed commit.

The check’s summary and the review’s Reviewed row in HeyDeer show whether a review covered New changes or the Whole PR.

Existing discussion

HeyDeer reads the PR description, ordinary comments and review bodies as context. They never hold an earlier concern or stop HeyDeer from posting a finding.

HeyDeer checks a concern someone else raised in an inline review conversation against the code. If it agrees, it posts its own finding, unless someone with write access already declined the concern in that conversation.