Perhaps @ehoover can comment on this, but I'm worried that these concerns also apply to his patches.
Unless I'm misunderstanding, the only possible problem is with other unix programs (since the handling is all in the server). I don't see a way to avoid that, but maybe I'm not being creative enough.
Shouldn't reparse points be using (Samba inspired?) extended attributes instead? But if we care to support reparse points on tmpfs, then we will need hidden directories some of the time at least.
It is, IMO, better to use the samba extended attributes where possible. I only propose the hidden directories as a fallback mechanism for when that's not possible.
FWIW I really dislike the idea of a hidden directory, it just feels wrong and clunky to me, and doesn't integrate well with the host at all.
You could also replace the file with the directory of metadata, but then you have to change a lot of "is this a file or a directory" handling to read the contents of the metadata directory.