Failed telemetry events accumulate in ~/.claude/telemetry/ and are never retried

Resolved 💬 2 comments Opened May 23, 2026 by Emin-Emini Closed Jun 23, 2026

Environment

  • Claude Code: 2.1.139
  • Node: v24.6.0
  • macOS: 26.2 (build 25C56)
  • Auth: claude.ai (subscription)

Summary

~/.claude/telemetry/1p_failed_events.*.json files accumulate when telemetry submission fails, and never appear to be retried. The oldest buffered events in my install are from 2026-01-07 and the newest from 2026-03-04 — they have been sitting on disk for 2–4 months. After 2026-03-04 the directory stopped gaining new files entirely, suggesting either:

  • the retry path silently stopped attempting,
  • or the failure path stopped writing to disk while still failing in memory.

Either way, the documented behavior (queue + retry) doesn't appear to be working.

Evidence

$ ls -la ~/.claude/telemetry/
-rw-r--r--  1 user  16090 Jan  7 14:27 1p_failed_events.0246...json
-rw-r--r--  1 user  20060 Feb  4 06:12 1p_failed_events.18fa...json
-rw-r--r--  1 user  14697 Mar  3 14:15 1p_failed_events.35f8...json
-rw-r--r--  1 user  13241 Mar  3 10:03 1p_failed_events.40d7...json
-rw-r--r--  1 user  24279 Mar  4 16:19 1p_failed_events.bbbf...json
-rw-r--r--  1 user  19983 Mar  4 16:12 1p_failed_events.d494...json
-rw-r--r--  1 user  48249 Mar  3 09:56 1p_failed_events.e99a...json
-rw-r--r--  1 user  13554 Feb  4 06:12 1p_failed_events.faed...json
  • 8 files, ~170 KB total
  • 124 buffered events of type ClaudeCodeInternalEvent (tengu_dir_search, etc.)
  • Each event has a client_timestamp showing the original attempt — these are correctly stamped Jan/Feb/Mar 2026
  • Files contain the version of Claude Code at the time of failure (e.g. 2.1.51) — current install is 2.1.139 and has never drained them

Expected

  • On next startup with network connectivity, Claude Code should attempt to flush any 1p_failed_events.*.json files.
  • On successful flush, the file should be deleted.
  • A file that keeps failing should eventually be aged out (e.g. dropped after 30 days) rather than living on disk indefinitely.

Actual

  • Files persist indefinitely.
  • No new failure files have been written since 2026-03-04 (despite many subsequent sessions over 2+ months), so either telemetry has been silently succeeding since then (great — but old failures should still be retried), or in-memory failures are no longer being persisted to disk (concerning).

Repro

  1. Trigger telemetry failures (e.g. disable network during a Claude Code session that emits internal events).
  2. Confirm 1p_failed_events.*.json files appear in ~/.claude/telemetry/.
  3. Restore network, run normal sessions for days/weeks.
  4. Observe: the failed-events files are still present, untouched.

Risk

  • Low data-loss risk for the user (these are internal product telemetry, not user data).
  • But it does mean: (a) usage signals Anthropic relies on are silently incomplete, and (b) the on-disk state grows unbounded for users who hit transient failures.

View original on GitHub ↗

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