Originally from @dbolduc in #4687 (comment):
FWIW, in C++ we said if there was only a repeated string field, use that as the paginated item:
https://github.com/googleapis/google-cloud-cpp/blob/6a4b2fb26e51a9af7c8521e596806b9c563a9ee9/generator/internal/pagination.cc#L87-L93
That strategy has a failure mode. If we pick some string field at first, then a repeated message field is later added to the API, the paginated type switches, breaking the API. Seems super unlikely though.
Might be worth checking if there are other APIs we can fix, or if Pub/Sub is the only one at issue.