Previously we were checking truthiness in some places, and == true
in
others. That can lead to some inconsistent UX where the interface says
the email is valid, but account creation fails.
This commit casts the value to a boolean when it is first set, with a safety check in place for badly parsed ‘false’ strings.
If this safety check is triggered, it means the specific auth provider should be parsing the string and converting to a boolean.
I am not aware of any providers which have this issue, but let’s keep the check to make this change fail-safe.