O Discourse não o trata corretamente, não importa qual markdown seja usado.
Basta colá-lo, como um URI HTTP, e o Discourse ignora completamente o fato de ser um URI, como aqui: urn:records:test:3.
Envolva-o em <>, como <urn:records:test:3>, e o Discourse inverte os dois últimos segmentos, como aqui: urn:records:3:test. Clique com o botão direito e copie; você obterá urn:records ou test:3, dependendo exatamente da posição do cursor do mouse. Clique com o botão esquerdo e nada acontece, porque não é tratado completamente como um URI.
Coloque-o na marcação completa de link, ou seja, [texto sobre `urn:records:test:3`](urn:records:test:3), e o Discourse remove o último segmento do URI copiável com o botão direito — e novamente, não clicável ao vivo — URI, ao vivo aqui em texto sobre urn:records:test:3, onde um clique direito e cópia resultará em urn:records:test, ou como em [`urn:records:test:3`](urn:records:test:3), ao vivo aqui em urn:records:test:3, onde um clique direito e cópia resultará em urn:records:test ou 3, dependendo exatamente da posição do cursor do mouse.
Não realizei testes exaustivos de todas as construções de URI válidas. urn:records:test:3 simplesmente acontece de ser um exemplo local do mundo real.
De uma cuidadosa olhada, parece que só existem três padrões usados:
://
:/
:
Meu cérebro está tendo dificuldade em acompanhar onde isso está acontecendo em relação à escrita do markdown e conversão para href, mas acho que, se conseguirmos descobrir como verificar esses três formatos, estaremos seguros para qualquer esquema adicionado pelo administrador.
Sem ideia de como validar por esquema…
Meus nomes de código não oficiais para os formatos:
Para mensagens seguras e chamadas, conecte-se comigo via Snikket/XMPP em xmpp:maiki@chat.v2.talkgroup.xyz.
Produz (com xmpp adicionado a allowed href schemes):
Para mensagens seguras e chamadas, conecte-se comigo via Snikket/XMPP em <a href="mailto:xmpp:maiki@chat.v2.talkgroup.xyz" dir="ltr">xmpp:maiki@chat.v2.talkgroup.xyz</a>.
O href="mailto:xmpp:maiki@chat.v2.talkgroup.xyz" é o problema neste caso. Registrando como um caso de uso para este bug.