I'm not 100% sure how it works either. Very very early in C2's development I seem to recall triggers weren't allowed as subevents and I asked Ashley to allow them - and I thought he said it would work as I described, but it was so long ago that I might not be remembering it correctly. Or maybe different triggers work differently, I remember the one I was talking about in particular was 'on mouse clicked' which wouldn't affect picking if it was put at the top of a copy of the event tree. Again, I might be wrong about that though.
I also wasn't entirely sure how on collision works so I did a test. There was a thread a while ago from someone who reported getting more checks with on collision than with is overlapping. Using your events in your first post with one instance of sprite and sprite2, I got 1 check per tick. If I put the collision condition on the top, I got two checks. If I add another event:
Every tick
- set sprite position to random(10), 0
- set sprite2 position to random(10), 0
...the collision checks are upped to 4, so it does seem C2 has some sort of automatic extra checks happening when an object is told to move by an action, but not when filtered by parent conditions. I tried duplicating the every tick event, but it didn't affect the checks, so my guess is C2 takes a note of which objects moved and then does an extra check at the end of the event sheet, or something like that.
Either way, it does seem to reduce the checks to the same amount regardless of using on collision or is overlapping.