The versions table has a unique key constraint on the checksum and uuid fields.
This is a problem because when the reportVersions call is made after a rollback, the insertion is rejected since it would violate that constraint.
But in case of a rollback, this is absolutely normal and expected that we are going to get back to a previous known state, so the backend should not reject it.
Currently, this is rejected like the following:
Apart from rollback, this case could even also happen if we decide to push a new UL that takes back a new plugin to a previous version, or even remove a plugin that got added for some testing phase (like what R. Tyler Croy did live during his DWJW2018 talk, showing a plugin, then removing it).
This should not trigger an error.