@jumentix/shared-contracts

v0.1.0

Published

Shared OpenAPI/AsyncAPI contract resolution helpers for the Jumentix SDKs.

Readme

@jumentix/shared-contracts

Auxiliares compartilhados de resolução de contratos OpenAPI/AsyncAPI para os pacotes SDK do JumentiX.

Propósito

Os três pacotes SDK (sdk-rest-client, sdk-websocket-client, sdk-grpc-client) carregam cada um um documento de API canônico da árvore spec/ do repositório. O walk-up que encontra esse documento estava copiado em cada pacote, e as cópias divergiam exatamente da forma como código duplicado diverge. Este pacote possui a implementação única:

  • loadCanonicalSpec — faz o parse de um spec canônico a partir de um caminho base explícito ou subindo a partir de um diretório de módulo, falhando com erro descritivo quando nenhum existe.
  • candidateSpecPaths — o walk-up que monta as localizações candidatas sob spec/.

Os pacotes SDK consomem esses auxiliares e permanecem como wrappers tipados finos sobre o próprio artefato (1.0.0.yml, 1.0.0.websocket.yml, 1.0.0.grpc.yml).

Os contratos canônicos versionados permanecem na raiz do repositório:

Este pacote possui um módulo de origem real e sua própria suíte de testes (Requisito 112) e é medido para cobertura.