Expo router v2 "Attempted to navigate before mounting the Root Layout component. Ensure the Root Layout component is rendering a Slot" hatası çözümü

Expo 49, Expo router v2 kullandıgımızda _layout.js içerisinde oturum kontrolü yapıp, session yoksa login ekranını açmak gibi bir standart kodum var.
Expo'nun kendi dökümanında* örnek auth flow kodu mevcut. Ancak çalışmıyor *https://docs.expo.dev/router/reference/authentication/

ERROR Error: Attempted to navigate before mounting the Root Layout component. Ensure the Root Layout component is rendering a Slot, or other navigator on the first render.

hatası fırlatıyor. Aslında kendini açıklayan bir hata. Daha navigator hazır değil iken redirect etmeye çalışıyorsun diyor.

Çözüm basit: Redirect etmek için navigator beklemek.

  const navigationState = useRootNavigationState();

  React.useEffect(() => {
    if (!navigationState?.key) return;
//...
    redirect('/what do you want');

  }, [user, segments,navigationState]);
}

Örnek dökümanı da güncelleyip, PR gönderdim. Isterseniz oradan da bakabilirsiniz.
https://github.com/expo/expo/pull/23722/files

SetTimeout ile de bir çözüm önerilmiş ancak bu bana biraz hacky geldi.

   if (Platform.OS === "ios") {
        setTimeout(() => {
          router.replace("/");
        }, 1)
      } else {
        setImmediate(() => {
          router.replace("/");
        });
      }

ilgili issue

https://github.com/expo/router/issues/740