Commit Graph
4 Commits
Author SHA1 Message Date
blacktop e209828c31 feat(diff): add cacheable task-based reports
Refactor diff jobs into task-owned renderers with persistent cache support, root-confined walkers, and quieter Mach-O/Firmware output.
2026-06-04 12:02:46 -06:00
blacktop fc41188d93 feat(diff): add sandbox profile diffing behind sandbox build tag 2026-05-03 12:44:18 -06:00
blacktop 652abdd7af feat: add OTA input mode support to ipsw diff
Introduces direct OTA file diffing without requiring pre-extraction.
Users can now pass `.ota`/`.aea` files directly to `ipsw diff` alongside
existing IPSW and directory input modes.

Key additions:
- `internal/diff/ota_inputs.go`: OTA-specific input handling including
  cryptex mounting, kernelcache extraction, firmware parsing, iBoot
  parsing, and feature flag collection from mounted volumes
- `inputModeOTA` enum variant in `directory_inputs.go`
- `--key-db`, `--key-val`, and `--insecure` flags on `diff` command for
  AEA-encrypted OTA decryption
- AEA key database lookup mirroring the `ota` command's key resolution
- Magic-byte-aware error handling: AEA/AA files propagate decryption
  errors while ambiguous ZIPs fail silently (not-an-OTA)
- Validation rejects partial/delta and RSR OTAs with actionable messages
- Comprehensive unit tests covering all new helpers
2026-04-13 20:32:10 -06:00
blacktop d09ca85093 feat(diff): support diffing patched OTA DMG directories and update documentation 2026-03-17 19:13:23 -06:00