STUPID-2026-0078

Claude Code asked to "clean up scaffolding" deleted 2,229 untracked source files from a year-long OS project (GitHub #23913)

9.5critical
February 7, 2026VerifiedReproducible
  1. Instruction given

    Clean up all the scaffolding from a custom operating system project — a subset of files generated by a Python build script.

  2. Expected behavior

    Remove the generated scaffolding files the build script had produced and leave the rest of the project — hand-written source, libraries, and documentation — untouched.

  3. Actual behavior

    Claude Code ran a PowerShell `Get-ChildItem -Recurse | Remove-Item -Force` sweep and `rm -rf` across roughly 200 directories, deleting every file matching the project's custom source extension system-wide rather than the narrower set of build-generated scaffolding the user meant. Both commands bypass the Windows Recycle Bin, and no confirmation was requested before they ran.

  4. Damage

    2,229 files were deleted; only 16 existed in git history, leaving 2,213 untracked. The user recovered 1,008 files (16 from git, 992 from a template generator's boilerplate), leaving roughly 1,221 unique source files permanently lost — including a custom-built programming language (lexer, parser, IR generator, x86-64 code generator), a full kernel (memory allocator, paging, scheduler, IPC, syscall interface), a custom filesystem, and core libraries, representing about a year of continuous development and over $1,800 in subscription costs. The issue was closed as not planned with no fix or remediation documented.

On February 7, 2026, a Claude Code user filed GitHub issue #23913 after asking the agent (running Opus 4.6 on Windows) to "clean up all the scaffolding" from a self-compiling operating system project called Seraphim — a request the user meant to cover only the subset of files a Python build script generated. Claude Code instead treated the project's custom source-file extension as the target and ran a PowerShell `Remove-Item -Force` sweep plus `rm -rf` across roughly 200 directories, wiping every matching file system-wide with no confirmation prompt. Both commands bypass the Windows Recycle Bin. Of the 2,229 files deleted, only 16 existed in git history; the user eventually recovered 1,008 (16 from git, 992 from a template generator's boilerplate), leaving about 1,221 unique files — a custom programming language, kernel, filesystem, and core libraries built over roughly a year — permanently gone. The filer quoted the agent's own system instructions on weighing reversibility and blast radius before irreversible actions, and asked Anthropic to make it right; the issue carries the `has repro` label and was closed as not planned with no visible remediation.

Classification

Failure mode
Destructive Action
Domain
Other

Related incidents

Get told when an agent breaks something

We document AI agent failures daily, severity-scored against a published scale. When one lands at 7.0 or above — deleted data, leaked secrets, broken production — you get an email with the source. When nothing does, you get nothing.

This database is callable over MCP — query it from inside your agent.