-- Task #2 — Templates Validados da Usina Multi-BM
-- Aplicado manualmente via psql (db:push interativo trava com tabelas novas —
-- ver .agents/memory/db-push-rename-prompt.md). Espelha shared/schema.ts.

-- 1) BM principal de validação (no máximo uma por serviço; enforçado no storage).
ALTER TABLE business_managers
  ADD COLUMN IF NOT EXISTS is_principal boolean NOT NULL DEFAULT false;

-- 2) Tabela de Templates Validados (conteúdo REAL e completo, isolado do
--    Template Base/cluster que é esqueleto puro).
CREATE TABLE IF NOT EXISTS multibm_validated_templates (
  id                 varchar PRIMARY KEY DEFAULT gen_random_uuid(),
  service_id         varchar NOT NULL REFERENCES services(id) ON DELETE CASCADE,
  nome               varchar(150) NOT NULL,
  idioma             varchar(10) NOT NULL DEFAULT 'pt_BR',
  categoria          varchar(50) NOT NULL DEFAULT 'UTILITY',
  corpo              text NOT NULL,
  var_examples       jsonb DEFAULT '[]'::jsonb,
  rodape             varchar(255),
  header_type        varchar(20),
  header_example_url text,
  buttons            jsonb,
  status             varchar(20) NOT NULL DEFAULT 'RASCUNHO',
  validation_bm_id   varchar REFERENCES business_managers(id) ON DELETE SET NULL,
  rejection_reason   text,
  created_at         timestamptz DEFAULT now(),
  updated_at         timestamptz DEFAULT now(),
  CONSTRAINT multibm_validated_template_service_nome_uniq UNIQUE (service_id, nome)
);
