> 1. cargo new --vcs git foo > 2. echo 'mod foo;' >> foo/src/main.rs > 3. emacs -Q foo/src/foo.rs > (foo.rs DOES NOT EXIST YET -- that is part of the bug) > 4. M-x rust-ts-mode RET > 5. (progn (setq track-changes-record-errors 'trace) (setq debug-on-error t)) > 6. C-x C-f main.rs RET > 7. M-x eglot RET > 8. echo 'struct foo;' > foo/src/foo.rs > 9. C-x C-f foo.rs RET > 10. yes RET Thanks, I managed to reproduce it locally with: rm foo.c emacs -Q foo.c -f eglot echo 'struct foo;' > foo.c M-x revert-buffer RET and that pointed to a bug in `track-changes.el` which could explain the problem you reported originally. So, I pushed the patch below to `emacs-30`. It seems part of the problem also comes from `insert-file-contents` which apparently fails to run the `before-change-functions` in the above recipe, but I haven't investigated this any further yet, and track-changes *should* tolerate this (potentially emitting a warning along the way), and with the patch, the above recipe now works for me without error nor warning. Stefan