修正响应解析错误的 provider 归属

parse_json_payload 增加 ImageProvider 参数,ResponseParse 使用实际 provider

共享的 handle_image_response 解析失败时不再把 Tiantoken 响应记成 vector-engine
This commit is contained in:
2026-09-19 13:16:25 +08:00
parent 90b77d6bd0
commit 4888a0eb01
2 changed files with 4 additions and 3 deletions
@@ -1,19 +1,20 @@
use serde_json::Value;
use crate::image_provider::{
constants::VECTOR_ENGINE_PROVIDER,
error::PlatformImageError,
types::ImageProvider,
util::{ParsedJsonPayload, truncate_raw},
};
pub(super) fn parse_json_payload(
raw_text: &str,
failure_context: &str,
provider: ImageProvider,
) -> Result<ParsedJsonPayload, PlatformImageError> {
serde_json::from_str::<Value>(raw_text)
.map(|payload| ParsedJsonPayload { payload })
.map_err(|error| PlatformImageError::ResponseParse {
provider: VECTOR_ENGINE_PROVIDER,
provider: provider.as_str(),
message: format!("{failure_context}:解析响应失败:{error}"),
raw_excerpt: truncate_raw(raw_text),
audit: None,
@@ -66,7 +66,7 @@ pub(crate) async fn handle_image_response(
});
}
let response_json = match parse_json_payload(response_text, failure_context) {
let response_json = match parse_json_payload(response_text, failure_context, provider) {
Ok(response_json) => response_json,
Err(error) => {
let audit = build_failure_audit(