Files
git.stella-ops.org/docs/features/unchecked/sbomservice/sbom-service-lineage-projection-api.md

2.0 KiB

SBOM Service Lineage Projection API

Module

SbomService

Status

IMPLEMENTED

Description

REST API for querying SBOM lineage projections including component lookup, version history, and dependency graph traversal with LNM v1 schema support.

Implementation Details

  • Projection models: src/SbomService/StellaOps.SbomService/Models/SbomProjectionModels.cs -- SbomProjectionResult record with SnapshotId, TenantId, Projection (JsonElement), ProjectionHash, SchemaVersion
  • Path models: src/SbomService/StellaOps.SbomService/Models/SbomPathModels.cs -- graph path traversal models for lineage queries
  • Projection repository interface: src/SbomService/StellaOps.SbomService/Repositories/IProjectionRepository.cs -- projection storage contract
  • File projection repository: src/SbomService/StellaOps.SbomService/Repositories/FileProjectionRepository.cs -- file-backed projection storage
  • Postgres projection repository: src/SbomService/__Libraries/StellaOps.SbomService.Persistence/Postgres/Repositories/PostgresProjectionRepository.cs -- PostgreSQL-backed projection storage
  • Query service: src/SbomService/StellaOps.SbomService/Services/ISbomQueryService.cs, InMemorySbomQueryService.cs -- SBOM query with projection support
  • Lineage domain models: src/SbomService/__Libraries/StellaOps.SbomService.Lineage/Domain/LineageModels.cs -- lineage domain with projection relationships
  • Observability: src/SbomService/StellaOps.SbomService/Observability/SbomMetrics.cs -- projection query metrics
  • Tests: src/SbomService/StellaOps.SbomService.Tests/ProjectionEndpointTests.cs -- projection endpoint tests
  • Source: SPRINT_0142_0001_0001_sbomservice.md

E2E Test Plan

  • Verify projection API returns valid SbomProjectionResult with correct schema version
  • Test component lookup queries through projection API
  • Verify version history queries return ordered results
  • Test dependency graph traversal across lineage projections
  • Verify projection hash integrity for deterministic outputs