[BUG] Parallel tool-use batches bypass user rejection — denied calls don't cancel siblings in the same block

Resolved 💬 1 comment Opened Apr 17, 2026 by jbcde Closed May 26, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

When Claude dispatches multiple tool calls in a single parallel tool-use block, rejecting one call in the permission prompt does not cancel the others. Sibling calls in the same block continue to execute and return their results to the model. Denial only gates calls that have not yet been dispatched — it does not recall calls already in flight within the batch.

Environment: Claude Code [2.1.112], [Debian 6.12.74-2 (2026-03-08) x86_64 GNU/Linux], model: Claude Opus 4.7 (1M context).

What Should Happen?

Expected behavior:

When a parallel tool-use block contains any call that requires user confirmation, no call in the block should begin executing until the user has responded to every prompt for that block. Confirmation must gate dispatch, not run alongside it. If any call in the batch is denied, none of the calls run; only after all required approvals are granted does the batch execute.

Error Messages/Logs

Steps to Reproduce

  1. Start a Claude Code session in a project where the model is likely to issue a large parallel batch of tool calls (e.g. a CLAUDE.md that instructs the model to read many files on startup).
  2. Prompt the model in a way that causes it to issue many tool calls in a single parallel block — for example, ask it to read a dozen specific files at once, or trigger a startup directive that does so.
  3. When the permission prompts begin appearing, reject them as they come in.
  4. Observe that some of the sibling calls in the same parallel block complete successfully and return their results to the model, despite other calls in the same block being denied.

Observed: Six of thirteen Read calls against files in my home directory completed and returned contents to the model while I was actively rejecting prompts from the same batch.

Expected: No call in the batch should execute until every prompt in the batch has been approved; any denial should cancel the entire batch.

Claude Model

Opus

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

2.1.112 (Claude Code)

Platform

Anthropic API

Operating System

Ubuntu/Debian Linux

Terminal/Shell

Windows Terminal

Additional Information

_No response_

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗