claude-code - 💡(How to fix) Fix Regression in 2.1.111/2.1.112: AskUserQuestion crashes CLI during team-mode coordination [1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#49663Fetched 2026-04-17 08:34:48
View on GitHub
Comments
1
Participants
2
Timeline
7
Reactions
0
Author
Timeline (top)
labeled ×6commented ×1

Starting from 2.1.111, the CLI crashes when a team-mode coordinator subagent triggers an AskUserQuestion-like flow against the main thread. 2.1.110 is the last known good version.

Error Message

<anonymous> (/$bunfs/root/src/entrypoints/cli.js:8233:15642)
$2 (/$bunfs/root/src/entrypoints/cli.js:477:63169)
aLH (.../cli.js:477:76220)
rV  (.../cli.js:477:76101)
aLH (.../cli.js:477:76199)
rV  (.../cli.js:477:76101)
aLH (.../cli.js:477:76199)
rV  (.../cli.js:477:76101)
aLH (.../cli.js:477:77010)
rV  (.../cli.js:477:76101)

The aLH → rV → aLH → rV ... pattern is the React reconciler retrying the same render; the exception happens inside the AskUserQuestion component render cycle.

Root Cause

Starting from 2.1.111, the CLI crashes when a team-mode coordinator subagent triggers an AskUserQuestion-like flow against the main thread. 2.1.110 is the last known good version.

Fix Action

Workaround

ln -sfn ~/.local/share/claude/versions/2.1.110 ~/.local/bin/claude
# Optional: pin via settings.json env
#   "DISABLE_AUTOUPDATER": "1"

Code Example

<anonymous> (/$bunfs/root/src/entrypoints/cli.js:8233:15642)
$2 (/$bunfs/root/src/entrypoints/cli.js:477:63169)
aLH (.../cli.js:477:76220)
rV  (.../cli.js:477:76101)
aLH (.../cli.js:477:76199)
rV  (.../cli.js:477:76101)
aLH (.../cli.js:477:76199)
rV  (.../cli.js:477:76101)
aLH (.../cli.js:477:77010)
rV  (.../cli.js:477:76101)

---

Q("tengu_ask_user_question_finish_plan_interview", { source: Z, questionCount: O.length, isInPlanMode: n, interviewPhaseEnabled: n && lw() });
let oH = await xM6(F, i);
K(); q.onReject(L$, oH && oH.length > 0 ? oH : void 0);

---

async function xM6(H, $) {
  if (H.length === 0) return;            // returns undefined when H is empty
  return Promise.all(H.map(async (q) => {
    let { block: K } = await KE({ data: q.content, mediaType: q.mediaType, limits: $ });
    return K;
  }));
}

---

ln -sfn ~/.local/share/claude/versions/2.1.110 ~/.local/bin/claude
# Optional: pin via settings.json env
#   "DISABLE_AUTOUPDATER": "1"
RAW_BUFFERClick to expand / collapse

Title: Regression in 2.1.111/2.1.112: AskUserQuestion crashes CLI during team-mode coordination

Body:

Summary

Starting from 2.1.111, the CLI crashes when a team-mode coordinator subagent triggers an AskUserQuestion-like flow against the main thread. 2.1.110 is the last known good version.

Environment

  • Claude Code versions tested:
    • ✅ 2.1.110 — works
    • ❌ 2.1.111 — crashes (installed 2026-04-17 01:06 UTC)
    • ❌ 2.1.112 — crashes (installed 2026-04-17 05:10 UTC)
  • Install method: native installer (bun-packaged binary at ~/.local/share/claude/versions/<ver>)
  • OS: Linux 6.8.0-94-generic (Ubuntu-like), Rocky 9 family
  • Shell: bash
  • Relevant env flags:
    • CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1
    • CLAUDE_CODE_NO_FLICKER=1
    • CLAUDE_CODE_SUBAGENT_MODEL=opus[1m]
  • Enabled plugins: skill-creator@claude-plugins-official, codex@openai-codex, context7@claude-plugins-official

Reproduction

  1. Running on 2.1.111 or 2.1.112 with agent-teams experimental flag enabled.
  2. Invoke a team-mode workflow (in my case a project-local /review-feature slash command with a team coordinator agent).
  3. Coordinator subagent requests input from main via an AskUserQuestion-style elicitation.
  4. CLI throws an uncaught exception in the React render path at cli.js:8233:15642 and the session becomes unusable.

Rolling back the symlink to 2.1.110 restores normal behavior with zero other changes.

Stack trace

<anonymous> (/$bunfs/root/src/entrypoints/cli.js:8233:15642)
$2 (/$bunfs/root/src/entrypoints/cli.js:477:63169)
aLH (.../cli.js:477:76220)
rV  (.../cli.js:477:76101)
aLH (.../cli.js:477:76199)
rV  (.../cli.js:477:76101)
aLH (.../cli.js:477:76199)
rV  (.../cli.js:477:76101)
aLH (.../cli.js:477:77010)
rV  (.../cli.js:477:76101)

The aLH → rV → aLH → rV ... pattern is the React reconciler retrying the same render; the exception happens inside the AskUserQuestion component render cycle.

Code neighborhood (from the minified bundle at 8233)

Q("tengu_ask_user_question_finish_plan_interview", { source: Z, questionCount: O.length, isInPlanMode: n, interviewPhaseEnabled: n && lw() });
let oH = await xM6(F, i);
K(); q.onReject(L$, oH && oH.length > 0 ? oH : void 0);
async function xM6(H, $) {
  if (H.length === 0) return;            // returns undefined when H is empty
  return Promise.all(H.map(async (q) => {
    let { block: K } = await KE({ data: q.content, mediaType: q.mediaType, limits: $ });
    return K;
  }));
}

Suspicion: xM6 returns undefined in the empty-input path while callers on the finish_plan_interview / reject path may access .length or iterate without guarding, causing the crash to loop through the render tree.

Workaround

ln -sfn ~/.local/share/claude/versions/2.1.110 ~/.local/bin/claude
# Optional: pin via settings.json env
#   "DISABLE_AUTOUPDATER": "1"

Request

  • Please confirm the regression range (2.1.110 → 2.1.111) and ship a fix on the latest channel.
  • If a diagnostic build with debug symbols is helpful, happy to run it.

Thanks.

extent analysis

TL;DR

The most likely fix is to update the code to handle the case where xM6 returns undefined when the input is empty, preventing the crash in the React render path.

Guidance

  • Review the xM6 function and add a null check for the return value to prevent accessing .length or iterating over undefined.
  • Verify that the finish_plan_interview and reject paths handle the case where xM6 returns undefined.
  • Consider adding a diagnostic build with debug symbols to help identify the root cause of the issue.
  • In the meantime, the provided workaround of rolling back to version 2.1.110 can be used to mitigate the issue.

Example

async function xM6(H, $) {
  if (H.length === 0) return []; // return an empty array instead of undefined
  return Promise.all(H.map(async (q) => {
    let { block: K } = await KE({ data: q.content, mediaType: q.mediaType, limits: $ });
    return K;
  }));
}

Notes

The provided stack trace and code neighborhood suggest that the issue is related to the xM6 function returning undefined when the input is empty, causing the React render path to crash. However, without more information or a diagnostic build, it's difficult to provide a more specific fix.

Recommendation

Apply the workaround by rolling back to version 2.1.110 until a fix is available, as it has been confirmed to restore normal behavior.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

claude-code - 💡(How to fix) Fix Regression in 2.1.111/2.1.112: AskUserQuestion crashes CLI during team-mode coordination [1 comments, 2 participants]