Under the hoodTier: how much it should matter to you
1Useful: my rating, 1 to 5
1Signal: worth watching, 1 to 5
PermissionsArea: what it touches
Bug FixesKind: in v2.1.265,
Bug FixesSection of the release
What
When Claude Code decides whether to run a tool, there's a shared internal check for whether the session has already been "committed" to an answer; if so, it used to return a promise that never resolves, effectively hanging that path. Previously, the abort (cancel) path used a differently named function for this, and the order of checks meant a cancellation could still get caught by the "already committed" hang. Now both the abort path and the normal path use the same function, and the check for an abort signal runs before the "already committed" check.
Why
This fixes a case where cancelling a tool permission request (like denying a tool from running) could hang instead of completing, by making sure an abort is always honored ahead of the session-committed state.