One of the main aspects preventing me of using symfony's cache widely is that I cannot specify exactly what criterias should the cache manager look at.
Symfony has great validation system. Yet it would be very weak, hadn't it custom methods - validateSomeAction() - for every action. So - why not to implement something similar for cache system? It could be a method named cacheSomeAction() that could re-check the parameters within the cached version and the actual one. After some custom comparison, the method then would return true or false, meaning to use the cached version or execute the action. Or vice versa.
For example, I would definetly like to include flash variables into account.