Fetching from the wire…
Public story · 2026-09-25 · high
Version 2.1.282 also blocks repo skills from pre-approving their own tools when admins lock permissions to managed rules only.
Why now: The fix is dated in the 2.1.282 changelog entry from September 24, 2026.
Claude Code 2.1.282 fixes a bug where Bash permission rules with a mid-pattern :* never matched when they came from a settings file. That's according to the Claude Code changelog. A rule written as Bash(git:* push) in settings.json was silently skipped. The same rule passed through --allowedTools worked fine.
That gap matters because settings files are where teams put their actual allow lists, not flags typed per session. A rule copied from documentation or a teammate's config, with the wildcard placed mid-pattern instead of at the end, did nothing. No error, no warning. It just sat there looking active. The release adds a startup warning explaining how rules get matched, so a rule that fails now says why.
The same release closes a separate gap in permission scoping. Repository, user, and --add-dir skills could previously pre-approve their own tools through allowed-tools even when an organization had set allowManagedPermissionRulesOnly. That setting exists so only centrally managed rules decide what runs. A skill bundled into a cloned repo could route around it and grant itself tool access anyway. 2.1.282 stops that.
Both are permission-boundary bugs, not features. A related fix in the same release closes a settings-driven path for project config to switch on OpenTelemetry export, another route by which a cloned repo's config could act against the user rather than for them. Anyone running Claude Code with a shared settings.json should diff it against the previous version. A rule that silently failed before this release may now match traffic it never touched, with permission consequences nobody tested for.
Each link below shares sources, entities, or timing with this story.
A deny rule with parentheses in the path was silently ignored, leaving files editable that should have been locked down.
Below that version, file-modifying Bash commands could run during plan mode without waiting for approval, per the changelog.
A repository's settings file could redirect where Claude Code stores config and temp files, before a single prompt ran.
A hook could exit code 2, report failure, and still let the tool run if its JSON failed schema validation, per Claude Code's changelog.
The update also caps how long headless sessions wait on MCP servers to connect and cuts a redundant model call per background task.
The August 20 update also lets plugin marketplaces mint short-lived headers instead of storing static tokens in config.
MindPattern daily
One email a day at 7 AM. Sources and a take on every story. Unsubscribe anytime.