-- 077 — Aceite do onboarding vira prova jurídica de verdade
--
-- A tabela nasceu na 065 com ip + user_agent e parou aí. Isso não sustenta uma
-- discussão: sob CG-NAT o IP sozinho NÃO identifica quem clicou (Decreto
-- 8.771/2016, art. 11 §3º — é preciso a PORTA de origem), e guardar só o número
-- da versão do texto não prova O QUE a pessoa leu, já que o documento pode ser
-- editado depois em /admin/terms.
--
-- O padrão-ouro da casa já existe em server/waCloudConsent.ts (recordConsent):
-- append-only, com ip + porta + snapshot do texto EXATO exibido. Esta migration
-- alinha o onboarding a ele — o cliente vai aceitar aqui a veracidade dos dados
-- e o uso da marca no agente RCS, e isso precisa valer como prova.
--
-- Aditiva e idempotente: colunas nulas, nenhuma linha existente é tocada.

ALTER TABLE onboarding_acceptances
  ADD COLUMN IF NOT EXISTS port         integer,
  ADD COLUMN IF NOT EXISTS text_snapshot text,
  ADD COLUMN IF NOT EXISTS doc_version   varchar(20);

COMMENT ON COLUMN onboarding_acceptances.port IS
  'Porta de origem TCP — sem ela o IP não identifica sob CG-NAT (Decreto 8.771/2016 art. 11 §3º)';
COMMENT ON COLUMN onboarding_acceptances.text_snapshot IS
  'Texto EXATO exibido no momento do aceite — o documento pode mudar depois';
