//! Regression for a fuzz-found allocation-bomb crash in the `render` campaign.
//!
//! The `render` fuzz target opens arbitrary bytes as a database and carves every
//! deleted record. A crafted table-leaf cell whose payload spills onto an
//! overflow chain can declare a multi-exabyte `payload_len` varint; the spill
//! branch of `decode_leaf_cell` reached `Vec::with_capacity(total)` with that
//! untrusted length and aborted the process with
//! "memory allocation of 5955248086788122959 bytes failed"
//! (`core/src/lib.rs`, `decode_leaf_cell`).
//!
//! The fix caps the pre-allocation against what the file can physically supply
//! (`local + per_page * page_bound`), rejecting an impossible claim with
//! `MalformedOverflow` before the allocation. This test replays the exact fuzz
//! crash input through the same `open → carve` path and asserts it returns
//! cleanly instead of aborting. Crash input: `fuzz/artifacts/render/`
//! `crash-ebdd2ca632cdce51e172def5dd1414e4da57383b`.
use Database;
use carve_all_deleted_records;
const CRASH: & = include_bytes!;