Skip to content

ci: author, review, and automerge regen prs via github apps#26

Merged
mekilis merged 4 commits into
mainfrom
ci/sdk-regen-auto-review
Jul 20, 2026
Merged

ci: author, review, and automerge regen prs via github apps#26
mekilis merged 4 commits into
mainfrom
ci/sdk-regen-auto-review

Conversation

@mekilis

@mekilis mekilis commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Regen PRs are now authored with a convoy-sdk-bot GitHub App token (replacing the personal PAT), so CI triggers as before without depending on a user account. A separate reviewer app approves only diffs whose changed files all match the repo's generated paths; anything else is left unapproved with a comment for human review. Auto-merge is queued after approval, so unresolved finding conversations and the required checks (tests, Cursor Bugbot, Cursor Security Agent) still block the merge.


Note

Medium Risk
Adds automated approval and auto-merge with path allowlists; misconfiguration or a bypassed gate could merge unexpected changes, though the script is designed to deny by default and require checks.

Overview
Replaces the SDK bot PAT with a minted convoy-sdk-bot GitHub App token for checkout, push, and PR creation so pull_request CI still runs; commits are attributed to convoy-sdk-bot[bot] instead of github-actions[bot].

When regeneration produces a diff, a new step mints a reviewer app token and runs an approve + auto-merge script. It only approves PRs on main, authored by the bot, whose head matches the commit this run pushed, and whose changed files are limited to generated src/convoy/* (excluding hand-owned utils/ and py.typed). Any gate failure fails open: comments on the PR, clears auto-merge when needed, and skips approval. On success it submits an approval pinned to the validated commit, dismisses if the head races during submission, then enables squash auto-merge via the bot token (not GITHUB_TOKEN) so downstream publish workflows still fire.

Reviewed by Cursor Bugbot for commit be69154. Bugbot is set up for automated code reviews on this repo. Configure here.

Comment thread .github/workflows/sdk_generation.yaml
Comment thread .github/workflows/sdk_generation.yaml Outdated
Comment thread .github/workflows/sdk_generation.yaml Outdated
mekilis added 3 commits July 20, 2026 20:32
deny paths now clear stale auto-merge before commenting and fail the
step if the disable errors, instead of best-effort || true. an empty
changed-files listing no longer counts as an allowlist pass. renames
are checked on both sides everywhere. approvals are pinned to the
head commit.
pin the approval to the head captured before the allowlist run, then
re-read the head after submitting; if it moved, dismiss the approval
and deny. dismiss_stale_reviews (now enabled) covers pushes after the
review; this covers the window before it.
a dismiss failure under set -e must not skip deny, which is the hard
gate that clears stale auto-merge. dismiss_stale_reviews already
covers the dismissal in the normal case.

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit be69154. Configure here.

Comment thread .github/workflows/sdk_generation.yaml
@mekilis
mekilis merged commit d58da4a into main Jul 20, 2026
3 checks passed
@mekilis
mekilis deleted the ci/sdk-regen-auto-review branch July 20, 2026 20:01
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