If you delete a layerGroup that is contained within another layerGroup by any method that uses Catalog.remove() (rather than CascadingDeleteVisitor), you will corrupt the catalog; The deleteion will succed but not update the containing layer group, meaning that any further events to access the remaining layer group will fail with the following error:
This occurs because the LayerGroup still holds a reference to the deleted layer group, so we get stuck with a ResolvingProxy containing "null" in place of the deleted layerGroup.