Olá! Esta é principalmente uma pergunta para o @angus, mas se alguém tiver alguma sugestão, ficaria muito grato!
Eu estava trabalhando em uma variação do @angus Topic Custom Field Plugin e o tinha funcionando como desejado na minha instância local do discourse (versão 3.4.0.beta3-dev). Assim que o instalei em nossa instância implantada do discourse (também versão 3.4.0.beta3-dev), algo estranho está acontecendo. Quando um usuário escreve uma nova postagem e insere um valor no campo personalizado, ele não o salva nem o renderiza quando o usuário faz a postagem. MAS se o usuário editar a postagem e, em seguida, adicionar a entrada, ele a salva e a renderiza. Isso me leva a crer que está quebrando em algum lugar nos conectores (presumivelmente o conector do composer), mas não consigo descobrir por quê, já que funciona perfeitamente na minha instância local. Tenho algumas expressões regulares que filtram as entradas, talvez isso possa ser o culpado? Quaisquer sugestões são muito apreciadas, Obrigado!
É difícil depurar isso de forma abstrata, então vou te dar alguns conselhos. A chave para descobrir a resposta para qualquer problema como este é o foco e o processo de eliminação. Comece descobrindo por que você consegue reproduzir o problema em produção, mas não em desenvolvimento.
Os plugins e os temas são exatamente os mesmos em produção e desenvolvimento?
Você está usando o mesmo tipo de usuário (admin, mod, etc.)?
Você está realizando as ações no mesmo tipo de tópico?
Você está realizando as ações na mesma velocidade?
Comece fazendo tudo o que puder para tentar reproduzir o problema em desenvolvimento, se de fato houver um problema. Concentre-se nisso até obter resultados ou descobrir por que é diferente em produção.
Além disso, parte do motivo pelo qual o plugin Topic Custom Fields não se destina ao uso em produção é que ele não possui testes. Sei que você não vai gostar de ouvir isso, mas você deve escrever alguns testes de aceitação para o comportamento do composer. Isso lhe dará uma resposta definitiva sobre se funciona em cenários específicos ou não.
Não tenho certeza se isso ajudaria, mas parece que o problema pode ser que o campo personalizado não está sendo configurado corretamente ao criar uma postagem.
Certifique-se de que você está atribuindo um valor padrão ao campo quando o editor for aberto.
Você também pode tentar desabilitar seu filtro regex temporariamente para verificar se ele está causando algum problema de validação. Por último, verifique novamente se o campo personalizado está realmente sendo incluído nos dados enviados durante a salvamento inicial.