The confusion likely comes from the fact that .uistate files are only updated when the project is saved, and possibly only for layouts & event sheets that have been modified since the last save (but I'm not certain on that.)
I made a feature request to resolve this ages ago but it didn't gain much traction.
Ashley It maybe sounds inefficient but ensuring all .uistate files are updated upon saving and also when closing a project or Construct itself would resolve this potential issue and is in line with expected behavior I think - having to make actual changes to the relevant layouts & event sheets when doing "clean up" should not be required.