The async half of demand-driven geometry (Phase B): source-byte residency.

Extraction is synchronous by design (the wasm extract reads source bytes through StepBufferProvider.acquire), but a windowed/streamed source pages bytes in asynchronously (ensureResident). This pump owns that seam: it admits demand, prefetches the source ranges for the most-wanted products, and only then forwards them to the synchronous DemandGeometryQueue — so a pump() never hits a non-resident range mid-extract.

interface ResidencyPrefetcher {
    ensureResidentByLocalID(localID: number): Promise<void>;
}

Methods

  • Page in the source byte ranges a product's extraction will read. StepModelBase.ensureResidentByLocalID satisfies this shape.

    Parameters

    • localID: number

      The product's local ID.

    Returns Promise<void>

    Resolves when resident.