Releases: ctrl-escp/obfuscation-detector
Releases · ctrl-escp/obfuscation-detector
v3.0.0
Version 3 is a major update focused on making detections more transparent, deterministic, and easier to consume from both the API and CLI.
Some obfuscation patterns are more inclusive than others, which means a single input can legitimately match multiple detectors. Version 3 makes that explicit:
Highlights
- Added three detection modes:
- detectObfuscation(code) for raw detections
- detectObfuscationReduced(code) for reduced detections with lower-priority matches suppressed
- detectObfuscationDetailed(code) for full detection metadata
- Reworked detector output around prioritizeOver / suppressedBy relationships so overlapping detections are handled explicitly instead of relying on “best match” behavior
- Updated the CLI with new flags:
- --reduced / -r
- --detailed / -d
- --json / -j
- Added stronger validation for detector definitions, including priority graph checks and order-independent reduction behavior
- Expanded test coverage for raw, reduced, and detailed output paths
- Upgraded flast to 3.0.0
Breaking Changes
- The old "best match" behavior has been removed
- detectObfuscation() now returns all raw matches instead of stopping after the first match
- The CLI no longer supports --bestMatch / -b
Raw mode returns every positive detection
Reduced mode removes detections suppressed by more inclusive matches
Detailed mode exposes the priority metadata so consumers can understand exactly why a result was kept or suppressed**