Skip to content

Auto-approve the Dependabot PR in MERGING (gated pr-approved responsibility) - #377

Open
tildesrc wants to merge 2 commits into
mainfrom
panopticon/dependabot-auto-approve-pr
Open

Auto-approve the Dependabot PR in MERGING (gated pr-approved responsibility)#377
tildesrc wants to merge 2 commits into
mainfrom
panopticon/dependabot-auto-approve-pr

Conversation

@tildesrc

@tildesrc tildesrc commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

What

The github-dependabot workflow now approves the Dependabot bump PR during its MERGING step, so branch protection's required-approving-review gate is satisfied and the bump can land without a human clicking Approve.

Approval is modeled as an explicit, gated step, not a buried instruction:

  • MERGING gains a pr-approved responsibility — a dashboard-visible promise the agent must resolve before it can advance to COMPLETE.
  • A new dependabot-only approve-dependabot-pr skill runs at the start of MERGING: gh pr review <url> --approve, then resolves pr-approved and hands off to babysit-merge to shepherd the merge.

Why this is scoped to github-dependabot

Dependabot authors the PR, so the agent runs under a different identity (the repo's GH_TOKEN) and is permitted to approve it. On the self-reviewed / peer-reviewed lifecycles the agent is effectively the PR author and must not self-approve — so this behavior is deliberately limited to github-dependabot.

Design

The merge machinery stays shared and unchanged: babysit-merge and github_forge.py are untouched (no fork, no drift). Approval is a separate skill + gated responsibility owned entirely by GithubDependabot. Because the human already self-reviews the bump in ITERATING before advancing to MERGING, this gate reflects that task-level approval onto GitHub.

Tests

  • babysit-ci and babysit-merge are still asserted reused verbatim from the forge base.
  • MERGING gates both pr-approved and pr-merged.
  • The approve-dependabot-pr skill approves the PR, resolves the pr-approved gate, and hands off to babysit-merge.
  • The shared forge base approves no PRs (scoping guard for self/peer-reviewed).

Panopticon Agent and others added 2 commits August 13, 2026 17:31
The github-dependabot lifecycle now approves the bump PR while shepherding
the merge, satisfying branch protection's required-review gate so the bump
lands through the merge queue without a human clicking Approve.

Dependabot authored the PR, so the agent's token is a different identity and
may approve it. This is scoped to github-dependabot only: on the self/peer-
reviewed lifecycles the agent is effectively the PR author and must not self-
approve. The shared babysit-merge skill gains a small overridable
_merge_approval_step() seam (empty by default, leaving self/peer-reviewed
byte-for-byte unchanged); GithubDependabot overrides it to splice
`gh pr review --approve` in just before the PR is queued.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Reworks the auto-approval into a dependabot-only gated step instead of a
clause spliced into the shared babysit-merge skill:

- MERGING gains a `pr-approved` responsibility, so approval is an explicit,
  dashboard-visible promise the agent must resolve before COMPLETE — not a
  line of prose it could skim past.
- A new `approve-dependabot-pr` skill approves the bump PR
  (`gh pr review --approve`) at the start of MERGING, then resolves the gate
  and hands off to babysit-merge.
- The shared `babysit-merge` / `github_forge.py` are reverted to unchanged,
  so the self/peer-reviewed lifecycles are untouched and there is no fork.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@tildesrc tildesrc changed the title Auto-approve the Dependabot PR during MERGING Auto-approve the Dependabot PR in MERGING (gated pr-approved responsibility) Aug 13, 2026
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.

1 participant