Include What You Use (IWYU) is a tool-enforced policy that brings many benefits to C++ development.
Unfortunately, it's pretty hard to set up the IWYU tool, and I've not found good examples of anyone properly combining it with Bazel. That said, it shares some design features with clang-tidy, which we're already bringing into our standard toolkit.
Shall we also introduce IWYU?
CC @benh @while-false