PaPoo
cover

TelemetrySafeError: VirtualMessageList: itemKeys/messages length desync が出るときに見えたこと

このエラーは、こちらで確認できた範囲では 3 件の issue に共通していました。どれも TelemetrySafeError: VirtualMessageList: itemKeys/messages length desync で始まり、itemKeysmessages の件数がずれていることを示しています。読者が自分のケースかどうかを見るなら、まずこの文字列が出ているかを確認するのが早いです。

報告は #85344#85196#85112 の 3 件でした。いずれも open で、解決済みではありませんでした。

手元で取得できた CLI の状態は次の通りです。

$ claude --version
2.1.207 (Claude Code)
$ claude doctor
Claude Code doctor

Running: native (2.1.207)
Commit: bc512d563325
Platform: darwin-arm64
Path: ~/.local/share/claude/versions/2.1.207
Config install method: native
Search: OK (bundled)
Auto-updates: enabled
Auto-update channel: latest
Last update attempt: none recorded

Multiple installations found
- npm-global at /usr/local/bin/claude
- native at ~/.local/bin/claude

Remote Control
Control this session from claude.ai/code or the Claude mobile app

1 warning found
- Leftover npm global installation at /usr/local/bin/claude
  Fix: Run: npm -g uninstall @anthropic-ai/claude-code

For a full setup checkup that can also fix issues, run /doctor in a Claude Code session.

ただし、この claude doctor の結果から、このエラーそのものの原因までは分かりません。分かるのは、手元の検証環境では native の 2.1.207 が動いていたことと、npm global 側の残骸が警告されていたことです。エラーとの直接関係は、現時点では断定できません。

3 件の issue のうち、症状の見え方には少し差があります。#85344 では Windows で同じディレクトリをパスの大文字・小文字違いで起動すると、~/.claude.json の project key が分裂するという報告でした。コメントでは、これによって .claude.json に入った project configuration を一貫して失うことがある、という指摘がありました。そこから先、Telemetry のずれが直接どう繋がるかは issue 本文だけでは断定できませんが、少なくとも「同じディレクトリなのに別 project 扱いになる」ことは報告されています。

#85196 は、UI 実装の作業中に、mockup や HTML context を渡しても hallucination が続き、時間を消耗したという報告でした。そこで出ているエラーは keys=49 messages=48 range=[0,49) です。
#85112 は、ポルトガル語のメッセージを含む issue で、テーブルの並び順確認を依頼した文脈の中で keys=19 messages=18 range=[0,19) が出ています。

つまり、現時点で確認できるのは「別々の入力・別々の状況でも、同じ VirtualMessageList の length desync が出ている」ということまでです。根本原因は未解決で、少なくともこの 3 件だけから共通パターンを断定するのは難しいです。

実務上は、まず自分の症状が本当にこのエラー文字列に一致するかを見ます。次に、もし Windows で同じディレクトリを別の大文字・小文字で開いているなら、#85344 と同じ系統かもしれません。そこは issue 上で明示されていた唯一の具体的な切り口です。逆に、macOS や Linux で同じエラーが出ている場合は、この 3 件だけでは再現条件を特定できません。

今のところ書けるのはここまでです。再現手順や回避策が issue 本文だけでは固まっていないため、無理に言い切らない方が安全です。


検証環境

claude --version : 2.1.207 (Claude Code)
OS          : Darwin 25.3.0 (arm64)
Python      : 3.14.2
検証日時    : 2026-08-10T12:37:28+09:00

参照した Issue(anthropics/claude-code): #85344, #85196, #85112

同じ著者の記事