30-day transcript auto-deletion silently destroyed months of session history — destructive defaults should announce themselves

Status Open
Reported on v2.1.219
Maintainer reply None cached
Activity 1 comment · opened Aug 5, 2026

What happened

I'm a solo founder who has built my product almost entirely in Claude Code sessions since early spring (301 commits). This week I ran YC's Paxel — their new tool that analyzes coding-agent transcripts so reviewers can evaluate how founders build. It found 4 sessions. Months of history were gone.

The cause: cleanupPeriodDays defaults to 30, and Claude Code had been permanently deleting my transcripts on a rolling 30-day fuse since I started. No prompt at install, no warning before the first deletion, no notice as it happened, nothing in the UI afterward — each file just quietly unlinked (no Trash) once it aged out. I learned my data had been being destroyed for months only when a third-party tool went looking for it.

Two sessions survived by accident — I happened to reopen them in July, which reset their clocks. That's how invisible the mechanism is: even heavy daily use gives you no hint it exists.

Why this default is wrong now

The 30-day default treats transcripts as debug logs. That made sense when they were scratch for resuming recent work. But in the agent era the transcript is the record of the thinking — the decisions, dead ends, and reasoning behind the code. The ecosystem already treats it that way: YC now asks founders to submit transcript analysis as part of how they're evaluated. The accelerator treats these files as a founder's track record while the tool that writes them treats them as trash with a 30-day fuse.

A user who would object to "delete all my thinking after 30 days" never gets asked the question in those words — or any words.

What I'm asking for

Any of these would have saved my data; together they'd fix the class of problem:

  1. Make the first cleanup loud. Before the first-ever deletion pass on a machine, show a one-time notice: what will be deleted, the setting that controls it, one keystroke to opt into long retention.
  2. Surface retention at onboarding. One line during setup ("Transcripts are kept 30 days — change with cleanupPeriodDays") turns a silent default into a choice.
  3. Leave a tombstone. When cleanup deletes files, write a line to a log (~/.claude/cleanup.log: date, project, N files, how to change the setting). Deletion that leaves no trace is indistinguishable from a bug — and undiagnosable months later.
  4. Reconsider the default for clearly-active projects, or scale retention with usage. A repo with daily sessions for months is not a casual trial.

Environment

  • Claude Code 2.1.219 (macOS desktop app), default settings — cleanupPeriodDays was never set
  • Recovered what I could via the desktop app's server-side session mirror; the raw local files are unrecoverable

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗