Use this checklist for every release to keep publishing and regression checks consistent.
- Ensure branch is clean enough for release work:
git status
- Bump version in
pyproject.toml. - Verify docs reflect current behavior:
README.md- this
RELEASE.md
- Activate repo venv.
- Install/upgrade release tooling:
python -m pip install --upgrade build twine
- Build:
python -m build
- Validate artifacts:
python -m twine check dist/*
- Create a fresh folder + fresh venv.
- Install from local wheel:
pip install dist\lumagent-<version>-py3-none-any.whl
- Run Lumagent from that folder:
lumagent
- Verify user-level key loading:
%USERPROFILE%\.lumagent\.envon Windows~/.lumagent/.envon macOS/Linux
- Upload to TestPyPI first:
python -m twine upload --repository testpypi dist/*
- Install from TestPyPI in a fresh env and smoke test.
- Publish to PyPI:
python -m twine upload dist/*
- Verify public install:
pip install -U lumagent
- Commit release metadata/docs if needed.
- Tag release:
git tag v<version>git push origin v<version>
- Add a short changelog note for what changed in this version.