1.9 KiB
1.9 KiB
Audit - StellaOps.AirGap.Time
Project
- Path:
src/AirGap/StellaOps.AirGap.Time/StellaOps.AirGap.Time.csproj - Module:
AirGap - Kind:
WebService - SDK:
Microsoft.NET.Sdk.Web - 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: 3
- Service locator usage (BuildServiceProvider/GetService): 2
- Analyzer enforcement: missing repo-wide (see summary).
Details
- 100-line files:
src/AirGap/StellaOps.AirGap.Time/Services/RoughtimeVerifier.cs(430 lines)src/AirGap/StellaOps.AirGap.Time/Services/Rfc3161Verifier.cs(339 lines)src/AirGap/StellaOps.AirGap.Time/Services/TimeAnchorPolicyService.cs(306 lines)
- Service locator matches:
src/AirGap/StellaOps.AirGap.Time/Hooks/StartupValidationExtensions.cs:17 var validator = scope.ServiceProvider.GetRequiredService();src/AirGap/StellaOps.AirGap.Time/Hooks/StartupValidationExtensions.cs:18 var logger = scope.ServiceProvider.GetRequiredService().CreateLogger("AirGap.Time.Startup");
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, Integration, Security, Offline
- Detected test projects: src/AirGap/__Tests/StellaOps.AirGap.Time.Tests/StellaOps.AirGap.Time.Tests.csproj [Unit]
- Missing layers: Integration, Security, Offline
Manual checks required
- Observability contract tests for WebService/Worker.
- Offline execution (tests must run without network access).
Fix Guidance
- Add integration tests for cross-component flows.
- Add security tests for authn/authz or input validation.
- Add offline/airgap coverage with fixtures only.