We can detect if an add-on is a WebExtension or an SDK add-on when it’s analyzed on submission, and this is stored in a database flag. The breakdown between high-level, low-level, and legacy API usage took some cross-referencing between the source code and our database information.
[quote=“desktopd, post:1, topic:7878”] What features will be preserved (especially in SDK)? Will modules like sdk/preferences/service, sdk/io/file, chrome, toolkit/loader or sdk/window/utils be removed or disabled in months for example?
[/quote]
If you want your add-on to work in the coming years, it’s best to stick to high-level APIs. We don’t have any plans of dropping the low-level APIs, but many of them are likely going to break when Firefox moves to a multiprocess architecture, around Firefox 48. The low-level APIs that survive that transition will probably stick around with the high-level ones.