Problem:
In the useAuthFromAuthKit hook, the loading state includes !accessToken, which causes isLoading to stay true even after loading completes if the token is missing:
const loading = (isLoading ?? false) || (tokenLoading ?? false) || !accessToken;
Fix:
Using the Convex auth provider code from the official Convex documentation fixes this issue by setting loading as:
const loading = (isLoading ?? false) || (tokenLoading ?? false);
