Yep, I share that same concern.
There's a balance there.
There are perhaps ways we could make this more known, like including a note in the docs for the command module and shell web pages.
The issue I want to avoid is the one where we generate a firestorm of list questions about how to simplify a particular shell invocation, when in fact the shell invocation is non-simplifyable for whatever reason. So there will probably be a lot of folks needing to ask about warn=no who don't normally read docs well.
Another scenario might be to reduce the frustration of someone who upgrades Ansible, doesn't have time to change his playbooks, and then has a team hammering down on him for all the "errors". So yes, it helps correct playbooks but may be viewed negatively because it causes some degree of hassle. I'm perhaps over-sensitive to that.
An alternative way to handle this is possibly to make the warning more verbose - and include information about how to shut it off by changing the shell line.
Such a message (for reasons of no_log and such) can't repeat the shell command but could mention tacking warn=no onto the end of the command.
There are some options that we've done a VERY good job of advocating, like recent surveys seem to indicate about 50% of folks using -c ssh turn on pipelining.
I agree it's not a total solution though, in that not everyone would learn.
Another thing we do (at least in RHEL) is ship ansible.cfg as a config file, so it's easy to browse the available options (see also examples/ansible.cfg) in checkout.