@JC biggest culrprit if you ask me, for record has been changed is usually workflow.
If you have workflow actions running whilst having workflow action scripts, merge them. (in the same workflow in the same state) (like you run set value on entry, and also a wfa script on entry, merge them.)
Work only in workflowaction scripts and make sure your workflows run one state at a time. instead of flying between states to do things.
If there are no workflows, then you gotta figure out what other stuff is doing rec.load, rec.save, and you'd want to change them to inline edits.
My 5 cents ^_^