-- 015_rename_to_identities.sql
-- Rename global 'talents' table to 'identities' and update foreign keys
-- This reflects the broader scope: identities can be actors, news subjects, family members, etc.

-- 1. Rename 'talents' table to 'identities'
ALTER TABLE public.talents RENAME TO identities;
ALTER TABLE dev.talents RENAME TO identities;

-- 2. Rename 'talent_id' column in 'identity_bindings' to 'identity_id'
DO $$ 
BEGIN
    IF EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = 'public' AND table_name = 'identity_bindings' AND column_name = 'talent_id') THEN
        ALTER TABLE public.identity_bindings RENAME COLUMN talent_id TO identity_id;
    END IF;

    IF EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = 'dev' AND table_name = 'identity_bindings' AND column_name = 'talent_id') THEN
        ALTER TABLE dev.identity_bindings RENAME COLUMN talent_id TO identity_id;
    END IF;
END $$;

-- 3. Update indexes if needed
DROP INDEX IF EXISTS public.idx_identity_bindings_talent_id;
CREATE INDEX IF NOT EXISTS idx_identity_bindings_identity_id ON public.identity_bindings(identity_id);

DROP INDEX IF EXISTS dev.idx_identity_bindings_talent_id;
CREATE INDEX IF NOT EXISTS idx_identity_bindings_identity_id ON dev.identity_bindings(identity_id);
