Taking a stab at this...
The puppet parser will always be the authoritative source for one's puppet code validation since that is what will be parsing the code via agent or server. It will introduce any number of bugs and inconsistencies and delay to have puppet-lint keep up with what puppet does anyway.
However!
You do not need to check this all manually every time you commit. There are tools which wrap these commands that you can set up to do this automatically.
You can use puppet-git hooks to have all these checks performed right before a git commit is applied. Even better, you can set this up on the server side so that people are incapable of pushing risible crud to your main git repository.
https://github.com/drwahl/puppet-git-hooks
Under the hood, PDK uses puppet and puppet-lint and gives you the chance to add specification testing. I have this set up in our gitlab instance to run "pdk validate" and "pdk test unit" on every module we've run through "pdk convert". (You can likely have this one in a pre-commit hook too, haven't done that here.) We had some training/implementation sort of workshops and people were able to get some very basic tests done in their first time using PDK which was pleasant.
https://puppet.com/docs/pdk/1.x/pdk_install.html
> --
> You received this message because you are subscribed to the Google Groups "Puppet Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
puppet-users...@googlegroups.com.
> To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-users/20180220215107.GC1284%40io.chezmoi.fr.