Rollbacks (mw-rollback) are always automatically marked as patrolled. (AFAIK) Even if the user in question isn't autopatrolled.
Two suggestions (which don't rule each other out):
- When performing an undo action, check if the performer has rollback (global or local shouldn't matter) and if so, mark the undo action as patrolled.
- Create a new user right that autopatrols reverts only.