Summary
Add automated semantic versioning to the sysdiagnose project. When commits are pushed/merged to main, the system should automatically determine the appropriate SemVer bump based on conventional commit messages, create a Git tag, update pyproject.toml, and publish a GitHub Release with a changelog.
Goals
- Automate version bumps following SemVer semantics (feat→minor, fix→patch, breaking→major)
- Keep
pyproject.toml version in sync with Git tags
- Generate changelogs grouped by commit type in GitHub Releases
- Only release after CI (codestyle + tests) passes
- Replace the existing
release.yml Docker workflow with a versioning-only workflow
Constraints
- Must work with the existing conventional commit enforcement (pre-commit hook)
- Must not create infinite loops (version commit re-triggering the workflow)
- Bootstrap from the current version
0.1.0
Summary
Add automated semantic versioning to the sysdiagnose project. When commits are pushed/merged to
main, the system should automatically determine the appropriate SemVer bump based on conventional commit messages, create a Git tag, updatepyproject.toml, and publish a GitHub Release with a changelog.Goals
pyproject.tomlversion in sync with Git tagsrelease.ymlDocker workflow with a versioning-only workflowConstraints
0.1.0