1.9 KiB
1.9 KiB
component_architecture_unknowns.md - Stella Ops Unknowns (2025Q4)
Unknown component and symbol tracking registry.
Scope. Library architecture for Unknowns: tracking unresolved components, symbols, and mappings that Scanner and other analyzers cannot definitively identify.
0) Mission & boundaries
Mission. Provide a structured registry for tracking unknown components, unresolved symbols, and incomplete mappings. Enable visibility into coverage gaps and guide future enhancement priorities.
Boundaries.
- Unknowns is a library layer consumed by Scanner and Signals.
- Unknowns does not guess identities. It records what cannot be determined.
- All unknowns are categorized for actionability.
1) Solution & project layout
src/Unknowns/
├─ __Libraries/
│ ├─ StellaOps.Unknowns.Core/ # Unknown models, categorization
│ ├─ StellaOps.Unknowns.Persistence/ # Storage abstractions
│ └─ StellaOps.Unknowns.Persistence.EfCore/
│
└─ __Tests/
├─ StellaOps.Unknowns.Core.Tests/
└─ StellaOps.Unknowns.Persistence.Tests/
2) Contracts & data model
2.1 Unknown Record
{
"unknownId": "unk-2025-01-15-abc123",
"category": "symbol_unmapped",
"context": {
"scanId": "scan-xyz",
"binaryPath": "/usr/lib/libfoo.so",
"symbolName": "_ZN3foo3barEv"
},
"reason": "No PURL mapping available",
"firstSeen": "2025-01-15T10:30:00Z",
"occurrences": 42
}
2.2 Categories
| Category | Description |
|---|---|
component_unidentified |
Binary without package mapping |
symbol_unmapped |
Symbol without PURL resolution |
version_ambiguous |
Multiple version candidates |
purl_invalid |
Malformed package URL |
Related Documentation
- Scanner:
../scanner/architecture.md - Signals:
../signals/architecture.md