I see. Well in that case I don't think there is any need to make this backward incompatible. It is simple enough to create a default method on the Plugin class that returns an empty array. Then all plugins that don't implement the method will continue to function in the current fashion.
Is there a need for the $plugin_id parameter? It is just getting a list of permissions, yes?
We'll also probably want to remove the permissions on uninstall. Upgrade should check permissions on every instance of the plugin, while install and uninstall should only effect the particular plugin the action is being taken on.
Do we have what we need to get started on this? I'd love to get 4.9.1 out by the end of the week.
If you need help on the task, just let me know.