Skip to content

ci: add back-merge main -> develop workflow - #10

Merged
lorem-dev merged 1 commit into
mainfrom
develop
May 24, 2026
Merged

ci: add back-merge main -> develop workflow#10
lorem-dev merged 1 commit into
mainfrom
develop

Conversation

@lorem-dev

Copy link
Copy Markdown
Owner

Summary

Adds .github/workflows/backmerge.yml: on every push to main, opens (or refreshes) a PR main -> develop so develop stays in sync with the latest release commit.

Why a PR, not a direct push

A PR keeps the back-merge visible, lets conflicts surface explicitly, and the merge commit GitHub creates when you click "Merge pull request" is signed by web-flow - which the make verify GPG gate already exempts (see CHANGES.md v0.4.0, entry on the verification GPG gate).

Workflow behaviour

  • Triggers on push to main only (not tags, not other branches).
  • Skips if develop is already up-to-date with main (git merge-base --is-ancestor).
  • Skips if an open PR main -> develop already exists - subsequent pushes auto-update that PR via the head branch.
  • Concurrency group backmerge queues simultaneous triggers, no cancel-in-progress.
  • Minimum permissions: contents: read, pull-requests: write.

Repo settings

The org-level toggle "Allow GitHub Actions to create and approve pull requests" has already been enabled via gh api (/repos/.../actions/permissions/workflow -> can_approve_pull_request_reviews: true). Default workflow permissions remain read; the workflow declares its own elevated pull-requests: write.

One-time back-merge for v0.4.0

This workflow takes effect for releases after it lands on main. The back-merge of v0.4.0 (merge commit 93723ff on main) into develop is implicit in this PR itself - merging develop -> main here is a no-op for file contents other than backmerge.yml, and the future workflow will keep the two branches in sync going forward.

Test plan

  • After merge, push a small no-op commit to main (or wait for the next release) and confirm the workflow opens a PR main -> develop.
  • Confirm the back-merge PR's web-flow merge commit does not break make verify on develop (GPG gate ignores web-flow signatures).

On every push to main, opens (or refreshes) a PR main -> develop so
develop stays in sync with the latest release commit. The PR's merge
commit is created by GitHub web-flow and is therefore signed by
web-flow, which the make verify GPG gate already exempts.

Requires "Allow GitHub Actions to create and approve pull requests"
to be enabled under Settings -> Actions -> General -> Workflow
permissions.
@lorem-dev
lorem-dev merged commit d6e89dc into main May 24, 2026
6 checks passed
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