Have you looked at
https://www.qubes-os.org/news/2017/06/27/qubes-admin-api ?
It's clearly envisaged there that the management VM could have internet
access.
If you weren't happy with that you could have a disposableVM pulling from
git, validating with split-gpg. Pull into offline managementVM using
qrexec and validate again. Then apply.
Keeping salt and supporting files in git is definitely the way to go.