Skip to content

fix(release): require protected release-publish environment for npm/PyPI OIDC publishing - #132

Merged
alxxjohn merged 1 commit into
mainfrom
alexj/propose-fix-for-publishing-vulnerability
Aug 18, 2026
Merged

fix(release): require protected release-publish environment for npm/PyPI OIDC publishing#132
alxxjohn merged 1 commit into
mainfrom
alexj/propose-fix-for-publishing-vulnerability

Conversation

@alxxjohn

Copy link
Copy Markdown
Contributor

Motivation

  • The npm and PyPI publish jobs used OIDC (id-token: write) without a GitHub environment constraint, which lets a workflow-dispatchable caller on an unprotected ref impersonate the trusted top-level workflow and publish packages.

Description

  • Add environment: release-publish to the publish-npm job in .github/workflows/cd.yml.
  • Add environment: release-publish to the publish-pypi job in .github/workflows/cd.yml.
  • Update packaging/README.md to require the release-publish environment for npm and PyPI trusted-publisher configuration and to recommend deployment branch protection and required reviewers for that environment.

Testing

  • Parsed the modified workflow with ruby -e 'require "yaml"; YAML.parse_file(".github/workflows/cd.yml")' and the YAML parsed successfully.
  • Ran git diff --check and basic repository status checks which showed no diff errors.
  • actionlint was not available in the environment, so workflow static linting with actionlint was not executed.

Codex Task

@alxxjohn
alxxjohn merged commit 43cff7e into main Aug 18, 2026
16 checks passed
@alxxjohn
alxxjohn deleted the alexj/propose-fix-for-publishing-vulnerability branch August 18, 2026 23:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant