CI verify parity, Python 3.13, and tag-gated release packaging (N9)#6
Merged
Conversation
CI workflow: - Add Python 3.13 to the test matrix and enable pip caching. - Add a verify job that runs the project's own gate suite (verify --profile full --gate-timeout 0), gated on the matrix via needs so red commits do not consume runners. - Add a build job (python -m build, twine check, artifact upload), also gated on the test matrix. Release path: - New tag-triggered release.yml: build, twine check, and a PyPI trusted-publishing job pinned to an immutable action SHA (pypa/gh-action-pypi-publish v1.14.0), gated on a 'pypi' GitHub environment so nothing can publish before one-time setup. - New RELEASING.md documenting the one-time PyPI trusted-publisher setup and the release procedure. - pyproject: add 3.13 classifier and a 'release' optional dependency group (build, twine), keeping dev lean. Validated locally: both workflows YAML-parse; python -m build succeeds; twine check PASSED for sdist and wheel; the built wheel installed into a fresh venv serves gpu-stack stats correctly. https://claude.ai/code/session_01Eu2JVnPFgMQftwYTP3cGQZ
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
N9 of 10: CI and packaging maturity
CI workflow
verifyjob running the project's own gate suite (verify --profile full --gate-timeout 0), gated on the matrix vianeedsso red commits do not consume runners.buildjob (python -m build,twine check, artifact upload), also gated on the test matrix.Release path
release.yml: build, twine check, and a PyPI trusted-publishing job pinned to an immutable action SHA (pypa/gh-action-pypi-publishv1.14.0), gated on apypiGitHub environment so nothing can publish before the documented one-time setup.RELEASING.mdwith the one-time PyPI trusted-publisher setup and release procedure.pyproject.toml: 3.13 classifier and areleaseoptional dependency group (build,twine), keepingdevlean.Code-review findings applied
release/v1(the job holdsid-token: write).buildandverifyjobs gated onneeds: testso artifacts cannot be produced from red commits.--read-onlyverify run was dropped (the suite already runs five times across matrix plus verify); read-only verification stays a local/release-time check per RELEASING.md.Validation (observed locally; Actions cannot run in this environment)
python -m buildsucceeded;twine check dist/*PASSED for sdist and wheel.gpu-stack statsfrom the venv reports the correct registry (16 systems, 1517 variables, 959 equations, 619 root inputs).dist/confirmed gitignored.https://claude.ai/code/session_01Eu2JVnPFgMQftwYTP3cGQZ
Generated by Claude Code