Skip to content

ci: PyPI Trusted Publishing workflow + README/OSS visibility polish - #3

Merged
felmonon merged 1 commit into
mainfrom
chore/trusted-publishing-and-polish
Jul 14, 2026
Merged

ci: PyPI Trusted Publishing workflow + README/OSS visibility polish#3
felmonon merged 1 commit into
mainfrom
chore/trusted-publishing-and-polish

Conversation

@felmonon

Copy link
Copy Markdown
Owner

Why

Publishing v0.2.1 required manually creating a PyPI API token and running
uv publish by hand. That doesn't scale and means a long-lived (or
frequently-rotated) credential has to be managed. PyPI's Trusted Publishing
(OIDC) lets GitHub Actions authenticate to PyPI per-run with a short-lived
token, no stored secret required.

This PR also adds standard OSS visibility polish now that the package is
live.

Changes

  • .github/workflows/release.yml: new workflow, triggered on
    release: published. Builds the sdist/wheel in one job, then publishes to
    PyPI in a second job scoped to the pypi GitHub Actions environment with
    id-token: write permission (OIDC) using pypa/gh-action-pypi-publish.
    No PyPI token is stored anywhere in the repo or its secrets.
  • PyPI-side: added a Trusted Publisher for felmonon/agent-reliability-harness,
    workflow release.yml, environment pypi (done on pypi.org, not part of
    this diff).
  • README.md: added PyPI version / Python versions / downloads / CI /
    license badges; updated the quickstart to pip install agent-reliability-harness now that it's live, keeping the editable-checkout
    path for contributors.
  • docs/quickstart.md: same install-instruction update.
  • GitHub repo "About" sidebar website now points at the PyPI project page
    (done on github.com, not part of this diff; previously linked to the
    author's portfolio page, changed at the user's explicit choice).

Verification

  • 194 tests pass, ruff clean, mypy strict clean
  • Workflow YAML validated with PyYAML
  • All badge URLs return 200
  • No remaining "not yet on PyPI" references in docs

Not in this PR

  • No new release is cut here. The next tagged GitHub release will be the
    first one to flow through this automated path — the manual token used for
    v0.2.1 has already been revoked from PyPI.

… docs

- add .github/workflows/release.yml: builds sdist/wheel and publishes to
  PyPI via OIDC trusted publishing (pypa/gh-action-pypi-publish) whenever a
  GitHub release is published, using a dedicated 'pypi' environment and no
  stored API token
- PyPI trusted publisher configured on pypi.org for felmonon/
  agent-reliability-harness, workflow release.yml, environment pypi
- README: add PyPI version, Python versions, downloads, CI, and license
  badges
- README + docs/quickstart.md: update install instructions now that the
  package is live on PyPI (pip install agent-reliability-harness), keep
  the editable-checkout install as the contributor path
- GitHub repo About sidebar website updated to the PyPI project page
@felmonon
felmonon merged commit d66816e into main Jul 14, 2026
8 checks passed
@felmonon
felmonon deleted the chore/trusted-publishing-and-polish branch July 14, 2026 17:29
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