--- the six components in the five packages the composition root excludes from scan WebMvcProblemExceptionHandler ann=[@RestControllerAdvice @Order ] mainRefs=0 WebFluxProblemExceptionHandler ann=[@RestControllerAdvice @Order ] mainRefs=0 WebMvcBudgetExceptionHandler ann=[@RestControllerAdvice @Order ] mainRefs=0 WebMvcBudgetFilter ann=[] mainRefs=0 OperationHttpController ann=[@RestController ] mainRefs=0 ReactiveOperationHttpController ann=[@RestController ] mainRefs=0 --- both platform auto-configurations are registered and DO reach the shipped context dev.caskeleton.adapter.inbound.web.mvc.autoconfigure.WebMvcPlatformAutoConfiguration dev.caskeleton.adapter.inbound.web.webflux.autoconfigure.WebFluxPlatformAutoConfiguration 98: implementation project(':adapter:inbound:web') 12:org.springframework.boot.autoconfigure.AutoConfigurationImportFilter=\ 13:dev.caskeleton.bootstrap.autoconfigure.persistencejpa.JpaOffAutoConfigurationImportFilter 14- --- what they register: @Bean count, and @Import count WebMvcPlatformAutoConfiguration @Bean=13 @Import=0 WebFluxPlatformAutoConfiguration @Bean=10 @Import=0 --- every one of those beans is a collaborator, not one of the six: InMemoryWebOperationCatalog webOperationCatalog WebBudgetCatalog webBudgetCatalog ProblemCatalog webProblemCatalog WebProblemFactory webProblemFactory WebValidationExceptionMapper webValidationExceptionMapper WebValidationIssueMapper webValidationIssueMapper WebWireTypeManifest webWireTypeManifest WebUriPolicy webUriPolicy WebMethodPolicy webMethodPolicy tools.jackson.databind.json.JsonMapper webStrictObjectMapper WebMvcRequestIdFilter webMvcRequestIdFilter WebMvcEvidenceFilter webMvcEvidenceFilter WebMvcConfigurer webMvcRequestContextConfigurer