Skip to content

Support delegating providers release process to non-PMC committers - #69417

Merged
potiuk merged 2 commits into
apache:mainfrom
shahar1:delegate-providers-release
Jul 8, 2026
Merged

Support delegating providers release process to non-PMC committers#69417
potiuk merged 2 commits into
apache:mainfrom
shahar1:delegate-providers-release

Conversation

@shahar1

@shahar1 shahar1 commented Jul 5, 2026

Copy link
Copy Markdown
Contributor

Human Summary

This PR sets up a structured framework for delegating the providers release process to non-PMC committers.
It has been practiced in the past (so nothing new here in terms of consensus, I hope), but it's better
when it's laid out as part of the actual instructions.

AI Summary

Click here Documents an explicit split of the providers release cycle between a non-PMC **Delegate** and an overseeing **PMC member**, grounded in ASF policy (the Release Manager need not be PMC; only binding votes and `dist/release` publication are PMC-reserved). Changes are confined to `dev/README_RELEASE_PROVIDERS.md`:
  • New "Delegating release duties to a non-PMC committer" intro section with an ownership table mapping every release step to Delegate or PMC, with the rationale/policy citation per row.
  • The three trust-sensitive steps (sign → commit to dist/dev → publish RC to PyPI) are grouped into one contiguous PMC block to avoid bouncing control back and forth, with the PMC handing files/packages.txt back to the Delegate for the vote email.
  • Inline notes added at each affected step (build/sign, dist/dev commit, PyPI RC, [VOTE] email, [RESULT][VOTE], dist/release, final PyPI, announcements) so a reader landing directly on a step knows who owns it in the delegated flow.
  • The vote email is parametrized with an IS_RM_VOTE_BINDING flag: a non-PMC Delegate sets it to false, which drops the "(binding)" claim and adds a one-line clarification to the email body that a PMC member will cast the binding votes.
  • A short note framing delegation as a supervised on-ramp toward PMC membership.

Anchor links verified; doctoc TOC regenerated (no drift); all prek hooks pass.


Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 4.8 1M context)

Generated-by: Claude Code (Opus 4.8 1M context) following the guidelines

Comment thread dev/README_RELEASE_PROVIDERS.md Outdated
shahar1 added 2 commits July 7, 2026 19:13
The provider release cycle currently assumes a PMC member drives every
step, yet ASF policy only reserves the binding vote and dist/release
publication to the PMC. Documenting a clear split lets a non-PMC committer
run the bulk of the process while the PMC signs, publishes to PyPI, and
casts the binding votes — both spreading the release-manager load and
giving prospective PMC members a supervised on-ramp.

Generated-by: Claude Code (Opus 4.8 1M context)
A PMC member who only signs artifacts built by someone else does not
actually know what they are signing, per ASF release policy guidance
on owned/controlled hardware. Move the build step into the PMC block
so the same PMC member builds, signs, commits to dist/dev, and
publishes the PyPI RC without handing control back to the Delegate.
@shahar1
shahar1 force-pushed the delegate-providers-release branch from 8b5c43c to 9b5247f Compare July 7, 2026 16:18
@shahar1
shahar1 requested a review from potiuk July 7, 2026 16:18
@potiuk
potiuk merged commit 4d56e6c into apache:main Jul 8, 2026
64 checks passed
@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Backport successfully created: v3-3-test

Note: As of Merging PRs targeted for Airflow 3.X
the committer who merges the PR is responsible for backporting the PRs that are bug fixes (generally speaking) to the maintenance branches.

In matter of doubt please ask in #release-management Slack channel.

Status Branch Result
v3-3-test PR Link

github-actions Bot pushed a commit to aws-mwaa/upstream-to-airflow that referenced this pull request Jul 8, 2026
…ommitters (apache#69417)

* Add framework for delegating providers release to non-PMC committers

The provider release cycle currently assumes a PMC member drives every
step, yet ASF policy only reserves the binding vote and dist/release
publication to the PMC. Documenting a clear split lets a non-PMC committer
run the bulk of the process while the PMC signs, publishes to PyPI, and
casts the binding votes — both spreading the release-manager load and
giving prospective PMC members a supervised on-ramp.

Generated-by: Claude Code (Opus 4.8 1M context)

* Merge the provider build step into the PMC-owned release block

A PMC member who only signs artifacts built by someone else does not
actually know what they are signing, per ASF release policy guidance
on owned/controlled hardware. Move the build step into the PMC block
so the same PMC member builds, signs, commits to dist/dev, and
publishes the PyPI RC without handing control back to the Delegate.
(cherry picked from commit 4d56e6c)

Co-authored-by: Shahar Epstein <60007259+shahar1@users.noreply.github.com>
aws-airflow-bot pushed a commit to aws-mwaa/upstream-to-airflow that referenced this pull request Jul 9, 2026
…ommitters (apache#69417)

* Add framework for delegating providers release to non-PMC committers

The provider release cycle currently assumes a PMC member drives every
step, yet ASF policy only reserves the binding vote and dist/release
publication to the PMC. Documenting a clear split lets a non-PMC committer
run the bulk of the process while the PMC signs, publishes to PyPI, and
casts the binding votes — both spreading the release-manager load and
giving prospective PMC members a supervised on-ramp.

Generated-by: Claude Code (Opus 4.8 1M context)

* Merge the provider build step into the PMC-owned release block

A PMC member who only signs artifacts built by someone else does not
actually know what they are signing, per ASF release policy guidance
on owned/controlled hardware. Move the build step into the PMC block
so the same PMC member builds, signs, commits to dist/dev, and
publishes the PyPI RC without handing control back to the Delegate.
(cherry picked from commit 4d56e6c)

Co-authored-by: Shahar Epstein <60007259+shahar1@users.noreply.github.com>
Lee-W added a commit to astronomer/airflow that referenced this pull request Jul 9, 2026
vatsrahul1001 pushed a commit that referenced this pull request Jul 9, 2026
…ommitters (#69417)

* Add framework for delegating providers release to non-PMC committers

The provider release cycle currently assumes a PMC member drives every
step, yet ASF policy only reserves the binding vote and dist/release
publication to the PMC. Documenting a clear split lets a non-PMC committer
run the bulk of the process while the PMC signs, publishes to PyPI, and
casts the binding votes — both spreading the release-manager load and
giving prospective PMC members a supervised on-ramp.

Generated-by: Claude Code (Opus 4.8 1M context)

* Merge the provider build step into the PMC-owned release block

A PMC member who only signs artifacts built by someone else does not
actually know what they are signing, per ASF release policy guidance
on owned/controlled hardware. Move the build step into the PMC block
so the same PMC member builds, signs, commits to dist/dev, and
publishes the PyPI RC without handing control back to the Delegate.
(cherry picked from commit 4d56e6c)

Co-authored-by: Shahar Epstein <60007259+shahar1@users.noreply.github.com>
Lee-W added a commit to astronomer/airflow that referenced this pull request Jul 9, 2026
Lee-W added a commit to astronomer/airflow that referenced this pull request Jul 9, 2026
Lee-W added a commit to astronomer/airflow that referenced this pull request Jul 9, 2026
Lee-W added a commit to astronomer/airflow that referenced this pull request Jul 9, 2026
Lee-W added a commit to astronomer/airflow that referenced this pull request Jul 9, 2026
Lee-W added a commit to astronomer/airflow that referenced this pull request Jul 9, 2026
Lee-W added a commit to astronomer/airflow that referenced this pull request Jul 9, 2026
Lee-W added a commit to astronomer/airflow that referenced this pull request Jul 9, 2026
@shahar1
shahar1 deleted the delegate-providers-release branch July 9, 2026 19:53
potiuk pushed a commit that referenced this pull request Jul 12, 2026
…ommitters (#69417) (#69634)

* Add framework for delegating providers release to non-PMC committers

The provider release cycle currently assumes a PMC member drives every
step, yet ASF policy only reserves the binding vote and dist/release
publication to the PMC. Documenting a clear split lets a non-PMC committer
run the bulk of the process while the PMC signs, publishes to PyPI, and
casts the binding votes — both spreading the release-manager load and
giving prospective PMC members a supervised on-ramp.

Generated-by: Claude Code (Opus 4.8 1M context)

* Merge the provider build step into the PMC-owned release block

A PMC member who only signs artifacts built by someone else does not
actually know what they are signing, per ASF release policy guidance
on owned/controlled hardware. Move the build step into the PMC block
so the same PMC member builds, signs, commits to dist/dev, and
publishes the PyPI RC without handing control back to the Delegate.
(cherry picked from commit 4d56e6c)

Co-authored-by: Shahar Epstein <60007259+shahar1@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants