pdfRenderWorkerCacheMaxEntries top-level property
Maximum number of records the caching worker retains, regardless of weight.
The byte budget (pdfRenderWorkerCacheBudgetBytes) only bounds decoded image pixels, so image-free and vector-first records weigh zero and never trip it. Without a second bound they accumulate one (or more) per page for the whole life of the worker - unbounded in the page count, which is exactly the tab growth issue #283 measured on a long scroll. This caps the retained record count so a thousand-page scroll cannot pin a thousand transcripts; the window stays well above the on-screen plus preview-warm working set, so ordinary revisits still hit. Lower it once at startup on memory-constrained devices.
Implementation
int pdfRenderWorkerCacheMaxEntries = defaultPdfRenderWorkerCacheMaxEntries;