(In reply to Shane Caraveo (:mixedpuppy) from comment #6)
This is about an extension being removed from the system. What happens when I install an extension, shutdown, delete it from disk, then startup? This is essentially what is happening (potentially) on an upgrade. It seems that it is left in the list of extensions to load on startup.
This seems very different since the addon manager is ultimately in control over what's in the profile, there isn't some other component that's going to fall out of sync. Builtin addons, on the other hand, are controlled by some other component and if they're changing out from under it, that other component has to keep itself in sync. That's possible of course, but it sounds undesirable.
processFileChanges() doesn't currently know how to do anything with builtin addons (which means onUpdate handles won't get called if the extension is updated for instance). If/when that gets fixed, it wouldn't be outrageous to make it delete any extensions that are no longer present, but I really think it would be better to leave this in the hands of the search service.