Summary
A cold pacquet install (fresh-resolve) and pacquet install --frozen-lockfile perform the same tarball downloads, but report them completely differently:
- fresh downloads via
PrefetchingResolver → DownloadTarballToStore, whose progress is emitted on a silent reporter, so the downloads are invisible. CreateVirtualStore then finds the freshly-populated store and emits found_in_store for every package. Net reporter output: "reused N, downloaded 0" — even though it downloaded all N.
- frozen (and the pnpr path, which forces frozen) downloads through the visible cold-batch path and emits
fetched + "Downloading : X MB/Y MB" progress. Net output: "downloaded N".
Same bytes, same network, opposite report. The fresh path hides its downloads.
Why this matters
This inconsistency is actively misleading. It made a --frozen-lockfile / pnpr install look like it was redundantly downloading a graph that a plain install "reused" — when both download identically. It cost a long false-positive investigation chasing a non-existent "frozen re-downloads everything" bug; the only real difference is overlap (see companion pipelining issue) and these labels.
Evidence
Instrumented the three decision points in DownloadTarballToStore::run_without_mem_cache (real network GET vs. prefetched/cached reuse) and the CreateVirtualStore warm-batch emit:
fresh: 58 NETWORK-DOWNLOAD + 58 warm-batch-reuse -> reporter shows found_in_store=58, downloaded=0
frozen: 58 NETWORK-DOWNLOAD -> reporter shows fetched=58
Where it lives
Proposal
Make the two paths report the same install identically. A package whose bytes came over the network this install should be reported as fetched/downloaded regardless of whether the fetch happened in the resolve-time prefetcher or the cold batch; found_in_store should mean it was genuinely already in the store at install start. Parity target: upstream pnpm's packageRequester emits fetchingProgress / packageImportMethod consistently whether or not the fetch was prefetched.
Acceptance
- A cold
pacquet install reports its prefetch downloads as downloads, not found_in_store — so pacquet install and pacquet install --frozen-lockfile produce the same reused/downloaded counts for the same cold store.
Written by an agent (Claude Code, claude-opus-4-8).
Summary
A cold
pacquet install(fresh-resolve) andpacquet install --frozen-lockfileperform the same tarball downloads, but report them completely differently:PrefetchingResolver→DownloadTarballToStore, whose progress is emitted on a silent reporter, so the downloads are invisible.CreateVirtualStorethen finds the freshly-populated store and emitsfound_in_storefor every package. Net reporter output: "reused N, downloaded 0" — even though it downloaded all N.fetched+ "Downloading : X MB/Y MB" progress. Net output: "downloaded N".Same bytes, same network, opposite report. The fresh path hides its downloads.
Why this matters
This inconsistency is actively misleading. It made a
--frozen-lockfile/ pnpr install look like it was redundantly downloading a graph that a plain install "reused" — when both download identically. It cost a long false-positive investigation chasing a non-existent "frozen re-downloads everything" bug; the only real difference is overlap (see companion pipelining issue) and these labels.Evidence
Instrumented the three decision points in
DownloadTarballToStore::run_without_mem_cache(real network GET vs. prefetched/cached reuse) and theCreateVirtualStorewarm-batch emit:Where it lives
Available→found_in_storerelabel:tarball/src/lib.rsrun_with_mem_cache(the// the silent prefetcher reporter ... Treat this as a found_in_storebranch).found_in_storeemit:emit_warm_snapshot_progressincreate_virtual_store.rs."New cache"):run_without_mem_cacheintarball/src/lib.rs.Proposal
Make the two paths report the same install identically. A package whose bytes came over the network this install should be reported as
fetched/downloaded regardless of whether the fetch happened in the resolve-time prefetcher or the cold batch;found_in_storeshould mean it was genuinely already in the store at install start. Parity target: upstream pnpm'spackageRequesteremitsfetchingProgress/packageImportMethodconsistently whether or not the fetch was prefetched.Acceptance
pacquet installreports its prefetch downloads as downloads, notfound_in_store— sopacquet installandpacquet install --frozen-lockfileproduce the same reused/downloaded counts for the same cold store.Written by an agent (Claude Code, claude-opus-4-8).