Files
Lab/theInterfacePro/.sonarqube/out/1/Issues.json
Boban 4a7ddacae4
All checks were successful
Log every push / log-push (push) Successful in 2s
initial design of domain
2026-06-07 22:09:45 +02:00

969 lines
33 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"$schema": "http://json.schemastore.org/sarif-1.0.0",
"version": "1.0.0",
"runs": [
{
"tool": {
"name": "Microsoft (R) Visual C# Compiler",
"version": "5.3.0.0",
"fileVersion": "5.3.0-2.26153.122 (4d3023de605a78ba3e59e50c657eed70f125c68a)",
"semanticVersion": "5.3.0",
"language": "en-RS"
},
"results": [
{
"ruleId": "CS8618",
"level": "warning",
"message": "Non-nullable field 'projectToStart' must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring the field as nullable.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/StartProjectUseCase.cs",
"region": {
"startLine": 7,
"startColumn": 13,
"endLine": 7,
"endColumn": 27
}
}
}
],
"relatedLocations": [
{
"physicalLocation": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/StartProjectUseCase.cs",
"region": {
"startLine": 7,
"startColumn": 13,
"endLine": 7,
"endColumn": 27
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "CS8618",
"level": "warning",
"message": "Non-nullable field 'projectToSet' must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring the field as nullable.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/SetupNewProjectUseCase.cs",
"region": {
"startLine": 7,
"startColumn": 12,
"endLine": 7,
"endColumn": 34
}
}
}
],
"relatedLocations": [
{
"physicalLocation": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/SetupNewProjectUseCase.cs",
"region": {
"startLine": 6,
"startColumn": 21,
"endLine": 6,
"endColumn": 33
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "CS8618",
"level": "warning",
"message": "Non-nullable property 'Title' must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring the property as nullable.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/UserStory.cs",
"region": {
"startLine": 5,
"startColumn": 19,
"endLine": 5,
"endColumn": 24
}
}
}
],
"relatedLocations": [
{
"physicalLocation": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/UserStory.cs",
"region": {
"startLine": 5,
"startColumn": 19,
"endLine": 5,
"endColumn": 24
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "CS8618",
"level": "warning",
"message": "Non-nullable property 'Requirement' must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring the property as nullable.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/UserStory.cs",
"region": {
"startLine": 6,
"startColumn": 19,
"endLine": 6,
"endColumn": 30
}
}
}
],
"relatedLocations": [
{
"physicalLocation": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/UserStory.cs",
"region": {
"startLine": 6,
"startColumn": 19,
"endLine": 6,
"endColumn": 30
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "CS8618",
"level": "warning",
"message": "Non-nullable property 'FitnesseTestTitle' must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring the property as nullable.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/UserStory.cs",
"region": {
"startLine": 8,
"startColumn": 19,
"endLine": 8,
"endColumn": 36
}
}
}
],
"relatedLocations": [
{
"physicalLocation": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/UserStory.cs",
"region": {
"startLine": 8,
"startColumn": 19,
"endLine": 8,
"endColumn": 36
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "CS8618",
"level": "warning",
"message": "Non-nullable property 'EventsInOrder' must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring the property as nullable.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/UserStory.cs",
"region": {
"startLine": 9,
"startColumn": 25,
"endLine": 9,
"endColumn": 38
}
}
}
],
"relatedLocations": [
{
"physicalLocation": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/UserStory.cs",
"region": {
"startLine": 9,
"startColumn": 25,
"endLine": 9,
"endColumn": 38
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "CS0169",
"level": "warning",
"message": "The field 'StartProjectUseCase.projectToStart' is never used",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/StartProjectUseCase.cs",
"region": {
"startLine": 7,
"startColumn": 13,
"endLine": 7,
"endColumn": 27
}
}
}
],
"properties": {
"warningLevel": 3
}
},
{
"ruleId": "CS0169",
"level": "warning",
"message": "The field 'SetupNewProjectUseCase.projectToSet' is never used",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/SetupNewProjectUseCase.cs",
"region": {
"startLine": 6,
"startColumn": 21,
"endLine": 6,
"endColumn": 33
}
}
}
],
"properties": {
"warningLevel": 3
}
},
{
"ruleId": "S2094",
"level": "warning",
"message": "Remove this empty class, write its code or make it an \"interface\".",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/MaintainProjectUseCase.cs",
"region": {
"startLine": 3,
"startColumn": 14,
"endLine": 3,
"endColumn": 36
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S2094",
"level": "warning",
"message": "Remove this empty class, write its code or make it an \"interface\".",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/DevelopProjectIterativelyUseCase.cs",
"region": {
"startLine": 3,
"startColumn": 14,
"endLine": 3,
"endColumn": 46
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S2094",
"level": "warning",
"message": "Remove this empty class, write its code or make it an \"interface\".",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/AgentCommanderUseCase.cs",
"region": {
"startLine": 3,
"startColumn": 14,
"endLine": 3,
"endColumn": 35
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S2094",
"level": "warning",
"message": "Remove this empty class, write its code or make it an \"interface\".",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/DeepFocusSession.cs",
"region": {
"startLine": 3,
"startColumn": 14,
"endLine": 3,
"endColumn": 30
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S1144",
"level": "warning",
"message": "Remove the unused private field 'projectToSet'.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/SetupNewProjectUseCase.cs",
"region": {
"startLine": 6,
"startColumn": 5,
"endLine": 6,
"endColumn": 34
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S1144",
"level": "warning",
"message": "Remove the unused private field 'projectToStart'.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/StartProjectUseCase.cs",
"region": {
"startLine": 7,
"startColumn": 5,
"endLine": 7,
"endColumn": 28
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S4487",
"level": "warning",
"message": "Remove this unread private field '_project' or refactor the code to use its value.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/PrepareHomePageForUserUseCase.cs",
"region": {
"startLine": 6,
"startColumn": 30,
"endLine": 6,
"endColumn": 38
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S1186",
"level": "warning",
"message": "Add a nested comment explaining why this method is empty, throw a 'NotSupportedException' or complete the implementation.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/TesterUseCase.cs",
"region": {
"startLine": 10,
"startColumn": 17,
"endLine": 10,
"endColumn": 33
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S1186",
"level": "warning",
"message": "Add a nested comment explaining why this method is empty, throw a 'NotSupportedException' or complete the implementation.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/TesterUseCase.cs",
"region": {
"startLine": 5,
"startColumn": 17,
"endLine": 5,
"endColumn": 29
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S1186",
"level": "warning",
"message": "Add a nested comment explaining why this method is empty, throw a 'NotSupportedException' or complete the implementation.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/SetupNewProjectUseCase.cs",
"region": {
"startLine": 27,
"startColumn": 18,
"endLine": 27,
"endColumn": 42
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S2325",
"level": "warning",
"message": "Make 'SetCodeCheckers' a static method.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/SetupNewProjectUseCase.cs",
"region": {
"startLine": 19,
"startColumn": 17,
"endLine": 19,
"endColumn": 32
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S3400",
"level": "warning",
"message": "Remove this method and declare a constant for this value.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/SetupNewProjectUseCase.cs",
"region": {
"startLine": 19,
"startColumn": 17,
"endLine": 19,
"endColumn": 32
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "CA1822",
"level": "note",
"message": "Member 'RunFitnesseTests' does not access instance data and can be marked as static",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/TesterUseCase.cs",
"region": {
"startLine": 10,
"startColumn": 17,
"endLine": 10,
"endColumn": 33
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "CA1822",
"level": "note",
"message": "Member 'RunUnitTests' does not access instance data and can be marked as static",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/TesterUseCase.cs",
"region": {
"startLine": 5,
"startColumn": 17,
"endLine": 5,
"endColumn": 29
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "CA1822",
"level": "note",
"message": "Member 'SetCodeCheckers' does not access instance data and can be marked as static",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/SetupNewProjectUseCase.cs",
"region": {
"startLine": 19,
"startColumn": 17,
"endLine": 19,
"endColumn": 32
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "CA1822",
"level": "note",
"message": "Member 'SaveBasicProjectData' does not access instance data and can be marked as static",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/SetupNewProjectUseCase.cs",
"region": {
"startLine": 14,
"startColumn": 18,
"endLine": 14,
"endColumn": 38
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "CA1822",
"level": "note",
"message": "Member 'CreateExampleUserStories' does not access instance data and can be marked as static",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/SetupNewProjectUseCase.cs",
"region": {
"startLine": 27,
"startColumn": 18,
"endLine": 27,
"endColumn": 42
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S1125",
"level": "warning",
"message": "Remove the unnecessary Boolean literal(s).",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/Project.cs",
"region": {
"startLine": 40,
"startColumn": 40,
"endLine": 40,
"endColumn": 47
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S6562",
"level": "warning",
"message": "Provide the \"DateTimeKind\" when creating this object.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/Project.cs",
"region": {
"startLine": 70,
"startColumn": 23,
"endLine": 70,
"endColumn": 37
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S1125",
"level": "warning",
"message": "Remove the unnecessary Boolean literal(s).",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/Project.cs",
"region": {
"startLine": 84,
"startColumn": 38,
"endLine": 84,
"endColumn": 44
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S2971",
"level": "warning",
"message": "Use 'Count' property here instead.",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/Project.cs",
"region": {
"startLine": 60,
"startColumn": 39,
"endLine": 60,
"endColumn": 44
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "S6608",
"level": "warning",
"message": "Indexing at 0 should be used instead of the \"Enumerable\" extension method \"First\"",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/Project.cs",
"region": {
"startLine": 50,
"startColumn": 17,
"endLine": 50,
"endColumn": 22
}
}
}
],
"properties": {
"warningLevel": 1
}
},
{
"ruleId": "CA1829",
"level": "note",
"message": "Use the \"Count\" property instead of Enumerable.Count()",
"locations": [
{
"resultFile": {
"uri": "file:///Users/bobanlapcevic/Desktop/theInterfacePro/Code/Core/Project.cs",
"region": {
"startLine": 60,
"startColumn": 31,
"endLine": 60,
"endColumn": 46
}
}
}
],
"properties": {
"warningLevel": 1,
"customProperties": {
"PropertyNameKey": "Count"
}
}
}
],
"rules": {
"CA1822": {
"id": "CA1822",
"shortDescription": "Mark members as static",
"fullDescription": "Members that do not access instance data or call instance methods can be marked as static. After you mark the methods as static, the compiler will emit nonvirtual call sites to these members. This can give you a measurable performance gain for performance-sensitive code.",
"defaultLevel": "note",
"helpUri": "https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1822",
"properties": {
"category": "Performance",
"isEnabledByDefault": true,
"tags": [
"PortedFromFxCop",
"Telemetry",
"EnabledRuleInAggressiveMode"
]
}
},
"CA1829": {
"id": "CA1829",
"shortDescription": "Use Length/Count property instead of Count() when available",
"fullDescription": "Enumerable.Count() potentially enumerates the sequence while a Length/Count property is a direct access.",
"defaultLevel": "note",
"helpUri": "https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1829",
"properties": {
"category": "Performance",
"isEnabledByDefault": true,
"tags": [
"Telemetry",
"EnabledRuleInAggressiveMode"
]
}
},
"CS0169": {
"id": "CS0169",
"shortDescription": "Field is never used",
"defaultLevel": "warning",
"helpUri": "https://msdn.microsoft.com/query/roslyn.query?appId=roslyn&k=k(CS0169)",
"properties": {
"category": "Compiler",
"isEnabledByDefault": true,
"tags": [
"Compiler",
"Telemetry"
]
}
},
"CS8618": {
"id": "CS8618",
"shortDescription": "Non-nullable field must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring as nullable.",
"defaultLevel": "warning",
"helpUri": "https://msdn.microsoft.com/query/roslyn.query?appId=roslyn&k=k(CS8618)",
"properties": {
"category": "Compiler",
"isEnabledByDefault": true,
"tags": [
"Compiler",
"Telemetry"
]
}
},
"S1125": {
"id": "S1125",
"shortDescription": "Boolean literals should not be redundant",
"fullDescription": "A boolean literal can be represented in two different ways: true or false. They can be combined with logical operators (!, &&, ||, ==, !=) to produce logical expressions that represent truth values. However, comparing a boolean literal to a variable or expression that evaluates to a boolean value is unnecessary and can make the code harder to read and understand. The more complex a boolean expression is, the harder it will be for developers to understand its meaning and expected behavior, and it will favour the introduction of new bugs.",
"defaultLevel": "warning",
"properties": {
"category": "Minor Code Smell",
"isEnabledByDefault": true,
"tags": [
"C#",
"MainSourceScope",
"TestSourceScope",
"SonarWay"
]
}
},
"S1144": {
"id": "S1144",
"shortDescription": "Unused private types or members should be removed",
"fullDescription": "This rule raises an issue when a private/internal type or member is never referenced in the code.",
"defaultLevel": "warning",
"properties": {
"category": "Major Code Smell",
"isEnabledByDefault": true,
"tags": [
"C#",
"MainSourceScope",
"TestSourceScope",
"SonarWay"
]
}
},
"S1186": {
"id": "S1186",
"shortDescription": "Methods should not be empty",
"fullDescription": "An empty method is generally considered bad practice and can lead to confusion, readability, and maintenance issues. Empty methods bring no functionality and are misleading to others as they might think the method implementation fulfills a specific and identified requirement.",
"defaultLevel": "warning",
"properties": {
"category": "Critical Code Smell",
"isEnabledByDefault": true,
"tags": [
"C#",
"MainSourceScope",
"TestSourceScope",
"SonarWay"
]
}
},
"S2094": {
"id": "S2094",
"shortDescription": "Classes should not be empty",
"fullDescription": "There is no good excuse for an empty class. If its being used simply as a common extension point, it should be replaced with an interface. If it was stubbed in as a placeholder for future development it should be fleshed-out. In any other case, it should be eliminated.",
"defaultLevel": "warning",
"properties": {
"category": "Minor Code Smell",
"isEnabledByDefault": true,
"tags": [
"C#",
"MainSourceScope",
"TestSourceScope",
"SonarWay"
]
}
},
"S2325": {
"id": "S2325",
"shortDescription": "Methods and properties that don't access instance data should be static",
"fullDescription": "Methods and properties that dont access instance data should be marked as static for the following reasons:",
"defaultLevel": "warning",
"properties": {
"category": "Minor Code Smell",
"isEnabledByDefault": true,
"tags": [
"C#",
"MainSourceScope",
"TestSourceScope",
"SonarWay"
]
}
},
"S2971": {
"id": "S2971",
"shortDescription": "LINQ expressions should be simplified",
"fullDescription": "In the interests of readability, code that can be simplified should be simplified. To that end, there are several ways IEnumerable language integrated queries (LINQ) can be simplified. This not only improves readabilty but can also lead to improved performance.",
"defaultLevel": "warning",
"properties": {
"category": "Major Code Smell",
"isEnabledByDefault": true,
"tags": [
"C#",
"MainSourceScope",
"TestSourceScope",
"SonarWay"
]
}
},
"S3400": {
"id": "S3400",
"shortDescription": "Methods should not return constants",
"fullDescription": "Theres no point in forcing the overhead of a method call for a method that always returns the same constant value. Even worse, the fact that a method call must be made will likely mislead developers who call the method thinking that something more is done. Declare a constant instead.",
"defaultLevel": "warning",
"properties": {
"category": "Minor Code Smell",
"isEnabledByDefault": true,
"tags": [
"C#",
"MainSourceScope",
"SonarWay"
]
}
},
"S4487": {
"id": "S4487",
"shortDescription": "Unread \"private\" fields should be removed",
"fullDescription": "Private fields which are written but never read are a case of \"dead store\". Changing the value of such a field is useless and most probably indicates an error in the code.",
"defaultLevel": "warning",
"properties": {
"category": "Critical Code Smell",
"isEnabledByDefault": true,
"tags": [
"C#",
"MainSourceScope",
"TestSourceScope",
"SonarWay"
]
}
},
"S6562": {
"id": "S6562",
"shortDescription": "Always set the \"DateTimeKind\" when creating new \"DateTime\" instances",
"fullDescription": "Not knowing the Kind of the DateTime object that an application is using can lead to misunderstandings when displaying or comparing them. Explicitly setting the Kind property helps the application to stay consistent, and its maintainers understand what kind of date is being managed. To achieve this, when instantiating a new DateTime object you should always use a constructor overload that allows you to define the Kind property.",
"defaultLevel": "warning",
"properties": {
"category": "Major Code Smell",
"isEnabledByDefault": true,
"tags": [
"C#",
"MainSourceScope",
"TestSourceScope",
"SonarWay"
]
}
},
"S6608": {
"id": "S6608",
"shortDescription": "Prefer indexing instead of \"Enumerable\" methods on types implementing \"IList\"",
"fullDescription": "Indexes in C# provide direct access to an element at a specific position within an array or collection. When compared to Enumerable methods, indexing can be more efficient for certain scenarios, such as iterating over a large collection, due to avoiding the overhead of checking the underlying collection type before accessing it.",
"defaultLevel": "warning",
"properties": {
"category": "Minor Code Smell",
"isEnabledByDefault": true,
"tags": [
"C#",
"MainSourceScope",
"TestSourceScope",
"SonarWay"
]
}
}
}
}
]
}