[useConnection] nickname-sync failure [SendbirdError: Connection is required]

[Problem/Question]
I’ve built a sign-in screen based on the one in the Sendbird sample app. I take a user’s phone number in a text input and check if it exists in my MongoDB. If the phone number doesn’t exist, I add the phone number to my MongoDB, generate a user ID, and then call the connect function from the useConnection hook like this: await connect(userId, { nickname }), where nickname is 'New User'.

Up until today, this has worked just fine – calling connect updated the currentUser object, which I used to conditionally render the next screen. Now, after no changes to my code, I receive a nickname-sync failure error, with no other context or stack trace provided.

After logging the value of currentUser before and after calling connect, I noticed that currentUser is undefined before calling the function and null after calling the function. Thus, the rest of my app fails to conditionally render.

Having a very hard time determining what’s changed, and I’m on a time crunch, so any help that leads to fixing this error is sincerely appreciated. Thank you!


// If problem, please fill out the below. If question, please delete.
[UIKit Version]
3.1.2, building an Expo application

[Reproduction Steps]
// Please provide reproduction steps and, if possible, code snippets.
My App.tsx:

export default function App() {
  ...

  return (
    <SendbirdUIKitContainer
      appId={sendbirdAppId}
      chatOptions={{ localCacheStorage: AsyncStorage }}
      platformServices={{
        file: FileService,
        notification: NotificationService,
        clipboard: ClipboardService,
        media: MediaService,
      }}
    >
      <UrlContext.Provider value={{ url, setUrl }}>
        <Navigation />
      </UrlContext.Provider>
    </SendbirdUIKitContainer>
  );

My Navigation.tsx:

export function Navigation() {
  ...

  return (
    <OnboardingContext.Provider value={{ isOnboarded, setIsOnboarded }}>
      <NavigationContainer>
        {
          currentUser ? <SignedInStack.Navigator screenOptions={{ headerShown: false }}>
            <SignedInStack.Screen name="App" component={AppNavTree} initialParams={{ channelUrl: url }} />
          </SignedInStack.Navigator>
          : <SignedOutStack.Navigator screenOptions={{ headerShown: false }}>
            <SignedOutStack.Screen name="Login" component={SignInScreen} />
          </SignedOutStack.Navigator>
        }
      </NavigationContainer>
    </OnboardingContext.Provider>
  );
};

In my SignInScreen.tsx I have a submit button that triggers the logic to search for the given phone number in my MongoDB, generate a user ID, and call the connect function as described above.

[Frequency]
Each time I run the app and try to sign in.

[Current impact]
Unable to move forward with pushing to prod until this is resolved.