From 56754712f487597d0c4ef15c26d4987cc85788ca Mon Sep 17 00:00:00 2001 From: Roo Code Date: Fri, 1 Aug 2025 00:45:33 +0000 Subject: [PATCH] fix: update buildApiHandler return type to support prompt enhancement - Changed buildApiHandler return type from ApiHandler to ApiHandler & Partial - Updated singleCompletionHandler to check for completePrompt method existence - This fixes the "Failed to enhance prompt" error by properly exposing the completePrompt method Fixes #6529 --- src/api/index.ts | 2 +- src/utils/single-completion-handler.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/api/index.ts b/src/api/index.ts index 5daa53396f..520b3205c7 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -64,7 +64,7 @@ export interface ApiHandler { countTokens(content: Array): Promise } -export function buildApiHandler(configuration: ProviderSettings): ApiHandler { +export function buildApiHandler(configuration: ProviderSettings): ApiHandler & Partial { const { apiProvider, ...options } = configuration switch (apiProvider) { diff --git a/src/utils/single-completion-handler.ts b/src/utils/single-completion-handler.ts index 4606a17bab..b00559bc4b 100644 --- a/src/utils/single-completion-handler.ts +++ b/src/utils/single-completion-handler.ts @@ -17,9 +17,9 @@ export async function singleCompletionHandler(apiConfiguration: ProviderSettings const handler = buildApiHandler(apiConfiguration) // Check if handler supports single completions - if (!("completePrompt" in handler)) { + if (!handler.completePrompt) { throw new Error("The selected API provider does not support prompt enhancement") } - return (handler as SingleCompletionHandler).completePrompt(promptText) + return handler.completePrompt(promptText) }