Ok, I think I figured it out and it's not as complicated as it seems.
When an interface has changed, for example with a NIC replacement, we won't be deleting the switch config to fix that. What…
The clone has been bugging me too. We could use an Rc or Arc too as a balance between usability and performance.
redhat operators are not always available, it depends on how the OKD cluster was brought up. This method may not be as portable as we need.
I understand we don't want to use the "inventory agent" data structures, but I think it's OK to have one base data structure that we try to reuse across crates for basic components like NetworkInterface and these few others.
If I understand correctly this has the correct behavior. It is perfectly normal for a host to have mac addresses that are not connected to the switch. Most of them do have disconnected 1gb interfaces.