Adicionar vídeo de fundo a certos perfis de usuário?

Nossa abordagem atual é verificar se podemos simplesmente detectar que estamos na página de um determinado usuário através do link canônico e, se estivermos, aplicar o vídeo. Como tal, temos o seguinte:

<script type="text/discourse-plugin" version="0.8">
    api.onPageChange(() => {
        determineUser();
    });
    
    function determineUser() {
        var pageURL = document.querySelector("link[rel='canonical']").getAttribute("href");
        var isUserPage = pageURL.includes("https://www.fortressoflies.com/u/");
        document.documentElement.style.setProperty('--currUsername', pageURL);
        if(isUserPage)
        {
            document.documentElement.style.setProperty('--lastUsername', pageURL);
            $('body').css('background-color', '#'+(Math.random()*0xFFFFFF<<0).toString(16));
        }
    }
</script>

No entanto, isso parece funcionar apenas em uma atualização completa - por algum motivo, clicar de uma página para outra não atualiza a propriedade --currUsername e, em vez de aplicar um fundo de cor aleatória às páginas de usuário, ele aplica um fundo de cor aleatória a todas as páginas se F5 foi pressionado pela última vez em uma página de usuário, enquanto não aplica nada a nenhuma página se F5 foi pressionado pela última vez em uma página que não seja de usuário.

Francamente, não tenho experiência suficiente com JavaScript para saber por que isso aconteceria - parece-me que, em uma mudança de página, a função deveria ser acionada (o que acontece), fazendo com que a variável pageURL seja atualizada, e isso deveria fazer com que a propriedade --currUsername fosse atualizada ao carregar uma página. No entanto, isso só ocorre em uma atualização completa, caso contrário, as variáveis não parecem mudar.

Alguma ideia do que estou errando aqui?