diff --git a/core/archipelago/src/update.rs b/core/archipelago/src/update.rs index fc476196..a55b67a0 100644 --- a/core/archipelago/src/update.rs +++ b/core/archipelago/src/update.rs @@ -1882,6 +1882,12 @@ mod tests { tokio::fs::write(staging.join("archipelago"), b"staged") .await .unwrap(); + // A *complete* staged update carries the marker; without it the state + // self-heal correctly treats this as a partial download and clears + // update_in_progress (see has_staged_update / #26). + tokio::fs::write(staging.join(STAGED_COMPLETE_MARKER), b"1") + .await + .unwrap(); let state = UpdateState { current_version: "1.0.0".to_string(), last_check: Some("2025-06-15T12:00:00Z".to_string()),