Resumo

  • A IESG anunciou em 18 de agosto de 2026 a aprovação de draft-ietf-netmod-yang-semver-28 como Proposed Standard. O texto define versão semântica para módulos YANG e sua exposição opcional na YANG Library.
  • O identificador registra como o mantenedor classifica a relação entre artefatos. Não comprova conjunto coerente no servidor, recurso habilitado, ausência de desvio, comportamento correto nem autoridade para alterar produção. A admissão precisa do esquema efetivo e de evidência executável do alvo.

Uma preferência numérica não é uma licença

A abertura é hipotética. recommended-min-version permite declarar a versão compatível mais antiga preferida. A comparação usa apenas os três números: ignora modificador de compatibilidade e dados de pré-lançamento ou compilação. Assim, um major superior e até uma variante _non_compatible podem satisfazer o mínimo.

Se não houver escolha viável, o compilador deve avisar e seguir a resolução normal de imports YANG. A intenção é preservar acoplamento frouxo, não criar uma trava. Converter “mínimo atendido” em “mudança autorizada” atribui ao campo uma decisão que ele não tomou.

A aprovação torna a linhagem legível

A versão 28 de “YANG Semantic Versioning” aguarda o RFC Editor e ainda é Internet-Draft. O trabalho vem do NETMOD; o anúncio registra consenso geral, alguma divergência e ferramentas em desenvolvimento.

ysv:version segue X.Y.Z_COMPAT, com dados opcionais de pré-lançamento e construção. Major normalmente indica quebra de compatibilidade; minor, acréscimo compatível; patch, edição compatível. Nome e versão identificam uma revisão e conteúdo específicos, e o servidor pode declarar essa versão pela YANG Library.

Isso melhora proveniência e seleção de dependências. Continua sendo uma declaração sobre um artefato, não uma medição do dispositivo que o consome.

Compatibilidade tem um escopo

Autores atribuem os números e podem escolher incremento maior ou pular versões. O próprio texto afirma que o número não garante que a mudança descrita ocorreu nem que afeta certo consumidor. A diferença concreta exige comparação de esquemas; o impacto exige validação de instâncias e testes de implementação.

Um módulo isolado pode ser compatível enquanto o alvo não é. Outro módulo pode fazer augmentation, um feature pode estar desligado e um deviation pode remover ou restringir um nó. A classificação original permanece verdadeira, mas a árvore efetiva muda.

Os sufixos _compatible e _non_compatible preservam ainda a memória de ramos limitados. Depois de _non_compatible aparecer no mesmo major e minor, ele não pode desaparecer naquele ramo. Guardar só três números apaga essa evidência.

O servidor anuncia um conjunto

YANG Library inventaria módulos, revisões, módulos só importados, submódulos, recursos ativados, desvios e locais. A versão semântica acrescenta informação; não substitui esse conjunto. O rascunho deixa a coerência do conjunto fora do escopo e cita trabalhos vizinhos como YANG packages.

RFC 7950 explica a composição do modelo, RFC 8525 permite descobrir o alvo e RFC 9907 organiza rótulos de revisão. Dois servidores ainda podem anunciar a mesma versão central e oferecer esquemas efetivos diferentes.

Antes da admissão, a automação deve resolver o conjunto completo, compilar e comparar o esquema, validar dados representativos e testar a combinação de software e configuração. Só então o número se conecta a uma consequência operacional.

Cada rejeição precisa conservar sua causa

Registrar restrição, artefato e hash, identificador completo, instantâneo da YANG Library, hash do esquema efetivo, diferença antes/depois, validação de dados, testes e responsável pelo risco.

Mínimo não atendido é seleção; sufixo incompatível é política de linhagem; recurso ausente ou desvio conflitante é esquema-alvo; regressão é implementação; falta de aprovação é governança. Chamá-los todos de “versão errada” incentiva uma exceção cega.

O número deve reduzir candidatos no começo. A última porta pertence ao alvo compilado, ao código em execução e ao dono das consequências.

Fontes