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,134 @@
# Audit - StellaOps.Graph.Api
## Project
- Path: src/Graph/StellaOps.Graph.Api/StellaOps.Graph.Api.csproj
- Module: Graph
- Kind: Library
- Audit date (UTC): 2026-01-30
- Files scanned: 30
- Files with issues: 30
- 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: 11
- Namespace violations: 29
- 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/Graph/StellaOps.Graph.Api/Program.cs (401 lines)
- src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs (349 lines)
- src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs (372 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs (175 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs (152 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs (257 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs (229 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphRepository.cs (352 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs (137 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs (116 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs (335 lines)
- Namespace issues:
- src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/obj/Debug/net10.0/StellaOps.Graph.Api.AssemblyInfo.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/obj/Debug/net10.0/StellaOps.Graph.Api.GlobalUsings.g.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/obj/Release/net10.0/StellaOps.Graph.Api.AssemblyInfo.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/obj/Release/net10.0/StellaOps.Graph.Api.GlobalUsings.g.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphRepository.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs: missing namespace
- src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.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: 30
- Files with issues: 30
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Graph/StellaOps.Graph.Api/Program.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/obj/Debug/net10.0/StellaOps.Graph.Api.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/obj/Debug/net10.0/StellaOps.Graph.Api.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/obj/Release/net10.0/StellaOps.Graph.Api.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/obj/Release/net10.0/StellaOps.Graph.Api.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphRepository.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj [Unit]
- Missing layers: none
### 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
- None.

View File

@@ -0,0 +1,104 @@
# Audit - StellaOps.Graph.Api
## Project
- Path: src/Graph/StellaOps.Graph.Api/StellaOps.Graph.Api.csproj
- Module: Graph
- Kind: Service
- Audit date (UTC): 2026-01-31
- Files scanned: 24
- Files with issues: 11
- 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: 11
- Namespace violations: 0
- Using directive violations: 3
- Naming violations (interfaces/fields/const/async): 12
- Service locator usage (BuildServiceProvider/GetService): 2
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Graph/StellaOps.Graph.Api/Program.cs (401 lines)
- src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs (349 lines)
- src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs (372 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs (176 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs (153 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs (258 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs (230 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphRepository.cs (352 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs (138 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs (117 lines)
- src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs (336 lines)
- Namespace issues:
- none
- Using directive issues:
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs: using directives inside namespace
- src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs: using directives inside namespace
- src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs: using directives inside namespace
- Naming issues:
- src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs: private field naming
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs: private field naming
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs: private field naming
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs: private field naming
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs: private field naming
- src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs: private field naming
- src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs: private field naming
- Async issues:
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs: async method naming
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs: async method naming
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs: async method naming
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs: async method naming
- src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs: async method naming
- Service locator matches:
- src/Graph/StellaOps.Graph.Api/Program.cs:377 var limiter = ctx.RequestServices.GetRequiredService<IRateLimiter>();
- src/Graph/StellaOps.Graph.Api/Program.cs:384 var logger = ctx.RequestServices.GetRequiredService<IAuditLogger>();
- 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: 24
- Files with issues: 11
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Graph/StellaOps.Graph.Api/Program.cs | FileLength>100; ServiceLocator | Remove service locator usage; use constructor injection.; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs | FileLength>100; PrivateFieldNaming | Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs | AsyncNaming; FileLength>100; PrivateFieldNaming | Rename async methods to end with Async.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs | AsyncNaming; FileLength>100; UsingInsideNamespace | Move using directives outside namespace.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs | AsyncNaming; FileLength>100; PrivateFieldNaming | Rename async methods to end with Async.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs | AsyncNaming; FileLength>100; PrivateFieldNaming | Rename async methods to end with Async.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphRepository.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs | AsyncNaming; FileLength>100; PrivateFieldNaming | Rename async methods to end with Async.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs | FileLength>100; PrivateFieldNaming; UsingInsideNamespace | Move using directives outside namespace.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs | FileLength>100; PrivateFieldNaming; UsingInsideNamespace | Move using directives outside namespace.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
## Testing Fullness Findings
- Status: FAIL
- Expected layers (heuristic): E2E, Integration, Offline, Security, Unit
- Detected test projects: src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj [Unit]
- Missing layers: E2E, Integration, Offline, Security
### 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,198 @@
# Audit - StellaOps.Graph.Indexer
## Project
- Path: src/Graph/StellaOps.Graph.Indexer/StellaOps.Graph.Indexer.csproj
- Module: Graph
- Kind: Library
- Audit date (UTC): 2026-01-30
- Files scanned: 60
- Files with issues: 59
- 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: 16
- Namespace violations: 59
- 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/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsEngine.cs (472 lines)
- src/Graph/StellaOps.Graph.Indexer/Documents/GraphSnapshot.cs (262 lines)
- src/Graph/StellaOps.Graph.Indexer/Documents/GraphSnapshotBuilder.cs (490 lines)
- src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeStreamProcessor.cs (120 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetMetrics.cs (107 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetTransformer.cs (209 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorSnapshot.cs (181 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorTransformer.cs (448 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayMetrics.cs (125 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayTransformer.cs (238 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestTransformer.cs (623 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomSnapshot.cs (271 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Vex/VexOverlayTransformer.cs (244 lines)
- src/Graph/StellaOps.Graph.Indexer/Schema/CanonicalJson.cs (135 lines)
- src/Graph/StellaOps.Graph.Indexer/Schema/GraphDocumentFactory.cs (133 lines)
- src/Graph/StellaOps.Graph.Indexer/Schema/GraphIdentity.cs (153 lines)
- Namespace issues:
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsEngine.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsHostedService.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsMetrics.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsOptions.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsPipeline.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsServiceCollectionExtensions.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsTypes.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsWriterOptions.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphOverlayExporter.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Analytics/InMemoryGraphAnalyticsWriter.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Analytics/InMemoryGraphSnapshotProvider.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Documents/GraphSnapshot.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Documents/GraphSnapshotBuilder.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Incremental/GraphBackfillMetrics.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeEvent.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeStreamOptions.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeStreamProcessor.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeStreamServiceCollectionExtensions.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Incremental/InMemoryIdempotencyStore.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Incremental/NoOpGraphChangeEventSource.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetMetrics.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetProcessor.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetSnapshot.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetTransformer.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/IAdvisoryLinksetMetrics.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorProcessor.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorSnapshot.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorTransformer.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/InspectorIngestServiceCollectionExtensions.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/IPolicyOverlayMetrics.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayMetrics.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayProcessor.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlaySnapshot.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayTransformer.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/FileSystemSnapshotFileWriter.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/GraphBuildBatch.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/IGraphDocumentWriter.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/InMemoryGraphDocumentWriter.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/ISbomIngestMetrics.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestMetrics.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestOptions.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestProcessor.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestProcessorFactory.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestServiceCollectionExtensions.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestTransformer.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomSnapshot.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomSnapshotExporter.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Vex/VexOverlaySnapshot.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Vex/VexOverlayTransformer.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/obj/Debug/net10.0/StellaOps.Graph.Indexer.AssemblyInfo.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/obj/Debug/net10.0/StellaOps.Graph.Indexer.GlobalUsings.g.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/obj/Release/net10.0/StellaOps.Graph.Indexer.AssemblyInfo.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/obj/Release/net10.0/StellaOps.Graph.Indexer.GlobalUsings.g.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Schema/Base32Crockford.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Schema/CanonicalJson.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Schema/GraphDocumentFactory.cs: missing namespace
- src/Graph/StellaOps.Graph.Indexer/Schema/GraphIdentity.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: 60
- Files with issues: 59
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsEngine.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsHostedService.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsMetrics.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsOptions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsPipeline.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsServiceCollectionExtensions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsTypes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsWriterOptions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphOverlayExporter.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Analytics/InMemoryGraphAnalyticsWriter.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Analytics/InMemoryGraphSnapshotProvider.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Documents/GraphSnapshot.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Documents/GraphSnapshotBuilder.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Incremental/GraphBackfillMetrics.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeEvent.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeStreamOptions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeStreamProcessor.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeStreamServiceCollectionExtensions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Incremental/InMemoryIdempotencyStore.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Incremental/NoOpGraphChangeEventSource.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetMetrics.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetProcessor.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetSnapshot.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetTransformer.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/IAdvisoryLinksetMetrics.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorProcessor.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorSnapshot.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorTransformer.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/InspectorIngestServiceCollectionExtensions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/IPolicyOverlayMetrics.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayMetrics.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayProcessor.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlaySnapshot.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayTransformer.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/FileSystemSnapshotFileWriter.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/GraphBuildBatch.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/IGraphDocumentWriter.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/InMemoryGraphDocumentWriter.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/ISbomIngestMetrics.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestMetrics.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestOptions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestProcessor.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestProcessorFactory.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestServiceCollectionExtensions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestTransformer.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomSnapshot.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomSnapshotExporter.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Vex/VexOverlaySnapshot.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Vex/VexOverlayTransformer.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/obj/Debug/net10.0/StellaOps.Graph.Indexer.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/obj/Debug/net10.0/StellaOps.Graph.Indexer.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/obj/Release/net10.0/StellaOps.Graph.Indexer.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/obj/Release/net10.0/StellaOps.Graph.Indexer.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Schema/Base32Crockford.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/StellaOps.Graph.Indexer/Schema/CanonicalJson.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Schema/GraphDocumentFactory.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Schema/GraphIdentity.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/__Tests/Graph/StellaOps.Graph.Indexer.Tests/StellaOps.Graph.Indexer.Tests.csproj [Unit]; src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/StellaOps.Graph.Indexer.Tests.csproj [Unit]
- Missing layers: none
### 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
- None.

View File

@@ -0,0 +1,131 @@
# Audit - StellaOps.Graph.Indexer
## Project
- Path: src/Graph/StellaOps.Graph.Indexer/StellaOps.Graph.Indexer.csproj
- Module: Graph
- Kind: Library
- Audit date (UTC): 2026-01-31
- Files scanned: 54
- Files with issues: 28
- 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: 16
- Namespace violations: 0
- Using directive violations: 3
- Naming violations (interfaces/fields/const/async): 11
- Service locator usage (BuildServiceProvider/GetService): 9
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsEngine.cs (473 lines)
- src/Graph/StellaOps.Graph.Indexer/Documents/GraphSnapshot.cs (263 lines)
- src/Graph/StellaOps.Graph.Indexer/Documents/GraphSnapshotBuilder.cs (491 lines)
- src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeStreamProcessor.cs (121 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetMetrics.cs (107 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetTransformer.cs (210 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorSnapshot.cs (181 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorTransformer.cs (449 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayMetrics.cs (125 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayTransformer.cs (239 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestTransformer.cs (624 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomSnapshot.cs (271 lines)
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Vex/VexOverlayTransformer.cs (245 lines)
- src/Graph/StellaOps.Graph.Indexer/Schema/CanonicalJson.cs (136 lines)
- src/Graph/StellaOps.Graph.Indexer/Schema/GraphDocumentFactory.cs (133 lines)
- src/Graph/StellaOps.Graph.Indexer/Schema/GraphIdentity.cs (153 lines)
- Namespace issues:
- none
- Using directive issues:
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsHostedService.cs: using directives inside namespace
- src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeStreamProcessor.cs: using directives inside namespace
- src/Graph/StellaOps.Graph.Indexer/Schema/CanonicalJson.cs: using directives inside namespace
- Naming issues:
- src/Graph/StellaOps.Graph.Indexer/Schema/GraphIdentity.cs: private field naming
- Async issues:
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsHostedService.cs: async method naming
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsPipeline.cs: async method naming
- src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeStreamProcessor.cs: async method naming
- src/Graph/StellaOps.Graph.Indexer/Incremental/NoOpGraphChangeEventSource.cs: async method naming
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetProcessor.cs: async method naming
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorProcessor.cs: async method naming
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayProcessor.cs: async method naming
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/FileSystemSnapshotFileWriter.cs: async method naming
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestProcessor.cs: async method naming
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomSnapshotExporter.cs: async method naming
- Service locator matches:
- src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsServiceCollectionExtensions.cs:28 var options = provider.GetRequiredService<IOptions<GraphAnalyticsOptions>>();
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/InspectorIngestServiceCollectionExtensions.cs:18 var transformer = provider.GetRequiredService<GraphInspectorTransformer>();
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/InspectorIngestServiceCollectionExtensions.cs:19 var writer = provider.GetRequiredService<Ingestion.Sbom.IGraphDocumentWriter>();
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/InspectorIngestServiceCollectionExtensions.cs:20 var logger = provider.GetService<ILogger<GraphInspectorProcessor>>() ?? NullLogger<GraphInspectorProcessor>.Instance;
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestServiceCollectionExtensions.cs:32 var transformer = provider.GetRequiredService<SbomIngestTransformer>();
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestServiceCollectionExtensions.cs:33 var writer = provider.GetRequiredService<IGraphDocumentWriter>();
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestServiceCollectionExtensions.cs:34 var metrics = provider.GetRequiredService<ISbomIngestMetrics>();
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestServiceCollectionExtensions.cs:35 var logger = provider.GetService<ILogger<SbomIngestProcessor>>() ?? NullLogger<SbomIngestProcessor>.Instance;
- src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestServiceCollectionExtensions.cs:36 var options = provider.GetService<IOptions<SbomIngestOptions>>();
- 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: 54
- Files with issues: 28
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsEngine.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsHostedService.cs | AsyncNaming; UsingInsideNamespace | Move using directives outside namespace.; Rename async methods to end with Async. |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsPipeline.cs | AsyncNaming | Rename async methods to end with Async. |
| src/Graph/StellaOps.Graph.Indexer/Analytics/GraphAnalyticsServiceCollectionExtensions.cs | ServiceLocator | Remove service locator usage; use constructor injection. |
| src/Graph/StellaOps.Graph.Indexer/Documents/GraphSnapshot.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Documents/GraphSnapshotBuilder.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Incremental/GraphChangeStreamProcessor.cs | AsyncNaming; FileLength>100; UsingInsideNamespace | Move using directives outside namespace.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Incremental/NoOpGraphChangeEventSource.cs | AsyncNaming | Rename async methods to end with Async. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetMetrics.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetProcessor.cs | AsyncNaming | Rename async methods to end with Async. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Advisory/AdvisoryLinksetTransformer.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorProcessor.cs | AsyncNaming | Rename async methods to end with Async. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorSnapshot.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/GraphInspectorTransformer.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Inspector/InspectorIngestServiceCollectionExtensions.cs | ServiceLocator | Remove service locator usage; use constructor injection. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayMetrics.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayProcessor.cs | AsyncNaming | Rename async methods to end with Async. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Policy/PolicyOverlayTransformer.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/FileSystemSnapshotFileWriter.cs | AsyncNaming | Rename async methods to end with Async. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestProcessor.cs | AsyncNaming | Rename async methods to end with Async. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestServiceCollectionExtensions.cs | ServiceLocator | Remove service locator usage; use constructor injection. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomIngestTransformer.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomSnapshot.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Sbom/SbomSnapshotExporter.cs | AsyncNaming | Rename async methods to end with Async. |
| src/Graph/StellaOps.Graph.Indexer/Ingestion/Vex/VexOverlayTransformer.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Schema/CanonicalJson.cs | FileLength>100; UsingInsideNamespace | Move using directives outside namespace.; Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Schema/GraphDocumentFactory.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/StellaOps.Graph.Indexer/Schema/GraphIdentity.cs | FileLength>100; PrivateFieldNaming | Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/__Tests/Graph/StellaOps.Graph.Indexer.Tests/StellaOps.Graph.Indexer.Tests.csproj [Unit]; src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/StellaOps.Graph.Indexer.Tests.csproj [Unit]
- Missing layers: none
### 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
- None.

View File

@@ -0,0 +1,85 @@
# Audit - StellaOps.Graph.Core
## Project
- Path: src/Graph/__Libraries/StellaOps.Graph.Core/StellaOps.Graph.Core.csproj
- Module: Graph
- Kind: Library
- Audit date (UTC): 2026-01-30
- Files scanned: 9
- Files with issues: 9
- 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: 3
- Namespace violations: 9
- 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/Graph/__Libraries/StellaOps.Graph.Core/CveObservationNode.cs (130 lines)
- src/Graph/__Libraries/StellaOps.Graph.Core/ICveObservationNodeRepository.cs (129 lines)
- src/Graph/__Libraries/StellaOps.Graph.Core/PostgresCveObservationNodeRepository.cs (348 lines)
- Namespace issues:
- src/Graph/__Libraries/StellaOps.Graph.Core/CveObservationNode.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Core/ICveObservationNodeRepository.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Core/PostgresCveObservationNodeRepository.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Core/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Core/obj/Debug/net10.0/StellaOps.Graph.Core.AssemblyInfo.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Core/obj/Debug/net10.0/StellaOps.Graph.Core.GlobalUsings.g.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Core/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Core/obj/Release/net10.0/StellaOps.Graph.Core.AssemblyInfo.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Core/obj/Release/net10.0/StellaOps.Graph.Core.GlobalUsings.g.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: 9
- Files with issues: 9
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Graph/__Libraries/StellaOps.Graph.Core/CveObservationNode.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/__Libraries/StellaOps.Graph.Core/ICveObservationNodeRepository.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/__Libraries/StellaOps.Graph.Core/PostgresCveObservationNodeRepository.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/__Libraries/StellaOps.Graph.Core/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Core/obj/Debug/net10.0/StellaOps.Graph.Core.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Core/obj/Debug/net10.0/StellaOps.Graph.Core.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Core/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Core/obj/Release/net10.0/StellaOps.Graph.Core.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Core/obj/Release/net10.0/StellaOps.Graph.Core.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Graph/__Tests/StellaOps.Graph.Core.Tests/StellaOps.Graph.Core.Tests.csproj [Unit]
- Missing layers: none
### 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
- None.

View File

@@ -0,0 +1,72 @@
# Audit - StellaOps.Graph.Core
## Project
- Path: src/Graph/__Libraries/StellaOps.Graph.Core/StellaOps.Graph.Core.csproj
- Module: Graph
- Kind: Library
- Audit date (UTC): 2026-01-31
- Files scanned: 3
- Files with issues: 3
- 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: 3
- Namespace violations: 0
- Using directive violations: 0
- Naming violations (interfaces/fields/const/async): 2
- Service locator usage (BuildServiceProvider/GetService): 0
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Graph/__Libraries/StellaOps.Graph.Core/CveObservationNode.cs (130 lines)
- src/Graph/__Libraries/StellaOps.Graph.Core/ICveObservationNodeRepository.cs (129 lines)
- src/Graph/__Libraries/StellaOps.Graph.Core/PostgresCveObservationNodeRepository.cs (349 lines)
- Namespace issues:
- none
- Using directive issues:
- none
- Naming issues:
- src/Graph/__Libraries/StellaOps.Graph.Core/PostgresCveObservationNodeRepository.cs: private field naming
- Async issues:
- src/Graph/__Libraries/StellaOps.Graph.Core/PostgresCveObservationNodeRepository.cs: missing ConfigureAwait(false)
- Service locator matches:
- none
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- Align interface/field/const naming to standards.
- Rename async methods and avoid blocking async calls.
- Split files over 100 lines into smaller types or partials.
## File-Level Findings
- Status: FAIL
- Files scanned: 3
- Files with issues: 3
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Graph/__Libraries/StellaOps.Graph.Core/CveObservationNode.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/__Libraries/StellaOps.Graph.Core/ICveObservationNodeRepository.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Graph/__Libraries/StellaOps.Graph.Core/PostgresCveObservationNodeRepository.cs | ConfigureAwaitMissing; FileLength>100; PrivateFieldNaming | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Graph/__Tests/StellaOps.Graph.Core.Tests/StellaOps.Graph.Core.Tests.csproj [Unit]
- Missing layers: none
### 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
- None.

View File

@@ -0,0 +1,94 @@
# Audit - StellaOps.Graph.Indexer.Persistence
## Project
- Path: src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/StellaOps.Graph.Indexer.Persistence.csproj
- Module: Graph
- Kind: Library
- Audit date (UTC): 2026-01-30
- Files scanned: 13
- Files with issues: 13
- 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: 3
- Namespace violations: 13
- 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/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphAnalyticsWriter.cs (182 lines)
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphDocumentWriter.cs (183 lines)
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphSnapshotProvider.cs (163 lines)
- Namespace issues:
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/EfCore/Context/GraphIndexerDbContext.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Extensions/GraphIndexerPersistenceExtensions.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/obj/Debug/net10.0/StellaOps.Graph.Indexer.Persistence.AssemblyInfo.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/obj/Debug/net10.0/StellaOps.Graph.Indexer.Persistence.GlobalUsings.g.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/obj/Release/net10.0/StellaOps.Graph.Indexer.Persistence.AssemblyInfo.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/obj/Release/net10.0/StellaOps.Graph.Indexer.Persistence.GlobalUsings.g.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/GraphIndexerDataSource.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphAnalyticsWriter.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphDocumentWriter.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphSnapshotProvider.cs: missing namespace
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresIdempotencyStore.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: 13
- Files with issues: 13
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/EfCore/Context/GraphIndexerDbContext.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Extensions/GraphIndexerPersistenceExtensions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/obj/Debug/net10.0/StellaOps.Graph.Indexer.Persistence.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/obj/Debug/net10.0/StellaOps.Graph.Indexer.Persistence.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/obj/Release/net10.0/StellaOps.Graph.Indexer.Persistence.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/obj/Release/net10.0/StellaOps.Graph.Indexer.Persistence.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/GraphIndexerDataSource.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphAnalyticsWriter.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphDocumentWriter.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphSnapshotProvider.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresIdempotencyStore.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
## Testing Fullness Findings
- Status: FAIL
- Expected layers (heuristic): Integration, Unit
- Detected test projects: src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/StellaOps.Graph.Indexer.Persistence.Tests.csproj [Unit]
- Missing layers: Integration
### 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,78 @@
# Audit - StellaOps.Graph.Indexer.Persistence
## Project
- Path: src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/StellaOps.Graph.Indexer.Persistence.csproj
- Module: Graph
- Kind: Library
- Audit date (UTC): 2026-01-31
- Files scanned: 7
- Files with issues: 4
- 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: 3
- Namespace violations: 0
- Using directive violations: 0
- Naming violations (interfaces/fields/const/async): 6
- Service locator usage (BuildServiceProvider/GetService): 0
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphAnalyticsWriter.cs (183 lines)
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphDocumentWriter.cs (184 lines)
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphSnapshotProvider.cs (164 lines)
- Namespace issues:
- none
- Using directive issues:
- none
- Naming issues:
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphDocumentWriter.cs: private field naming
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphSnapshotProvider.cs: private field naming
- Async issues:
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphAnalyticsWriter.cs: async method naming
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphDocumentWriter.cs: async method naming
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphSnapshotProvider.cs: async method naming
- src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresIdempotencyStore.cs: async method naming
- Service locator matches:
- none
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- Align interface/field/const naming to standards.
- Rename async methods and avoid blocking async calls.
- Split files over 100 lines into smaller types or partials.
## File-Level Findings
- Status: FAIL
- Files scanned: 7
- Files with issues: 4
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphAnalyticsWriter.cs | AsyncNaming; FileLength>100 | Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphDocumentWriter.cs | AsyncNaming; FileLength>100; PrivateFieldNaming | Rename async methods to end with Async.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresGraphSnapshotProvider.cs | AsyncNaming; FileLength>100; PrivateFieldNaming | Rename async methods to end with Async.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
| src/Graph/__Libraries/StellaOps.Graph.Indexer.Persistence/Postgres/Repositories/PostgresIdempotencyStore.cs | AsyncNaming | Rename async methods to end with Async. |
## Testing Fullness Findings
- Status: FAIL
- Expected layers (heuristic): Integration, Unit
- Detected test projects: src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/StellaOps.Graph.Indexer.Persistence.Tests.csproj [Unit]
- Missing layers: Integration
### 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,115 @@
# Audit - StellaOps.Graph.Api.Tests
## Project
- Path: src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj
- Module: Graph
- Kind: Test
- Audit date (UTC): 2026-01-31
- Files scanned: 11
- Files with issues: 11
- File-level report: docs/implplan/audits/csproj-standards/file-audit.csv
## Coding Standards Findings
- Status: FAIL
- Nullable: enable
- TreatWarningsAsErrors: inherited false
- Deterministic: inherited true
- 100-line rule violations: 5
- Namespace violations: 0
- Using directive violations: 15
- Naming violations (interfaces/fields/const/async): 19
- Service locator usage (BuildServiceProvider/GetService): 0
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs (424 lines)
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs (118 lines)
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs (107 lines)
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs (122 lines)
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs (215 lines)
- Namespace issues:
- none
- Using directive issues:
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/AuditLoggerTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs: using directives inside namespace
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs: using directives inside namespace
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs: using directives inside namespace
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs: using directives inside namespace
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs: using directives not sorted
- Naming issues:
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs: private field naming
- Async issues:
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs: missing ConfigureAwait(false)
- Service locator matches:
- none
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- Align interface/field/const naming to standards.
- Move and sort using directives (outside namespace).
- Remove overrides that disable TreatWarningsAsErrors.
- Rename async methods and avoid blocking async calls.
- Split files over 100 lines into smaller types or partials.
## File-Level Findings
- Status: FAIL
- Files scanned: 11
- Files with issues: 11
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Graph/__Tests/StellaOps.Graph.Api.Tests/AuditLoggerTests.cs | UsingNotSorted | Sort using directives alphabetically. |
| src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs | AsyncNaming; ConfigureAwaitMissing; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Sort using directives alphabetically. |
| src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs | AsyncNaming; ConfigureAwaitMissing; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Sort using directives alphabetically. |
| src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingInsideNamespace; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async.; Sort using directives alphabetically.; Split file to stay <= 100 lines. |
| src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs | AsyncNaming; ConfigureAwaitMissing; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Sort using directives alphabetically. |
| src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Sort using directives alphabetically.; Split file to stay <= 100 lines. |
| src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingInsideNamespace; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async.; Sort using directives alphabetically.; Split file to stay <= 100 lines. |
| src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs | AsyncNaming; ConfigureAwaitMissing; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Sort using directives alphabetically. |
| src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingInsideNamespace; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async.; Sort using directives alphabetically.; Split file to stay <= 100 lines. |
| src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs | UsingNotSorted | Sort using directives alphabetically. |
| src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; PrivateFieldNaming; UsingInsideNamespace; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async.; Rename private fields to _camelCase.; Sort using directives alphabetically.; Split file to stay <= 100 lines. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic):
- Detected test projects: none
- Missing layers: none
### 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
- None.

View File

@@ -0,0 +1,66 @@
# Audit - StellaOps.Graph.Core.Tests
## Project
- Path: src/Graph/__Tests/StellaOps.Graph.Core.Tests/StellaOps.Graph.Core.Tests.csproj
- Module: Graph
- Kind: Test
- Audit date (UTC): 2026-01-31
- Files scanned: 1
- Files with issues: 1
- 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: 1
- Namespace violations: 0
- 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/Graph/__Tests/StellaOps.Graph.Core.Tests/CveObservationNodeTests.cs (254 lines)
- Namespace issues:
- none
- Using directive issues:
- none
- Naming issues:
- none
- Async issues:
- none
- Service locator matches:
- none
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- Split files over 100 lines into smaller types or partials.
## File-Level Findings
- Status: FAIL
- Files scanned: 1
- Files with issues: 1
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Graph/__Tests/StellaOps.Graph.Core.Tests/CveObservationNodeTests.cs | FileLength>100 | Split file to stay <= 100 lines. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic):
- Detected test projects: none
- Missing layers: none
### 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
- None.

View File

@@ -0,0 +1,84 @@
# Audit - StellaOps.Graph.Indexer.Persistence.Tests
## Project
- Path: src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/StellaOps.Graph.Indexer.Persistence.Tests.csproj
- Module: Graph
- Kind: Test
- Audit date (UTC): 2026-01-31
- Files scanned: 4
- Files with issues: 4
- File-level report: docs/implplan/audits/csproj-standards/file-audit.csv
## Coding Standards Findings
- Status: FAIL
- Nullable: enable
- TreatWarningsAsErrors: inherited false
- Deterministic: inherited true
- 100-line rule violations: 4
- Namespace violations: 0
- Using directive violations: 3
- Naming violations (interfaces/fields/const/async): 8
- Service locator usage (BuildServiceProvider/GetService): 0
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphIndexerPostgresFixture.cs (117 lines)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphQueryDeterminismTests.cs (210 lines)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphStorageMigrationTests.cs (166 lines)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/PostgresIdempotencyStoreTests.cs (101 lines)
- Namespace issues:
- none
- Using directive issues:
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphIndexerPostgresFixture.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphQueryDeterminismTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/PostgresIdempotencyStoreTests.cs: using directives not sorted
- Naming issues:
- none
- Async issues:
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphIndexerPostgresFixture.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphIndexerPostgresFixture.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphQueryDeterminismTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphQueryDeterminismTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphStorageMigrationTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphStorageMigrationTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/PostgresIdempotencyStoreTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/PostgresIdempotencyStoreTests.cs: missing ConfigureAwait(false)
- Service locator matches:
- none
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- Move and sort using directives (outside namespace).
- Remove overrides that disable TreatWarningsAsErrors.
- Rename async methods and avoid blocking async calls.
- Split files over 100 lines into smaller types or partials.
## File-Level Findings
- Status: FAIL
- Files scanned: 4
- Files with issues: 4
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphIndexerPostgresFixture.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Sort using directives alphabetically.; Split file to stay <= 100 lines. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphQueryDeterminismTests.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Sort using directives alphabetically.; Split file to stay <= 100 lines. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/GraphStorageMigrationTests.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/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/PostgresIdempotencyStoreTests.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Sort using directives alphabetically.; Split file to stay <= 100 lines. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic):
- Detected test projects: none
- Missing layers: none
### 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
- None.

View File

@@ -0,0 +1,108 @@
# Audit - StellaOps.Graph.Indexer.Tests
## Project
- Path: src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/StellaOps.Graph.Indexer.Tests.csproj
- Module: Graph
- Kind: Test
- Audit date (UTC): 2026-01-31
- Files scanned: 13
- Files with issues: 13
- File-level report: docs/implplan/audits/csproj-standards/file-audit.csv
## Coding Standards Findings
- Status: FAIL
- Nullable: enable
- TreatWarningsAsErrors: inherited false
- Deterministic: inherited true
- 100-line rule violations: 7
- Namespace violations: 0
- Using directive violations: 15
- Naming violations (interfaces/fields/const/async): 8
- Service locator usage (BuildServiceProvider/GetService): 0
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphChangeStreamProcessorTests.cs (114 lines)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphCoreLogicTests.cs (542 lines)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphIndexerEndToEndTests.cs (413 lines)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphInspectorTransformerTests.cs (191 lines)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphSnapshotBuilderTests.cs (135 lines)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphTestHelpers.cs (148 lines)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/SbomSnapshotExporterTests.cs (114 lines)
- Namespace issues:
- none
- Using directive issues:
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphAnalyticsEngineTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphAnalyticsPipelineTests.cs: using directives inside namespace
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphAnalyticsPipelineTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphAnalyticsTestData.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphChangeStreamProcessorTests.cs: using directives inside namespace
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphChangeStreamProcessorTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphCoreLogicTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphIdentityTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphIndexerEndToEndTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphInspectorTransformerTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphOverlayExporterTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphSnapshotBuilderTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphTestHelpers.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/SbomLineageTransformerTests.cs: using directives not sorted
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/SbomSnapshotExporterTests.cs: using directives not sorted
- Naming issues:
- none
- Async issues:
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphAnalyticsPipelineTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphAnalyticsPipelineTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphChangeStreamProcessorTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphChangeStreamProcessorTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphOverlayExporterTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphOverlayExporterTests.cs: missing ConfigureAwait(false)
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/SbomSnapshotExporterTests.cs: async method naming
- src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/SbomSnapshotExporterTests.cs: missing ConfigureAwait(false)
- Service locator matches:
- none
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- Move and sort using directives (outside namespace).
- Remove overrides that disable TreatWarningsAsErrors.
- Rename async methods and avoid blocking async calls.
- Split files over 100 lines into smaller types or partials.
## File-Level Findings
- Status: FAIL
- Files scanned: 13
- Files with issues: 13
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphAnalyticsEngineTests.cs | UsingNotSorted | Sort using directives alphabetically. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphAnalyticsPipelineTests.cs | AsyncNaming; ConfigureAwaitMissing; UsingInsideNamespace; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async.; Sort using directives alphabetically. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphAnalyticsTestData.cs | UsingNotSorted | Sort using directives alphabetically. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphChangeStreamProcessorTests.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingInsideNamespace; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async.; Sort using directives alphabetically.; Split file to stay <= 100 lines. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphCoreLogicTests.cs | FileLength>100; UsingNotSorted | Sort using directives alphabetically.; Split file to stay <= 100 lines. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphIdentityTests.cs | UsingNotSorted | Sort using directives alphabetically. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphIndexerEndToEndTests.cs | FileLength>100; UsingNotSorted | Sort using directives alphabetically.; Split file to stay <= 100 lines. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphInspectorTransformerTests.cs | FileLength>100; UsingNotSorted | Sort using directives alphabetically.; Split file to stay <= 100 lines. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphOverlayExporterTests.cs | AsyncNaming; ConfigureAwaitMissing; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Sort using directives alphabetically. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphSnapshotBuilderTests.cs | FileLength>100; UsingNotSorted | Sort using directives alphabetically.; Split file to stay <= 100 lines. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/GraphTestHelpers.cs | FileLength>100; UsingNotSorted | Sort using directives alphabetically.; Split file to stay <= 100 lines. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/SbomLineageTransformerTests.cs | UsingNotSorted | Sort using directives alphabetically. |
| src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/SbomSnapshotExporterTests.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingNotSorted | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Sort using directives alphabetically.; Split file to stay <= 100 lines. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic):
- Detected test projects: none
- Missing layers: none
### 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
- None.