more features checks. setup improvements

This commit is contained in:
master
2026-02-13 02:04:55 +02:00
parent 9911b7d73c
commit 9ca2de05df
675 changed files with 37550 additions and 1826 deletions

View File

@@ -0,0 +1,43 @@
{
"type": "integration",
"capturedAtUtc": "2026-02-13T10:40:00Z",
"testCommand": "dotnet test src/Policy/__Tests/StellaOps.Policy.Engine.Tests/StellaOps.Policy.Engine.Tests.csproj --no-restore -v normal && dotnet test src/Policy/__Tests/StellaOps.Policy.Exceptions.Tests/StellaOps.Policy.Exceptions.Tests.csproj --no-restore -v normal",
"testFilter": "PolicyGateEvaluatorTests (override/justification), ExceptionAdapterTests (audit trail), CveAwareReleasePolicyGatesDeepTests (DriftGate override), PostgresExceptionApplicationRepositoryTests",
"testsRun": 1361,
"testsPassed": 1361,
"testsFailed": 0,
"targetedTestMethods": [
"PolicyGateEvaluatorTests.NotAffected_WithSU_AllowsWithWarning_WhenJustificationProvided",
"PolicyGateEvaluatorTests.NotAffected_WithSU_Blocks_WhenNoJustification",
"CveAwareReleasePolicyGatesDeepTests.DriftGate_KevReachable_Blocks",
"CveAwareReleasePolicyGatesDeepTests.DriftGate_KevButNoNewReachable_Passes",
"ExceptionAdapterTests.LoadExceptionsAsync_MapsExceptionTypeAndReasonToEffect",
"ExceptionAdapterTests.LoadExceptionsAsync_BuildsMetadataCorrectly",
"ExceptionAdapterTests.LoadExceptionsAsync_UsesCacheOnSecondCall",
"PostgresExceptionApplicationRepositoryTests.RecordAsync_ShouldPersist",
"PostgresExceptionApplicationRepositoryTests.GetByExceptionIdAsync_ReturnsMatches",
"PostgresExceptionApplicationRepositoryTests.GetByEvaluationRunIdAsync_ReturnsMatches",
"PostgresExceptionApplicationRepositoryTests.CountAsync_WithFilter_ReturnsFiltered"
],
"behaviorVerified": [
"PolicyGateEvaluator override mechanism: justification required for gate bypass, empty justification blocks override",
"Gate result PassWithNote for approved bypasses with full audit trail (gate name, decision, justification)",
"ExceptionApplication audit record: ExceptionId, FindingId, OriginalStatus, AppliedStatus, EffectName, EffectType, EvaluationRunId, PolicyBundleDigest, AppliedAt, Metadata (arbitrary context including IP, actor, CI pipeline)",
"IExceptionApplicationRepository: RecordAsync (single), RecordBatchAsync (bulk COPY BINARY), query by ExceptionId/FindingId/EvaluationRunId/TimeRange",
"GetStatisticsAsync: total applications, unique exceptions/findings/vulnerabilities, breakdowns by effect type and status",
"ExceptionAdapter metadata enrichment: exception.type, exception.reason, exception.owner, exception.requester, exception.rationale, exception.ticketRef, exception.evidenceRefs, exception.compensatingControls",
"VerdictAttestationService: DSSE-signed attestations for all verdict decisions including bypasses",
"DriftGateEvaluator: override mechanism with justification length requirement, gates disabled bypass"
],
"assertionTypes": [
"value equality (Assert.Equal for PolicyGateDecisionType)",
"null checks (Assert.Null/NotNull for BlockedBy)",
"string containment (Assert.Contains for block reasons)",
"collection assertions (Should().HaveCount, Should().AllSatisfy)",
"mock verification (Times.Once for cache behavior)"
],
"newTestsWritten": [],
"bugsFixed": [],
"rawOutput": "Engine.Tests: Passed! - Failed: 0, Passed: 1278, Skipped: 0, Total: 1278, Duration: 6s 015ms; Exceptions.Tests: Passed! - Failed: 0, Passed: 83, Skipped: 0, Total: 83, Duration: 357ms",
"verdict": "pass"
}