I forgot to advertise, I made a recent change that semi-enforces that each target has a non-generic sources and dependencies fields, so that relevant field sets aren't casting too wide of a net.
It isn't infallible, like how the source of python_test should inherit from the source of python_source, but it's a good sanity check.
Lastly it's implemented at test time, so test your code 😉