Hi,
that sounds like an interesting exercise. Thank you for taking the time and the summarized findings, Ed.
Maybe it's worthwhile to derive some minimal sanity checks from here and impose quality metrics for components on the release train? An integration test for the preferences would be helpful to ensure that users don't get trapped on a certain preference page. It's already bad enough if it's initially invalid but those things often refuse to ignore the error when a user tries to navigate to the next page. It would also be interesting to analyze why we run out of handles with a few dozen panels / preference pages and track the leakage down. Do all the views open without errors. Do the available perspectives make sense. Is the error log empty on a start? Is it empty when started without a network connection?
A reasonable set of integrity checks can be easily done automatically and run on each distro that is built.
Not so easy to test are the aesthetics, e.g. how views or perspectives look like. What should be possible to do though, is to detect if widgets are misaligned or icon sizes do not match the expectations in a toolbar / in the menu for example.
At first it may appear to be harsh to reject bad citizens from the train / release repo, "just because" a feature breaks the preference page or makes the visual appearance of Eclipse inconsistent. On the other hand it's often one of the first things that users try when the IDE comes up for the first time: browse the toolbar and menu entries and look at the options and preferences. If we fail at that early stage, users will perceive Eclipse as broken, ugly or both.