{"version":"2.1.277","anchor":"new-sync-journal-reason-enum-for-why-a-remotelocal-git-ho","canonical_anchor":"new-sync-journal-reason-enum-for-why-a-remotelocal-git-ho","heading":"New sync-journal 'reason' enum for why a remote\/local git hold state changed","tier":"internal","area":"Directory Sync","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.277\/e\/new-sync-journal-reason-enum-for-why-a-remotelocal-git-ho","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.277","markdown":"### New sync-journal 'reason' enum for why a remote\/local git hold state changed\n\nSync journal for git 'hold' state now records a specific reason code for each change\n\n**What**\n\nClaude Code's sync journal, which tracks why a remote or local git repository is put on 'hold' (paused from syncing), now uses a fixed set of reason codes: `commit_not_held`, `not_in_history`, `other_branch`, `switched_off`, `diverged`, `branch_switched`, and `machine_stopped`. A new check function detects start-failed or detached states, and any reason that doesn't match the known set is recorded as `other`.\n\n**Why**\n\nThis gives a consistent, structured record of why sync was held at any given point, rather than a loosely defined reason.\n\n- Area: Directory Sync\n- Tier: Under the hood\n- Useful: 2\/5\n- Signal: 2\/5"}