Sounds very good already, thanks.
I tested this with Blazing Spear rank IV (Id of the slotted skill: 27167):
When I select the skill I get the events as written before. When I then throw it (or it gets thrown automatically if the gameplay setting is chosen accordingly) I get EVENT_ACTION_SLOT_STATE_UPDATED for each other slotted ability, however the same happens when I cancel it. This is also the point in time that I like to get, since this is when the magicka gets subtracted.
Finally, when it lands I get two combat events with
- result = ACTION_RESULT_EFFECT_GAINED_DURATION
- abilityId = 44449 and 27170
Since the abilityIds don't match I can't really use this to detect that it was sucessfully thrown.
I guess with a reliable event when it gets cancelled I could at least assume that it goes through unless such an event is called, but it would be better if some event gets called when the actuall throwing/activation happens.