Note that --facts, sets facts (i.e. contents in the $facts hash) and not just top scope variables. In older puppet facts were only top scope variables.
We cannot just have var=xxx since that does not say if it is just a top scope variable, or a fact. Maybe only facts are wanted?
We're not going to get to this any time soon, if there are more customers that are struggling with this, and it needs to be prioritized, please reopen and/or reach out to Nick Walker.