Repository navigation
ci: bring beta's release, Python test and release-notes workflows to main - #1476
Conversation
…main Release runs from main, so it uses main's copies of these files: - python-tests.yml: the Codecov upload is continue-on-error (an outage failed the gate on 2026-10-05), and the suite runs on Python 3.10 and 3.14. - release.yml: dispatches sync-releases.yml after the release is created. The release is made with GITHUB_TOKEN, which starts no workflows, so v10.3.0's notes were never synced and had to be backfilled by hand. - sync-releases.yml: opens and merges a PR into beta instead of pushing to it, as the beta ruleset requires. Identical to beta; kept in step for the next beta-to-main merge.
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🔵 Needs a closer look
Release dispatch and merging under beta’s branch rules remain unverified end to end.
No open issues 🎉
What changed in this PR
Aligns main’s release and test workflows with beta so releases use the updated gates and release-note synchronization.
Changes:
- Runs Python tests on 3.10 and 3.14, expands triggers, and makes Codecov uploads non-blocking.
- Dispatches release-note synchronization after release creation.
- Updates release notes through a PR into beta instead of a direct push.
| File | Description |
|---|---|
.github/workflows/sync-releases.yml |
Opens and merges a release-notes PR into beta. |
.github/workflows/release.yml |
Dispatches the synchronization workflow on beta. |
.github/workflows/python-tests.yml |
Expands test coverage and tolerates Codecov failures. |
Review effort: Balanced
Release runs from
main, so it usesmain's copies of these workflows. This copies beta's versions of three files tomain. All three are byte-identical tobeta.continue-on-error, so a Codecov outage no longer fails the release gate (it did on 2026-10-05). The suite also runs on Python 3.10 and 3.14.sync_release_notes, which dispatchessync-releases.ymlonbetaafter the release is created. The release is made withGITHUB_TOKEN, and events made with that token start no workflows. That is why v10.3.0's notes were never synced (sync-releases.ymlhas no run since May) and had to be backfilled by hand in 40f13a3.betainstead of pushing to it, as thebetaruleset requires. At runtime thebetacopy is the one used; this keepsmainin step for the next beta-to-main merge.Same pattern as #1424.
Verification
git rev-parseshows each file's blob equal toupstream/beta.main's Python suite on Python 3.14 (the new matrix leg): 1534 passed, 3 skipped. 3.10 is unchanged.sync-releases.ymlhas aworkflow_dispatchtrigger, and the new job hasactions: write.sync_release_notesjob itself. It first runs with the next release.