-
Notifications
You must be signed in to change notification settings - Fork 0
Releases and Updates
Parent section: Operations
SDAC uses official and experimental release channels. Updates should be pushed to GitHub and documented with clear scope.
Use these labels in release notes and update descriptions:
-
Bot update- bot/server/dashboard only. -
App update- app-only work. -
Bot and App update- changes affect both backend/bot/dashboard and the app.
Official releases are stable releases intended for normal installs. They should update the latest-official release pointer and any related official version tag.
Official releases should include:
- Version number.
- Update scope.
- Summary of user-facing changes.
- Install/update instructions.
- Assets such as Linux installer, Windows installer, app artifacts when relevant.
- Notes for any database migrations or required env changes.
Experimental releases are for testing new features before official promotion. They should remain visible in release/update views.
If the most recent update is official and there is no newer experimental build, latest-experimental should still work according to the project update-selection rules.
Use the established version standard. For example, a 3.1.0 official release should be tagged/released as version-3.1.0, not an inconsistent version string.
Official update notifications should post to configured Discord channels when enabled. When testing:
- Confirm notifications are enabled.
- Confirm the target channel exists and the bot can post.
- Confirm the release is official, not only experimental.
- Confirm the release checker can see the latest GitHub release.
- Use the dashboard release notification test when available.
After the updater is installed, common update commands include:
sdac-update latest-official
sdac-update "Version 3"
sdac-update latest-experimental
sdac-update 3.1.0Optional checks:
SDAC_RUN_RESTORE_TEST=1 SDAC_RUN_PRODUCTION_CHECK=1 sdac-update latest-officialBefore release:
- Run Python compile checks.
- Run
scripts/pre_release_smoke.py. - Check dashboard routes touched by the update.
- Check service restart behavior when deployment scripts changed.
- Check release/update views.
- Check notification test behavior for official releases.
- Verify no secrets, database files, media, keystores, or generated local config drift are committed.
Rollback should preserve:
- Database backups.
- Config backups.
- Release metadata.
- Service restart status.
Use the dashboard maintenance rollback queue only for actions it supports.