Issue #3592832: Decouple the config-editing domain from the negotiated domain

Adds a name-scoped config-editing domain (DomainConfigEditContext) that DomainConfigFactory and DomainConfigUIManager consult in preference to the negotiated domain, falling back to it. The toggler uses the managers active domain so registration follows the editing domain.

This lets contrib (the Domain Configuration Switcher submodule in Domain Extras, #3592820) retarget a config forms read and write to another domain WITHOUT changing the negotiated domain, so routing, language negotiation and path-prefix handling keep using the real domain. Backward compatible: with no editing domain set, behaviour is identical.

Verified against language-prefix and path-prefix domain modes via the consumer submodule.

Note: config translation is not yet covered (its form reads through the negotiation-bound loadOverrides path); a follow-up would extend the editing context into the runtime override layer.

Merge request reports

Loading