Follow Discord
Sweep 23 Oct 2026 · 21:48Z Build v2.1.310 529 read Stable v2.1.308 Latest v2.1.310 Next v2.1.310 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.235 ·

Permission dialogs: persistent "don't ask again" rows now require a minted ConsentRow, and unshowable values withhold them

Permission dialogs now build their 'don't ask again' options through a single minted, validated ConsentRow path

Under the hood Internal Changes
JSON All of v2.1.235
Under the hoodTier: how much it should matter to you
2Useful: my rating, 1 to 5
2Signal: worth watching, 1 to 5
PermissionsArea: what it touches
Internal ChangesKind: in v2.1.235,
Internal ChangesSection of the release

Every dialog that can persist a permission rule (Bash prefix/exact, Chrome host, Skill exact/prefix, plan-mode exit keep-context rows, and MCP elicitation) now produces its label and the permissionUpdates it applies together through a single mint function, and consumers check the row before applying it. If a row wasn't produced this way, the dialog falls back to a one-time allow with no persistent rule written; the mint step also deep-freezes its input and rejects getters, symbols, and non-plain prototypes.

Separately, untrusted strings shown in these dialogs (MCP server/tool names, elicitation URLs, commands, skill and cell names, question labels) now pass through a sanitizer that can withhold display entirely, showing "approval withheld; one-time options only" instead. When a value is withheld, persistent options are dropped, and for the elicitation URL dialog the default choice becomes "decline" and the URL cannot be opened. This applies to everyone.

How sure we are
One source agreesOne thing we can check says the same as this entry.
Anthropic's release notes agreeImproved permission dialogs: display text and "don't ask again" options now always match what a grant would cover, and "don't ask again" is…

See this entry in the whole of v2.1.235 →

Feedback