Group of 3 You'll notice
Git/cloud sync now has dedicated handling and messages for scratch-directory failures and branches pointing at sync's own bookkeeping commits
What
- The internal branch fast-forward routine used for git worktree/checkout advancement now allocates its temporary index copy through a managed scratch-directory allocator instead of writing a temp file directly beside the git directory, and fails with a new distinct result kind if the scratch directory can't be created.
- Cloud-session commit sync messaging gained two new "parked" reasons:
bookkeeping_in_range(certain commits are never made part of history, though the files themselves synced normally) andscratch_unavailable(file contents still synced even though Claude's cloud commits are in the session's history). - File-sync now refuses to apply an incoming branch whose history includes one of dir-sync's own internal bookkeeping commits, explaining that the branch points at sync's internal refs rather than real work.
Why
These changes make cloud/local sync failures easier to understand and less likely to corrupt history: users get a clear explanation when a scratch directory can't be allocated or when a branch accidentally references sync's own internal bookkeeping commits, instead of a confusing or silent failure.