I read on an old none commentable reddit that Tpope no longer uses his vim-repeat plugin, and instead uses g@. I have used g@ in plugins, and unstand you set opfunc first, then g@{motion} will run opfunc on the motion.
I have had some success using g@ when editing to repeat a titlecase function, but havent figured out how to repeat for example vim-surround functionality with it. Does anyone find it useful when editing text (i.e. outside the context of vim scripting).