I should be able to opt-in to a partial cache hit restoring the most recent cached from a pipeline.
That is, you have specified:
Multilayer caching (https://developer.harness.io/docs/continuous-integration/use-ci/caching-ci-data/multilayer-caching) but this requires manually setting up multiple Save and Restore Cache steps to achieve multilayer caching -- which, at a minimum, requires us to create the full cache twice, and do a bunch of configuration instead of using the "intelligent" caching.
What I expect, after using Azure DevOps and GitHub, is that the cache plugin should try to match a list:
  • <my-pipeline-id>-<system-architecture>-<file hashes>
  • <my-pipeline-id>-<system-architecture>
An example implementation might replace "<my-pipeline-id>" with "<my-pipeline-id>-<pipeline-iteration>" when creating the cache, but then do a wildcard match on the iteration and sort by that to pick the newest.
The exact details aren't important. The point is to get multi-layer by doing a partial match without the file hash, and to do that intelligently and automatically, instead of going from "click this checkbox for intelligent caching" to manually adding 4 or more steps with complicated conditions, and doubling the time to create the cache in order to get this to work ourselves.