O que você gostaria que fosse feito?
RE: https://community.unix.com/
Acabamos de concluir a migração para o Discourse, mas manteremos nossos fóruns antigos acessíveis até 2021, pois temos duas décadas de código legado, do qual cada um de nossos membros se orgulha (e em que investiu muito trabalho).
Para nossa equipe, que gostaria de verificar a integridade do código migrado de tempos em tempos, gostaríamos de um pequeno plugin para separar o value do topic_custom_fields e adicionar apenas o inteiro (que é o ID do tópico do fórum legado) ao TopicViewSerializer, de modo que o serializador JSON tenha o par chave-valor adicional:
"import_id" : <thread_id_of_legacy_forum>
Veja a consulta abaixo como exemplo, para que o valor adicionado ao TopicViewSerializer (para este topic_id do Discourse) seja:
"import_id": 284071
postgres=# \c discourse
Você agora está conectado ao banco de dados "discourse" como usuário "postgres".
discourse=# select * from topic_custom_fields where name like '%import_id%' and topic_id = 377947;
id | topic_id | name | value | created_at | updated_at
--------+----------+-----------+---------------+----------------------------+----------------------------
239520 | 377947 | import_id | thread-284071 | 2020-04-22 03:20:03.968513 | 2020-04-22 03:20:03.968513
(1 linha)
Gostaríamos de usar essa propriedade em um componente de template da seguinte forma:
{{import_id}}
Porque gostaríamos de um pequeno componente de template <span> para o plugin-outlet topic-category, que se pareceria com isto (e visível apenas para nosso nível de confiança especificado):
<span class='import-id'>Tópico do Fórum Legado <a class='import-id-link' href='https://www.unix.com/showthread.php?t={{import_id}}'>{{import_id}}</a></span>
Quando você precisa que seja feito?
Qualquer momento nas próximas semanas está bom. Não há muita pressa.
Qual é o seu orçamento, em $ USD, que você pode oferecer para esta tarefa?
Todas as propostas razoáveis para este pequeno plugin são bem-vindas.
Informações Adicionais
Planejamos tornar este código livremente disponível para todos que realizaram uma migração semelhante. No entanto, é muito possível que outros fóruns legados não tenham uma preocupação tão alta com a integridade dos dados para código legado, e, portanto, é possível que nosso fórum seja o único a usar este plugin.
Eu fiz uma descrição “excessivamente complexa” e, talvez, “imprecisa” sobre este requisito ontem; então, acho que a descrição acima é mais simples e fácil de entender (espero):
Nota de Rodapé
Trabalhei sozinho neste pequeno plugin por vários dias, minha primeira tentativa de criar um plugin do Discourse, e continuei recebendo um valor null para import_id no TopicViewSerializer.
Atualização
Graças a um pouco de gentileza e orientação, agora tenho a parte do serializador desta tarefa funcionando.

