The problem that IntegrationRegistrar adds beans during the @EnableIntegration processing, leaving user-declared beans into the later phase, therefore we end-up with the use-case when we need to allow to override beans in the BeanFactory. Since Spring Boot 2.1 this option is disabled by default, therefore we need to reconsider our logic.
Looks like the best solution is to move bean definition from the IntegrationRegistrar into some BeanFactoryPostProcessor, e.g. existing DefaultConfiguringBeanFactoryPostProcessor.
The problem that we need to be careful for the parent-child scenarios and consider to register some beans in the child context again to allow to process its own behavior.