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,44 @@
{
"type": "integration",
"capturedAtUtc": "2026-02-13T10:30:00Z",
"testCommand": "dotnet test src/Policy/__Tests/StellaOps.Policy.Explainability.Tests/StellaOps.Policy.Explainability.Tests.csproj --no-restore -v normal",
"testFilter": "VerdictRationaleRendererTests covering 4-line template rendering, content-addressed RationaleId, multi-format output, reachability details, attestation references",
"testsRun": 35,
"testsPassed": 35,
"testsFailed": 0,
"targetedTestMethods": [
"VerdictRationaleRendererTests.Render_Should_CreateCompleteRationale",
"VerdictRationaleRendererTests.Render_Should_BeContentAddressed",
"VerdictRationaleRendererTests.RenderPlainText_Should_ProduceFourLineFormat",
"VerdictRationaleRendererTests.RenderMarkdown_Should_IncludeHeaders",
"VerdictRationaleRendererTests.RenderJson_Should_ProduceValidJson",
"VerdictRationaleRendererTests.Evidence_Should_IncludeReachabilityDetails",
"VerdictRationaleRendererTests.Evidence_Should_HandleMissingReachability",
"VerdictRationaleRendererTests.Attestations_Should_HandleNoAttestations",
"VerdictRationaleRendererTests.Decision_Should_IncludeMitigation"
],
"behaviorVerified": [
"VerdictRationaleRenderer: 4-line template with Evidence, PolicyClause, Attestations, Decision sections",
"Content-addressed RationaleId: rat:sha256:{hash} computed via canonical JSON (RFC 8785) + SHA256, stable across identical inputs",
"RationaleEvidence: includes CVE, ComponentIdentity (PURL, name, version, ecosystem), ReachabilityDetail (VulnerableFunction, EntryPoint, PathSummary)",
"Evidence FormattedText includes vulnerable function symbol and entry point when reachability present; omits reachability details when null",
"RationaleAttestations: PathWitness (reachability proof ref), VexStatements (list), Provenance ref, each with Id/Type/Digest/Summary",
"Attestations FormattedText: 'No attestations available.' when no attestation refs provided",
"RationalePolicyClause: ClauseId, RuleDescription, Conditions list, FormattedText with policy clause rendering",
"RationaleDecision: Verdict, Score, Recommendation, MitigationGuidance (Action + Details)",
"RationaleInputDigests: VerdictDigest, PolicyDigest, EvidenceDigest for full proof chain",
"Multi-format output: RenderPlainText (4 lines), RenderMarkdown (## headers with rationale ID), RenderJson (canonical JSON with snake_case properties)",
"VerdictRationale model: SchemaVersion 1.0, VerdictReference (AttestationId, ArtifactDigest, PolicyId, Cve, ComponentPurl)"
],
"assertionTypes": [
"value equality (Should().Be for CVE, ClauseId, Verdict)",
"string containment (Should().Contain for formatted text sections)",
"prefix checks (Should().StartWith for rat:sha256:)",
"collection assertions (Should().HaveCount(4) for plain text lines)",
"null checks (Should().NotBeNull, Should().NotBeNullOrEmpty)"
],
"newTestsWritten": [],
"bugsFixed": [],
"rawOutput": "Explainability.Tests: Passed! - Failed: 0, Passed: 35, Skipped: 0, Total: 35, Duration: 327ms",
"verdict": "pass"
}