While it is useful for the CdiPanel to trigger runUpdateComplete() automatically on close, the code in runUpdateComplete() should only send the datagram if the config has in fact been updated and written to the node. This currently leads to the OpenMRN ConfigUpdateListener::apply_configuration method to be called even if the config hasn't been updated which could be considered an unintended behavior.
While it is useful for the CdiPanel to trigger runUpdateComplete() automatically on close, the code in runUpdateComplete() should only send the datagram if the config has in fact been updated and written to the node. This currently leads to the OpenMRN ConfigUpdateListener::apply_configuration method to be called even if the config hasn't been updated which could be considered an unintended behavior.