Skip to content
Merged
32 changes: 26 additions & 6 deletions messages/en/dashboard.json
Original file line number Diff line number Diff line change
Expand Up @@ -286,7 +286,17 @@
"fast": "fast",
"fastPriority": "Priority service tier (fast mode)",
"context1m": "1M Context",
"context1mPricing": "Input 2x >200k, Output 1.5x >200k"
"context1mPricing": "Input 2x >200k, Output 1.5x >200k",
"pricingProvider": "Pricing provider",
"pricingSourceLabel": "Pricing source",
"pricingSource": {
"local_manual": "Local manual pricing",
"cloud_exact": "Exact cloud provider pricing",
"cloud_model_fallback": "Fallback model provider pricing",
"priority_fallback": "Priority provider fallback pricing",
"single_provider_top_level": "Top-level single-provider pricing",
"official_fallback": "Official fallback pricing"
}
},
"performance": {
"title": "Performance",
Expand Down Expand Up @@ -359,12 +369,12 @@
"targetModel": "Target Model"
},
"statusCodes": {
"not200": "Non-200 (errors/blocked)",
"200": "200 (Success)",
"400": "400 (Bad Request)",
"401": "401 (Unauthorized)",
"429": "429 (Rate Limited)",
"500": "500 (Server Error)"
"500": "500 (Server Error)",
"not200": "Non-200 (errors/blocked)"
Comment on lines +376 to +377

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

not200 文案把范围写窄了。

not200 这个键名表达的是“所有非 200 状态”。现在的 Non-200 (errors/blocked) 会让用户理解成只包含错误和拦截,不包含其他非 200 结果。建议改成覆盖所有非 200 / 非成功请求的表述。

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@messages/en/dashboard.json` around lines 376 - 377, 更新 "not200" 文案以覆盖所有非
200/非成功响应而不是仅指“errors/blocked”: 在 messages/en/dashboard.json 中找到键名 "not200"
并将其值从 "Non-200 (errors/blocked)" 修改为更广义的表述(例如 "Non-200 (non-success responses)"
或 "Non-200 (non-successful responses)"),确保语义覆盖所有非 200 状态码。

},
"billingDetails": {
"input": "Input",
Expand All @@ -379,7 +389,17 @@
"fast": "fast",
"fastPriority": "Priority service tier (fast mode)",
"context1m": "1M Context",
"context1mPricing": "Input 2x >200k, Output 1.5x >200k"
"context1mPricing": "Input 2x >200k, Output 1.5x >200k",
"pricingProvider": "Pricing provider",
"pricingSourceLabel": "Pricing source",
"pricingSource": {
"local_manual": "Local manual pricing",
"cloud_exact": "Exact cloud provider pricing",
"cloud_model_fallback": "Fallback model provider pricing",
"priority_fallback": "Priority provider fallback pricing",
"single_provider_top_level": "Top-level single-provider pricing",
"official_fallback": "Official fallback pricing"
}
}
},
"leaderboard": {
Expand Down Expand Up @@ -1685,11 +1705,11 @@
"rolling": "Rolling window (24h)"
},
"quickValues": {
"unlimited": "Unlimited",
"10": "$10",
"50": "$50",
"100": "$100",
"500": "$500"
"500": "$500",
"unlimited": "Unlimited"
},
"alreadySet": "Configured",
"confirmAdd": "Add"
Expand Down
18 changes: 16 additions & 2 deletions messages/en/settings/prices.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,8 @@
"openrouter": "OpenRouter"
},
"badges": {
"local": "Local"
"local": "Local",
"multi": "Multi"
},
"capabilities": {
"assistantPrefill": "Assistant prefill",
Expand Down Expand Up @@ -196,13 +197,26 @@
"actions": {
"edit": "Edit",
"more": "More actions",
"delete": "Delete"
"delete": "Delete",
"comparePricing": "Compare pricing"
},
"toast": {
"createSuccess": "Model added",
"updateSuccess": "Model updated",
"deleteSuccess": "Model deleted",
"saveFailed": "Failed to save",
"deleteFailed": "Failed to delete"
},
"providerPricing": {
"title": "Provider pricing · {model}",
"description": "Compare provider-specific cloud prices and pin one as a local model price.",
"input": "Input",
"output": "Output",
"cacheRead": "Cache Read",
"pinAction": "Pin as local price",
"pinSuccess": "Pinned {provider} pricing as local model price",
"pinFailed": "Failed to pin provider pricing",
"pinned": "Pinned",
"priority": "Priority"
}
}
32 changes: 26 additions & 6 deletions messages/ja/dashboard.json
Original file line number Diff line number Diff line change
Expand Up @@ -286,7 +286,17 @@
"fast": "fast",
"fastPriority": "Priority service tier (fast モード)",
"context1m": "1M コンテキスト",
"context1mPricing": "入力 2x >200k, 出力 1.5x >200k"
"context1mPricing": "入力 2x >200k, 出力 1.5x >200k",
"pricingProvider": "課金価格プロバイダー",
"pricingSourceLabel": "課金価格ソース",
"pricingSource": {
"local_manual": "ローカル手動価格",
"cloud_exact": "クラウドの正確なプロバイダー価格",
"cloud_model_fallback": "フォールバックモデルのプロバイダー価格",
"priority_fallback": "優先フォールバック価格",
"single_provider_top_level": "トップレベル単一プロバイダー価格",
"official_fallback": "公式フォールバック価格"
}
},
"performance": {
"title": "パフォーマンス",
Expand Down Expand Up @@ -359,12 +369,12 @@
"targetModel": "ターゲットモデル"
},
"statusCodes": {
"not200": "非 200(エラー/ブロック)",
"200": "200(成功)",
"400": "400 (不正なリクエスト)",
"401": "401 (未認証)",
"429": "429 (レート制限)",
"500": "500 (サーバーエラー)"
"500": "500 (サーバーエラー)",
"not200": "非 200(エラー/ブロック)"
Comment on lines +376 to +377

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

not200 的日文文案也把范围写窄了。

非 200(エラー/ブロック) 会让用户理解成只包含错误和拦截;但这个键名表达的是所有非 200 状态。建议改成覆盖全部非 200 / 非成功请求的表述,避免和其他语言版本的语义漂移。

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@messages/ja/dashboard.json` around lines 376 - 377, The Japanese copy for the
"not200" key is too narrow—update the value for the "not200" key in
messages/ja/dashboard.json (the entry with key "not200") to a broader phrase
that covers all non-200 / non-success responses (e.g., replace "非 200(エラー/ブロック)"
with something like "200以外(非成功ステータス)" or "200以外(失敗/非成功リクエスト)") so it matches the
key semantics and other language versions.

},
"billingDetails": {
"input": "入力",
Expand All @@ -379,7 +389,17 @@
"fast": "fast",
"fastPriority": "Priority service tier (fast モード)",
"context1m": "1M コンテキスト",
"context1mPricing": "入力 >200k 2倍, 出力 >200k 1.5倍"
"context1mPricing": "入力 >200k 2倍, 出力 >200k 1.5倍",
"pricingProvider": "課金価格プロバイダー",
"pricingSourceLabel": "課金価格ソース",
"pricingSource": {
"local_manual": "ローカル手動価格",
"cloud_exact": "クラウドの正確なプロバイダー価格",
"cloud_model_fallback": "フォールバックモデルのプロバイダー価格",
"priority_fallback": "優先フォールバック価格",
"single_provider_top_level": "トップレベル単一プロバイダー価格",
"official_fallback": "公式フォールバック価格"
}
}
},
"leaderboard": {
Expand Down Expand Up @@ -1622,11 +1642,11 @@
"rolling": "ローリングウィンドウ(24時間)"
},
"quickValues": {
"unlimited": "無制限",
"10": "$10",
"50": "$50",
"100": "$100",
"500": "$500"
"500": "$500",
"unlimited": "無制限"
},
"alreadySet": "設定済み",
"confirmAdd": "追加",
Expand Down
15 changes: 14 additions & 1 deletion messages/ja/settings/prices.json
Original file line number Diff line number Diff line change
Expand Up @@ -196,13 +196,26 @@
"actions": {
"edit": "編集",
"more": "その他の操作",
"delete": "削除"
"delete": "削除",
"comparePricing": "価格を比較"
},
"toast": {
"createSuccess": "モデルを追加しました",
"updateSuccess": "モデルを更新しました",
"deleteSuccess": "モデルを削除しました",
"saveFailed": "保存に失敗しました",
"deleteFailed": "削除に失敗しました"
},
"providerPricing": {
"title": "プロバイダー価格 · {model}",
"description": "プロバイダー別のクラウド価格を比較し、そのうち一つをローカルモデル価格として固定します。",
"input": "入力",
"output": "出力",
"cacheRead": "キャッシュ読取",
"pinAction": "ローカル価格として固定",
"pinSuccess": "{provider} の価格をローカルモデル価格として固定しました",
"pinFailed": "プロバイダー価格の固定に失敗しました",
"pinned": "固定済み",
"priority": "priority"
}
}
32 changes: 26 additions & 6 deletions messages/ru/dashboard.json
Original file line number Diff line number Diff line change
Expand Up @@ -286,7 +286,17 @@
"fast": "fast",
"fastPriority": "Приоритетный уровень обслуживания (режим fast)",
"context1m": "1M контекст",
"context1mPricing": "Вход 2x >200k, Выход 1.5x >200k"
"context1mPricing": "Вход 2x >200k, Выход 1.5x >200k",
"pricingProvider": "Провайдер тарифа",
"pricingSourceLabel": "Источник тарифа",
"pricingSource": {
"local_manual": "Локальная ручная цена",
"cloud_exact": "Точная облачная цена провайдера",
"cloud_model_fallback": "Цена провайдера из резервной модели",
"priority_fallback": "Приоритетная резервная цена",
"single_provider_top_level": "Цена верхнего уровня для одного провайдера",
"official_fallback": "Официальная резервная цена"
}
Comment on lines +289 to +299

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

统一两处 context1mPricing 的俄文文案。

Line 289 和 Line 392 现在是两种顺序(Вход 2x >200k... vs Вход >200k 2x...)。这两个 key 会在不同日志视图里展示同一含义,建议统一成同一说法,避免前后 UI 不一致。

Also applies to: 392-402

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@messages/ru/dashboard.json` around lines 289 - 299, The Russian translation
for the key context1mPricing is inconsistent between its two occurrences (one
reads "Вход 2x >200k, Выход 1.5x >200k" and the other "Вход >200k 2x..."); make
both entries identical by choosing the correct phrasing and updating the other
occurrence so both context1mPricing values match exactly; locate the key
context1mPricing and the duplicate occurrence referenced in the diff (also check
the block around the pricingSource object) and apply the same string to both
places to ensure UI consistency.

},
"performance": {
"title": "Производительность",
Expand Down Expand Up @@ -359,12 +369,12 @@
"targetModel": "Целевая модель"
},
"statusCodes": {
"not200": "Не 200 (ошибки/блокировки)",
"200": "200 (Успех)",
"400": "400 (Неверный запрос)",
"401": "401 (Не авторизован)",
"429": "429 (Ограничение)",
"500": "500 (Ошибка сервера)"
"500": "500 (Ошибка сервера)",
"not200": "Не 200 (ошибки/блокировки)"
},
"billingDetails": {
"input": "Входные",
Expand All @@ -379,7 +389,17 @@
"fast": "fast",
"fastPriority": "Приоритетный уровень обслуживания (режим fast)",
"context1m": "1M Контекст",
"context1mPricing": "Вход >200k 2x, Выход >200k 1.5x"
"context1mPricing": "Вход >200k 2x, Выход >200k 1.5x",
"pricingProvider": "Провайдер тарифа",
"pricingSourceLabel": "Источник тарифа",
"pricingSource": {
"local_manual": "Локальная ручная цена",
"cloud_exact": "Точная облачная цена провайдера",
"cloud_model_fallback": "Цена провайдера из резервной модели",
"priority_fallback": "Приоритетная резервная цена",
"single_provider_top_level": "Цена верхнего уровня для одного провайдера",
"official_fallback": "Официальная резервная цена"
}
}
},
"leaderboard": {
Expand Down Expand Up @@ -1668,11 +1688,11 @@
"rolling": "Скользящее окно (24ч)"
},
"quickValues": {
"unlimited": "Без ограничений",
"10": "$10",
"50": "$50",
"100": "$100",
"500": "$500"
"500": "$500",
"unlimited": "Без ограничений"
},
"alreadySet": "Уже настроено",
"confirmAdd": "Добавить"
Expand Down
15 changes: 14 additions & 1 deletion messages/ru/settings/prices.json
Original file line number Diff line number Diff line change
Expand Up @@ -196,13 +196,26 @@
"actions": {
"edit": "Редактировать",
"more": "Больше действий",
"delete": "Удалить"
"delete": "Удалить",
"comparePricing": "Сравнить цены"
},
"toast": {
"createSuccess": "Модель добавлена",
"updateSuccess": "Модель обновлена",
"deleteSuccess": "Модель удалена",
"saveFailed": "Ошибка сохранения",
"deleteFailed": "Ошибка удаления"
},
"providerPricing": {
"title": "Цены провайдеров · {model}",
"description": "Сравните облачные цены по провайдерам и закрепите одну из них как локальную цену модели.",
"input": "Вход",
"output": "Выход",
"cacheRead": "Чтение кэша",
"pinAction": "Закрепить как локальную цену",
"pinSuccess": "Цена {provider} закреплена как локальная цена модели",
"pinFailed": "Не удалось закрепить цену провайдера",
"pinned": "Закреплено",
"priority": "Priority"
}
}
32 changes: 26 additions & 6 deletions messages/zh-CN/dashboard.json
Original file line number Diff line number Diff line change
Expand Up @@ -286,7 +286,17 @@
"fast": "fast",
"fastPriority": "优先服务等级(fast 模式)",
"context1m": "1M 上下文",
"context1mPricing": "输入 2x >200k, 输出 1.5x >200k"
"context1mPricing": "输入 2x >200k, 输出 1.5x >200k",
"pricingProvider": "计费价格提供商",
"pricingSourceLabel": "计费价格来源",
"pricingSource": {
"local_manual": "本地手动价格",
"cloud_exact": "云端精确提供商价格",
"cloud_model_fallback": "回退模型的提供商价格",
"priority_fallback": "优先级回退价格",
"single_provider_top_level": "顶层单提供商价格",
"official_fallback": "官方兜底价格"
Comment on lines +290 to +298

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

这里建议统一成“供应商”。

当前新增文案把 pricingProvider 以及部分 pricingSource 子项写成了“提供商”,但这个文件其余位置一直使用“供应商”。同一页混用两套术语,用户容易误解成两个不同概念。

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@messages/zh-CN/dashboard.json` around lines 290 - 298, The JSON keys
pricingProvider and the pricingSource values (local_manual, cloud_exact,
cloud_model_fallback, priority_fallback, single_provider_top_level,
official_fallback) use the term "提供商" while the rest of the file uses "供应商";
update these strings to use "供应商" to ensure consistent terminology across the
page (replace "提供商" with "供应商" in the value for pricingProvider and in each
affected pricingSource child value).

}
},
"performance": {
"title": "性能数据",
Expand Down Expand Up @@ -359,12 +369,12 @@
"targetModel": "目标模型"
},
"statusCodes": {
"not200": "非 200(全部非成功请求)",
"200": "200 (成功)",
"400": "400 (错误请求)",
"401": "401 (未授权)",
"429": "429 (限流)",
"500": "500 (服务器错误)"
"500": "500 (服务器错误)",
"not200": "非 200(全部非成功请求)"
},
"billingDetails": {
"input": "输入",
Expand All @@ -379,7 +389,17 @@
"fast": "fast",
"fastPriority": "优先服务等级(fast 模式)",
"context1m": "1M 上下文",
"context1mPricing": "输入 >200k 2倍, 输出 >200k 1.5倍"
"context1mPricing": "输入 >200k 2倍, 输出 >200k 1.5倍",
"pricingProvider": "计费价格提供商",
"pricingSourceLabel": "计费价格来源",
"pricingSource": {
"local_manual": "本地手动价格",
"cloud_exact": "云端精确提供商价格",
"cloud_model_fallback": "回退模型的提供商价格",
"priority_fallback": "优先级回退价格",
"single_provider_top_level": "顶层单提供商价格",
"official_fallback": "官方兜底价格"
}
}
},
"leaderboard": {
Expand Down Expand Up @@ -1645,11 +1665,11 @@
"rolling": "滚动窗口(24h)"
},
"quickValues": {
"unlimited": "无限",
"10": "$10",
"50": "$50",
"100": "$100",
"500": "$500"
"500": "$500",
"unlimited": "无限"
},
"alreadySet": "已配置",
"confirmAdd": "添加",
Expand Down
18 changes: 16 additions & 2 deletions messages/zh-CN/settings/prices.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,8 @@
"openrouter": "OpenRouter"
},
"badges": {
"local": "本地"
"local": "本地",
"multi": "多供应商"
},
"capabilities": {
"assistantPrefill": "助手预填充",
Expand Down Expand Up @@ -196,13 +197,26 @@
"actions": {
"edit": "编辑",
"more": "更多操作",
"delete": "删除"
"delete": "删除",
"comparePricing": "对比价格"
},
"toast": {
"createSuccess": "模型已添加",
"updateSuccess": "模型已更新",
"deleteSuccess": "模型已删除",
"saveFailed": "保存失败",
"deleteFailed": "删除失败"
},
"providerPricing": {
"title": "多供应商价格 · {model}",
"description": "对比不同供应商的云端价格,并将其中一项固化为本地模型价格。",
"input": "输入",
"output": "输出",
"cacheRead": "缓存读取",
"pinAction": "固化为本地价格",
"pinSuccess": "已将 {provider} 价格固化为本地模型价格",
"pinFailed": "固化供应商价格失败",
"pinned": "已固化",
"priority": "优先"
}
}
Loading
Loading