CachingCommitValueResolver currently only caches non-null commit values because a revision could be from an in-progress commit and currently does not have a commit value. Once the commit made it through, the commit value will be non-null.
For some use cases it would be beneficial to have a negative cache for revisions that are known to stay in the un-committed state. E.g. old branch commits that cannot be merged or old un-committed changes from inactive clusterIds.