The client side of the RSC is required to be very tolerant to all sorts of faults. One that was always planned but somehow missed was being tolerant of a failure to download the blob listed as part of the cache hit. This PR fixes/implements that missing feature.
Main things of note:
We touch the destination after rming in in the http library so the curl job always "outputs" a file to be hashed
When any part of the job hydration process fails we fall back to manually running the job without attempting to cache it
The client side of the RSC is required to be very tolerant to all sorts of faults. One that was always planned but somehow missed was being tolerant of a failure to download the blob listed as part of the cache hit. This PR fixes/implements that missing feature.
Main things of note:
touch
the destination afterrm
ing in in the http library so the curl job always "outputs" a file to be hashed