newest first, which is the order every caller wants
every frame hash any surviving revision still names
Rebuilds the module set a revision recorded.
Refuses on a missing frame rather than returning a partial bundle: half a Worker that deploys is worse than a refusal that names what is gone.
Frames, compresses and writes what is not already held.
Presence is asked once for every frame rather than once per frame, because dedup exists to skip writes, and a round trip each would spend what it saved.
the revision a plane version id came from, or null when workforce did not make it