-- 054 — F3: dado de entrada (quiz + ingestão pública da landing).
--
-- quizzes: modelos por vertical; o quiz vive na LANDING (bloco MLP).
-- quiz_responses: respostas viram contact_attributes fonte "quiz"
-- (a mais forte em preferência) + evento quiz_respondido.

CREATE TABLE IF NOT EXISTS quizzes (
  id varchar PRIMARY KEY DEFAULT gen_random_uuid(),
  owner_user_id varchar NOT NULL REFERENCES users(id) ON DELETE CASCADE,
  nome varchar(100) NOT NULL,
  vertical varchar(20) NOT NULL DEFAULT 'ecommerce',
  perguntas jsonb NOT NULL,
  ativo boolean NOT NULL DEFAULT true,
  created_at timestamptz DEFAULT now(),
  updated_at timestamptz DEFAULT now()
);

CREATE TABLE IF NOT EXISTS quiz_responses (
  id varchar PRIMARY KEY DEFAULT gen_random_uuid(),
  quiz_id varchar NOT NULL REFERENCES quizzes(id) ON DELETE CASCADE,
  owner_user_id varchar NOT NULL,
  contact_id varchar,
  answers jsonb NOT NULL,
  created_at timestamptz DEFAULT now()
);
CREATE INDEX IF NOT EXISTS idx_quiz_responses_quiz ON quiz_responses (quiz_id);
