{"record":{"id":"462024e9a0293aa3","repo":"zeroclaw-labs/zeroclaw","slug":"http-connect-proxy-returned-non-200-response-sta","errorCode":null,"errorMessage":"HTTP CONNECT proxy returned non-200 response: {status_line}","messagePattern":"HTTP CONNECT proxy returned non-200 response: (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/zeroclaw-config/src/schema.rs","lineNumber":10967,"sourceCode":"\n            // Read the response (we only need the status line).\n            let mut buf = vec![0u8; 4096];\n            let mut total = 0usize;\n            loop {\n                let n = tcp.read(&mut buf[total..]).await?;\n                if n == 0 {\n                    anyhow::bail!(\"HTTP CONNECT proxy closed connection before response\");\n                }\n                total += n;\n                // Look for end of HTTP headers.\n                if let Some(pos) = find_header_end(&buf[..total]) {\n                    let status_line = std::str::from_utf8(&buf[..pos])\n                        .unwrap_or(\"\")\n                        .lines()\n                        .next()\n                        .unwrap_or(\"\");\n                    if !status_line.contains(\"200\") {\n                        anyhow::bail!(\n                            \"HTTP CONNECT proxy returned non-200 response: {status_line}\"\n                        );\n                    }\n                    break;\n                }\n                if total >= buf.len() {\n                    anyhow::bail!(\"HTTP CONNECT proxy response too large\");\n                }\n            }\n\n            BoxedIo(Box::new(tcp))\n        }\n        scheme => {\n            anyhow::bail!(\"Unsupported proxy scheme '{scheme}' for WebSocket connections\");\n        }\n    };\n\n    // If the target is wss://, wrap in TLS.","sourceCodeStart":10949,"sourceCodeEnd":10985,"githubUrl":"https://github.com/zeroclaw-labs/zeroclaw/blob/88bb9c8533fc57ed7a03e36ca7c9ed2bf8336dcc/crates/zeroclaw-config/src/schema.rs#L10949-L10985","documentation":"Error \"HTTP CONNECT proxy returned non-200 response: {status_line}\" thrown in zeroclaw-labs/zeroclaw.","triggerScenarios":"Thrown at crates/zeroclaw-config/src/schema.rs:10967 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the proxy response status line; verify CONNECT target and proxy authentication credentials."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"88bb9c8533fc57ed7a03e36ca7c9ed2bf8336dcc","analyzedAt":"2026-08-23T01:07:41.857Z","schemaVersion":2},"datasetVersion":"2026-08-23T08:06:27.607Z"}