{"record":{"id":"1f1f20d05ce53e2d","repo":"continuedev/continue","slug":"http-e-response-status-e-response-statustext","errorCode":null,"errorMessage":"HTTP ${e.response.status} ${e.response.statusText} from ${e.response.url}\\n\\n${e.response.body}","messagePattern":"HTTP (.+?) (.+?) from (.+?)\\\\n\\\\n(.+?)","errorType":"http","errorClass":null,"httpStatus":null,"severity":"error","filePath":"core/llm/index.ts","lineNumber":483,"sourceCode":"          const error = await this.parseError(resp);\n          throw error;\n        }\n\n        return resp;\n      } catch (e: any) {\n        Logger.error(e, {\n          context: \"llm_fetch\",\n          url: String(input),\n          method: init?.method || \"GET\",\n          model: this.model,\n          provider: this.providerName,\n        });\n\n        // Errors to ignore\n        if (e.message.includes(\"/api/tags\")) {\n          throw new Error(`Error fetching tags: ${e.message}`);\n        } else if (e.message.includes(\"/api/show\")) {\n          throw new Error(\n            `HTTP ${e.response.status} ${e.response.statusText} from ${e.response.url}\\n\\n${e.response.body}`,\n          );\n        } else {\n          if (!isAbortError(e)) {\n            // Don't pollute console with abort errors. Check on name instead of instanceof, to avoid importing node-fetch here\n            console.debug(\n              `${e.message}\\n\\nCode: ${e.code}\\nError number: ${e.errno}\\nSyscall: ${e.erroredSysCall}\\nType: ${e.type}\\n\\n${e.stack}`,\n            );\n          }\n          if (\n            e.code === \"ECONNREFUSED\" &&\n            e.message.includes(\"http://127.0.0.1:11434\")\n          ) {\n            const message = (await isOllamaInstalled())\n              ? \"Unable to connect to local Ollama instance. Ollama may not be running.\"\n              : \"Unable to connect to local Ollama instance. Ollama may not be installed or may not running.\";\n            throw new Error(message);\n          }","sourceCodeStart":465,"sourceCodeEnd":501,"githubUrl":"https://github.com/continuedev/continue/blob/5522c6f44ca0ac3528b37244818fbfa39b5af470/core/llm/index.ts#L465-L501","documentation":"Thrown in the Ollama customFetch path when a caught error's message references /api/show and the response was non-OK. /api/show is used to fetch model details, so this indicates Ollama answered but rejected the request — typically because the requested model name is not pulled/installed locally.","triggerScenarios":"Requesting a model that isn't present locally (e.g. mistral when only llama3 is pulled), a misspelled or non-canonical model tag, or a partially-pulled model, causing Ollama's /api/show to return 404.","commonSituations":"Using a model name from config that was never pulled on this machine; switching machines without re-pulling models; tag mismatches (e.g. llama3 vs llama3:latest vs llama3:8b).","solutions":["List installed models: curl http://localhost:11434/api/tags (or ollama list) and match the exact name/tag","Pull the model: ollama pull <model>","Fix typos or wrong tags in the model name in your config","For partially pulled models, re-run ollama pull to complete it"],"exampleFix":"# before\nmodel: \"mistral\"  # not installed -> 404 from /api/show\n# after\nollama pull mistral\nmodel: \"mistral:latest\"","handlingStrategy":"validation","validationCode":"const tags = await (await fetch('http://localhost:11434/api/tags')).json(); if (!tags.models.some(m => m.name === modelName)) throw new Error('model not pulled');","typeGuard":"const modelExists = (tags: { models: { name: string }[] }, name: string) => tags.models.some(m => m.name === name);","tryCatchPattern":"catch (e) { if (e.message.includes('/api/show') && /404/.test(e.message)) { await pullModel(); retry(); } else throw e; }","preventionTips":["Run ollama list and use exact tags","Pull models before referencing them","Prefer canonical names like model:latest"],"tags":["ollama","model-not-found","http","local-server"],"backgroundTag":"model-not-found","analyzedSha":"5522c6f44ca0ac3528b37244818fbfa39b5af470","analyzedAt":"2026-08-27T11:28:54.683Z","schemaVersion":2},"datasetVersion":"2026-08-27T13:17:12.746Z"}