I think consensus through code review is better as compilers and languages evolve. If you write rules for everything you spend your time checking for compliance and perhaps rewriting rules instead of relying on a more organic code quality assurance.
You also want your engineers to think by themselves instead of hiding behind a rules book.