@tallship it sounds like HiveSigner is working as intended.
From my understanding of things... I think the first 'login' is just setting up the token for the frontend and the second 'login' is the actual authorization.
It is documented here: https://developers.hive.io/services/hivesigner.html#:~:text=Hivesigner%20works%20by%20granting%20an,access%20can%20be%20found%20here.