diff --git a/src/dstack/_internal/core/backends/vastai/compute.py b/src/dstack/_internal/core/backends/vastai/compute.py index 3ee5c3d02..6843135ed 100644 --- a/src/dstack/_internal/core/backends/vastai/compute.py +++ b/src/dstack/_internal/core/backends/vastai/compute.py @@ -205,6 +205,16 @@ def update_provisioning_data( and ": OCI runtime create failed:" in resp["status_msg"] ): raise ProvisioningError(resp["status_msg"]) + if ( + resp.get("cur_state") + == resp.get("intended_status") + == resp.get("next_state") + == "stopped" + ): + # Can happen, among other cases, when a spot instance is outbid (interrupted) + raise ProvisioningError( + "Vast.ai reports current and intended instance state as `stopped`" + ) class VastAIOfferBackendData(CoreModel):