Hi,
yes, Fsm names are not "Pointers", so you have to use this with extrem care indeed.
when I start using these kind of action, I enforce a very strict policy of "name it and never rename", which also means that I careful name each fsm so that I don't have to refactor them later and other parts of my project can rely on fsm names.
When this is not good, like when I know this is a work in progress and I am not sure myself where this is going, I don't rely on this and go for global event that I fire to a gameobject specifically ( the one with this fsm that I don't trust by name) and then problem is solved, I do the work inside the fsm that simply catch this global event, likely getting data from it and storing into it itself into its own variables.
I would however enjoy a proper pointer system like events and variables... maybe one day:)
bye,
Jean