checkSession() returns login_required just after login() was successful

I have the same, but only on Safari 12, are you using Safari 12?