Мы только что объединили коммит, который добавляет поддержку связанных акторов Discourse-to-Discourse в плагин ActivityPub. Однако при тестировании на двух разных экземплярах я столкнулся с проблемами. Все они собраны здесь @angus для удобства.
Проверка Discourse-to-Discourse: на личном экземпляре Discourse я не могу добавить связанного актора Discourse из meta.discourse.org. Сначала я получил клиентскую ошибку «failed to verify», а затем тайм-аут.
Та же ошибка возникает при попытке связать аккаунт моего личного экземпляра с meta.
Проверка Discourse-to-Mastodon: на личном экземпляре всё работало нормально! Однако здесь, на meta, я не могу пройти этап проверки для mastodon.social. Я получаю следующую ошибку: An error occurred: The access token is invalid Failed to verify client.
@pmusaraj В качестве первоочередной меры я создал PR, добавляющий настройки для ограничения частоты запросов для клиентов с пользовательскими API-ключами (что усложнит тестирование этого).
Также, пожалуйста, проверьте, что область discourse-activity-pub:read добавлена в настройку сайта allow user_api key client scopes. Это должно происходить автоматически, но стоит убедиться.
Это изменение уже доступно на Meta. На моем собственном самохостинговом экземпляре (который также обновлен до этой версии) я продвинулся дальше, но после авторизации получил эту ошибку:
Я думаю, это означает, что мы исправили эту проблему. Эта ошибка возникает, если на инстансе ещё нет актора, так как акторы пользователей создаются по требованию (т.е. это ожидаемое поведение, хотя сообщение об ошибке можно улучшить). Я считаю, что в этом случае мы должны создавать их, если они отсутствуют. Вот как это сделать:
Я думаю, что это может указывать на устаревшее или удалённое OAuth-приложение на стороне Mastodon. Просто заметка: в моих собственных тестах с mastodon.social (на продакшн-экземплярах) я смог пройти верификацию без проблем. Я создал PR для устранения этой возможной причины проблемы:
@pmusaraj Спасибо за слияние. Просто заметка: я только что успешно авторизовал свою учётную запись Mastodon на mastodon.social здесь, на meta, так что, похоже, этот PR исправил проблему. Дайте знать, если у вас возникнут ещё какие-либо проблемы.