Repository navigation
Opt-in, conditional auto-approval (off by default) #4046
IsmaelMartinez
started this conversation in
Ideas
Replies: 2 comments
|
@naorpeled, a TL;DR with the numbers: https://claude.ai/artifact/KmZHwEYumEENuX9D78wXkm
Is this acceptable here, and should approval live upstream or only the status? |
0 replies
|
Filed the pieces as separate issues so they can be picked up independently, in roughly this order:
Nothing approves until #4698, and that stays off by default and host-only. The reasoning and numbers are here: |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
The FAQ lists "won't approve PRs" as a safeguard, and #3780 was closed on that basis. I'd like to test whether an approval gate can keep the intent of that safeguard (the developer stays in the driver's seat) while being useful to teams that want it.
Proposal.
auto_approval.enabled = falseby default. When a team turns it on,/reviewapproves only if every condition holds, all evaluated in code:max_effort(default 1)max_changed_linesIt approves only and never merges. Each run posts which conditions passed or failed. Approval is withdrawn on a new push.
merge_recommendationis never used on its own.Why these conditions. Our organisation measured about 8,000 merged PRs and 1.5% needed a later fix or revert. Within an effort-1 lane, 0.8% did, all affecting test environments only. Every one of those changed dependency or deploy files, which is why the deny list defaults include them. The model's own verdict carried almost no signal, so it is not used on its own.
Scope. Start with GitLab (
mr.approve()). GitHub already implementsauto_approve(). FAQ item 3 would become "won't approve PRs unless you explicitly opt in to a conditional gate".Question for the other maintainers and the community: is an opt-in gate like this acceptable for the project, or should approval stay out of scope? If it's acceptable, I'll write it up as an issue for contributors.
@naorpeled @ofir-frd @DanaFineTLV
All reactions