Is there a tool similar to http://hackage.haskell.org/package/scan which can check that these guidelines are being followed?
Take a look at hindent.