OK, я думаю, что это связано с тем, что мои тесты оставили мне повреждённую базу данных, и мне стоит полностью удалить тестовый сайт и начать заново.
[edit: бессмысленные детали удалены для очистки темы]
Я предполагаю, что это требует миграции базы данных для исправления, что это связано с тем, что я запускал код до слияния для тестирования, и поэтому мне стоит полностью удалить тестовый сайт и начать заново.
В Mastodon есть команда self-destruct для чистого выхода, чтобы избежать проблем с сохранёнными ключами сервера. Она рекомендуется не только при закрытии сервера, но и при сбросе инстанса до состояния, когда нужно сгенерировать новые ключи. Не знаю, сталкивались ли вы с этим в ходе тестирования. Похоже, что Mastodon выполняет Delete Actor для каждого локального аккаунта. Я не вижу в плагине функционала для этого, но понимаю, что мог что-то упустить.
Для моего сервера Mastodon, думаю, достаточно tootctl domains purge, но я также тестирую на обычном «альтернативном» экземпляре Mastodon, где у меня нет прав администратора.
…Я выполнил восстановление, и, как оказалось, команды tootctl domains purge недостаточно для успешной подписки после восстановления. Публикации просто не отображаются в Mastodon. Я включил подробное логирование ActivityPub, чтобы отладить проблему, но не нашёл, где искать эти логи. Теперь я нашёл их в логах Rails, так что теперь снова смогу самостоятельно проводить расследование.
Стоит уточнить: я не могу оказывать поддержку в этой теме. Если у вас возникли проблемы с разработкой Mastodon или Discourse, я с радостью помогу вам в подходящих местах (например, в Development), но не хочу захламлять эту тему.
Извините, я имел в виду вопросы о саморазрушении и о том, куда записываются подробные логи, так как они представляют общий интерес. Пытаюсь избежать запросов на поддержку здесь. Не обращайте внимания, если то, что выглядит как мусор, будет перемещено из этой темы.
Извините за шум. Я установил официальный плагин на свой тестовый сайт, затем восстановил резервную копию своего рабочего сайта, который никогда не видел плагин ActivityPub в какой-либо форме, после чего настроил ActivityPub, поэтому, насколько мне известно, он должен быть чистым.
В будущем, если я буду тестировать ветку, я буду:
начинать с чистого выпущенного плагина, со всеми уже созданными акторами, которые я собираюсь использовать
сделать резервную копию
установить ветку
протестировать публикации
удалить все тестовые публикации
откатиться к чистому выпущенному плагину
восстановить резервную копию
сообщить о любых проблемах, найденных в ветке, в PR, а не в этой теме
Это должно поддерживать чистую базу данных и чистую тему.
То, что значок моего сайта не отображался, не было связано с тестированием ветки плагина, и это не была ошибка в плагине. Логотип не отображается в Mastodon для моих постов, потому что мой large_icon_url указывает на SVG, а Mastodon, по-видимому, не обрабатывает SVG для иконок акторов. Если нет какого-то обычного тривиального пути для понижения до PNG для ActivityPub, то здесь, вероятно, делать нечего.
Меня интересует, какова цель форматирования и представления для заметок (Note) и статей (Article).
Заметка (Note)
Когда я публикую заметку из Mastodon Glitch в обычный Mastodon с поддержкой Markdown, в Glitch она отображается как форматированный текст, а в обычном Mastodon — как простой текст без разметки Markdown.
Если написать это в Mastodon Glitch с включённым Markdown:
Когда я использую веб-клиент https://elk.zone для того же поста, там сохраняются некоторые переносы строк, но форматирование шрифтов Markdown всё равно удаляется:
Привет, ребята, извините, что не вернулся к этой теме. Вскоре появится специальная документация по activitypub.
Подробнее об этом можно узнать здесь:
Плагин в настоящее время поддерживает следующие HTML-теги (и их эквиваленты в Markdown для Discourse), и вскоре будет добавлена поддержка pre.
p a h1 h2 h3 h4 h5 ul ol li code blockquote em strong
Думаю, вы имеете в виду (но поправьте меня, если я ошибаюсь), что Mastodon в настоящее время не отображает content объекта Article, а только ссылку на оригинальную статью. Это проблема Mastodon, которая вызывает споры, см. подробнее:
В настоящее время, если вы хотите, чтобы в Mastodon отображалось полное содержание, вам нужно установить тип объекта публикации Note для вашего аккаунта.
Я использую этот способ, но позвольте мне показать это.
Когда пользователь создаёт пост, например, с изображениями, я не получаю тело сообщения с изображениями — только текст. А когда я отвечаю на эту тему на своём собственном экземпляре, изображения тоже отсутствуют.