Fix build and code structure improvements. New but essential UI functionality. CI improvements. Documentation improvements. AI module improvements.
This commit is contained in:
71
docs/modules/symbols/architecture.md
Normal file
71
docs/modules/symbols/architecture.md
Normal file
@@ -0,0 +1,71 @@
|
||||
# component_architecture_symbols.md - **Stella Ops Symbols** (2025Q4)
|
||||
|
||||
> Symbol resolution and debug information management.
|
||||
|
||||
> **Scope.** Library and service architecture for **Symbols**: managing debug symbols, build IDs, and symbol-to-package mappings for reachability analysis.
|
||||
|
||||
---
|
||||
|
||||
## 0) Mission & boundaries
|
||||
|
||||
**Mission.** Provide **symbol resolution infrastructure** for native binary analysis. Map symbols to packages, manage debug information, and support stripped binary analysis.
|
||||
|
||||
**Boundaries.**
|
||||
|
||||
* Symbols **resolves and maps** symbols; execution is handled by Scanner.
|
||||
* Debug symbols are **optional**; stripped binaries use heuristics.
|
||||
* Supports **offline symbol stores** for air-gapped operation.
|
||||
|
||||
---
|
||||
|
||||
## 1) Solution & project layout
|
||||
|
||||
```
|
||||
src/Symbols/
|
||||
├─ StellaOps.Symbols/ # Core symbol resolution
|
||||
│ ├─ Services/
|
||||
│ │ ├─ ISymbolResolver.cs
|
||||
│ │ └─ BuildIdResolver.cs
|
||||
│ └─ Models/
|
||||
│ ├─ SymbolInfo.cs
|
||||
│ └─ BuildIdMapping.cs
|
||||
│
|
||||
└─ Integration with Scanner:
|
||||
└─ src/Scanner/__Libraries/StellaOps.Scanner.Symbols.Native/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 2) Contracts & data model
|
||||
|
||||
### 2.1 Symbol Info
|
||||
|
||||
```json
|
||||
{
|
||||
"symbolId": "sha256:abc123",
|
||||
"name": "_ZN3foo3barEv",
|
||||
"demangledName": "foo::bar()",
|
||||
"sourceFile": "src/foo.cpp",
|
||||
"lineNumber": 42,
|
||||
"buildId": "abc123def456",
|
||||
"packagePurl": "pkg:deb/debian/libfoo@1.2.3"
|
||||
}
|
||||
```
|
||||
|
||||
### 2.2 Build ID Mapping
|
||||
|
||||
```json
|
||||
{
|
||||
"buildId": "abc123def456",
|
||||
"path": "/usr/lib/libfoo.so.1",
|
||||
"packagePurl": "pkg:deb/debian/libfoo@1.2.3",
|
||||
"debugPath": "/usr/lib/debug/.build-id/ab/c123def456.debug"
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Related Documentation
|
||||
|
||||
* Scanner native analysis: `../scanner/architecture.md`
|
||||
* Reachability: `../../reachability/`
|
||||
Reference in New Issue
Block a user