feat(usage): claude-desktop filter and pricing-model audit display

- add claude-desktop to AppType/KNOWN_APP_TYPES and the dashboard app
  filter; it was hidden because its rows looked like pure failure
  noise, which was the app_type attribution bug fixed on the backend
- request detail panel now shows the requested model and the pricing
  model when they differ from the response model, making route-takeover
  bills auditable from the UI
- locale keys added for zh/en/ja/zh-TW
This commit is contained in:
Jason
2026-06-10 11:57:06 +08:00
parent feea81e5bb
commit e8b07cb2a5
7 changed files with 51 additions and 5 deletions
@@ -111,6 +111,28 @@ export function RequestDetailPanel({
{t("usage.model", "模型")}
</dt>
<dd className="font-mono">{request.model}</dd>
{request.requestModel &&
request.requestModel !== request.model && (
<>
<dt className="mt-1 text-muted-foreground">
{t("usage.requestModel", "请求模型")}
</dt>
<dd className="font-mono text-xs">
{request.requestModel}
</dd>
</>
)}
{request.pricingModel &&
request.pricingModel !== request.model && (
<>
<dt className="mt-1 text-muted-foreground">
{t("usage.pricingModel", "计价模型")}
</dt>
<dd className="font-mono text-xs">
{request.pricingModel}
</dd>
</>
)}
</div>
<div>
<dt className="text-muted-foreground">
+5
View File
@@ -49,6 +49,11 @@ const TITLE_THEMES: Record<AppType | "all", TitleTheme> = {
accent: "text-amber-600 dark:text-amber-400",
iconBg: "bg-amber-500/10",
},
"claude-desktop": {
// 与 Claude Code 同属 Anthropic 品牌,用更深的 orange 区分
accent: "text-orange-600 dark:text-orange-400",
iconBg: "bg-orange-500/10",
},
codex: {
// OpenAI/Codex 走黑白单色调;中性灰在深浅模式都能透出方块底色,
// 不像纯黑 bg-black/10 在深色背景下会糊掉。