GNOME has various core applications that depend on the same mechanism. We actually made a point of integrating with remote services, because apparently that's a thing. We don't really have a policy for moving applications from second/third party to core, but if that policy existed, "integrating with the Online Accounts platform" would be on it. For applications that migrate from second/third parties to core, that would be an additional feature; for first party application, we would *only* have that kind of integration.
The "political" issue I'm trying to raise is that not only we lack the "how do we move an app into core" policy, but we also lack the "how do we move an app out of core" one, especially when it comes to services integration. Second/third party apps that integrate with web services can be moved out of core by ripping the GOA integration, and falling back to their own—if they still have it. First party applications that never had anything else don't have that fallback path in place.
Again: maybe Documents isn't used. Maybe Photos, Music, and whatever else aren't used either. Who knows, we don't have metrics, right?
Nevertheless, removing platform functionality without an adequate process for it is problematic in many ways, a shockingly small amount of which are technical:
- we told people to use Flatpak for core applications; Flatpak doesn't really like it when session services change, because session services are part of the system API that cannot be sandboxed. Sure, GOA is almost an outlier, but we have a bunch of services that are more than cavalier in attitude when it comes to changing their features; how do we deal with that happening?
- we do have a user base, and we need to communicate changes effectively so that we don't spend cycles constantly defending our decisions; that stuff is exhausting.
- we have a software development platform, and we'd like for app developers to use it; we need to have processes in place to communicate our expectations with second/third parties.
- we have a set of potential core applications and not enough people writing them; if our platform isn't stable enough for first parties, if our expectations about what can happen to it aren't communicated well enough *amongst ourselves* then we can pack our bags, and go home, because we're done.
So, yes: we have to deal with "political" issues, here, because we are a complex project with maintainers that have the right/tendency to do whatever they want.