Skip to content

fix(ci): backport every labeled PR in a multi-commit push, not just the head#6120

Merged
Yicong-Huang merged 1 commit into
apache:mainfrom
Yicong-Huang:fix/backport-multi-commit-push
Jul 5, 2026
Merged

fix(ci): backport every labeled PR in a multi-commit push, not just the head#6120
Yicong-Huang merged 1 commit into
apache:mainfrom
Yicong-Huang:fix/backport-multi-commit-push

Conversation

@Yicong-Huang

Copy link
Copy Markdown
Contributor

What changes were proposed in this PR?

direct-backport-push.yml resolved exactly one PR per push event — from head_commit.message, falling back to commits/{context.sha}/pulls. When several auto-merges land on main in a single ref update, only the head commit was examined and the release/* labels on every other PR in the same push were silently dropped: no run, no commit status, no failure comment. An audit of 2026-06-01 → 2026-07-04 found 2 of 43 labeled PRs lost this way (#5802, coalesced behind #5812; and #6111, coalesced behind #6112).

Changes to the discover job:

  • Enumerate all commits in the push via compareCommits(payload.before...context.sha) (oldest first), falling back to the head commit if the compare fails or before is unavailable.
  • Resolve a PR per commit (same two strategies as before: (#N) title suffix, then commits/{sha}/pulls with backoff) and collect green release/* targets per PR.
  • Output one matrix entry per (pr_number, merge_sha, target) pair instead of a single PR + target list.

Changes to the push-backports job:

  • Matrix is now include: <entries> with max-parallel: 1, so cherry-picks apply in commit order and two legs never race pushes to the same release branch.
  • MERGE_SHA/PR_NUMBER come from the matrix entry instead of github.sha/a single discover output; the cherry-pick, commit statuses, and PR comments all annotate the right commit and PR.
  • Job legs are named backport #<pr> to <target>; the failure-annotation job-URL matcher was updated accordingly.

Any related issues, documentation, discussions?

Closes #6119

How was this PR tested?

Was this PR authored or co-authored using generative AI tooling?

Generated-by: Claude Code (Claude Fable 5)

…he head

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@github-actions github-actions Bot added fix ci changes related to CI labels Jul 4, 2026
@github-actions

github-actions Bot commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

Automated Reviewer Suggestions

Based on the git blame history of the changed files, we recommend the following reviewers:

  • No candidates found from git blame history.

@codecov-commenter

codecov-commenter commented Jul 4, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 59.10%. Comparing base (908a61f) to head (55c8068).

Additional details and impacted files
@@             Coverage Diff              @@
##               main    #6120      +/-   ##
============================================
- Coverage     59.12%   59.10%   -0.03%     
+ Complexity     3197     3196       -1     
============================================
  Files          1132     1132              
  Lines         43681    43681              
  Branches       4734     4734              
============================================
- Hits          25828    25818      -10     
- Misses        16419    16426       +7     
- Partials       1434     1437       +3     
Flag Coverage Δ
access-control-service 70.00% <ø> (ø)
agent-service 44.59% <ø> (ø)
amber 63.07% <ø> (-0.02%) ⬇️
computing-unit-managing-service 0.00% <ø> (ø)
config-service 52.30% <ø> (ø)
file-service 62.81% <ø> (ø)
frontend 51.34% <ø> (-0.04%) ⬇️
notebook-migration-service 78.57% <ø> (ø)
pyamber 91.19% <ø> (ø)
workflow-compiling-service 55.14% <ø> (ø)

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@Yicong-Huang Yicong-Huang requested a review from xuang7 July 4, 2026 23:45
@github-actions

github-actions Bot commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

⚠️ Benchmark changes need a look

🟢 0 better · 🔴 5 worse · ⚪ 10 noise (<±5%) · 0 without baseline

Compared against main 908a61f benchmarked on this same runner, so the delta is largely free of cross-runner hardware noise. The "7d avg" column still reflects the gh-pages dashboard. Treat <±5% as noise unless repeated.

Dashboard · Run

config throughput MB/s latency max Δ latest / 7d
🔴 bs=10 sw=10 sl=64 389 0.238 24,994/34,400/34,400 us 🔴 +8.6% / 🔴 +127.2%
🔴 bs=100 sw=10 sl=64 807 0.492 123,371/152,583/152,583 us 🔴 +8.7% / 🔴 +41.4%
bs=1000 sw=10 sl=64 927 0.566 1,076,850/1,148,561/1,148,561 us ⚪ within ±5% / 🔴 +11.7%
Baseline details

Latest main 908a61f from same runner

config metric PR latest main 7d avg Δ latest Δ 7d
bs=10 sw=10 sl=64 throughput 389 tuples/sec 423 tuples/sec 776.36 tuples/sec -8.0% -49.9%
bs=10 sw=10 sl=64 MB/s 0.238 MB/s 0.258 MB/s 0.474 MB/s -7.8% -49.8%
bs=10 sw=10 sl=64 p50 24,994 us 23,017 us 12,636 us +8.6% +97.8%
bs=10 sw=10 sl=64 p95 34,400 us 34,371 us 15,143 us +0.1% +127.2%
bs=10 sw=10 sl=64 p99 34,400 us 34,371 us 18,954 us +0.1% +81.5%
bs=100 sw=10 sl=64 throughput 807 tuples/sec 824 tuples/sec 985.33 tuples/sec -2.1% -18.1%
bs=100 sw=10 sl=64 MB/s 0.492 MB/s 0.503 MB/s 0.601 MB/s -2.2% -18.2%
bs=100 sw=10 sl=64 p50 123,371 us 119,429 us 101,671 us +3.3% +21.3%
bs=100 sw=10 sl=64 p95 152,583 us 140,373 us 107,939 us +8.7% +41.4%
bs=100 sw=10 sl=64 p99 152,583 us 140,373 us 113,798 us +8.7% +34.1%
bs=1000 sw=10 sl=64 throughput 927 tuples/sec 922 tuples/sec 1,016 tuples/sec +0.5% -8.8%
bs=1000 sw=10 sl=64 MB/s 0.566 MB/s 0.563 MB/s 0.62 MB/s +0.5% -8.8%
bs=1000 sw=10 sl=64 p50 1,076,850 us 1,081,936 us 989,693 us -0.5% +8.8%
bs=1000 sw=10 sl=64 p95 1,148,561 us 1,144,141 us 1,028,327 us +0.4% +11.7%
bs=1000 sw=10 sl=64 p99 1,148,561 us 1,144,141 us 1,059,969 us +0.4% +8.4%
Raw CSV
config_idx,batch_size,schema_width,string_len,num_batches,total_ms,total_tuples,total_bytes,tuples_per_sec,mb_per_sec,lat_p50_us,lat_p95_us,lat_p99_us
0,10,10,64,20,513.93,200,128000,389,0.238,24993.53,34400.29,34400.29
1,100,10,64,20,2479.12,2000,1280000,807,0.492,123371.13,152582.92,152582.92
2,1000,10,64,20,21563.51,20000,12800000,927,0.566,1076849.89,1148560.70,1148560.70

@xuang7 xuang7 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM!

@Yicong-Huang Yicong-Huang added this pull request to the merge queue Jul 5, 2026
Merged via the queue into apache:main with commit e0040dc Jul 5, 2026
32 checks passed
@Yicong-Huang Yicong-Huang deleted the fix/backport-multi-commit-push branch July 5, 2026 00:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci changes related to CI fix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

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

3 participants