41 lines
3.1 KiB
Markdown
41 lines
3.1 KiB
Markdown
# Triage database schema and API endpoints
|
|
|
|
## Module
|
|
Scanner
|
|
|
|
## Status
|
|
IMPLEMENTED
|
|
|
|
## Description
|
|
PostgreSQL triage schema with migration, DbContext, and tested API endpoints for triage status management.
|
|
|
|
## Implementation Details
|
|
- **Database Schema**:
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Triage/TriageDbContext.cs` - `TriageDbContext` EF Core database context defining the triage schema with migrations
|
|
- **Entity Models**:
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Triage/Entities/TriageFinding.cs` - `TriageFinding` entity representing a vulnerability finding in triage
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Triage/Entities/TriageDecision.cs` - `TriageDecision` entity for triage decision records
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Triage/Entities/TriageEvidenceArtifact.cs` - `TriageEvidenceArtifact` entity linking evidence to triage decisions
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Triage/Entities/TriageScan.cs` - `TriageScan` entity for scan metadata
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Triage/Entities/TriageSnapshot.cs` - `TriageSnapshot` entity for point-in-time triage state
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Triage/Entities/TriageRiskResult.cs` - `TriageRiskResult` entity for risk assessment results
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Triage/Entities/TriageReachabilityResult.cs` - `TriageReachabilityResult` entity for reachability analysis results
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Triage/Entities/TriagePolicyDecision.cs` - `TriagePolicyDecision` entity for policy evaluation results
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Triage/Entities/TriageEnums.cs` - Triage status, decision, and lane enumerations
|
|
- **API Endpoints**:
|
|
- `src/Scanner/StellaOps.Scanner.WebService/Services/TriageStatusService.cs` - `TriageStatusService` managing triage workflow state transitions
|
|
- `src/Scanner/StellaOps.Scanner.WebService/Controllers/TriageController.cs` - `TriageController` REST API for triage operations
|
|
- `src/Scanner/StellaOps.Scanner.WebService/Contracts/TriageContracts.cs` - API contracts for triage endpoints
|
|
- **Tests**:
|
|
- `src/Scanner/__Tests/StellaOps.Scanner.Triage.Tests/TriageSchemaIntegrationTests.cs` - Schema migration tests
|
|
- `src/Scanner/__Tests/StellaOps.Scanner.Triage.Tests/TriageQueryPerformanceTests.cs` - Query performance tests
|
|
- `src/Scanner/__Tests/StellaOps.Scanner.WebService.Tests/TriageStatusEndpointsTests.cs` - API endpoint tests
|
|
|
|
## E2E Test Plan
|
|
- [ ] Run database migration and verify the triage schema is created with all expected tables and indexes
|
|
- [ ] Create a triage finding via the API and verify it persists with correct status and metadata
|
|
- [ ] Transition a finding through triage states (New -> In Review -> Accepted/Rejected) and verify state transitions are validated
|
|
- [ ] Query triage findings with filters (status, severity, scan ID) and verify correct results with acceptable query performance
|
|
- [ ] Verify triage snapshots capture point-in-time state for audit purposes
|
|
- [ ] Verify policy decisions and reachability results are correctly linked to triage findings
|