Hi @dev dev · Thank you for reaching out.
For acquiring tokens using MSAL.js, the library first attempt a silent token request by using the acquireTokenSilent method and checks the cache in browser storage to see if a valid token exists and returns it. If no valid token is in the cache, it sends a silent token request to Azure Active Directory (Azure AD) from a hidden iframe which allows the library to renew tokens. However, if no valid Azure AD Session exists, silent token request fails and user can be either provided with a login popup or redirect.
In your case, at the first launch of the application, when no valid token in the cache or valid Azure AD Session is found, silent token request fails and you are presented with the login popup but subsequent logins work without login popup.
-----------------------------------------------------------------------------------------------------------
Please "Accept the answer" if the information helped you. This will help us and others in the community as well.