2.8 KiB
2.8 KiB
Evidence Locker with Deterministic Bundles
Module
EvidenceLocker
Status
IMPLEMENTED
Description
Full Evidence Locker module with snapshot services, timeline publishing, and infrastructure for deterministic evidence bundle management.
Implementation Details
- Modules:
src/EvidenceLocker/StellaOps.EvidenceLocker/StellaOps.EvidenceLocker.Infrastructure/,src/EvidenceLocker/StellaOps.EvidenceLocker/StellaOps.EvidenceLocker.Core/ - Key Classes:
EvidenceSnapshotService(src/EvidenceLocker/StellaOps.EvidenceLocker/StellaOps.EvidenceLocker.Infrastructure/Services/EvidenceSnapshotService.cs) - creates point-in-time snapshots of evidence stateEvidenceBundleBuilder(src/EvidenceLocker/StellaOps.EvidenceLocker/StellaOps.EvidenceLocker.Infrastructure/Builders/EvidenceBundleBuilder.cs) - builds deterministic evidence bundlesEvidenceBundleRepository(src/EvidenceLocker/StellaOps.EvidenceLocker/StellaOps.EvidenceLocker.Infrastructure/Repositories/EvidenceBundleRepository.cs) - persists and retrieves evidence bundlesTimelineIndexerEvidenceTimelinePublisher(src/EvidenceLocker/StellaOps.EvidenceLocker/StellaOps.EvidenceLocker.Infrastructure/Timeline/TimelineIndexerEvidenceTimelinePublisher.cs) - publishes evidence events to timeline for audit trailNullEvidenceTimelinePublisher(src/EvidenceLocker/StellaOps.EvidenceLocker/StellaOps.EvidenceLocker.Infrastructure/Timeline/NullEvidenceTimelinePublisher.cs) - no-op timeline publisher for testingEvidenceSnapshotModels(src/EvidenceLocker/StellaOps.EvidenceLocker/StellaOps.EvidenceLocker.Core/Domain/EvidenceSnapshotModels.cs) - snapshot data modelsEvidenceLockerOptions(src/EvidenceLocker/StellaOps.EvidenceLocker/StellaOps.EvidenceLocker.Core/Configuration/EvidenceLockerOptions.cs) - configuration options for evidence lockerEvidenceLockerMigrationRunner(src/EvidenceLocker/StellaOps.EvidenceLocker/StellaOps.EvidenceLocker.Infrastructure/Db/EvidenceLockerMigrationRunner.cs) - database migration runner
- Interfaces:
IEvidenceBundleBuilder,IEvidenceBundleRepository,IEvidenceTimelinePublisher - Source: Feature matrix scan
E2E Test Plan
- Create an evidence bundle via
EvidenceBundleBuilderand verifyEvidenceBundleRepositorypersists it with deterministic content-addressed ID - Create a snapshot via
EvidenceSnapshotServiceand verify it captures the current evidence state accurately - Verify
TimelineIndexerEvidenceTimelinePublisherpublishes evidence events to the timeline index - Verify deterministic output: building the same evidence inputs twice produces identical bundle content and ID
- Verify
EvidenceLockerOptionscorrectly configures storage backend, retention, and signing options - Verify
EvidenceLockerMigrationRunnerapplies database migrations on startup