The code works by getting any updated Gemini issues since the last sync and updating the PureCM tasks. Then getting any updated PureCM tasks since the last sync and updating the Gemini issues. So if the same issue has been updated in PureCM and Gemini then the Gemini changes will clobber the PureCM changes - I am fine with this.
The problem is if I update a PureCM task twice then the second changes are clobbered. This is happening because Gemini is detecting that the issue has changed - because it was changed by PureCM.
I could get around this by only syncing Gemini to the time after the PureCM sync - but this will mean that any genuine changes made to Gemini when performing the sync will be lost.
Is there a way of tagging an issue update - so I know I can ignore this update?
If not I guess I can filter it to exclude updates made by this user. This will just be an extra step for users when setting up Gemini. They will have to create a new Gemini user specifically for this plugin and will have to know not to update with this user. In production users should be doing this anyway - but I can imagine it might be confusing when they just want to test the plugin.