semi implemented and features implemented save checkpoint

This commit is contained in:
master
2026-02-08 18:00:49 +02:00
parent 04360dff63
commit 1bf6bbf395
20895 changed files with 716795 additions and 64 deletions

View File

@@ -0,0 +1,88 @@
# Audit - StellaOps.Plugin.Samples.HelloWorld.Tests
## Project
- Path: src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/StellaOps.Plugin.Samples.HelloWorld.Tests.csproj
- Module: Plugin
- Kind: Example
- Audit date (UTC): 2026-01-30
- 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: explicit true
- Deterministic: inherited true
- 100-line rule violations: 1
- Namespace violations: 11
- 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/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/HelloWorldPluginTests.cs (181 lines)
- Namespace issues:
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/HelloWorldPluginTests.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Debug/net10.0/SelfRegisteredExtensions.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Debug/net10.0/StellaOps.Plugin.Samples.HelloWorld.Tests.AssemblyInfo.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Debug/net10.0/StellaOps.Plugin.Samples.HelloWorld.Tests.GlobalUsings.g.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Debug/net10.0/XunitAutoGeneratedEntryPoint.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Release/net10.0/SelfRegisteredExtensions.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Release/net10.0/StellaOps.Plugin.Samples.HelloWorld.Tests.AssemblyInfo.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Release/net10.0/StellaOps.Plugin.Samples.HelloWorld.Tests.GlobalUsings.g.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Release/net10.0/XunitAutoGeneratedEntryPoint.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: 11
- Files with issues: 11
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/HelloWorldPluginTests.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Debug/net10.0/SelfRegisteredExtensions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Debug/net10.0/StellaOps.Plugin.Samples.HelloWorld.Tests.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Debug/net10.0/StellaOps.Plugin.Samples.HelloWorld.Tests.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Debug/net10.0/XunitAutoGeneratedEntryPoint.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Release/net10.0/SelfRegisteredExtensions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Release/net10.0/StellaOps.Plugin.Samples.HelloWorld.Tests.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Release/net10.0/StellaOps.Plugin.Samples.HelloWorld.Tests.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/obj/Release/net10.0/XunitAutoGeneratedEntryPoint.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
## Testing Fullness Findings
- Status: FAIL
- Expected layers (heuristic): Unit
- Detected test projects: none
- 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,70 @@
# Audit - StellaOps.Plugin.Samples.HelloWorld.Tests
## Project
- Path: src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/StellaOps.Plugin.Samples.HelloWorld.Tests.csproj
- Module: Plugin
- 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: 1
- Naming violations (interfaces/fields/const/async): 3
- Service locator usage (BuildServiceProvider/GetService): 0
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/HelloWorldPluginTests.cs (181 lines)
- Namespace issues:
- none
- Using directive issues:
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/HelloWorldPluginTests.cs: using directives inside namespace
- Naming issues:
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/HelloWorldPluginTests.cs: private field naming
- Async issues:
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/HelloWorldPluginTests.cs: async method naming
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/HelloWorldPluginTests.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).
- 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: 1
- Files with issues: 1
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/HelloWorldPluginTests.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; PrivateFieldNaming; UsingInsideNamespace | 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.; 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,79 @@
# Audit - StellaOps.Plugin.Samples.HelloWorld
## Project
- Path: src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/StellaOps.Plugin.Samples.HelloWorld.csproj
- Module: Plugin
- Kind: Example
- Audit date (UTC): 2026-01-30
- Files scanned: 7
- Files with issues: 7
- 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: 7
- 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/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/HelloWorldPlugin.cs (123 lines)
- Namespace issues:
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/HelloWorldPlugin.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/obj/Debug/net10.0/StellaOps.Plugin.Samples.HelloWorld.AssemblyInfo.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/obj/Debug/net10.0/StellaOps.Plugin.Samples.HelloWorld.GlobalUsings.g.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/obj/Release/net10.0/StellaOps.Plugin.Samples.HelloWorld.AssemblyInfo.cs: missing namespace
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/obj/Release/net10.0/StellaOps.Plugin.Samples.HelloWorld.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: 7
- Files with issues: 7
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/HelloWorldPlugin.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/obj/Debug/net10.0/StellaOps.Plugin.Samples.HelloWorld.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/obj/Debug/net10.0/StellaOps.Plugin.Samples.HelloWorld.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/obj/Release/net10.0/StellaOps.Plugin.Samples.HelloWorld.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/obj/Release/net10.0/StellaOps.Plugin.Samples.HelloWorld.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/StellaOps.Plugin.Samples.HelloWorld.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,68 @@
# Audit - StellaOps.Plugin.Samples.HelloWorld
## Project
- Path: src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/StellaOps.Plugin.Samples.HelloWorld.csproj
- Module: Plugin
- Kind: Example
- 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): 2
- Service locator usage (BuildServiceProvider/GetService): 0
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/HelloWorldPlugin.cs (124 lines)
- Namespace issues:
- none
- Using directive issues:
- none
- Naming issues:
- none
- Async issues:
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/HelloWorldPlugin.cs: async method naming
- src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/HelloWorldPlugin.cs: missing ConfigureAwait(false)
- Service locator matches:
- none
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- 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: 1
- Files with issues: 1
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld/HelloWorldPlugin.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. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/StellaOps.Plugin.Samples.HelloWorld.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,133 @@
# Audit - StellaOps.Plugin.Abstractions
## Project
- Path: src/Plugin/StellaOps.Plugin.Abstractions/StellaOps.Plugin.Abstractions.csproj
- Module: Plugin
- Kind: Library
- Audit date (UTC): 2026-01-30
- Files scanned: 28
- 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: 13
- Namespace violations: 28
- 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/Plugin/StellaOps.Plugin.Abstractions/PluginCapabilities.cs (160 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Attributes/PluginAttribute.cs (186 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IAnalysisCapability.cs (222 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IAuthCapability.cs (221 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ICryptoCapability.cs (142 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IFeedCapability.cs (198 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ILlmCapability.cs (141 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IScmCapability.cs (195 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ITransportCapability.cs (288 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Context/IPluginContext.cs (121 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Execution/LoadedPlugin.cs (134 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Lifecycle/PluginLifecycleException.cs (135 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Manifest/PluginManifest.cs (217 lines)
- Namespace issues:
- src/Plugin/StellaOps.Plugin.Abstractions/IPlugin.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/PluginCapabilities.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/PluginInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/PluginTrustLevel.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Attributes/PluginAttribute.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IAnalysisCapability.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IAuthCapability.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IConnectorCapability.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ICryptoCapability.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IFeedCapability.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ILlmCapability.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IScmCapability.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ITransportCapability.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Context/IPluginContext.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Context/IPluginLogger.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Execution/IPluginLoader.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Execution/LoadedPlugin.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Health/HealthCheckResult.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Health/HealthStatus.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Lifecycle/PluginLifecycleException.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Lifecycle/PluginLifecycleState.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/Manifest/PluginManifest.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/obj/Debug/net10.0/StellaOps.Plugin.Abstractions.AssemblyInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/obj/Debug/net10.0/StellaOps.Plugin.Abstractions.GlobalUsings.g.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/obj/Release/net10.0/StellaOps.Plugin.Abstractions.AssemblyInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Abstractions/obj/Release/net10.0/StellaOps.Plugin.Abstractions.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: 28
- Files with issues: 28
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/StellaOps.Plugin.Abstractions/IPlugin.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/PluginCapabilities.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/PluginInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/PluginTrustLevel.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/Attributes/PluginAttribute.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IAnalysisCapability.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IAuthCapability.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IConnectorCapability.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ICryptoCapability.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IFeedCapability.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ILlmCapability.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IScmCapability.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ITransportCapability.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Context/IPluginContext.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Context/IPluginLogger.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/Execution/IPluginLoader.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/Execution/LoadedPlugin.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Health/HealthCheckResult.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/Health/HealthStatus.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/Lifecycle/PluginLifecycleException.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Lifecycle/PluginLifecycleState.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/Manifest/PluginManifest.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/obj/Debug/net10.0/StellaOps.Plugin.Abstractions.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/obj/Debug/net10.0/StellaOps.Plugin.Abstractions.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/obj/Release/net10.0/StellaOps.Plugin.Abstractions.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Abstractions/obj/Release/net10.0/StellaOps.Plugin.Abstractions.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Plugin/__Tests/StellaOps.Plugin.Abstractions.Tests/StellaOps.Plugin.Abstractions.Tests.csproj [Unit]; src/Plugin/__Tests/StellaOps.Plugin.Sdk.Tests/StellaOps.Plugin.Sdk.Tests.csproj [Unit]; src/Plugin/StellaOps.Plugin.Testing/StellaOps.Plugin.Testing.csproj [Unit] (no test attributes detected)
- 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,92 @@
# Audit - StellaOps.Plugin.Abstractions
## Project
- Path: src/Plugin/StellaOps.Plugin.Abstractions/StellaOps.Plugin.Abstractions.csproj
- Module: Plugin
- Kind: Plugin
- Audit date (UTC): 2026-01-31
- Files scanned: 22
- 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: 13
- 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/Plugin/StellaOps.Plugin.Abstractions/PluginCapabilities.cs (160 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Attributes/PluginAttribute.cs (186 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IAnalysisCapability.cs (222 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IAuthCapability.cs (221 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ICryptoCapability.cs (142 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IFeedCapability.cs (198 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ILlmCapability.cs (141 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IScmCapability.cs (195 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ITransportCapability.cs (288 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Context/IPluginContext.cs (121 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Execution/LoadedPlugin.cs (134 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Lifecycle/PluginLifecycleException.cs (135 lines)
- src/Plugin/StellaOps.Plugin.Abstractions/Manifest/PluginManifest.cs (217 lines)
- Namespace issues:
- none
- Using directive issues:
- none
- Naming issues:
- none
- Async issues:
- src/Plugin/StellaOps.Plugin.Abstractions/Execution/LoadedPlugin.cs: async method naming
- src/Plugin/StellaOps.Plugin.Abstractions/Execution/LoadedPlugin.cs: missing ConfigureAwait(false)
- Service locator matches:
- none
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- 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: 22
- Files with issues: 13
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/StellaOps.Plugin.Abstractions/PluginCapabilities.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Attributes/PluginAttribute.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IAnalysisCapability.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IAuthCapability.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ICryptoCapability.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IFeedCapability.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ILlmCapability.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/IScmCapability.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Capabilities/ITransportCapability.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Context/IPluginContext.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Execution/LoadedPlugin.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/Plugin/StellaOps.Plugin.Abstractions/Lifecycle/PluginLifecycleException.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Abstractions/Manifest/PluginManifest.cs | FileLength>100 | Split file to stay <= 100 lines. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Plugin/__Tests/StellaOps.Plugin.Abstractions.Tests/StellaOps.Plugin.Abstractions.Tests.csproj [Unit]; src/Plugin/__Tests/StellaOps.Plugin.Sdk.Tests/StellaOps.Plugin.Sdk.Tests.csproj [Unit]; src/Plugin/StellaOps.Plugin.Testing/StellaOps.Plugin.Testing.csproj [Unit] (no test attributes detected)
- 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,140 @@
# Audit - StellaOps.Plugin.Host
## Project
- Path: src/Plugin/StellaOps.Plugin.Host/StellaOps.Plugin.Host.csproj
- Module: Plugin
- Kind: Library
- Audit date (UTC): 2026-01-30
- Files scanned: 29
- Files with issues: 29
- 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: 18
- 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/Plugin/StellaOps.Plugin.Host/IPluginHost.cs (175 lines)
- src/Plugin/StellaOps.Plugin.Host/PluginHost.cs (419 lines)
- src/Plugin/StellaOps.Plugin.Host/PluginHostOptions.cs (119 lines)
- src/Plugin/StellaOps.Plugin.Host/Context/PluginConfiguration.cs (222 lines)
- src/Plugin/StellaOps.Plugin.Host/Context/PluginContext.cs (131 lines)
- src/Plugin/StellaOps.Plugin.Host/Context/PluginLogger.cs (113 lines)
- src/Plugin/StellaOps.Plugin.Host/Context/PluginServices.cs (121 lines)
- src/Plugin/StellaOps.Plugin.Host/Dependencies/DependencyGraph.cs (226 lines)
- src/Plugin/StellaOps.Plugin.Host/Dependencies/PluginDependencyResolver.cs (321 lines)
- src/Plugin/StellaOps.Plugin.Host/Discovery/CompositePluginDiscovery.cs (104 lines)
- src/Plugin/StellaOps.Plugin.Host/Discovery/EmbeddedPluginDiscovery.cs (154 lines)
- src/Plugin/StellaOps.Plugin.Host/Discovery/FileSystemPluginDiscovery.cs (288 lines)
- src/Plugin/StellaOps.Plugin.Host/Extensions/ServiceCollectionExtensions.cs (166 lines)
- src/Plugin/StellaOps.Plugin.Host/Health/PluginHealthMonitor.cs (254 lines)
- src/Plugin/StellaOps.Plugin.Host/Lifecycle/PluginLifecycleManager.cs (174 lines)
- src/Plugin/StellaOps.Plugin.Host/Lifecycle/PluginStateMachine.cs (151 lines)
- src/Plugin/StellaOps.Plugin.Host/Loading/AssemblyPluginLoader.cs (214 lines)
- src/Plugin/StellaOps.Plugin.Host/Loading/PluginAssemblyLoadContext.cs (116 lines)
- Namespace issues:
- src/Plugin/StellaOps.Plugin.Host/IPluginHost.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/PluginHost.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/PluginHostOptions.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Context/PluginConfiguration.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Context/PluginContext.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Context/PluginLogger.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Context/PluginServices.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Dependencies/DependencyGraph.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Dependencies/IPluginDependencyResolver.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Dependencies/PluginDependencyResolver.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Discovery/CompositePluginDiscovery.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Discovery/EmbeddedPluginDiscovery.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Discovery/FileSystemPluginDiscovery.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Discovery/IPluginDiscovery.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Extensions/ServiceCollectionExtensions.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Health/IPluginHealthMonitor.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Health/PluginHealthMonitor.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Lifecycle/IPluginLifecycleManager.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Lifecycle/PluginLifecycleManager.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Lifecycle/PluginStateMachine.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Loading/AssemblyPluginLoader.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Loading/IHostPluginLoader.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/Loading/PluginAssemblyLoadContext.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/obj/Debug/net10.0/StellaOps.Plugin.Host.AssemblyInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/obj/Debug/net10.0/StellaOps.Plugin.Host.GlobalUsings.g.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/obj/Release/net10.0/StellaOps.Plugin.Host.AssemblyInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Host/obj/Release/net10.0/StellaOps.Plugin.Host.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: 29
- Files with issues: 29
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/StellaOps.Plugin.Host/IPluginHost.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/PluginHost.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/PluginHostOptions.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Context/PluginConfiguration.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Context/PluginContext.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Context/PluginLogger.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Context/PluginServices.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Dependencies/DependencyGraph.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Dependencies/IPluginDependencyResolver.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Host/Dependencies/PluginDependencyResolver.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Discovery/CompositePluginDiscovery.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Discovery/EmbeddedPluginDiscovery.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Discovery/FileSystemPluginDiscovery.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Discovery/IPluginDiscovery.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Host/Extensions/ServiceCollectionExtensions.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Health/IPluginHealthMonitor.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Host/Health/PluginHealthMonitor.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Lifecycle/IPluginLifecycleManager.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Host/Lifecycle/PluginLifecycleManager.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Lifecycle/PluginStateMachine.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Loading/AssemblyPluginLoader.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Loading/IHostPluginLoader.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Host/Loading/PluginAssemblyLoadContext.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Host/obj/Debug/net10.0/StellaOps.Plugin.Host.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Host/obj/Debug/net10.0/StellaOps.Plugin.Host.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Host/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Host/obj/Release/net10.0/StellaOps.Plugin.Host.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Host/obj/Release/net10.0/StellaOps.Plugin.Host.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/StellaOps.Plugin.Host.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,124 @@
# Audit - StellaOps.Plugin.Host
## Project
- Path: src/Plugin/StellaOps.Plugin.Host/StellaOps.Plugin.Host.csproj
- Module: Plugin
- Kind: Service
- Audit date (UTC): 2026-01-31
- Files scanned: 23
- Files with issues: 18
- 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: 18
- Namespace violations: 0
- Using directive violations: 3
- Naming violations (interfaces/fields/const/async): 9
- Service locator usage (BuildServiceProvider/GetService): 10
- Assembly.LoadFrom usage: 1
### Details
- 100-line files:
- src/Plugin/StellaOps.Plugin.Host/IPluginHost.cs (175 lines)
- src/Plugin/StellaOps.Plugin.Host/PluginHost.cs (420 lines)
- src/Plugin/StellaOps.Plugin.Host/PluginHostOptions.cs (119 lines)
- src/Plugin/StellaOps.Plugin.Host/Context/PluginConfiguration.cs (223 lines)
- src/Plugin/StellaOps.Plugin.Host/Context/PluginContext.cs (131 lines)
- src/Plugin/StellaOps.Plugin.Host/Context/PluginLogger.cs (114 lines)
- src/Plugin/StellaOps.Plugin.Host/Context/PluginServices.cs (121 lines)
- src/Plugin/StellaOps.Plugin.Host/Dependencies/DependencyGraph.cs (226 lines)
- src/Plugin/StellaOps.Plugin.Host/Dependencies/PluginDependencyResolver.cs (321 lines)
- src/Plugin/StellaOps.Plugin.Host/Discovery/CompositePluginDiscovery.cs (104 lines)
- src/Plugin/StellaOps.Plugin.Host/Discovery/EmbeddedPluginDiscovery.cs (155 lines)
- src/Plugin/StellaOps.Plugin.Host/Discovery/FileSystemPluginDiscovery.cs (289 lines)
- src/Plugin/StellaOps.Plugin.Host/Extensions/ServiceCollectionExtensions.cs (166 lines)
- src/Plugin/StellaOps.Plugin.Host/Health/PluginHealthMonitor.cs (255 lines)
- src/Plugin/StellaOps.Plugin.Host/Lifecycle/PluginLifecycleManager.cs (175 lines)
- src/Plugin/StellaOps.Plugin.Host/Lifecycle/PluginStateMachine.cs (151 lines)
- src/Plugin/StellaOps.Plugin.Host/Loading/AssemblyPluginLoader.cs (215 lines)
- src/Plugin/StellaOps.Plugin.Host/Loading/PluginAssemblyLoadContext.cs (116 lines)
- Namespace issues:
- none
- Using directive issues:
- src/Plugin/StellaOps.Plugin.Host/PluginHost.cs: using directives inside namespace
- src/Plugin/StellaOps.Plugin.Host/Context/PluginLogger.cs: using directives inside namespace
- src/Plugin/StellaOps.Plugin.Host/Health/PluginHealthMonitor.cs: using directives inside namespace
- Naming issues:
- src/Plugin/StellaOps.Plugin.Host/Context/PluginConfiguration.cs: private field naming
- src/Plugin/StellaOps.Plugin.Host/Discovery/FileSystemPluginDiscovery.cs: private field naming
- Async issues:
- src/Plugin/StellaOps.Plugin.Host/PluginHost.cs: async method naming
- src/Plugin/StellaOps.Plugin.Host/Context/PluginConfiguration.cs: async method naming
- src/Plugin/StellaOps.Plugin.Host/Discovery/CompositePluginDiscovery.cs: async method naming
- src/Plugin/StellaOps.Plugin.Host/Discovery/FileSystemPluginDiscovery.cs: async method naming
- src/Plugin/StellaOps.Plugin.Host/Extensions/ServiceCollectionExtensions.cs: async method naming
- src/Plugin/StellaOps.Plugin.Host/Health/PluginHealthMonitor.cs: async method naming
- src/Plugin/StellaOps.Plugin.Host/Loading/AssemblyPluginLoader.cs: async method naming
- Service locator matches:
- src/Plugin/StellaOps.Plugin.Host/Context/PluginServices.cs:39 return _serviceProvider.GetService<T>();
- src/Plugin/StellaOps.Plugin.Host/Context/PluginServices.cs:46 return _serviceProvider.GetRequiredService<T>();
- src/Plugin/StellaOps.Plugin.Host/Context/PluginServices.cs:53 return _serviceProvider.GetServices<T>();
- src/Plugin/StellaOps.Plugin.Host/Context/PluginServices.cs:59 var scope = _serviceProvider.GetRequiredService<IServiceScopeFactory>().CreateScope();
- src/Plugin/StellaOps.Plugin.Host/Extensions/ServiceCollectionExtensions.cs:57 var loggerFactory = sp.GetRequiredService<ILoggerFactory>();
- src/Plugin/StellaOps.Plugin.Host/Extensions/ServiceCollectionExtensions.cs:58 var options = sp.GetRequiredService<IOptions<PluginHostOptions>>().Value;
- src/Plugin/StellaOps.Plugin.Host/Extensions/ServiceCollectionExtensions.cs:59 var timeProvider = sp.GetRequiredService<TimeProvider>();
- src/Plugin/StellaOps.Plugin.Host/Extensions/ServiceCollectionExtensions.cs:112 var loggerFactory = sp.GetRequiredService<ILoggerFactory>();
- src/Plugin/StellaOps.Plugin.Host/Extensions/ServiceCollectionExtensions.cs:113 var options = sp.GetRequiredService<IOptions<PluginHostOptions>>().Value;
- src/Plugin/StellaOps.Plugin.Host/Extensions/ServiceCollectionExtensions.cs:114 var timeProvider = sp.GetRequiredService<TimeProvider>();
- Assembly.LoadFrom matches:
- src/Plugin/StellaOps.Plugin.Host/Loading/AssemblyPluginLoader.cs:75 assembly = Assembly.LoadFrom(assemblyPath);
### 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 Assembly.LoadFrom usage with plugin loader patterns.
- Replace service locator usage with constructor injection.
- Split files over 100 lines into smaller types or partials.
## File-Level Findings
- Status: FAIL
- Files scanned: 23
- Files with issues: 18
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/StellaOps.Plugin.Host/IPluginHost.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/PluginHost.cs | AsyncNaming; FileLength>100; UsingInsideNamespace | Move using directives outside namespace.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/PluginHostOptions.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Context/PluginConfiguration.cs | AsyncNaming; FileLength>100; PrivateFieldNaming | Rename async methods to end with Async.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Context/PluginContext.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Context/PluginLogger.cs | FileLength>100; UsingInsideNamespace | Move using directives outside namespace.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Context/PluginServices.cs | FileLength>100; ServiceLocator | Remove service locator usage; use constructor injection.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Dependencies/DependencyGraph.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Dependencies/PluginDependencyResolver.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Discovery/CompositePluginDiscovery.cs | AsyncNaming; FileLength>100 | Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Discovery/EmbeddedPluginDiscovery.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Discovery/FileSystemPluginDiscovery.cs | AsyncNaming; FileLength>100; PrivateFieldNaming | Rename async methods to end with Async.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Extensions/ServiceCollectionExtensions.cs | AsyncNaming; FileLength>100; ServiceLocator | Remove service locator usage; use constructor injection.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Health/PluginHealthMonitor.cs | AsyncNaming; FileLength>100; UsingInsideNamespace | Move using directives outside namespace.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Lifecycle/PluginLifecycleManager.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Lifecycle/PluginStateMachine.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Loading/AssemblyPluginLoader.cs | AssemblyLoadFrom; AsyncNaming; FileLength>100 | Avoid Assembly.LoadFrom outside the plugin loader.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Host/Loading/PluginAssemblyLoadContext.cs | FileLength>100 | Split file to stay <= 100 lines. |
## Testing Fullness Findings
- Status: FAIL
- Expected layers (heuristic): E2E, Integration, Offline, Security, Unit
- Detected test projects: src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/StellaOps.Plugin.Host.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,102 @@
# Audit - StellaOps.Plugin.Registry
## Project
- Path: src/Plugin/StellaOps.Plugin.Registry/StellaOps.Plugin.Registry.csproj
- Module: Plugin
- Kind: Library
- Audit date (UTC): 2026-01-30
- Files scanned: 16
- Files with issues: 16
- 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: 16
- 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/Plugin/StellaOps.Plugin.Registry/InMemoryPluginRegistry.cs (426 lines)
- src/Plugin/StellaOps.Plugin.Registry/IPluginRegistry.cs (144 lines)
- src/Plugin/StellaOps.Plugin.Registry/PluginRegistryMigrationRunner.cs (159 lines)
- src/Plugin/StellaOps.Plugin.Registry/PostgresPluginRegistry.cs (735 lines)
- src/Plugin/StellaOps.Plugin.Registry/Extensions/ServiceCollectionExtensions.cs (106 lines)
- src/Plugin/StellaOps.Plugin.Registry/Models/PluginRecord.cs (123 lines)
- Namespace issues:
- src/Plugin/StellaOps.Plugin.Registry/InMemoryPluginRegistry.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/IPluginRegistry.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/PluginRegistryMigrationRunner.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/PluginRegistryOptions.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/PostgresPluginRegistry.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/Extensions/ServiceCollectionExtensions.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/Models/PluginCapabilityRecord.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/Models/PluginHealthRecord.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/Models/PluginInstanceRecord.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/Models/PluginRecord.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/obj/Debug/net10.0/StellaOps.Plugin.Registry.AssemblyInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/obj/Debug/net10.0/StellaOps.Plugin.Registry.GlobalUsings.g.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/obj/Release/net10.0/StellaOps.Plugin.Registry.AssemblyInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Registry/obj/Release/net10.0/StellaOps.Plugin.Registry.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: 16
- Files with issues: 16
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/StellaOps.Plugin.Registry/InMemoryPluginRegistry.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Registry/IPluginRegistry.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Registry/PluginRegistryMigrationRunner.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Registry/PluginRegistryOptions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Registry/PostgresPluginRegistry.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Registry/Extensions/ServiceCollectionExtensions.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Registry/Models/PluginCapabilityRecord.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Registry/Models/PluginHealthRecord.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Registry/Models/PluginInstanceRecord.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Registry/Models/PluginRecord.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Registry/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Registry/obj/Debug/net10.0/StellaOps.Plugin.Registry.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Registry/obj/Debug/net10.0/StellaOps.Plugin.Registry.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Registry/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Registry/obj/Release/net10.0/StellaOps.Plugin.Registry.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Registry/obj/Release/net10.0/StellaOps.Plugin.Registry.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/StellaOps.Plugin.Registry.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.Plugin.Registry
## Project
- Path: src/Plugin/StellaOps.Plugin.Registry/StellaOps.Plugin.Registry.csproj
- Module: Plugin
- Kind: Plugin
- Audit date (UTC): 2026-01-31
- Files scanned: 10
- Files with issues: 6
- 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): 6
- Service locator usage (BuildServiceProvider/GetService): 2
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Plugin/StellaOps.Plugin.Registry/InMemoryPluginRegistry.cs (427 lines)
- src/Plugin/StellaOps.Plugin.Registry/IPluginRegistry.cs (145 lines)
- src/Plugin/StellaOps.Plugin.Registry/PluginRegistryMigrationRunner.cs (160 lines)
- src/Plugin/StellaOps.Plugin.Registry/PostgresPluginRegistry.cs (736 lines)
- src/Plugin/StellaOps.Plugin.Registry/Extensions/ServiceCollectionExtensions.cs (106 lines)
- src/Plugin/StellaOps.Plugin.Registry/Models/PluginRecord.cs (124 lines)
- Namespace issues:
- none
- Using directive issues:
- src/Plugin/StellaOps.Plugin.Registry/PluginRegistryMigrationRunner.cs: using directives inside namespace
- Naming issues:
- src/Plugin/StellaOps.Plugin.Registry/PostgresPluginRegistry.cs: private field naming
- Async issues:
- src/Plugin/StellaOps.Plugin.Registry/InMemoryPluginRegistry.cs: blocking async usage
- src/Plugin/StellaOps.Plugin.Registry/PluginRegistryMigrationRunner.cs: async method naming
- src/Plugin/StellaOps.Plugin.Registry/PluginRegistryMigrationRunner.cs: missing ConfigureAwait(false)
- src/Plugin/StellaOps.Plugin.Registry/PostgresPluginRegistry.cs: async method naming
- src/Plugin/StellaOps.Plugin.Registry/PostgresPluginRegistry.cs: missing ConfigureAwait(false)
- Service locator matches:
- src/Plugin/StellaOps.Plugin.Registry/Extensions/ServiceCollectionExtensions.cs:32 var options = sp.GetRequiredService<IOptions<PluginRegistryOptions>>().Value;
- src/Plugin/StellaOps.Plugin.Registry/Extensions/ServiceCollectionExtensions.cs:64 var options = sp.GetRequiredService<IOptions<PluginRegistryOptions>>().Value;
- 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: 10
- Files with issues: 6
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/StellaOps.Plugin.Registry/InMemoryPluginRegistry.cs | BlockingAsync; FileLength>100 | Replace .Result/.Wait/GetAwaiter().GetResult() with await.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Registry/IPluginRegistry.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Registry/PluginRegistryMigrationRunner.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingInsideNamespace | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Registry/PostgresPluginRegistry.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; PrivateFieldNaming | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async.; Rename private fields to _camelCase.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Registry/Extensions/ServiceCollectionExtensions.cs | FileLength>100; ServiceLocator | Remove service locator usage; use constructor injection.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Registry/Models/PluginRecord.cs | FileLength>100 | Split file to stay <= 100 lines. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/StellaOps.Plugin.Registry.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,137 @@
# Audit - StellaOps.Plugin.Sandbox
## Project
- Path: src/Plugin/StellaOps.Plugin.Sandbox/StellaOps.Plugin.Sandbox.csproj
- Module: Plugin
- Kind: Library
- Audit date (UTC): 2026-01-30
- Files scanned: 29
- Files with issues: 29
- 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: 15
- 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/Plugin/StellaOps.Plugin.Sandbox/ProcessSandbox.cs (474 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/SandboxConfiguration.cs (244 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/SandboxFactory.cs (168 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/SandboxState.cs (111 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Communication/GrpcPluginBridge.cs (283 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Extensions/ServiceCollectionExtensions.cs (107 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Filesystem/IFilesystemPolicy.cs (170 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Network/NetworkPolicyEnforcer.cs (379 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Debug/net10.0/Communication/Proto/PluginBridge.cs (4095 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Debug/net10.0/Communication/Proto/PluginBridgeGrpc.cs (466 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Release/net10.0/Communication/Proto/PluginBridge.cs (4095 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Release/net10.0/Communication/Proto/PluginBridgeGrpc.cs (466 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Process/PluginProcessManager.cs (252 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Resources/LinuxResourceLimiter.cs (301 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Resources/WindowsResourceLimiter.cs (354 lines)
- Namespace issues:
- src/Plugin/StellaOps.Plugin.Sandbox/ISandbox.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/ISandboxFactory.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/ProcessSandbox.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/SandboxConfiguration.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/SandboxFactory.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/SandboxState.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Communication/GrpcPluginBridge.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Communication/IGrpcPluginBridge.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Extensions/ServiceCollectionExtensions.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Filesystem/IFilesystemPolicy.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Network/INetworkPolicyEnforcer.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Network/NetworkPolicyEnforcer.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Debug/net10.0/StellaOps.Plugin.Sandbox.AssemblyInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Debug/net10.0/StellaOps.Plugin.Sandbox.GlobalUsings.g.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Debug/net10.0/Communication/Proto/PluginBridge.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Debug/net10.0/Communication/Proto/PluginBridgeGrpc.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Release/net10.0/StellaOps.Plugin.Sandbox.AssemblyInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Release/net10.0/StellaOps.Plugin.Sandbox.GlobalUsings.g.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Release/net10.0/Communication/Proto/PluginBridge.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/obj/Release/net10.0/Communication/Proto/PluginBridgeGrpc.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Process/IPluginProcessManager.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Process/PluginProcessManager.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Resources/IResourceLimiter.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Resources/LinuxResourceLimiter.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Resources/ResourceUsage.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Resources/WindowsResourceLimiter.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Secrets/ISecretProxy.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: 29
- Files with issues: 29
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/StellaOps.Plugin.Sandbox/ISandbox.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/ISandboxFactory.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/ProcessSandbox.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/SandboxConfiguration.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/SandboxFactory.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/SandboxState.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Communication/GrpcPluginBridge.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Communication/IGrpcPluginBridge.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/Extensions/ServiceCollectionExtensions.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Filesystem/IFilesystemPolicy.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Network/INetworkPolicyEnforcer.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/Network/NetworkPolicyEnforcer.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/obj/Debug/net10.0/StellaOps.Plugin.Sandbox.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/obj/Debug/net10.0/StellaOps.Plugin.Sandbox.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/obj/Debug/net10.0/Communication/Proto/PluginBridge.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/obj/Debug/net10.0/Communication/Proto/PluginBridgeGrpc.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/obj/Release/net10.0/StellaOps.Plugin.Sandbox.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/obj/Release/net10.0/StellaOps.Plugin.Sandbox.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/obj/Release/net10.0/Communication/Proto/PluginBridge.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/obj/Release/net10.0/Communication/Proto/PluginBridgeGrpc.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Process/IPluginProcessManager.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/Process/PluginProcessManager.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Resources/IResourceLimiter.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/Resources/LinuxResourceLimiter.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Resources/ResourceUsage.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sandbox/Resources/WindowsResourceLimiter.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Secrets/ISecretProxy.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Plugin/__Tests/StellaOps.Plugin.Sandbox.Tests/StellaOps.Plugin.Sandbox.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,106 @@
# Audit - StellaOps.Plugin.Sandbox
## Project
- Path: src/Plugin/StellaOps.Plugin.Sandbox/StellaOps.Plugin.Sandbox.csproj
- Module: Plugin
- Kind: Plugin
- Audit date (UTC): 2026-01-31
- Files scanned: 19
- Files with issues: 12
- 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: 4
- Naming violations (interfaces/fields/const/async): 14
- Service locator usage (BuildServiceProvider/GetService): 1
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Plugin/StellaOps.Plugin.Sandbox/ProcessSandbox.cs (475 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/SandboxConfiguration.cs (244 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/SandboxFactory.cs (168 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/SandboxState.cs (111 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Communication/GrpcPluginBridge.cs (284 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Extensions/ServiceCollectionExtensions.cs (107 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Filesystem/IFilesystemPolicy.cs (170 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Network/NetworkPolicyEnforcer.cs (380 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Process/PluginProcessManager.cs (253 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Resources/LinuxResourceLimiter.cs (302 lines)
- src/Plugin/StellaOps.Plugin.Sandbox/Resources/WindowsResourceLimiter.cs (355 lines)
- Namespace issues:
- none
- Using directive issues:
- src/Plugin/StellaOps.Plugin.Sandbox/ProcessSandbox.cs: using directives inside namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Communication/GrpcPluginBridge.cs: using directives inside namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Network/NetworkPolicyEnforcer.cs: using directives inside namespace
- src/Plugin/StellaOps.Plugin.Sandbox/Process/PluginProcessManager.cs: using directives inside namespace
- Naming issues:
- src/Plugin/StellaOps.Plugin.Sandbox/Resources/WindowsResourceLimiter.cs: const naming
- Async issues:
- src/Plugin/StellaOps.Plugin.Sandbox/ProcessSandbox.cs: async method naming
- src/Plugin/StellaOps.Plugin.Sandbox/ProcessSandbox.cs: missing ConfigureAwait(false)
- src/Plugin/StellaOps.Plugin.Sandbox/Communication/GrpcPluginBridge.cs: async method naming
- src/Plugin/StellaOps.Plugin.Sandbox/Communication/GrpcPluginBridge.cs: missing ConfigureAwait(false)
- src/Plugin/StellaOps.Plugin.Sandbox/Network/NetworkPolicyEnforcer.cs: async method naming
- src/Plugin/StellaOps.Plugin.Sandbox/Network/NetworkPolicyEnforcer.cs: missing ConfigureAwait(false)
- src/Plugin/StellaOps.Plugin.Sandbox/Process/PluginProcessManager.cs: async method naming
- src/Plugin/StellaOps.Plugin.Sandbox/Process/PluginProcessManager.cs: missing ConfigureAwait(false)
- src/Plugin/StellaOps.Plugin.Sandbox/Resources/LinuxResourceLimiter.cs: async method naming
- src/Plugin/StellaOps.Plugin.Sandbox/Resources/LinuxResourceLimiter.cs: missing ConfigureAwait(false)
- src/Plugin/StellaOps.Plugin.Sandbox/Resources/WindowsResourceLimiter.cs: missing ConfigureAwait(false)
- src/Plugin/StellaOps.Plugin.Sandbox/Secrets/ISecretProxy.cs: async method naming
- src/Plugin/StellaOps.Plugin.Sandbox/Secrets/ISecretProxy.cs: missing ConfigureAwait(false)
- Service locator matches:
- src/Plugin/StellaOps.Plugin.Sandbox/Extensions/ServiceCollectionExtensions.cs:48 var loggerFactory = sp.GetRequiredService<ILoggerFactory>();
- 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: 19
- Files with issues: 12
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/StellaOps.Plugin.Sandbox/ProcessSandbox.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingInsideNamespace | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/SandboxConfiguration.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/SandboxFactory.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/SandboxState.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Communication/GrpcPluginBridge.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingInsideNamespace | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Extensions/ServiceCollectionExtensions.cs | FileLength>100; ServiceLocator | Remove service locator usage; use constructor injection.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Filesystem/IFilesystemPolicy.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Network/NetworkPolicyEnforcer.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingInsideNamespace | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Process/PluginProcessManager.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingInsideNamespace | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Resources/LinuxResourceLimiter.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/Plugin/StellaOps.Plugin.Sandbox/Resources/WindowsResourceLimiter.cs | ConfigureAwaitMissing; ConstNaming; FileLength>100 | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename consts to PascalCase.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sandbox/Secrets/ISecretProxy.cs | AsyncNaming; ConfigureAwaitMissing | Add ConfigureAwait(false) to awaited calls in library-like code.; Rename async methods to end with Async. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Plugin/__Tests/StellaOps.Plugin.Sandbox.Tests/StellaOps.Plugin.Sandbox.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,88 @@
# Audit - StellaOps.Plugin.Sdk
## Project
- Path: src/Plugin/StellaOps.Plugin.Sdk/StellaOps.Plugin.Sdk.csproj
- Module: Plugin
- Kind: Library
- Audit date (UTC): 2026-01-30
- 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: explicit true
- Deterministic: inherited true
- 100-line rule violations: 2
- Namespace violations: 11
- 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/Plugin/StellaOps.Plugin.Sdk/PluginBase.cs (158 lines)
- src/Plugin/StellaOps.Plugin.Sdk/PluginInfoBuilder.cs (121 lines)
- Namespace issues:
- src/Plugin/StellaOps.Plugin.Sdk/PluginBase.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sdk/PluginConfigAttribute.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sdk/PluginExtensions.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sdk/PluginInfoBuilder.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sdk/PluginOptionsBase.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sdk/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sdk/obj/Debug/net10.0/StellaOps.Plugin.Sdk.AssemblyInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sdk/obj/Debug/net10.0/StellaOps.Plugin.Sdk.GlobalUsings.g.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sdk/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sdk/obj/Release/net10.0/StellaOps.Plugin.Sdk.AssemblyInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Sdk/obj/Release/net10.0/StellaOps.Plugin.Sdk.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: 11
- Files with issues: 11
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/StellaOps.Plugin.Sdk/PluginBase.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sdk/PluginConfigAttribute.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sdk/PluginExtensions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sdk/PluginInfoBuilder.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Sdk/PluginOptionsBase.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sdk/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sdk/obj/Debug/net10.0/StellaOps.Plugin.Sdk.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sdk/obj/Debug/net10.0/StellaOps.Plugin.Sdk.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sdk/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sdk/obj/Release/net10.0/StellaOps.Plugin.Sdk.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Sdk/obj/Release/net10.0/StellaOps.Plugin.Sdk.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Plugin/__Tests/StellaOps.Plugin.Sdk.Tests/StellaOps.Plugin.Sdk.Tests.csproj [Unit]; src/Plugin/StellaOps.Plugin.Testing/StellaOps.Plugin.Testing.csproj [Unit] (no test attributes detected)
- 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,73 @@
# Audit - StellaOps.Plugin.Sdk
## Project
- Path: src/Plugin/StellaOps.Plugin.Sdk/StellaOps.Plugin.Sdk.csproj
- Module: Plugin
- Kind: Plugin
- Audit date (UTC): 2026-01-31
- Files scanned: 5
- 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: 2
- Namespace violations: 0
- Using directive violations: 0
- Naming violations (interfaces/fields/const/async): 3
- Service locator usage (BuildServiceProvider/GetService): 1
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Plugin/StellaOps.Plugin.Sdk/PluginBase.cs (159 lines)
- src/Plugin/StellaOps.Plugin.Sdk/PluginInfoBuilder.cs (122 lines)
- Namespace issues:
- none
- Using directive issues:
- none
- Naming issues:
- none
- Async issues:
- src/Plugin/StellaOps.Plugin.Sdk/PluginBase.cs: async method naming
- src/Plugin/StellaOps.Plugin.Sdk/PluginBase.cs: missing ConfigureAwait(false)
- src/Plugin/StellaOps.Plugin.Sdk/PluginExtensions.cs: missing ConfigureAwait(false)
- Service locator matches:
- src/Plugin/StellaOps.Plugin.Sdk/PluginExtensions.cs:76 var factory = services.GetRequiredService<IHttpClientFactory>();
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- 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: 5
- Files with issues: 3
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/StellaOps.Plugin.Sdk/PluginBase.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/Plugin/StellaOps.Plugin.Sdk/PluginExtensions.cs | ConfigureAwaitMissing; ServiceLocator | Add ConfigureAwait(false) to awaited calls in library-like code.; Remove service locator usage; use constructor injection. |
| src/Plugin/StellaOps.Plugin.Sdk/PluginInfoBuilder.cs | FileLength>100 | Split file to stay <= 100 lines. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/Plugin/__Tests/StellaOps.Plugin.Sdk.Tests/StellaOps.Plugin.Sdk.Tests.csproj [Unit]; src/Plugin/StellaOps.Plugin.Testing/StellaOps.Plugin.Testing.csproj [Unit] (no test attributes detected)
- 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,99 @@
# Audit - StellaOps.Plugin.Testing
## Project
- Path: src/Plugin/StellaOps.Plugin.Testing/StellaOps.Plugin.Testing.csproj
- Module: Plugin
- Kind: Library
- Audit date (UTC): 2026-01-30
- Files scanned: 16
- Files with issues: 16
- 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: 16
- 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/Plugin/StellaOps.Plugin.Testing/TestHttpClientFactory.cs (225 lines)
- src/Plugin/StellaOps.Plugin.Testing/TestPluginConfiguration.cs (125 lines)
- src/Plugin/StellaOps.Plugin.Testing/TestPluginLogger.cs (201 lines)
- Namespace issues:
- src/Plugin/StellaOps.Plugin.Testing/FakeTimeProvider.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/PluginTestBase.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/PluginTestHost.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/PluginTestHostOptions.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/SequentialGuidGenerator.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/TestHttpClientFactory.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/TestPluginConfiguration.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/TestPluginContext.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/TestPluginLogger.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/TestPluginServices.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/obj/Debug/net10.0/StellaOps.Plugin.Testing.AssemblyInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/obj/Debug/net10.0/StellaOps.Plugin.Testing.GlobalUsings.g.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/obj/Release/net10.0/StellaOps.Plugin.Testing.AssemblyInfo.cs: missing namespace
- src/Plugin/StellaOps.Plugin.Testing/obj/Release/net10.0/StellaOps.Plugin.Testing.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: 16
- Files with issues: 16
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/StellaOps.Plugin.Testing/FakeTimeProvider.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Testing/PluginTestBase.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Testing/PluginTestHost.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Testing/PluginTestHostOptions.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Testing/SequentialGuidGenerator.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Testing/TestHttpClientFactory.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Testing/TestPluginConfiguration.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Testing/TestPluginContext.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Testing/TestPluginLogger.cs | FileLength>100; NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>;; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Testing/TestPluginServices.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Testing/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Testing/obj/Debug/net10.0/StellaOps.Plugin.Testing.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Testing/obj/Debug/net10.0/StellaOps.Plugin.Testing.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Testing/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Testing/obj/Release/net10.0/StellaOps.Plugin.Testing.AssemblyInfo.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
| src/Plugin/StellaOps.Plugin.Testing/obj/Release/net10.0/StellaOps.Plugin.Testing.GlobalUsings.g.cs | NamespaceMissing | Add file-scoped namespace: namespace StellaOps.<Area>; |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic): Unit
- Detected test projects: src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/StellaOps.AdvisoryAI.Tests.csproj [Unit]; src/ReleaseOrchestrator/__Tests/StellaOps.ReleaseOrchestrator.Plugin.Sdk.Tests/StellaOps.ReleaseOrchestrator.Plugin.Sdk.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,88 @@
# Audit - StellaOps.Plugin.Testing
## Project
- Path: src/Plugin/StellaOps.Plugin.Testing/StellaOps.Plugin.Testing.csproj
- Module: Plugin
- Kind: Test
- Audit date (UTC): 2026-01-31
- Files scanned: 10
- 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: 3
- Namespace violations: 0
- Using directive violations: 8
- Naming violations (interfaces/fields/const/async): 5
- Service locator usage (BuildServiceProvider/GetService): 0
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Plugin/StellaOps.Plugin.Testing/TestHttpClientFactory.cs (225 lines)
- src/Plugin/StellaOps.Plugin.Testing/TestPluginConfiguration.cs (125 lines)
- src/Plugin/StellaOps.Plugin.Testing/TestPluginLogger.cs (201 lines)
- Namespace issues:
- none
- Using directive issues:
- src/Plugin/StellaOps.Plugin.Testing/PluginTestBase.cs: using directives inside namespace
- src/Plugin/StellaOps.Plugin.Testing/PluginTestHost.cs: using directives inside namespace
- src/Plugin/StellaOps.Plugin.Testing/PluginTestHostOptions.cs: using directives inside namespace
- src/Plugin/StellaOps.Plugin.Testing/TestHttpClientFactory.cs: using directives inside namespace
- src/Plugin/StellaOps.Plugin.Testing/TestPluginConfiguration.cs: using directives inside namespace
- src/Plugin/StellaOps.Plugin.Testing/TestPluginContext.cs: using directives inside namespace
- src/Plugin/StellaOps.Plugin.Testing/TestPluginLogger.cs: using directives inside namespace
- src/Plugin/StellaOps.Plugin.Testing/TestPluginServices.cs: using directives inside namespace
- Naming issues:
- none
- Async issues:
- src/Plugin/StellaOps.Plugin.Testing/PluginTestBase.cs: missing ConfigureAwait(false)
- src/Plugin/StellaOps.Plugin.Testing/PluginTestHost.cs: async method naming
- src/Plugin/StellaOps.Plugin.Testing/PluginTestHost.cs: missing ConfigureAwait(false)
- src/Plugin/StellaOps.Plugin.Testing/TestHttpClientFactory.cs: async method naming
- src/Plugin/StellaOps.Plugin.Testing/TestHttpClientFactory.cs: missing ConfigureAwait(false)
- Service locator matches:
- none
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- Move and sort using directives (outside namespace).
- 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: 10
- Files with issues: 8
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/StellaOps.Plugin.Testing/PluginTestBase.cs | ConfigureAwaitMissing; UsingInsideNamespace | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace. |
| src/Plugin/StellaOps.Plugin.Testing/PluginTestHost.cs | AsyncNaming; ConfigureAwaitMissing; UsingInsideNamespace | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async. |
| src/Plugin/StellaOps.Plugin.Testing/PluginTestHostOptions.cs | UsingInsideNamespace | Move using directives outside namespace. |
| src/Plugin/StellaOps.Plugin.Testing/TestHttpClientFactory.cs | AsyncNaming; ConfigureAwaitMissing; FileLength>100; UsingInsideNamespace | Add ConfigureAwait(false) to awaited calls in library-like code.; Move using directives outside namespace.; Rename async methods to end with Async.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Testing/TestPluginConfiguration.cs | FileLength>100; UsingInsideNamespace | Move using directives outside namespace.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Testing/TestPluginContext.cs | UsingInsideNamespace | Move using directives outside namespace. |
| src/Plugin/StellaOps.Plugin.Testing/TestPluginLogger.cs | FileLength>100; UsingInsideNamespace | Move using directives outside namespace.; Split file to stay <= 100 lines. |
| src/Plugin/StellaOps.Plugin.Testing/TestPluginServices.cs | UsingInsideNamespace | Move using directives outside namespace. |
## Testing Fullness Findings
- Status: PASS
- Expected layers (heuristic):
- Detected test projects: src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/StellaOps.AdvisoryAI.Tests.csproj [Unit]; src/Plugin/Samples/StellaOps.Plugin.Samples.HelloWorld.Tests/StellaOps.Plugin.Samples.HelloWorld.Tests.csproj [Unit]; src/ReleaseOrchestrator/__Tests/StellaOps.ReleaseOrchestrator.Plugin.Sdk.Tests/StellaOps.ReleaseOrchestrator.Plugin.Sdk.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.Plugin.Abstractions.Tests
## Project
- Path: src/Plugin/__Tests/StellaOps.Plugin.Abstractions.Tests/StellaOps.Plugin.Abstractions.Tests.csproj
- Module: Plugin
- 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: explicit true
- Deterministic: inherited true
- 100-line rule violations: 4
- 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/Plugin/__Tests/StellaOps.Plugin.Abstractions.Tests/HealthCheckResultTests.cs (159 lines)
- src/Plugin/__Tests/StellaOps.Plugin.Abstractions.Tests/PluginCapabilitiesTests.cs (150 lines)
- src/Plugin/__Tests/StellaOps.Plugin.Abstractions.Tests/PluginInfoTests.cs (161 lines)
- src/Plugin/__Tests/StellaOps.Plugin.Abstractions.Tests/PluginLifecycleStateTests.cs (117 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: 4
- Files with issues: 4
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/__Tests/StellaOps.Plugin.Abstractions.Tests/HealthCheckResultTests.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/__Tests/StellaOps.Plugin.Abstractions.Tests/PluginCapabilitiesTests.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/__Tests/StellaOps.Plugin.Abstractions.Tests/PluginInfoTests.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/__Tests/StellaOps.Plugin.Abstractions.Tests/PluginLifecycleStateTests.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,79 @@
# Audit - StellaOps.Plugin.Host.Tests
## Project
- Path: src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/StellaOps.Plugin.Host.Tests.csproj
- Module: Plugin
- Kind: Test
- Audit date (UTC): 2026-01-31
- Files scanned: 5
- Files with issues: 5
- 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: 5
- Namespace violations: 0
- Using directive violations: 1
- Naming violations (interfaces/fields/const/async): 4
- Service locator usage (BuildServiceProvider/GetService): 0
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/DependencyGraphTests.cs (166 lines)
- src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/DependencyResolverTests.cs (247 lines)
- src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/LifecycleManagerTests.cs (225 lines)
- src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/PluginConfigurationTests.cs (238 lines)
- src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/PluginStateMachineTests.cs (131 lines)
- Namespace issues:
- none
- Using directive issues:
- src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/PluginConfigurationTests.cs: using directives not sorted
- Naming issues:
- none
- Async issues:
- src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/LifecycleManagerTests.cs: async method naming
- src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/LifecycleManagerTests.cs: missing ConfigureAwait(false)
- src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/PluginConfigurationTests.cs: async method naming
- src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/PluginConfigurationTests.cs: missing ConfigureAwait(false)
- Service locator matches:
- none
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- Move and sort using directives (outside namespace).
- 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: 5
- Files with issues: 5
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/DependencyGraphTests.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/DependencyResolverTests.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/__Tests/StellaOps.Plugin.Host.Tests/LifecycleManagerTests.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/Plugin/__Tests/StellaOps.Plugin.Host.Tests/PluginConfigurationTests.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/Plugin/__Tests/StellaOps.Plugin.Host.Tests/PluginStateMachineTests.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,74 @@
# Audit - StellaOps.Plugin.Registry.Tests
## Project
- Path: src/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/StellaOps.Plugin.Registry.Tests.csproj
- Module: Plugin
- Kind: Test
- 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: 2
- Naming violations (interfaces/fields/const/async): 2
- Service locator usage (BuildServiceProvider/GetService): 0
- Assembly.LoadFrom usage: 0
### Details
- 100-line files:
- src/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/InMemoryPluginRegistryTests.cs (481 lines)
- src/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/PluginCapabilitiesExtensionsTests.cs (261 lines)
- src/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/PluginRecordTests.cs (239 lines)
- Namespace issues:
- none
- Using directive issues:
- src/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/InMemoryPluginRegistryTests.cs: using directives not sorted
- src/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/PluginRecordTests.cs: using directives not sorted
- Naming issues:
- none
- Async issues:
- src/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/InMemoryPluginRegistryTests.cs: async method naming
- src/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/InMemoryPluginRegistryTests.cs: missing ConfigureAwait(false)
- Service locator matches:
- none
- Assembly.LoadFrom matches:
- none
### Fix Guidance
- Move and sort using directives (outside namespace).
- 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/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/InMemoryPluginRegistryTests.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/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/PluginCapabilitiesExtensionsTests.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/__Tests/StellaOps.Plugin.Registry.Tests/PluginRecordTests.cs | FileLength>100; UsingNotSorted | 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,72 @@
# Audit - StellaOps.Plugin.Sandbox.Tests
## Project
- Path: src/Plugin/__Tests/StellaOps.Plugin.Sandbox.Tests/StellaOps.Plugin.Sandbox.Tests.csproj
- Module: Plugin
- 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: explicit true
- Deterministic: inherited true
- 100-line rule violations: 4
- 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/Plugin/__Tests/StellaOps.Plugin.Sandbox.Tests/FilesystemPolicyTests.cs (263 lines)
- src/Plugin/__Tests/StellaOps.Plugin.Sandbox.Tests/ResourceLimiterTests.cs (208 lines)
- src/Plugin/__Tests/StellaOps.Plugin.Sandbox.Tests/SandboxConfigurationTests.cs (200 lines)
- src/Plugin/__Tests/StellaOps.Plugin.Sandbox.Tests/SandboxFactoryTests.cs (163 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: 4
- Files with issues: 4
- See docs/implplan/audits/csproj-standards/file-audit.csv for full per-file status.
| File | Issues | Fix guidance |
| --- | --- | --- |
| src/Plugin/__Tests/StellaOps.Plugin.Sandbox.Tests/FilesystemPolicyTests.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/__Tests/StellaOps.Plugin.Sandbox.Tests/ResourceLimiterTests.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/__Tests/StellaOps.Plugin.Sandbox.Tests/SandboxConfigurationTests.cs | FileLength>100 | Split file to stay <= 100 lines. |
| src/Plugin/__Tests/StellaOps.Plugin.Sandbox.Tests/SandboxFactoryTests.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,66 @@
# Audit - StellaOps.Plugin.Sdk.Tests
## Project
- Path: src/Plugin/__Tests/StellaOps.Plugin.Sdk.Tests/StellaOps.Plugin.Sdk.Tests.csproj
- Module: Plugin
- 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/Plugin/__Tests/StellaOps.Plugin.Sdk.Tests/PluginInfoBuilderTests.cs (116 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/Plugin/__Tests/StellaOps.Plugin.Sdk.Tests/PluginInfoBuilderTests.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.