- Edited
- I was able to enroll with "OEM unlock" enabled and it worked. I did some authentication operations and confirmed that it works.
- I rebooted the device without changing anything. Now it shows "Device is rooted" again.
- Disabled "OEM unlocking". Rebooted. "Device is rooted".
- Revoked, uninstalled, reinstalled app, re-enrolled (with "OEM unlocking" disabled). It worked.
- Rebooted. Still works.
- Enabled "OEM unlocking" to confirm that this is tripping the app. Rebooted. "Device is rooted". Confirmed that this is tripping the app.
I also saw what is happening at server-side, given the information provided in the website. Any time the app trips, it reports to the server which temporarily disables the app. This results in an entry in the activity log, and I also see that the specific installation is under a new section "Temporarily blocked authenticator".
I believe that this explains why it doesn't unblock once I disable "OEM unlocking": the app will not re-activate until the timeout passes. This "temporary block" must only happen once the app is enrolled and linked to a user profile, and that is why other reporters who have just installed it but not enrolled it see the state changing immediately.
Why is this tripping the app now, and not on previous versions of GrapheneOS? Any clue, @strcat? Was the state of "OEM unlock" invisible to apps before, but visible now?
Now I have disabled "OEM unlock", rebooted, and the app is still blocked but I believe it will come back to life once the temporary block expires. I will wait some hours and report what happens.