Siga a sus rivales: amigos y una clasificación de amigos
Siga a los jugadores que disfruta venciendo, véalos ordenados en su propia pestaña de clasificación y gestione a todos desde una nueva página de Amigos con búsqueda por apodo.

En palabras sencillas
opolyx es más divertido con gente que usted reconoce. Ahora puede seguir a cualquier jugador —toque Seguir en su perfil, o encuéntrelo por apodo en la nueva página de Amigos— y aparecerá en una pestaña de la clasificación en la que solo figuran usted y las personas que sigue.
Seguir es unidireccional, como en la mayoría de las apps sociales: no hace falta que le sigan a usted también y no hay nada que aceptar. Una clasificación es un ranking público de todos modos, así que seguir a alguien no revela nada que no hubiera hecho ya visible.
- Seguir / dejar de seguir desde cualquier página de perfil con un solo botón.
- Una nueva página de Amigos con pestañas Siguiendo y Seguidores y una búsqueda por apodo para encontrar jugadores.
- Una pestaña de Amigos en la clasificación muestra por puntuación su posición y la de todos los que sigue.
- Los recuentos de seguidores y seguidos ahora aparecen como etiquetas en cada perfil.
Para los más técnicos
La migración 0033 añade una tabla follows: una arista dirigida (follower, followee) con una guarda de duplicados por clave primaria, una comprobación de no-autoseguimiento y borrado en cascada. Las lecturas usan RLS de fila propia (cada lado puede leer sus propias aristas); las escrituras pasan por dos RPC security-definer basados en auth.uid() y modelados sobre create_game.
-- follow_user / unfollow_user: idempotent, auth.uid()-scoped, security definer
-- 0031 grant lesson applied: default privileges grant EXECUTE to anon —
-- revoke from public, anon FIRST, then grant execute to authenticated only.Contar los seguidores de un usuario cualquiera lo bloquea ese RLS de fila propia, así que la migración 0034 añade get_follow_counts(p_user): una función security-definer que devuelve seguidores/seguidos. Como los recuentos no son sensibles y los perfiles son de lectura pública (un perfil se muestra a visitantes anónimos), se concede a anon + authenticated, la inversa de los RPC de escritura de 0033.
La consulta de la clasificación de Amigos es simplemente el id del espectador unido con todos a los que sigue, ordenados por XP global. Ambas migraciones se aplicaron a producción mediante la API de gestión de Supabase y se verificaron (permisos: authenticated sí / anon no para escrituras, anon sí para recuentos) antes de lanzar el cambio web.
