{"$schema":"https://json.schemastore.org/sarif-2.1.0.json","version":"2.1.0","runs":[{"tool":{"driver":{"name":"codehealth","informationUri":"https://codehealth.canine.dev","rules":[{"id":"D1","name":"Cyclomatic Complexity","shortDescription":{"text":"Cyclomatic Complexity"},"helpUri":"https://codehealth.canine.dev/dimensions/D1"},{"id":"D2","name":"Cognitive Complexity","shortDescription":{"text":"Cognitive Complexity"},"helpUri":"https://codehealth.canine.dev/dimensions/D2"},{"id":"D3","name":"God Classes","shortDescription":{"text":"God Classes"},"helpUri":"https://codehealth.canine.dev/dimensions/D3"},{"id":"D4","name":"Code Duplication","shortDescription":{"text":"Code Duplication"},"helpUri":"https://codehealth.canine.dev/dimensions/D4"},{"id":"D5","name":"Coupling","shortDescription":{"text":"Coupling"},"helpUri":"https://codehealth.canine.dev/dimensions/D5"},{"id":"D6","name":"Cohesion (LCOM4)","shortDescription":{"text":"Cohesion (LCOM4)"},"helpUri":"https://codehealth.canine.dev/dimensions/D6"},{"id":"D7","name":"Architectural Integrity","shortDescription":{"text":"Architectural Integrity"},"helpUri":"https://codehealth.canine.dev/dimensions/D7"},{"id":"D8","name":"Code Coverage","shortDescription":{"text":"Code Coverage"},"helpUri":"https://codehealth.canine.dev/dimensions/D8"},{"id":"D9","name":"Test Distribution","shortDescription":{"text":"Test Distribution"},"helpUri":"https://codehealth.canine.dev/dimensions/D9"},{"id":"D10","name":"Test Quality","shortDescription":{"text":"Test Quality"},"helpUri":"https://codehealth.canine.dev/dimensions/D10"},{"id":"D11","name":"Test Reliability","shortDescription":{"text":"Test Reliability"},"helpUri":"https://codehealth.canine.dev/dimensions/D11"},{"id":"D12","name":"Dependency Hygiene","shortDescription":{"text":"Dependency Hygiene"},"helpUri":"https://codehealth.canine.dev/dimensions/D12"},{"id":"D13","name":"Secret Scanning","shortDescription":{"text":"Secret Scanning"},"helpUri":"https://codehealth.canine.dev/dimensions/D13","relationships":[{"target":{"id":"CWE-798","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}]},{"id":"D14","name":"License Compliance","shortDescription":{"text":"License Compliance"},"helpUri":"https://codehealth.canine.dev/dimensions/D14"},{"id":"D15","name":"Churn \u00D7 Complexity Hotspots","shortDescription":{"text":"Churn \u00D7 Complexity Hotspots"},"helpUri":"https://codehealth.canine.dev/dimensions/D15"},{"id":"D16","name":"Bus Factor","shortDescription":{"text":"Bus Factor"},"helpUri":"https://codehealth.canine.dev/dimensions/D16"},{"id":"D17","name":"Explicit Debt","shortDescription":{"text":"Explicit Debt"},"helpUri":"https://codehealth.canine.dev/dimensions/D17"},{"id":"D18","name":"Solution Shape","shortDescription":{"text":"Solution Shape"},"helpUri":"https://codehealth.canine.dev/dimensions/D18"},{"id":"D20","name":"ADR Quality","shortDescription":{"text":"ADR Quality"},"helpUri":"https://codehealth.canine.dev/dimensions/D20"},{"id":"D21","name":"Naming Consistency","shortDescription":{"text":"Naming Consistency"},"helpUri":"https://codehealth.canine.dev/dimensions/D21"},{"id":"D23","name":"Boundary Type-Coupling","shortDescription":{"text":"Boundary Type-Coupling"},"helpUri":"https://codehealth.canine.dev/dimensions/D23"},{"id":"D24","name":"Comment Value","shortDescription":{"text":"Comment Value"},"helpUri":"https://codehealth.canine.dev/dimensions/D24"},{"id":"D25","name":"ADR Conformance","shortDescription":{"text":"ADR Conformance"},"helpUri":"https://codehealth.canine.dev/dimensions/D25"},{"id":"D26","name":"Project Cohesion","shortDescription":{"text":"Project Cohesion"},"helpUri":"https://codehealth.canine.dev/dimensions/D26"},{"id":"D27","name":"Navigability","shortDescription":{"text":"Navigability"},"helpUri":"https://codehealth.canine.dev/dimensions/D27"},{"id":"D28","name":"Secrets (history)","shortDescription":{"text":"Secrets (history)"},"helpUri":"https://codehealth.canine.dev/dimensions/D28","relationships":[{"target":{"id":"CWE-798","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}]},{"id":"D29","name":"Static Analysis (SAST)","shortDescription":{"text":"Static Analysis (SAST)"},"helpUri":"https://codehealth.canine.dev/dimensions/D29"},{"id":"D30","name":"Dependency Vulnerabilities","shortDescription":{"text":"Dependency Vulnerabilities"},"helpUri":"https://codehealth.canine.dev/dimensions/D30","relationships":[{"target":{"id":"CWE-1395","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}]},{"id":"D33","name":"JS/npm Dependency Vulnerabilities","shortDescription":{"text":"JS/npm Dependency Vulnerabilities"},"helpUri":"https://codehealth.canine.dev/dimensions/D33","relationships":[{"target":{"id":"CWE-1395","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}]},{"id":"D34","name":"Knowledge Freshness","shortDescription":{"text":"Knowledge Freshness"},"helpUri":"https://codehealth.canine.dev/dimensions/D34"},{"id":"D35","name":"Change Coupling","shortDescription":{"text":"Change Coupling"},"helpUri":"https://codehealth.canine.dev/dimensions/D35"},{"id":"D38","name":"OSV Dependency Vulnerabilities","shortDescription":{"text":"OSV Dependency Vulnerabilities"},"helpUri":"https://codehealth.canine.dev/dimensions/D38","relationships":[{"target":{"id":"CWE-1395","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}]}]}},"results":[{"ruleId":"D1","level":"warning","message":{"text":"LocalMachineFileStoreExtensions.FromFileProperty (cyclomatic 46): LocalMachineFileStoreExtensions.FromFileProperty has cyclomatic complexity 46 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/LocalMachineJsonFileStore.cs"},"region":{"startLine":552}}}],"partialFingerprints":{"codehealthFindingId/v1":"9cf4f475ace86e9a0244c1ce350f53a163c6943389cae491207bb330dca91f44"}},{"ruleId":"D1","level":"warning","message":{"text":"EndUserRoot.OnStateChanged (cyclomatic 45): EndUserRoot.OnStateChanged has cyclomatic complexity 45 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersDomain/EndUserRoot.cs"},"region":{"startLine":117}}}],"partialFingerprints":{"codehealthFindingId/v1":"03043d486a91589866aee7abf9c3cfc791246f09ec0c1bccf89efc70660da894"}},{"ruleId":"D1","level":"warning","message":{"text":"SubscriptionRoot.OnStateChanged (cyclomatic 45): SubscriptionRoot.OnStateChanged has cyclomatic complexity 45 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs"},"region":{"startLine":118}}}],"partialFingerprints":{"codehealthFindingId/v1":"c417399e0bdba5e8d9c1acb6da4736b2ca86a8991ab61f5ceea70043977716e1"}},{"ruleId":"D1","level":"warning","message":{"text":"PersonCredentialRoot.OnStateChanged (cyclomatic 41): PersonCredentialRoot.OnStateChanged has cyclomatic complexity 41 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs"},"region":{"startLine":150}}}],"partialFingerprints":{"codehealthFindingId/v1":"8ac57998404de1bb344cba6a2bbe473abebb446aff26bcd5bef6259c3c7b49ff"}},{"ruleId":"D1","level":"warning","message":{"text":"EndUserProjection.ProjectEventAsync (cyclomatic 40): EndUserProjection.ProjectEventAsync has cyclomatic complexity 40 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersInfrastructure/Persistence/ReadModels/EndUserProjection.cs"},"region":{"startLine":34}}}],"partialFingerprints":{"codehealthFindingId/v1":"50822a2c24ae5e14e5dc072da81b3a260200b18688947ee57ecf8ca167f20de1"}},{"ruleId":"D1","level":"warning","message":{"text":"HostExtensions.ConfigureApiHost (cyclomatic 39): HostExtensions.ConfigureApiHost has cyclomatic complexity 39 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Extensions/HostExtensions.cs"},"region":{"startLine":65}}}],"partialFingerprints":{"codehealthFindingId/v1":"f3742e0459afbd77b3e710e35d1ac77963438d0f6f5387aaa88d58a2c5bdd193"}},{"ruleId":"D1","level":"warning","message":{"text":"SubscriptionsApplication.ResyncSubscriptionTierQuotasInternalAsync (cyclomatic 38): SubscriptionsApplication.ResyncSubscriptionTierQuotasInternalAsync has cyclomatic complexity 38 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_Quotas.cs"},"region":{"startLine":170}}}],"partialFingerprints":{"codehealthFindingId/v1":"e5ba235b402b967fdd5d1fa58e4cddb77876e38a9440ccc7a26c2a7c1f0c8fcc"}},{"ruleId":"D1","level":"warning","message":{"text":"AncillaryApplication.SendEmailInternalAsync (cyclomatic 32): AncillaryApplication.SendEmailInternalAsync has cyclomatic complexity 32 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryApplication/AncillaryApplication.Emailing.cs"},"region":{"startLine":148}}}],"partialFingerprints":{"codehealthFindingId/v1":"ebe15fecaa763db25361d9f2c3eb9b09d97b0b0abe8a323987ffd2073652893f"}},{"ruleId":"D1","level":"warning","message":{"text":"MappingExtensions.ConvertValue (cyclomatic 29): MappingExtensions.ConvertValue has cyclomatic complexity 29 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common/Extensions/MappingExtensions.cs"},"region":{"startLine":471}}}],"partialFingerprints":{"codehealthFindingId/v1":"57e13c5095e654ef09d2e629252512dd6d946c5d378c27d7a70768713f7f1da2"}},{"ruleId":"D1","level":"warning","message":{"text":"WebApiAssemblyVisitor.AddRegistration (cyclomatic 29): WebApiAssemblyVisitor.AddRegistration has cyclomatic complexity 29 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Tools/Tools.Generators.Web.Api/WebApiAssemblyVisitor.cs"},"region":{"startLine":166}}}],"partialFingerprints":{"codehealthFindingId/v1":"de7c17f1d29ec7e995e5f9ea732cb1b135bb0941639893e54b504a56a7ec0126"}},{"ruleId":"D1","level":"warning","message":{"text":"OrganizationRoot.OnStateChanged (cyclomatic 29): OrganizationRoot.OnStateChanged has cyclomatic complexity 29 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsDomain/OrganizationRoot.cs"},"region":{"startLine":136}}}],"partialFingerprints":{"codehealthFindingId/v1":"02a17c9223d694966eaad917931c85e028907796b93b4f18466fe2ad7b80164e"}},{"ruleId":"D1","level":"warning","message":{"text":"UserProfilesApplication.CreateProfileAsync (cyclomatic 28): UserProfilesApplication.CreateProfileAsync has cyclomatic complexity 28 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesApplication/UserProfilesApplication.DomainEventHandlers.cs"},"region":{"startLine":90}}}],"partialFingerprints":{"codehealthFindingId/v1":"d7c60d2670295ef595757a16968989c5b662c14836daf7453c1e34c9b011f0fe"}},{"ruleId":"D1","level":"warning","message":{"text":"OrganizationProjection.ProjectEventAsync (cyclomatic 25): OrganizationProjection.ProjectEventAsync has cyclomatic complexity 25 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure/Persistence/ReadModels/OrganizationProjection.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"71986003bf02ba483a92e56a170513c27395e0ee0c0998365b4637c91758bab1"}},{"ruleId":"D1","level":"warning","message":{"text":"RequestTenantDetective.ParseTenantIdFromRequestAsync (cyclomatic 24): RequestTenantDetective.ParseTenantIdFromRequestAsync has cyclomatic complexity 24 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/RequestTenantDetective.cs"},"region":{"startLine":65}}}],"partialFingerprints":{"codehealthFindingId/v1":"d92c44f5914b26daff97efa5e3759300b9492a72ebb9d8313d6fa59fece6b083"}},{"ruleId":"D1","level":"warning","message":{"text":"RequestTenantDetective.ParseTenantIdFromRequestBodyAsync (cyclomatic 24): RequestTenantDetective.ParseTenantIdFromRequestBodyAsync has cyclomatic complexity 24 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/RequestTenantDetective.cs"},"region":{"startLine":177}}}],"partialFingerprints":{"codehealthFindingId/v1":"b85616e66f8d898bceafa0dbed62a081ed07a52d3b9cdd768de8ed85d6cff25f"}},{"ruleId":"D1","level":"warning","message":{"text":"NativeIdentityServerOpenIdConnectService.GetUserInfoAsync (cyclomatic 24): NativeIdentityServerOpenIdConnectService.GetUserInfoAsync has cyclomatic complexity 24 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerOpenIdConnectService.cs"},"region":{"startLine":424}}}],"partialFingerprints":{"codehealthFindingId/v1":"7b09985c231979df408d4241977f5ccad0c46cd069fa121d9daddd9afc9ac88d"}},{"ruleId":"D1","level":"warning","message":{"text":"UserProfileRoot.OnStateChanged (cyclomatic 24): UserProfileRoot.OnStateChanged has cyclomatic complexity 24 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesDomain/UserProfileRoot.cs"},"region":{"startLine":92}}}],"partialFingerprints":{"codehealthFindingId/v1":"a209a648e773bde73ee7cf8ba629b67adde86be512bd5dc7f3972d4c90664007"}},{"ruleId":"D1","level":"warning","message":{"text":"SubscriptionsApplication.CreateSubscriptionInternalAsync (cyclomatic 24): SubscriptionsApplication.CreateSubscriptionInternalAsync has cyclomatic complexity 24 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_DomainEventHandlers.cs"},"region":{"startLine":56}}}],"partialFingerprints":{"codehealthFindingId/v1":"1d5af13ce8169f5342cbac3f2a4b7f46529590a06f5a65268315bfd91850cae7"}},{"ruleId":"D1","level":"warning","message":{"text":"EndUsersApplication.RegisterPersonAsync (cyclomatic 21): EndUsersApplication.RegisterPersonAsync has cyclomatic complexity 21 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersApplication/EndUsersApplication.cs"},"region":{"startLine":301}}}],"partialFingerprints":{"codehealthFindingId/v1":"a8ca39031b4f88d80fa14b40477809a6de307d1cd0e690af00ddea76a63257ce"}},{"ruleId":"D1","level":"warning","message":{"text":"CurrentStepState.NavigateToStep (cyclomatic 21): CurrentStepState.NavigateToStep has cyclomatic complexity 21 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsDomain/CurrentStepState.cs"},"region":{"startLine":194}}}],"partialFingerprints":{"codehealthFindingId/v1":"947359937c321060522e5e955a627fa59b36868ae67896eeae18ac71e89b2244"}},{"ruleId":"D1","level":"warning","message":{"text":"OnboardingWorkflowGraphService.ValidateWorkflow (cyclomatic 21): OnboardingWorkflowGraphService.ValidateWorkflow has cyclomatic complexity 21 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure/DomainServices/OnboardingWorkflowGraphService.cs"},"region":{"startLine":74}}}],"partialFingerprints":{"codehealthFindingId/v1":"575eca34c03a25204f38b0eca538c4fcc107880ff162f1d87f6e5ff4b9122c6f"}},{"ruleId":"D1","level":"warning","message":{"text":"SubscriptionRoot.DeliverManagedTrialScheduledEventAsync (cyclomatic 21): SubscriptionRoot.DeliverManagedTrialScheduledEventAsync has cyclomatic complexity 21 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.Trials.cs"},"region":{"startLine":49}}}],"partialFingerprints":{"codehealthFindingId/v1":"791717011129f9c62e1cc59e01c6706f492c23eb9ed64bebf0a95c02d45a1d39"}},{"ruleId":"D1","level":"warning","message":{"text":"NativeIdentityServerSingleSignOnService.AuthenticateAsync (cyclomatic 20): NativeIdentityServerSingleSignOnService.AuthenticateAsync has cyclomatic complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerSingleSignOnService.cs"},"region":{"startLine":105}}}],"partialFingerprints":{"codehealthFindingId/v1":"244fd5d4ef2f6e8ab69df8e19252d854d544aee1acdeb1d5a314835b7f58bc19"}},{"ruleId":"D1","level":"warning","message":{"text":"UserProfilesApplication.ChangeProfileAsync (cyclomatic 20): UserProfilesApplication.ChangeProfileAsync has cyclomatic complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesApplication/UserProfilesApplication.cs"},"region":{"startLine":92}}}],"partialFingerprints":{"codehealthFindingId/v1":"cf096b3927ae4837556099ba244d5d43164f4568cddd9a7f93da8a8476db51cb"}},{"ruleId":"D1","level":"warning","message":{"text":"FileUploadService.GetUploadedFile (cyclomatic 18): FileUploadService.GetUploadedFile has cyclomatic complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/FileUploadService.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"c2928b94d542f9fd94c2fa7784e322e53c6f213d33e978d3ad31de7e3acf2bb0"}},{"ruleId":"D1","level":"warning","message":{"text":"MinimalApiGenerator.BuildEndpointRegistrations (cyclomatic 18): MinimalApiGenerator.BuildEndpointRegistrations has cyclomatic complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Tools/Tools.Generators.Web.Api/MinimalApiGenerator.cs"},"region":{"startLine":100}}}],"partialFingerprints":{"codehealthFindingId/v1":"3f5c3c34f2a042e98b6a1331d33cbcbba55fd99ad150ef7f5683ecc10e7c1d0d"}},{"ruleId":"D1","level":"warning","message":{"text":"ClaimExtensions.ToClaims (cyclomatic 18): ClaimExtensions.ToClaims has cyclomatic complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Common/Extensions/ClaimExtensions.cs"},"region":{"startLine":162}}}],"partialFingerprints":{"codehealthFindingId/v1":"7ad3eaa54b4a697f1a9402a86a5fe3fc4a31c7151f781c5ee1ed6f9c09cc31d2"}},{"ruleId":"D1","level":"warning","message":{"text":"NativeIdentityServerOpenIdConnectService.AuthorizeAsync (cyclomatic 18): NativeIdentityServerOpenIdConnectService.AuthorizeAsync has cyclomatic complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerOpenIdConnectService.cs"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"b1ffa88e1422538726fe8f4ca3748dbe5f7ac9d7ec04c2b0e4307b53a29bae19"}},{"ruleId":"D1","level":"warning","message":{"text":"PersonCredentialRoot.AssociateMfaAuthenticatorAsync (cyclomatic 18): PersonCredentialRoot.AssociateMfaAuthenticatorAsync has cyclomatic complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs"},"region":{"startLine":432}}}],"partialFingerprints":{"codehealthFindingId/v1":"17151c8f57f6a855326b8f65f3e76c251e9094109bf6f2cd40c006ac5bf3ed6e"}},{"ruleId":"D1","level":"warning","message":{"text":"OrganizationsApplication.CreateOrganizationInternalAsync (cyclomatic 18): OrganizationsApplication.CreateOrganizationInternalAsync has cyclomatic complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.cs"},"region":{"startLine":666}}}],"partialFingerprints":{"codehealthFindingId/v1":"080f8a94ca4faee83bbead726a665258a963a484341469483275829bcedd5141"}},{"ruleId":"D1","level":"warning","message":{"text":"SubscriptionsApplication.TryCheckQuotaUsageAsync (cyclomatic 18): SubscriptionsApplication.TryCheckQuotaUsageAsync has cyclomatic complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_Quotas.cs"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"56273037b2bd6fbe0c5ca41e4d818e0a29a74f3b69730f22cd7d2f5b240c1c92"}},{"ruleId":"D1","level":"warning","message":{"text":"JsonClient.TryParseNonStandardErrors (cyclomatic 17): JsonClient.TryParseNonStandardErrors has cyclomatic complexity 17 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/Clients/JsonClient.cs"},"region":{"startLine":652}}}],"partialFingerprints":{"codehealthFindingId/v1":"950e8a0bac10b732dc5d587e0ae5da835b1b422199af76248b70daec25574443"}},{"ruleId":"D1","level":"warning","message":{"text":"AncillaryApplication.SendSmsInternalAsync (cyclomatic 17): AncillaryApplication.SendSmsInternalAsync has cyclomatic complexity 17 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryApplication/AncillaryApplication.Smsing.cs"},"region":{"startLine":147}}}],"partialFingerprints":{"codehealthFindingId/v1":"608a4c78403c9d7b09a5e0eddab5f7454ec90e4a74f10a11c9ddfd252a5c714e"}},{"ruleId":"D1","level":"warning","message":{"text":"MfaAuthenticator.Verify (cyclomatic 17): MfaAuthenticator.Verify has cyclomatic complexity 17 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/MfaAuthenticator.cs"},"region":{"startLine":355}}}],"partialFingerprints":{"codehealthFindingId/v1":"478e21b9267f9b807e5374930308b603a1271dd0e494141615821089cffb952d"}},{"ruleId":"D1","level":"warning","message":{"text":"ValueObjectBase.DehydrateInternal (cyclomatic 16): ValueObjectBase.DehydrateInternal has cyclomatic complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Domain/Domain.Common/ValueObjects/ValueObjectBase.cs"},"region":{"startLine":166}}}],"partialFingerprints":{"codehealthFindingId/v1":"b2c0318cce54aafa8c98e0766d757b4c164d3178926aa07b5f276391a15567cc"}},{"ruleId":"D1","level":"warning","message":{"text":"NativeIdentityServerCredentialsService.AuthenticateAsync (cyclomatic 16): NativeIdentityServerCredentialsService.AuthenticateAsync has cyclomatic complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerCredentialsService.cs"},"region":{"startLine":92}}}],"partialFingerprints":{"codehealthFindingId/v1":"58e446f512d267594e19afc89815ffc3a2a35b008704c00ace97dedcb06920de"}},{"ruleId":"D1","level":"warning","message":{"text":"AuthTokensApplication.IssueTokensAsync (cyclomatic 16): AuthTokensApplication.IssueTokensAsync has cyclomatic complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/AuthTokensApplication.cs"},"region":{"startLine":43}}}],"partialFingerprints":{"codehealthFindingId/v1":"35f8580e743cb85c9730b1505e4ed2e016f1820c986363e306f8d39e40dfb2f7"}},{"ruleId":"D1","level":"warning","message":{"text":"StepSchema.Create (cyclomatic 16): StepSchema.Create has cyclomatic complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsDomain/StepSchema.cs"},"region":{"startLine":14}}}],"partialFingerprints":{"codehealthFindingId/v1":"7a5af02af8f1e1a083eec67c978d659cec3fcf084166e79e82256cafdee09f40"}},{"ruleId":"D2","level":"warning","message":{"text":"RequestTenantDetective.ParseTenantIdFromRequestBodyAsync (cognitive 66): RequestTenantDetective.ParseTenantIdFromRequestBodyAsync has cognitive complexity 66 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/RequestTenantDetective.cs"},"region":{"startLine":177}}}],"partialFingerprints":{"codehealthFindingId/v1":"b6df1cfb158f78359de5315b481354e9d5054fceaa5d5e5ef9e09a1bd8c7893e"}},{"ruleId":"D2","level":"warning","message":{"text":"SubscriptionRoot.OnStateChanged (cognitive 65): SubscriptionRoot.OnStateChanged has cognitive complexity 65 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs"},"region":{"startLine":118}}}],"partialFingerprints":{"codehealthFindingId/v1":"c4ed7adcb3058cc5f6006d25be20236a6d016246ae097f67726ba8440be3fc7b"}},{"ruleId":"D2","level":"warning","message":{"text":"SubscriptionsApplication.ResyncSubscriptionTierQuotasInternalAsync (cognitive 63): SubscriptionsApplication.ResyncSubscriptionTierQuotasInternalAsync has cognitive complexity 63 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_Quotas.cs"},"region":{"startLine":170}}}],"partialFingerprints":{"codehealthFindingId/v1":"c02e9daabb0a1f44c0a00a7633c726f7f5847faaff0e230ec37856b0257c19ca"}},{"ruleId":"D2","level":"warning","message":{"text":"EndUserRoot.OnStateChanged (cognitive 57): EndUserRoot.OnStateChanged has cognitive complexity 57 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersDomain/EndUserRoot.cs"},"region":{"startLine":117}}}],"partialFingerprints":{"codehealthFindingId/v1":"11d46221071b2892cd7031511b3422b94a33c68a340511a21acd68587933c056"}},{"ruleId":"D2","level":"warning","message":{"text":"HostExtensions.ConfigureApiHost (cognitive 50): HostExtensions.ConfigureApiHost has cognitive complexity 50 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Extensions/HostExtensions.cs"},"region":{"startLine":65}}}],"partialFingerprints":{"codehealthFindingId/v1":"34366106e33f64b20cbd5689ec5666a9ea9e84deece056e5a37e08ff22398a82"}},{"ruleId":"D2","level":"warning","message":{"text":"RequestTenantDetective.ParseTenantIdFromRequestAsync (cognitive 49): RequestTenantDetective.ParseTenantIdFromRequestAsync has cognitive complexity 49 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/RequestTenantDetective.cs"},"region":{"startLine":65}}}],"partialFingerprints":{"codehealthFindingId/v1":"fb7b7eacd58ca6f1128ad05792004203ddae8ff41c74ceb9ff50bc99f22a0add"}},{"ruleId":"D2","level":"warning","message":{"text":"EndUserProjection.ProjectEventAsync (cognitive 46): EndUserProjection.ProjectEventAsync has cognitive complexity 46 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersInfrastructure/Persistence/ReadModels/EndUserProjection.cs"},"region":{"startLine":34}}}],"partialFingerprints":{"codehealthFindingId/v1":"75406d02320011b76a57c0e18c7797c3c0fd5418aa95e7a4bce8cac494fa7afd"}},{"ruleId":"D2","level":"warning","message":{"text":"AncillaryApplication.SendEmailInternalAsync (cognitive 44): AncillaryApplication.SendEmailInternalAsync has cognitive complexity 44 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryApplication/AncillaryApplication.Emailing.cs"},"region":{"startLine":148}}}],"partialFingerprints":{"codehealthFindingId/v1":"42236c3888a4c02ab78800b3bef19257f811d032119b8e56930c127094752fca"}},{"ruleId":"D2","level":"warning","message":{"text":"PersonCredentialRoot.OnStateChanged (cognitive 44): PersonCredentialRoot.OnStateChanged has cognitive complexity 44 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs"},"region":{"startLine":150}}}],"partialFingerprints":{"codehealthFindingId/v1":"14cc249cb135d6809785aec271fd574d052c1de4eec8d9e57131e45af52631f0"}},{"ruleId":"D2","level":"warning","message":{"text":"WebApiAssemblyVisitor.AddRegistration (cognitive 41): WebApiAssemblyVisitor.AddRegistration has cognitive complexity 41 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Tools/Tools.Generators.Web.Api/WebApiAssemblyVisitor.cs"},"region":{"startLine":166}}}],"partialFingerprints":{"codehealthFindingId/v1":"37e1bb1870848df4df7e95f55da36cda34185665cfed37ce952778f724d81893"}},{"ruleId":"D2","level":"warning","message":{"text":"UserProfilesApplication.CreateProfileAsync (cognitive 38): UserProfilesApplication.CreateProfileAsync has cognitive complexity 38 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesApplication/UserProfilesApplication.DomainEventHandlers.cs"},"region":{"startLine":90}}}],"partialFingerprints":{"codehealthFindingId/v1":"4f129252eee9595d9e7d9b71ba8bae8da94542cd8240c147ac75ed62cc630002"}},{"ruleId":"D2","level":"warning","message":{"text":"SubscriptionsApplication.CreateSubscriptionInternalAsync (cognitive 37): SubscriptionsApplication.CreateSubscriptionInternalAsync has cognitive complexity 37 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_DomainEventHandlers.cs"},"region":{"startLine":56}}}],"partialFingerprints":{"codehealthFindingId/v1":"2d0c09bd29e6a78d9b9c3b55a8694dfa1be377bbe808584afd9eb60aa25f087b"}},{"ruleId":"D2","level":"warning","message":{"text":"MappingExtensions.ConvertValue (cognitive 32): MappingExtensions.ConvertValue has cognitive complexity 32 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common/Extensions/MappingExtensions.cs"},"region":{"startLine":471}}}],"partialFingerprints":{"codehealthFindingId/v1":"93066ed569ae0be77e62d847e24ea69ae5ff04cc8732ddd0fac9d451ee9e6db7"}},{"ruleId":"D2","level":"warning","message":{"text":"EndUsersApplication.RegisterPersonAsync (cognitive 32): EndUsersApplication.RegisterPersonAsync has cognitive complexity 32 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersApplication/EndUsersApplication.cs"},"region":{"startLine":301}}}],"partialFingerprints":{"codehealthFindingId/v1":"8c7a4627e268cd328c3f7041e707555471f42cb8b0ed72f89587029055cdcfe2"}},{"ruleId":"D2","level":"warning","message":{"text":"MinimalApiGenerator.BuildEndpointRegistrations (cognitive 29): MinimalApiGenerator.BuildEndpointRegistrations has cognitive complexity 29 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Tools/Tools.Generators.Web.Api/MinimalApiGenerator.cs"},"region":{"startLine":100}}}],"partialFingerprints":{"codehealthFindingId/v1":"efae3a02384b794efa0576e7ca4ef3f08ab4d0d4be803ef61391068fdbbfc84b"}},{"ruleId":"D2","level":"warning","message":{"text":"UserProfilesApplication.ChangeProfileAsync (cognitive 29): UserProfilesApplication.ChangeProfileAsync has cognitive complexity 29 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesApplication/UserProfilesApplication.cs"},"region":{"startLine":92}}}],"partialFingerprints":{"codehealthFindingId/v1":"12284c015863ff260c141526885027c926ef5fe16e9ff1e684e675ed59e309cc"}},{"ruleId":"D2","level":"warning","message":{"text":"LocalMachineFileStoreExtensions.FromFileProperty (cognitive 29): LocalMachineFileStoreExtensions.FromFileProperty has cognitive complexity 29 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/LocalMachineJsonFileStore.cs"},"region":{"startLine":552}}}],"partialFingerprints":{"codehealthFindingId/v1":"c1a7e920b0558371db26b1c77f7fe97a5f2df925dd2682c0bdb406681a033cd7"}},{"ruleId":"D2","level":"warning","message":{"text":"AuthorizeAttribute.ParseRoleOrFeatureName (cognitive 27): AuthorizeAttribute.ParseRoleOrFeatureName has cognitive complexity 27 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Interfaces/AuthorizeAttribute.cs"},"region":{"startLine":181}}}],"partialFingerprints":{"codehealthFindingId/v1":"fa326deeb679f664676b374c89524fdb2866c61b0ce59513b719425c009f097b"}},{"ruleId":"D2","level":"warning","message":{"text":"OnboardingWorkflowGraphService.ValidateWorkflow (cognitive 27): OnboardingWorkflowGraphService.ValidateWorkflow has cognitive complexity 27 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure/DomainServices/OnboardingWorkflowGraphService.cs"},"region":{"startLine":74}}}],"partialFingerprints":{"codehealthFindingId/v1":"ded96c27f296ca2cc3141365cc9440f2b4fb7da5d3297368caf9b3944fba476a"}},{"ruleId":"D2","level":"warning","message":{"text":"OrganizationsApplication.CreateOrganizationInternalAsync (cognitive 27): OrganizationsApplication.CreateOrganizationInternalAsync has cognitive complexity 27 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.cs"},"region":{"startLine":666}}}],"partialFingerprints":{"codehealthFindingId/v1":"def007832197e13e69a2d4cbea3a7efe27daeef5daef53096b6e91a99608cde0"}},{"ruleId":"D2","level":"warning","message":{"text":"ClaimExtensions.ToClaims (cognitive 26): ClaimExtensions.ToClaims has cognitive complexity 26 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Common/Extensions/ClaimExtensions.cs"},"region":{"startLine":162}}}],"partialFingerprints":{"codehealthFindingId/v1":"6a42d33591ec015daab9ddf37a390dee87f2079be92ee3ce1e17f2f9544a239f"}},{"ruleId":"D2","level":"warning","message":{"text":"NativeIdentityServerSingleSignOnService.AuthenticateAsync (cognitive 26): NativeIdentityServerSingleSignOnService.AuthenticateAsync has cognitive complexity 26 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerSingleSignOnService.cs"},"region":{"startLine":105}}}],"partialFingerprints":{"codehealthFindingId/v1":"ae2b76ddf5902d51a3f07c766a722a8e9d931171e2c80685da765d14366f8239"}},{"ruleId":"D2","level":"warning","message":{"text":"DefaultBodyFilter.Apply (cognitive 25): DefaultBodyFilter.Apply has cognitive complexity 25 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Documentation/DefaultBodyFilter.cs"},"region":{"startLine":21}}}],"partialFingerprints":{"codehealthFindingId/v1":"be90c690dc7856e72abf048b4c03ddeaa69d40c469770aac39ea4464353f84c9"}},{"ruleId":"D2","level":"warning","message":{"text":"NativeIdentityServerOpenIdConnectService.GetUserInfoAsync (cognitive 24): NativeIdentityServerOpenIdConnectService.GetUserInfoAsync has cognitive complexity 24 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerOpenIdConnectService.cs"},"region":{"startLine":424}}}],"partialFingerprints":{"codehealthFindingId/v1":"58417003d629995129124f0a2ac0b904d9db2a664d65d9db0e1b6ac0afbba7ce"}},{"ruleId":"D2","level":"warning","message":{"text":"JsonClient.ToMultiPartContent (cognitive 23): JsonClient.ToMultiPartContent has cognitive complexity 23 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/Clients/JsonClient.cs"},"region":{"startLine":449}}}],"partialFingerprints":{"codehealthFindingId/v1":"b07dba21229bcbbcf0761944997646c6d9ee01ee810ea1f831e92e01ebeb243c"}},{"ruleId":"D2","level":"warning","message":{"text":"MfaAuthenticator.Verify (cognitive 23): MfaAuthenticator.Verify has cognitive complexity 23 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/MfaAuthenticator.cs"},"region":{"startLine":355}}}],"partialFingerprints":{"codehealthFindingId/v1":"49fd5e72797f2181bfa957d740e5bc27d874e2dacb19d6cade00196a4f5280fa"}},{"ruleId":"D2","level":"warning","message":{"text":"OrganizationRoot.OnStateChanged (cognitive 23): OrganizationRoot.OnStateChanged has cognitive complexity 23 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsDomain/OrganizationRoot.cs"},"region":{"startLine":136}}}],"partialFingerprints":{"codehealthFindingId/v1":"da608391846e43eac765d3522216dc37f1614dae8cd9e4ced26e0368137e8520"}},{"ruleId":"D2","level":"warning","message":{"text":"UserProfileRoot.OnStateChanged (cognitive 23): UserProfileRoot.OnStateChanged has cognitive complexity 23 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesDomain/UserProfileRoot.cs"},"region":{"startLine":92}}}],"partialFingerprints":{"codehealthFindingId/v1":"0049e9682e2f7a7e5f3583a07b28d0ba2cabbc04d16b16aacf6efd542d6c6a70"}},{"ruleId":"D2","level":"warning","message":{"text":"AncillaryApplication.SendSmsInternalAsync (cognitive 22): AncillaryApplication.SendSmsInternalAsync has cognitive complexity 22 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryApplication/AncillaryApplication.Smsing.cs"},"region":{"startLine":147}}}],"partialFingerprints":{"codehealthFindingId/v1":"a645c345d1fe6353cfdffcff8a632632c18bfe53796bfd474dff7e0d3e2ae221"}},{"ruleId":"D2","level":"warning","message":{"text":"CurrentStepState.NavigateToStep (cognitive 21): CurrentStepState.NavigateToStep has cognitive complexity 21 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsDomain/CurrentStepState.cs"},"region":{"startLine":194}}}],"partialFingerprints":{"codehealthFindingId/v1":"318d910ab329afe5c70046ce6ce7da9b73943cc7e36c1a0f3a5c865de6fe100c"}},{"ruleId":"D2","level":"warning","message":{"text":"JsonClient.TryParseNonStandardErrors (cognitive 20): JsonClient.TryParseNonStandardErrors has cognitive complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/Clients/JsonClient.cs"},"region":{"startLine":652}}}],"partialFingerprints":{"codehealthFindingId/v1":"c9875a25ad6679db695ae3c097e5e21d29524cc617e7f0b49b3974c2a4733e28"}},{"ruleId":"D2","level":"warning","message":{"text":"ContentNegotiationFilter.InvokeAsync (cognitive 20): ContentNegotiationFilter.InvokeAsync has cognitive complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/Endpoints/ContentNegotiationFilter.cs"},"region":{"startLine":22}}}],"partialFingerprints":{"codehealthFindingId/v1":"113f7175245c866a2af9e4c21a877a4117a797b62cba611168fc28d6180c8516"}},{"ruleId":"D2","level":"warning","message":{"text":"ContentNegotiationFilter.GetRequestedContentAsync (cognitive 20): ContentNegotiationFilter.GetRequestedContentAsync has cognitive complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/Endpoints/ContentNegotiationFilter.cs"},"region":{"startLine":100}}}],"partialFingerprints":{"codehealthFindingId/v1":"99b3b7822766629bcbe3cae8cf96be0efa9f6971873241b26bc19ebb82004887"}},{"ruleId":"D2","level":"warning","message":{"text":"FileUploadService.GetUploadedFile (cognitive 20): FileUploadService.GetUploadedFile has cognitive complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/FileUploadService.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"e6e585bdd59f7ef3d750c5dc1ffeb7967d98627b048773f04f4c098e638703b7"}},{"ruleId":"D2","level":"warning","message":{"text":"ValueObjectBase.Equals (cognitive 20): ValueObjectBase.Equals has cognitive complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Domain/Domain.Common/ValueObjects/ValueObjectBase.Equality.cs"},"region":{"startLine":71}}}],"partialFingerprints":{"codehealthFindingId/v1":"e27079bbfbc82f38b48af5c5022b6fd92e6c41d003a3a1830f96e4165190742e"}},{"ruleId":"D2","level":"warning","message":{"text":"PersonCredentialRoot.AssociateMfaAuthenticatorAsync (cognitive 20): PersonCredentialRoot.AssociateMfaAuthenticatorAsync has cognitive complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs"},"region":{"startLine":432}}}],"partialFingerprints":{"codehealthFindingId/v1":"96531291042d55eeaebcff5f555dc88f7be77b3aa50419a904d6d8f6cb36a284"}},{"ruleId":"D2","level":"warning","message":{"text":"SubscriptionsApplication.TryCheckQuotaUsageAsync (cognitive 20): SubscriptionsApplication.TryCheckQuotaUsageAsync has cognitive complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_Quotas.cs"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"ab0b338859b54573b7406c28e56da2fec0f9d23037ba9faff4800e6b217fe3e5"}},{"ruleId":"D2","level":"warning","message":{"text":"SubscriptionsApplication.DeliverSubscriptionTrialEventInternalAsync (cognitive 20): SubscriptionsApplication.DeliverSubscriptionTrialEventInternalAsync has cognitive complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_TrialEvents.cs"},"region":{"startLine":55}}}],"partialFingerprints":{"codehealthFindingId/v1":"9f4667316a73e8d420ea6a2764b9a64e47a55d9da1f070d0075b612404a15fa7"}},{"ruleId":"D2","level":"warning","message":{"text":"RequestExtensions.ExpandRouteTemplate (cognitive 19): RequestExtensions.ExpandRouteTemplate has cognitive complexity 19 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/Extensions/RequestExtensions.cs"},"region":{"startLine":331}}}],"partialFingerprints":{"codehealthFindingId/v1":"f75595f176f08f3cdd71eb78bf31c4c53efecdbe5516133c0278a3bf3513176d"}},{"ruleId":"D2","level":"warning","message":{"text":"BookingRoot.OnStateChanged (cognitive 19): BookingRoot.OnStateChanged has cognitive complexity 19 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/BookingsDomain/BookingRoot.cs"},"region":{"startLine":99}}}],"partialFingerprints":{"codehealthFindingId/v1":"8334325bd2be26f014104d517bddd2922953c57fc1cfe041789643dc9e077b31"}},{"ruleId":"D2","level":"warning","message":{"text":"NativeIdentityServerOpenIdConnectService.AuthorizeAsync (cognitive 19): NativeIdentityServerOpenIdConnectService.AuthorizeAsync has cognitive complexity 19 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerOpenIdConnectService.cs"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"2bc6def35c34ac8d7fdbbdab0af8b59ed00618e9e45ff7fa147adbd1e59ebf36"}},{"ruleId":"D2","level":"warning","message":{"text":"AuthTokensApplication.IssueTokensAsync (cognitive 19): AuthTokensApplication.IssueTokensAsync has cognitive complexity 19 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/AuthTokensApplication.cs"},"region":{"startLine":43}}}],"partialFingerprints":{"codehealthFindingId/v1":"48a373979702f16b87842345c5d4067ba981b1bb8f6b1e65e04921fae167d7c0"}},{"ruleId":"D2","level":"warning","message":{"text":"SubscriptionRoot.DeliverManagedTrialScheduledEventAsync (cognitive 19): SubscriptionRoot.DeliverManagedTrialScheduledEventAsync has cognitive complexity 19 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.Trials.cs"},"region":{"startLine":49}}}],"partialFingerprints":{"codehealthFindingId/v1":"e86004edd9da29d19715f461527604936752ab6a456726afa98c335e39628e32"}},{"ruleId":"D2","level":"warning","message":{"text":"JsonClient.GetTypedResponseAsync (cognitive 18): JsonClient.GetTypedResponseAsync has cognitive complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/Clients/JsonClient.cs"},"region":{"startLine":257}}}],"partialFingerprints":{"codehealthFindingId/v1":"c24a9c0048ca16adff80169e4dd0c9a9b582670f571f985e29aa4705769c5bfc"}},{"ruleId":"D2","level":"warning","message":{"text":"JsonClient.ToUrlEncodedContent (cognitive 18): JsonClient.ToUrlEncodedContent has cognitive complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/Clients/JsonClient.cs"},"region":{"startLine":395}}}],"partialFingerprints":{"codehealthFindingId/v1":"3b51e84dee2e750823b67e9e32fbf6b75f0b3615c93a4bc47955c777b65ef9ef"}},{"ruleId":"D2","level":"warning","message":{"text":"DataAnnotationsSchemaFilterExtensions.CollateRequiredProperties (cognitive 18): DataAnnotationsSchemaFilterExtensions.CollateRequiredProperties has cognitive complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Documentation/DataAnnotationsSchemaFilterExtensions.cs"},"region":{"startLine":20}}}],"partialFingerprints":{"codehealthFindingId/v1":"2ba704efbf0444d00abd952986f28e32886ab27034f54e8372f4f5901d70608c"}},{"ruleId":"D2","level":"warning","message":{"text":"StubCloudWorkerService.DrainMessageBusTopicsAsync (cognitive 18): StubCloudWorkerService.DrainMessageBusTopicsAsync has cognitive complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/TestingStubApiHost/Workers/StubCloudWorkerService.cs"},"region":{"startLine":145}}}],"partialFingerprints":{"codehealthFindingId/v1":"88925312056b0a6b76128d433c9ac28e317a07557657c15172647fc17b026e72"}},{"ruleId":"D2","level":"warning","message":{"text":"EndUsersApplication.AddMembershipAsync (cognitive 18): EndUsersApplication.AddMembershipAsync has cognitive complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersApplication/EndUsersApplication.DomainEventHandlers.cs"},"region":{"startLine":95}}}],"partialFingerprints":{"codehealthFindingId/v1":"e83585ea9f56507d6d43e7c6343b0f66a9566d603c45056d754ab2153713947c"}},{"ruleId":"D2","level":"warning","message":{"text":"NativeIdentityServerCredentialsService.AuthenticateAsync (cognitive 17): NativeIdentityServerCredentialsService.AuthenticateAsync has cognitive complexity 17 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerCredentialsService.cs"},"region":{"startLine":92}}}],"partialFingerprints":{"codehealthFindingId/v1":"5a3dc4259a1b12e327e4b329939bb24adf3ab5a28dd00d28fe91c2ad0eb71268"}},{"ruleId":"D2","level":"warning","message":{"text":"NativeIdentityServerCredentialsService.RegisterPersonAsync (cognitive 17): NativeIdentityServerCredentialsService.RegisterPersonAsync has cognitive complexity 17 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerCredentialsService.cs"},"region":{"startLine":214}}}],"partialFingerprints":{"codehealthFindingId/v1":"fb23b3bdca7f0328f843946dbe8d78ff3d1d286082c10c7364a69254c84bd583"}},{"ruleId":"D2","level":"warning","message":{"text":"NativeIdentityServerOAuth2ClientService.ConsentToClientAsync (cognitive 17): NativeIdentityServerOAuth2ClientService.ConsentToClientAsync has cognitive complexity 17 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerOAuth2ClientService.cs"},"region":{"startLine":90}}}],"partialFingerprints":{"codehealthFindingId/v1":"6a0bd68a49d7f8b7a346acfb33ed794a3365505db81d679f5a6c18387224f75e"}},{"ruleId":"D2","level":"warning","message":{"text":"InvitationsApplication.InviteGuestByEmailInternalAsync (cognitive 17): InvitationsApplication.InviteGuestByEmailInternalAsync has cognitive complexity 17 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersApplication/InvitationsApplication.cs"},"region":{"startLine":141}}}],"partialFingerprints":{"codehealthFindingId/v1":"1bf655dadf8e2e2c69cb23a8a84275e58f52cee3f326e2a2ad5dc99205c9777f"}},{"ruleId":"D2","level":"warning","message":{"text":"MappingExtensions.GetMembers (cognitive 16): MappingExtensions.GetMembers has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common/Extensions/MappingExtensions.cs"},"region":{"startLine":219}}}],"partialFingerprints":{"codehealthFindingId/v1":"3264a494cf04d110b2791387caa8869ddf9d5a9c30532dbf58f94d86cbbf0983"}},{"ruleId":"D2","level":"warning","message":{"text":"StringExtensions.ToSnakeCase (cognitive 16): StringExtensions.ToSnakeCase has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common/Extensions/StringExtensions.cs"},"region":{"startLine":531}}}],"partialFingerprints":{"codehealthFindingId/v1":"927e0154892262d9e2f75f453b43809a3d731f4b30c786eb129368c374cf1877"}},{"ruleId":"D2","level":"warning","message":{"text":"RequestExtensions.PopulateQueryString (cognitive 16): RequestExtensions.PopulateQueryString has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/Extensions/RequestExtensions.cs"},"region":{"startLine":433}}}],"partialFingerprints":{"codehealthFindingId/v1":"d162f235445fdc29ab3da80a09fe5303e15765ea41151065bde53f87d56ada38"}},{"ruleId":"D2","level":"warning","message":{"text":"RolesAndFeaturesAuthorizationHandler.HandleRequirementAsync (cognitive 16): RolesAndFeaturesAuthorizationHandler.HandleRequirementAsync has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Auth/RolesAndFeaturesAuthorizationHandler.cs"},"region":{"startLine":20}}}],"partialFingerprints":{"codehealthFindingId/v1":"fe4120d5482f0f21dd6529dd1e0902ad741ba4a14931a7f4baaae8666629e437"}},{"ruleId":"D2","level":"warning","message":{"text":"NativeIdentityServerCredentialsService.AssociateMfaAuthenticatorForUserAsync (cognitive 16): NativeIdentityServerCredentialsService.AssociateMfaAuthenticatorForUserAsync has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerCredentialsService.Mfa.cs"},"region":{"startLine":20}}}],"partialFingerprints":{"codehealthFindingId/v1":"400f2d87c88a97c00eea62df94eb04b35222d198e2dd1064d1cad866397dfddb"}},{"ruleId":"D2","level":"warning","message":{"text":"AuthTokensApplication.RefreshTokenAsync (cognitive 16): AuthTokensApplication.RefreshTokenAsync has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/AuthTokensApplication.cs"},"region":{"startLine":156}}}],"partialFingerprints":{"codehealthFindingId/v1":"8697d1c012d72ae8121fcb10fe5177270c5a933368a346bc5fdce7283ce65759"}},{"ruleId":"D2","level":"warning","message":{"text":"EndUserRoot.UnassignPlatformRoles (cognitive 16): EndUserRoot.UnassignPlatformRoles has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersDomain/EndUserRoot.RolesAndFeatures.cs"},"region":{"startLine":424}}}],"partialFingerprints":{"codehealthFindingId/v1":"73ec6e10424e5397908790e1cd788f712ed7db5cb9609ed498ea6ec8e7c67ebe"}},{"ruleId":"D2","level":"warning","message":{"text":"StepSchema.Create (cognitive 16): StepSchema.Create has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsDomain/StepSchema.cs"},"region":{"startLine":14}}}],"partialFingerprints":{"codehealthFindingId/v1":"928e1ffce74b5fb92e24380a794b4dc8923dfa68b7740397d7c4402bb15ba224"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: Common/Annotations.cs: FileTooLong \u2014 534 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common/Annotations.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"b9b79a43c00614c2dc16c69c94b40a0d70b79526b4aa6b144c1052e47084dc37"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: IdentityDomain/PersonCredentialRoot.cs: FileTooLong \u2014 602 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"94b2fa93503de82aea9f7e01ae7e9e39993185d1b36955ee1fe57cc3d6b0c6ad"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: OrganizationsApplication/OrganizationsApplication.cs: FileTooLong \u2014 530 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"4b6d9f9b054dcfa872a3cdba91fc08bbf6f74ccff452b29a93d7f8094bfb8167"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: SubscriptionsApplication/SubscriptionsApplication.cs: FileTooLong \u2014 525 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"4b9da8db90386b4c19ac4042c3a7b9b66b79e787eb42f53b588ec77b63da1a6d"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: SubscriptionsDomain/SubscriptionRoot.cs: FileTooLong \u2014 789 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"2445cd91f69a1b6ed6280f3d813d2fff03f4da1c44af87afe11a10d845652dc1"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: InProcessInMemStore: TooManyMethods \u2014 398 lines, 34 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/InProcessInMemStore.IBlobStore.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"98d4d0314f20856e958b2ac60b5cf58b1bf149c976b713cd25aadbca5dbc14e3"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: LocalMachineJsonFileStore: TooManyMethods \u2014 702 lines, 52 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/LocalMachineJsonFileStore.IBlobStore.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"95a6fb02cb300aefd199790ae046ffae98ffa15d28a0f4306a097716cf64c8b9"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: DateTimeExtensions: TooManyMethods \u2014 154 lines, 32 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common/Extensions/DateTimeExtensions.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"d4af29c45b5e94d2e8000d6b4e776a5677499aa43443b46787f7eafd9617edfa"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: MappingExtensions: TooManyMethods \u2014 460 lines, 31 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common/Extensions/MappingExtensions.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"af94447b1d38fa2123f01785b524a725c82d16226de36145875513f1f52d4539"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: StringExtensions: TooManyMethods \u2014 184 lines, 32 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common/Extensions/StringExtensions.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"c5a9e13e7cb4c2bc37722e44605f3d83fee752913af8338bc349fd5667e49166"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: Optional: TooManyMethods \u2014 195 lines, 36 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common/Optional.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"590ebec782659d3dc9d0aaf167e0810034501eb499f11de6f990f0430d1e9c02"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: JsonClient: TooManyMethods \u2014 404 lines, 33 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/Clients/JsonClient.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"8bf3ea3aba048757a1c5b321d19c9dc5d74965a5eb82ff4845cad317794d7ce8"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: TestingWebApi: TooManyMethods \u2014 332 lines, 44 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/ApiHost1/Api/TestingOnly/TestingWebApi.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"ececd7daff91df3dac0a4f421e9a16d4de1807c837d25d3048a5e0123ae80a49"}},{"ruleId":"D3","level":"warning","message":{"text":"ClassTooLong: AncillaryApplication: ClassTooLong \u2014 477 lines, 23 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryApplication/AncillaryApplication.Auditing.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"874bc2b1924e2041e3bdef1588d6fe18f555c87151bbde6fdd14f576cafc0dff"}},{"ruleId":"D3","level":"warning","message":{"text":"ClassTooLong: EndUsersApplication: ClassTooLong \u2014 594 lines, 30 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersApplication/EndUsersApplication.DomainEventHandlers.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"52ea77725d51bcfa117f554690b4609ebfad0a0c29bf05e465a2b714cbdaff8c"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: EndUserRoot: TooManyMethods \u2014 619 lines, 36 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersDomain/EndUserRoot.RolesAndFeatures.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"7c97188693a5dd4b9e8c5c4a4c14e1537a5469882bd565b161cfe538c37f4e64"}},{"ruleId":"D3","level":"warning","message":{"text":"ClassTooLong: NativeIdentityServerCredentialsService: ClassTooLong \u2014 726 lines, 24 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerCredentialsService.Mfa.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"12fcbdfc8ad9826185c967e62b164c0fbd58c226a4d93419dc726aa15bad8db1"}},{"ruleId":"D3","level":"warning","message":{"text":"ClassTooLong: NativeIdentityServerOpenIdConnectService: ClassTooLong \u2014 420 lines, 9 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerOpenIdConnectService.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"aafa0f7cb6733f8e77361b2e9736942faf23b169bed74d7df9949f68913ca87d"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: PersonCredentialRoot: TooManyMethods \u2014 584 lines, 34 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"6e5e5285e940b7d39f6259d5251d10a5248f149fbf4e264b4d119fbc6f0b4f49"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: OrganizationsApplication: TooManyMethods \u2014 629 lines, 39 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.DomainEventHandlers.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"99debd1edca10bbdecc42bdb0aeae082cb1263045fbc91407faec1c806ef3a67"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: OrganizationRoot: TooManyMethods \u2014 415 lines, 38 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsDomain/OrganizationRoot.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"67b1b95ed567c6a2cfbe38bc952fdc033fc480de2db665adbf9810e7b5e9607a"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: SubscriptionsApplication: TooManyMethods \u2014 1182 lines, 47 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"80a9049039fc2fa7c7f64f358973538829b200c7807e37bb9e48e128750a1eec"}},{"ruleId":"D3","level":"warning","message":{"text":"TooManyMethods: SubscriptionRoot: TooManyMethods \u2014 956 lines, 55 methods."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.Quotas.cs"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"691aec404eeae23212454eb8c6a3e1a425d603d0798dc0e29f64c0bf070440dc"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (45 lines \u00D7 2): src/Framework/Tools/Tools.Generators.Web.Api.Authorization/AuthorizationAttributeGenerator.cs:163-196 | src/Framework/Tools/Tools.Generators.Web.Api.Authorization/AuthorizationAttributeGenerator.cs:202-246"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Tools/Tools.Generators.Web.Api.Authorization/AuthorizationAttributeGenerator.cs"},"region":{"startLine":163}}}],"partialFingerprints":{"codehealthFindingId/v1":"4cf5e1578f3afdf38abcb0a6dc95108589e6bfa9bb65cdfdbe370294b99f5d50"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (41 lines \u00D7 3): src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:91-106 | src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:132-147 | src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:342-382"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs"},"region":{"startLine":91}}}],"partialFingerprints":{"codehealthFindingId/v1":"73a23af4373bafb6c222ba2a10db5cc2f27319a1b78d1efe074e4b95954afb69"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (34 lines \u00D7 3): src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:283-316 | src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:411-425 | src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:454-480"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs"},"region":{"startLine":283}}}],"partialFingerprints":{"codehealthFindingId/v1":"fac9ba89eac6a1d9d237117f4c88bda59fba4b557928ca03c1e02d781ce04b7a"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (33 lines \u00D7 2): src/Framework/Domain/Domain.Common/Entities/AggregateRootBase.cs:325-357 | src/Framework/Domain/Domain.Common/Entities/EntityBase.cs:229-261"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Domain/Domain.Common/Entities/AggregateRootBase.cs"},"region":{"startLine":325}}}],"partialFingerprints":{"codehealthFindingId/v1":"2cac7a9e83fcb0da9621d883c99f02d702d6c21fbe52df6473d3344a39f1acba"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (24 lines \u00D7 2): src/Subdomains/Generic/EndUsersApplication/EndUsersApplication.DomainEventHandlers.cs:208-231 | src/Subdomains/Generic/EndUsersApplication/EndUsersApplication.DomainEventHandlers.cs:263-286"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersApplication/EndUsersApplication.DomainEventHandlers.cs"},"region":{"startLine":208}}}],"partialFingerprints":{"codehealthFindingId/v1":"e3a9359bcb7290bfeddc5422e521f568531c44be7bb58f9742c8ea5379cbed5f"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (22 lines \u00D7 2): src/Subdomains/Generic/EndUsersApplication/EndUsersApplication.cs:82-103 | src/Subdomains/Generic/EndUsersApplication/EndUsersApplication.cs:467-488"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersApplication/EndUsersApplication.cs"},"region":{"startLine":82}}}],"partialFingerprints":{"codehealthFindingId/v1":"77d5e0d0e3ce35bcc268e2fa2d2792012c3ada3d6ed0fd7617c0982993922910"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (20 lines \u00D7 4): src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:212-230 | src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:258-277 | src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:387-405 | src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:430-448"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs"},"region":{"startLine":212}}}],"partialFingerprints":{"codehealthFindingId/v1":"3037be4c5da8f44949c6b9180e5f3fb959c09cd8382633b23e5a980a9999e417"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (20 lines \u00D7 2): src/Subdomains/Generic/IdentityDomain/MfaAuthenticator.cs:298-317 | src/Subdomains/Generic/IdentityDomain/MfaAuthenticator.cs:368-387"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/MfaAuthenticator.cs"},"region":{"startLine":298}}}],"partialFingerprints":{"codehealthFindingId/v1":"f4c1fe056fb6de90d529158ade4ad453a2fa7d0743df662d4fa37c33fa39aa3d"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (20 lines \u00D7 2): src/Framework/Tools/Tools.Analyzers.Common/Extensions/SyntaxFilterExtensions.cs:38-57 | src/Framework/Tools/Tools.Analyzers.Common/Extensions/SyntaxFilterExtensions.cs:91-110"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Tools/Tools.Analyzers.Common/Extensions/SyntaxFilterExtensions.cs"},"region":{"startLine":38}}}],"partialFingerprints":{"codehealthFindingId/v1":"c2bef2031251b7250f22f2da77a1b62c45ce2227b24754472ac862d4a547ae7e"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (19 lines \u00D7 4): src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Auth/AnonymousAuthenticationHandler.cs:82-100 | src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Auth/AnonymousAuthenticationHandler.cs:114-132 | src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Auth/AnonymousAuthenticationHandler.cs:145-163 | src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Auth/AnonymousAuthenticationHandler.cs:177-195"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Auth/AnonymousAuthenticationHandler.cs"},"region":{"startLine":82}}}],"partialFingerprints":{"codehealthFindingId/v1":"2d7685d29e2221f9ad4ceb11b022cfce1d5d168bc79c3333d1659a876d70d601"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (19 lines \u00D7 2): src/Subdomains/Generic/AncillaryDomain/EmailDeliveryRoot.cs:128-146 | src/Subdomains/Generic/AncillaryDomain/SmsDeliveryRoot.cs:117-135"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryDomain/EmailDeliveryRoot.cs"},"region":{"startLine":128}}}],"partialFingerprints":{"codehealthFindingId/v1":"b4e6c7f8fdcf85c8402e7f836a2674968cd1b73503ad6ce03023d5f3b0eec878"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (18 lines \u00D7 2): src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs:693-710 | src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs:967-984"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs"},"region":{"startLine":693}}}],"partialFingerprints":{"codehealthFindingId/v1":"89082b819388cf3f0dcd05e99a1e519d968a2cd0f80901b4786a55d93d1c8453"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (18 lines \u00D7 2): src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:19-36 | src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:47-64"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs"},"region":{"startLine":19}}}],"partialFingerprints":{"codehealthFindingId/v1":"7937b896ba0ebd4f10159bf5a70d2bf41fa92de7dc031656c77a288a6c9565bb"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (18 lines \u00D7 2): src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/LocalMachineJsonFileStore.IMessageBusStore.cs:249-266 | src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/LocalMachineJsonFileStore.IQueueStore.cs:171-188"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/LocalMachineJsonFileStore.IMessageBusStore.cs"},"region":{"startLine":249}}}],"partialFingerprints":{"codehealthFindingId/v1":"dc527b3b4135561587601e97967f288fbefa3938a0d3676f30ce7fbd78a942e9"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (17 lines \u00D7 2): src/Subdomains/Generic/IdentityApplication/AuthTokensApplication.cs:73-88 | src/Subdomains/Generic/IdentityApplication/AuthTokensApplication.cs:199-215"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/AuthTokensApplication.cs"},"region":{"startLine":73}}}],"partialFingerprints":{"codehealthFindingId/v1":"89ad9ae26b50b9ebc093d9c566910dfe022d2224bb2173fda7a7d6ef9c9ee7f8"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (17 lines \u00D7 2): src/Subdomains/Generic/IdentityDomain/APIKeyKeep.cs:16-32 | src/Subdomains/Generic/IdentityDomain/APIKeyKeep.cs:64-80"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/APIKeyKeep.cs"},"region":{"startLine":16}}}],"partialFingerprints":{"codehealthFindingId/v1":"123a2df79a54b3af3ad1321fb0d64d8a05335cb2a75d239b09c2f45a1014dd9b"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (17 lines \u00D7 2): src/Subdomains/Shared/Infrastructure.Shared/ApplicationServices/SimpleBillingProvider.cs:63-79 | src/Subdomains/Shared/Infrastructure.Shared/ApplicationServices/SimpleBillingProvider.cs:92-107"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Infrastructure.Shared/ApplicationServices/SimpleBillingProvider.cs"},"region":{"startLine":63}}}],"partialFingerprints":{"codehealthFindingId/v1":"6235710840765d94135dd5e2cd50c3def23dfa9a67789dae64cda7f7979f83e6"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (17 lines \u00D7 2): src/Subdomains/Generic/OrganizationsApplication/OnboardingApplication.cs:49-65 | src/Subdomains/Generic/OrganizationsApplication/OnboardingApplication.cs:229-244"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsApplication/OnboardingApplication.cs"},"region":{"startLine":49}}}],"partialFingerprints":{"codehealthFindingId/v1":"e62ff0a9be6d5fc00311bb623478bea9117b3cc564eaee0c26c41b2296dab9ed"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (17 lines \u00D7 2): src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:155-171 | src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs:324-340"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs"},"region":{"startLine":155}}}],"partialFingerprints":{"codehealthFindingId/v1":"f7b364ecc493cd4adccdf1ff6b694268a91d08cf18706be74250e567f997e112"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (17 lines \u00D7 2): src/ExternalAdapters/Infrastructure.External.TestingOnly/ApplicationServices/FakeOAuth2Service.cs:86-102 | src/ExternalAdapters/Infrastructure.External.TestingOnly/ApplicationServices/FakeOAuth2Service.cs:106-122"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/ExternalAdapters/Infrastructure.External.TestingOnly/ApplicationServices/FakeOAuth2Service.cs"},"region":{"startLine":86}}}],"partialFingerprints":{"codehealthFindingId/v1":"1f5e063a1963d64d7ce99f8349cf23f6c009068950d1c58f537ad7218a5c06f7"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Subdomains/Generic/AncillaryInfrastructure/Persistence/ReadModels/EmailDeliveryProjection.cs:60-75 | src/Subdomains/Generic/AncillaryInfrastructure/Persistence/ReadModels/SmsDeliveryProjection.cs:55-70"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure/Persistence/ReadModels/EmailDeliveryProjection.cs"},"region":{"startLine":60}}}],"partialFingerprints":{"codehealthFindingId/v1":"6cec4032976f0aa4e5d8ca774efbf7b6b665e8868ab385e5390caafa98d02dda"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Framework/Infrastructure/Infrastructure.Hosting.Common/Recording/HostRecorder.cs:78-93 | src/Framework/Infrastructure/Infrastructure.Hosting.Common/Recording/TracingOnlyRecorder.cs:29-44"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Hosting.Common/Recording/HostRecorder.cs"},"region":{"startLine":78}}}],"partialFingerprints":{"codehealthFindingId/v1":"747824ab1d1c1c79af63677bacf8b6e704ff079bb8b68c388b0ff4eef7ea8d61"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Framework/Infrastructure/Infrastructure.Hosting.Common/Recording/HostRecorder.cs:246-261 | src/Framework/Infrastructure/Infrastructure.Hosting.Common/Recording/TracingOnlyRecorder.cs:187-202"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Hosting.Common/Recording/HostRecorder.cs"},"region":{"startLine":246}}}],"partialFingerprints":{"codehealthFindingId/v1":"747824ab1d1c1c79af63677bacf8b6e704ff079bb8b68c388b0ff4eef7ea8d61"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Subdomains/Generic/IdentityApplication/AuthTokensApplication.cs:110-125 | src/Subdomains/Generic/IdentityApplication/AuthTokensApplication.cs:215-230"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/AuthTokensApplication.cs"},"region":{"startLine":110}}}],"partialFingerprints":{"codehealthFindingId/v1":"4eea1b026ed31f4c9603ccdfa4cf863c3c7f0b25af95fc2cd402f8e14f164690"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Subdomains/Generic/IdentityDomain/OpenIdConnectAuthorizationRoot.cs:213-228 | src/Subdomains/Generic/IdentityDomain/OpenIdConnectAuthorizationRoot.cs:238-253"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/OpenIdConnectAuthorizationRoot.cs"},"region":{"startLine":213}}}],"partialFingerprints":{"codehealthFindingId/v1":"23f1d57ce733e0d16aaa916613edc7176bf5d2cb773996615e0d1a10fbc49b25"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Subdomains/Generic/OrganizationsDomain/OrganizationRoot.cs:352-367 | src/Subdomains/Generic/OrganizationsDomain/OrganizationRoot.cs:719-734"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsDomain/OrganizationRoot.cs"},"region":{"startLine":352}}}],"partialFingerprints":{"codehealthFindingId/v1":"282f13be53bdb117eb3b96f688529e23ec36e1aa11a64ca0212016f373054ed1"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Subdomains/Generic/OrganizationsApplication/OnboardingApplication.cs:251-265 | src/Subdomains/Generic/OrganizationsApplication/OnboardingApplication.cs:387-402"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsApplication/OnboardingApplication.cs"},"region":{"startLine":251}}}],"partialFingerprints":{"codehealthFindingId/v1":"bc2cbb5d4d7dd054b1297e0a58bd93a1a4a6de35c2b8d19f0513cd52e17078d4"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.cs:62-77 | src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.cs:596-611"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.cs"},"region":{"startLine":62}}}],"partialFingerprints":{"codehealthFindingId/v1":"b533134961585b9f2b642aca0c34091fb810714c8f91ed63d0e2e5db85653566"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.cs:502-517 | src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.cs:524-539"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.cs"},"region":{"startLine":502}}}],"partialFingerprints":{"codehealthFindingId/v1":"b533134961585b9f2b642aca0c34091fb810714c8f91ed63d0e2e5db85653566"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.DomainEventHandlers.cs:190-204 | src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.DomainEventHandlers.cs:218-233"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.DomainEventHandlers.cs"},"region":{"startLine":190}}}],"partialFingerprints":{"codehealthFindingId/v1":"4256aec5aba31eb5147d5423274c07bdbe5cd8ce3b12ec3d092af9e47bb29110"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_DomainEventHandlers.cs:70-85 | src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_DomainEventHandlers.cs:112-127"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_DomainEventHandlers.cs"},"region":{"startLine":70}}}],"partialFingerprints":{"codehealthFindingId/v1":"720420d8ddf788a5f82a6ccc9e9f26d9e550f0d1bc938d6bd24caf85f145d584"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_TrialEvents.cs:96-111 | src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_TrialEvents.cs:128-143"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_TrialEvents.cs"},"region":{"startLine":96}}}],"partialFingerprints":{"codehealthFindingId/v1":"5609d41ddaf8f68eb0824173da8c6ed62c981c9ba34c3092f3bf757c569439f2"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (16 lines \u00D7 2): src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs:341-356 | src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs:363-378"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs"},"region":{"startLine":341}}}],"partialFingerprints":{"codehealthFindingId/v1":"a047f9f9c6df0009539d4cac7b997a50a0e5e42b57b4456619aa393b2e33ac75"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (15 lines \u00D7 2): src/Subdomains/Generic/AncillaryInfrastructure/Api/Emails/SearchAllEmailDeliveriesRequestValidator.cs:14-28 | src/Subdomains/Generic/AncillaryInfrastructure/Api/Smses/SearchAllSmsDeliveriesRequestValidator.cs:14-28"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure/Api/Emails/SearchAllEmailDeliveriesRequestValidator.cs"},"region":{"startLine":14}}}],"partialFingerprints":{"codehealthFindingId/v1":"f84193a9bcb3bd7a40913fcd998867c8d35363dd4688fd3360e4761fddd6acd5"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (15 lines \u00D7 2): src/Subdomains/Generic/AncillaryDomain/EmailDeliveryRoot.cs:85-99 | src/Subdomains/Generic/AncillaryDomain/SmsDeliveryRoot.cs:81-95"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryDomain/EmailDeliveryRoot.cs"},"region":{"startLine":85}}}],"partialFingerprints":{"codehealthFindingId/v1":"85d354e37912afa6323822e77aa8fc63e7678cd3b4bca81d8cf01c75c5df62fc"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (15 lines \u00D7 2): src/Subdomains/Generic/IdentityApplication/AuthTokensApplication.cs:289-303 | src/Subdomains/Generic/ImagesApplication/ImagesApplication.cs:42-56"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/AuthTokensApplication.cs"},"region":{"startLine":289}}}],"partialFingerprints":{"codehealthFindingId/v1":"e33a982b430219eba1d6a2abfc81b93fba9e3556a2a87cbe36bdf600cca2a076"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (15 lines \u00D7 2): src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.DomainEventHandlers.cs:87-101 | src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.DomainEventHandlers.cs:117-131"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.DomainEventHandlers.cs"},"region":{"startLine":87}}}],"partialFingerprints":{"codehealthFindingId/v1":"cdec0ece661898d8cd83ed37529dbfbe21039e8fe86a9be618ab3513d5bad075"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (14 lines \u00D7 5): src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerApiKeyService.cs:192-205 | src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerCredentialsService.PasswordReset.cs:153-166 | src/Subdomains/Generic/IdentityApplication/AuthTokensApplication.cs:288-301 | src/Subdomains/Generic/UserProfilesApplication/UserProfilesApplication.DomainEventHandlers.cs:69-82 | src/Subdomains/Generic/ImagesApplication/ImagesApplication.cs:41-54"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerApiKeyService.cs"},"region":{"startLine":192}}}],"partialFingerprints":{"codehealthFindingId/v1":"fc0cbc6260c34309762acd5a2a81cca65bf1e90a55acd347321436950ad96df5"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (14 lines \u00D7 3): src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerApiKeyService.cs:251-264 | src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.DomainEventHandlers.cs:189-202 | src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.DomainEventHandlers.cs:217-230"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerApiKeyService.cs"},"region":{"startLine":251}}}],"partialFingerprints":{"codehealthFindingId/v1":"e7ca1161b23f39baa24d50abba56b310e862ba82410db7dd5ee4a879494c4fe7"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (14 lines \u00D7 3): src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.SubscriptionOwningEntity.cs:16-29 | src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.SubscriptionOwningEntity.cs:35-48 | src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.SubscriptionOwningEntity.cs:88-101"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsApplication/OrganizationsApplication.SubscriptionOwningEntity.cs"},"region":{"startLine":16}}}],"partialFingerprints":{"codehealthFindingId/v1":"d1750aa1c0793b4814e3fe59daa063672e0249a89cf5f95ecc5f69992e88ecb2"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (14 lines \u00D7 2): src/Framework/Infrastructure/Infrastructure.Web.Api.Common/RequestTenantDetective.cs:84-97 | src/Framework/Infrastructure/Infrastructure.Web.Api.Common/RequestTenantDetective.cs:128-141"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/RequestTenantDetective.cs"},"region":{"startLine":84}}}],"partialFingerprints":{"codehealthFindingId/v1":"3d1bda3e94d425e1549aa21233f437419737a9e3b04e86364d2ec660acf88e45"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (14 lines \u00D7 2): src/Subdomains/Core/CarsApplication/CarsApplication.cs:166-179 | src/Subdomains/Core/CarsApplication/CarsApplication.cs:235-248"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsApplication/CarsApplication.cs"},"region":{"startLine":166}}}],"partialFingerprints":{"codehealthFindingId/v1":"144f17d5ba01b6cb1c5f33962aae64918a8cb8d764f2587a05ae72a66a7d29cf"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (14 lines \u00D7 2): src/Subdomains/Core/BookingsDomain/BookingRoot.cs:141-154 | src/Subdomains/Core/BookingsDomain/BookingRoot.cs:163-176"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/BookingsDomain/BookingRoot.cs"},"region":{"startLine":141}}}],"partialFingerprints":{"codehealthFindingId/v1":"d9578ebfccedd22a05bc3af772c1b497e2e25baec022dcfbdd80932217d732a8"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (14 lines \u00D7 2): src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerApiKeyService.cs:158-171 | src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerCredentialsService.PasswordReset.cs:26-39"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityApplication/ApplicationServices/NativeIdentityServerApiKeyService.cs"},"region":{"startLine":158}}}],"partialFingerprints":{"codehealthFindingId/v1":"5f36b9bca67e94d0a29b264f7674430a702c9672c8026065aa0bcb9dd96e5fc7"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (14 lines \u00D7 2): src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs:258-271 | src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs:288-301"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs"},"region":{"startLine":258}}}],"partialFingerprints":{"codehealthFindingId/v1":"2fc10e5689627c99f674396354da13a3799dbab7fdfcc13ae4b1c92348c8dd89"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (12 lines \u00D7 2): src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/InProcessInMemStore.IEventStore.cs:27-38 | src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/LocalMachineJsonFileStore.IEventStore.cs:30-41"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/InProcessInMemStore.IEventStore.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"4a6f889b12324f81eb1de52cc844c577d6a49d1101b21c8f33d3bba85d743b53"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (11 lines \u00D7 2): src/Hosts/ApiHost1/Api/TestingOnly/ValidationsValidatedGetTestingOnlyRequestValidator.cs:14-24 | src/Hosts/ApiHost1/Api/TestingOnly/ValidationsValidatedPostTestingOnlyRequestValidator.cs:14-24"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/ApiHost1/Api/TestingOnly/ValidationsValidatedGetTestingOnlyRequestValidator.cs"},"region":{"startLine":14}}}],"partialFingerprints":{"codehealthFindingId/v1":"7504153a8066a402e3a1c83f4c02bd11490d1f45948b93398907dfa1e2cea535"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (11 lines \u00D7 2): src/Subdomains/Generic/AncillaryInfrastructure/Persistence/ReadModels/EmailDeliveryProjection.cs:26-36 | src/Subdomains/Generic/AncillaryInfrastructure/Persistence/ReadModels/SmsDeliveryProjection.cs:26-36"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure/Persistence/ReadModels/EmailDeliveryProjection.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"70736b65d56e4c94a1e40c44090f1b7d3187187ce3c6d463c87bc405a2abb8c0"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (11 lines \u00D7 2): src/Subdomains/Generic/IdentityInfrastructure/Api/MFA/AssociatePasswordMfaAuthenticatorForCallerRequestValidator.cs:16-26 | src/Subdomains/Generic/IdentityInfrastructure/Api/MFA/ConfirmPasswordMfaAuthenticatorForCallerRequestValidator.cs:16-26"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure/Api/MFA/AssociatePasswordMfaAuthenticatorForCallerRequestValidator.cs"},"region":{"startLine":16}}}],"partialFingerprints":{"codehealthFindingId/v1":"c9150e6b1f3a7dc7d5fc3eb965504b39ff223a58301ced73fc2cdca86ecb036f"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (11 lines \u00D7 2): src/Subdomains/Generic/IdentityInfrastructure/Api/MFA/ConfirmPasswordMfaAuthenticatorForCallerRequestValidator.cs:27-37 | src/Subdomains/Generic/IdentityInfrastructure/Api/MFA/VerifyPasswordMfaAuthenticatorForCallerRequestValidator.cs:22-32"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure/Api/MFA/ConfirmPasswordMfaAuthenticatorForCallerRequestValidator.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"c39cf153d01b1a4e7d1915c1cbd96dfd42b017b9cf71c3c3e6e2dc8c4e542c46"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (11 lines \u00D7 2): src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/InProcessInMemStore.IEventStore.cs:81-89 | src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/LocalMachineJsonFileStore.IEventStore.cs:87-97"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/InProcessInMemStore.IEventStore.cs"},"region":{"startLine":81}}}],"partialFingerprints":{"codehealthFindingId/v1":"e6f8a6b3ea1344ec1de5022dddf7def7ca574de72204f37d4ba3da6b1355514c"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (10 lines \u00D7 2): src/Framework/Infrastructure/Infrastructure.Persistence.Common/MessageBusTopicStore.cs:83-92 | src/Framework/Infrastructure/Infrastructure.Persistence.Common/MessageQueueStore.cs:87-96"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Persistence.Common/MessageBusTopicStore.cs"},"region":{"startLine":83}}}],"partialFingerprints":{"codehealthFindingId/v1":"75b99b2700596602565f96a99b3f2d3bdf99ec514e7c33e9dbf41b45942a7fd6"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (10 lines \u00D7 2): src/Subdomains/Generic/IdentityDomain/AuthTokensRoot.cs:132-141 | src/Subdomains/Generic/IdentityDomain/AuthTokensRoot.cs:145-154"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/AuthTokensRoot.cs"},"region":{"startLine":132}}}],"partialFingerprints":{"codehealthFindingId/v1":"9e4233ff551d84c9142887313ab7f590e34c9b3bde12059ba2ba31b40dad8e43"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (10 lines \u00D7 2): src/Subdomains/Generic/OrganizationsInfrastructure/Api/Organizations/AssignRolesToOrganizationRequestValidator.cs:13-22 | src/Subdomains/Generic/OrganizationsInfrastructure/Api/Organizations/UnassignRolesFromOrganizationRequestValidator.cs:13-22"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure/Api/Organizations/AssignRolesToOrganizationRequestValidator.cs"},"region":{"startLine":13}}}],"partialFingerprints":{"codehealthFindingId/v1":"a7d84d6bd6883fa407758813cd213b0aec69c92ad712dcfd2a9039452ac233d4"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (9 lines \u00D7 3): src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs:45-53 | src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs:70-78 | src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs:102-110"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs"},"region":{"startLine":45}}}],"partialFingerprints":{"codehealthFindingId/v1":"afd4b161c9d19b4e9ae14402f48b5f0eaef39917eaae5bccfdfc7219e4c79b50"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (9 lines \u00D7 2): src/Subdomains/Generic/EndUsersInfrastructure/Api/EndUsers/AssignPlatformRolesRequestValidator.cs:13-21 | src/Subdomains/Generic/EndUsersInfrastructure/Api/EndUsers/UnassignPlatformRolesRequestValidator.cs:13-21"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersInfrastructure/Api/EndUsers/AssignPlatformRolesRequestValidator.cs"},"region":{"startLine":13}}}],"partialFingerprints":{"codehealthFindingId/v1":"2bd51d2c5f174ff36fad970be8d343793fd0100234cc1302491d1e764ffaa09c"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (8 lines \u00D7 2): src/Subdomains/Generic/AncillaryApplication/RecordingApplication.cs:22-29 | src/Subdomains/Generic/AncillaryApplication/RecordingApplication.cs:35-42"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryApplication/RecordingApplication.cs"},"region":{"startLine":22}}}],"partialFingerprints":{"codehealthFindingId/v1":"e4b942830323ccebece8d4a8241f489c1352d4ecb27965b3fcdcbf87ec127a49"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (8 lines \u00D7 2): src/Framework/Infrastructure/Infrastructure.Hosting.Common/Recording/HostRecorder.cs:123-130 | src/Framework/Infrastructure/Infrastructure.Hosting.Common/Recording/TracingOnlyRecorder.cs:69-76"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Hosting.Common/Recording/HostRecorder.cs"},"region":{"startLine":123}}}],"partialFingerprints":{"codehealthFindingId/v1":"831e06b88681f1531e508a7677873c1c6d5545ceaab82a33d8f4a216ddb857a8"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (7 lines \u00D7 4): src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs:226-232 | src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs:244-250 | src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs:263-269 | src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs:285-291"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs"},"region":{"startLine":226}}}],"partialFingerprints":{"codehealthFindingId/v1":"2b81fce4647adc77fcfd4b3c21cd4193676f9f16500559972ec1e3469a01b88d"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (7 lines \u00D7 3): src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs:164-170 | src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs:183-189 | src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs:205-211"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Hosting.Common/Extensions/ServiceCollectionExtensions.cs"},"region":{"startLine":164}}}],"partialFingerprints":{"codehealthFindingId/v1":"c7bc5e9c4366673f6d664cbfd9fb13ad716d643bdf4ba16f0d8fd4cc90998c36"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (6 lines \u00D7 2): src/Hosts/WebsiteHost/Application/RecordingApplication.cs:32-37 | src/Hosts/WebsiteHost/Application/RecordingApplication.cs:83-87"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/Application/RecordingApplication.cs"},"region":{"startLine":32}}}],"partialFingerprints":{"codehealthFindingId/v1":"bcf9164ae470a886f0f77e7da318bd1be123bf25156531d7c1ff5d1ee137b8d9"}},{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (5 lines \u00D7 2): src/Framework/Domain/Domain.Common/Entities/AggregateRootBase.cs:64-68 | src/Framework/Domain/Domain.Common/Entities/EntityBase.cs:61-65"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Domain/Domain.Common/Entities/AggregateRootBase.cs"},"region":{"startLine":64}}}],"partialFingerprints":{"codehealthFindingId/v1":"724cc01bbe7180db4d2bb196bf2710c530465889cc347e8e7f0350df9b6073ac"}},{"ruleId":"D5","level":"warning","message":{"text":"Unstable project TestingStubApiHost: TestingStubApiHost has instability 0.97 with 1 dependents."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"78623e1e1e2ae74040eb083386e777312775f2722941aa8ebfc82ac0bb0e1e5a"}},{"ruleId":"D5","level":"error","message":{"text":"Layer violation: Application \u2192 Infrastructure: Application.Services.Shared (Application) references Application.Persistence.Interfaces (Infrastructure) \u2014 dependencies must point inward (Web \u2192 Application \u2192 Domain; Infrastructure implements inner interfaces, nothing depends outward on it)."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"e27aca6f791fcbe2465e67f515025cce032234649858060654062cf706cdb54c"}},{"ruleId":"D5","level":"error","message":{"text":"Layer violation: Application \u2192 Infrastructure: Application.Services.Shared (Application) references Application.Persistence.Shared (Infrastructure) \u2014 dependencies must point inward (Web \u2192 Application \u2192 Domain; Infrastructure implements inner interfaces, nothing depends outward on it)."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"e27aca6f791fcbe2465e67f515025cce032234649858060654062cf706cdb54c"}},{"ruleId":"D5","level":"error","message":{"text":"Layer violation: Domain \u2192 Application: Domain.Events.Shared (Domain) references Application.Resources.Shared (Application) \u2014 dependencies must point inward (Web \u2192 Application \u2192 Domain; Infrastructure implements inner interfaces, nothing depends outward on it)."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"bdde8dc15d1b343bf60f77d26f295b15c2d94fa4571a4d4b66feaf03ddd5c8cc"}},{"ruleId":"D5","level":"error","message":{"text":"Layer violation: Infrastructure \u2192 Web: Infrastructure.Hosting.Common (Infrastructure) references Infrastructure.Web.Api.Common (Web) \u2014 dependencies must point inward (Web \u2192 Application \u2192 Domain; Infrastructure implements inner interfaces, nothing depends outward on it)."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"25e8105d56986c37bdf3c1ef6ac9309d288528109932382d5e626f2d0f55cd9d"}},{"ruleId":"D5","level":"error","message":{"text":"Layer violation: Infrastructure \u2192 Web: Infrastructure.Hosting.Common (Infrastructure) references Infrastructure.Web.Api.Operations.Shared (Web) \u2014 dependencies must point inward (Web \u2192 Application \u2192 Domain; Infrastructure implements inner interfaces, nothing depends outward on it)."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"25e8105d56986c37bdf3c1ef6ac9309d288528109932382d5e626f2d0f55cd9d"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Tools.Generators.Common: Tools.Generators.Common: abstractness 0.00, instability 0.00, distance 1.00 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"e4338eac079115d9d558f669e98d357063dbd5b21fbedb85c39385d0d57bcb38"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Tools.Analyzers.Common: Tools.Analyzers.Common: abstractness 0.00, instability 0.00, distance 1.00 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"0fa8213c6086ace529855389a4707bd9c532044776575ab43a190864aa66925a"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Infrastructure.External.Common: Infrastructure.External.Common: abstractness 0.00, instability 0.00, distance 1.00 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"30fd269af5d073c72b5b5bc91e90ef66e9fdabf235558744d976b74abbdad9a4"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Tools.Generators.Web.Api.Authorization: Tools.Generators.Web.Api.Authorization: abstractness 0.01, instability 0.00, distance 0.99 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"719c553eff103864564d20779f75dfd4558d0874efcdcbb2223441eecd14012d"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Tools.Generators.Workers: Tools.Generators.Workers: abstractness 0.02, instability 0.00, distance 0.98 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"5691382fe90b2333d2405423637dca3e2f8c7f41490dde11be14edcb05531f99"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Infrastructure.Web.Interfaces: Infrastructure.Web.Interfaces: abstractness 0.00, instability 0.02, distance 0.98 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"85d39d67d51a3083dd3c79bcb98efddf9d79bae95eddb89de661c2fe49789483"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Domain.Shared: Domain.Shared: abstractness 0.00, instability 0.03, distance 0.97 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"6be0c8641bc15758759e49f762078a16dcd15b6f3294a6a246a5aefc93b1ef1a"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Application.Common: Application.Common: abstractness 0.00, instability 0.05, distance 0.95 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"3fd9c8e1996547a1bb1889c3a59e134a02c1351737d9f03df94a711fb1f6bbb9"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Application.Resources.Shared: Application.Resources.Shared: abstractness 0.00, instability 0.05, distance 0.95 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"ab4fcf6da2685899a0f3a87b0f23fae6e78a144b15db5d48d67b63cfd39a4b1c"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Application.Persistence.Common: Application.Persistence.Common: abstractness 0.00, instability 0.05, distance 0.95 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"51e78490b5dfbeccbdc6346c9ead21857b24065d6271c65dcaeb4559a6d36a5a"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Common: Common: abstractness 0.06, instability 0.00, distance 0.94 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"575d7aaf1e53a5b7cac84a48d4c73c16ca6fe5ba2df4f596d33033f532794407"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Domain.Events.Shared: Domain.Events.Shared: abstractness 0.00, instability 0.08, distance 0.92 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"628150073b2a01fe673f11f58a4073d13dff81577300e024b69a452ad193a946"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Application.Interfaces: Application.Interfaces: abstractness 0.09, instability 0.02, distance 0.90 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"b5874f361d24757c110fe51c0ecb3d4f30bfd41908e2810ca2d7587fd40f4890"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Infrastructure.Web.Common: Infrastructure.Web.Common: abstractness 0.00, instability 0.11, distance 0.89 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"a04420e47a203e8fe471eea11394d18b4171fafe6c2dff49fa94c8d826d4d5d0"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Infrastructure.Persistence.Common: Infrastructure.Persistence.Common: abstractness 0.00, instability 0.17, distance 0.83 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"747b1f8fe4fb6a575e585e70f88217f0d8e81ff7c74fffe81d0356bfe335ebaf"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Infrastructure.Web.Api.Operations.Shared: Infrastructure.Web.Api.Operations.Shared: abstractness 0.00, instability 0.18, distance 0.82 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"910171bb0fad46eb2451ab9eb078f4e2aa1918ead90ee135fe942b8875b76aa3"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Infrastructure.Persistence.Shared: Infrastructure.Persistence.Shared: abstractness 0.00, instability 0.20, distance 0.80 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"310fbe471e23434f366d6840d0ad64760ef1a9dbeba55b5dca795466e4fb8aa3"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Infrastructure.Shared: Infrastructure.Shared: abstractness 0.00, instability 0.24, distance 0.76 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"f9ea05152f2859bfe1f1a39633191256e19a9421acda0963a11809c12dedc62d"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Infrastructure.External.Persistence.Common: Infrastructure.External.Persistence.Common: abstractness 0.00, instability 0.24, distance 0.76 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"b9b1710ba88fbc53355135f3e03457659b1d01ab298e7a21f5a356f3361500d5"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Infrastructure.Common: Infrastructure.Common: abstractness 0.00, instability 0.24, distance 0.76 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"7c51deefe7f4e6f92d67866f2c04c08e105c701264d5551164d6882394e8aa71"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Infrastructure.External.Persistence.TestingOnly: Infrastructure.External.Persistence.TestingOnly: abstractness 0.00, instability 0.26, distance 0.74 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"bf371641b3bde44467b5fb0adb143385a1a2af663403e70fdd9a1542b1694794"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: EndUsersDomain: EndUsersDomain: abstractness 0.00, instability 0.28, distance 0.72 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"389c5c84bb026bda793b67f6be64524b52dce41a13fe403229ef928c440a47a7"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: Infrastructure.Eventing.Common: Infrastructure.Eventing.Common: abstractness 0.00, instability 0.28, distance 0.72 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"9b152d5de6c9aa81ef8528e085a6ccff7e78d35fc0187bb2395b41e49e37e103"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: UserProfilesDomain: UserProfilesDomain: abstractness 0.00, instability 0.29, distance 0.71 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"e4ec0b4817670e933a2078399d21fd993e80875cfab290b7ccf281298dbe4b85"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: CarsDomain: CarsDomain: abstractness 0.00, instability 0.30, distance 0.70 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"ce292f74e912da0c3aae20e35f0f27fc142908d2595266df93924c5347af21f8"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: BookingsDomain: BookingsDomain: abstractness 0.00, instability 0.30, distance 0.70 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"b76032adb24b9f48450bd584d8cde664bb8fe7fefa2546cf88e6c9173dd01d5c"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: AncillaryDomain: AncillaryDomain: abstractness 0.00, instability 0.30, distance 0.70 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"8f6604af7d899dee05afbca9c192f441c04f472d680cea3a22876c880d40af87"}},{"ruleId":"D5","level":"warning","message":{"text":"Off the main sequence: ImagesDomain: ImagesDomain: abstractness 0.00, instability 0.30, distance 0.70 \u2014 zone of pain \u2014 concrete and heavily depended-on, so it\u0027s rigid to change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"e641662e54840a4b0b4345289b4010f53b90ce637181857073f162b11b8007e0"}},{"ruleId":"D6","level":"warning","message":{"text":"Low cohesion: TestingWebApi (LCOM4 34): TestingWebApi\u0027s methods form 34 groups that share no state and don\u0027t call each other \u2014 a sign it may have several responsibilities. Review whether it splits into focused classes."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/ApiHost1/Api/TestingOnly/TestingWebApi.cs"},"region":{"startLine":16}}}],"partialFingerprints":{"codehealthFindingId/v1":"40f41354b482dc971672003e0c135565b52fd27e16ace0bc06d8a0b4237675e8"}},{"ruleId":"D6","level":"warning","message":{"text":"Low cohesion: EmailDeliveryRoot (LCOM4 5): EmailDeliveryRoot\u0027s methods form 5 groups that share no state and don\u0027t call each other \u2014 a sign it may have several responsibilities. Review whether it splits into focused classes."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryDomain/EmailDeliveryRoot.cs"},"region":{"startLine":16}}}],"partialFingerprints":{"codehealthFindingId/v1":"dc2821c5e48ce7a63ac49eb533524ec46fb6e949b7dae5b7472bf74925e1378b"}},{"ruleId":"D6","level":"warning","message":{"text":"Low cohesion: SmsDeliveryRoot (LCOM4 4): SmsDeliveryRoot\u0027s methods form 4 groups that share no state and don\u0027t call each other \u2014 a sign it may have several responsibilities. Review whether it splits into focused classes."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryDomain/SmsDeliveryRoot.cs"},"region":{"startLine":15}}}],"partialFingerprints":{"codehealthFindingId/v1":"9c469484c453d6b2bb6cfd65f01ef14cb956dc702ffaf5b8a791de234345058a"}},{"ruleId":"D6","level":"warning","message":{"text":"Low cohesion: MfaService (LCOM4 4): MfaService\u0027s methods form 4 groups that share no state and don\u0027t call each other \u2014 a sign it may have several responsibilities. Review whether it splits into focused classes."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure/ApplicationServices/MfaService.cs"},"region":{"startLine":17}}}],"partialFingerprints":{"codehealthFindingId/v1":"4f55b20b08684d9b9d9c29ee0da768931d84cfc380db6316498466effbe874c3"}},{"ruleId":"D8","level":"warning","message":{"text":"Coverage not measured \u2014 test suite did not build: Coverage NOT MEASURED: the repo\u0027s own test suite did not build (a C#/MSBuild compiler error in the test code), so no coverage could be collected. It is excluded from the score rather than counted as a near-zero defect. Fix the test build, or commit the Cobertura/OpenCover/lcov report your CI already produces, and real coverage will be measured."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"8beb176c604706486df63d2215f767f50520c8d949b1d464345de14ded442c69"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/AdditionalValidatorSpec.cs"},"region":{"startLine":22}}}],"partialFingerprints":{"codehealthFindingId/v1":"e604e2ab82f51d5d0691a423e777796992027b2b3a1204005622cb2a7223ee38"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAnyValueIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/AdditionalValidatorSpec.cs"},"region":{"startLine":43}}}],"partialFingerprints":{"codehealthFindingId/v1":"87b68b237b89a996926194dac598002a8147bfb646371bb7cf0ebc5ff3e34773"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAnyStringValueIsValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/AdditionalValidatorSpec.cs"},"region":{"startLine":56}}}],"partialFingerprints":{"codehealthFindingId/v1":"cc7e2cb2e91fc58a83bd2c684c79f20398e902400992f4c3dca69e24951d9c9b"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasGetOptionsValidatorSpec.cs"},"region":{"startLine":22}}}],"partialFingerprints":{"codehealthFindingId/v1":"eda3fda0cd1d7ce2715eb848ca8aad287c5bcf68452f0fd06ae90a0d4a1e62e5"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenEmbedIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasGetOptionsValidatorSpec.cs"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"b8afb5653d33fc04ae38ec7198a667f5a3f391324d37fee6a70bf9237b91a82c"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenEmbedIsOff_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasGetOptionsValidatorSpec.cs"},"region":{"startLine":36}}}],"partialFingerprints":{"codehealthFindingId/v1":"36dfc89308e344343780761865dee7d02d80f9ea69705a969f0ada7123ef009c"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenEmbedIsTopLevelField_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasGetOptionsValidatorSpec.cs"},"region":{"startLine":44}}}],"partialFingerprints":{"codehealthFindingId/v1":"df686d54f4ec9d81c00143ea1fb354e853d4901b9d442389f98f9765ab6b8888"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenEmbedIsChildLevelField_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasGetOptionsValidatorSpec.cs"},"region":{"startLine":52}}}],"partialFingerprints":{"codehealthFindingId/v1":"1834f3b21ade121a12ffe0913714f44664a493b0e863b309266a4f5018259bdb"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenEmbedIsGrandChildLevelField_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasGetOptionsValidatorSpec.cs"},"region":{"startLine":60}}}],"partialFingerprints":{"codehealthFindingId/v1":"dcfe03708510f9612686389b6b4ecce7baabf207e4aabb61d6e11737b858b166"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasSearchOptionsValidatorSpec.cs"},"region":{"startLine":29}}}],"partialFingerprints":{"codehealthFindingId/v1":"fb13f9e5f0af7da2bc054de965ba65c794eaac50e94c85fbbb488a26ef4106fa"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenLimitIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasSearchOptionsValidatorSpec.cs"},"region":{"startLine":35}}}],"partialFingerprints":{"codehealthFindingId/v1":"5afa1da10618fae397684e9009d877794e3c289872a11017f634c399363df57b"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenLimitIsMin_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasSearchOptionsValidatorSpec.cs"},"region":{"startLine":43}}}],"partialFingerprints":{"codehealthFindingId/v1":"3ebc5b2539cdf18251b30bb48102a052c68bc625dd5ec8c6df35566b27b46903"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenLimitIsLessThanMax_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasSearchOptionsValidatorSpec.cs"},"region":{"startLine":51}}}],"partialFingerprints":{"codehealthFindingId/v1":"e60a16fbed4c4160b3f3af3bb92fcb251c3971f27b5667584510fa950f53630f"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenOffsetIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasSearchOptionsValidatorSpec.cs"},"region":{"startLine":79}}}],"partialFingerprints":{"codehealthFindingId/v1":"d715d6fc03eb2c9824880bba69ab447224ad12728ad9b609874d83be67a365b0"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenOffsetIsMin_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasSearchOptionsValidatorSpec.cs"},"region":{"startLine":87}}}],"partialFingerprints":{"codehealthFindingId/v1":"b3606ca208abdfebb75392972ae079d2a4266314490ce69a44b3524b312d3a3e"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenOffsetIsLessThanMax_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasSearchOptionsValidatorSpec.cs"},"region":{"startLine":95}}}],"partialFingerprints":{"codehealthFindingId/v1":"1dc66a39b3640c788ab620fecd97dedaeac455547b6eb0bb319c9b4814ce22af"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenSortIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasSearchOptionsValidatorSpec.cs"},"region":{"startLine":123}}}],"partialFingerprints":{"codehealthFindingId/v1":"9e857097d02b0c4767aba9922e1948b6028c4bc0d9c8f13960db2055a910e54d"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenFilterIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common.UnitTests/Validation/HasSearchOptionsValidatorSpec.cs"},"region":{"startLine":141}}}],"partialFingerprints":{"codehealthFindingId/v1":"5635680ae660ccb94f44ed0752b506b0adff0ed7a4a44c574c93549d4e13bdbe"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsInfrastructure.UnitTests/Api/Cars/DeleteCarRequestValidatorSpec.cs"},"region":{"startLine":29}}}],"partialFingerprints":{"codehealthFindingId/v1":"76bc37b964be3641b9ad336700fa666ac5bbe13da750b8ec93fa0d7a1627dc88"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsInfrastructure.UnitTests/Api/Cars/GetCarRequestValidatorSpec.cs"},"region":{"startLine":29}}}],"partialFingerprints":{"codehealthFindingId/v1":"c38fd123b4bb611958da322ec573052f3834cffa153c18e7083623c877043c42"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSuccess: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsInfrastructure.UnitTests/Api/Cars/RegisterCarRequestValidatorSpec.cs"},"region":{"startLine":30}}}],"partialFingerprints":{"codehealthFindingId/v1":"ff61c47da24ef8134125833ba933215398cccb685b353ff5f7d2f76d4fcc8aaa"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsInfrastructure.UnitTests/Api/Cars/ReleaseCarAvailabilityRequestValidatorSpec.cs"},"region":{"startLine":34}}}],"partialFingerprints":{"codehealthFindingId/v1":"262649dfca667a0509aa0be6552eb4efa2c67ea63bb0371d0a9cba24294a8851"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsInfrastructure.UnitTests/Api/Cars/ReserveIfAvailableCarRequestValidatorSpec.cs"},"region":{"startLine":35}}}],"partialFingerprints":{"codehealthFindingId/v1":"cac34f07c25fff6955cdfb40dbfa77e76b0dd52a8d4e52425c2a8191eeda3fb6"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsInfrastructure.UnitTests/Api/Cars/ScheduleMaintenanceCarRequestValidatorSpec.cs"},"region":{"startLine":34}}}],"partialFingerprints":{"codehealthFindingId/v1":"fed97b98f2b53215d1a92219d4c0ff31715518e4c4bc73d4b1a52c3060f88a6c"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSuccess: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsInfrastructure.UnitTests/Api/Cars/SearchAllAvailableCarsRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"7b966b1636251ded88d4e15d5e9e05c0e1e1859ea927002e2c7d75b6d6e0150d"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenFromUtcIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsInfrastructure.UnitTests/Api/Cars/SearchAllAvailableCarsRequestValidatorSpec.cs"},"region":{"startLine":31}}}],"partialFingerprints":{"codehealthFindingId/v1":"dbeb60992f57663d4ee67dd34e4329a4620be3ce705ffb145adf688c2345f61b"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenToUtcIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsInfrastructure.UnitTests/Api/Cars/SearchAllAvailableCarsRequestValidatorSpec.cs"},"region":{"startLine":40}}}],"partialFingerprints":{"codehealthFindingId/v1":"10d63fded30cf7fe9b18a82871382bca2ee9657b6679a7f69eb29e3c54c3a3b2"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSuccess: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsInfrastructure.UnitTests/Api/Cars/SearchAllCarsRequestValidatorSpec.cs"},"region":{"startLine":21}}}],"partialFingerprints":{"codehealthFindingId/v1":"73f5b22cf8379d246cc510ef9a3c6daa73e1478e2e1d181f2d691c663e00640a"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSuccess: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsInfrastructure.UnitTests/Api/Cars/SearchAllUnavailabilitiesRequestValidatorSpec.cs"},"region":{"startLine":33}}}],"partialFingerprints":{"codehealthFindingId/v1":"6c27dd80f8076990a81d0263454814980862c876ea274c6de096c68b0ea5b8c7"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/CarsInfrastructure.UnitTests/Api/Cars/TakeOfflineCarRequestValidatorSpec.cs"},"region":{"startLine":34}}}],"partialFingerprints":{"codehealthFindingId/v1":"e9483780d06a20a44ac5c4dad7dfbec4a4375f88032fd55293da9a0bd1def2b9"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenRegisterServicesAndNoModules_ThenAppliedToAllModules: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common.UnitTests/SubdomainModulesSpec.cs"},"region":{"startLine":84}}}],"partialFingerprints":{"codehealthFindingId/v1":"f10507fb1bd6703a2c3c7bb252ce0099f43f6a04c8d94abf125bf836b5613be6"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenConfigureHostAndNoModules_ThenAppliedToAllModules: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common.UnitTests/SubdomainModulesSpec.cs"},"region":{"startLine":115}}}],"partialFingerprints":{"codehealthFindingId/v1":"c1076834f89fc809d7af238a5f1c7152501c1ca3560547f0427b0ec29a0c5047"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/BookingsInfrastructure.UnitTests/Api/Bookings/CancelBookingRequestValidatorSpec.cs"},"region":{"startLine":29}}}],"partialFingerprints":{"codehealthFindingId/v1":"f7de960fbef995d6c1b2c0dbd80a2797b0864f480c12ac516fe90f4d9d9bab75"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSuccess: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/BookingsInfrastructure.UnitTests/Api/Bookings/MakeBookingRequestValidatorSpec.cs"},"region":{"startLine":35}}}],"partialFingerprints":{"codehealthFindingId/v1":"178e47415f3341249a477279aeeb9c365b30c5189f2af076df548d0f4ce43367"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSuccess: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/BookingsInfrastructure.UnitTests/Api/Bookings/SearchAllBookingsRequestValidatorSpec.cs"},"region":{"startLine":29}}}],"partialFingerprints":{"codehealthFindingId/v1":"f1894f22b652feff9dfde64b52a47dae9e546dc1b1b59d8b07baf8892ea75869"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenFromUtcIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/BookingsInfrastructure.UnitTests/Api/Bookings/SearchAllBookingsRequestValidatorSpec.cs"},"region":{"startLine":35}}}],"partialFingerprints":{"codehealthFindingId/v1":"9b53ba9c17e218d7fe5330550ee76b945227890e91ee15a452ed9062346e8be4"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenToUtcIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Core/BookingsInfrastructure.UnitTests/Api/Bookings/SearchAllBookingsRequestValidatorSpec.cs"},"region":{"startLine":44}}}],"partialFingerprints":{"codehealthFindingId/v1":"3febcb7bb001dad801e29604f5232a9a213943390c6c8e0d359a20ab4bdf48d1"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Audits/DeliverAuditRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"3d1ec30b4f96a9edf9e766b762626e7e611cfee193e4f4d602e30f51d562880d"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Audits/SearchAuditsRequestValidatorSpec.cs"},"region":{"startLine":21}}}],"partialFingerprints":{"codehealthFindingId/v1":"6f0422b788e58da49a1c0aa725a395a4fb424bd50de7ced2e2f5faca5909e948"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenOrganizationIdExists_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Audits/SearchAuditsRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"a8947369c3fd930dd8c610ab9f6f9a77a6512c2c5472ec22d62f093b85c4c04b"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Emails/SearchAllEmailDeliveriesRequestValidatorSpec.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"94be9bac6502cdff120984366a2fd229a1180fe56cdca914fb16187f7c5c9327"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenOrganizationIdExists_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Emails/SearchAllEmailDeliveriesRequestValidatorSpec.cs"},"region":{"startLine":30}}}],"partialFingerprints":{"codehealthFindingId/v1":"8b1f8cbad51c600e325093f7f6a06c50107365f99baaae6353ae1e5feb0743a9"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenSinceUtcIsPast_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Emails/SearchAllEmailDeliveriesRequestValidatorSpec.cs"},"region":{"startLine":47}}}],"partialFingerprints":{"codehealthFindingId/v1":"52fbcfa91502f91c3920f0bfcfbf203e517d957b227ee11304201fa06b29761e"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenTagIsValid_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Emails/SearchAllEmailDeliveriesRequestValidatorSpec.cs"},"region":{"startLine":65}}}],"partialFingerprints":{"codehealthFindingId/v1":"9d08c19473cdb48a18506d0db2a99dc3a4a5a1fcb5225874098ccb2791c0f91b"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Emails/SendEmailRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"4cbc6fc33c34f5822eba14919907fe63995c0eef5cb37e06d183e6dd65da4766"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/FeatureFlags/GetFeatureFlagForCallerRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"af4a72c48885a1c542414d4f3fb2d41942f4eb674ad188565fd0652f7eedd6bc"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/FeatureFlags/GetFeatureFlagRequestValidatorSpec.cs"},"region":{"startLine":33}}}],"partialFingerprints":{"codehealthFindingId/v1":"557ce910ffce03e2155e511d67835834349f4e614fffadb7d6124b57e11b3b4d"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenTenantIdIsEmpty_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/FeatureFlags/GetFeatureFlagRequestValidatorSpec.cs"},"region":{"startLine":49}}}],"partialFingerprints":{"codehealthFindingId/v1":"734a1bd04abc4cb8873874b9b5563197b039a3ec8b22cd1adff6a997ca47296c"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Provisionings/NotifyProvisioningRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"8d5dbd5808e760a4bd3903a8aa37aa66ae420eacd6717705d456b408202f5377"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Recording/RecordMeasureRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"76fef58674037c6e8e128aaa6ac650fed48320265864d4877b9c6e630252b5d3"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAdditionalIsNull_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Recording/RecordMeasureRequestValidatorSpec.cs"},"region":{"startLine":41}}}],"partialFingerprints":{"codehealthFindingId/v1":"c5c33736d3428bbdb18c2dc649fb3dc915ed719cd8ad0a98134efb16eb36be71"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Recording/RecordUsageRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"e43e238b047e92ff1ffd138732ba20c1f3f4a404751453eba095b78e1744db14"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAdditionalIsNull_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Recording/RecordUsageRequestValidatorSpec.cs"},"region":{"startLine":41}}}],"partialFingerprints":{"codehealthFindingId/v1":"9d9a3314dfbc411090f3158e219c0de66bf73ef22e86a6e2384281e26c2650a7"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Smses/SearchAllSmsDeliveriesRequestValidatorSpec.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"0a350e0d7da5c68fd880e8065fb2e0225d62892a45df26b3cc7c7a25af40bd44"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenOrganizationIdExists_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Smses/SearchAllSmsDeliveriesRequestValidatorSpec.cs"},"region":{"startLine":30}}}],"partialFingerprints":{"codehealthFindingId/v1":"ef7a456e8d79f3ad53cc51bb51f6cdafd84cf1ac1cc8673d4a6231332c2b5c94"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenSinceUtcIsPast_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Smses/SearchAllSmsDeliveriesRequestValidatorSpec.cs"},"region":{"startLine":47}}}],"partialFingerprints":{"codehealthFindingId/v1":"9dee8cf1086a82f43b78e20ff91bb1bdea93405a69c137795f17d3112a72e678"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenTagIsValid_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Smses/SearchAllSmsDeliveriesRequestValidatorSpec.cs"},"region":{"startLine":65}}}],"partialFingerprints":{"codehealthFindingId/v1":"6a76ff9d2e533951222fee4335348349cfe263d2fbf0aa60442906f66f3a2c7f"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Smses/SendSmsRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"6acfee8d600986bdca176e7998868a6c8b3932eeec28d3eb4b85445d4124829a"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryInfrastructure.UnitTests/Api/Usages/DeliverUsageRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"87f07cb3e8484b01e0320e67b27b9c79eda999506acb44d6e800a62be5afef6a"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/AuthN/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":32}}}],"partialFingerprints":{"codehealthFindingId/v1":"dd6c222d150ddeba2febb6c63b0c020e43c443af98aed81ca2762809711ebf56"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/AuthN/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":109}}}],"partialFingerprints":{"codehealthFindingId/v1":"dd6c222d150ddeba2febb6c63b0c020e43c443af98aed81ca2762809711ebf56"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAuthCodeIsNotEmpty_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/AuthN/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":136}}}],"partialFingerprints":{"codehealthFindingId/v1":"aaaec6ec12bb30aa45248b2ac1e75d92572eed964c28126e18a709b79b5d8fa8"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenUsernameIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/AuthN/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":157}}}],"partialFingerprints":{"codehealthFindingId/v1":"fbae63e9c1e6d85830d544cdc7cd20d2b6ab275f6277f04bbce12c8c5c38f83b"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenUsernameIsValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/AuthN/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":167}}}],"partialFingerprints":{"codehealthFindingId/v1":"fcdd9bb005e65621309d555db4d1be2653f8945cb0c2a4e6f077b487893b6efd"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeVerifierIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/AuthN/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":189}}}],"partialFingerprints":{"codehealthFindingId/v1":"eeffab80393a1a7899fc9a36bdc414a230f8a54351058ff3b86191268538ddce"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeVerifierIsValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/AuthN/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":199}}}],"partialFingerprints":{"codehealthFindingId/v1":"7fb74d19a8d63a2c55eac03c51b016083cb7728b1318fb00e5d831d23a1d0e34"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/FeatureFlags/GetFeatureFlagForCallerRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"28e02b0f985b188e8a8714912749b51d764937b362663b982057b1200bd9c0dc"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/OAuth2/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":36}}}],"partialFingerprints":{"codehealthFindingId/v1":"117482b479e277b5951b1e3fdc6316c11b2f21537da44ef3d6e72e656da3682d"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenNonceIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/OAuth2/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":42}}}],"partialFingerprints":{"codehealthFindingId/v1":"1509b3f286e7062146658ec7ff3994d35145df5a607b2ac84ea35264af08e6fc"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeChallengeIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/OAuth2/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":50}}}],"partialFingerprints":{"codehealthFindingId/v1":"5c8317b55bf9327901fe4b860aef360f6fc113dcb5a3821218c4ea11cafaadc5"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeChallengeAndCodeChallengeMethodIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/OAuth2/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":58}}}],"partialFingerprints":{"codehealthFindingId/v1":"3e34af9324e4daebac58e0d5d4eadadd1b436a64be698fa9c9179f748f640389"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeChallengeIsDefinedAndCodeChallengeMethodIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/OAuth2/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"4f9ccd1e5dfb3f9303ccdf2dd62fb71a1d66dfd8e5dd1fd17fe58137de6e3034"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/OAuth2/AuthenticateRequestValidatorSpec.cs"},"region":{"startLine":89}}}],"partialFingerprints":{"codehealthFindingId/v1":"117482b479e277b5951b1e3fdc6316c11b2f21537da44ef3d6e72e656da3682d"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/OAuth2/ConsentOAuth2ClientRequestValidatorSpec.cs"},"region":{"startLine":31}}}],"partialFingerprints":{"codehealthFindingId/v1":"01fd48abe56b6559654d66bbb1150986dfb064a3fc7213fc7621344bd002e86d"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenStateIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/OAuth2/ConsentOAuth2ClientRequestValidatorSpec.cs"},"region":{"startLine":57}}}],"partialFingerprints":{"codehealthFindingId/v1":"6f2a04d0dbcf11e56195e3e69e4c235f3cd1de344e4d34e6761576c49369b50c"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/Recording/RecordCrashRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"edfa452c298fbf13e8e2d4ab1329b947a550430b5bfa7db5ac5f0431f63e6daf"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/Recording/RecordMeasureRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"ccf6be0391bad8b09e56f59ffc37c1c14ccecee72934cd4a45b629e2994aa03d"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAdditionalIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/Recording/RecordMeasureRequestValidatorSpec.cs"},"region":{"startLine":41}}}],"partialFingerprints":{"codehealthFindingId/v1":"e5fba7139ffa792f6fc5c7dcd675bc035e0235f6ddd0724f94b80d3c9315e103"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/Recording/RecordPageViewRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"41b54398e3a16021cb379126a28efa273debaa2565870958eed96e784077a9fa"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/Recording/RecordTraceRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"765b92112619b3d6382a72f925caf23996d19a5df39589732e09f34bf60489a0"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenArguments_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/Recording/RecordTraceRequestValidatorSpec.cs"},"region":{"startLine":58}}}],"partialFingerprints":{"codehealthFindingId/v1":"d62a78eea7690ff73f839603a182ef008737366067e3d02f97ad2b6390ee81ca"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/Recording/RecordUsageRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"1818e0c0b812bc367bc8fd1c554b4adddf4d063ea0dc526f03c2526e0f1c6356"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAdditionalIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.UnitTests/Api/Recording/RecordUsageRequestValidatorSpec.cs"},"region":{"startLine":41}}}],"partialFingerprints":{"codehealthFindingId/v1":"649bdd109cf5846e01d28729122fc79872c9cea5e01fc34ebe0a2ec3986fd799"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/APIKeys/CreateAPIKeyRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"5e8a94f2e07bc39579f9dce6611888550505cafd000b2ccf27c0950c04d01eb6"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenExpiresIsValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/APIKeys/CreateAPIKeyRequestValidatorSpec.cs"},"region":{"startLine":41}}}],"partialFingerprints":{"codehealthFindingId/v1":"ea36009ffb864c4fcb7e537258819af0943b382a35cdeeb62527b2ca34bc39f7"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/AuthTokens/RefreshTokenRequestValidatorSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"2689670edef2abd1f9e4c07b3cf7d0ccf834070d7c20b99d10d3e6f4cea2058d"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/AuthTokens/RevokeRefreshTokenRequestValidatorSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"246ebf32ac86d3bbcf66cc0227bf1b9d4e98647e4a4c3429350c20a3637777e4"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/MachineCredentials/RegisterMachineUserRequestValidatorSpec.cs"},"region":{"startLine":29}}}],"partialFingerprints":{"codehealthFindingId/v1":"c582b46a490767b2ccff17de31a0fd0c8f089c41005b17f9a78119fd05871a22"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenTimezoneIsMissing_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/MachineCredentials/RegisterMachineUserRequestValidatorSpec.cs"},"region":{"startLine":46}}}],"partialFingerprints":{"codehealthFindingId/v1":"e4a24d06d1ff8696ee187eb72b499c334dea44a6ce3bd72d4ca5c52db8e81c55"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCountryCodeIsMissing_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/MachineCredentials/RegisterMachineUserRequestValidatorSpec.cs"},"region":{"startLine":65}}}],"partialFingerprints":{"codehealthFindingId/v1":"56cb4a783be8e6c06304ef3defcf018cca53c8224a19fc27ecb3bcfa68a10eeb"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenApiKeyExpiresOnUtc_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/MachineCredentials/RegisterMachineUserRequestValidatorSpec.cs"},"region":{"startLine":95}}}],"partialFingerprints":{"codehealthFindingId/v1":"5c32284b1f5a63c9e06160913c00a1958a1f6e111e498114d9eb3d4743f1225a"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/MFA/AssociatePasswordMfaAuthenticatorForCallerRequestValidatorSpec.cs"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"521527a16acc0c2b34f4e7ea7c77089024758494170a4e31b4e0a12fd5ae56d0"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/MFA/ChallengePasswordMfaAuthenticatorForCallerRequestValidatorSpec.cs"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"02183d013382b2a99176085d9a6ac97d04576cb3a1e09bd9a8f081a789b85a24"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/MFA/ChangePasswordMfaForCallerRequestValidatorSpec.cs"},"region":{"startLine":23}}}],"partialFingerprints":{"codehealthFindingId/v1":"2938dcf3a98e6e6c00f65a9e087e8733ffed80a43eb127d4c8e5bfd0d6068685"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/MFA/ConfirmPasswordMfaAuthenticatorForCallerRequestValidatorSpec.cs"},"region":{"startLine":30}}}],"partialFingerprints":{"codehealthFindingId/v1":"c991523786183d3de19e2b7805f943a086f5ba1c46f1e853b631c932e1615673"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/MFA/DisassociatePasswordMfaAuthenticatorForCallerRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"5bbe94f37a53481c59578f1f2f7549af0f19a7b5980aced151079664b116bd73"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/MFA/ListPasswordMfaAuthenticatorsForCallerRequestValidatorSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"e0be65a87e0446d2d10e4588413fdd5fc4730346c72f1c16049ccf882b2ed1b6"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/MFA/ResetPasswordMfaRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"ccdc3074d13dcc966e22d230e9dc4719d2f53871e592dceae5cb54a815992425"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/MFA/VerifyPasswordMfaAuthenticatorForCallerRequestValidator.cs"},"region":{"startLine":30}}}],"partialFingerprints":{"codehealthFindingId/v1":"e5aaab232c5e3c8ef82e301950ad5b7cd5f59308a4c328b0a23e672772838061"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/AuthorizeOAuth2RequestValidatorSpec.cs"},"region":{"startLine":37}}}],"partialFingerprints":{"codehealthFindingId/v1":"e04fa70132029bf3c7eb55ede237c820acccf09f22a125144f0505b239b2af0a"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenRedirectUriHasQueryParameters_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/AuthorizeOAuth2RequestValidatorSpec.cs"},"region":{"startLine":98}}}],"partialFingerprints":{"codehealthFindingId/v1":"b97c62a9d7bf4c2798e25a4d10b5479cb5395e93597b3a3201e4d65cab24f55e"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenNonceIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/AuthorizeOAuth2RequestValidatorSpec.cs"},"region":{"startLine":128}}}],"partialFingerprints":{"codehealthFindingId/v1":"3a5d4a4aee3979c202db18a8e28d1ba8168917303590dc5ff62a804ffa5b0d82"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenNonceIsMaxLength_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/AuthorizeOAuth2RequestValidatorSpec.cs"},"region":{"startLine":147}}}],"partialFingerprints":{"codehealthFindingId/v1":"ef0e1bb5a09d359cc46ad4e710ad63c6b1090ac8d7f32f76237ddb2097e4230a"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeChallengeIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/AuthorizeOAuth2RequestValidatorSpec.cs"},"region":{"startLine":155}}}],"partialFingerprints":{"codehealthFindingId/v1":"63e6d6c3378fcd8ddb9a7afcfe0d66ac89cb01d3ee19d7aae60dcf4fde7d99b9"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeChallengeAndMethodAreValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/AuthorizeOAuth2RequestValidatorSpec.cs"},"region":{"startLine":174}}}],"partialFingerprints":{"codehealthFindingId/v1":"167ca408494169aeaadaaa1c0f01bc0b65e2182648d79923edc639444e2d6c8c"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeChallengeAndMethodIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/AuthorizeOAuth2RequestValidatorSpec.cs"},"region":{"startLine":183}}}],"partialFingerprints":{"codehealthFindingId/v1":"01d7979cbb97599665b20c465743ea68dc24977505aa97d8b43825f77ea76334"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeChallengeIsDefinedAndCodeChallengeMethodIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/AuthorizeOAuth2RequestValidatorSpec.cs"},"region":{"startLine":192}}}],"partialFingerprints":{"codehealthFindingId/v1":"c159792ec279ed2e1d51f9548b391850234276841111e1a6edbe17cbd5337ab2"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenStateIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/AuthorizeOAuth2RequestValidatorSpec.cs"},"region":{"startLine":201}}}],"partialFingerprints":{"codehealthFindingId/v1":"bfc2698f4f860d1e5ec142ae0bf798ecb01e90c5cd79a9b707b2d232a6479ada"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenStateIsMaxLength_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/AuthorizeOAuth2RequestValidatorSpec.cs"},"region":{"startLine":209}}}],"partialFingerprints":{"codehealthFindingId/v1":"d734c78655a8481e775036554ff8e363654a9e23523ab275533681977252eb75"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/ConsentOAuth2ClientForCallerRequestValidatorSpec.cs"},"region":{"startLine":31}}}],"partialFingerprints":{"codehealthFindingId/v1":"d5ac785b434b7e48ba57c9b5ed5a192235387c9f83f8fab3602a42a54362dd4f"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/CreateOAuth2ClientRequestValidatorSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"7f7429a0ec8720ef845653ce4765360e10d1f6d6c55bce0f5516142eabd82278"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenRedirectUriIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/CreateOAuth2ClientRequestValidatorSpec.cs"},"region":{"startLine":43}}}],"partialFingerprints":{"codehealthFindingId/v1":"5670aa425187e02658f3aeb40e404ff50d93a19c9d95b0552e6112ab74410030"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/DeleteOAuth2ClientRequestValidatorSpec.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"4b854643337ee8d7ab52f698edf38d47532c0c8f46e2a671f758e6501d7bd24d"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/ExchangeOAuth2ForTokensRequestValidatorSpec.cs"},"region":{"startLine":40}}}],"partialFingerprints":{"codehealthFindingId/v1":"495cb6e2257b64ddac7a5d16bf544ed761ebfb5db41929e0b1ba1ce936c4e074"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/ExchangeOAuth2ForTokensRequestValidatorSpec.cs"},"region":{"startLine":102}}}],"partialFingerprints":{"codehealthFindingId/v1":"495cb6e2257b64ddac7a5d16bf544ed761ebfb5db41929e0b1ba1ce936c4e074"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeVerifierIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/ExchangeOAuth2ForTokensRequestValidatorSpec.cs"},"region":{"startLine":141}}}],"partialFingerprints":{"codehealthFindingId/v1":"66f28c2000f2fe2c58fc34dc49f22946508a099f06700bce0d5ce19eb2bbdc54"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeVerifierIsEmpty_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/ExchangeOAuth2ForTokensRequestValidatorSpec.cs"},"region":{"startLine":149}}}],"partialFingerprints":{"codehealthFindingId/v1":"3d3fc300f2007e5ad8cc7ccb7a190a4d401b1ae9623edc20d00cbec3f4b449e4"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeVerifierIsValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/ExchangeOAuth2ForTokensRequestValidatorSpec.cs"},"region":{"startLine":168}}}],"partialFingerprints":{"codehealthFindingId/v1":"a88c24ceee14f3c17716c5de902144bda5cafa5ccfe1821afb90b0193feb7e87"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeVerifierIsMaxLength_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/ExchangeOAuth2ForTokensRequestValidatorSpec.cs"},"region":{"startLine":176}}}],"partialFingerprints":{"codehealthFindingId/v1":"07f233541fa56baa432a9842c660b7100b4d881e665051876acfef2ef994f637"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/ExchangeOAuth2ForTokensRequestValidatorSpec.cs"},"region":{"startLine":230}}}],"partialFingerprints":{"codehealthFindingId/v1":"495cb6e2257b64ddac7a5d16bf544ed761ebfb5db41929e0b1ba1ce936c4e074"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenScopeIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/ExchangeOAuth2ForTokensRequestValidatorSpec.cs"},"region":{"startLine":269}}}],"partialFingerprints":{"codehealthFindingId/v1":"d1db91bad6f35bd17e988e5d6c6d40215097ecfb0cbb5b9a82120fb1a95dd4b4"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/GetOAuth2ClientConsentStatusForCallerRequestValidator.cs"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"a55084f4c541921e75f62a402188ea4c83b8df0dc816ec56d9f96739b5d0a842"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/GetOAuth2ClientRequestValidatorSpec.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"05e00b72de5b0cb12d65db5934bf4ace2c9ba252899385d2d91499d219bffb7c"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/GetOAuth2ConsentRequestValidatorSpec.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"4c18212965d707084449e4e4c6c5b840f322c3647d10aba6c227a4126a760c0f"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/RegenerateOAuth2ClientSecretRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"3a5e20c2afd703c8d72a95f5b875ecb479b2d9ddac355d456c605fec94b74146"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/RevokeOAuth2ConsentRequestValidatorSpec.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"3c5de7ebb3dba462af5f5453c514eb95a06c11a513dca7a11b7c0d2c34c6dfc8"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/SearchAllOAuth2ClientsRequestValidatorSpec.cs"},"region":{"startLine":22}}}],"partialFingerprints":{"codehealthFindingId/v1":"2e8129156adb6b5a41beba883e1145ee01df4376333c869bea1250b0eb727182"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllPropertiesValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/UpdateOAuth2ClientRequestValidatorSpec.cs"},"region":{"startLine":29}}}],"partialFingerprints":{"codehealthFindingId/v1":"10c7e20739720c9a63c2c7d0e635eeb6281481d571396e0c5fef5ba8f5dd10ef"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenNameIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/UpdateOAuth2ClientRequestValidatorSpec.cs"},"region":{"startLine":57}}}],"partialFingerprints":{"codehealthFindingId/v1":"e27005c5122d34f6f0528d45fe8b418efd3346db7d3094c73e161bd8ef6f287c"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenRedirectUriIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/OAuth2/UpdateOAuth2ClientRequestValidatorSpec.cs"},"region":{"startLine":65}}}],"partialFingerprints":{"codehealthFindingId/v1":"9967d6f7e569621a95e2feeef2972783868d1cf113ae47a764501a040acd710b"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/PersonCredentials/AuthenticatePasswordRequestValidatorSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"588f6ae3e865172f6cdad2ea0dbea79e6cc41d19eeeee4e02b4126670d638520"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/PersonCredentials/CompletePasswordResetRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"3bf77d4cfd12f4fe9356a4fa7a350cfec1ed0249d7e5d2873aae65113ce0234f"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/PersonCredentials/ConfirmPersonCredentialRegistrationRequestValidatorSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"d0fade04336e483afaa5d6031332baa48f5ba7e9f557ddf61ef6e48248141c55"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/PersonCredentials/InitiatePasswordResetRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"8a7a78f2709cb8577660ff71aa4e4c4de501d3e564bc4d02411af977e85945cf"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/PersonCredentials/RegisterPersonPasswordRequestValidatorSpec.cs"},"region":{"startLine":34}}}],"partialFingerprints":{"codehealthFindingId/v1":"6763c24d692fd91bfecb293cdb098cfcdf8738b615efeef8dd351aa1c75d9d00"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenInvitationTokenIsEmpty_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/PersonCredentials/RegisterPersonPasswordRequestValidatorSpec.cs"},"region":{"startLine":40}}}],"partialFingerprints":{"codehealthFindingId/v1":"3f091334163f867b86da2962ad2c34450d468cacabcdea501ece2850298c1db3"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenTimezoneIsMissing_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/PersonCredentials/RegisterPersonPasswordRequestValidatorSpec.cs"},"region":{"startLine":136}}}],"partialFingerprints":{"codehealthFindingId/v1":"7b2290cc7d435cd34404103a7821770dff88c1572704a0c61844019b9d94cefd"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenLocaleIsMissing_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/PersonCredentials/RegisterPersonPasswordRequestValidatorSpec.cs"},"region":{"startLine":155}}}],"partialFingerprints":{"codehealthFindingId/v1":"290ec218dc1d6314d16b5790f8a6bac8288ff53ca86727f5ad81b62b97ad3068"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCountryCodeIsMissing_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/PersonCredentials/RegisterPersonPasswordRequestValidatorSpec.cs"},"region":{"startLine":174}}}],"partialFingerprints":{"codehealthFindingId/v1":"08d53251050d27c932c76f7722d71ed2dfd04f93b9837d4363e12b69be40ed67"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/PersonCredentials/ResendPasswordResetRequestValidatorSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"42d0ea8c0c23b8853e37c04a5b935009b78c344358e03c1275b5686cab81cb70"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/PersonCredentials/ResendPersonCredentialRegistrationConfirmationRequestValidatorSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"af33f5ef43135c2c0313972e4d308992a76a61c63356f35d4c17a98751713c9a"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/PersonCredentials/VerifyPasswordResetRequestValidatorSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"82d5b1c7746bfdc6862a3171b1d69fda5775a0fb7a5b3d9d3a8004890d261729"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/SSO/AuthenticateSingleSignOnRequestValidatorSpec.cs"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"577d0dfc80ed564b6ae32c64e64cfa8a40daecf9625a33c76e9b0ac05c5d6ffc"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenInvitationTokenIsEmpty_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/SSO/AuthenticateSingleSignOnRequestValidatorSpec.cs"},"region":{"startLine":34}}}],"partialFingerprints":{"codehealthFindingId/v1":"8dc2a32fc7a2027824fb7960ca78c006ee6973bf5cddbcb3815b2f3f980411d6"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeVerifierIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/SSO/AuthenticateSingleSignOnRequestValidatorSpec.cs"},"region":{"startLine":75}}}],"partialFingerprints":{"codehealthFindingId/v1":"3615258938a4f7b6045558bdccaf2fce89df6cba0bd7de29c9a69a2e3f6b9446"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeVerifierIsEmpty_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/SSO/AuthenticateSingleSignOnRequestValidatorSpec.cs"},"region":{"startLine":83}}}],"partialFingerprints":{"codehealthFindingId/v1":"2cec1ecc221ffd2744293485ba517d6e051e94a0b320da771715558f95d0a680"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeVerifierIsValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/SSO/AuthenticateSingleSignOnRequestValidatorSpec.cs"},"region":{"startLine":102}}}],"partialFingerprints":{"codehealthFindingId/v1":"a87ad27a07e48cb20d3f6101e95e0e476eb2986518c97510ce77f633e1ee484d"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenCodeVerifierIsMaxLength_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.UnitTests/Api/SSO/AuthenticateSingleSignOnRequestValidatorSpec.cs"},"region":{"startLine":110}}}],"partialFingerprints":{"codehealthFindingId/v1":"0522cb318ab939cd54886b2265878211eddecd88247d63c057787213c56998b3"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersInfrastructure.UnitTests/Api/EndUsers/AssignPlatformRolesRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"6401b65cfef29437427064b0872acac9f64234d55e7afdc2e5758ac71f5d4db8"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersInfrastructure.UnitTests/Api/EndUsers/UnassignPlatformRolesRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"25c9c532685dca5f4a9acb0da941ca2007a40cbd1883befd28b0c2ce044d0e04"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersInfrastructure.UnitTests/Api/Invitations/AcceptGuestInvitationRequestSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"5c90b67cc1c21ed0517d454d253a00a2f35b3f0541671e420bbc269e5cdd8170"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersInfrastructure.UnitTests/Api/Invitations/InviteGuestRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"6b1e1140de119bb1a8ec66736bf0fe0bc6507b0ea46551b35eb329830a8f0fa6"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersInfrastructure.UnitTests/Api/Invitations/ResendGuestInvitationRequestSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"2d3ba803e29c015388fd541ef50c9993f892fdda47526d38c39219afcf1b1e76"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersInfrastructure.UnitTests/Api/Memberships/ChangeDefaultOrganizationRequestValidatorSpec.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"c6bc75b8500c63e6b53c85871cb67dfe8162b3fe98e6e3c126995e9c72362024"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/CompleteOnboardingWorkflowRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"57f619a45b0f6148949a4d41767e9ea3205f35179fc26c70bd31942c5b01e66d"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/GetOnboardingWorkflowRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"339aae693d36bdbd34e8266d3851bbea2b49a91c37311add4f149df0700bbc66"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/InitiateOnboardingWorkflowRequestValidatorSpec.cs"},"region":{"startLine":56}}}],"partialFingerprints":{"codehealthFindingId/v1":"390928a0709ffd0f5182bd6f51b47fe6ded1d931e027c6f55e091960e26d0355"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/InitiateOnboardingWorkflowRequestValidatorSpec.cs"},"region":{"startLine":201}}}],"partialFingerprints":{"codehealthFindingId/v1":"390928a0709ffd0f5182bd6f51b47fe6ded1d931e027c6f55e091960e26d0355"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenNextStepIdIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/InitiateOnboardingWorkflowRequestValidatorSpec.cs"},"region":{"startLine":304}}}],"partialFingerprints":{"codehealthFindingId/v1":"df739a1514a66e0c2ab85c44963c3fcdca2b7bb1769caf1894562f084d1bdcad"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenHasBranches_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/InitiateOnboardingWorkflowRequestValidatorSpec.cs"},"region":{"startLine":312}}}],"partialFingerprints":{"codehealthFindingId/v1":"13b82f87715a74ca2934bc6e71fcd9df12efd14e038a80dd2c12e040ab35cf0c"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/InitiateOnboardingWorkflowRequestValidatorSpec.cs"},"region":{"startLine":334}}}],"partialFingerprints":{"codehealthFindingId/v1":"390928a0709ffd0f5182bd6f51b47fe6ded1d931e027c6f55e091960e26d0355"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/InitiateOnboardingWorkflowRequestValidatorSpec.cs"},"region":{"startLine":419}}}],"partialFingerprints":{"codehealthFindingId/v1":"390928a0709ffd0f5182bd6f51b47fe6ded1d931e027c6f55e091960e26d0355"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/InitiateOnboardingWorkflowRequestValidatorSpec.cs"},"region":{"startLine":465}}}],"partialFingerprints":{"codehealthFindingId/v1":"390928a0709ffd0f5182bd6f51b47fe6ded1d931e027c6f55e091960e26d0355"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/MoveBackWorkflowStepRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"5eba1eb05119eec19a311720d9066af92860e618ba5b7e6f8c8d71285075500d"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/MoveForwardWorkflowStepRequestValidatorSpec.cs"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"8c8c8d3fe8bd0d32a9f0904ef5965347039be0259c84616b6dfd46de38f9f97b"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenNextStepIdIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/MoveForwardWorkflowStepRequestValidatorSpec.cs"},"region":{"startLine":56}}}],"partialFingerprints":{"codehealthFindingId/v1":"9bec0cac2e4a65f119d45dfa5bc38bdc1e8c1a58f36bcc48237752b8f73cb9c9"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenValuesIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/MoveForwardWorkflowStepRequestValidatorSpec.cs"},"region":{"startLine":64}}}],"partialFingerprints":{"codehealthFindingId/v1":"32c79b49bde892b7fa6e7845060e340f9b123c59be9d367d543f68da78fb8d7f"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenValuesIsEmpty_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/MoveForwardWorkflowStepRequestValidatorSpec.cs"},"region":{"startLine":72}}}],"partialFingerprints":{"codehealthFindingId/v1":"e03074cc1727d0f13b51e0f1b0cd0018863e7fd71e768c5def76b0f409e2e0e4"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Onboarding/UpdateCurrentWorkflowStepRequestValidatorSpec.cs"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"80e7998f0a70430dd9106c99a473e3f2e2d0a3cfec7420f04f320a8f39fa94c1"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Organizations/AssignOrganisationRoleRequestValidatorSpec.cs"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"3c2b846d9b2a196dd863e4a15305043d030c87b10595b3abdd3f8b3aab1bee8d"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Organizations/ChangeOrganizationRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"178b5a6e03191eb3b9b303f9e92fd35ce6b66af317813f1e3c7bacad38e1b3ef"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Organizations/CreateOrganizationRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"55446a2338d85f3c5205f626416bd743bdefb0c7d4cdfcecc291a2ded719e166"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Organizations/InviteMemberToOrganizationRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"f6b36f70023de0ea9cab00a9f449f76300a47469c1d7b54209e57ec242d65b14"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenEmailIsValid_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Organizations/InviteMemberToOrganizationRequestValidatorSpec.cs"},"region":{"startLine":57}}}],"partialFingerprints":{"codehealthFindingId/v1":"17e5eb7a37284c8efe2f925d8cf0d129fa22808613af941b6e35a16a347d46d2"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/OrganizationsInfrastructure.UnitTests/Api/Organizations/UnassignOrganisationRoleRequestValidatorSpec.cs"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"34b683568cd77f5742432658f76e19402e9a613a2636e880ab1b05fa2f7e459f"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesInfrastructure.UnitTests/Api/Profiles/ChangeProfileContactAddressRequestValidatorSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"0b1b98b9dc0d0a9ca33bac2987285d9aa7af519f3734ba641012f29ccbe1249e"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesInfrastructure.UnitTests/Api/Profiles/ChangeProfileRequestValidatorSpec.cs"},"region":{"startLine":33}}}],"partialFingerprints":{"codehealthFindingId/v1":"76623e2a9c620eab698d01a0671d61bebe8694484f982a2c3da9f12477bce2da"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenFirstNameIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesInfrastructure.UnitTests/Api/Profiles/ChangeProfileRequestValidatorSpec.cs"},"region":{"startLine":39}}}],"partialFingerprints":{"codehealthFindingId/v1":"6f5ecec2b8785341d08ce3881109413bff37390de5073a0fd0e013481bd063fe"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenLastNameIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesInfrastructure.UnitTests/Api/Profiles/ChangeProfileRequestValidatorSpec.cs"},"region":{"startLine":57}}}],"partialFingerprints":{"codehealthFindingId/v1":"ae1af8650358e4763add959272a2f273ace4e44e0471eee8a1a0f63fed7e8e4b"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenDisplayNameIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesInfrastructure.UnitTests/Api/Profiles/ChangeProfileRequestValidatorSpec.cs"},"region":{"startLine":76}}}],"partialFingerprints":{"codehealthFindingId/v1":"d32a5420b7f81d443f025c1b831e472d8e877d8f672234792b2576deef5d1d0e"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenPhoneNumberIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesInfrastructure.UnitTests/Api/Profiles/ChangeProfileRequestValidatorSpec.cs"},"region":{"startLine":95}}}],"partialFingerprints":{"codehealthFindingId/v1":"993814b6a17f7edcfcf87ea0ac303d9444fb4b1642a1469be5d66be3f00494bf"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenLocaleIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesInfrastructure.UnitTests/Api/Profiles/ChangeProfileRequestValidatorSpec.cs"},"region":{"startLine":113}}}],"partialFingerprints":{"codehealthFindingId/v1":"d7df665e95e7cf49fcc0c629f49610fdbb687da702f957df7699f40bd18a84c8"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenTimezoneIsNull_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/UserProfilesInfrastructure.UnitTests/Api/Profiles/ChangeProfileRequestValidatorSpec.cs"},"region":{"startLine":132}}}],"partialFingerprints":{"codehealthFindingId/v1":"c32cefa468b99ce710817e7b79ed77b52c1b7544a39d77dd05f6e68c29cc0931"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/ImagesInfrastructure.UnitTests/Api/Images/DeleteImageRequestValidatorSpec.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"f2fbb808814016fe6159fa47734bd2f7a91f04d7c08b3dfef8a162b15621a0eb"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/ImagesInfrastructure.UnitTests/Api/Images/DownloadImageRequestValidatorSpec.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"b9d6445c63b1c8bf12e21284116e2fd1d8cbd805c94be0a2b2e19a039de24b4d"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/ImagesInfrastructure.UnitTests/Api/Images/GetImageRequestValidatorSpec.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"082f1214d5819b1025bb9b9edc5145c374c28e42d8595dbb5273cea136d3dc9a"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/ImagesInfrastructure.UnitTests/Api/Images/UpdateImageRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"57ab4dcf1cc9f5ccd07fce9480cf130ef582affe2d89c4b648a723becbe1d890"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenDescriptionIsEmpty_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/ImagesInfrastructure.UnitTests/Api/Images/UpdateImageRequestValidatorSpec.cs"},"region":{"startLine":33}}}],"partialFingerprints":{"codehealthFindingId/v1":"38524ecaa7b490b3a6763a1fc0c1af5673320cbe6f245f318a6ca207d2a7fc8b"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenAllProperties_ThenSucceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/ImagesInfrastructure.UnitTests/Api/Images/UploadImageRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"284dbc68ff7dbbc7264b4b28b3e230fa6863de9bdb1cac45cc2072f493aa1ce5"}},{"ruleId":"D10","level":"note","message":{"text":"No direct assertions: WhenDescriptionIsEmpty_ThenSuceeds: In a harness-style test project (most tests assert via a verifier/approval harness or step indirection) \u2014 no conventional assertion call was detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/ImagesInfrastructure.UnitTests/Api/Images/UploadImageRequestValidatorSpec.cs"},"region":{"startLine":31}}}],"partialFingerprints":{"codehealthFindingId/v1":"499395a0fc275fdff3204f36419b214bb851812bcc04f4aae2797ee134b7a2fe"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EventNotificationsInfrastructure.UnitTests/Api/DomainEvents/NotifyDomainEventRequestValidatorSpec.cs"},"region":{"startLine":26}}}],"partialFingerprints":{"codehealthFindingId/v1":"710bb6a796db8bb69d09daf40fb0dfcd2b64c05f0dd039430ef7d940f4d6b34f"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsInfrastructure.UnitTests/Api/Subscriptions/CancelSubscriptionRequestValidatorSpec.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"d09bc3ca8a0d3231d9c4589d4a65747e69f80f2628cbb8836f04a05c620315de"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsInfrastructure.UnitTests/Api/Subscriptions/ChangeSubscriptionPlanRequestValidatorSpec.cs"},"region":{"startLine":27}}}],"partialFingerprints":{"codehealthFindingId/v1":"68f265db4a62d977d2517254b99389ac01a4feb07064f9392b1dcb44065ed7a3"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsInfrastructure.UnitTests/Api/Subscriptions/ForceCancelSubscriptionRequestValidatorSpec.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"e348461563ae3484f709d727bd3a1d2836e6954cfefb1965a356e68f9959f20f"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsInfrastructure.UnitTests/Api/Subscriptions/MigrateSubscriptionRequestValidatorSpec.cs"},"region":{"startLine":31}}}],"partialFingerprints":{"codehealthFindingId/v1":"86803b9421f481757868b5406f92e047e715fc48b748a4acf48ce346934566f9"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsInfrastructure.UnitTests/Api/Subscriptions/SearchSubscriptionHistoryRequestValidatorSpec.cs"},"region":{"startLine":30}}}],"partialFingerprints":{"codehealthFindingId/v1":"75dc219ea10092c0b756efad3a3d55017ec34ff25db95085d7e372e3223d65e9"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenFromUtcAndToUtcAreWithinLimits_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsInfrastructure.UnitTests/Api/Subscriptions/SearchSubscriptionHistoryRequestValidatorSpec.cs"},"region":{"startLine":112}}}],"partialFingerprints":{"codehealthFindingId/v1":"8ae59e9c2034665fe5e57dc67672ee0d230b8ef9a2df938ef2c32418b26a2549"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsInfrastructure.UnitTests/Api/Subscriptions/SearchSubscriptionsToMigrateRequestValidatorSpec.cs"},"region":{"startLine":22}}}],"partialFingerprints":{"codehealthFindingId/v1":"8120cb2888397d746a9b8607a58425ab4e11969a773a4b18a7a4dae2c9f0c398"}},{"ruleId":"D10","level":"warning","message":{"text":"No assertions: WhenAllProperties_ThenSucceeds: Test method exercises code but verifies nothing \u2014 add an assertion."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsInfrastructure.UnitTests/Api/Subscriptions/TransferSubscriptionRequestValidatorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"5ff5c79a175f803cde9185166b8bc003ca6ed234fee625a357fe27d58e51e658"}},{"ruleId":"D13","level":"error","message":{"text":"Leaked secret: high-entropy-secret: high-entropy-secret detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersDomain/EndUserRoot.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"c0e81846e65c060c3ddb6589904522cb65ab1577d8946034aeba07ad732cd96c"}},{"ruleId":"D13","level":"error","message":{"text":"Leaked secret: hardcoded-credential: hardcoded-credential detected."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Testing/IntegrationTesting.Website.Common/WebsiteTestingExtensions.cs"},"region":{"startLine":211}}}],"partialFingerprints":{"codehealthFindingId/v1":"018510b3830d4c8ab4a672d5b5f2659399ef83c25c4d34f0059a2816df7207d3"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs: src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs changed 3 times in last 90 days, max complexity 45. 1 of those changes were fix/bug commits \u2014 a defect-dense hotspot worth prioritising."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"0ccae7db456acd3d4d16804ec37e0f95a5a1adcbc2725b73fc75b6806f31b99c"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: src/Subdomains/Generic/EndUsersDomain/EndUserRoot.cs: src/Subdomains/Generic/EndUsersDomain/EndUserRoot.cs changed 3 times in last 90 days, max complexity 45. 1 of those changes were fix/bug commits \u2014 a defect-dense hotspot worth prioritising."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersDomain/EndUserRoot.cs"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"41fe7f7306d92460ea3a4d26a65e8e8fbafceb15ed66c106dadb22d7b8523889"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs: src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs changed 3 times in last 90 days, max complexity 41. 3 of those changes were fix/bug commits \u2014 a defect-dense hotspot worth prioritising."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"d313ee29276bd3295b3f2ce5e9c67f4fa62b000c592629f3c9558f60d0f7e343"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: src/Subdomains/Generic/AncillaryApplication/AncillaryApplication.Emailing.cs: src/Subdomains/Generic/AncillaryApplication/AncillaryApplication.Emailing.cs changed 2 times in last 90 days, max complexity 32. 2 of those changes were fix/bug commits \u2014 a defect-dense hotspot worth prioritising."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/AncillaryApplication/AncillaryApplication.Emailing.cs"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"907c2ae179b28031ebb6910de1c633aac15f5f05e663822cc9e5b66090b84177"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_DomainEventHandlers.cs: src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_DomainEventHandlers.cs changed 2 times in last 90 days, max complexity 24."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_DomainEventHandlers.cs"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"0e3f2bb7bf6c3030c5d43fd9f6fb62a9f42b1a0e65f86af85511ecf730ae3202"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/LocalMachineJsonFileStore.cs: src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/LocalMachineJsonFileStore.cs changed 1 times in last 90 days, max complexity 46. 1 of those changes were fix/bug commits \u2014 a defect-dense hotspot worth prioritising."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/LocalMachineJsonFileStore.cs"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"64f8bc0c4a19ec447d8d162b86f2dd1be528124eac13e5f9fd8d71dbc6abafe3"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.Trials.cs: src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.Trials.cs changed 2 times in last 90 days, max complexity 21."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.Trials.cs"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"54db6aebe299cb9221f4e197b83cad2d31e28b62156c391e94e6ab64d094b984"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: src/Subdomains/Generic/EndUsersInfrastructure/Persistence/ReadModels/EndUserProjection.cs: src/Subdomains/Generic/EndUsersInfrastructure/Persistence/ReadModels/EndUserProjection.cs changed 1 times in last 90 days, max complexity 40."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersInfrastructure/Persistence/ReadModels/EndUserProjection.cs"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"9331bfd70bea080df24a415e08f60c046e88a005919c86ccbcbb3ba48ff5d3ea"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Extensions/HostExtensions.cs: src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Extensions/HostExtensions.cs changed 1 times in last 90 days, max complexity 39. 1 of those changes were fix/bug commits \u2014 a defect-dense hotspot worth prioritising."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Hosting.Common/Extensions/HostExtensions.cs"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"ab034cb5a1ff7f0b246d762cecf0cdcbd15fc951bfe61a762e459a448551e8af"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_Quotas.cs: src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_Quotas.cs changed 1 times in last 90 days, max complexity 38."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionsApplication_Quotas.cs"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"ff7bb1e46418d12dece91020d6a7037d5e08a3f8d60dd29e1f1f377bc08b0b36"}},{"ruleId":"D16","level":"note","message":{"text":"Off-boarding risk: anonymized user #1: If anonymized user #1 becomes unavailable, 234 significant file(s) lose their only recent owner (largest: src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.cs). Pair on, review, or document these before any departure."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"a890cd06b298e00310a7b91f1a29e1186330ece9f75ac637f30f47519ba49b94"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: we use QueryEntity.ToDto() here, since EventSourcedChangeEvent can be rehydrated without a IDomainFactory \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/InProcessInMemStore.IEventStore.cs"},"region":{"startLine":88}}}],"partialFingerprints":{"codehealthFindingId/v1":"ec2caf22c5d57cd30e924c42264035a506dcc66d78d8e14fd2f1b7df8dd113fb"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: we use QueryEntity.ToDto() here, since EventSourcedChangeEvent can be rehydrated without a IDomainFactory \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/ExternalAdapters/Infrastructure.External.Persistence.TestingOnly/ApplicationServices/LocalMachineJsonFileStore.IEventStore.cs"},"region":{"startLine":95}}}],"partialFingerprints":{"codehealthFindingId/v1":"15d59a3c5c3d5f43304be1287aa52a9f83d7eb539b3d13647759c5dd790715b9"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable S2344"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common.UnitTests/Extensions/EnumExtensionsSpec.cs"},"region":{"startLine":91}}}],"partialFingerprints":{"codehealthFindingId/v1":"121ad92f89fac178b9cbacebe8d1c7c3bc6e9263f5d9fa3e149651ed21aec976"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable S2344"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common.UnitTests/Extensions/EnumExtensionsSpec.cs"},"region":{"startLine":99}}}],"partialFingerprints":{"codehealthFindingId/v1":"121ad92f89fac178b9cbacebe8d1c7c3bc6e9263f5d9fa3e149651ed21aec976"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable S2344"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Domain/Domain.Common.UnitTests/ValueObjects/ValueObjectSpec.cs"},"region":{"startLine":460}}}],"partialFingerprints":{"codehealthFindingId/v1":"94e44d4425c33e589005435ad399b8c69e74acb7191202fe95f457b2d1f64836"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable 1591"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common/Annotations.cs"},"region":{"startLine":29}}}],"partialFingerprints":{"codehealthFindingId/v1":"33c38f36666270b27f6062089f540a8c51be4b26a09f2857e1067d610ca6a2b5"}},{"ruleId":"D17","level":"note","message":{"text":"ObsoleteWithoutCallers: [Obsolete] TerminatesProgramAttribute"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Common/Annotations.cs"},"region":{"startLine":995}}}],"partialFingerprints":{"codehealthFindingId/v1":"f2810c2b25bd857154e03b02f64a71de29023e90beae2903c884d2040167a2fa"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD043"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Domain/Domain.Common/DomainEvent.cs"},"region":{"startLine":8}}}],"partialFingerprints":{"codehealthFindingId/v1":"f7b5c4052954d14ce26b38e06737d268dcdb8fcc2cc0fa66c728ab69bc27d730"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD043"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Domain/Domain.Common/TombstoneDomainEvent.cs"},"region":{"startLine":9}}}],"partialFingerprints":{"codehealthFindingId/v1":"5e8af17648adc79d3cf289488b7242cbd5608a37043de63a35689d0d376c4249"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD043"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Domain.Events.Shared/Bookings/ReservationMade.cs"},"region":{"startLine":7}}}],"partialFingerprints":{"codehealthFindingId/v1":"1347c6df8dcf8077a547a368fab3d12473a8cf6ec33f8af1daf5acfe691b3fd8"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD043"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Domain.Events.Shared/Bookings/TripBegan.cs"},"region":{"startLine":7}}}],"partialFingerprints":{"codehealthFindingId/v1":"f1fe60dab2d1244198b962ffa3e135970cad9461fc57d6b2d73574eebad2e3bb"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD043"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Domain.Events.Shared/EndUsers/MembershipFeaturesReset.cs"},"region":{"startLine":7}}}],"partialFingerprints":{"codehealthFindingId/v1":"f927d8752b6ca06b8f26578f5ec6d19a5e40a633300840e80ca96cd5807980d1"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD043"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Domain.Events.Shared/EndUsers/PlatformFeaturesReset.cs"},"region":{"startLine":7}}}],"partialFingerprints":{"codehealthFindingId/v1":"29f95fb357081bbd73fefb7522496e86c1277189e6623e9afdfc3b32d681570b"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD043"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Domain.Events.Shared/Identities/PersonCredentials/MfaStateReset.cs"},"region":{"startLine":7}}}],"partialFingerprints":{"codehealthFindingId/v1":"77accfb9707bdf3c6919d0dfd309e455b1e7807bdc3fc19d8ca27407bc4f8fa2"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD043"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Domain.Events.Shared/Organizations/OnboardingReset.cs"},"region":{"startLine":8}}}],"partialFingerprints":{"codehealthFindingId/v1":"76d8f0722772865e4bfc65314c8ce2c21f1595195428f3dab266e5cd46539a90"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD041"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Domain/Domain.Common/DomainEvent.cs"},"region":{"startLine":9}}}],"partialFingerprints":{"codehealthFindingId/v1":"f7b5c4052954d14ce26b38e06737d268dcdb8fcc2cc0fa66c728ab69bc27d730"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD041"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Domain/Domain.Common/TombstoneDomainEvent.cs"},"region":{"startLine":10}}}],"partialFingerprints":{"codehealthFindingId/v1":"5e8af17648adc79d3cf289488b7242cbd5608a37043de63a35689d0d376c4249"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD042"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Domain/Domain.Common/DomainEvent.cs"},"region":{"startLine":10}}}],"partialFingerprints":{"codehealthFindingId/v1":"f7b5c4052954d14ce26b38e06737d268dcdb8fcc2cc0fa66c728ab69bc27d730"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD042"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Domain/Domain.Common/TombstoneDomainEvent.cs"},"region":{"startLine":11}}}],"partialFingerprints":{"codehealthFindingId/v1":"5e8af17648adc79d3cf289488b7242cbd5608a37043de63a35689d0d376c4249"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: we assume that an empty JSON request was signed \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.Web.Api.Common/Extensions/HttpRequestExtensions.cs"},"region":{"startLine":48}}}],"partialFingerprints":{"codehealthFindingId/v1":"77460f43449486ecae17b3bd4749a879213b71a2eae6713172ca0097a2560eb2"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: required to analyze custom attributes \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Tools/Tools.Generators.Common.UnitTests/FeatureFlagGeneratorSpec.cs"},"region":{"startLine":19}}}],"partialFingerprints":{"codehealthFindingId/v1":"5a1254d5b8c4841fbf76e626ed2b7ac7252f1a167c7314f9d1a6ff3b660baeb9"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: required to analyze custom attributes \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Tools/Tools.Generators.Web.Api.Authorization.UnitTests/AuthorizationAttributeGeneratorSpec.cs"},"region":{"startLine":18}}}],"partialFingerprints":{"codehealthFindingId/v1":"0ea0bf73b898d5aac000c331d277169bcf2ca804e21b8803bbce634ad7b0b562"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: required to analyze custom attributes \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Tools/Tools.Generators.Web.Api.UnitTests/MinimalApiGeneratorSpec.cs"},"region":{"startLine":23}}}],"partialFingerprints":{"codehealthFindingId/v1":"c81cfb7739e532462509c5adc8cef2c6d819d009a797bd2e65ec727879284f95"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: required to analyze use custom attributes \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Tools/Tools.Generators.Web.Api.UnitTests/WebApiAssemblyVisitorSpec.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"74415f49192869719fe6bf042ae5ffc8368208fd0eebf9929e4af6aabd9ba3a1"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: notice that all enum values in the route or query must be case sensitive! \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/ApiHost1.IntegrationTests/GeneralApiSpec.cs"},"region":{"startLine":76}}}],"partialFingerprints":{"codehealthFindingId/v1":"3dab83cfc965339a5aa3e75fc3d06dca2fe2da11e457361f04e1b91d08f39272"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: notice that all enum values in the route or query must be case sensitive! \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/ApiHost1.IntegrationTests/GeneralApiSpec.cs"},"region":{"startLine":144}}}],"partialFingerprints":{"codehealthFindingId/v1":"3dab83cfc965339a5aa3e75fc3d06dca2fe2da11e457361f04e1b91d08f39272"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: notice that all enum values in the route or query must be case sensitive! \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/ApiHost1.IntegrationTests/GeneralApiSpec.cs"},"region":{"startLine":211}}}],"partialFingerprints":{"codehealthFindingId/v1":"3dab83cfc965339a5aa3e75fc3d06dca2fe2da11e457361f04e1b91d08f39272"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: to ensure that the new token is not the same (in time) as the old token \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost.IntegrationTests/AuthNApiSpec.cs"},"region":{"startLine":40}}}],"partialFingerprints":{"codehealthFindingId/v1":"6f1f02bad690456f89ced9a891184d2cc9dc75d23b09eb299f3d42f3f2cae35e"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: to ensure that the new token is not the same (in time) as the old token \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.IntegrationTests/AuthTokensApiSpec.cs"},"region":{"startLine":56}}}],"partialFingerprints":{"codehealthFindingId/v1":"5898a76f1d3fc3ae29ca39fd25e5cfa53fe3d9e0e946e5d5376f35b244214e59"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: to ensure that the new token is not the same (in time) as the old token \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.IntegrationTests/AuthTokensApiSpec.cs"},"region":{"startLine":73}}}],"partialFingerprints":{"codehealthFindingId/v1":"5898a76f1d3fc3ae29ca39fd25e5cfa53fe3d9e0e946e5d5376f35b244214e59"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD018"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersDomain/EndUserRoot.RolesAndFeatures.cs"},"region":{"startLine":31}}}],"partialFingerprints":{"codehealthFindingId/v1":"10a3b2d925738d53f416d99081712cc22c9e87eabbe8fa354b6a55f32aa83bdb"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD018"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.Quotas.cs"},"region":{"startLine":13}}}],"partialFingerprints":{"codehealthFindingId/v1":"0813f0ce801b7a502c5c9592a092d33e59ff32d02519f0be4a54d85086d6a781"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD018"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.Trials.cs"},"region":{"startLine":23}}}],"partialFingerprints":{"codehealthFindingId/v1":"f0c2324d042528f55f7f8f952d4111867f48323828304e521c2279c36e7b86a4"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD010"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersDomain/EndUserRoot.RolesAndFeatures.cs"},"region":{"startLine":32}}}],"partialFingerprints":{"codehealthFindingId/v1":"10a3b2d925738d53f416d99081712cc22c9e87eabbe8fa354b6a55f32aa83bdb"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD010"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.Quotas.cs"},"region":{"startLine":12}}}],"partialFingerprints":{"codehealthFindingId/v1":"0813f0ce801b7a502c5c9592a092d33e59ff32d02519f0be4a54d85086d6a781"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD010"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.Trials.cs"},"region":{"startLine":22}}}],"partialFingerprints":{"codehealthFindingId/v1":"f0c2324d042528f55f7f8f952d4111867f48323828304e521c2279c36e7b86a4"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD014"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersDomain/EndUserRoot.RolesAndFeatures.cs"},"region":{"startLine":33}}}],"partialFingerprints":{"codehealthFindingId/v1":"10a3b2d925738d53f416d99081712cc22c9e87eabbe8fa354b6a55f32aa83bdb"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD014"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.Quotas.cs"},"region":{"startLine":11}}}],"partialFingerprints":{"codehealthFindingId/v1":"0813f0ce801b7a502c5c9592a092d33e59ff32d02519f0be4a54d85086d6a781"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD014"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionRoot.Trials.cs"},"region":{"startLine":21}}}],"partialFingerprints":{"codehealthFindingId/v1":"f0c2324d042528f55f7f8f952d4111867f48323828304e521c2279c36e7b86a4"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD012"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityDomain/PersonCredentialRoot.cs"},"region":{"startLine":34}}}],"partialFingerprints":{"codehealthFindingId/v1":"c2fe3a9ac324addff0079c2a296bf2f724da8262ec6f3bb5c2de7427db7b594c"}},{"ruleId":"D17","level":"warning","message":{"text":"BareSuppressMessage: SuppressMessage"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/IdentityInfrastructure.IntegrationTests/SingleSignOnApiSpec.cs"},"region":{"startLine":198}}}],"partialFingerprints":{"codehealthFindingId/v1":"031a66cf74f2775f06d7be5f5db32c56d887ae3acba0dad6089fd451bed5ccee"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: //HACK: possibly a better way to buffer this data in memory? \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/ImagesApplication/ImagesApplication.cs"},"region":{"startLine":72}}}],"partialFingerprints":{"codehealthFindingId/v1":"1795ed8742e4f6725aaa165e93c3adc9dce1152e590645c097b21294c7e9eed3"}},{"ruleId":"D17","level":"warning","message":{"text":"HackComment: // HACK: what to do if we don\u0027t have a subscription? \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsApplication/SubscriptionApplication_ProviderNotifications.cs"},"region":{"startLine":273}}}],"partialFingerprints":{"codehealthFindingId/v1":"052873e35480fa1aa94d295a4ef6855b50295aee779b6345cdea149c6f9df12b"}},{"ruleId":"D17","level":"warning","message":{"text":"TodoComment: //TODO: add your other invariant rules here \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: PROJ-123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/SubscriptionsDomain/SubscriptionQuotaUsageRoot.cs"},"region":{"startLine":107}}}],"partialFingerprints":{"codehealthFindingId/v1":"08226d76eb91ad2de6d96d8e6b38aa88a4dea351e1fe5983addd9e7cc55789bd"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASAPP014"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Application.Resources.Shared/Subscription.cs"},"region":{"startLine":286}}}],"partialFingerprints":{"codehealthFindingId/v1":"a4b7edc0f5dd938f0905e6e92662e40645bed8a4ba03fea4057a5b48e50638d7"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASDDD049"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Domain.Events.Shared/Subscriptions/ManagedQuotasStarted.cs"},"region":{"startLine":25}}}],"partialFingerprints":{"codehealthFindingId/v1":"e9787935faab381d28ad4cae35a9515790b686df729aad958d56512b8b730244"}},{"ruleId":"D17","level":"warning","message":{"text":"ObsoleteWithCallers: [Obsolete] Happened"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Domain.Events.Shared/TestingOnly/Happened.cs"},"region":{"startLine":9}}}],"partialFingerprints":{"codehealthFindingId/v1":"df9e025a1177493de7e0dbb11a348be8eca4e6942e4337ec5613d7cc7d70dcf3"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable CA1822"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Domain.Shared/Features.cs"},"region":{"startLine":98}}}],"partialFingerprints":{"codehealthFindingId/v1":"2eb7c0bf98858b840486d65a11129f2a68b723512d1e56e5054bc8a741816807"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable CA1822"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Domain.Shared/Roles.cs"},"region":{"startLine":97}}}],"partialFingerprints":{"codehealthFindingId/v1":"432e7efbaa2e59b46413812ad5a32f3948649233202655ba385eca84cd4186de"}},{"ruleId":"D17","level":"warning","message":{"text":"BarePragmaDisable: #pragma warning disable SAASWEB037"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Shared/Infrastructure.Web.Api.Operations.Shared/TestingOnly/PostWithEmptyBodyAndRequiredPropertiesTestingOnlyRequest.cs"},"region":{"startLine":17}}}],"partialFingerprints":{"codehealthFindingId/v1":"7af8c6b66c5a14f4145d977045aecb1345757486d25a1e9a0038aab7f7a40bde"}},{"ruleId":"D18","level":"note","message":{"text":"Shell project: UnitTesting.CodeAnalysis.Common: \u0060UnitTesting.CodeAnalysis.Common\u0060 contributes only 9 significant line(s) \u2014 an empty/placeholder project is structural noise. Remove it or fold its contents into a real project."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Testing/UnitTesting.CodeAnalysis.Common/UnitTesting.CodeAnalysis.Common.csproj"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"9fc6ee1dbd9f835ca90888eac0ccc896ef04b63bd873dcd45afe7bf6837eb6c4"}},{"ruleId":"D18","level":"note","message":{"text":"Shell project: Infrastructure.External.Common: \u0060Infrastructure.External.Common\u0060 contributes only 0 significant line(s) \u2014 an empty/placeholder project is structural noise. Remove it or fold its contents into a real project."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Framework/Infrastructure/Infrastructure.External.Common/Infrastructure.External.Common.csproj"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"3165ba0cf07f565f5193476b35ed8668c41b451672f0e8a754f3dc1832e4df6c"}},{"ruleId":"D18","level":"note","message":{"text":"Thin analysable surface across projects: 3 project(s) carry only a thin slice of real code (e.g. \u0060Tools.Generators.Web.Api.UnitTests.TestData\u0060 with 12 significant line(s)). The mean analysable-surface weight is 97 %, lowering Solution Shape by about 0.2 point(s). Consolidate thin projects or grow them into substantial, well-scoped assemblies."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"dd0b92fd965c2065080f16843920964ee00f7696ea03d87cdf61aed4cd2c746a"}},{"ruleId":"D20","level":"warning","message":{"text":"Context/problem and consequences/trade-offs are absent from the visible text: Add a Context section explaining why ASP.NET Minimal API was chosen over controllers (e.g. testability, pluggable modules) and a Consequences section covering trade-offs such as loss of routing flexibility or boilerplate for source generators"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"docs/design-principles/0020-api-framework.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"c3173e32f94a92e4a3579d80354c250dd73c2b07289872f1ad3503fff629966b"}},{"ruleId":"D20","level":"warning","message":{"text":"Decision is a thin implementation heading with no context/problem and no consequences; the title \u0027Dependency Injection\u0027 names only the subject: Add Context: why dependency injection was chosen over alternatives (e.g. coupling vs testability), and Consequences: trade-offs like boilerplate or breaking existing code"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"docs/design-principles/0060-dependency-injection.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"0d954e5e8fc786ce2628368494189f3ccc6ea862bffa5a08e95117b26e1a96e7"}},{"ruleId":"D20","level":"warning","message":{"text":"Context/problem and consequences/trade-offs are absent; only how-to sections with no rationale: Add a Context section explaining why forms need this ID-based testing/styling system (e.g. accessibility, component reuse) and a Consequences section on trade-offs such as requiring id attributes on every HTML element"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"docs/design-principles/0210-javascript-forms.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"eea34e1ba2ba159dcf07fb86e0e29aef8bee14a80c0484ec736d2f56f21be05b"}},{"ruleId":"D23","level":"note","message":{"text":"Bounded contexts not declared: At 88k LoC across 142 projects the codebase is both large and multi-module, so explicit bounded contexts are needed. Declare architecture.contexts (\u22652) in config to assess cross-boundary type coupling."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"1c7e276c9c682731f01819ed5378b90ca320cde1b583c90920172911598362b3"}},{"ruleId":"D26","level":"note","message":{"text":"Split Common: Generic catch-all name at 6906 LoC and 167 types across 6 namespaces is a sprawling grab-bag. Suggested: by namespace: split the 6 namespaces into focused shared libraries"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"ec41db043b6f914d3e21766f08b4ec1f0a411cce6d4a049ff8e9ebcddc4e80ea"}},{"ruleId":"D26","level":"note","message":{"text":"Split Infrastructure.Web.Api.Operations.Shared: Generic Infrastructure name at 3384 LoC and 286 types across 18 namespaces is a large sprawling grab-bag. Suggested: by namespace: split the 18 namespaces into focused shared libraries"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"1858f2679176affa61039d9f4e2a177e6f08f064532dc7538388d07fc458726e"}},{"ruleId":"D26","level":"note","message":{"text":"Split Domain.Events.Shared: Generic Domain name at 2788 LoC and 157 types across 22 namespaces is a large grab-bag. Suggested: by namespace: split the 22 namespaces into focused shared libraries"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"e38ae22e9e667cf9f1a8f07fe79d7cf617737b5121d01108c188dc61d6d1727b"}},{"ruleId":"D28","level":"error","message":{"text":"Secret: private-key: matched rule \u0027private-key\u0027"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/ApiHost1/appsettings.json"},"region":{"startLine":104}}}],"partialFingerprints":{"codehealthFindingId/v1":"401b341d8221d0bd6f040252ae129d261383954a59832c3bf43abb10f47b2062"}},{"ruleId":"D28","level":"error","message":{"text":"Secret: generic-api-key: matched rule \u0027generic-api-key\u0027"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/EndUsersDomain/EndUserRoot.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"3198e691810133e3dcebe9caaca31900b34af50684d20e5465135d81ce2167e7"}},{"ruleId":"D28","level":"error","message":{"text":"Secret: private-key: matched rule \u0027private-key\u0027"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/ApiHost1/appsettings.json"},"region":{"startLine":58}}}],"partialFingerprints":{"codehealthFindingId/v1":"16417d3e11d9b7b453fe547cb48f9b3d3ceb3ace8df522cbab3e14e12fccfa88"}},{"ruleId":"D28","level":"error","message":{"text":"Secret: generic-api-key: matched rule \u0027generic-api-key\u0027"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Subdomains/Generic/EndUsersDomain/EndUserRoot.cs"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"932b2b870ca7b5c998aceb5eb9b762052e4ccdb7213e9a36d8fa01a714990f7a"}},{"ruleId":"D28","level":"note","message":{"text":"Rotate the exposed credentials \u2014 git history can\u0027t be un-committed: Some of these secrets are in git HISTORY: deleting the file does not remove them (the commit persists on every clone, fork and backup). The remediation is to ROTATE each historically-exposed credential and treat it as compromised \u2014 not to delete the file. Rewriting history is disruptive and unreliable across existing forks. (Working-tree-only secrets \u2014 no commit \u2014 can instead be removed from the file and moved to a secret store.)"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"3cdfd7beb31b791ae18dcb425e21eb157c842e7bbcd522cc330573c1a6538db1"}},{"ruleId":"D30","level":"error","message":{"text":"Critical CVE: NuGet.Packaging 5.6.0: NuGet.Packaging 5.6.0 (transitive) has a Critical advisory; affects 5 projects \u2014 one upgrade fixes all. https://github.com/advisories/[GHSA redacted]"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"f834da8fd1f91541bcffc5d5bc2eaf81135bdf28f372c29997d7b22a571f35f1"}},{"ruleId":"D30","level":"error","message":{"text":"High CVE: Newtonsoft.Json 12.0.2: Newtonsoft.Json 12.0.2 (transitive) has a High advisory; affects 64 projects \u2014 one upgrade fixes all. https://github.com/advisories/[GHSA redacted]"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"84751b0f575da4b94e3e57be8e8cae7a514ee01700a99e287c13e927bad802c8"}},{"ruleId":"D30","level":"error","message":{"text":"High CVE: System.Net.Http 4.3.0: System.Net.Http 4.3.0 (transitive) has a High advisory; affects 71 projects \u2014 one upgrade fixes all. https://github.com/advisories/[GHSA redacted]"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"7cf85abffe732f2645ef95a624d6badc26f0263616284d6a4cc46ca8e983031d"}},{"ruleId":"D30","level":"error","message":{"text":"High CVE: System.Text.RegularExpressions 4.3.0: System.Text.RegularExpressions 4.3.0 (transitive) has a High advisory; affects 71 projects \u2014 one upgrade fixes all. https://github.com/advisories/[GHSA redacted]"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"b96b7173c4377d5bea4d6fd7b52323631c631c44172b743bec6f266c10a4e538"}},{"ruleId":"D30","level":"error","message":{"text":"High CVE: System.Linq.Dynamic.Core 1.5.1: System.Linq.Dynamic.Core 1.5.1 (transitive) has a High advisory; affects 116 projects \u2014 one upgrade fixes all. https://github.com/advisories/[GHSA redacted]"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"707cb67a10b58983c4f480316ae8d9cab1414cdb9e6a45f4425bdaffc346fbc0"}},{"ruleId":"D30","level":"error","message":{"text":"High CVE: NuGet.Common 5.6.0: NuGet.Common 5.6.0 (transitive) has a High advisory; affects 5 projects \u2014 one upgrade fixes all. https://github.com/advisories/[GHSA redacted]"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"4a9b9cbff5806572faa42c6db2f201fbd2e07e68cd7c012236661312e79df7e4"}},{"ruleId":"D30","level":"error","message":{"text":"High CVE: NuGet.Protocol 5.6.0: NuGet.Protocol 5.6.0 (transitive) has a High advisory; affects 5 projects \u2014 one upgrade fixes all. https://github.com/advisories/[GHSA redacted]"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"d97563ad4f3935aefb8755b88db069432bb8eb8e885aff5d379dd40b530ccdae"}},{"ruleId":"D30","level":"error","message":{"text":"High CVE: NuGet.Protocol 5.6.0: NuGet.Protocol 5.6.0 (transitive) has a High advisory; affects 5 projects \u2014 one upgrade fixes all. https://github.com/advisories/[GHSA redacted]"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"d97563ad4f3935aefb8755b88db069432bb8eb8e885aff5d379dd40b530ccdae"}},{"ruleId":"D34","level":"note","message":{"text":"Dormant codebase: 279 of 361 significant files have no living knowledge \u2014 the codebase as a whole is dormant, not 279 separate risks. Re-engage owners or document before change."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"4c69f1e54b7dd6fe9029dd02df6ba8f8145b789f2f18dbdaa086c40ded49dba6"}},{"ruleId":"D38","level":"error","message":{"text":"Critical CVE: [GHSA redacted]: vitest: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"f43bd89e27df616fc713e4c98e1832b9f64cf9369a3c0ef120a946e2bb563da7"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: @nevware21/ts-utils: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"737bb815698c5d6d27a0f9cadbaa411339b58cf4c02ce32511adca9353708433"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: defu: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"a522cbdac1df2873d7f904bbed29f421f021e47e73ee6e4272058c97e24d16cf"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: lodash: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"e6cc3e361487408d2d9d23dd2ba000a805886bfc14f44e8f8e972ee6b9723920"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: minimatch: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"26f043598d4c8eaf721917f03b58f63c237920888f0fd5851648153f53cd7733"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: minimatch: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"8b6fb9911670da916d85f771b2d94250762a52659bd8ca7a8c168cce66e77f8d"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: minimatch: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"619964398ecb20bab3eb93d8930a61f407922f4df398d81feebdb289feb8f37c"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: picomatch: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"f997a74bf2069b042857f23ed6f412cd1aeba4368c7623e2cbffddc8b2c616cc"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: react-router: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"87656327e6db7e17b5522d2f90601460d8fa5989b34c0816aa77256d623abb5a"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: react-router: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"b5ac1aeb35849771bb41829ad90d98f46c960213575c5edad3a0f2fbbdf24abe"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: react-router: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"2735e9c0889309d3b1c22cf980a6929cf78494dd9b4df4ec876e76cef90001f0"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: react-router: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"1fda51181c110dd3a596439536b9756bbc21b3d3038121fc88638504734f443d"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: rollup: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"9cd17a560b0f8fe1d9fbf5c6f67dcd3d9f759ae9af5a309dcd7822e21e7059cf"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: storybook: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"d8b6af69e8b8b7dc1ace1b844d7a35907dc24351d30fd77f6597ed868b408a32"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: tar: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"30e50bb0ab79239c55a2172738aee0bc897be0ebdeb254c77c333189461473a2"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: tar: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"1af45da4b0730f070fdbf2cf3752dc1d76607701df4fb11d4f5e32ba1f3d43d5"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: tar: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"19ac9c9a481f1de0c74bf13244a5b61a9c6986b1349288d97c4b5cc6d29ee65f"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: vite: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"848b627fdba4163b3cb6c23d088778a313a0818c41cfd520f2414d8fbb61b61f"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: vite: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"4d5274c4a8f6a48ae7ee21f5d9eee345500bc923ccac6170135fb13ae6d50834"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: vite: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"cccc048dc759aa1aa475cb52a7c2f6776d5aea3944530cbec5ac4876b7ece169"}},{"ruleId":"D38","level":"error","message":{"text":"High CVE: [GHSA redacted]: ws: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"b56e69d84502fd02eca6eaadc07ec5c9940bc4c2d11dfcfc0409ab778dce6a40"}},{"ruleId":"D38","level":"warning","message":{"text":"Medium CVE: [GHSA redacted]: brace-expansion: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"2141ea2b1ec93e49c5e7a9a7765865dc699d792e9d5bb64ddaec9422d227bfa6"}},{"ruleId":"D38","level":"warning","message":{"text":"Medium CVE: [GHSA redacted]: i18next-http-backend: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"d7737efbdf03c83d0ed30971a2c242ac835e40548964eb31f10a80718b962cf9"}},{"ruleId":"D38","level":"warning","message":{"text":"Medium CVE: [GHSA redacted]: js-yaml: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"0c1089ab686751c58a4abbac64d140b7d03c9b62462893bc1a24615b4a2fe1cf"}},{"ruleId":"D38","level":"warning","message":{"text":"Medium CVE: [GHSA redacted]: lodash: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"034b979c7e806065d1eac0febfcaf9b54a0a39571c434ee2014d2ab14768f0bc"}},{"ruleId":"D38","level":"warning","message":{"text":"Medium CVE: [GHSA redacted]: picomatch: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"a05793750b1721e5a9570d0f5cd2b004ec3ed6f68cc5af804dd85b819b66b242"}},{"ruleId":"D38","level":"warning","message":{"text":"Medium CVE: [GHSA redacted]: postcss: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"08acda5f179ec58ff516aa8dbc094c1ed01b18ddd1150b25df2c7e24a29ec9b5"}},{"ruleId":"D38","level":"warning","message":{"text":"Medium CVE: [GHSA redacted]: react-router: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"b5cd5d3517096dc26c13eb181b345e54784d9fb666cf0d3eba2f7981db5349dc"}},{"ruleId":"D38","level":"warning","message":{"text":"Medium CVE: [GHSA redacted]: react-router: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"5a8456c54b68bf412bde613dd2401e5c6396ad8670018ec659d686379625f948"}},{"ruleId":"D38","level":"warning","message":{"text":"Medium CVE: [GHSA redacted]: tar: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"539c08777a259aebbcd41f1604c880e6cb51161da0d57de261cd29047c827e0f"}},{"ruleId":"D38","level":"warning","message":{"text":"Medium CVE: [GHSA redacted]: vite: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"5494e02079a7187dd790108b7bee77e335cc65e6f54512af1529db9721f71462"}},{"ruleId":"D38","level":"warning","message":{"text":"Medium CVE: [GHSA redacted]: vite: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"59c6ac4d63b84f8e24bd08c0090dab654b1dda9c9f836263d5f835ee20e50849"}},{"ruleId":"D38","level":"warning","message":{"text":"Medium CVE: [GHSA redacted]: ws: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"f6bde79b7647ab1898283ff0c411a5d9e76f47c46b8c9ef99e3e9ce31d30117d"}},{"ruleId":"D38","level":"note","message":{"text":"Low CVE: [GHSA redacted]: @babel/core: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"9ebee26e783ff56e71c2f8d59e341a42e74b78d98a734cf7b80243ddb8b1340e"}},{"ruleId":"D38","level":"note","message":{"text":"Low CVE: [GHSA redacted]: esbuild: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"6a8ba21dc23b7affd1ce3910b1782644e80f0989584c0012c3a2bd5d04e2bb2d"}},{"ruleId":"D38","level":"note","message":{"text":"Low CVE: [GHSA redacted]: react-router: [GHSA redacted]"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"src/Hosts/WebsiteHost/ClientApp/package-lock.json"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"f0fed4d6ef13f549d17e616a6a7d943b9a657c303d7bea773a51eb06b584ab07"}}],"taxonomies":[{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d","organization":"MITRE","shortDescription":{"text":"The MITRE Common Weakness Enumeration (CWE)."},"taxa":[{"id":"CWE-1395","name":"Dependency on Vulnerable Third-Party Component"},{"id":"CWE-798","name":"Use of Hard-coded Credentials"}]}],"properties":{"codehealthPublication":{"public":true,"notice":"This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings \u2014 which rule fired, in which file, on which line, and how to fix it \u2014 are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.","securityFindingsRedacted":0,"secretScannerRunsExcluded":0}}}]}