It looks like this audit log was created while running a Functional test.
When a functional test is running, AuditLogEntry.ConvertPathsToFileNames is true.
Because of this, "LogMessage.ParsePath" behaves differently.
The audit log contains this:
<en_expanded>Build Spectral Library > Search files : contains "interact.pep.xml"</en_expanded>
If this audit log had been saved in regular Skyline, then that "en_expanded" would have been different, since it would have included the full path:
<en_expanded>Build Spectral Library > Search files : contains "D:\Downloads\Tutorials\DIA-TTOF\DIA-TTOF\DDA_search\interact.pep.xml"</en_expanded>
I am not sure exactly why this causes the hash to be incorrect. As far as I can tell, Skyline is not recomputing the text in that "en_expanded" tag, so I believe the hash was incorrect when the log file was written. We certainly don't want Skyline to be recomputing the english text before verifying the hash values, since that would mean that the hash values would become invalid if we ever changed any of the strings in "PropertyNames.resx" etc.
There are a lot of things that could potentially be fixed here.