semi implemented and features implemented save checkpoint

This commit is contained in:
master
2026-02-08 18:00:49 +02:00
parent 04360dff63
commit 1bf6bbf395
20895 changed files with 716795 additions and 64 deletions

View File

@@ -0,0 +1,31 @@
# Surface.FS File Manifest Store
## Module
Scanner
## Status
IMPLEMENTED
## Description
Persistent manifest store for scanner surface state, providing content-addressed caching of file system facets (layers, mounts, rootfs entries) with seal extraction for deterministic replay.
## Implementation Details
- **File Manifest Store**:
- `src/Scanner/__Libraries/StellaOps.Scanner.Surface.FS/FileSurfaceManifestStore.cs` - `FileSurfaceManifestStore` providing content-addressed storage for file system facets (layers, mounts, rootfs entries)
- **Seal Extraction**:
- `src/Scanner/__Libraries/StellaOps.Scanner.Surface.FS/FacetSealExtractor.cs` - `FacetSealExtractor` extracting deterministic seals from file system facets for replay verification
- `src/Scanner/__Libraries/StellaOps.Scanner.Surface.FS/FacetSealExtractionOptions.cs` - Options for seal extraction behavior
- **DI Registration**:
- `src/Scanner/__Libraries/StellaOps.Scanner.Surface.FS/ServiceCollectionExtensions.cs` - DI registration for surface FS services
- **Configuration**:
- `src/Scanner/StellaOps.Scanner.WebService/Options/SurfaceManifestStoreOptionsConfigurator.cs` - WebService-side configuration for manifest store
- **Tests**:
- `src/Scanner/__Tests/StellaOps.Scanner.Surface.FS.Tests/FileSurfaceManifestStoreTests.cs` - Manifest store tests
- `src/Scanner/__Tests/StellaOps.Scanner.WebService.Tests/SurfaceManifestStoreOptionsConfiguratorTests.cs` - Configuration tests
## E2E Test Plan
- [ ] Store a file system facet in `FileSurfaceManifestStore` and verify it is retrievable by its content-addressed key
- [ ] Verify content-addressed caching returns the same facet for identical content without re-storage
- [ ] Extract a seal from stored facets using `FacetSealExtractor` and verify it is deterministic (same facets produce identical seals)
- [ ] Verify the manifest store correctly handles layer, mount, and rootfs entry facets with correct metadata
- [ ] Verify seal extraction supports deterministic replay by reproducing the exact same seal from the same inputs