From 45f3d88ddf3bd99dbf13c8c14584b3610388bdb1 Mon Sep 17 00:00:00 2001 From: Daniel <57051444+daniel-lxs@users.noreply.github.com> Date: Wed, 9 Jul 2025 18:22:05 -0500 Subject: [PATCH] fix(embeddings): Translate error messages before sending to UI (#5535) fix(embeddings): translate error messages before sending to UI - Import t() function from i18n module - Wrap error messages with t() translation function in _initializeEmbedder() - Ensures proper localization of error messages in the UI - Falls back to original message if no translation exists --- src/services/code-index/manager.ts | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/services/code-index/manager.ts b/src/services/code-index/manager.ts index 7002283226..bd782da84c 100644 --- a/src/services/code-index/manager.ts +++ b/src/services/code-index/manager.ts @@ -12,6 +12,7 @@ import { CacheManager } from "./cache-manager" import fs from "fs/promises" import ignore from "ignore" import path from "path" +import { t } from "../../i18n" export class CodeIndexManager { // --- Singleton Implementation --- @@ -261,12 +262,16 @@ export class CodeIndexManager { // Validate embedder configuration before proceeding const validationResult = await this._serviceFactory.validateEmbedder(embedder) if (!validationResult.valid) { - // Set error state with clear message - this._stateManager.setSystemState( - "Error", - validationResult.error || "Embedder configuration validation failed", - ) - throw new Error(validationResult.error || "Invalid embedder configuration") + const errorMessage = validationResult.error || "Embedder configuration validation failed" + // Always attempt translation, use original as fallback + let translatedMessage = t(errorMessage) + // If translation returns a different value (stripped namespace), use original + if (translatedMessage !== errorMessage && !translatedMessage.includes(":")) { + translatedMessage = errorMessage + } + + this._stateManager.setSystemState("Error", translatedMessage) + throw new Error(translatedMessage) } // (Re)Initialize orchestrator