fix(otel/v2): drop the unused logging-credential callback var key

It had no consumer: a team is bound to a destination by credential_info.access. It was
allowlisted as a team callback var but never added to all_litellm_params, so it escaped the
absorber into the outbound provider payload. Also corrects a test that asserted
partial-PATCH credential_info loss was intended; the loss is real but pre-existing, so it
is documented rather than codified.
This commit is contained in:
Yucheng Zhu 2026-08-04 22:10:34 -07:00
parent 04457114cc
commit 29a0068763
3 changed files with 5 additions and 5 deletions

View file

@ -464,7 +464,6 @@ DD_TRACER_STREAMING_CHUNK_YIELD_RESOURCE: Final = os.getenv(
LITELLM_HTTP_STATUS_CLIENT_DISCONNECTED: Final = 499
LITELLM_LOGGING_CREDENTIAL_NAME_KEY: Final = "litellm_logging_credential_name"
EMAIL_BUDGET_ALERT_TTL: Final = int(os.getenv("EMAIL_BUDGET_ALERT_TTL", 24 * 60 * 60)) # 24 hours in seconds
EMAIL_BUDGET_ALERT_MAX_SPEND_ALERT_PERCENTAGE: Final = float(

View file

@ -13,7 +13,6 @@ credential values only.
import os
from collections.abc import Callable, Mapping
from litellm.constants import LITELLM_LOGGING_CREDENTIAL_NAME_KEY
from litellm.integrations.langfuse.langfuse_otel import (
LANGFUSE_CLOUD_US_ENDPOINT,
LangfuseOtelLogger,
@ -21,8 +20,6 @@ from litellm.integrations.langfuse.langfuse_otel import (
from litellm.integrations.otel.model.destination import OtelDestination
from litellm.integrations.weave.weave_otel import _get_weave_authorization_header
LOGGING_CREDENTIAL_NAME_KEY = LITELLM_LOGGING_CREDENTIAL_NAME_KEY
def _parse_header_string(raw: str) -> Mapping[str, str]:
pairs = (item.split("=", 1) for item in raw.split(",") if "=" in item)

View file

@ -287,8 +287,12 @@ def update_db_credential(
merged_credential.credential_values.update(encrypted_params)
# update model info
if encrypted_credential.credential_info:
merged_credential.credential_info = encrypted_credential.credential_info
"""Update credential info"""
if "credential_info" not in merged_credential.credential_info:
merged_credential.credential_info = {}
merged_credential.credential_info.update(encrypted_credential.credential_info)
return merged_credential