GitHub Advisoryadvisory · npm, PyPI

GHSA-rr7j-v2q5-chgv LangSmith SDK: Streaming token events bypass output redaction

MEDIUM Published 2026-04-16 Modified 2026-04-24 Official page ↗
Aliases
CVE-2026-41182
Ecosystem
npm, PyPI
Packages
langsmith
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Weaknesses
CWE-200, CWE-359, CWE-532
Reviewed
2026-04-16

Affected packages

• npm langsmith: < 0.5.19 → fixed in 0.5.19 • PyPI langsmith: < 0.7.31 → fixed in 0.7.31

Description

Summary The LangSmith SDK's output redaction controls (hideOutputs in JS, hide_outputs in Python) do not apply to streaming token events. When an LLM run produces streaming output, each chunk is recorded as a new_token event containing the raw token value. These events bypass the redaction pipeline entirely — prepareRunCreateOrUpdateInputs (JS) and _hide_run_outputs (Python) only process the inputs and outputs fields on a run, never the events array. As a result, applications relying on output redaction to prevent sensitive LLM output from being stored in LangSmith will still leak the full streamed content via run events. Details Both JS and Python SDKs are affected. The same pattern exists in both: • JS SDK: `traceable.ts:997-1003` and `traceable.ts:1044-1050` • Python SDK: `run_helpers.py:1924` and `run_helpers.py:1996` In both SDKs, `new_token` events with raw `kwargs.token` values are added during streaming, and the redaction pipeline (`hideOutputs` in JS, `hide_outputs` in Python) only processes `inputs`/`outputs` — never `events`.

Related

Alias · CVE (1)

  • CVE-2026-41182 LangSmith Client SDKs provide SDK's for interacting with the LangSmith platform. vulnerability

Weakness · CWE (3)

  • CWE-200 Exposure of Sensitive Information to an Unauthorized Actor weakness
  • CWE-359 Exposure of Private Personal Information to an Unauthorized Actor weakness
  • CWE-532 Insertion of Sensitive Information into Log File weakness

References