In that case, if you have a new version of an old node, in that case you just write a new one. You can just start at the very beginning of that node to refer back to the old nodes.
If you keep your notes in version control, you can achieve a similar effect with git-auto-commit-mode
.
I use org-roam-timestamps
; but, as you say, there are no query functions.
If you have org-roam-timestamps
and just want to answer the question “which nodes did I modify on a given day”, I think it would be very easy to write a function for that. But I don’t think there’s any harm in duplicating that data in the daily log, either.
What is wrong with just using org-roam?
It’s a dealbreaker for certain applications (e.g., window management). It’s not a dealbreaker for Emacs as a whole.
Actually, to be clear: most of the pain is with blocking I/O. But Emacs does have support for asynchronous I/O. The problem is that there is too much code that uses blocking I/O rather than asynchronous I/O.