{"version": "2.1.0", "$schema": "https://json.schemastore.org/sarif-2.1.0.json", "runs": [{"tool": {"driver": {"name": "Repobility", "informationUri": "https://repobility.com", "rules": [{"id": "CFG006", "name": "[CFG006] Missing .gitignore: No .gitignore file. Risk of committing secrets and build artifacts.", "shortDescription": {"text": "[CFG006] Missing .gitignore: No .gitignore file. Risk of committing secrets and build artifacts."}, "fullDescription": {"text": "Add a .gitignore appropriate for your language/framework."}, "properties": {"scanner": "repobility-threat-engine", "category": "practices", "severity": "medium", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "WEB005", "name": "robots.txt does not advertise a sitemap", "shortDescription": {"text": "robots.txt does not advertise a sitemap"}, "fullDescription": {"text": "Add `Sitemap: https://your-domain.example/sitemap.xml` to robots.txt."}, "properties": {"scanner": "repobility-web-presence", "category": "quality", "severity": "low", "confidence": 0.74, "cwe": "", "owasp": ""}}, {"id": "AIC003", "name": "Duplicated implementation block across source files", "shortDescription": {"text": "Duplicated implementation block across source files"}, "fullDescription": {"text": "Extract the shared behavior into one function/module or delete the inactive duplicate after proving which path is used."}, "properties": {"scanner": "repobility-ai-code-hygiene", "category": "quality", "severity": "low", "confidence": 0.86, "cwe": "", "owasp": ""}}, {"id": "SEC128", "name": "[SEC128] Async function without await \u2014 fire-and-forget Promise (AI mistake) (and 3 more): Same pattern found in 3 addit", "shortDescription": {"text": "[SEC128] Async function without await \u2014 fire-and-forget Promise (AI mistake) (and 3 more): Same pattern found in 3 additional files. Review if needed."}, "fullDescription": {"text": "Add `await` before each async call, or chain with `.then`. If you intentionally want fire-and-forget, prefix with `void` (TS) or assign to `_` (Python with `asyncio.create_task`) to make the intent explicit and survive lint."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "SEC025", "name": "[SEC025] XML External Entity (XXE) \u2014 .NET XmlDocument / XmlTextReader: .NET XmlDocument and XmlTextReader expand externa", "shortDescription": {"text": "[SEC025] XML External Entity (XXE) \u2014 .NET XmlDocument / XmlTextReader: .NET XmlDocument and XmlTextReader expand external entities by default in pre-4.5.2 runtimes (and even later if XmlResolver is left at default). Allows file disclosure a"}, "fullDescription": {"text": "Set XmlResolver = null on XmlDocument before Load. On XmlReader, pass XmlReaderSettings { DtdProcessing = DtdProcessing.Prohibit, XmlResolver = null }. Prefer XDocument / XElement which don't expand external entities by default."}, "properties": {"scanner": "repobility-threat-engine", "category": "xxe", "severity": "high", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "CORE_NO_TESTS", "name": "No test files found", "shortDescription": {"text": "No test files found"}, "fullDescription": {"text": "Add a test directory (tests/ or __tests__/) with unit tests for core functionality. Use pytest (Python), Jest (JS/TS), or go test (Go). Start with tests for critical business logic and security-sensitive functions."}, "properties": {"scanner": "repobility-core", "category": "testing", "severity": "high", "confidence": null, "cwe": "", "owasp": ""}}]}}, "automationDetails": {"id": "repobility/930"}, "properties": {"repository": "PowerShell/PowerShell", "repoUrl": "https://github.com/PowerShell/PowerShell", "branch": "master"}, "results": [{"ruleId": "CFG006", "level": "warning", "message": {"text": "[CFG006] Missing .gitignore: No .gitignore file. Risk of committing secrets and build artifacts."}, "properties": {"repobilityId": 87090, "scanner": "repobility-threat-engine", "fingerprint": "c65fc71ce58c37a0e07837c0fe294108b731c43ef16027a2f0971c757bbe9a16", "category": "practices", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "No .gitignore file found in repository root", "evidence": {"reason": "No .gitignore file found in repository root", "rule_id": "CFG006", "scanner": "repobility-threat-engine", "confidence": 1.0, "correlation_key": "repo|practices|cfg006"}}}, {"ruleId": "WEB005", "level": "note", "message": {"text": "robots.txt does not advertise a sitemap"}, "properties": {"repobilityId": 87121, "scanner": "repobility-web-presence", "fingerprint": "71657ce46f0de2bac92f74d9a5921becd12d7c18dc16273436d0e9bc0a29113c", "category": "quality", "severity": "low", "confidence": 0.74, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "Discovered robots file or route lacks a Sitemap directive.", "evidence": {"rule_id": "WEB005", "scanner": "repobility-web-presence", "references": ["https://www.rfc-editor.org/rfc/rfc9309", "https://www.sitemaps.org/protocol.html"], "correlation_key": "fp|71657ce46f0de2bac92f74d9a5921becd12d7c18dc16273436d0e9bc0a29113c"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "test/tools/WebListener/README.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87120, "scanner": "repobility-ai-code-hygiene", "fingerprint": "a34f30885c3fa81c85dd4336c6847c96166e32b37f6a82436160e1ed5dd235da", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/ClearPropertyCommand.cs", "duplicate_line": 22, "correlation_key": "fp|a34f30885c3fa81c85dd4336c6847c96166e32b37f6a82436160e1ed5dd235da"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/RemovePropertyCommand.cs"}, "region": {"startLine": 22}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87119, "scanner": "repobility-ai-code-hygiene", "fingerprint": "b34ad53c911fcce48890b79b3595b7c1ff43684b5800ce15864d9529a4223784", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/CombinePathCommand.cs", "duplicate_line": 56, "correlation_key": "fp|b34ad53c911fcce48890b79b3595b7c1ff43684b5800ce15864d9529a4223784"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/ParsePathCommand.cs"}, "region": {"startLine": 79}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87118, "scanner": "repobility-ai-code-hygiene", "fingerprint": "6a1c5da9fd5aec6824b7eb33076b466309aeb09025cbf3baa7d69684dbe376ae", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/CombinePathCommand.cs", "duplicate_line": 56, "correlation_key": "fp|6a1c5da9fd5aec6824b7eb33076b466309aeb09025cbf3baa7d69684dbe376ae"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/NewPropertyCommand.cs"}, "region": {"startLine": 75}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87117, "scanner": "repobility-ai-code-hygiene", "fingerprint": "f99fcc6db8f156f3fd1584f233f979df81fed0e9c8c0003f98fbb9f1e115e6f3", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/ClearPropertyCommand.cs", "duplicate_line": 22, "correlation_key": "fp|f99fcc6db8f156f3fd1584f233f979df81fed0e9c8c0003f98fbb9f1e115e6f3"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/NewPropertyCommand.cs"}, "region": {"startLine": 24}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87116, "scanner": "repobility-ai-code-hygiene", "fingerprint": "fa49fd083397ba4d2a64687644bb51fd7109d20c931b6a14d8f710b33e8343a2", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/CombinePathCommand.cs", "duplicate_line": 56, "correlation_key": "fp|fa49fd083397ba4d2a64687644bb51fd7109d20c931b6a14d8f710b33e8343a2"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/MovePropertyCommand.cs"}, "region": {"startLine": 75}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87115, "scanner": "repobility-ai-code-hygiene", "fingerprint": "b0be9bc064979e614e118a4652fc086b8db3c56aeb7da864dfcfd9880b50eb9a", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/ClearPropertyCommand.cs", "duplicate_line": 22, "correlation_key": "fp|b0be9bc064979e614e118a4652fc086b8db3c56aeb7da864dfcfd9880b50eb9a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/MovePropertyCommand.cs"}, "region": {"startLine": 16}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87114, "scanner": "repobility-ai-code-hygiene", "fingerprint": "16ef3ee718c5edf853b654ef928d223e9afe34e55986e1e016e9e61cf80918a2", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/CopyPropertyCommand.cs", "duplicate_line": 7, "correlation_key": "fp|16ef3ee718c5edf853b654ef928d223e9afe34e55986e1e016e9e61cf80918a2"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/MovePropertyCommand.cs"}, "region": {"startLine": 8}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87113, "scanner": "repobility-ai-code-hygiene", "fingerprint": "74279f56bad435150d35630a9255f65c7abbef79167b5b18598237dfbcf76e65", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/CombinePathCommand.cs", "duplicate_line": 56, "correlation_key": "fp|74279f56bad435150d35630a9255f65c7abbef79167b5b18598237dfbcf76e65"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/GetPropertyCommand.cs"}, "region": {"startLine": 73}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87112, "scanner": "repobility-ai-code-hygiene", "fingerprint": "9be60ddf907511d83a7c5bb55a6c1b7254fb51660e513a33e4b4b6920764e340", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/ClearPropertyCommand.cs", "duplicate_line": 22, "correlation_key": "fp|9be60ddf907511d83a7c5bb55a6c1b7254fb51660e513a33e4b4b6920764e340"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/GetPropertyCommand.cs"}, "region": {"startLine": 22}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87111, "scanner": "repobility-ai-code-hygiene", "fingerprint": "3168d766f6af0a1f817a1f48501de37e0c76f7f8ec2dd269faf085436be4dabf", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/CombinePathCommand.cs", "duplicate_line": 56, "correlation_key": "fp|3168d766f6af0a1f817a1f48501de37e0c76f7f8ec2dd269faf085436be4dabf"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/GetChildrenCommand.cs"}, "region": {"startLine": 182}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87110, "scanner": "repobility-ai-code-hygiene", "fingerprint": "573fc436b27534cf0216be3b977cf7e7a1be99e6e6d4de73364933bc397be94a", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/ConvertPathCommand.cs", "duplicate_line": 24, "correlation_key": "fp|573fc436b27534cf0216be3b977cf7e7a1be99e6e6d4de73364933bc397be94a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/GetChildrenCommand.cs"}, "region": {"startLine": 24}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87109, "scanner": "repobility-ai-code-hygiene", "fingerprint": "e3b50f2cebb882bff95d1b4447c426469fe87c60f4fbc4ca7f777fdb281fae89", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/CombinePathCommand.cs", "duplicate_line": 56, "correlation_key": "fp|e3b50f2cebb882bff95d1b4447c426469fe87c60f4fbc4ca7f777fdb281fae89"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/CopyPropertyCommand.cs"}, "region": {"startLine": 65}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87108, "scanner": "repobility-ai-code-hygiene", "fingerprint": "3d5de54f5d70f37da2b06acc5e7e7ba5f1e6bdf74e142afa359b46cbe55e2474", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/ClearPropertyCommand.cs", "duplicate_line": 22, "correlation_key": "fp|3d5de54f5d70f37da2b06acc5e7e7ba5f1e6bdf74e142afa359b46cbe55e2474"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/CopyPropertyCommand.cs"}, "region": {"startLine": 15}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87107, "scanner": "repobility-ai-code-hygiene", "fingerprint": "356adcfe6b616d76e6f4eb846faae86a7b7d4bf3dd1b86dd02516668d8b95ac2", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/CombinePathCommand.cs", "duplicate_line": 56, "correlation_key": "fp|356adcfe6b616d76e6f4eb846faae86a7b7d4bf3dd1b86dd02516668d8b95ac2"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/ConvertPathCommand.cs"}, "region": {"startLine": 58}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87106, "scanner": "repobility-ai-code-hygiene", "fingerprint": "99b3c5e1a1a52c29ec592dc9e1a342b22b997449dc0a5504a97508491c5c5a6e", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/ClearContentCommand.cs", "duplicate_line": 17, "correlation_key": "fp|99b3c5e1a1a52c29ec592dc9e1a342b22b997449dc0a5504a97508491c5c5a6e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/ContentCommandBase.cs"}, "region": {"startLine": 344}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87105, "scanner": "repobility-ai-code-hygiene", "fingerprint": "7fb86e1c368467be95ce8b26308ec09820495601860baa5643e810bc36b821d1", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/CombinePathCommand.cs", "duplicate_line": 56, "correlation_key": "fp|7fb86e1c368467be95ce8b26308ec09820495601860baa5643e810bc36b821d1"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/ContentCommandBase.cs"}, "region": {"startLine": 269}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87104, "scanner": "repobility-ai-code-hygiene", "fingerprint": "8e54e383dac4fdf3d95c6ccce40c600d514c7e4ad2ffdbbb3ae8bfae0eab63c8", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/commands/management/ClearContentCommand.cs", "duplicate_line": 17, "correlation_key": "fp|8e54e383dac4fdf3d95c6ccce40c600d514c7e4ad2ffdbbb3ae8bfae0eab63c8"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/commands/management/ClearPropertyCommand.cs"}, "region": {"startLine": 80}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87103, "scanner": "repobility-ai-code-hygiene", "fingerprint": "64286837184df4ba567df4bdb9a58fd5cc20250d2f103b4b0499036c9580ca8f", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Management/cimSupport/cmdletization/cim/InstanceMethodInvocationJob.cs", "duplicate_line": 19, "correlation_key": "fp|64286837184df4ba567df4bdb9a58fd5cc20250d2f103b4b0499036c9580ca8f"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/cimSupport/cmdletization/cim/StaticMethodInvocationJob.cs"}, "region": {"startLine": 11}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87102, "scanner": "repobility-ai-code-hygiene", "fingerprint": "eef1802fdb432eafb885c77e6469170576f8a9108fd7bb1358a1fbbb6e1dab54", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.Management.Infrastructure.CimCmdlets/CimWriteError.cs", "duplicate_line": 133, "correlation_key": "fp|eef1802fdb432eafb885c77e6469170576f8a9108fd7bb1358a1fbbb6e1dab54"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Management/cimSupport/cmdletization/cim/CimJobException.cs"}, "region": {"startLine": 188}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87101, "scanner": "repobility-ai-code-hygiene", "fingerprint": "30a5b788e4849f1d59c5b125c22bccd89123b0ac2e7ab4f4dff87cf918c47780", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.PowerShell.Commands.Diagnostics/ExportCounterCommand.cs", "duplicate_line": 253, "correlation_key": "fp|30a5b788e4849f1d59c5b125c22bccd89123b0ac2e7ab4f4dff87cf918c47780"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Diagnostics/ImportCounterCommand.cs"}, "region": {"startLine": 462}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87100, "scanner": "repobility-ai-code-hygiene", "fingerprint": "7ca65730fa3b55e0a528ab13e80145fdb5f6adafe80d2583a3c0a4f8a412fb48", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.Management.Infrastructure.CimCmdlets/GetCimInstanceCommand.cs", "duplicate_line": 156, "correlation_key": "fp|7ca65730fa3b55e0a528ab13e80145fdb5f6adafe80d2583a3c0a4f8a412fb48"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.Infrastructure.CimCmdlets/SetCimInstanceCommand.cs"}, "region": {"startLine": 88}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87099, "scanner": "repobility-ai-code-hygiene", "fingerprint": "f8f1b50e0dcd377ef94dbec2de4ba563781104a3414ee38f17244c06dde0b5a4", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.Management.Infrastructure.CimCmdlets/GetCimClassCommand.cs", "duplicate_line": 39, "correlation_key": "fp|f8f1b50e0dcd377ef94dbec2de4ba563781104a3414ee38f17244c06dde0b5a4"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.Infrastructure.CimCmdlets/SetCimInstanceCommand.cs"}, "region": {"startLine": 34}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87098, "scanner": "repobility-ai-code-hygiene", "fingerprint": "fb7ff74b1efa1235107fd07b7a999426fc202f8d1f71c5bcba841b13823ab4a4", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.Management.Infrastructure.CimCmdlets/RemoveCimInstanceCommand.cs", "duplicate_line": 20, "correlation_key": "fp|fb7ff74b1efa1235107fd07b7a999426fc202f8d1f71c5bcba841b13823ab4a4"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.Infrastructure.CimCmdlets/SetCimInstanceCommand.cs"}, "region": {"startLine": 20}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87097, "scanner": "repobility-ai-code-hygiene", "fingerprint": "f91b65e539b5123e768708cb2e4c5d1f89da26fd7fd9cf3a834f8872fe5c20b6", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.Management.Infrastructure.CimCmdlets/GetCimSessionCommand.cs", "duplicate_line": 19, "correlation_key": "fp|f91b65e539b5123e768708cb2e4c5d1f89da26fd7fd9cf3a834f8872fe5c20b6"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.Infrastructure.CimCmdlets/RemoveCimSessionCommand.cs"}, "region": {"startLine": 42}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87096, "scanner": "repobility-ai-code-hygiene", "fingerprint": "6e13d0ff70b56bb0052630320d5b6acee8b90ba605abf538e79046da8c97bf86", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.Management.Infrastructure.CimCmdlets/GetCimInstanceCommand.cs", "duplicate_line": 13, "correlation_key": "fp|6e13d0ff70b56bb0052630320d5b6acee8b90ba605abf538e79046da8c97bf86"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.Infrastructure.CimCmdlets/RemoveCimInstanceCommand.cs"}, "region": {"startLine": 17}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87095, "scanner": "repobility-ai-code-hygiene", "fingerprint": "2adff933a9cb1014b7d3e9192f04e2777e8bb06e54aad83b721225e215d86658", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.Management.Infrastructure.CimCmdlets/InvokeCimMethodCommand.cs", "duplicate_line": 287, "correlation_key": "fp|2adff933a9cb1014b7d3e9192f04e2777e8bb06e54aad83b721225e215d86658"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.Infrastructure.CimCmdlets/NewCimInstanceCommand.cs"}, "region": {"startLine": 259}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87094, "scanner": "repobility-ai-code-hygiene", "fingerprint": "2d280abf63086c25cd4be772384e0ad70a3edef13a5a04e9b2d1ad6a51446475", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.Management.Infrastructure.CimCmdlets/GetCimClassCommand.cs", "duplicate_line": 39, "correlation_key": "fp|2d280abf63086c25cd4be772384e0ad70a3edef13a5a04e9b2d1ad6a51446475"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.Infrastructure.CimCmdlets/NewCimInstanceCommand.cs"}, "region": {"startLine": 160}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87093, "scanner": "repobility-ai-code-hygiene", "fingerprint": "f01688fe241481418bf1a97e0338dba443985f2c27a1d011bfff8ea09f8d3db7", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.Management.Infrastructure.CimCmdlets/GetCimInstanceCommand.cs", "duplicate_line": 156, "correlation_key": "fp|f01688fe241481418bf1a97e0338dba443985f2c27a1d011bfff8ea09f8d3db7"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.Infrastructure.CimCmdlets/NewCimInstanceCommand.cs"}, "region": {"startLine": 131}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87092, "scanner": "repobility-ai-code-hygiene", "fingerprint": "dbaa6123e32a893778d70eb53f7bef6f3a20f37ffdd6d18c82406de966d7efe4", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.Management.Infrastructure.CimCmdlets/GetCimInstanceCommand.cs", "duplicate_line": 192, "correlation_key": "fp|dbaa6123e32a893778d70eb53f7bef6f3a20f37ffdd6d18c82406de966d7efe4"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.Infrastructure.CimCmdlets/InvokeCimMethodCommand.cs"}, "region": {"startLine": 88}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 87091, "scanner": "repobility-ai-code-hygiene", "fingerprint": "d3eae012f4c32686b87d2bf69ccc77a2a1538cbb4574c483e447028f7013454f", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "src/Microsoft.Management.Infrastructure.CimCmdlets/GetCimAssociatedInstanceCommand.cs", "duplicate_line": 65, "correlation_key": "fp|d3eae012f4c32686b87d2bf69ccc77a2a1538cbb4574c483e447028f7013454f"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.Infrastructure.CimCmdlets/GetCimClassCommand.cs"}, "region": {"startLine": 51}}}]}, {"ruleId": "SEC128", "level": "none", "message": {"text": "[SEC128] Async function without await \u2014 fire-and-forget Promise (AI mistake) (and 3 more): Same pattern found in 3 additional files. Review if needed."}, "properties": {"repobilityId": 87088, "scanner": "repobility-threat-engine", "fingerprint": "7a4b0f5540cad034a1707c0e9f6ef94d621d463e55602684599877ea4071a670", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 3 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"reason": "Deduplicated summary only: 3 additional occurrences found. The top occurrences remain visible as actionable findings.", "rule_id": "SEC128", "scanner": "repobility-threat-engine", "confidence": 0.2, "correlation_key": "fp|7a4b0f5540cad034a1707c0e9f6ef94d621d463e55602684599877ea4071a670"}}}, {"ruleId": "SEC025", "level": "error", "message": {"text": "[SEC025] XML External Entity (XXE) \u2014 .NET XmlDocument / XmlTextReader: .NET XmlDocument and XmlTextReader expand external entities by default in pre-4.5.2 runtimes (and even later if XmlResolver is left at default). Allows file disclosure and SSRF via XXE."}, "properties": {"repobilityId": 87089, "scanner": "repobility-threat-engine", "fingerprint": "a2074134f6455bed3384334eea1826abda1390da97d3a161374eb7214c64eade", "category": "xxe", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"match": "XmlReader.Create(", "reason": "Pattern matched with no mitigating context found", "rule_id": "SEC025", "scanner": "repobility-threat-engine", "confidence": 1.0, "correlation_key": "fp|a2074134f6455bed3384334eea1826abda1390da97d3a161374eb7214c64eade"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.PowerShell.Commands.Diagnostics/NewWinEventCommand.cs"}, "region": {"startLine": 233}}}]}, {"ruleId": "SEC128", "level": "error", "message": {"text": "[SEC128] Async function without await \u2014 fire-and-forget Promise (AI mistake): Async call invoked without `await` returns an unhandled Promise. The outer function resolves before the inner work completes \u2014 DB writes lost, emails not sent, race conditions. This is one of the top-3 errors AI coders make: they understand async-shape but drop the await keyword when chaining multiple ops. Surfaces as flaky tests or silently dropped data in production."}, "properties": {"repobilityId": 87087, "scanner": "repobility-threat-engine", "fingerprint": "062f9803455d45877565fc2bb0f09ab2705b73faac69e95e843510dd78e43690", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"match": "this.Delete();", "reason": "Pattern matched with no mitigating context found", "rule_id": "SEC128", "scanner": "repobility-threat-engine", "confidence": 1.0, "correlation_key": "fp|062f9803455d45877565fc2bb0f09ab2705b73faac69e95e843510dd78e43690"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.UI.Internal/ManagementList/Common/ListOrganizerItem.cs"}, "region": {"startLine": 95}}}]}, {"ruleId": "SEC128", "level": "error", "message": {"text": "[SEC128] Async function without await \u2014 fire-and-forget Promise (AI mistake): Async call invoked without `await` returns an unhandled Promise. The outer function resolves before the inner work completes \u2014 DB writes lost, emails not sent, race conditions. This is one of the top-3 errors AI coders make: they understand async-shape but drop the await keyword when chaining multiple ops. Surfaces as flaky tests or silently dropped data in production."}, "properties": {"repobilityId": 87086, "scanner": "repobility-threat-engine", "fingerprint": "37eb779a33b6b077bf89e444199a7cfb97b80102fdc0db005fefe586f8e1b1d8", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"match": "HelpWindowSettings.Default.Save();", "reason": "Pattern matched with no mitigating context found", "rule_id": "SEC128", "scanner": "repobility-threat-engine", "confidence": 1.0, "correlation_key": "fp|37eb779a33b6b077bf89e444199a7cfb97b80102fdc0db005fefe586f8e1b1d8"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.UI.Internal/HelpWindow/SettingsDialog.xaml.cs"}, "region": {"startLine": 53}}}]}, {"ruleId": "SEC128", "level": "error", "message": {"text": "[SEC128] Async function without await \u2014 fire-and-forget Promise (AI mistake): Async call invoked without `await` returns an unhandled Promise. The outer function resolves before the inner work completes \u2014 DB writes lost, emails not sent, race conditions. This is one of the top-3 errors AI coders make: they understand async-shape but drop the await keyword when chaining multiple ops. Surfaces as flaky tests or silently dropped data in production."}, "properties": {"repobilityId": 87085, "scanner": "repobility-threat-engine", "fingerprint": "a291b95e52d70a295829119c555244f131a32209e98885196ada5fdd46cca47f", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"match": "HelpWindowSettings.Default.Save();", "reason": "Pattern matched with no mitigating context found", "rule_id": "SEC128", "scanner": "repobility-threat-engine", "confidence": 1.0, "correlation_key": "fp|a291b95e52d70a295829119c555244f131a32209e98885196ada5fdd46cca47f"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/Microsoft.Management.UI.Internal/HelpWindow/HelpWindow.xaml.cs"}, "region": {"startLine": 205}}}]}, {"ruleId": "CORE_NO_TESTS", "level": "error", "message": {"text": "No test files found"}, "properties": {"repobilityId": 87084, "scanner": "repobility-core", "fingerprint": "0200e9918bc2a7bf9c116d0907e50ac3df640c758b93852cf1890ec6e14d870d", "category": "testing", "severity": "high", "confidence": null, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"rule_id": "CORE_NO_TESTS", "scanner": "repobility-core", "correlation_key": "repo|testing|core_no_tests"}}}]}]}