Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
陈曦
sub2api
Commits
ecad083f
Commit
ecad083f
authored
Mar 23, 2026
by
Ethan0x0000
Browse files
fix(ops): prefer upstream_model in ops error displays
parent
bd8eadb7
Changes
2
Show whitespace changes
Inline
Side-by-side
frontend/src/views/admin/ops/components/OpsErrorDetailModal.vue
View file @
ecad083f
...
...
@@ -59,13 +59,13 @@
<div
class=
"rounded-xl bg-gray-50 p-4 dark:bg-dark-900"
>
<div
class=
"text-xs font-bold uppercase tracking-wider text-gray-400"
>
{{ t('admin.ops.errorDetail.model') }}
</div>
<div
class=
"mt-1 text-sm font-medium text-gray-900 dark:text-white"
>
<
template
v-if=
"
detail.requested_model && detail.upstream_model && detail.requested_model !== detail.upstream_model
"
>
<
template
v-if=
"
hasModelMapping(detail)
"
>
<span
class=
"font-mono"
>
{{
detail
.
requested_model
}}
</span>
<span
class=
"mx-1 text-gray-400"
>
→
</span>
<span
class=
"font-mono text-primary-600 dark:text-primary-400"
>
{{
detail
.
upstream_model
}}
</span>
</
template
>
<
template
v-else
>
{{
d
etail
.
requested_model
||
detail
.
model
||
'
—
'
}}
{{
d
isplayModel
(
detail
)
||
'
—
'
}}
</
template
>
</div>
</div>
...
...
@@ -250,6 +250,22 @@ function formatRequestTypeLabel(type: number | null | undefined): string {
}
}
function
hasModelMapping
(
d
:
OpsErrorDetail
|
null
):
boolean
{
if
(
!
d
)
return
false
const
requested
=
String
(
d
.
requested_model
||
''
).
trim
()
const
upstream
=
String
(
d
.
upstream_model
||
''
).
trim
()
return
!!
requested
&&
!!
upstream
&&
requested
!==
upstream
}
function
displayModel
(
d
:
OpsErrorDetail
|
null
):
string
{
if
(
!
d
)
return
''
const
upstream
=
String
(
d
.
upstream_model
||
''
).
trim
()
if
(
upstream
)
return
upstream
const
requested
=
String
(
d
.
requested_model
||
''
).
trim
()
if
(
requested
)
return
requested
return
String
(
d
.
model
||
''
).
trim
()
}
const
correlatedUpstream
=
ref
<
OpsErrorDetail
[]
>
([])
const
correlatedUpstreamLoading
=
ref
(
false
)
...
...
frontend/src/views/admin/ops/components/OpsErrorLogTable.vue
View file @
ecad083f
...
...
@@ -99,8 +99,8 @@
<!-- Model -->
<td
class=
"px-4 py-2"
>
<div
class=
"max-w-[160px]"
>
<template
v-if=
"
log.requested_model && log.upstream_model && log.requested_model !== log.upstream_model
"
>
<el-tooltip
:content=
"
`$
{log.requested_model} → ${log.upstream_model}`
" placement="top" :show-after="500">
<template
v-if=
"
hasModelMapping(log)
"
>
<el-tooltip
:content=
"
modelMappingTooltip(log)
"
placement=
"top"
:show-after=
"500"
>
<span
class=
"flex items-center gap-1 truncate font-mono text-[11px] text-gray-700 dark:text-gray-300"
>
<span
class=
"truncate"
>
{{
log
.
requested_model
}}
</span>
<span
class=
"flex-shrink-0 text-gray-400"
>
→
</span>
...
...
@@ -232,8 +232,26 @@ function formatEndpointTooltip(log: OpsErrorLog): string {
return
parts
.
join
(
'
\n
'
)
||
''
}
function
hasModelMapping
(
log
:
OpsErrorLog
):
boolean
{
const
requested
=
String
(
log
.
requested_model
||
''
).
trim
()
const
upstream
=
String
(
log
.
upstream_model
||
''
).
trim
()
return
!!
requested
&&
!!
upstream
&&
requested
!==
upstream
}
function
modelMappingTooltip
(
log
:
OpsErrorLog
):
string
{
const
requested
=
String
(
log
.
requested_model
||
''
).
trim
()
const
upstream
=
String
(
log
.
upstream_model
||
''
).
trim
()
if
(
!
requested
&&
!
upstream
)
return
''
if
(
requested
&&
upstream
)
return
`
${
requested
}
→
${
upstream
}
`
return
upstream
||
requested
}
function
displayModel
(
log
:
OpsErrorLog
):
string
{
return
log
.
requested_model
||
log
.
model
||
''
const
upstream
=
String
(
log
.
upstream_model
||
''
).
trim
()
if
(
upstream
)
return
upstream
const
requested
=
String
(
log
.
requested_model
||
''
).
trim
()
if
(
requested
)
return
requested
return
String
(
log
.
model
||
''
).
trim
()
}
function
formatRequestType
(
type
:
number
|
null
|
undefined
):
string
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment