fix: safely handle unmapped call type

This commit is contained in:
Krrish Dholakia 2026-01-15 21:26:06 +05:30
parent 04eec6c909
commit 1e261b6570
31 changed files with 12 additions and 77 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -14,76 +14,3 @@ model_list:
litellm_params:
model: openai/gpt-4.1-mini
# guardrails:
# - guardrail_name: generic-guardrail
# litellm_params:
# guardrail: generic_guardrail_api
# mode: ["pre_call"]
# headers:
# Authorization: Bearer mock-bedrock-token-12345
# api_base: http://localhost:8080
# default_on: true
guardrails:
- guardrail_name: "harmful-content-filter"
litellm_params:
guardrail: litellm_content_filter
mode: "pre_call"
default_on: true
# Model configuration
image_model: "claude-sonnet-4-5-20250929"
categories:
- category: "harmful_self_harm"
enabled: true
action: "BLOCK"
severity_threshold: "medium" # Block medium+
- category: "harmful_violence"
enabled: true
action: "BLOCK"
severity_threshold: "high" # Only explicit
- category: "harmful_illegal_weapons"
enabled: true
action: "BLOCK"
severity_threshold: "low" # Strictest
- category: "bias_gender"
enabled: true
action: "BLOCK"
severity_threshold: "high" # Only explicit to reduce false positives
- category: "bias_sexual_orientation"
enabled: true
action: "BLOCK"
severity_threshold: "high" # Only explicit to reduce false positives
- category: "denied_medical_advice"
enabled: true
action: "BLOCK"
severity_threshold: "high" # Only explicit to reduce false positives
- category: "denied_legal_advice"
enabled: true
action: "BLOCK"
severity_threshold: "high" # Only explicit to reduce false positives
- category: "denied_financial_advice"
enabled: true
action: "BLOCK"
severity_threshold: "high" # Only explicit to reduce false positives
prompts:
- prompt_id: "simple_prompt"
litellm_params:
guardrail: generic_guardrail_api
mode: ["post_call"]
headers:
Authorization: Bearer mock-bedrock-token-12345
api_base: http://localhost:8080
api_key: os.environ/BRAINTRUST_API_KEY
ignore_prompt_manager_model: true
ignore_prompt_manager_optional_params: true

View file

@ -79,8 +79,12 @@ class UnifiedLLMGuardrails(CustomLogger):
endpoint_guardrail_translation_mappings = (
load_guardrail_translation_mappings()
)
if CallTypes(call_type) not in endpoint_guardrail_translation_mappings:
return data
try:
if CallTypes(call_type) not in endpoint_guardrail_translation_mappings:
return data
except ValueError:
return data # handle unmapped call types
endpoint_translation = endpoint_guardrail_translation_mappings[
CallTypes(call_type)

View file

@ -364,6 +364,11 @@ class CallTypes(str, Enum):
asend_message = "asend_message"
send_message = "send_message"
#########################################################
# Claude Code Call Types
#########################################################
acreate_skill = "acreate_skill"
CallTypesLiteral = Literal[
"embedding",
@ -420,6 +425,7 @@ CallTypesLiteral = Literal[
"send_message",
"aresponses",
"responses",
"acreate_skill",
]
# Mapping of API routes to their corresponding call types