See #11399 for background. The codebase has moved on quite bit since that issue was raised so we might be able to consider it.