Right now, RegionNodeList is only invalidated when the node is added or removed. But it should also be invalidated whenever attribute changes, or for that matter, whenever style recalc needs to happen.
Also, I really don't think we should implement this as a dynamic node list. static node list would work much better because there's virtually no use case for using the same region node list while modifying DOM or styles.
We should stop propagating NodeList to new APIs. I don't think we even need static NodeLists. These should just be regular Node arrays. I suppose DOM4 should officially weigh on on that. We certainly should not add any new dynamic NodeLists to the web platform.
I strongly recommend we rollout the patch that implemented the regions node list. The current implementation is making the refactoring work in https://bugs.webkit.org/show_bug.cgi?id=80900 impossible.
OK, i will do it asap.