Bug de Redirecionamento do OAuth

Olá. Usamos o Discourse para o nosso fórum no Exercism. Obrigado pelo seu trabalho nele.

Parte do nosso fluxo é que os problemas do GitHub são automaticamente fechados com uma solicitação para criar uma postagem no fórum em vez disso, com o corpo da postagem do fórum como parte da URL. Isso funcionou muito bem até uma postagem hoje.

Se você visitar este problema do GitHub e clicar no link “this link”, você verá um loop de oauth que termina em “Oops. O software que alimenta este fórum de discussão encontrou um problema inesperado. Pedimos desculpas pelo inconveniente”.

Se você já estiver logado no fórum, funciona e (pelo menos funciona para mim, tive alguns relatórios mistos de nossos mantenedores).

Suspeito que haja algum problema de codificação ocorrendo na configuração do oauth ou no caminho de redirecionamento.

Caso isso não esteja claro, gravei um Loom de 15s para demonstrar: Latest topics - Exercism - 4 September 2025 | Loom

Olá @iHiD, obrigado pelo relatório e pela reprodução. Parece ser um erro de codificação na forma como está vinculando ao fórum:

Suspeito que você esteja perdendo uma codificação de URL no corpo da issue.

O link fornecido é:

https://forum.exercism.org/new-topic?title=Group%20all%20GitHub%20Actions%20updates%20into%20a%20single%20larger%20pull%20request&body=https://docs.github.com/en/code-security/dependabot/working-with-dependabot/dependabot-options-reference#groups--%0D%0A%0D%0AReduces%20the%20number%20of%20pull%20requests%20to%20review%20and%20voids%20blockages%20like:%0D%0A*%20#23%20vs.%0D%0A*%20#27%20vs.%0D%0A*%20#28%20by%20putting%20them%20all%20in%20a%20single%20pull%20request&category=free-pascal

O corpo inclui texto que deve ser codificado em URL, como barras e símbolos de libra.

Embora funcione diretamente, porque os navegadores são inteligentes e lidam com coisas assim, nossa lógica de redirecionamento define um URL de destino através dos parâmetros fornecidos e visa quaisquer parâmetros que foram originalmente dados - sem a codificação adequada, suspeito que é isso que está quebrando esse redirecionamento específico.

Usando um link de URL com o corpo codificado, não tenho esses problemas. O link devidamente codificado se parece com isto:

https://forum.exercism.org/new-topic?title=test&body=https%3A%2F%2Fdocs.github.com%2Fen%2Fcode-security%2Fdependabot%2Fworking-with-dependabot%2Fdependabot-options-reference%23groups--%250D%250A%250D%250AReduces%2520the%2520number%2520of%2520pull%2520requests%2520to%2520review%2520and%2520voids%2520blockages%2520like%3A%250D%250A*%2520%2323%2520vs.%250D%250A*%2520%2327%2520vs.%250D%250A*%2520%2328%2520by%2520putting%2520them%2520all%2520in%2520a%2520single%2520pull%2520request&category=free-pascal&category=free-pascal
1 curtida

Obrigado pela resposta rápida e pela confirmação!

Vou pedir para alguém da nossa comunidade consertar isso então. Pode considerar isto como encerrado! :slight_smile:

1 curtida