This effects all supported versions of puppet:
We use "cmd /c start" to execute exe package installs on Windows: https://github.com/puppetlabs/puppet/blob/master/lib/puppet/provider/package/windows/exe_package.rb#L45. Comments suggest this is because otherwise executables that are console apps will launch a new window (which is undesired).
However, the use of "start" means the calling process (i.e. puppet) will never see the actual exit code from the installation, only the exit code from the call to start (which will be 0: success)
This means from puppet's perspective exe package installs always succeed and puppet will always report a successful installation, regardless of whether or not the application install actually succeeded.