Voltar aos projetos

Laboratório de contratos

Resulta

Criei uma biblioteca de resultados tipados com sucesso e erro explícitos, distribuída em ESM e CJS.

Restrição principal

Nenhum caminho deve retornar um estado implícito.

Decisão central

Cada operação representa sucesso e erro no tipo de retorno.

Fluxo do projeto

Fluxo do projeto
Uma operação retorna Result com sucesso ou erro explícito. O contrato é distribuído nos formatos ESM e CJS.

Contexto

Criei o Resulta para estudar resultados tipados e a distribuição de uma biblioteca em ESM e CJS. Cada operação representa sucesso ou erro no retorno. Os dois formatos de módulo expõem o mesmo contrato.

Forças e restrições

  • Nenhum caminho deve retornar um estado implícito.
  • ESM e CJS precisam oferecer o mesmo contrato.

Decisões

  1. API total

    Cada operação representa sucesso e erro no tipo de retorno.

  2. Distribuição dupla

    Distribuí o mesmo contrato nos formatos ESM e CJS.

Evidências

Limites conhecidos

  • A biblioteca explicita erros; não decide políticas de recuperação da aplicação.
  • Não tenho adoção ou uso em produção documentados.
  • Ainda preciso confirmar a licença. A referência main é móvel e não fixa uma versão do código.