apt: hash-mismatch fallback buffers whole pool/** packages in memory
Goal
Answering a client from the origin after a pool/** download failed verification must not hold the package in memory.
`passthroughFallback` (design.md §8 step 7) reads the origin's whole body with `io.ReadAll` so that concurrent waiters can share one fetch. That is fine for dists/** files, but pool/** packages reach it too: when the origin sends no `Content-Length`, a fill cannot be tailed, every request waits in `serveFilledAfterwards`, and on a hash mismatch each of them lands in `passthroughFallback`. A package can be hundreds of MB, and the client also gets no response until the whole fallback fetch has finished.
Fix
For pool/** stream the fallback with plain `passthrough` (which also forwards the client's `Range`/`If-Range`), giving up the dedup. This only happens for a broken mirror that also sends no `Content-Length`, so the extra origin requests are rare; memory use and time to first byte matter more. dists/** keeps the deduplicated, buffered fallback.