Follow up from threads in the document:
We discussed having a global whitelist of service types for all extensions. My concern is that I have no way of knowing whether it is appropriate to add a new type to this list, and I don't want to review patches from third party extension developers adding random things to this list so they can use the API.
We also discussed refactoring the API to declare service types in the manifest for extensions. This was attempted, but based on implementation concerns we implemented the current API which uses event filters. Moving back to manifest declared types would be significant work and my team doesn't have the bandwidth.
I propose we maintain the status quo for extensions - a global whitelist of service types and the API remains private to first party extensions. For apps the API is public and we have no whitelists.
If there are additional concerns please voice them, otherwise we will move forward with the issues filed and Red's patch in progress.
m.