To unpack that "tricky proposition" thought:
The only heavily used format HammUEr supports that actually has built-in fixed ids from the editor side, is Hammer's VMF, really.
Some of the editors out there add their own version of this maybe when writing out Quake/Valve220 MAP files, but there's nothing there you can trust will be the same between runs In The Format Specification Itself, which leads to ids basically being self-assigned based on order they're encountered in the file, which makes it harder to keep anything already loaded without doing a whole lot of extra guesswork.
tl;dr: it's (relatively) easy to find things that haven't changed, but things that have changed can be ???




