Skip to content

Direct backport only processes the head commit of a multi-commit push, silently skipping other labeled PRs #6119

Description

@Yicong-Huang

What happened?

direct-backport-push.yml resolves exactly one PR per push event — from head_commit.message (or commits/{context.sha}/pulls as fallback). When several auto-merges land on main within one ref update, only the push's head commit is examined, and the release/* labels on every other PR in the same push are silently dropped: no workflow run, no commit status, no failure comment.

Audit of 2026-06-01 → 2026-07-04: 43 merged PRs carried release/v1.2; 2 never reached the branch — #5802 (coalesced with #5809/#5811/#5812, head #5812 was the only one processed) and #6111 (coalesced with #6112). The discover step should iterate every commit in the push (e.g. compare payload.before...after) and fan the matrix out over (PR, target) pairs.

How to reproduce?

Merge two PRs into main close enough together that their squash commits arrive in one push event, with the earlier PR labeled release/v1.2. Only the later PR is backported; the earlier one is skipped without notice (see #5802, #6111).

Version/Branch

1.3.0-incubating-SNAPSHOT (main)

Commit Hash (Optional)

b0996e4 (skipped #5802), 6829fae (skipped #6111)

What browsers are you seeing the problem on?

No response

Relevant log output

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Fields

No fields configured for Bug.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions