24 lines
1.2 KiB
Markdown
24 lines
1.2 KiB
Markdown
# SBOM Lineage Edge Persistence (PostgreSQL)
|
|
|
|
## Module
|
|
SbomService
|
|
|
|
## Status
|
|
IMPLEMENTED
|
|
|
|
## Description
|
|
PostgreSQL-backed persistence for SBOM lineage graph edges with ISbomLineageEdgeRepository interface, sbom_lineage_edges table schema, and in-memory test implementation. Stores parent-child relationships between SBOM versions across image rebuilds.
|
|
|
|
## Implementation Details
|
|
- **Lineage library**: `src/SbomService/__Libraries/StellaOps.SbomService.Lineage/` -- core lineage graph logic
|
|
- **Migrations**: `src/SbomService/__Libraries/StellaOps.SbomService.Lineage/Persistence/Migrations/00001_InitialSchema.sql` -- sbom_lineage_edges table and schema
|
|
- **VEX delta repository**: `src/SbomService/__Libraries/StellaOps.SbomService.Lineage/Repositories/VexDeltaRepository.cs` -- VEX delta tracking per edge
|
|
- **SBOM models**: `src/SbomService/StellaOps.SbomService/Models/SbomLedgerModels.cs`, `SbomVersionEvents.cs`, `SbomAssetEvents.cs`
|
|
- **Source**: SPRINT_20251228_005_BE_sbom_lineage_graph_i.md
|
|
|
|
## E2E Test Plan
|
|
- [ ] Verify edge persistence stores parent-child relationships correctly
|
|
- [ ] Test edge retrieval for lineage graph traversal
|
|
- [ ] Verify migration creates expected schema
|
|
- [ ] Test in-memory implementation for unit testing
|