start Once
open suspend override fun <T> startOnce(filter: String?, setPresence: Presence?, currentBatchToken: MutableStateFlow<String?>, timeout: Long, withTransaction: suspend (onRollback: suspend () -> Unit, block: suspend () -> Unit) -> Unit, asUserId: UserId?, runOnce: suspend (Sync.Response) -> T): Result<T>