If I read the spec right, composedPath() relies on the current tree structure to figure out what to return. So, if a listener does then something like ```js var cp = event.composedPath(); /*move nodes around*/ var cp2 = event.composedPath(); ``` cp and cp2 may contain different nodes, which is surprising, since the internal path for the event hasn't changed. In particular, relying on "shadow-including inclusive ancestor" in https://dom.spec.whatwg.org/#concept-closed-shadow-hidden in https://dom.spec.whatwg.org/#dom-event-composedpath looks wrong