Skip to content

Commit ecad083

Browse files
committed
fix(ops): prefer upstream_model in ops error displays
1 parent bd8eadb commit ecad083

2 files changed

Lines changed: 40 additions & 6 deletions

File tree

frontend/src/views/admin/ops/components/OpsErrorDetailModal.vue

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,13 +59,13 @@
5959
<div class="rounded-xl bg-gray-50 p-4 dark:bg-dark-900">
6060
<div class="text-xs font-bold uppercase tracking-wider text-gray-400">{{ t('admin.ops.errorDetail.model') }}</div>
6161
<div class="mt-1 text-sm font-medium text-gray-900 dark:text-white">
62-
<template v-if="detail.requested_model && detail.upstream_model && detail.requested_model !== detail.upstream_model">
62+
<template v-if="hasModelMapping(detail)">
6363
<span class="font-mono">{{ detail.requested_model }}</span>
6464
<span class="mx-1 text-gray-400">→</span>
6565
<span class="font-mono text-primary-600 dark:text-primary-400">{{ detail.upstream_model }}</span>
6666
</template>
6767
<template v-else>
68-
{{ detail.requested_model || detail.model || '—' }}
68+
{{ displayModel(detail) || '—' }}
6969
</template>
7070
</div>
7171
</div>
@@ -250,6 +250,22 @@ function formatRequestTypeLabel(type: number | null | undefined): string {
250250
}
251251
}
252252
253+
function hasModelMapping(d: OpsErrorDetail | null): boolean {
254+
if (!d) return false
255+
const requested = String(d.requested_model || '').trim()
256+
const upstream = String(d.upstream_model || '').trim()
257+
return !!requested && !!upstream && requested !== upstream
258+
}
259+
260+
function displayModel(d: OpsErrorDetail | null): string {
261+
if (!d) return ''
262+
const upstream = String(d.upstream_model || '').trim()
263+
if (upstream) return upstream
264+
const requested = String(d.requested_model || '').trim()
265+
if (requested) return requested
266+
return String(d.model || '').trim()
267+
}
268+
253269
const correlatedUpstream = ref<OpsErrorDetail[]>([])
254270
const correlatedUpstreamLoading = ref(false)
255271

frontend/src/views/admin/ops/components/OpsErrorLogTable.vue

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,8 @@
9999
<!-- Model -->
100100
<td class="px-4 py-2">
101101
<div class="max-w-[160px]">
102-
<template v-if="log.requested_model && log.upstream_model && log.requested_model !== log.upstream_model">
103-
<el-tooltip :content="`${log.requested_model} → ${log.upstream_model}`" placement="top" :show-after="500">
102+
<template v-if="hasModelMapping(log)">
103+
<el-tooltip :content="modelMappingTooltip(log)" placement="top" :show-after="500">
104104
<span class="flex items-center gap-1 truncate font-mono text-[11px] text-gray-700 dark:text-gray-300">
105105
<span class="truncate">{{ log.requested_model }}</span>
106106
<span class="flex-shrink-0 text-gray-400">→</span>
@@ -232,8 +232,26 @@ function formatEndpointTooltip(log: OpsErrorLog): string {
232232
return parts.join('\n') || ''
233233
}
234234
235+
function hasModelMapping(log: OpsErrorLog): boolean {
236+
const requested = String(log.requested_model || '').trim()
237+
const upstream = String(log.upstream_model || '').trim()
238+
return !!requested && !!upstream && requested !== upstream
239+
}
240+
241+
function modelMappingTooltip(log: OpsErrorLog): string {
242+
const requested = String(log.requested_model || '').trim()
243+
const upstream = String(log.upstream_model || '').trim()
244+
if (!requested && !upstream) return ''
245+
if (requested && upstream) return `${requested} → ${upstream}`
246+
return upstream || requested
247+
}
248+
235249
function displayModel(log: OpsErrorLog): string {
236-
return log.requested_model || log.model || ''
250+
const upstream = String(log.upstream_model || '').trim()
251+
if (upstream) return upstream
252+
const requested = String(log.requested_model || '').trim()
253+
if (requested) return requested
254+
return String(log.model || '').trim()
237255
}
238256
239257
function formatRequestType(type: number | null | undefined): string {
@@ -315,4 +333,4 @@ function formatSmartMessage(msg: string): string {
315333
return msg.length > 200 ? msg.substring(0, 200) + '...' : msg
316334
317335
}
318-
</script>
336+
</script>

0 commit comments

Comments
 (0)