@@ -17,6 +17,7 @@ use std::{
1717
1818use crate::{
1919 config::CONFIG_PATH_ENV,
20+ instance::STATUS_FILE_NAME,
2021 instance::VM_ROOT_LOG_NAME,
2122 instance::{
2223 DEFAULT_SSH_USER, InstanceConfig, build_ssh_login_actions, ensure_instance_dir,
@@ -765,6 +766,10 @@ fn run_manager_with(
765766 );
766767 tracing::info!("vm manager vm run completed");
767768 let vm_err = vm_result.err().map(|e| e.to_string());
769+ if let Some(err) = &vm_err {
770+ let status_path = instance_dir.join(STATUS_FILE_NAME);
771+ let _ = fs::write(&status_path, format!("error: {err}"));
772+ }
768773 let _ = event_tx.send(ManagerEvent::VmExited(vm_err.clone()));
769774 let event_loop_result: Result<(), String> = event_loop_handle
770775 .join()