In moving towards #254, I moved this app-specific (but shared) caching logic out of "utils" and into "shared"