1.9 KiB
1.9 KiB
Finding Evidence API Contracts (BoundaryProof, VexEvidence, ScoreExplanation)
Module
Scanner
Status
IMPLEMENTED
Description
Unified evidence API data contracts defining FindingEvidenceResponse, BoundaryProof (surface, exposure, auth, controls), VexEvidence (status, justification, source), and ScoreExplanation (additive risk score breakdown with contributions) as immutable record types with JSON serialization.
Implementation Details
- Evidence Contracts:
src/Scanner/StellaOps.Scanner.WebService/Contracts/FindingEvidenceContracts.cs-FindingEvidenceResponse,BoundaryProof,VexEvidence,ScoreExplanationas immutable record types
- Unified Evidence Contracts:
src/Scanner/StellaOps.Scanner.WebService/Contracts/UnifiedEvidenceContracts.cs- Unified evidence response contracts
- Controller:
src/Scanner/StellaOps.Scanner.WebService/Controllers/FindingsEvidenceController.cs-FindingsEvidenceControllerserving evidence data
- Evidence Service:
src/Scanner/StellaOps.Scanner.WebService/Services/IUnifiedEvidenceService.cs-IUnifiedEvidenceServiceinterfacesrc/Scanner/StellaOps.Scanner.WebService/Services/UnifiedEvidenceService.cs- Assembles unified evidence per finding
- SmartDiff Boundary Proof:
src/Scanner/__Libraries/StellaOps.Scanner.SmartDiff/Detection/BoundaryProof.cs- Boundary proof model
E2E Test Plan
- Query finding evidence via the FindingsEvidenceController and verify
FindingEvidenceResponseis returned - Verify
BoundaryProofincludes surface, exposure, auth, and controls data - Verify
VexEvidenceincludes status, justification, and source information - Verify
ScoreExplanationincludes additive risk score breakdown with individual contributions - Verify all contracts serialize as immutable JSON records
- Verify unified evidence endpoint aggregates all evidence types per finding