This repository currently publishes release identity through Git tags and GitHub Releases. There is no in-code version constant to update, so the release checklist is mostly about docs, verification, tagging, and publishing from main.
- Release from
main. - Keep public release notes in
CHANGELOG.md, not in private assistant notes. - Do not tag a release that has not passed the current CI and the release checks below.
- Confirm the release commit is already on
main, or that the currentmainstate is the one you want to publish. - Update
CHANGELOG.mdso the release-facing changes are captured underUnreleased. - Check the public docs:
README.mdREADME_EN.mdREADME_ES.mdREADME_PT.mdREADME_RU.mdREADME_JA.mdCONTRIBUTING.mdSUPPORT.mdSECURITY.md
- Confirm public docs stand on their own for installation, support, contribution, and release flow without relying on private assistant notes.
- Confirm README layout parity:
- the AI-assisted install prompt remains visible and is not folded
- all language variants follow the same section order and examples
- lower-frequency compatibility details are folded without hiding primary workflows
- Run the minimum verification set from a clean working tree:
bash bootstrap.sh --dry-run
python3 ccsw.py -h
python3 ccsw.py list
python3 -m unittest discover -s tests -q- If the release touched bootstrap, command chaining, runtime lease behavior, overlays, or workflow/docs automation, also run:
python3 -m unittest -q tests.test_bootstrap tests.test_cli_smoke- Make sure GitHub Actions and CodeQL are green on the branch that will merge to
main.
The repository CI includes a lightweight docs check. Before tagging, either let that workflow pass on the release branch or mirror its intent locally: public docs should link the release docs, localized quickstarts should point back to the English reference plus support/security pages, and stale wording should be cleaned up before the tag is created. Also confirm that the public README variants still agree on the top-level product surface: hero banner, language links, primary install guidance, and public support/release links. The AI-assisted install prompt is treated as a primary install path. Do not hide it inside a folded section when refreshing README layout.
After the release commit is on main, and the same commit range is green on main CI / CodeQL:
- Choose the next version tag, for example
v0.1.0. - Move the
CHANGELOG.mdcontents you are shipping into a versioned section, or copy the relevantUnreleasednotes into the GitHub Release body if you prefer to keep a rolling unreleased section. - Create an annotated tag:
git checkout main
git pull --ff-only origin main
git tag -a vX.Y.Z -m "Release vX.Y.Z"
git push origin vX.Y.Z- Draft the GitHub Release from that tag.
- Use the matching
CHANGELOG.mdsection as the release notes base. - Link the release back to the CI and CodeQL workflows if the release notes mention validation or automation changes.
- Confirm the GitHub Release points at the correct tag on
main. - Check that README links to
CHANGELOG.md,RELEASING.md,SUPPORT.md, andSECURITY.mdstill render correctly in the published repo view. - If the release changed contributor expectations, update the issue templates or PR template in the same release train rather than leaving docs drift for later.