I'm having issues with one-shot replication, where the ReplicationChangeEventArgs are not in sync with the actual status of the puller and pusher. Following your documentation, I check for the status of the pullers/pushers with:
else if (Pull.Status == ReplicationStatus.Stopped && Push.Status == ReplicationStatus.Stopped)
AuthEvent(new AuthEventArgs(AuthStatus.Stopped, _progressPercent));
However it is entering the 'stopped' case twice. The first time it enters, the 'ReplicationChangeEventArgs' actually says that the replication changed to active, then the next time the eventArgs say stopped. I'm not sure if this is a bug or just a timing thing.