C# 12 introduced primary constructors but the only drawback at the moment is that we can't declare parameters as readonly
.
I'm quite sure this will come later but here is a simple analyzer to detect mutations to those parameters.
Just reference the nuget in your favorite compatible IDE, and it should work.