Fix failure matrix, add caching