Ошибка getBoundingClientRect в Glimmer-site-header.gjs:144 возникает только при включённом пользовательском плагине

Привет,

В последней версии Discourse (Ember 6.6.0) я получаю эту ошибку в консоли браузера, но только когда включён мой пользовательский плагин:

glimmer-site-header.gjs:144 Uncaught TypeError: Cannot read properties of null (reading 'getBoundingClientRect')
    at recalculateHeaderOffset (glimmer-site-header.gjs:144)
    at setupHeader (glimmer-site-header.gjs:212)
    ...

Что я уже предпринял:

• При отключённых всех пользовательских плагинах — ошибки нет.
• При включённом только моём плагине (на стандартной теме) — ошибка появляется.
• Поиск в плагине по d-header, site-header, glimmer-site-header, getBoundingClientRect:
◦ Плагин никогда не обращается к шапке; он лишь добавляет компоненты через коннекторы:
:black_small_square: discovery-list-area/…
:black_small_square: below-site-header/…
:black_small_square: below-main-outlet/…
• Попробовал оборонительно создавать заглушку элемента .d-header в инициализаторе плагина, если его нет, но ошибка всё равно возникает.
• На страницах, где возникает ошибка, document.querySelector(‘.d-header’) возвращает элемент.

Вопросы:

  1. При каких условиях glimmer-site-header может вызвать element.getBoundingClientRect() для null?
  2. Есть ли что-то особенное в использовании коннектора below-site-header или добавлении классов к body, что могло бы помешать работе нового компонента шапки?
  3. Существует ли рекомендуемый способ, чтобы плагины могли безопасно сосуществовать с glimmer-site-header и избежать такого обращения к null?

Любые подсказки или информация об известных проблемах в этой области были бы очень полезны.

Не знаю, является ли это вашей проблемой, но вместо коннекторов теперь следует использовать api.renderInOutlet. Мне этот способ кажется более интуитивным и менее хлопотным.