Método não definido `sub!' ao visitar `/admin/upgrade`

Hu, nenhum dos plugins tem um URL remoto:

discourse@ocean-app:/var/www/discourse/plugins$ for d in *; do echo "$d: $(git -C $d config --get remote.origin.url)"; done
chat:
discourse-chat-integration:
discourse-details:
discourse-lazy-videos:
discourse-local-dates:
discourse-narrative-bot:
discourse-presence:
discourse-solved:
docker_manager:
plugins:
poll:
styleguide:

Interessante… na verdade, nenhum dos diretórios tem sequer uma pasta .git.