From 7b24291f24a344d9825dcf4c005a35bf2931dfff Mon Sep 17 00:00:00 2001 From: aiedwardyi <41576951+aiedwardyi@users.noreply.github.com> Date: Wed, 26 Aug 2026 11:57:47 +0900 Subject: [PATCH] fix: align Bedrock tag eligibility --- .../guardrail_hooks/bedrock_guardrails.py | 12 +--------- .../test_bedrock_guardrails.py | 24 ------------------- 2 files changed, 1 insertion(+), 35 deletions(-) diff --git a/litellm/proxy/guardrails/guardrail_hooks/bedrock_guardrails.py b/litellm/proxy/guardrails/guardrail_hooks/bedrock_guardrails.py index 82706c04c1d..e329875fb47 100644 --- a/litellm/proxy/guardrails/guardrail_hooks/bedrock_guardrails.py +++ b/litellm/proxy/guardrails/guardrail_hooks/bedrock_guardrails.py @@ -704,14 +704,7 @@ class BedrockGuardrail(CustomGuardrail, BaseAWSLLM): if isinstance(chain_tag_filtering, bool) else getattr(router, "enable_tag_filtering", False) ) - router_settings_override: Final[object] = request_data.get("router_settings_override") - trusted_request_tag_filtering: Final[bool] = ( - isinstance(router_settings_override, Mapping) - and router_settings_override.get("enable_tag_filtering") is True - ) - tag_filtering_enabled: Final = ( - trusted_request_tag_filtering or effective_tag_filtering is True - ) + tag_filtering_enabled: Final = effective_tag_filtering is True if not tag_filtering_enabled: return deployments @@ -805,9 +798,6 @@ class BedrockGuardrail(CustomGuardrail, BaseAWSLLM): def _get_trusted_router_request_kwargs(request_data: Mapping[str, object]) -> dict[str, object]: router_kwargs: Final = dict(request_data) router_kwargs.pop("enable_tag_filtering", None) - router_settings_override: Final[object] = request_data.get("router_settings_override") - if isinstance(router_settings_override, Mapping) and router_settings_override.get("enable_tag_filtering") is True: - router_kwargs["enable_tag_filtering"] = True for metadata_name in ("metadata", "litellm_metadata"): metadata: Final[object] = router_kwargs.get(metadata_name) if isinstance(metadata, Mapping) and "routing_decision" in metadata: diff --git a/tests/test_litellm/proxy/guardrails/guardrail_hooks/test_bedrock_guardrails.py b/tests/test_litellm/proxy/guardrails/guardrail_hooks/test_bedrock_guardrails.py index e14d1b99cff..30a899ab9ef 100644 --- a/tests/test_litellm/proxy/guardrails/guardrail_hooks/test_bedrock_guardrails.py +++ b/tests/test_litellm/proxy/guardrails/guardrail_hooks/test_bedrock_guardrails.py @@ -294,30 +294,6 @@ def test_bedrock_guardrail_ignores_client_tag_filtering_override(monkeypatch: py ) -def test_bedrock_guardrail_uses_trusted_tag_filtering_override(monkeypatch: pytest.MonkeyPatch): - from litellm.proxy import proxy_server - - router = MagicMock() - router.enable_tag_filtering = False - router.get_model_list.return_value = [ - {"litellm_params": {"custom_llm_provider": "openai", "tags": ["slow"]}, "model_info": {}}, - {"litellm_params": {"custom_llm_provider": "bedrock", "tags": ["fast"]}, "model_info": {}}, - ] - monkeypatch.setattr(proxy_server, "llm_router", router) - - assert ( - BedrockGuardrail._get_bedrock_api_key( - { - "model": "shared-alias", - "api_key": "bedrock-key", - "router_settings_override": {"enable_tag_filtering": True}, - "metadata": {"tags": ["fast"]}, - } - ) - == "bedrock-key" - ) - - @pytest.mark.asyncio async def test_bedrock_guardrail_async_sync_strategy_uses_unfiltered_pool(monkeypatch: pytest.MonkeyPatch): from litellm.proxy import proxy_server