Static check happen earlier in build lifecycle

So that we don't have to wait for tests to be run and know the result earlier(fail fast)