documentation cleanse, sprints work and planning. remaining non EF DAL migration to EF

This commit is contained in:
master
2026-02-25 01:24:07 +02:00
parent b07d27772e
commit 4db038123b
9090 changed files with 4836 additions and 2909 deletions

View File

@@ -0,0 +1,40 @@
{
"type": "integration",
"capturedAtUtc": "2026-02-13T11:20:00Z",
"testCommand": "dotnet test src/Policy/__Tests/StellaOps.Policy.Tests/StellaOps.Policy.Tests.csproj --no-restore -v normal && dotnet test src/Policy/__Tests/StellaOps.Policy.Engine.Tests/StellaOps.Policy.Engine.Tests.csproj --no-restore -v normal",
"testFilter": "TrustLatticeEngineIntegrationTests, K4LatticeTests, ClaimScoreMergerTests, KnowledgeSnapshotManifest tests, PolicyGateEvaluatorTests (Evidence gate), VerdictAttestationIntegrationTests covering trust lattice, K4 algebra, claim merging, proof bundles, policy gate integration",
"testsRun": 2059,
"testsPassed": 2059,
"testsFailed": 0,
"targetedTestMethods": [
"TrustLatticeEngineIntegrationTests (trust lattice evaluation pipeline, proof bundle generation)",
"K4LatticeTests (Join commutativity, Meet commutativity, LessOrEqual, Negate involutive, FromSupport)",
"ClaimScoreMergerTests (highest-score selection, conflict penalty 0.25, 1000-iteration determinism)",
"ClaimScoreMergerPropertyTests (FsCheck property-based)",
"SnapshotBuilderTests (PolicyBundleRef with digest, content-addressed KnowledgeSnapshotManifest)",
"PolicyGateEvaluatorTests (EvidenceCompleteness gate checks proof bundle)",
"VerdictAttestationIntegrationTests (DSSE-signed attestations referencing proof bundles)"
],
"behaviorVerified": [
"TrustLatticeEngine: pipeline VEX normalization -> claim ingestion -> K4 evaluation -> disposition selection -> proof bundle generation",
"TrustLatticeResult: proof bundle containing all claims, evidence, and K4 lattice evaluations per subject",
"Claims built via fluent ClaimBuilder: Assert, Present, Applies, Reachable, Mitigated, Fixed, Misattributed",
"K4Lattice: four-valued logic (Unknown=0, True=1, False=2, Conflict=3), algebraic operations Join (T join F = Conflict), Meet (T meet F = Unknown), Negate, LessOrEqual, FromSupport",
"ClaimScoreMerger: deterministic merge with conflict penalization (0.25 penalty), ordering by adjusted score -> specificity -> original score -> source ID -> index, MergeResult with winning claim, conflicts, RequiresReplayProof flag",
"KnowledgeSnapshotManifest: content-addressed bundle capturing all policy evaluation inputs, PolicyBundleRef (PolicyId, Digest, Uri), ScoringRulesRef, TrustBundleRef",
"PolicyGateEvaluator EvidenceCompleteness gate: uses proof bundles for evidence completeness verification",
"VerdictAttestationService: DSSE-signed attestations referencing proof bundles with bundle digest",
"Proof bundle includes: claims with scores, VEX sources, reachability signals, K4 lattice values per subject (CVE + component)"
],
"assertionTypes": [
"value equality for K4 lattice values and claim scores",
"collection assertions for proof bundle contents",
"determinism verification (1000-iteration idempotency for claim merging)",
"FsCheck property-based tests for lattice algebra",
"null checks and string containment for attestation references"
],
"newTestsWritten": [],
"bugsFixed": [],
"rawOutput": "Policy.Tests: Passed! - Failed: 0, Passed: 781, Skipped: 0, Total: 781, Duration: 3s 814ms; Engine.Tests: Passed! - Failed: 0, Passed: 1278, Skipped: 0, Total: 1278, Duration: 8s 167ms",
"verdict": "pass"
}

View File

@@ -0,0 +1,96 @@
{
"type": "integration",
"capturedAtUtc": "2026-02-13T00:32:00Z",
"testCommand": "dotnet test src/Policy/__Tests/StellaOps.Policy.Tests/StellaOps.Policy.Tests.csproj --no-restore -v normal && dotnet test src/Policy/__Tests/StellaOps.Policy.Engine.Tests/StellaOps.Policy.Engine.Tests.csproj --no-restore -v normal",
"testFilter": "FullyQualifiedName~TrustLattice|FullyQualifiedName~ClaimScoreMerger|FullyQualifiedName~K4Lattice|FullyQualifiedName~PolicyBundle|FullyQualifiedName~PolicyGate (Policy.Tests + Engine.Tests)",
"testsRun": 2059,
"testsPassed": 2059,
"testsFailed": 0,
"targetedTestMethods": [
"K4LatticeTests.Join_UnknownWithUnknown_ReturnsUnknown",
"K4LatticeTests.Join_TrueWithFalse_ReturnsConflict",
"K4LatticeTests.Join_ConflictWithAny_ReturnsConflict",
"K4LatticeTests.Join_IsCommutative",
"K4LatticeTests.Join_IsAssociative",
"K4LatticeTests.JoinAll_MultipleValues_ReturnsJoin",
"K4LatticeTests.Meet_TrueWithFalse_ReturnsUnknown",
"K4LatticeTests.Meet_IsCommutative",
"K4LatticeTests.LessOrEqual_IsReflexive",
"K4LatticeTests.LessOrEqual_IsTransitive",
"K4LatticeTests.FromSupport_BothSupports_ReturnsConflict",
"K4LatticeTests.Negate_IsInvolutive",
"ClaimScoreMergerTests.Merge_SelectsHighestScore",
"ClaimScoreMergerTests.Merge_AppliesConflictPenalty",
"ClaimScoreMergerTests.Merge_IsDeterministic",
"ClaimScoreMergerPropertyTests.Merge_EmptyClaims_ReturnsUnderInvestigation",
"TrustLatticeEngineIntegrationTests.VendorVsScannerConflict_DetectsConflict",
"TrustLatticeEngineIntegrationTests.VendorVsScannerConflict_ProofBundleCapturesEvidence",
"TrustLatticeEngineIntegrationTests.AllSourcesAgree_Exploitable_Disposition",
"TrustLatticeEngineIntegrationTests.Fixed_Overrides_Exploitability",
"TrustLatticeEngineIntegrationTests.Misattributed_Produces_FalsePositive",
"TrustLatticeEngineIntegrationTests.NotReachable_Produces_NotAffected",
"TrustLatticeEngineIntegrationTests.Mitigated_Produces_NotAffected",
"TrustLatticeEngineIntegrationTests.InsufficientData_Produces_InTriage",
"TrustLatticeEngineIntegrationTests.MultipleSubjects_EvaluatesAll",
"TrustLatticeEngineIntegrationTests.ProofBundle_ContentAddressable",
"TrustLatticeEngineIntegrationTests.DecisionTrace_ContainsAllEvaluatedRules",
"TrustLatticeEngineIntegrationTests.DecisionTrace_FirstMatchWins",
"TrustLatticeEngineIntegrationTests.Stats_ReflectStoreState",
"TrustLatticeEngineIntegrationTests.Clear_ResetsEngine",
"LatticeStoreTests.IngestClaim_ComputesContentAddressableId",
"LatticeStoreTests.ConflictingAssertions_ReturnsConflict",
"LatticeStoreTests.GetConflictingSubjects_ReturnsConflicts",
"LatticeStoreTests.SubjectState_ToSnapshot_CapturesAllAtoms",
"VexNormalizerTests.CycloneDx_Affected_SetsPresent_And_Applies_True",
"VexNormalizerTests.OpenVex_Affected_SetsPresent_And_Applies_True",
"VexNormalizerTests.Csaf_KnownAffected_SetsPresent_And_Applies_True",
"PolicyGatesTests.MinimumConfidenceGate_FailsBelowThreshold",
"PolicyGatesTests.UnknownsBudgetGate_FailsWhenBudgetExceeded",
"PolicyGatesTests.SourceQuotaGate_FailsWithoutCorroboration",
"PolicyGatesTests.ReachabilityRequirementGate_FailsWithoutProof",
"PolicyGateRegistryTests.Registry_StopsOnFirstFailure",
"PolicyGateRegistryTests.Registry_CollectsAllWhenConfigured",
"PolicyBundleServiceTests.CompileAndStoreAsync_SucceedsAndStoresBundle",
"PolicyBundleServiceTests.CompileAndStoreAsync_FailsWithBadSyntax",
"PolicyBundleServiceTests.CompileAndStoreAsync_ReturnsAocMetadata",
"PolicyBundleServiceTests.CompileAndStoreAsync_IncludesProvenanceWhenProvided",
"PolicyBundleServiceTests.CompileAndStoreAsync_NullAocMetadataOnFailure",
"PolicyBundleServiceTests.CompileAndStoreAsync_SourceDigestIsDeterministic"
],
"behaviorVerified": [
"K4 four-valued logic algebra: Join (T join F = Conflict), Meet (T meet F = Unknown), Negate, LessOrEqual",
"K4 algebraic properties: commutativity, associativity, reflexivity, transitivity, involutive negation",
"FromSupport converts evidence support to K4 value",
"ClaimScoreMerger selects highest score with deterministic merge ordering",
"Conflict penalty of 0.25 applied when conflicting claims exist",
"1000-iteration determinism test for ClaimScoreMerger",
"Empty claims returns UnderInvestigation disposition",
"TrustLatticeEngine pipeline: VEX normalization -> claim ingestion -> K4 evaluation -> disposition selection -> proof bundle generation",
"Vendor vs Scanner conflict detection with K4 Conflict value",
"Proof bundle captures all evidence including claims with scores",
"Content-addressable proof bundles",
"Multiple subjects evaluated in single lattice engine call",
"Decision trace contains all evaluated rules with first-match-wins semantics",
"VEX normalization for CycloneDX, OpenVEX, and CSAF formats",
"LatticeStore content-addressable claim IDs and conflict tracking",
"PolicyGate evaluation: MinimumConfidence, UnknownsBudget, SourceQuota, ReachabilityRequirement",
"PolicyGateRegistry stop-on-first-failure and collect-all modes",
"PolicyBundleService compile and store with deterministic source digest",
"Provenance metadata included in policy bundles"
],
"assertionTypes": [
"algebraic-property-verification",
"determinism-verification",
"content-addressability",
"pipeline-end-to-end",
"conflict-detection",
"vex-normalization",
"gate-evaluation",
"proof-bundle-completeness",
"disposition-selection"
],
"newTestsWritten": [],
"bugsFixed": [],
"rawOutput": "Policy.Tests: Passed! - Failed: 0, Passed: 781, Skipped: 0, Total: 781, Duration: 3s 450ms; Engine.Tests: Passed! - Failed: 0, Passed: 1278, Skipped: 0, Total: 1278, Duration: 7s 799ms",
"verdict": "pass"
}