The Repeater’s Divisor setting takes the BPM into account when grabbing the sound slice, since the Divisor is a fraction of the beat length. At least that’s how it used to work when it was introduced in v2.8 up to v3.0.
Something changed in v3.1, where it no longer does this when changing the BPM. Even returning the BPM back to the first value has the repeats out of sync. This is clearly not how it’s supposed to work, since reloading the song again puts it back in sync.
Edit - Interestingly it works properly if the BPM is changed via effect commands or graphical automation. The problem seems to be when manually changing the setting in the Transport Panel.