Introduce operation journaling to track how values are read from the
binary stream, enabling future write-back of edited fields.
New components:
- OperationJournal: Records read operations with stream offsets, sizes,
byte order, and original values during parsing
- ReverseEval: Analyzes expressions for invertibility (e.g., x+5 can be
reversed to compute the source field when editing the result)
- Recompiler: Infrastructure for recompiling modified values back to
binary format
Interpreter enhancements:
- Add runTypeInternalWithJournal() for journaled parsing
- Journal scalar reads, byte reads, strings, skip/seek operations
- Add deadrising_lzx() built-in for Dead Rising 2 LZX decompression
- Support _deadrising_lzx_stem context variable for nested archives
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>