Rapid OS v3.1.1 Release Checklist
This checklist documents the exact verification and release procedure for cutting the v3.1.1 release once the release-readiness Pull Request is merged into main.
1. Mandatory Pre-Tag Verification Gates on main
All of the following gates MUST be checked before creating tag v3.1.1:
-
python -m buildsucceeds - wheel exists (
dist/rapid_os-3.1.1-py3-none-any.whl) - sdist exists (
dist/rapid_os-3.1.1.tar.gz) - clean wheel installation succeeds outside repository checkout
- declared Python versions (
3.10,3.11,3.12,3.13) are green in CI - stable installer resolves exact
v3.1.1tag (install.shandinstall.ps1) - stable installation docs do not track
main
Step-by-Step Verification Commands
- Checkout
mainand pull the merged release-readiness commit:git checkout maingit pull --ff-only origin maingit status - Verify clean working tree (
nothing to commit, working tree clean). - Verify version output:
python rapid.py --version# Expected: Rapid OS 3.1.1
- Verify bytecode compilation and full test suite:
python -m compileall -q rapid.py rapid_os testspython -m unittest discover -v
- Build distribution artifacts (
wheel+sdist) and verify both exist:python -m pip install --upgrade pip buildpython -m buildtest -f dist/rapid_os-3.1.1-py3-none-any.whltest -f dist/rapid_os-3.1.1.tar.gz - Verify clean wheel installation in an isolated virtual environment outside the checkout:
python -m venv /tmp/rapid-wheel-check/tmp/rapid-wheel-check/bin/pip install dist/rapid_os-3.1.1-py3-none-any.whl(cd /tmp && /tmp/rapid-wheel-check/bin/rapid --version)(cd /tmp && /tmp/rapid-wheel-check/bin/rapid --help)(cd /tmp && /tmp/rapid-wheel-check/bin/rapid guide)(cd /tmp && /tmp/rapid-wheel-check/bin/rapid doctor)
- Smoke test with the wheel installed outside the checkout, in a temporary git project:
python -m venv /tmp/rapid-smoke-venv/tmp/rapid-smoke-venv/bin/pip install dist/rapid_os-3.1.1-py3-none-any.whlmkdir /tmp/rapid-smoke && cd /tmp/rapid-smoke && git init -qecho "print('hello')" > app.py/tmp/rapid-smoke-venv/bin/rapid init --yes --test-command "python -m unittest discover"/tmp/rapid-smoke-venv/bin/rapid shortcuts install --harness claude --dry-run --json# Expected: 8 files, no RAPID1315 in "warnings"echo '{"title":"Smoke","business_objective":"Smoke test","problem_statement":"None","acceptance_criteria":["It runs"],"tasks":["T001: Smoke task"]}' \| /tmp/rapid-smoke-venv/bin/rapid start feature --spec-file - --json# Expected: exit code 0
- Confirm GitHub Actions CI (
Testsworkflow across Python3.10,3.11,3.12, and3.13) is green onmain.
2. Tagging v3.1.1
Once main is verified and green:
git checkout main
git pull --ff-only origin main
git tag -a v3.1.1 -m "Rapid OS v3.1.1"
git push origin v3.1.1
3. Publishing the GitHub Release
Create the GitHub Release for tag v3.1.1 using docs/release-v3.1.1.md:
gh release create v3.1.1 \
--title "Rapid OS v3.1.1" \
--notes-file docs/release-v3.1.1.md
4. Publishing the documentation portal (mandatory after the tag)
The portal is not published automatically: .github/workflows/docs-deploy.yml only runs on workflow_dispatch, so merging to main or pushing the tag does not update https://alyconr.github.io/Rapid-OS/. After tagging, a person must run it:
gh workflow run docs-deploy.yml --ref main
gh run list --workflow docs-deploy.yml --limit 1
-
Deploy Documentationfinished withbuild,deployandsmoke-testgreen - the live portal shows the new release page (see documentation deployment)