Skip to content

ci: rebase release version bump PRs - #13

Merged
calvin-archastro merged 1 commit into
mainfrom
ci/publish-release-regen-workflows
Jun 11, 2026
Merged

ci: rebase release version bump PRs#13
calvin-archastro merged 1 commit into
mainfrom
ci/publish-release-regen-workflows

Conversation

@calvin-archastro

Copy link
Copy Markdown
Contributor

What Changed

The release workflow now merges its automated version-bump pull request with GitHub's rebase merge strategy instead of squash merge.

The release run for v0.1.1 successfully pushed the tag and published to PyPI, but failed after publishing because the repository rejects squash merges. This keeps the release branch and tag behavior unchanged while making the final main sync step match the repository's merge settings.

Scope

CI-only workflow change. No Python package code, generated SDK code, or publishing configuration changed.

Diagrams

sequenceDiagram
    participant Maintainer
    participant ReleaseWorkflow as release workflow
    participant GitHubCLI as gh cli
    participant GitHubRepo as GitHub repository
    participant PublishWorkflow as publish workflow

    Maintainer->>ReleaseWorkflow: Run release with bump
    ReleaseWorkflow->>GitHubRepo: Push release branch and version tag
    ReleaseWorkflow->>PublishWorkflow: Dispatch publish for tag
    ReleaseWorkflow->>GitHubCLI: Create release PR
    GitHubCLI->>GitHubRepo: Merge release PR with rebase strategy
    alt repository allows rebase merge
        GitHubRepo-->>GitHubCLI: PR merged
    else repository rejects merge strategy
        GitHubRepo-->>GitHubCLI: Merge fails
    end
Loading
classDiagram
    class ReleaseWorkflow {
      string mergeStrategy
      createReleasePullRequest()
      mergeReleasePullRequest()
    }
    class RepositoryMergeSettings {
      bool rebaseMergeAllowed
      bool squashMergeAllowed
      bool mergeCommitAllowed
    }
    class GitHubCLI {
      prCreate()
      prMerge()
    }
    ReleaseWorkflow --> GitHubCLI : uses
    ReleaseWorkflow --> RepositoryMergeSettings : must match
Loading

Risk Assessment

Low risk. This changes one GitHub CLI flag in the final release bookkeeping step after tests, branch creation, tag creation, and publish dispatch. The blast radius is limited to future manual Release workflow runs.

User Impact

No direct SDK user impact. Maintainers should see future release runs merge the version bump PR back to main instead of failing after a successful publish.

Testing

  • Parsed .github/workflows/release.yml with Ruby YAML loading.
  • Ran git diff --check for the workflow change.
  • Verified gh pr merge --help supports --rebase and --delete-branch.
  • Verified repo settings report rebaseMergeAllowed: true and squashMergeAllowed: false.
  • Watched PR release: archastro-sdk v0.1.1 #12 release-bump CI complete successfully across Python 3.11, 3.12, and 3.13.

Follow-Ups And Known Issues

The existing GitHub Actions Node 20 deprecation warning is still present in CI annotations and should be handled separately from this merge-strategy fix.

@archastro

archastro Bot commented Jun 11, 2026

Copy link
Copy Markdown

✅ Clean PR, @calvin-archastro! No blocking findings on aaf3420 — a few nice things I clocked:

  • Nice catch aligning the release merge strategy with the repo's actual settings — --rebase at .github/workflows/release.yml:156 matches allow_squash_merge: false / allow_rebase_merge: true, so the final main-sync step stops failing after a successful publish. 🎯

Reply @archastro <verb>: review · do <pattern> · don't <pattern> · forget <slug> · list

@calvin-archastro
calvin-archastro marked this pull request as ready for review June 11, 2026 21:39
@calvin-archastro
calvin-archastro merged commit 813b29e into main Jun 11, 2026
3 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