Would be interesting to experiment with the RFC 5861 to implement support for stale-if-error and stale-while-revalidate extensions.
stale-if-error might be an easy one but I wonder how would be the best approach for the background revalidation on stale-while-revalidate - maybe a soft dependency on concurrent-ruby as an async abstraction to perform the revalidation request on the background.