I've began studying how the .NET Code Analysis works. It seems that it can be either enabled via a NuGet package or a property in the SDK-style *.csproj files. Also, starting in .NET 5, it is enabled by default.
I'm surprised to discover that most of the rules are disabled by default. I can understand that some of them have been deprecated or replaced with compiler warnings, and that others may be unimportant or contradictory, so it's preferable to disable them by default to avoid drowning the poor developers in more warnings that they can possibly address. However, it's not hard to find many disabled rules that seem important and that could lead to early detection of bugs, like CA2100.
So my question is: What is the rationale explaining why some rules are disabled?