Pular para conteúdo

0030 — Adota o native por padrão (ADR central 0033)

Status: Aprovado · Responsável: Gustavo Madruga · Atualizado em: 2026-09-14 · Decidido em: 2026-09-14

Decisão local do central-backend que aponta a decisão CENTRAL 0033 da casa. Os números não se correspondem.

Contexto

Server Micronaut da casa é native por padrão, e jar só entra com motivo registrado — um bloqueio de native numa decisão do app, ou host sem a arquitetura do binário (ADR central 0033, que substitui a central 0022 citada na local 0018). O central-backend já servia native, mas o pipeline.yml ainda buildava e deployava um par jar de canário. Faltava o rastro local da adoção e a retirada do jar.

Decisão

Desde 2026-09-14 o build.targets do docs/app.json contém só native, e o pipeline.yml segue a variante native do template: sem o job build_jar e sem o step de deploy jar. O Dockerfile JVM fica no repo como par do Dockerfile.native, para build e diagnóstico locais.

Consequências

  • Não há motivo de jar a registrar: nenhum bloqueio de native está aberto, e o e2e native cobre a superfície do binário.
  • A saída de emergência é a tag imutável <imagem>:<sha>-native do smoke, não um deploy jar.
  • O recurso jar do canário no Coolify deixa de receber imagem nova; desligá-lo é operação de infraestrutura, fora deste repo.
  • Este RD é ponteiro: divergência de mérito sobre native × jar se resolve no ADR central 0033.

Alternativas consideradas

  • Manter o jar por dispatch manual, como fallback: descartado. A 0033 exige motivo registrado para o jar, e a tag imutável do native já cobre o rollback.