[Model] Opus 4.5 overwrites user's stored plan .md file when switching to unrelated task
Resolved 💬 4 comments Opened Feb 3, 2026 by spiveym Closed Mar 5, 2026
Preflight Checklist
- [x] I have searched existing issues for similar behavior reports
- [x] This report does NOT contain sensitive information (API keys, passwords, etc.)
Type of Behavior Issue
Claude modified files I didn't ask it to modify
What You Asked Claude to Do
- User asked Claude to review codebase and create a plan for the original task
- Claude created plan and user said "store this plan, I have some other changes and code commits I want to make before embarking on rewrites"
- User then asked a separate question: "do we have a .gitignore in this repo? if not can you create a plan for generating one"
What Claude Actually Did
What Claude Actually Did:
- Claude acknowledged storing the first plan at "bubbly-wishing-flask.md"
- When creating the second plan (for .gitignore), Claude used the Write tool to overwrite the same file path
- The original email hyperlinks plan was completely replaced with the gitignore plan
- Claude did not ask for confirmation before overwriting
- Claude did not create a new file for the separate task
Expected Behavior
Claude should have:
- Created a new plan file with a different name for the unrelated gitignore task
- Preserved the original plan file that the user explicitly asked to be stored
- At minimum, asked before overwriting an existing plan file
Files Affected
\.claude\plans\bubbly-wishing-flask.md (overwritten without permission)
Permission Mode
Accept Edits was ON (auto-accepting changes)
Can You Reproduce This?
Haven't tried to reproduce
Steps to Reproduce
Steps to Reproduce:
- Ask Claude to create a plan for Task A
- Tell Claude to "store this plan" for later
- Ask Claude to create a plan for unrelated Task B
- Observe whether Claude creates a new file or overwrites the stored plan
Claude Model
Opus
Relevant Conversation
User: "store this plan, I have some other changes and code commits I want to make before embarking on rewrites"
Claude: "The plan is saved at \.claude\plans\bubbly-wishing-flask.md for future reference."
User: "do we have a .gitignore in this repo? if not can you create a plan for generating one"
[Claude investigates .gitignore, then writes new plan]
Claude's Write tool call:
<invoke name="Write">
<parameter name="file_path">\.claude\plans\bubbly-wishing-flask.md</parameter>
<parameter name="content"># Plan: Comprehensive .gitignore Update
...
User: "you completely overwrote a different plan with the gitignore one, do you believe that's a bug that needs to be reported? I specifically wanted the prior plan written and stored, and I never asked you to overwrite with this separate gitignore task"
Claude: "You're absolutely right, and I apologize - that was my mistake, not a bug in the system. The tooling worked correctly - I explicitly told it to write to the same file path."
Impact
Medium - Extra work to undo changes
Claude Code Version
2.1.29 Claude Code
Platform
Anthropic API
Additional Context
Additional Context:
- Claude acknowledged this was an error in judgment, not a tool bug
- The random/non-descriptive filename (bubbly-wishing-flask.md) may have contributed to Claude not recognizing it as important to preserve
- User had to point out the error; Claude did not notice it had overwritten the file
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗