Hello,
rule javaarchitecture:S7027 (Circular dependencies between classes in the same package should be resolved) triggers when it finds a sealed class and its implementation. This is not really a FP, but probably an unintended behavior.
I noticed this is SonarQube Server Developer Edition, v10.8.
SonarQube for IDE does not show this error, even when it is connected.
public abstract sealed class AbstractRule permits Rule
{
// any code
}
public final class Rule extends AbstractRule
{
// any code
}
You are right that this is a false positive, or at least, unwanted behavior. The cycle detection rules (S7027 and S7091) should ignore cycles that appear because of permits, because they are inevitable and not a design problem.