Skip to content

Releases and Updates

Baytae Tistear edited this page Jul 7, 2026 · 2 revisions

Releases and Updates

Parent section: Operations

SDAC uses official and experimental release channels. Updates should be pushed to GitHub and documented with clear scope.

Update Scope Labels

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

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

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.

Version Standard

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.

Discord Release Notifications

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.

Update Command

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.0

Optional checks:

SDAC_RUN_RESTORE_TEST=1 SDAC_RUN_PRODUCTION_CHECK=1 sdac-update latest-official

Pre-Release Checks

Before 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

Rollback should preserve:

  • Database backups.
  • Config backups.
  • Release metadata.
  • Service restart status.

Use the dashboard maintenance rollback queue only for actions it supports.

Clone this wiki locally