Skip to content

fix: preserve files during filesystem copies - #1178

Merged
andiwand merged 1 commit into
mainfrom
review/atomic-file-copies
Oct 6, 2026
Merged

andiwand merged 1 commit into
mainfrom
review/atomic-file-copies

Conversation

@andiwand

@andiwand andiwand commented Oct 6, 2026

Copy link
Copy Markdown
Member

🤖 Generated with Claude Code

Copying a file onto itself truncated it before reading; a failed source read also destroyed an existing destination. Route filesystem copies through the existing atomic writer, closing the source before replacement. This also reuses checked flush and cleanup behavior.

Validation: filesystem regressions failed before the fix and pass afterward; Filesystem.* and VirtualFilesystem.* pass in the integrated stack. Atomic replacement changes inode identity and requires write access to the destination directory.

Stack: based on main. Review against this base; merge the stack bottom-up.

@andiwand
andiwand marked this pull request as ready for review October 6, 2026 20:11
@andiwand
andiwand merged commit 4a3fd64 into main Oct 6, 2026
12 of 23 checks passed
@andiwand
andiwand deleted the review/atomic-file-copies branch October 6, 2026 20:11
andiwand added a commit that referenced this pull request Oct 6, 2026
Both output repositories carry the pdf-annotation.js from #1171 and
#1173. A full run on 078390a matched every reference page byte for byte;
only that script changed. #1178, merged since, changes how a file copy
is written, not its bytes.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MxyTMutqSUJRGfxA8CyzMc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant