Per Flutter's new release process, dev releases could have cherry picks in them. Just as flutter upgrade had to be updated to support force pushes, the roll_dev.dart script will also need to have a --force flag to allow publishing past cherry picks on a previous dev release.
In addition, roll_dev cannot detect the tag if the tag is not a direct ancestor, which is the case if the last dev release had cherry picks.
Even after we expose the --force flag to roll_dev.dart, the dev branch will have to be unprotected by a repo admin to allow force pushing.