{"version":"2.1.227","anchor":"worker-sync-state-is-stored-in-a-ccr-dir-sync-folder-beside-","canonical_anchor":"worker-sync-state-is-stored-in-a-ccr-dir-sync-folder-beside-","heading":"Worker sync state is stored in a .ccr-dir-sync folder beside the repo","tier":"internal","area":"Remote Sync","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.227\/e\/worker-sync-state-is-stored-in-a-ccr-dir-sync-folder-beside-","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.227","markdown":"### Worker sync state is stored in a `.ccr-dir-sync` folder beside the repo\n\nSync state lives in a `.ccr-dir-sync` folder beside your repo so restarts resume quickly.\n\n**What**\n\nThe syncer saves what it has already agreed with the laptop into a JSON file under a `.ccr-dir-sync` directory next to the repository root, named after the remote session id, so a restarted worker resumes instead of re-scanning everything.\n\n**Details**\n\n- Written with restrictive permissions: file mode 0600, directory mode 0700.\n- Refuses to write if the state exceeds 64 MiB or if the file lists exceed what the reader will accept, logging \"sync base too large to store\".\n- Permanently gives up persisting after permission or read-only filesystem errors (EACCES, EPERM, EROFS), logging `dir_sync_worker_persist_failed`; syncing continues without a saved state.\n\n**Evidence**\n\n`.ccr-dir-sync`\n\n- Area: Remote Sync\n- Names: `.ccr-dir-sync`\n- Tier: Under the hood\n- Useful: 2\/5\n- Signal: 2\/5"}