86 Package-Index Release Plan
87 Package-Index Release Plan
This page prepares the package-index release path without pretending the package has already been uploaded. Local wheel/sdist checks are release evidence; public TestPyPI/PyPI availability requires a named human maintainer to perform upload and record the post-upload checks.
The dry-run preflight only proves that the command contract and report path are valid. It does not prove public package-index availability.
87.1 Status
| Area | Value |
|---|---|
| Package | software-grimoire |
| Version | 3.0.0 |
| Upload status | not-uploaded-human-required |
| Human upload required | true |
| Workflow | .github/workflows/publish-package.yml |
| Authentication | PyPI Trusted Publishing via GitHub OIDC |
87.2 Preflight
python3 scripts/bootstrap_project.pypython3 scripts/validate_data.pypython3 scripts/check_package_publish_workflow.pypython3 -m pytestpython3 scripts/check_package.pypython3 scripts/check_package_index.py --index pypi --dry-run --write-report tmp/package-index-smoke-dry-run.jsonquarto renderpython3 scripts/smoke_public_site.py --write-report tmp/package-index-smoke.json
87.3 Build
rm -rf dist
python3 -m build
python3 -m twine check dist/*87.4 Trusted Publishing Workflow
Trigger: workflow_dispatch
Authentication: PyPI Trusted Publishing via GitHub OIDC
Required environments: testpypi, pypi
Required permission: id-token: write
Manual confirmation phrase: publish software-grimoire
Post-publish reports:
tmp/package-index-smoke-testpypi.jsontmp/package-index-smoke-pypi.json
87.5 TestPyPI
Human required: true
gh workflow run .github/workflows/publish-package.yml -f index=testpypi -f version=3.0.0 -f confirmation='publish software-grimoire'
python3 scripts/check_package_index.py --index testpypi --write-report examples/adoption/package-index-smoke.json87.6 PyPI
Human required: true
gh workflow run .github/workflows/publish-package.yml -f index=pypi -f version=3.0.0 -f confirmation='publish software-grimoire'
python3 scripts/check_package_index.py --index pypi --write-report examples/adoption/package-index-smoke.json87.7 Evidence Rules
- Do not mark package-index release complete before a human performs upload.
- Do not count local wheel install as package-index availability.
- Configure PyPI/TestPyPI Trusted Publisher entries before dispatching the publish workflow.
- Commit examples/adoption/package-index-smoke.json only after the checker installs the uploaded version from the selected public index.
- Record TestPyPI/PyPI URL, uploader, date, installed version, and post-upload smoke output after upload.
Raw plan: package-index-release-plan.json
Pending smoke template: package-index-smoke-template.json