I do not see a fault in the documentation.user:read:email (or the other user related scopes) does not grant access to the users email when calling OpenID and it’s user info endpoint, that requires a claim.
If you request the right claims then the userinfo endpoint will include that data.
if you include other scopes then you also get back a regular oAuth token that you can use against the none OpenID related endpoints.
state that the scope MUST include openid
scope string Space-separated list of scopes. This must include the openid scope.
if you include other scopes that doesn’t change the data openID returns, just gives you a standard oAuth token that can be used on the “regular” Twitch API