release aidev BREAKING SIG 4/5

Claude Code 2.1.214: permission-check bypasses closed, dir/** glob scope narrowed

Security-weighted release closing multiple permission-check bypasses, including a PowerShell 5.1 bypass and dir/ allow rules auto-approving writes to same-named directories anywhere in the tree. Hook if: conditions using single-segment dir/ now match only <cwd>/dir, so existing hook configs may stop matching.

PUBLISHED2026-07-18
OBSERVED2026-08-11
AGE25d
SOURCES1

Permission fixes

  • dir/ allow rules (e.g. Edit(src/)) auto-approved writes to nested dir/ directories anywhere in the tree; now scoped to <cwd>/dir
  • Permission-check bypass in Windows PowerShell 5.1 sessions
  • Bash checks now fail closed on file-descriptor redirect forms the analyzer parsed differently than bash
  • Commands over 10,000 characters always prompt instead of auto-running
  • zsh variable subscripts/modifiers in [[ ]] no longer treated as inert text
  • Certain help and man invocations no longer auto-approved
  • docker (and the Podman docker shim) prompts on daemon-redirect flags: --url, --connection, --identity, Podman remote mode
  • file with -m/--magic-file or -f/--files-from now requires permission
  • Remote-session permission prompts could proceed before the local confirmation dialog

Breaking

  • Single-segment dir/ in hook if: conditions matches only <cwd>/dir; use /dir/** for any-depth. deny/ask permission rules keep any-depth matching.

Other

  • Added the EndConversation tool, letting Claude end sessions with highly abusive users or jailbreak attempts
  • OpenTelemetry: message.uuid, client_request_id, tool_source attributes; CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH for the 60 KB truncation limit
  • Reasoning effort added to the subagentStatusLine payload
  • Fixed unbounded memory growth when --settings points at a device file or multi-GB file; settings over 2 MiB now fail at startup
  • Fixed Bash killing the session when a pkill -f pattern matched the CLI's own process (Linux)
  • Fixed plugins enabled via --settings not loading (regression since 2.1.181)
  • Multiple Windows PowerShell tool fixes: stdin hangs, Unicode decode/encode crashes, where.exe/fc.exe/diff.exe negative results as errors, UTF-16LE output redirects
  • Background daemon fixes: a displaced daemon deleting its successor's control socket, undeletable completed sessions, sessions dispatched from non-git folders
  • Fixed session cost and token telemetry double-counting on multiple cumulative message_delta frames
  • Fixed hooks with exit code 2 not blocking when stdout JSON fails schema validation

Note: the source entry is truncated mid-bullet at the end.

COMMUNITY

No curated reactions recorded for this event. Facts and takes are kept in separate layers — community context is added by hand, never blended into the record above.