class Net::IMAP::SASL::XOAuth2Authenticator

def done?; @done end

does *not* indicate success.
The authentication should not succeed unless this returns true, but it

Returns true when the initial client response was sent.
def done?; @done end