Release Process¶
Overview¶
The Physics OS uses tag-based release automation via GitHub Actions.
Steps¶
- Version bump — Update
VERSIONfile at repository root - Sync versions —
make version-syncpropagates to all manifests - Quality gates —
make checkruns Python + Rust quality gates - Tag —
git tag -a v4.0.1 -m "Release 4.0.1" - Push —
git push origin v4.0.1triggers the release workflow - Automated —
.github/workflows/release.ymlbuilds, validates, and creates a GitHub Release with artifacts
Version Files¶
The canonical version source is VERSION:
tools/sync_versions.py propagates these to:
pyproject.toml(PACKAGE)CITATION.cff(RELEASE)ontic/__init__.py(PACKAGE)physics_os/__init__.py(PACKAGE, RUNTIME)Cargo.tomlheader comment (RELEASE)