29 lines
1.6 KiB
Markdown
29 lines
1.6 KiB
Markdown
# CLI IR Commands (stella ir lift/canon/fp/pipeline)
|
|
|
|
## Module
|
|
Cli
|
|
|
|
## Status
|
|
IMPLEMENTED
|
|
|
|
## Description
|
|
Standalone CLI command group for intermediate representation (IR) operations including `stella ir lift` (binary to IR lifting), `stella ir canon` (IR canonicalization), `stella ir fp` (fingerprint generation from IR), and `stella ir pipeline` (full lift-canon-fingerprint pipeline). While "Semantic Analysis Library" exists in known features, these CLI commands providing direct access to IR operations are a distinct user-facing capability.
|
|
|
|
## Implementation Details
|
|
- **Command Group**: `src/Cli/StellaOps.Cli/Commands/Ir/IrCommandGroup.cs` -- `IrCommandGroup` for IR operations
|
|
- **Commands**:
|
|
- `stella ir lift <binary>` -- lift a binary file to intermediate representation
|
|
- `stella ir canon <ir-file>` -- canonicalize an IR file for deterministic comparison
|
|
- `stella ir fp <ir-file>` -- generate fingerprint from IR
|
|
- `stella ir pipeline <binary>` -- run full lift -> canon -> fingerprint pipeline
|
|
- **Backend**: Uses semantic analysis library for IR operations
|
|
|
|
## E2E Test Plan
|
|
- [ ] Run `stella ir lift ./binary` and verify IR output generated
|
|
- [ ] Run `stella ir canon ./ir-file.json` and verify canonicalized IR output
|
|
- [ ] Run `stella ir fp ./ir-file.json` and verify fingerprint hash output
|
|
- [ ] Run `stella ir pipeline ./binary` and verify end-to-end pipeline produces fingerprint
|
|
- [ ] Verify pipeline output is deterministic (same binary produces same fingerprint)
|
|
- [ ] Verify `--format json` produces structured output
|
|
- [ ] Verify error handling for unsupported binary formats
|