Hi, it seems a few functions meant to expose org internals to programmers seem to cause undocumented side effects. A particular example being org-entry-properties. When called, it changes the match-data. This can cause issues in cases where leaking match-data can cause font-lock to behave inconsistently or throw errors. I think it would be a good idea to add a prominent warning to such interfacing functions, or document it somewhere in the module.
The same is true for org-element-lineage, but I am not so sure whether it is intended for hacking purposes as much as org-entry-properties. Sadly, I have no overview over the scope of this issue, so I do not know whether my suggestion is unrealistic (for example, because it would mean adding warnings practically everywhere). Regards, D.