Skip to content

feat: support parallel matrix generation via INPUT_BRANCH_NAME#1920

Merged
danielkov merged 1 commit intomainfrom
feat/ci-matrix-branch-support
Feb 27, 2026
Merged

feat: support parallel matrix generation via INPUT_BRANCH_NAME#1920
danielkov merged 1 commit intomainfrom
feat/ci-matrix-branch-support

Conversation

@danielkov
Copy link
Contributor

Summary

  • Add speakeasy ci resolve-branch subcommand that finds an existing open PR branch or creates a new one, outputting branch_name for downstream matrix jobs
  • Wire INPUT_BRANCH_NAME into speakeasy ci generate: when set, use the provided branch directly with rebase+push instead of force push
  • Fix PR title search prefix to exclude INPUT_TARGET so matrix jobs with different targets find and update the same shared PR

This enables parallel SDK generation in GitHub Actions matrix workflows where each target (go, java, python, ruby, typescript) runs as a separate job pushing to a shared branch.

Fully backwards compatible — when INPUT_BRANCH_NAME is not set, all behavior is unchanged.

✻ Clauded...

Add `speakeasy ci resolve-branch` subcommand that finds an existing
open PR branch or creates a new one, outputting branch_name for use
by parallel matrix jobs.

When INPUT_BRANCH_NAME is set in `speakeasy ci generate`:
- Use the provided branch instead of auto-generating one
- Preserve existing commits from earlier matrix jobs (no reset)
- Rebase + push instead of force push (retry up to 3x)
- Never delete the branch on failure

Also fix PR title search: FindExistingPR now uses a prefix without
the target name, so matrix jobs with different INPUT_TARGET values
find and update the same shared PR.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@danielkov danielkov enabled auto-merge (squash) February 27, 2026 11:49
@danielkov danielkov requested a review from a team February 27, 2026 11:54
@danielkov danielkov merged commit 378d865 into main Feb 27, 2026
4 checks passed
@danielkov danielkov deleted the feat/ci-matrix-branch-support branch February 27, 2026 12:09
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.

2 participants