4.2 KiB
4.2 KiB
Audit - StellaOps.Policy.Registry
Project
- Path:
src/Policy/StellaOps.Policy.Registry/StellaOps.Policy.Registry.csproj - Module:
Policy - Kind:
Service - SDK:
Microsoft.NET.Sdk - TargetFramework:
net10.0 - Audit date (UTC): 2026-01-30
Coding Standards Findings
- Status: FAIL
- Nullable: enable
- TreatWarningsAsErrors: explicit true
- Deterministic: inherited true
- 100-line rule violations: 34
- Service locator usage (BuildServiceProvider/GetService): 1
- Analyzer enforcement: missing repo-wide (see summary).
Details
- 100-line files:
src/Policy/StellaOps.Policy.Registry/PolicyRegistryClient.cs(634 lines)src/Policy/StellaOps.Policy.Registry/Distribution/PolicyPackOciPublisher.cs(622 lines)src/Policy/StellaOps.Policy.Registry/Distribution/PolicyPackOfflineBundleService.cs(514 lines)src/Policy/StellaOps.Policy.Registry/Services/PromotionService.cs(477 lines)src/Policy/StellaOps.Policy.Registry/Services/PublishPipelineService.cs(443 lines)src/Policy/StellaOps.Policy.Registry/Services/BatchSimulationOrchestrator.cs(410 lines)src/Policy/StellaOps.Policy.Registry/Services/PolicySimulationService.cs(401 lines)src/Policy/StellaOps.Policy.Registry/Services/ReviewWorkflowService.cs(360 lines)src/Policy/StellaOps.Policy.Registry/Services/PolicyPackCompiler.cs(299 lines)src/Policy/StellaOps.Policy.Registry/Contracts/PolicyPackContracts.cs(287 lines)src/Policy/StellaOps.Policy.Registry/Services/IPublishPipelineService.cs(286 lines)src/Policy/StellaOps.Policy.Registry/Testing/PolicyRegistryTestFixtures.cs(277 lines)src/Policy/StellaOps.Policy.Registry/Services/IPromotionService.cs(276 lines)src/Policy/StellaOps.Policy.Registry/Storage/InMemoryPolicyPackStore.cs(266 lines)src/Policy/StellaOps.Policy.Registry/Telemetry/PolicyRegistryMetrics.cs(261 lines)src/Policy/StellaOps.Policy.Registry/Services/IReviewWorkflowService.cs(242 lines)src/Policy/StellaOps.Policy.Registry/Storage/Entities.cs(232 lines)src/Policy/StellaOps.Policy.Registry/IPolicyRegistryClient.cs(214 lines)src/Policy/StellaOps.Policy.Registry/Storage/IPolicyPackStore.cs(212 lines)src/Policy/StellaOps.Policy.Registry/PolicyRegistryServiceCollectionExtensions.cs(184 lines)src/Policy/StellaOps.Policy.Registry/Telemetry/PolicyRegistryActivitySource.cs(180 lines)src/Policy/StellaOps.Policy.Registry/Services/IBatchSimulationOrchestrator.cs(180 lines)src/Policy/StellaOps.Policy.Registry/Testing/PolicyRegistryTestHarness.cs(148 lines)src/Policy/StellaOps.Policy.Registry/Contracts/VerificationPolicyContracts.cs(145 lines)src/Policy/StellaOps.Policy.Registry/Storage/InMemoryViolationStore.cs(145 lines)src/Policy/StellaOps.Policy.Registry/Telemetry/PolicyRegistryLogEvents.cs(143 lines)src/Policy/StellaOps.Policy.Registry/Storage/InMemoryVerificationPolicyStore.cs(127 lines)src/Policy/StellaOps.Policy.Registry/Distribution/IPolicyPackOciPublisher.cs(126 lines)src/Policy/StellaOps.Policy.Registry/Contracts/SealedModeContracts.cs(121 lines)src/Policy/StellaOps.Policy.Registry/Storage/InMemorySnapshotStore.cs(121 lines)src/Policy/StellaOps.Policy.Registry/Services/IPolicyPackCompiler.cs(115 lines)src/Policy/StellaOps.Policy.Registry/Storage/InMemoryOverrideStore.cs(114 lines)src/Policy/StellaOps.Policy.Registry/Contracts/ViolationContracts.cs(114 lines)src/Policy/StellaOps.Policy.Registry/Contracts/OverrideContracts.cs(109 lines)
- Service locator matches:
src/Policy/StellaOps.Policy.Registry/Testing/PolicyRegistryTestHarness.cs:37 _serviceProvider = services.BuildServiceProvider();
Fix Guidance
- Split files over 100 lines into smaller types or partials.
- Replace service locator usage with constructor injection.
Testing Fullness Findings
- Status: FAIL
- Expected layers: Unit
- Detected test projects: none
- Missing layers: Unit
Manual checks required
- Observability contract tests for WebService/Worker.
- Intent tagging required for regulatory modules.
- Offline execution (tests must run without network access).
Fix Guidance
- Add a unit test project named
<Project>.Tests(or document exception).