langsmith_key_shadowed_by_empty_override() -> LangsmithShadowResultReport an empty prefixed override that is suppressing a LangSmith key.
/trace shows a generic "not configured" hint whenever no key resolves, but
a common footgun is exporting DEEPAGENTS_CODE_LANGSMITH_API_KEY= (empty).
A present-but-empty prefixed variable suppresses a key two ways: per
resolve_env_var's precedence it shadows the canonical env variable
directly, and -- because apply_stored_service_credentials skips the /auth
bridge onto LANGSMITH_API_KEY whenever the prefixed var is present -- it
also keeps a /auth-stored key from ever reaching the environment. Either
way tracing silently stays off even though a key is available. Detecting this
lets callers name the offending variable instead of sending the user to
/auth.
Only an override that actually gates the effective key is reported. If a
key already resolves under the normal LANGSMITH_API_KEY-before-
LANGCHAIN_API_KEY precedence, tracing is off for some other reason (a
missing tracing flag), no override is to blame, and nothing is reported.
Otherwise each override is checked against the specific key it suppresses, so
the returned name is one that, once unset, actually lets a key resolve: its
canonical variant carries a value, or -- for LANGSMITH_API_KEY, the var
/auth bridges its stored key onto -- a stored key exists. When several
overrides qualify, the first in _TRACING_API_KEY_ENV_VARS order is
returned.