The functions pageMatchesCriteria & userMatchesCriteria both have the rule which is being evaluated for the call Code Event, it just isn't being passed into XenForo_CodeEvent::fire for the events criteria_user & criteria_page.
XenForo_CodeEvent::fire already does all the logic at handling if there is a hint or not, so this is just a matter of addons in their installer activating a catchall event listener for older versions where the hinted listeners will just be ignored.
Event hints are optional, so this is more of a suggestion so I'm moving it to that forum.
However, what you're suggesting would actually make things no better. The catch all is still called with an event hint, so if you have to define a catch all, you're not optimizing anything (actually, making it slightly worse). Thus, this isn't really something that makes sense to add in a bug fix release (because using it is backwards incompatible).