{"record":{"id":"dca65500abb9d504","repo":"ipfs/kubo","slug":"s-s","errorCode":null,"errorMessage":"%s: %s","messagePattern":"%s: %s","errorType":"http","errorClass":null,"httpStatus":null,"severity":"error","filePath":"core/corehttp/p2p_proxy.go","lineNumber":86,"sourceCode":"\n\tif _, err := peer.Decode(split[2]); err != nil {\n\t\treturn nil, fmt.Errorf(\"invalid request path '%s'\", path)\n\t}\n\n\tif split[3] == \"http\" {\n\t\treturn &proxyRequest{split[2], protocol.ID(\"/http\"), split[4]}, nil\n\t}\n\n\tsplit = strings.SplitN(path, \"/\", 7)\n\tif len(split) < 7 || split[3] != \"x\" || split[5] != \"http\" {\n\t\treturn nil, fmt.Errorf(\"invalid request path '%s'\", path)\n\t}\n\n\treturn &proxyRequest{split[2], protocol.ID(\"/x/\" + split[4] + \"/http\"), split[6]}, nil\n}\n\nfunc handleError(w http.ResponseWriter, msg string, err error, code int) {\n\thttp.Error(w, fmt.Sprintf(\"%s: %s\", msg, err), code)\n}\n","sourceCodeStart":68,"sourceCodeEnd":88,"githubUrl":"https://github.com/ipfs/kubo/blob/329838acdfafae224582930457efe80aa217afc0/core/corehttp/p2p_proxy.go#L68-L88","documentation":"Not a raised error itself: handleError is the p2p proxy's reporting helper that formats an already-caught error as '<msg>: <err>' and writes it to the HTTP response with the given status code. Seeing this text means an underlying proxy operation failed and was surfaced to the HTTP client.","triggerScenarios":"Thrown at core/corehttp/p2p_proxy.go:86 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Read the second half of the message: it carries the underlying cause (unknown protocol, peer dial failure, invalid path)","Verify the p2p tunnel/listener exists ('ipfs p2p ls') and the remote peer is reachable","Re-establish the listener with 'ipfs p2p listen' if it was closed"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"329838acdfafae224582930457efe80aa217afc0","analyzedAt":"2026-09-03T18:30:52.135Z","contentChangedAt":"2026-09-03T18:30:52.135Z","schemaVersion":2},"datasetVersion":"2026-09-11T00:17:11.886Z"}