pub async fn run_command_with_timeout( cmd: &str, args: &[&str], cwd: &Path, timeout_secs: u64, ) -> Result<Output>
Helper to run a command with custom timeout