Automatic approval
HeyDeer can approve a pull request on GitHub when its review finds nothing that needs attention. It approves only if you turn this on.
Approval modes
Set Automatic approval in Organization settings → Review rules, under Publish results, or per repository; see How settings work.
| Mode | HeyDeer approves when | Suits |
|---|---|---|
| Never approve automatically (default) | Never | A person approves every change |
| Simple changes only | The review has no issues and the change is clearly low risk, such as a rename or documentation update. A small diff isn’t enough. | Routine changes merge without waiting |
| When no issues are found | The review has no issues, whatever the change | Internal tools and prototypes |
What approval requires
- No findings within your feedback scope, and no open concern from earlier HeyDeer reviews, unless someone with write access decided not to act on it.
- Every matching repository check passed, and no review warning says checks or findings were left out.
- Nothing needs a person’s judgment, and not every changed file is generated.
- The pull request is still at the reviewed revision, its base branch hasn’t moved, and it isn’t a draft.
- Post review comments on the pull request is on. See Publishing results.
An approval states its reason. When HeyDeer doesn’t approve, the HeyDeer Review check explains why.
Approvals and GitHub branch rules
HeyDeer approves as the HeyDeer GitHub App and doesn’t dismiss its own approval when new commits arrive. To require a fresh approval, turn on Dismiss stale pull request approvals when new commits are pushed in your branch rules.
Your branch rules decide whether HeyDeer’s approval counts toward required approvals. If a person must approve every merge, require a code owner review or more than one approval.