Manifest overlays are a mechanism by which the //content embedder can expand the set of interfaces exposed between //content processes. As we shift towards a model of functional services exposing coherent API surface, we are moving to a world where we treat processes orthogonally from this surface. The diversity of runtime environment for chrome means that we need to vary the process model from platform to platform. Functional scoping for API surface means being able to more easily reason about the API surface for each logical service. Manifest overlays are an obstacle to this as they arbitrarily expand the surface of what ought to be focused services.
For some interfaces, the right solution is to expose them between embedder-provided services that run in relevant //content processes (e.g. chrome_browser and chrome_renderer services). For some other interfaces, it makes sense at least in the near term for them to just be exposed by //content directly.
Comment 1 by roc...@chromium.org
, Oct 17