{"record":{"id":"2c29379fb95d8981","repo":"zed-industries/zed","slug":"timed-out-after-s-while-fetching-url","errorCode":null,"errorMessage":"timed out after {}s while fetching {url}","messagePattern":"timed out after (.+?)s while fetching (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/project/src/agent_registry_store.rs","lineNumber":561,"sourceCode":"        let mut response = http_client\n            .get(url, AsyncBody::default(), true)\n            .await\n            .with_context(|| format!(\"requesting {url}\"))?;\n\n        let status = response.status();\n        let mut body = Vec::new();\n        response\n            .body_mut()\n            .read_to_end(&mut body)\n            .await\n            .with_context(|| format!(\"reading response from {url}\"))?;\n\n        Ok((status, body))\n    }\n    .with_timeout(timeout, executor)\n    .await\n    .map_err(|_| {\n        anyhow!(\n            \"timed out after {}s while fetching {url}\",\n            timeout.as_secs()\n        )\n    })?\n}\n\nfn resolve_icon_url(entry: &RegistryEntry) -> Option<String> {\n    let icon = entry.icon.as_ref()?;\n    if icon.starts_with(\"https://\") || icon.starts_with(\"http://\") {\n        return Some(icon.to_string());\n    }\n\n    let relative_icon = icon.trim_start_matches(\"./\");\n    Some(format!(\n        \"https://raw.githubusercontent.com/agentclientprotocol/registry/main/{}/{relative_icon}\",\n        entry.id\n    ))\n}","sourceCodeStart":543,"sourceCodeEnd":579,"githubUrl":"https://github.com/zed-industries/zed/blob/f4178619acd0d47ea1f76a2025c42962c6d6638c/crates/project/src/agent_registry_store.rs#L543-L579","documentation":"The with_timeout wrapper around the registry fetch elapsed before the request/response completed; the underlying future was cancelled and replaced by this timeout error naming the URL and the configured limit. Used for fetching the agent registry index and icon downloads, it fires on slow networks or an unresponsive host.","triggerScenarios":"Thrown at crates/project/src/agent_registry_store.rs:561 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check connectivity to the registry host and retry; the fetch is re-attempted on next use","If on a slow link, consider a larger timeout configuration for registry fetches","Verify no proxy is stalling the response body read"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"f4178619acd0d47ea1f76a2025c42962c6d6638c","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}