Pular para o conteúdo principal

ADR 0005 — TypeORM sem synchronize

  • Status: Aceite
  • Data: 2026-03

Contexto

A BD operacional e a de auth já existem (legado PHP / outros serviços). Deixar o TypeORM criar/alterar colunas em arranque em produção é risco de perda de dados e de drift silencioso.

Decisão

synchronize: false. Schema vive em SQL versionado em docs/sql/ e docs/sql/migrations/. Entidades TypeORM mapeiam o que já está na BD.

Consequências

  • Positivo: deploys da API não mutam schema; revisões de SQL são explícitas no PR.
  • Negativo: entidade nova sem migration correspondente falha em runtime; onboarding precisa de aplicar SQL à parte.
  • Processo: alteração de coluna = ficheiro em docs/sql/migrations/ + nota no PR.