If the generic parameter is called T, the return type of compute() should be T and the return type of getComparator() should be Comparator<? super T>.
Although PostAggregator is an ExtensionPoint this should be a compatible change, because generics in Java were designed to support compatible transition.