Skip to content

Commit 68cd543

Browse files
committed
fix(zgsm): safely pass optional language metadata to avoid runtime errors
1 parent ef96fbd commit 68cd543

File tree

4 files changed

+13
-7
lines changed

4 files changed

+13
-7
lines changed

src/api/providers/zgsm.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -536,7 +536,7 @@ export class ZgsmAiHandler extends BaseProvider implements SingleCompletionHandl
536536
Object.assign(isAzureAiInference ? { path: OPENAI_AZURE_AI_INFERENCE_PATH } : {}, {
537537
headers: {
538538
...this.buildHeaders(
539-
{ language: metadata.language, taskId: requestId },
539+
{ language: metadata?.language, taskId: requestId },
540540
requestId,
541541
cachedClientId,
542542
cachedWorkspacePath,

src/core/task/Task.ts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -943,11 +943,13 @@ export class Task extends EventEmitter<TaskEvents> implements TaskLike {
943943
)
944944

945945
if (lastFollowUpIndex !== -1) {
946-
// Mark this follow-up as answered
947-
this.clineMessages[lastFollowUpIndex].isAnswered = true
948-
// Save the updated messages
949-
this.saveClineMessages().catch((error) => {
950-
console.error("Failed to save answered follow-up state:", error)
946+
delay(30).then(() => {
947+
// Mark this follow-up as answered
948+
this.clineMessages[lastFollowUpIndex].isAnswered = true
949+
// Save the updated messages
950+
this.saveClineMessages().catch((error) => {
951+
console.error("Failed to save answered follow-up state:", error)
952+
})
951953
})
952954
}
953955
}

src/core/webview/messageEnhancer.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ export interface MessageEnhancerOptions {
1010
customSupportPrompts?: Record<string, any>
1111
listApiConfigMeta: Array<{ id: string; name?: string }>
1212
enhancementApiConfigId?: string
13+
language?: string
1314
includeTaskHistoryInEnhance?: boolean
1415
currentClineMessages?: ClineMessage[]
1516
providerSettingsManager: ProviderSettingsManager
@@ -41,6 +42,7 @@ export class MessageEnhancer {
4142
includeTaskHistoryInEnhance,
4243
currentClineMessages,
4344
providerSettingsManager,
45+
language,
4446
} = options
4547

4648
// Determine which API configuration to use
@@ -76,7 +78,7 @@ export class MessageEnhancer {
7678
)
7779

7880
// Call the single completion handler to get the enhanced prompt
79-
const enhancedText = await singleCompletionHandler(configToUse, enhancementPrompt)
81+
const enhancedText = await singleCompletionHandler(configToUse, enhancementPrompt, "", { language })
8082

8183
return {
8284
success: true,

src/core/webview/webviewMessageHandler.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1784,6 +1784,7 @@ export const webviewMessageHandler = async (
17841784
listApiConfigMeta = [],
17851785
enhancementApiConfigId,
17861786
includeTaskHistoryInEnhance,
1787+
language,
17871788
} = state
17881789

17891790
const currentCline = provider.getCurrentTask()
@@ -1797,6 +1798,7 @@ export const webviewMessageHandler = async (
17971798
includeTaskHistoryInEnhance,
17981799
currentClineMessages: currentCline?.clineMessages,
17991800
providerSettingsManager: provider.providerSettingsManager,
1801+
language,
18001802
})
18011803

18021804
if (result.success && result.enhancedText) {

0 commit comments

Comments
 (0)