Files
Investidor-V2/docs/implementation/adr/ADR-005-temporal-validity.md
nala 4f35313d06
tests / ci (push) Canceled after 0s
novas funcionalidades dos formulario
2026-10-02 11:13:37 +02:00

1.2 KiB

ADR-005 — Vigência temporal e snapshots

  • Estado: Aceite como convenção de contrato; aplicar por domínio.
  • Data: 2026-10-01
  • Contexto: schema usa valid_from/valid_until, valid_to, revisões e snapshots; não há convenção temporal única para todo o legado.

Decisão

Separar tempo de validade no domínio do instante de registo/auditoria. Para novos intervalos de validade com datas, adoptar intervalo inclusivo no início e exclusivo no fim ([valid_from, valid_to)), valid_from obrigatório quando a regra de domínio o exigir e fim aberto representado por NULL; UTC/timestamptz para instantes e date para vigência civil. Snapshots imutáveis guardam versão do catálogo e IDs de origem quando resultado depende de dados versionados. Não reescrever semântica de colunas existentes (valid_until, expires_at, published_at) até migração contratual específica; documentar inclusividade em cada schema.

Alternativas e consequências

Fim inclusivo cria ambiguidades em fronteiras e fusos; o intervalo semiaberto simplifica composição. Bitemporalidade integral foi adiada por não estar exigida em todas as entidades. Importações e correcções históricas preservam proveniência e não actualizam snapshots passados.