save progress

This commit is contained in:
StellaOps Bot
2026-01-03 00:47:24 +02:00
parent 3f197814c5
commit ca578801fd
319 changed files with 32478 additions and 2202 deletions

View File

@@ -0,0 +1,35 @@
# Disassembly Abstractions Charter
## Mission
Define the platform-agnostic disassembly interfaces and models for binary analysis. Enable multiple disassembly backends (Iced, B2R2) to be plugged in without changing consuming code.
## Responsibilities
- Maintain `IDisassemblyPlugin` interface defining disassembly capabilities
- Define `IDisassemblyService` for coordinated plugin selection and fallback
- Provide format-neutral models: `DisassembledInstruction`, `BinaryInfo`, `SymbolInfo`, `CodeRegion`
- Keep interfaces stable to minimize breaking changes for plugin implementations
- Ensure deterministic output contracts
## Key Paths
- `IDisassemblyPlugin.cs` - Plugin contract with capability reporting
- `IDisassemblyService.cs` - Service coordinating multiple plugins
- `Models/BinaryInfo.cs` - Binary metadata (format, architecture, ABI)
- `Models/DisassembledInstruction.cs` - Decoded instruction with operands
- `Models/SymbolInfo.cs` - Function/symbol metadata
- `Models/CpuArchitecture.cs` - Supported architecture enum
## Coordination
- Disassembly plugin implementers (Iced, B2R2)
- Normalization pipeline consumers
- Scanner team for binary vulnerability analysis
## Required Reading
- `docs/modules/binaryindex/architecture.md`
- `docs/implplan/SPRINT_20260102_001_BE_binary_delta_signatures.md`
## Working Agreement
1. Update task status to `DOING`/`DONE` in sprint file when starting/finishing work.
2. Review this charter and Required Reading before coding.
3. Keep models immutable and serialization-friendly.
4. Add capability flags to `IDisassemblyPlugin` rather than extending interface.
5. Document all public types with XML doc comments.