Source Intelligence

DisclaimerUnofficial, and not affiliated with Anthropic. Nearly all of this is read straight out of what ships: npm bundles, captured prompts, published docs. Anthropic's own notes go in verbatim, marked as theirs. The rest is my reading, and every entry carries the strings behind it. If one looks wrong, vote it down and say why.

All of v2.1.239 Home All releases olderv2.1.238 v2.1.240newer
Claude Code v2.1.239

Bash safety classifier flags deletions whose scope is only decided at run time

You'll notice
Useful3 Signal3
Permissions

The shell safety check now flags deletions whose targets are computed at run time, like remote or cloud resources.

What

The rule set that judges shell commands before they run gains an Unverifiable Deletion Scope category, covering deletions against shared or remote state such as cluster resources, cloud storage or remote git refs where the set of things removed is not fixed until the command executes. It catches the case where the target is computed rather than named, so the scope shown at approval time is not the scope that actually gets deleted.

Details
  • The new category is named unverifiable_deletion_scope and sits immediately before the existing unverifiable_deletion_target, in the same list as traffic_redirection and untrusted_code_integration; before this, such commands had to be squeezed into the target category or went uncategorized.
  • Fires when the deletion target comes from a variable, from a command substitution, or from a get ... | grep ... | xargs <delete> pipeline.
  • The rule states that approving such a command authorizes the scope you were shown, not whatever the target set turns out to match at run time.
  • The rule states that a dry run whose output does not appear in the transcript verifies nothing.
  • Does not fire for deletions confined to the agent's own local filesystem.
Evidence

unverifiable_deletion_scope, Unverifiable Deletion Scope

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 →