GAS: Immuntiy custom match Query can't be used

// Edit: I’ve changed the complete post to simplify
OK, I had a problem that for my custom Immunity Query, the delegate was not called, allthough it was successfully bound. After reading through the code I’ve seen that this delegate is never executed.
The reason for that is that the query has two matches functions, the delegate is only called in the one that receives an activegameplayeffect as an argument. Also, isEmpty doesn’t seem to check whether there is a delegate binding.
As the immunity is checked before the actually effect is applied, we won’t ever have an activegameplayeffect and therefore we can’t use the query custom match for immunity conditions.
I think that needs to be changed. Could someone confirm that?