I noticed that this event fires 2x for every property that gets updated. So if you have a control that has 10 properties That's 20 event fires for that update. This is detrimental to performance due to all the unnecessary renders. It should only fire once for every getOutputs return.
Or is there an architectural reason for this? I can confirm this behavior in the pcf playground, I haven't checked it in live environment.