# Performance corpus All document content is generated locally by `tests/generate_performance_corpus.py`. Individual file sizes, SHA-256 hashes and font provenance are recorded in `manifest.json`. The 500-page/500-chapter corpus is separate from the large raster stress workload. ## EPUB navigation destinations `standard-500.epub` contains 500 chapters, each with one h1 and twelve h2 headings. Its final section has `min-height:100vh`. This authored fixture style provides enough trailing room for all thirteen headings to have distinct scroll destinations, so the fixed benchmark can execute twelve forward and twelve backward moves without counting stationary end-clamped commands as physical navigation. The benchmark retains its original traversal span and requires every counted heading move to change the validated reading position. Only the EPUB `style.css` entry changed. Its chapter text, headings, images, spine and navigation document are unchanged. HTML, ZIP HTML and PDF fixtures are unchanged. | Fixture | Bytes | SHA-256 | Purpose | |---|---:|---|---| | `standard-500.epub` | 300640 | `c5816283075fe2915672cbb2daa33229d74eeffb11041ef4a1f927886cdd2aa6` | Fixed performance movement sequence with distinct terminal destinations | | `standard-500-clamped.epub` | 300618 | `d4136e2c7e5e67bc10e640589c34fc629e80e66edd2ab2bd25dda238c7a2314d` | Original short final section, retained byte-for-byte for end-clamping regressions and old result interpretation | The generator reproduces both files byte-for-byte. The original failing measurement is preserved in `tests/results/benchmark-xhtml/clamp-diagnostic/epub.json`: the twelfth heading command was acknowledged, but both before and after positions were `chapter-0.xhtml`, progression 1. The corresponding 125-operation failure is preserved in `tests/results/benchmark-xhtml/standard-clamped/epub.json`. Product handling of consecutive clamped headings is tested independently on unmodified short-tail XHTML and must not be inferred from performance on the extended-tail fixture.