Onebox falhou para vídeos >5MB: Servidores retornando 200 OK em vez de 206 Partial Content

Olá a todos,

Estou enfrentando um problema específico em que vídeos maiores que 5MB falham ao gerar pré-visualizações Onebox na minha instância do Discourse (instalação Docker padrão), enquanto os mesmos links de vídeo funcionam perfeitamente em outros sites do Discourse.

O Problema:
Quando publico um link de vídeo (por exemplo, um arquivo .webm de 5,1MB), o Onebox falha. Eu isolei o problema em uma falha na negociação da requisição Range.

Resultados da depuração no console do Rails:

  • Teste Ruby Manual (Sucesso): Usando Net::HTTP padrão e definindo manualmente o cabeçalho Range: bytes=0-10, eu recebo com sucesso um 206 Partial Content do servidor de origem.
  • Teste do Sistema Discourse (Falha): Quando o Discourse tenta buscar o mesmo URL via FinalDestination.new(url).get, ele recebe um 200 OK (Net::HTTPOK) em vez de um 206. Consequentemente, ele tenta baixar o arquivo inteiro, atinge o limite de 5MB de MAX_REQUEST_SIZE_BYTES, e o Onebox falha com um erro de “tamanho muito grande”.

Eu já testei as seguintes configurações, mas o problema persiste:

  1. Definir uma string semelhante a um navegador em onebox_user_agent.
  2. Adicionar o domínio de origem a force_custom_user_agent_hosts.
  3. Verificar se o servidor não tem um proxy global configurado (env | grep -i proxy está vazio).
  4. Testar o mesmo URL em outras instâncias do Discourse, onde ele pré-visualiza perfeitamente.

A Pergunta:
Por que uma instância do Discourse falha ao negociar uma requisição Range (206) enquanto outra instância, apontando para o mesmo URL exato, é bem-sucedida na mesma rede?

Existe alguma configuração interna específica, middleware de segurança ou lógica do FinalDestination que possa estar removendo os cabeçalhos Range ou fazendo com que o servidor remoto retorne uma resposta 200 completa?

Qualquer informação ou sugestão sobre onde procurar a seguir seria muito apreciada!