Follow Discord
Sweep 22 Oct 2026 · 04:32Z Build v2.1.308 527 read Stable v2.1.308 Latest v2.1.308 Next v2.1.308 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.239 ·

Requests blocked by an organization's data-loss-prevention policy are now a distinct outcome

Requests refused by your organization's data-loss-prevention policy now show the exact reason instead of a generic failure.

You'll notice New Features
JSON All of v2.1.239
You'll noticeTier: how much it should matter to you
3Useful: my rating, 1 to 5
3Signal: worth watching, 1 to 5
ErrorsArea: what it touches
New FeaturesKind: in v2.1.239,
New FeaturesSection of the release
What

When a server refuses a request under an organization's data-loss-prevention policy, Claude Code now recognises the specific error code dlp_request_denied instead of showing a generic failure. It is treated as terminal for that request body, counted as a refusal when deciding whether a turn completed, and reported as the exact error detail rather than truncated free text. No client flag governs this; it activates whenever your organization's server returns that code.

Details
  • Added to the api_error union in the SDK message schema, documented there as terminal for that request body, with a note that anything replaying history must not re-send it.
  • Carried through query results as an isDlpDenied flag.
  • Turn-completion telemetry now records a verdict of dlp_denied, separate from the plain refusal verdict.
  • None of this code exists in 2.1.238.
Evidence

dlp_request_denied, dlp_request_denied: the request was refused by the organization's data-loss-prevention policy

Strings lifted out of the shipped bundle, so the claim above can be checked against them.

See this entry in the whole of v2.1.239 →

Feedback