Zackriya-Solutions/meetily · error
Failed to start download for {}: {}
Error message
Failed to start download for {}: {} What it means
Returned by download_model_detailed when the initial client.get(file_url).send() fails at the transport level (no HTTP status was received). file_url points at huggingface.co/istupakov/parakeet-tdt-0.6b-v2-onnx/resolve/main/<file> for v2 models or meetily.towardsgeneralintelligence.com/models/parakeet-tdt-0.6b-v3-onnx/<file> for v3, so this is DNS resolution, connection, TLS, or proxy failure for those hosts.
Source
Thrown at frontend/src-tauri/src/parakeet_engine/parakeet_engine.rs:751
filename,
existing_size as f64 / 1_048_576.0,
expected_size as f64 / 1_048_576.0
);
continue;
}
log::info!("Downloading file {}/{}: {} (resuming from {} bytes)", index + 1, total_files, filename, existing_size);
// Build request with optional Range header for resume
let mut request = client.get(&file_url);
if existing_size > 0 {
request = request.header("Range", format!("bytes={}-", existing_size));
log::info!("Resuming download from byte {}", existing_size);
}
let mut response = request.send().await
.map_err(|e| {
anyhow!("Failed to start download for {}: {}", filename, e)
})?;
// Handle response status
let (file_total_size, resuming) = if response.status() == reqwest::StatusCode::PARTIAL_CONTENT {
// Server supports resume, get remaining size
let remaining = response.content_length().unwrap_or(0);
log::info!("Server supports resume, remaining: {} bytes", remaining);
(existing_size + remaining, true)
} else if response.status().is_success() {
// Fresh download or server doesn't support resume
if existing_size > 0 {
log::warn!("Server doesn't support resume for {}, starting fresh download", filename);
}
(response.content_length().unwrap_or(0), false)
} else if response.status() == reqwest::StatusCode::RANGE_NOT_SATISFIABLE {
// 416: Range not satisfiable - file complete or invalid range
log::warn!("Server returned 416 Range Not Satisfiable for {}", filename);
View on GitHub (pinned to 0281737d87)
Solutions
- Verify basic connectivity to the exact host: curl -I https://huggingface.co/... or https://meetily.towardsgeneralintelligence.com/... from the same machine
- Check VPN/proxy/firewall settings and whitelist the download host
- Fix DNS or switch networks, then retry - the engine removes the active-download entry and resumes partial files on the next attempt
- If HuggingFace is unreachable long-term, prefer the v3 model which is served from the meetily mirror instead
Defensive patterns
Strategy: retry
Validate before calling
// Cheap preflight before a long download: can we reach the host at all?
// (v2 -> huggingface.co, v3 -> meetily.towardsgeneralintelligence.com)
let host = if name.contains("-v2-") { "https://huggingface.co" } else { "https://meetily.towardsgeneralintelligence.com" };
if reqwest::get(host).await.is_err() {
anyhow::bail!("cannot reach {host} - check network/proxy before downloading");
} Try / catch
// Retry with backoff - transport failures are usually transient; the engine resumes partial files
let mut attempt = 0;
loop {
match engine.download_model(name, None).await {
Ok(()) => break,
Err(e) if e.to_string().contains("Failed to start download") && attempt < 3 => {
attempt += 1;
tokio::time::sleep(std::time::Duration::from_secs(5 * attempt as u64)).await;
}
Err(e) => return Err(e),
}
} Prevention
- Confirm the machine is online and DNS resolves the download host before large downloads
- Whitelist huggingface.co and meetily.towardsgeneralintelligence.com on firewalls/proxies
- Prefer the v3 model if HuggingFace is unreachable in your region (it uses the meetily mirror)
When it happens
Trigger: Machine offline or DNS cannot resolve huggingface.co / meetily.towardsgeneralintelligence.com; firewall or corporate proxy blocks the host; TLS interception with an untrusted CA breaks the handshake; the 30-second connect_timeout expires on a saturated link.
Common situations: Airplane mode/VPN dropped mid-flow; corporate egress filtering blocks file-hosting/CDN domains; captive portal intercepting the first request; regional network issues reaching HuggingFace CDN.
Related errors
- Retry failed for {}: {}
- {}: {}
- Failed to start download: {}
- Failed to read chunk: {}
- Parakeet model {} is not downloaded
AI-assisted analysis of Zackriya-Solutions/meetily@0281737d87 (2026-08-16).
Data as JSON: /api/errors/11585f570b6b8938.
Report an issue: GitHub.