a8n: Only create new Changesets if they can be synced
Created by: mrnugget
This fixes #6535 (closed) by extending the transaction to also include the syncing of the to-be-created changesets.
With that, the transaction rolls back and doesn't create potentially invalid changesets in case one of them cannot be synced.
That is much better than adding invalid state to the database which then leads to the changesets syncer failing to sync changesets every time.
Test plan: