From f3111c7c1714d84e836372164d483d1049d79925 Mon Sep 17 00:00:00 2001 From: hannesrudolph Date: Mon, 11 Aug 2025 09:30:52 -0600 Subject: [PATCH] chore: remove unused i18n keys for include max output tokens Removes unused translation strings introduced in PR #6864 that are no longer needed after PR #6921 refactoring. Keys removed: includeMaxOutputTokens, includeMaxOutputTokensDescription, maxOutputTokensLabel, maxTokensGenerateDescription --- .../providers/__tests__/openai.models.spec.ts | 25 +++++++++++++------ webview-ui/src/i18n/locales/ca/settings.json | 6 +---- webview-ui/src/i18n/locales/de/settings.json | 6 +---- webview-ui/src/i18n/locales/en/settings.json | 6 +---- webview-ui/src/i18n/locales/es/settings.json | 6 +---- webview-ui/src/i18n/locales/fr/settings.json | 6 +---- webview-ui/src/i18n/locales/hi/settings.json | 6 +---- webview-ui/src/i18n/locales/id/settings.json | 6 +---- webview-ui/src/i18n/locales/it/settings.json | 6 +---- webview-ui/src/i18n/locales/ja/settings.json | 6 +---- webview-ui/src/i18n/locales/ko/settings.json | 6 +---- webview-ui/src/i18n/locales/nl/settings.json | 6 +---- webview-ui/src/i18n/locales/pl/settings.json | 6 +---- .../src/i18n/locales/pt-BR/settings.json | 6 +---- webview-ui/src/i18n/locales/ru/settings.json | 6 +---- webview-ui/src/i18n/locales/tr/settings.json | 6 +---- webview-ui/src/i18n/locales/vi/settings.json | 6 +---- .../src/i18n/locales/zh-CN/settings.json | 6 +---- .../src/i18n/locales/zh-TW/settings.json | 6 +---- 19 files changed, 36 insertions(+), 97 deletions(-) diff --git a/packages/types/src/providers/__tests__/openai.models.spec.ts b/packages/types/src/providers/__tests__/openai.models.spec.ts index 86fdc51d30..e7bb3f2dfe 100644 --- a/packages/types/src/providers/__tests__/openai.models.spec.ts +++ b/packages/types/src/providers/__tests__/openai.models.spec.ts @@ -1,22 +1,33 @@ import { describe, it, expect } from "vitest" import { openAiNativeModels } from "../openai.js" +type Dict = Record +const hasProp = (obj: Dict, key: string) => Object.prototype.hasOwnProperty.call(obj, key) +const boolProp = (obj: Dict, key: string): boolean | undefined => { + const v = obj[key] + return typeof v === "boolean" ? (v as boolean) : undefined +} + describe("openAiNativeModels temperature invariants", () => { it("models with supportsTemperature === false must not specify defaultTemperature", () => { - for (const [id, info] of Object.entries(openAiNativeModels)) { - if ((info as any).supportsTemperature === false) { - expect((info as any).defaultTemperature).toBeUndefined() + const values = Object.values(openAiNativeModels) as Dict[] + for (const info of values) { + const supportsTemp = boolProp(info, "supportsTemperature") + if (supportsTemp === false) { + expect(hasProp(info, "defaultTemperature")).toBe(false) } } }) it("gpt-5 family models must have supportsTemperature: false and no defaultTemperature", () => { - const gpt5Ids = ["gpt-5-2025-08-07", "gpt-5-mini-2025-08-07", "gpt-5-nano-2025-08-07"] + const gpt5Ids = ["gpt-5-2025-08-07", "gpt-5-mini-2025-08-07", "gpt-5-nano-2025-08-07"] as const for (const id of gpt5Ids) { - const info = (openAiNativeModels as any)[id] + // Non-undefined assertion is safe here because the IDs are known keys in openAiNativeModels + const infoUnknown = (openAiNativeModels as Record)[id]! + const info = infoUnknown as Dict expect(info).toBeDefined() - expect(info.supportsTemperature).toBe(false) - expect(info.defaultTemperature).toBeUndefined() + expect(boolProp(info, "supportsTemperature")).toBe(false) + expect(hasProp(info, "defaultTemperature")).toBe(false) } }) }) diff --git a/webview-ui/src/i18n/locales/ca/settings.json b/webview-ui/src/i18n/locales/ca/settings.json index bcdf30a803..5cf6e892da 100644 --- a/webview-ui/src/i18n/locales/ca/settings.json +++ b/webview-ui/src/i18n/locales/ca/settings.json @@ -810,9 +810,5 @@ "customArn": "ARN personalitzat", "useCustomArn": "Utilitza ARN personalitzat..." }, - "includeMaxOutputTokens": "Incloure tokens màxims de sortida", - "includeMaxOutputTokensDescription": "Enviar el paràmetre de tokens màxims de sortida a les sol·licituds API. Alguns proveïdors poden no admetre això.", - "limitMaxTokensDescription": "Limitar el nombre màxim de tokens en la resposta", - "maxOutputTokensLabel": "Tokens màxims de sortida", - "maxTokensGenerateDescription": "Tokens màxims a generar en la resposta" + "limitMaxTokensDescription": "Limitar el nombre màxim de tokens en la resposta" } diff --git a/webview-ui/src/i18n/locales/de/settings.json b/webview-ui/src/i18n/locales/de/settings.json index f434c5f413..81dfadd14f 100644 --- a/webview-ui/src/i18n/locales/de/settings.json +++ b/webview-ui/src/i18n/locales/de/settings.json @@ -810,9 +810,5 @@ "customArn": "Benutzerdefinierte ARN", "useCustomArn": "Benutzerdefinierte ARN verwenden..." }, - "includeMaxOutputTokens": "Maximale Ausgabe-Tokens einbeziehen", - "includeMaxOutputTokensDescription": "Senden Sie den Parameter für maximale Ausgabe-Tokens in API-Anfragen. Einige Anbieter unterstützen dies möglicherweise nicht.", - "limitMaxTokensDescription": "Begrenze die maximale Anzahl von Tokens in der Antwort", - "maxOutputTokensLabel": "Maximale Ausgabe-Tokens", - "maxTokensGenerateDescription": "Maximale Tokens, die in der Antwort generiert werden" + "limitMaxTokensDescription": "Begrenze die maximale Anzahl von Tokens in der Antwort" } diff --git a/webview-ui/src/i18n/locales/en/settings.json b/webview-ui/src/i18n/locales/en/settings.json index eb893d6c51..124861948a 100644 --- a/webview-ui/src/i18n/locales/en/settings.json +++ b/webview-ui/src/i18n/locales/en/settings.json @@ -809,9 +809,5 @@ "customArn": "Custom ARN", "useCustomArn": "Use custom ARN..." }, - "includeMaxOutputTokens": "Include max output tokens", - "includeMaxOutputTokensDescription": "Send max output tokens parameter in API requests. Some providers may not support this.", - "limitMaxTokensDescription": "Limit the maximum number of tokens in the response", - "maxOutputTokensLabel": "Max output tokens", - "maxTokensGenerateDescription": "Maximum tokens to generate in response" + "limitMaxTokensDescription": "Limit the maximum number of tokens in the response" } diff --git a/webview-ui/src/i18n/locales/es/settings.json b/webview-ui/src/i18n/locales/es/settings.json index f5fff79f6a..f33adce0d7 100644 --- a/webview-ui/src/i18n/locales/es/settings.json +++ b/webview-ui/src/i18n/locales/es/settings.json @@ -810,9 +810,5 @@ "customArn": "ARN personalizado", "useCustomArn": "Usar ARN personalizado..." }, - "includeMaxOutputTokens": "Incluir tokens máximos de salida", - "includeMaxOutputTokensDescription": "Enviar parámetro de tokens máximos de salida en solicitudes API. Algunos proveedores pueden no soportar esto.", - "limitMaxTokensDescription": "Limitar el número máximo de tokens en la respuesta", - "maxOutputTokensLabel": "Tokens máximos de salida", - "maxTokensGenerateDescription": "Tokens máximos a generar en la respuesta" + "limitMaxTokensDescription": "Limitar el número máximo de tokens en la respuesta" } diff --git a/webview-ui/src/i18n/locales/fr/settings.json b/webview-ui/src/i18n/locales/fr/settings.json index 3e2749c36c..d260608f18 100644 --- a/webview-ui/src/i18n/locales/fr/settings.json +++ b/webview-ui/src/i18n/locales/fr/settings.json @@ -810,9 +810,5 @@ "customArn": "ARN personnalisé", "useCustomArn": "Utiliser un ARN personnalisé..." }, - "includeMaxOutputTokens": "Inclure les tokens de sortie maximum", - "includeMaxOutputTokensDescription": "Envoyer le paramètre de tokens de sortie maximum dans les requêtes API. Certains fournisseurs peuvent ne pas supporter cela.", - "limitMaxTokensDescription": "Limiter le nombre maximum de tokens dans la réponse", - "maxOutputTokensLabel": "Tokens de sortie maximum", - "maxTokensGenerateDescription": "Tokens maximum à générer dans la réponse" + "limitMaxTokensDescription": "Limiter le nombre maximum de tokens dans la réponse" } diff --git a/webview-ui/src/i18n/locales/hi/settings.json b/webview-ui/src/i18n/locales/hi/settings.json index 4fecd0ea54..25371f6349 100644 --- a/webview-ui/src/i18n/locales/hi/settings.json +++ b/webview-ui/src/i18n/locales/hi/settings.json @@ -811,9 +811,5 @@ "customArn": "कस्टम ARN", "useCustomArn": "कस्टम ARN का उपयोग करें..." }, - "includeMaxOutputTokens": "अधिकतम आउटपुट टोकन शामिल करें", - "includeMaxOutputTokensDescription": "API अनुरोधों में अधिकतम आउटपुट टोकन पैरामीटर भेजें। कुछ प्रदाता इसका समर्थन नहीं कर सकते हैं।", - "limitMaxTokensDescription": "प्रतिक्रिया में टोकन की अधिकतम संख्या सीमित करें", - "maxOutputTokensLabel": "अधिकतम आउटपुट टोकन", - "maxTokensGenerateDescription": "प्रतिक्रिया में उत्पन्न करने के लिए अधिकतम टोकन" + "limitMaxTokensDescription": "प्रतिक्रिया में टोकन की अधिकतम संख्या सीमित करें" } diff --git a/webview-ui/src/i18n/locales/id/settings.json b/webview-ui/src/i18n/locales/id/settings.json index 576784dc77..49b19ffa78 100644 --- a/webview-ui/src/i18n/locales/id/settings.json +++ b/webview-ui/src/i18n/locales/id/settings.json @@ -840,9 +840,5 @@ "customArn": "ARN Kustom", "useCustomArn": "Gunakan ARN kustom..." }, - "includeMaxOutputTokens": "Sertakan token output maksimum", - "includeMaxOutputTokensDescription": "Kirim parameter token output maksimum dalam permintaan API. Beberapa provider mungkin tidak mendukung ini.", - "limitMaxTokensDescription": "Batasi jumlah maksimum token dalam respons", - "maxOutputTokensLabel": "Token output maksimum", - "maxTokensGenerateDescription": "Token maksimum untuk dihasilkan dalam respons" + "limitMaxTokensDescription": "Batasi jumlah maksimum token dalam respons" } diff --git a/webview-ui/src/i18n/locales/it/settings.json b/webview-ui/src/i18n/locales/it/settings.json index 1a657c5a30..1749b1b57f 100644 --- a/webview-ui/src/i18n/locales/it/settings.json +++ b/webview-ui/src/i18n/locales/it/settings.json @@ -811,9 +811,5 @@ "customArn": "ARN personalizzato", "useCustomArn": "Usa ARN personalizzato..." }, - "includeMaxOutputTokens": "Includi token di output massimi", - "includeMaxOutputTokensDescription": "Invia il parametro dei token di output massimi nelle richieste API. Alcuni provider potrebbero non supportarlo.", - "limitMaxTokensDescription": "Limita il numero massimo di token nella risposta", - "maxOutputTokensLabel": "Token di output massimi", - "maxTokensGenerateDescription": "Token massimi da generare nella risposta" + "limitMaxTokensDescription": "Limita il numero massimo di token nella risposta" } diff --git a/webview-ui/src/i18n/locales/ja/settings.json b/webview-ui/src/i18n/locales/ja/settings.json index 9c35c02d64..cfcbeaff8f 100644 --- a/webview-ui/src/i18n/locales/ja/settings.json +++ b/webview-ui/src/i18n/locales/ja/settings.json @@ -811,9 +811,5 @@ "customArn": "カスタム ARN", "useCustomArn": "カスタム ARN を使用..." }, - "includeMaxOutputTokens": "最大出力トークンを含める", - "includeMaxOutputTokensDescription": "APIリクエストで最大出力トークンパラメータを送信します。一部のプロバイダーはこれをサポートしていない場合があります。", - "limitMaxTokensDescription": "レスポンスの最大トークン数を制限する", - "maxOutputTokensLabel": "最大出力トークン", - "maxTokensGenerateDescription": "レスポンスで生成する最大トークン数" + "limitMaxTokensDescription": "レスポンスの最大トークン数を制限する" } diff --git a/webview-ui/src/i18n/locales/ko/settings.json b/webview-ui/src/i18n/locales/ko/settings.json index ee4d6a1889..c327b688dc 100644 --- a/webview-ui/src/i18n/locales/ko/settings.json +++ b/webview-ui/src/i18n/locales/ko/settings.json @@ -811,9 +811,5 @@ "customArn": "사용자 지정 ARN", "useCustomArn": "사용자 지정 ARN 사용..." }, - "includeMaxOutputTokens": "최대 출력 토큰 포함", - "includeMaxOutputTokensDescription": "API 요청에서 최대 출력 토큰 매개변수를 전송합니다. 일부 제공업체는 이를 지원하지 않을 수 있습니다.", - "limitMaxTokensDescription": "응답에서 최대 토큰 수 제한", - "maxOutputTokensLabel": "최대 출력 토큰", - "maxTokensGenerateDescription": "응답에서 생성할 최대 토큰 수" + "limitMaxTokensDescription": "응답에서 최대 토큰 수 제한" } diff --git a/webview-ui/src/i18n/locales/nl/settings.json b/webview-ui/src/i18n/locales/nl/settings.json index 9a514520eb..2ea5215607 100644 --- a/webview-ui/src/i18n/locales/nl/settings.json +++ b/webview-ui/src/i18n/locales/nl/settings.json @@ -811,9 +811,5 @@ "customArn": "Aangepaste ARN", "useCustomArn": "Aangepaste ARN gebruiken..." }, - "includeMaxOutputTokens": "Maximale output tokens opnemen", - "includeMaxOutputTokensDescription": "Stuur maximale output tokens parameter in API-verzoeken. Sommige providers ondersteunen dit mogelijk niet.", - "limitMaxTokensDescription": "Beperk het maximale aantal tokens in het antwoord", - "maxOutputTokensLabel": "Maximale output tokens", - "maxTokensGenerateDescription": "Maximale tokens om te genereren in het antwoord" + "limitMaxTokensDescription": "Beperk het maximale aantal tokens in het antwoord" } diff --git a/webview-ui/src/i18n/locales/pl/settings.json b/webview-ui/src/i18n/locales/pl/settings.json index 6f2ff53e0b..1b34ce0f44 100644 --- a/webview-ui/src/i18n/locales/pl/settings.json +++ b/webview-ui/src/i18n/locales/pl/settings.json @@ -811,9 +811,5 @@ "customArn": "Niestandardowy ARN", "useCustomArn": "Użyj niestandardowego ARN..." }, - "includeMaxOutputTokens": "Uwzględnij maksymalne tokeny wyjściowe", - "includeMaxOutputTokensDescription": "Wyślij parametr maksymalnych tokenów wyjściowych w żądaniach API. Niektórzy dostawcy mogą tego nie obsługiwać.", - "limitMaxTokensDescription": "Ogranicz maksymalną liczbę tokenów w odpowiedzi", - "maxOutputTokensLabel": "Maksymalne tokeny wyjściowe", - "maxTokensGenerateDescription": "Maksymalne tokeny do wygenerowania w odpowiedzi" + "limitMaxTokensDescription": "Ogranicz maksymalną liczbę tokenów w odpowiedzi" } diff --git a/webview-ui/src/i18n/locales/pt-BR/settings.json b/webview-ui/src/i18n/locales/pt-BR/settings.json index 8dd6cec52b..0561bc9f83 100644 --- a/webview-ui/src/i18n/locales/pt-BR/settings.json +++ b/webview-ui/src/i18n/locales/pt-BR/settings.json @@ -811,9 +811,5 @@ "customArn": "ARN personalizado", "useCustomArn": "Usar ARN personalizado..." }, - "includeMaxOutputTokens": "Incluir tokens máximos de saída", - "includeMaxOutputTokensDescription": "Enviar parâmetro de tokens máximos de saída nas solicitações de API. Alguns provedores podem não suportar isso.", - "limitMaxTokensDescription": "Limitar o número máximo de tokens na resposta", - "maxOutputTokensLabel": "Tokens máximos de saída", - "maxTokensGenerateDescription": "Tokens máximos para gerar na resposta" + "limitMaxTokensDescription": "Limitar o número máximo de tokens na resposta" } diff --git a/webview-ui/src/i18n/locales/ru/settings.json b/webview-ui/src/i18n/locales/ru/settings.json index b758c86a94..7e55018de5 100644 --- a/webview-ui/src/i18n/locales/ru/settings.json +++ b/webview-ui/src/i18n/locales/ru/settings.json @@ -811,9 +811,5 @@ "customArn": "Пользовательский ARN", "useCustomArn": "Использовать пользовательский ARN..." }, - "includeMaxOutputTokens": "Включить максимальные выходные токены", - "includeMaxOutputTokensDescription": "Отправлять параметр максимальных выходных токенов в API-запросах. Некоторые провайдеры могут не поддерживать это.", - "limitMaxTokensDescription": "Ограничить максимальное количество токенов в ответе", - "maxOutputTokensLabel": "Максимальные выходные токены", - "maxTokensGenerateDescription": "Максимальные токены для генерации в ответе" + "limitMaxTokensDescription": "Ограничить максимальное количество токенов в ответе" } diff --git a/webview-ui/src/i18n/locales/tr/settings.json b/webview-ui/src/i18n/locales/tr/settings.json index 542b2b2585..0fea75ab47 100644 --- a/webview-ui/src/i18n/locales/tr/settings.json +++ b/webview-ui/src/i18n/locales/tr/settings.json @@ -811,9 +811,5 @@ "customArn": "Özel ARN", "useCustomArn": "Özel ARN kullan..." }, - "includeMaxOutputTokens": "Maksimum çıktı tokenlerini dahil et", - "includeMaxOutputTokensDescription": "API isteklerinde maksimum çıktı token parametresini gönder. Bazı sağlayıcılar bunu desteklemeyebilir.", - "limitMaxTokensDescription": "Yanıttaki maksimum token sayısını sınırla", - "maxOutputTokensLabel": "Maksimum çıktı tokenları", - "maxTokensGenerateDescription": "Yanıtta oluşturulacak maksimum token sayısı" + "limitMaxTokensDescription": "Yanıttaki maksimum token sayısını sınırla" } diff --git a/webview-ui/src/i18n/locales/vi/settings.json b/webview-ui/src/i18n/locales/vi/settings.json index 8b1dd793fe..f405e66661 100644 --- a/webview-ui/src/i18n/locales/vi/settings.json +++ b/webview-ui/src/i18n/locales/vi/settings.json @@ -811,9 +811,5 @@ "customArn": "ARN tùy chỉnh", "useCustomArn": "Sử dụng ARN tùy chỉnh..." }, - "includeMaxOutputTokens": "Bao gồm token đầu ra tối đa", - "includeMaxOutputTokensDescription": "Gửi tham số token đầu ra tối đa trong các yêu cầu API. Một số nhà cung cấp có thể không hỗ trợ điều này.", - "limitMaxTokensDescription": "Giới hạn số lượng token tối đa trong phản hồi", - "maxOutputTokensLabel": "Token đầu ra tối đa", - "maxTokensGenerateDescription": "Token tối đa để tạo trong phản hồi" + "limitMaxTokensDescription": "Giới hạn số lượng token tối đa trong phản hồi" } diff --git a/webview-ui/src/i18n/locales/zh-CN/settings.json b/webview-ui/src/i18n/locales/zh-CN/settings.json index e475fd7baa..bac1c037ac 100644 --- a/webview-ui/src/i18n/locales/zh-CN/settings.json +++ b/webview-ui/src/i18n/locales/zh-CN/settings.json @@ -811,9 +811,5 @@ "customArn": "自定义 ARN", "useCustomArn": "使用自定义 ARN..." }, - "includeMaxOutputTokens": "包含最大输出 Token 数", - "includeMaxOutputTokensDescription": "在 API 请求中发送最大输出 Token 参数。某些提供商可能不支持此功能。", - "limitMaxTokensDescription": "限制响应中的最大 Token 数量", - "maxOutputTokensLabel": "最大输出 Token 数", - "maxTokensGenerateDescription": "响应中生成的最大 Token 数" + "limitMaxTokensDescription": "限制响应中的最大 Token 数量" } diff --git a/webview-ui/src/i18n/locales/zh-TW/settings.json b/webview-ui/src/i18n/locales/zh-TW/settings.json index 9242861eaa..1fb5b5a42c 100644 --- a/webview-ui/src/i18n/locales/zh-TW/settings.json +++ b/webview-ui/src/i18n/locales/zh-TW/settings.json @@ -811,9 +811,5 @@ "customArn": "自訂 ARN", "useCustomArn": "使用自訂 ARN..." }, - "includeMaxOutputTokens": "包含最大輸出 Token 數", - "includeMaxOutputTokensDescription": "在 API 請求中傳送最大輸出 Token 參數。某些提供商可能不支援此功能。", - "limitMaxTokensDescription": "限制回應中的最大 Token 數量", - "maxOutputTokensLabel": "最大輸出 Token 數", - "maxTokensGenerateDescription": "回應中產生的最大 Token 數" + "limitMaxTokensDescription": "限制回應中的最大 Token 數量" }