Skip to content

ci: add python release signing dry run#47

Merged
negillett merged 3 commits into
mainfrom
add-python-release-signing-caller
May 17, 2026
Merged

ci: add python release signing dry run#47
negillett merged 3 commits into
mainfrom
add-python-release-signing-caller

Conversation

@negillett
Copy link
Copy Markdown
Member

Summary

  • Add a manual release signing dry-run workflow for the Python SDK.
  • Build and test Python distributions, then sign the built dist artifacts through the canonical generic-artifact signing path.
  • Pin privileged workflow actions and scope OIDC/write permissions to the signing job only.

Test plan

  • .venv/bin/python -m unittest discover -s tests -v
  • .venv/bin/python -m build --outdir dist .
  • go run github.com/rhysd/actionlint/cmd/actionlint@latest .github/workflows/ci.yml .github/workflows/dco.yml .github/workflows/release-signing-dry-run.yml

Review

No blocking issues found in the internal review. Residual packaging note: the local build emits a setuptools deprecation warning for the existing project.license table shape in pyproject.toml; this predates the release caller and does not block the dry run.

Signed-off-by: Nathan Gillett <nathan@intentproof.io>
@cursor
Copy link
Copy Markdown

cursor Bot commented May 17, 2026

PR Summary

Medium Risk
Introduces a new workflow that requests OIDC and write permissions to produce signing attestations; misconfiguration could affect release artifact integrity. Scoped to workflow_dispatch and isolates elevated permissions to the signing job, reducing blast radius.

Overview
Adds a new workflow_dispatch GitHub Actions workflow (release-signing-dry-run.yml) to dry-run the Python SDK release signing flow.

The workflow checks out a caller-provided ref, installs deps, runs unit tests, builds dist/ artifacts, uploads them, then invokes the reusable release-build-sign.yml workflow to generate signing attestations for the built distributions (with Rekor publishing disabled).

Reviewed by Cursor Bugbot for commit ee06071. Bugbot is set up for automated code reviews on this repo. Configure here.

Signed-off-by: Nathan Gillett <nathan@intentproof.io>
Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 0e35822. Configure here.

Comment thread .github/workflows/release-signing-dry-run.yml
Signed-off-by: Nathan Gillett <nathan@intentproof.io>
@negillett negillett merged commit 0086c10 into main May 17, 2026
3 checks passed
@negillett negillett deleted the add-python-release-signing-caller branch May 17, 2026 11:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant