bundleHostOwnsInstance(bundleHost, addonPkgInfo) {
    if (isLazyEngine(bundleHost)) {
      return (
        !this.engineAddonTransitiveDedupeEnabled ||
        !this.project.hostInfoCache
          .getHostAddonInfo(bundleHost._packageInfo)
          .hostAndAncestorBundledPackageInfos.has(addonPkgInfo)
      );
    }

    return true;
  }
An optimization we support from lazy engines is the following:

If an addon instance is supposed to be bundled with a particular lazy engine, and
same addon is also to be bundled by a common LCA host, prefer the one bundled by the
host (since it's ultimately going to be deduped later by `ember-engines`).

NOTE: this only applies if this.engineAddonTransitiveDedupeEnabled is truthy. If it is not,
the bundle host always "owns" the addon instance.

If deduping is enabled and the LCA host also depends on the same addon,
the lazy-engine instances of the addon will all be proxies to the one in
the LCA host. This function indicates whether the bundle host passed in
(either the project or a lazy engine) is really the bundle host to "own" the
new addon.

@method bundleHostOwnsInstance
@param (Object} bundleHost the project or lazy engine that is trying to "own"
the new addon instance specified by addonPkgInfo
@param {PackageInfo} addonPkgInfo the PackageInfo of the potential new addon instance
@return {Boolean} true if the bundle host is to "own" the instance, false otherwise.