pub fn migration_failed_dialog_body(reason: &str) -> StringExpand description
Body for that dialog. Kept here (not in each supervisor) so Windows and Unix show the same words.
Every sentence is something the launcher actually knows:
- Restart-to-retry: srv re-runs every unapplied migration on the next
launch (
run_pending_migrationsfilters onmigration_is_applied). - The backup ordering:
runner.rs::run_pending_migrationscallsbackup_stores(→~/.agentmux/shared/backups/pre-migration-<ver>-<ts>/) BEFORE applying anything, and returnsErr("... backup failed: ...")without running a migration if that copy fails. So the reason text itself tells the user which case they are in; we state the ordering and let it do so, rather than asserting a backup exists.
We deliberately do NOT claim “your data has not been changed” or “a
snapshot was taken”: the backup step is one of the things that can be
the failure, and bootstrap/stores.rs’s separate
maybe_snapshot_pre_migration is best-effort (non-fatal on error,
Ok(None) when it decides none is needed). An earlier revision of this
text made that claim unconditionally (#3043).