thanks for the update, what exactly was the bug?
A simple null reference exception.
It would've been easier to catch, but when I thought that I fixed it in one place, it appeared at another spell.
The root problem was, that when I casted a spell on the healtarget I set the healtarget to null. Since I only check for new healtarget in every 3-400ms(depends on the settings on the ui) there may be 3-400ms while you don't have a healtarget. Since you're already casting and you have GCD there should be no problem.
The problems start, when you cancel the spell(even by moving or the CR cancels it on an incoming interrupt). If the spell is cancelled within that 3-400ms window and the CR wants to cast a new healing spell or CD while there's no healtarget selected it throws an exception. Theoretically it shouldn't cause much problem because as soon as that 3-400ms passed it'll select another healtarget and the CR continues its job.
It caused a problem though when you canceled the spellcasts often.
It was a small oversight on my side, when I added small performance improvements and didn't think that they'll cause problems. They did.
This bug was hard to catch for me, because I know the CR better than everyone else and I only move when it's really neccessary to let the CR do it's job.
That's why big companies use testers who shouldn't be the same as the developer. Developers know their stuff better than anyone else thus they use it as they think that it should be used.
I hope that I was clear enough with the explanation.
Again, sorry guys for the inconvenience, I spent a lots of time trying to track this bug down, but it seems that I just needed that little help from my brother to actually be able to find it.