diff --git a/CHANGELOG.md b/CHANGELOG.md
index fdcbf3346..13d386505 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,7 +5,7 @@
## [Unreleased]
### Spring Core
-- feat: Report two `@Bean` methods with different names that declare the same bean name in one configuration class, which fails Spring Boot startup unless bean definition overriding is allowed; methods annotated with `@Profile` or another `@Conditional` are not reported, since Spring skips them before it registers the name (#597)
+- feat: Report two `@Bean` methods with different names that declare the same bean name in one configuration class, which fails Spring Boot startup unless bean definition overriding is allowed; Spring Framework 7 fails for a `@Configuration` class with `enforceUniqueMethods` even when overriding is allowed, so the problem stays an error there whatever `spring.main.allow-bean-definition-overriding` says, and is a warning for an allowed overriding when the Spring Framework version cannot be determined; methods annotated with `@Profile` or another `@Conditional` are not reported, since Spring skips them before it registers the name (#597, #686)
- feat: Report a stereotype annotation such as `@Component` on an abstract class without a `@Lookup` method, which Spring does not register, with a quick fix that removes it (#601)
- fix: Bean usages and the abstract-component gutter now list consumers declared in modules that depend on the bean's module, and count as injection points only the constructors Spring injects through: the `@Autowired` ones, otherwise the only constructor when it takes parameters, or a Kotlin primary constructor next to a no-arg secondary one, so the other constructors of a class with several and no `@Autowired` are no longer listed (#600)
- fix: Type a bean declared by a superclass `@Bean` method and overridden with a narrower return type by the override's type, as Spring predicts it: the bean keeps the superclass declaration's name and annotations, and now autowires by the override's return type, in the bean model, the autowiring inspection and the Spring MCP bean tools (#594)
diff --git a/modules/spring-core/src/main/kotlin/com/explyt/spring/core/inspections/SpringDuplicateBeanNameInspection.kt b/modules/spring-core/src/main/kotlin/com/explyt/spring/core/inspections/SpringDuplicateBeanNameInspection.kt
index 1d908d15d..d16121d2d 100644
--- a/modules/spring-core/src/main/kotlin/com/explyt/spring/core/inspections/SpringDuplicateBeanNameInspection.kt
+++ b/modules/spring-core/src/main/kotlin/com/explyt/spring/core/inspections/SpringDuplicateBeanNameInspection.kt
@@ -8,14 +8,17 @@ package com.explyt.spring.core.inspections
import com.explyt.inspection.SpringBaseUastLocalInspectionTool
import com.explyt.spring.core.SpringCoreBundle
import com.explyt.spring.core.SpringCoreClasses
+import com.explyt.spring.core.service.SpringSearchService
import com.explyt.spring.core.service.conditional.ConditionPropertyValue
import com.explyt.spring.core.service.conditional.PropertyConditionValues
import com.explyt.spring.core.util.BeanFactoryMethods
+import com.explyt.spring.core.util.SpringBootUtil
import com.explyt.spring.core.util.SpringCoreUtil.resolveBeanName
import com.explyt.util.ExplytPsiUtil.getMetaAnnotation
import com.intellij.codeInspection.InspectionManager
import com.intellij.codeInspection.ProblemDescriptor
import com.intellij.codeInspection.ProblemHighlightType
+import com.intellij.openapi.module.Module
import com.intellij.openapi.module.ModuleUtilCore
import com.intellij.openapi.progress.ProgressManager
import com.intellij.psi.PsiClass
@@ -33,7 +36,7 @@ class SpringDuplicateBeanNameInspection : SpringBaseUastLocalInspectionTool() {
): Array Spring Boot disallows bean definition overriding by default, so such a configuration fails at startup with
BeanDefinitionOverrideException. Overloaded @Bean methods with the same method name are merged by
-Spring and are not reported. Nothing is reported when spring.main.allow-bean-definition-overriding=true
-is set in the module configuration.
When spring.main.allow-bean-definition-overriding=true is set in the module configuration, nothing is
+reported before Spring Framework 7, for a lite class such as a @Component with @Bean methods, or for
+a @Configuration(enforceUniqueMethods = false) class, also when enforceUniqueMethods is set through
+a composed annotation. Spring Framework 7 fails at startup for any other @Configuration class whatever the
+property says, so the problem is always an error there, and it is reported as a warning when the property allows
+overriding but the Spring Framework version cannot be determined.
Methods annotated with @Profile or another @Conditional annotation, such as
@ConditionalOnProperty, are not reported: Spring evaluates their conditions before it registers the bean name,
so only one of them may be active.
When the value of spring.main.allow-bean-definition-overriding cannot be resolved, for example because it is
-a placeholder or depends on a profile, the problem is reported as a warning instead of an error.
@Configuration class on Spring Framework 7, which fails whatever the value is.