Basically I think the issue is the pluggin is logging/caching triggers of the endstop switch during a filament change. So what is happening is as soon as the filament change is completed it is immediately triggered again, and again, creating a loop of filament changes.
Once a break in filament has been detected shouldn't the pluggin stop checking for a set amount of time or if it's able to detect if M600 command is finished or if print has been resumed........ then start checking again.
One may activate the sensor several times while actually changing the filament roll, if the pluggin logs those triggers it will keep trying to initiate the M600 command. This is a separate issue from debounce, no amount of debounce fixs this problem.