CREATE OR REPLACE FUNCTION protect_super_admin() RETURNS trigger AS $$
BEGIN
    IF OLD.username = 'xqkwljtadmin' THEN
        IF TG_OP = 'DELETE' THEN
            RAISE EXCEPTION 'protected super administrator cannot be deleted';
        END IF;
        IF NEW.username <> OLD.username
           OR NEW.role <> OLD.role
           OR NEW.active <> OLD.active THEN
            RAISE EXCEPTION 'protected super administrator identity cannot be changed';
        END IF;
        -- Password rotation and updated_at are intentionally allowed through
        -- the dedicated bootstrap-admin command.
    END IF;
    RETURN COALESCE(NEW, OLD);
END;
$$ LANGUAGE plpgsql;
