It appears as though the Twitter API doesn't automatically route an OAuth authentication request back through the authorization process if the user's existing authorization of the app doesn't match up to the required access level. For example, let's say an app has changed from "Read, Write" to "Read, Write, Direct Messages", but the user only authenticated for "Read, Write".
Would you simply clear all existing oauth tokens in the DB, thus requiring all users to re-authorize the application - or is there a way to check whether an oauth record matches up to the required access level and, if not, to route the user back through the authorization process?