Intended behavior: https://github.com/reactwg/react-18/discussions/31

Sandbox: https://codesandbox.io/s/react-18-layouteffect-semantics-forked-m02w5

Expected: when suspended content is hidden and then shown, we get layout cleanup followed by layout setup.
Actual: only layout cleanup happens.


if (node.return === null || node.return === current) {
        return;
      }
      node = node.return;
      if (node.tag === HostPortal) {
         
         
        currentParentIsValid = false;
      }
    }
    node.sibling.return = node.return;
    node = node.sibling;
  }
}
function commitDeletion(
  finishedRoot: FiberRoot,
  current: Fiber,
  nearestMountedAncestor: Fiber,
): void {
  if (supportsMutation) {
     
     
    unmountHostComponents(finishedRoot, current, nearestMountedAncestor);
  } else {
     
    commitNestedUnmounts(finishedRoot, current, nearestMountedAncestor);
  }
  detachFiberMutation(current);
}
function commitWork(current: Fiber | null, finishedWork: Fiber): void {