This looks like a step in very right direction.
Only comment I could have on it is that it’s very unclear how subscription would work and be done here without having any server (as EventSub guide right now requires you to have own server for callback to register a subscription);
Also how subscription would be granted (or, more exactly, what scopes application needs for which subscription).