Does it matter whether the KDF salt is integrity protected?
No, integrity protecting the salt is probably not required.


For confidentiality this is pretty obvious because changing the salt only throws away information for the attacker.
Concerning integrity things are a bit more complicated.
Suppose, these files are stored on a central server where an attacker can manipulate them and suppose that some client will automatically retry downloading the file if decryption failed or something like that.
Can an attacker learn anything about your password from knowing about decryption failures or the like for different salts?

You could construct KDFs where this is possible but for any decent KDF (it just needs domain separation) it won't be. If you have domain separation changing the salt will never influence your password in a useful way and this makes incremental testing impossible.