Zend certified PHP/Magento developer

Magento 2. How does Magento bypass the circular dependency for MagentoBackendModelUrl?

Magento uses

MagentoBackendModelUrl

as a preference for

MagentoFrameworkUrlInterface

now MagentoBackendModelUrl
has a dependency on

MagentoFrameworkDataFormFormKey

which has a dependency on

MagentoFrameworkSessionSessionManagerInterface

which in the admin area is implemented by

MagentoBackendModelSession

which has a dependency on
`MagentoFrameworkSessionSidResolverInterface`

which is implemented by

MagentoFrameworkSessionSidResolver

which in turn has a dependency on

MagentoFrameworkUrlInterface

in the end what we have is a circular dependency

BackendModelUrl < - depends -> FormKey

I’ve triple checked to see if a different implementation is provided for SidResolverInterface in the admin area, one that does not have a dependency on MagentoFrameworkUrlInterface. This is not the case.

So how does Magento bypass this circular dependency, why does it not fail, what am I missing?