We don’t need any hybrid phase for T185709: Cache CheckResult serializations per-entity in ObjectCache, so we can probably just exchange the CachingResultsBuilder implementation for one that reads and writes CheckResult serializations instead (with a separate cache key format… v2.2 I guess).
The transition is complicated enough that it’s split up across several patches. Essentially, were replacing ResultsBuilder with ResultsSource plus CheckResultsRenderer.
- [add CachedCheckResults](https://gerrit.wikimedia.org/r/420706) (simple wrapper object)
- [ResultsSource, CheckingResultsSource](https://gerrit.wikimedia.org/r/420707) (half of CheckingResultsBuilder)
- [CheckResultsRenderer](https://gerrit.wikimedia.org/r/420708) (other half of CheckingResultsBuilder)
- [make the "v2.1" part of the cache key in ResultsCache configurable](https://gerrit.wikimedia.org/r/420719) – we need "v2.1" for CachingResultsBuilder but "v2.2" for CachingResultsSource
- [CachingResultsSource](https://gerrit.wikimedia.org/r/420834)
- [change CheckConstraints API to use ResultsSource+CheckResultsRenderer instead of ResultsBuilder](https://gerrit.wikimedia.org/r/420835)
- [remove ResultsBuilder and implementations](https://gerrit.wikimedia.org/r/421875)
- [update API help message of status parameter](https://gerrit.wikimedia.org/r/421873)