You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Rule: Do not bump SDK or desktop when only the workspace changes, and vice versa. Streams
may diverge (for example workspace 0.6.3, SDK 0.5.8, desktop 0.6.3).
Semver component guide (per stream)
Component
Increment when
Patch
Bug fixes, regressions, small non-breaking polish within that stream's current release line
Minor
Substantial additive features for that stream, or a roadmap milestone for workspace
Major
Breaking public contracts for that stream; workspace v1.0 positioning
Workspace-specific milestones
Milestone / phase
Bump
Bug fix in CLI / language / runtime
patch (workspace)
Architecture hardening phase (no user-visible theme)
patch or defer
Roadmap release milestone (v0.5, v1.0, …)
minor (workspace)
Breaking language syntax or default CLI behavior
major (workspace)
SDK-specific
Change
Bump
New REST route wrappers / gRPC client methods (all three SDKs)
Automatic desktop bump: When a merged PR has a release:* label and changes Control Center
paths (see scripts/control_center_paths_changed.sh), Auto release bumps the desktop stream
with the same semver component and pushes desktop-v*.
Version display: Control Center UI shows vX.Y.Z in the sidebar; spanda control-center --version and spanda control-center status report the UI semver; GET /v1/version and GET /v1/instance include control_center_ui_version. Full reference:
control-center-versioning.md.
Bump commands
# Workspace (CLI / platform) — updates CHANGELOG [Unreleased] → dated section
python3 scripts/bump_version.py minor --dry-run
python3 scripts/bump_version.py patch
# Official SDKs only (Rust + Python + TypeScript together)
python3 scripts/bump_version.py patch --stream sdk --dry-run
python3 scripts/bump_version.py minor --stream sdk
# Control Center desktop only
python3 scripts/bump_version.py patch --stream desktop --dry-run
python3 scripts/bump_version.py minor --stream desktop
Tag and push (only the stream you bumped)
# Workspace release
git tag v0.5.1 && git push origin v0.5.1
# SDK release (push all three tags)
git tag crates-sdk-v0.5.1 sdk-python-v0.5.1 npm-sdk-v0.5.1
git push origin crates-sdk-v0.5.1 sdk-python-v0.5.1 npm-sdk-v0.5.1
# Desktop release
git tag desktop-v0.5.1 && git push origin desktop-v0.5.1