{"record":{"id":"254ab5c09b0d14fd","repo":"continuedev/continue","slug":"relace-provider-does-not-support-streaming-fim-com","errorCode":null,"errorMessage":"Relace provider does not support streaming FIM completion.","messagePattern":"Relace provider does not support streaming FIM completion\\.","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/openai-adapters/src/apis/Relace.ts","lineNumber":165,"sourceCode":"  completionNonStream(\n    body: CompletionCreateParamsNonStreaming,\n    signal: AbortSignal,\n  ): Promise<Completion> {\n    throw new Error(\n      \"Relace provider does not support non-streaming completion.\",\n    );\n  }\n  completionStream(\n    body: CompletionCreateParamsStreaming,\n    signal: AbortSignal,\n  ): AsyncGenerator<Completion> {\n    throw new Error(\"Relace provider does not support streaming completion.\");\n  }\n  fimStream(\n    body: FimCreateParamsStreaming,\n    signal: AbortSignal,\n  ): AsyncGenerator<ChatCompletionChunk> {\n    throw new Error(\n      \"Relace provider does not support streaming FIM completion.\",\n    );\n  }\n  embed(body: EmbeddingCreateParams): Promise<CreateEmbeddingResponse> {\n    throw new Error(\"Relace provider does not support embeddings.\");\n  }\n  rerank(body: RerankCreateParams): Promise<CreateRerankResponse> {\n    throw new Error(\"Relace provider does not support reranking.\");\n  }\n  list(): Promise<Model[]> {\n    throw new Error(\"Relace provider does not support model listing.\");\n  }\n}\n","sourceCodeStart":147,"sourceCodeEnd":179,"githubUrl":"https://github.com/continuedev/continue/blob/5522c6f44ca0ac3528b37244818fbfa39b5af470/packages/openai-adapters/src/apis/Relace.ts#L147-L179","documentation":"Relace's adapter explicitly rejects FIM (fill-in-the-middle) streaming requests: 'Relace provider does not support streaming FIM completion.' Its editing model is driven through the chat edit API, not raw FIM.","triggerScenarios":"Calling fimStream() on a Relace adapter with FimCreateParamsStreaming.","commonSituations":"Code-completion/autocomplete features configured with Relace expecting Codestral-style FIM endpoints; generic FIM routing across all providers.","solutions":["Use Relace's chat edit endpoint (chatCompletionStream with prompt/prediction) instead of FIM","Point FIM requests at a FIM-capable provider","Gate FIM traffic on provider capability checks"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":"if (provider === 'relace') throw new Error('Relace has no FIM; use chat edit API');","typeGuard":"const supportsFim = (p: string) => p !== 'relace';","tryCatchPattern":"try { yield* api.fimStream(body); } catch (e) { if (e.message.includes('does not support streaming FIM')) { /* reroute to FIM provider */ } else throw e; }","preventionTips":["Reserve FIM routes for FIM-capable providers"],"tags":["relace","unsupported-operation","fim","code-completion"],"backgroundTag":"unsupported-operation","analyzedSha":"5522c6f44ca0ac3528b37244818fbfa39b5af470","analyzedAt":"2026-08-27T11:28:54.683Z","schemaVersion":2},"datasetVersion":"2026-08-27T13:17:12.746Z"}