Status: IN
In `_scan_segment`, a CRC mismatch or short read stops scanning the entire segment; records after the corrupt point are silently lost from the index even if they are individually valid.
Source: entries/2026/05/28/log-structured-hash-table-bitcask-_scan_segment.md
expected_crc = zlib.crc32(payload) & 0xFFFFFFFF
if crc != expected_crc:
raise CorruptionError(f"CRC mismatch")
# caller breaks on CorruptionError, losing remaining records