Don’t need to put it in Sysvol (and that’s a huge file to replicate). I just have it in a separate folder on the DCs, but I’m going to put it on a file server in a bit since the file is getting huge.
While it may seem like the first one is the more serious problem, the latter one can be worse as it can slow down LSASS. In extreme cases, LSASS can stop handling requests briefly as it has a limited number of threads to handle them, and it cannot complete password changes until PPE responds to it. This is true for any password filter, LSASS has to wait for them to respond before it can continue.
Best practice is to have any needed files locally. A share can work if you don’t have the disk space. Work is being done to reduce the file size.
Correct. The PPE client will try to open the dictionary file (using the same path as configured on the server by default), but this is only used by a very small number of customers that want the client to enforce the dictionary rule before Windows sends the password to the DC. For most customers, they can just have the files on the DC and let the DC handle the enforcement.