The pull step (merge mode) had no timeout or bandwidth limit at all, so a slow/stalled pull could block the entire per-share sync indefinitely — and since daily_sync_maintenance.sh calls rsync.sh synchronously per share, that blocked every later share and all post-sync maintenance jobs too. RSYNC_MAX_RUNTIME_HOURS was only ever wired into the push half.