DNM: Wip 9189

This currently based on wip-9375: the 9189 stuff is everything after "collapse numerous client warnings into 1"

The DNM is just because we shouldn't merge this until its prerequisites are ready.