[BUG] Consecutive permission prompts replace each other with no input cooldown — user approves an unread prompt (safety regression)

Resolved 💬 5 comments Opened May 16, 2026 by surfingdoggo Closed May 20, 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?

What happens:
When two permission prompts fire in close succession, prompt B replaces prompt A in place. If the user has read prompt A and is moving to approve it, their confirmation keystroke lands on prompt B, which was never seen. I have approved actions I did not read multiple times this morning because of this. It may be during firing off multiple subagents at the same time.

Why this is a safety bug, not UX:
The entire point of the permission gate is informed consent. Replacing the prompt content under a primed keystroke, with no re-arm delay, defeats it. The user authorizes an action they never reviewed. This is worse than #48550 because it bypasses review entirely rather than just changing a default.

Environment:

  • Claude Code 2.1.143 (latest)
  • Linux
  • Regression, did not occur before this week. The permission/input-handling area changed in 2.1.139–2.1.141 ("Numerous input handling and permission-related fixes"), the likely regression window.

What Should Happen?

Permission prompts queue like they used to, they don't show on top of the current prompt.

Error Messages/Logs

Steps to Reproduce

  1. Ask Claude Code to do work (maybe: using subagents)
  2. Prompts coming in show on top of the other prompts.

Claude Model

Opus

Is this a regression?

Yes, this worked in a previous version

Last Working Version

unsure, before maybe Wednesday of this week it was working

Claude Code Version

2.1.143

Platform

Anthropic API

Operating System

Ubuntu/Debian Linux

Terminal/Shell

Other

Additional Information

In tmux in konsole

View original on GitHub ↗

This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗