What
With --cloud, Claude Code can keep a folder on your machine in sync with a cloud session. That sync has been hardened.
- Device signing: file uploads (put, upload-begin and upload-commit) are now signed with the key of the device the session is bound to, and carry
device_attestationanddevice_attestation_issued_at. Attach and headless attach pass the bound device's id and signer through. - No usable device key: a folder session with no bound device id stops file sync with reason
device_key_unavailable, and an unsigned result maps to the same cause. A separate message covers a machine that cannot sign as the bound device. - Off switch: when the server refuses with the reason "synced_file_lane_denied" (HTTP 400), the cause is now
switched_off_by_anthropicinstead of the general "sync is not available for this session". You see "file sync was switched off on Anthropic's side for now; the cloud session keeps whatever files it has - re-open the session later to try again", or, at attach, "File sync was not started: it is switched off on Anthropic's side for now. Attach the folder again later to retry." This shows as a warning, and the paused or refused status elsewhere in the sync view reflects it. - The sync worker's device-status, failure-tracking and restore logic was rewritten. It stands down after 3 reads without a status and adds held-turn and back-online states.
- The attach path checks
tengu_violin_soundpost, with a fallback of off. No reading of it has been taken under this release.
Why
Cloud file writes are now tied to the machine the session is bound to, so on a machine without a usable device key sync stands down instead of uploading. When sync stops on Anthropic's side, you can tell that apart from a problem on your own machine and know a later retry may work.
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubt
Whether Anthropic's server sends this refusal today cannot be told from Claude Code itself.