Refuse to sync when monorepo has uncommitted changes
Add Monorepo_dirty error that is returned early in the sync function
if the monorepo working tree has uncommitted changes. This prevents
confusion and potential data loss from syncing with a dirty state.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>