After requesting an OTP by email in the app, if the user closes/backgrounds the app, opens Mail, copies the code, then returns to the app, the flow resets and asks for email/phone again instead of staying on the code entry step with the same destination address.
Returning to the app should still show Verify OTP for the same type + value (email/phone) until the user verifies, cancels, or the OTP truly expires — same as staying in-app.
login.tsx pushes verify-otp with route params only: { type, value }.verify-otp.tsx reads identity only from useLocalSearchParams (value, type).value.SecureStore / expo-secure-store or encrypted async storage): type, value, optional timestamp.verify-otp mount, if params are missing/empty, hydrate from storage; if still nothing, redirect to login.inspector-app/app/(auth)/login.tsx — router.push to /verify-otp with paramsinspector-app/app/(auth)/verify-otp.tsx — useLocalSearchParams for type / valuePlease authenticate to join the conversation.
Completed
Main App
2 months ago
Linear
Get notified by email when there are changes.
Completed
Main App
2 months ago
Linear
Get notified by email when there are changes.