2.5.0.beta5 ломает плагин retort

Я только что обновился с версии 2.5.0.beta4 до 2.5.0.beta5, и теперь два моих скрипта, которые находятся в моей теме, перестали работать. В консоли браузера я вижу следующее:

Content Security Policy: Настройки сайта заблокировали загрузку ресурса из inline ("script-src"). injectGlobalHook.js:1:1760
Content Security Policy: Настройки сайта заблокировали загрузку ресурса из inline ("script-src"). pagewrap.bundle.js:1:1151

Редактирование: похоже, эти сообщения появляются и на моём другом сайте, где установлена другая тема, так что проблема не в теме. Значит, API темы изменился? Хотя эта тема на форуме не обновлялась: Using the JS API

По сути, похоже, что новое обновление Discourse сделало CSP более строгим.
Как мне это исправить? В примечаниях к выпуску я ничего не нашёл о CSP или изменениях в темах.

Вот мой скрипт, который я хочу запустить:

<script type="text/discourse-plugin" version="0.0.1">
api.onPageChange(() => {
	checkMainPageLoadFeeds();
});

function checkMainPageLoadFeeds() {
    // Загружать только на главной странице
    // Похоже, это работает не идеально из-за особенностей работы Discourse, 
    // но хотя бы не вызывает никаких проблем...
    if(/https?:\/\/[^\/]+\/(categories)?$/.test(window.location.href) ){
        // Эти файлы создаются ботом, работающим на том же сервере, что и этот форум
        if($("#development-info").text() == ""){
            $("#development-info").load("/thrive-feed-bot/devforum-and-github");
            $("#announcement-contents").load("/thrive-feed-bot/community-announcements");
        }
    }
    
    $("#development-heading").off("click").on("click", expandTheFeeds);
    $("#announcement-heading").off("click").on("click", expandTheFeeds);
}

function expandTheFeeds(){
    
    let target = $("#development-feed").height() == 200 ? 450 : 200;
    $('#development-feed').animate({ height: target + "px" });
    $('#development-info').animate({ height: (target - 95) + "px" });
    $('#announcement-feed').animate({ height: target + "px" });
    $('#announcement-contents').animate({ height: (target - 95) + "px" });
}

$( document ).ready(function(){
    checkMainPageLoadFeeds();
})
</script>

А вот второй скрипт:

<script type="text/discourse-plugin" version="0.0.1">
api.onAppEvent('modal:body-shown', (data) => {
    
    if(data.title){
    
        if(data.title.match(/.*create.*account.*/)){
        
            $(".create-account.fixed-modal .modal-footer").prepend(getEmailSpamCheckMessage(true));
        }
    } else {
        
        // Возможно, это восстановление пароля
        let element = $(".fixed-modal .forgot-password-modal")
        if(element){
            element.append(getEmailSpamCheckMessage(false));
        }
    }
	
});

function getEmailSpamCheckMessage(register){
    return $.parseHTML("<p class='EmailNoteMessage'>Если вы не получили письмо " + 
                (register ? "подтверждения ", "") + "проверьте папку со спамом.<br>" +
                "Вы также можете посетить наш <a href='https://discordapp.com/invite/FZxDQ4H'>Discord</a> " +
                "если у вас возникли проблемы " + (register ? "с регистрацией" : "с получением писем от нас") + ".</p>");
}
</script>

Я уверен, что уже публиковал их здесь, на meta, но сейчас не могу найти тот пост.

Всё, что вы хотели знать о CSP, здесь:

Я не думаю, что моя проблема связана с CSP, так как на сайте (https://forum.revolutionarygamesstudio.com/), использующем тему по умолчанию, я получаю те же две ошибки. Похоже, мои скрипты даже не пытаются загрузиться. На сайте с пользовательской темой блоки в верхней части страницы остаются пустыми, поскольку для их заполнения используется JavaScript: https://community.revolutionarygamesstudio.com/
Я также пробовал отключать CSP в разделе администратора, но это не помогло исправить мои скрипты, хотя две ошибки исчезли (осталась только одна, исходящая от retort).

Редактирование: Похоже, что что-то изменилось, из-за чего теги <script type="text/discourse-plugin" version="0.0.1"> больше не загружаются вообще.

Редактирование 2: Даже с включенным CSP и пустым списком разрешений это работает:

<script>
console.log('это загрузилось без проблем');
</script> 

А вот это — нет:

<script type="text/discourse-plugin" version="0.0.1">
console.log('это загрузилось без проблем');
</script> 

У вас ошибка JS с плагином retort на https://community.revolutionarygamesstudio.com/

_retort-75a57ba39180becb082af07c57df6a5dd4e16efe0dbd24ec6c4e5d903e138efb.js:188 Uncaught TypeError: Cannot read property 'retort_disabled_categories' of undefined
    at _retort-75a57ba39180becb082af07c57df6a5dd4e16efe0dbd24ec6c4e5d903e138efb.js:188
    at t.module.exports.u.<computed> (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:74640)
    at t.module.exports.u.<computed> (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:74470)
    at require (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:74637)
    at f (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:74596)
    at _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:74561
    at t.module.exports.u.<computed> (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:74639)
    at t.module.exports.u.<computed> (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:74470)
    at require (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:74637)
    at t._prepareInitializer (_application-66bcc4126a5a02dd0d99aed67150087a79a427788cc00feaf5e17bf042b73d75.js:6849)

Что касается другого сайта, я не могу найти checkMainPageLoadFeeds в исходном коде, поэтому не уверен, что он загружен.

Однако его можно найти на https://community.revolutionarygamesstudio.com/:

Поэтому попробуйте исправить вашу ошибку JS с помощью этого плагина.

Это именно то, что я наблюдаю. См. мое обновление в предыдущем посте: похоже, что скрипт с типом "text/discourse-plugin" не выполняется, а обычный тег <script> работает.

Я это заметил, у меня последняя версия retort:
Kuvakaappaus - 2020-05-31 13-07-36

Получается, что ошибка в этом плагине мешает выполнению плагина, определённого в теме?

Я только что протестировал это на Meta, и здесь вызывается корректно:

<script type="text/discourse-plugin" version="0.1">
</script>

Это не официальный плагин, поэтому я мало что о нём знаю, извините.

Да, это возможно. Попробуйте отключить или даже удалить его и посмотрите, решит ли это вашу проблему.

Пересборка без плагина Retort в моём списке «исправляет» проблему. Спасибо за помощь. Я не учёл, что сбой одного плагина может привести к сбою и других. В будущем постараюсь помнить об этом и проверять это перед тем, как сообщать о проблеме.

Я отмечу это как решение, пока жду новую версию Retort, чтобы снова включить его.

Похоже, проблемы с последней версией Discourse уже были сообщены:

Подтверждаю, что исправление в retort решило эту проблему для меня.