Consider removing outputs from Core and generated VIs that do not modify data.
A few years ago, I read this post that recommends removing unneeded outputs. Once I got used to this approach, there was no turning back. There are fewer wires and it is obvious which VIs change data (or generate errors) and which VIs do not.
If you decide to implement this change, it need not break existing code. You could put the new version of the palette VI inside the old version of the palette VI.
A reason for retaining the "dup" outputs is that it gives the option to wire the unneeded outputs or not to wire them. So it is understandable if you decide to retain the "dup" outputs.