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.