One feature that I think is missing and we need quite a lot is an event that fires when an action's phase changes from Performed to Waiting. The Cancelled event seems to be meant to fire only if the interaction ends abruptly before becoming Performed. There is no event that fires when the interaction ends normally. This is fine for interactions like Tap or Multi Tap, which end as they become Performed. With an interaction like Hold, however, the interaction can become Performed and end at different times. Suppose an action needs to be performed for as long as a button is held, but only if the button is initially held for t seconds. With the current system, I found no way of doing it with only one interaction on one Input Action, without some custom logic that would tie my components to the way the Input Action was set up in the editor. I ended up re-implementing the Hold interaction so that the Cancelled event is called after Performed, when the user released the button. This works for now, but is not consistent with how the other interactions work. What would make that use case much easier to handle would be a Finished event that fires when the phase changes from Performed back to Waiting. I think this would be a non-breaking change, and shouldn't be too difficult to implement.