extractZipEntries
open suspend override fun extractZipEntries(artifact: FirmwareArtifact): Map<String, ByteArray>(source)
Fully expands artifact into memory, keyed by entry name.
Streams from the artifact rather than buffering it whole, and delegates the bounds to extractZipEntriesBounded so this and the desktop handler cannot drift apart. The getFileSize check is only a cheap early rejection — it returns 0 for a provider that declines to report a length, so the inflation bound inside the extractor is what actually protects the heap.