Looks like I can work around it by hitting Ctrl+Z a few times. Unable to reproduce it from scratch, but seems to happen to my current setup:
I have a prefab that doesn’t have any nodecanvas components (just some components that manage variables outside of the blackboard). Then I have some prefab variants that DO have an FSM Owner/Blackboard components. These reference FSM assets (are not bound to the object). Inside the attached FSM asset I have a sub behaviour tree. When I add a switch component to that behaviour tree, it “corrupts” the tree.