archive audit attempts

This commit is contained in:
master
2026-02-19 22:00:31 +02:00
parent c2f13fe588
commit b5829dce5c
19638 changed files with 6366 additions and 7 deletions

View File

@@ -0,0 +1,119 @@
# Audit - StellaOps.AirGap.Controller
## Project
- Path: src/AirGap/StellaOps.AirGap.Controller/StellaOps.AirGap.Controller.csproj
- Module: AirGap
- Kind: Library
- Audit date (UTC): 2026-01-30
- Files scanned: 26
- Files with issues: 24
- File-level report: docs/implplan/audits/csproj-standards/file-audit.csv
## Coding Standards Findings
- Status: FAIL
- Nullable: enable
- TreatWarningsAsErrors: explicit true
- Deterministic: inherited true
- 100-line rule violations: 6
- Namespace violations: 24
- Using directive violations: 0
- Naming violations (interfaces/fields/const/async): 0
- Service locator usage (BuildServiceProvider/GetService): 0
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/AirGap/StellaOps.AirGap.Controller/Auth/HeaderScopeAuthenticationHandler.cs (106 lines)
- src/AirGap/StellaOps.AirGap.Controller/Endpoints/AirGapEndpoints.cs (268 lines)
- src/AirGap/StellaOps.AirGap.Controller/Endpoints/RequestValidation.cs (108 lines)
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStartupDiagnosticsHostedService.cs (175 lines)
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStateService.cs (119 lines)
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapTelemetry.cs (178 lines)
- Namespace issues:
- src/AirGap/StellaOps.AirGap.Controller/Auth/HeaderScopeAuthenticationHandler.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/DependencyInjection/AirGapControllerServiceCollectionExtensions.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Domain/AirGapState.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Endpoints/AirGapEndpoints.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Endpoints/RequestValidation.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Endpoints/Contracts/AirGapStatusResponse.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Endpoints/Contracts/SealRequest.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Endpoints/Contracts/VerifyRequest.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/obj/Debug/net10.0/StellaOps.AirGap.Controller.AssemblyInfo.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/obj/Debug/net10.0/StellaOps.AirGap.Controller.GlobalUsings.g.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/obj/Debug/net10.0/StellaOps.AirGap.Controller.MvcApplicationPartsAssemblyInfo.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/obj/Release/net10.0/StellaOps.AirGap.Controller.AssemblyInfo.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/obj/Release/net10.0/StellaOps.AirGap.Controller.GlobalUsings.g.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/obj/Release/net10.0/StellaOps.AirGap.Controller.MvcApplicationPartsAssemblyInfo.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Options/AirGapStartupOptions.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Options/AirGapTelemetryOptions.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStartupDiagnosticsHostedService.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStateService.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapTelemetry.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Services/ReplayVerificationService.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Stores/IAirGapStateStore.cs: missing namespace
- src/AirGap/StellaOps.AirGap.Controller/Stores/InMemoryAirGapStateStore.cs: missing namespace
- Using directive issues:
- none
- Naming issues:
- none
- Async issues:
- none
- Service locator matches:
- none
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- Normalize namespaces to file-scoped StellaOps.<Area>.
- Split files over 100 lines into smaller types or partials.
## File-Level Findings
- Status: FAIL
- Files scanned: 26
- Files with issues: 24
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/AirGap/StellaOps.AirGap.Controller/Auth/HeaderScopeAuthenticationHandler.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/AirGap/StellaOps.AirGap.Controller/DependencyInjection/AirGapControllerServiceCollectionExtensions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/Domain/AirGapState.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/Endpoints/AirGapEndpoints.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/AirGap/StellaOps.AirGap.Controller/Endpoints/RequestValidation.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/AirGap/StellaOps.AirGap.Controller/Endpoints/Contracts/AirGapStatusResponse.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/Endpoints/Contracts/SealRequest.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/Endpoints/Contracts/VerifyRequest.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/obj/Debug/net10.0/StellaOps.AirGap.Controller.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/obj/Debug/net10.0/StellaOps.AirGap.Controller.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/obj/Debug/net10.0/StellaOps.AirGap.Controller.MvcApplicationPartsAssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/obj/Release/net10.0/StellaOps.AirGap.Controller.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/obj/Release/net10.0/StellaOps.AirGap.Controller.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/obj/Release/net10.0/StellaOps.AirGap.Controller.MvcApplicationPartsAssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/Options/AirGapStartupOptions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/Options/AirGapTelemetryOptions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStartupDiagnosticsHostedService.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStateService.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/AirGap/StellaOps.AirGap.Controller/Services/AirGapTelemetry.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/AirGap/StellaOps.AirGap.Controller/Services/ReplayVerificationService.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/Stores/IAirGapStateStore.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/AirGap/StellaOps.AirGap.Controller/Stores/InMemoryAirGapStateStore.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
## Testing Fullness Findings
- Status: FAIL
- Expected layers (heuristic): Unit
- Detected test projects: src/AirGap/__Tests/StellaOps.AirGap.Controller.Tests/StellaOps.AirGap.Controller.Tests.csproj [Offline]; src/AirGap/__Tests/StellaOps.AirGap.Persistence.Tests/StellaOps.AirGap.Persistence.Tests.csproj [Offline]
- Missing layers: Unit
### Manual checks required
- Observability contract tests for WebService/Worker.
- Intent tags for regulatory modules (Policy, Authority, Signer, Attestor, EvidenceLocker).
- Offline execution (tests must run without network access).
- Coverage matrix alignment (docs/technical/testing/TEST_COVERAGE_MATRIX.md).
### Fix Guidance
- Add or expand test projects to cover missing layers.
- Ensure tests use deterministic fixtures and offline harnesses.

View File

@@ -0,0 +1,88 @@
# Audit - StellaOps.AirGap.Controller
## Project
- Path: src/AirGap/StellaOps.AirGap.Controller/StellaOps.AirGap.Controller.csproj
- Module: AirGap
- Kind: Library
- Audit date (UTC): 2026-01-31
- Files scanned: 18
- Files with issues: 8
- File-level report: docs/implplan/audits/csproj-standards/file-audit.csv
## Coding Standards Findings
- Status: FAIL
- Nullable: enable
- TreatWarningsAsErrors: explicit true
- Deterministic: inherited true
- 100-line rule violations: 6
- Namespace violations: 0
- Using directive violations: 1
- Naming violations (interfaces/fields/const/async): 7
- Service locator usage (BuildServiceProvider/GetService): 1
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/AirGap/StellaOps.AirGap.Controller/Auth/HeaderScopeAuthenticationHandler.cs (107 lines)
- src/AirGap/StellaOps.AirGap.Controller/Endpoints/AirGapEndpoints.cs (269 lines)
- src/AirGap/StellaOps.AirGap.Controller/Endpoints/RequestValidation.cs (108 lines)
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStartupDiagnosticsHostedService.cs (175 lines)
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStateService.cs (119 lines)
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapTelemetry.cs (179 lines)
- Namespace issues:
- none
- Using directive issues:
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapTelemetry.cs: using directives inside namespace
- Naming issues:
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapTelemetry.cs: private field naming
- Async issues:
- src/AirGap/StellaOps.AirGap.Controller/Endpoints/AirGapEndpoints.cs: async method naming
- src/AirGap/StellaOps.AirGap.Controller/Endpoints/AirGapEndpoints.cs: missing ConfigureAwait(false)
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStartupDiagnosticsHostedService.cs: async method naming
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStartupDiagnosticsHostedService.cs: missing ConfigureAwait(false)
- src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStateService.cs: missing ConfigureAwait(false)
- src/AirGap/StellaOps.AirGap.Controller/Services/ReplayVerificationService.cs: missing ConfigureAwait(false)
- Service locator matches:
- src/AirGap/StellaOps.AirGap.Controller/DependencyInjection/AirGapControllerServiceCollectionExtensions.cs:29 var logger = sp.GetRequiredService<ILogger<InMemoryAirGapStateStore>>();
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- Align interface/field/const naming to standards.
- Move and sort using directives (outside namespace).
- Rename async methods and avoid blocking async calls.
- Replace service locator usage with constructor injection.
- Split files over 100 lines into smaller types or partials.
## File-Level Findings
- Status: FAIL
- Files scanned: 18
- Files with issues: 8
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/AirGap/StellaOps.AirGap.Controller/Auth/HeaderScopeAuthenticationHandler.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/AirGap/StellaOps.AirGap.Controller/DependencyInjection/AirGapControllerServiceCollectionExtensions.cs | ServiceLocator | Remove service locator usage; use constructor injection. |
| src/AirGap/StellaOps.AirGap.Controller/Endpoints/AirGapEndpoints.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100 | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/AirGap/StellaOps.AirGap.Controller/Endpoints/RequestValidation.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStartupDiagnosticsHostedService.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100 | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/AirGap/StellaOps.AirGap.Controller/Services/AirGapStateService.cs | ConfigureAwaitMissing; FileLength>100 | Add ConfigureAwait(false) to awaited calls in library-like code.; Split file to stay <= 100 lines. |
| src/AirGap/StellaOps.AirGap.Controller/Services/AirGapTelemetry.cs | FileLength>100; PrivateFieldNaming; UsingInsideNamespace | Move using directives outside namespace.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
| src/AirGap/StellaOps.AirGap.Controller/Services/ReplayVerificationService.cs | ConfigureAwaitMissing | Add ConfigureAwait(false) to awaited calls in library-like code. |
## Testing Fullness Findings
- Status: FAIL
- Expected layers (heuristic): Unit
- Detected test projects: src/AirGap/__Tests/StellaOps.AirGap.Controller.Tests/StellaOps.AirGap.Controller.Tests.csproj [Offline]; src/AirGap/__Tests/StellaOps.AirGap.Persistence.Tests/StellaOps.AirGap.Persistence.Tests.csproj [Offline]
- Missing layers: Unit
### Manual checks required
- Observability contract tests for WebService/Worker.
- Intent tags for regulatory modules (Policy, Authority, Signer, Attestor, EvidenceLocker).
- Offline execution (tests must run without network access).
- Coverage matrix alignment (docs/technical/testing/TEST_COVERAGE_MATRIX.md).
### Fix Guidance
- Add or expand test projects to cover missing layers.
- Ensure tests use deterministic fixtures and offline harnesses.