ALTER TABLE rag_document_pages ADD COLUMN IF NOT EXISTS quality_outcome text NULL, ADD COLUMN IF NOT EXISTS quality_warnings jsonb NOT NULL DEFAULT '[]'::jsonb, ADD COLUMN IF NOT EXISTS blocking_reasons jsonb NOT NULL DEFAULT '[]'::jsonb, ADD COLUMN IF NOT EXISTS primary_blocking_reason text NULL, ADD COLUMN IF NOT EXISTS quality_report_sha256 char(64) NULL; DO $$ BEGIN IF NOT EXISTS ( SELECT 1 FROM pg_constraint WHERE conrelid = 'rag_document_pages'::regclass AND conname = 'rag_document_pages_quality_outcome_check' ) THEN ALTER TABLE rag_document_pages ADD CONSTRAINT rag_document_pages_quality_outcome_check CHECK (quality_outcome IN ('accepted', 'warning', 'blocked')); END IF; END $$;