fix(gateway): route format rules through serving facade

This commit is contained in:
MMEXA
2026-07-12 03:56:53 +08:00
parent 8d4d42a887
commit 63936aa110
6 changed files with 10 additions and 6 deletions
@@ -162,4 +162,8 @@ pub(crate) use aether_ai_formats::api::{
OPENAI_VIDEO_CREATE_SYNC_PLAN_KIND, OPENAI_VIDEO_DELETE_SYNC_PLAN_KIND,
OPENAI_VIDEO_REMIX_SYNC_PLAN_KIND,
};
pub(crate) use aether_ai_formats::{is_embedding_api_format, is_rerank_api_format};
pub(crate) use aether_ai_formats::{
api_format_defaults_to_client_error_failover, api_format_defaults_to_non_stream,
api_format_permission_covers, intersect_api_format_allowed_lists, is_embedding_api_format,
is_rerank_api_format,
};
+1 -1
View File
@@ -2107,7 +2107,7 @@ fn intersect_api_format_list_policies(
(None, None) => None,
(Some(values), None) | (None, Some(values)) => Some(values),
(Some(left_values), Some(right_values)) => Some(
aether_ai_formats::intersect_api_format_allowed_lists(&left_values, &right_values),
crate::ai_serving::intersect_api_format_allowed_lists(&left_values, &right_values),
),
}
}
@@ -101,7 +101,7 @@ fn provider_query_model_mapping_matches_endpoint(
) -> bool {
let api_format_matches = mapping.api_formats.as_ref().is_none_or(|api_formats| {
api_formats.iter().any(|value| {
aether_ai_formats::api_format_permission_covers(value, &endpoint.api_format)
crate::ai_serving::api_format_permission_covers(value, &endpoint.api_format)
})
});
if !api_format_matches {
@@ -220,7 +220,7 @@ fn users_me_usage_api_format_defaults_to_non_stream(item: &StoredRequestUsageAud
let Some(value) = api_format else {
return false;
};
aether_ai_formats::api_format_defaults_to_non_stream(value)
crate::ai_serving::api_format_defaults_to_non_stream(value)
}
fn users_me_usage_request_body_implies_default_non_stream(item: &StoredRequestUsageAudit) -> bool {
@@ -38,7 +38,7 @@ pub(crate) fn provider_catalog_key_supports_format(
}
formats
.iter()
.any(|candidate| aether_ai_formats::api_format_permission_covers(candidate, api_format))
.any(|candidate| crate::ai_serving::api_format_permission_covers(candidate, api_format))
}
pub(crate) fn decrypt_catalog_secret_with_fallbacks(
@@ -97,7 +97,7 @@ pub(crate) fn local_failover_policy_from_transport(
LocalFailoverPolicy {
max_retries,
retry_client_errors_by_default:
aether_ai_formats::api_format_defaults_to_client_error_failover(
crate::ai_serving::api_format_defaults_to_client_error_failover(
&transport.endpoint.api_format,
),
stop_cyber_policy_errors: codex_cyber_flag_passthrough_enabled(