062a08f116
Code review flagged silent corruption when dragging a mixed selection of a parent + one of its children: the child's ids stayed in pendingSnap even though nodeBox excluded it from the bbox. On drag stop we shifted the child's parent-relative position by the same delta the parent already moves by — double-snapping the child off-screen. Restrict the pendingSnap id set to nodes that contributed a box (top-level only). Children follow their parent's move automatically; no extra shift is needed.