save checkpoint
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
# Container Layout Discovery Contract
|
||||
|
||||
## Module
|
||||
Scanner
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Standardized contract for discovering and mapping container filesystem layouts, enabling analyzers to locate language-specific artifacts across different container image structures.
|
||||
|
||||
## Implementation Details
|
||||
- **Root File System Abstraction**:
|
||||
- `src/Scanner/__Libraries/StellaOps.Scanner.EntryTrace/FileSystem/IRootFileSystem.cs` - Interface for abstract root filesystem access
|
||||
- `src/Scanner/__Libraries/StellaOps.Scanner.EntryTrace/FileSystem/DirectoryRootFileSystem.cs` - Directory-backed root filesystem implementation
|
||||
- `src/Scanner/__Libraries/StellaOps.Scanner.EntryTrace/FileSystem/LayeredRootFileSystem.cs` - Layered (OCI) root filesystem implementation
|
||||
- **OCI Image Context**:
|
||||
- `src/Scanner/__Libraries/StellaOps.Scanner.EntryTrace/Oci/OciImageConfig.cs` - OCI image config model for container layout discovery
|
||||
- `src/Scanner/__Libraries/StellaOps.Scanner.EntryTrace/EntryTraceImageContextFactory.cs` - Creates image context for entrypoint analysis
|
||||
- **Entry Trace Analyzer**:
|
||||
- `src/Scanner/__Libraries/StellaOps.Scanner.EntryTrace/IEntryTraceAnalyzer.cs` - Interface for entry trace analysis
|
||||
- `src/Scanner/__Libraries/StellaOps.Scanner.EntryTrace/EntryTraceAnalyzer.cs` - Main analyzer discovering container layout and locating language-specific artifacts
|
||||
- `src/Scanner/__Libraries/StellaOps.Scanner.EntryTrace/EntryTraceContext.cs` - Context model with discovered layout info
|
||||
- `src/Scanner/__Libraries/StellaOps.Scanner.EntryTrace/EntryTraceTypes.cs` - Type definitions for discovered artifacts
|
||||
- **Entrypoint Specification**:
|
||||
- `src/Scanner/__Libraries/StellaOps.Scanner.EntryTrace/EntrypointSpecification.cs` - Specifies expected entrypoints per container layout
|
||||
- **DI**: `src/Scanner/__Libraries/StellaOps.Scanner.EntryTrace/ServiceCollectionExtensions.cs`
|
||||
|
||||
## E2E Test Plan
|
||||
- [ ] Scan a container image and verify the `EntryTraceAnalyzer` discovers the filesystem layout (root paths, language directories)
|
||||
- [ ] Verify `LayeredRootFileSystem` correctly merges multiple OCI layers into a unified filesystem view
|
||||
- [ ] Verify language-specific artifacts are located across different base images (Alpine, Debian, Ubuntu, distroless)
|
||||
- [ ] Verify the OCI image config is parsed to determine CMD/ENTRYPOINT for entrypoint analysis
|
||||
- [ ] Verify the layout discovery works for multi-stage build images with non-standard directory structures
|
||||
|
||||
---
|
||||
|
||||
## Verification
|
||||
|
||||
| Check | Result |
|
||||
|-------|--------|
|
||||
| Tier 0 - Source files exist | PASS |
|
||||
| Tier 1 - Build + code review | PASS |
|
||||
| Tier 2 - Integration tests | PASS |
|
||||
| Verified | 2026-02-13T18:10:00Z |
|
||||
Reference in New Issue
Block a user