Image: AI generated
La Magia de los 30 Segundos
“Hazme un backend.” La IA recomienda Supabase. Con una sola URL obtienes PostgreSQL, autenticación, almacenamiento y suscripciones en tiempo real. El login funciona en 30 segundos. El CRUD está listo en 2 minutos.
Tres meses después, nadie sabe quién escribió esas políticas de RLS (Row Level Security).
Por Qué la IA Lo Recomienda
Supabase se convirtió en la opción predeterminada del vibe coding no por superioridad técnica. Es porque los tutoriales dominan los datos de entrenamiento.
Cursor, Bolt, v0, Lovable — escribe “hazme un backend” en cualquier herramienta de programación con IA y aparece Supabase. La IA recomienda el patrón que ha visto con mayor frecuencia. No el mejor patrón.
Zhang et al. (ACL 2025) demostraron que 7 LLMs favorecen sistemáticamente a proveedores específicos sin instrucción explícita, y modifican de forma autónoma el código de entrada para insertar a los proveedores preferidos. Los usuarios creen que lo que recomienda la IA es lo mejor. La IA recomienda lo que aparece con más frecuencia en los datos de entrenamiento. Esta es la versión de infraestructura del sesgo de adulación.
Cuando Ocultas Lógica en una Caja Negra
El verdadero problema de Supabase no es Supabase en sí. El problema es que la lógica de negocio entra en una caja negra.
1. Políticas RLS = Lógica de Negocio Oculta
Row Level Security es una función poderosa. El problema es: cuando la IA genera políticas RLS, ¿dónde viven?
- No en el código. Están en el panel de Supabase.
- No en git. Sin control de versiones.
- No en los tests. Sin validación en CI.
La respuesta a “¿quién puede acceder a esta tabla?” no existe en el codebase. Tienes que iniciar sesión en la consola de Supabase para averiguarlo. Los agentes no pueden leer esto.
¿Si la IA modifica políticas RLS durante una “limpieza”? La autenticación se rompe. Sin tests, nadie lo nota. Se descubre después de que los datos de clientes quedan expuestos en producción.
Esto no es una hipótesis. En CVE-2025-48757, más de 170 aplicaciones generadas por Lovable tuvieron sus bases de datos de Supabase completamente expuestas por falta de RLS. 303 endpoints vulnerables filtraron correos electrónicos, claves API e información de pago. En enero de 2026, la red social de IA Moltbook se desplegó con RLS desactivado, exponiendo 1,5 millones de tokens API y 35.000 correos electrónicos.
2. Edge Functions = La Segunda Caja Negra
La lógica de negocio vive en dos lugares: el código del frontend y las Supabase Edge Functions. La IA tiene que decidir qué lógica va dónde. La IA se equivoca en ese juicio.
Un cálculo de descuento de pagos vive en una Edge Function. La IA refactoriza el frontend y recrea el mismo cálculo allí. Ahora el descuento se aplica dos veces. Se descubre en el informe de ingresos 3 semanas después.
3. Migración = El Coste de Salida
Abandonar Supabase requiere desmantelar cuatro cosas simultáneamente:
- Auth — estructura JWT atada a Supabase Auth, callbacks de OAuth, gestión de sesiones
- Storage — estructura de buckets, políticas de acceso, firma de URLs
- Realtime — suscripciones WebSocket, canales Presence
- Políticas RLS — todas las reglas de negocio no documentadas
Cada una parece un trabajo de un día, pero las cuatro están entrelazadas. Cambia Auth y RLS se rompe. RLS se rompe y el acceso a Storage queda abierto. Las URLs de Storage cambian y el frontend se rompe.
Esto es vendor lock-in. Entrar toma 30 segundos. Salir toma 3 meses.
La Versión Cloud del Infierno de los Puertos
El infierno de puertos que sufren los vibe coders en local — la IA levanta servidores, no los mata, los puertos se lían, nadie sabe qué está corriendo — esto sube al nivel de infraestructura con Supabase.
Infierno local de puertos: los procesos son invisibles. Infierno de Supabase: la lógica de negocio es invisible.
Ambos tienen la misma estructura. Lo que los agentes crean, los agentes no pueden rastrear.
¿Cuál Es la Alternativa?
No se trata de dejar de usar Supabase. Se trata de no poner la lógica de negocio en una caja negra.
Principio: cada decisión debe vivir en el codebase.
- Reglas de autenticación → declaradas en código, validadas con tests
- Políticas de acceso → declaradas con DDL + Rego, validadas en CI
- Lógica de negocio → existe en un único lugar, sin duplicación
- Configuración de infraestructura → declarada con Terraform/IaC, versionada en git
Usar Supabase para prototipar es razonable. Pero en el momento en que llevas un prototipo a producción, debes extraer la lógica de la caja negra y moverla a una capa declarativa.
Para que los 30 segundos de magia no se conviertan en 3 meses de dolor.
¿Está tu política RLS en git?
¿Tus Edge Functions tienen tests?
¿Estás seguro de que una “limpieza” de la IA no romperá la autenticación?
Supabase no es el problema. Ocultar decisiones donde no se pueden ver es el problema.
Artículos Relacionados
- Reins Engineering — IA con Riendas — El opuesto de la caja negra. Dirige agentes con contratos deterministas.
- Hurl Detiene la Deriva del Vibe Coding — Declara el comportamiento de la API en texto plano y bloquéalo con un trinquete. Si RLS vive fuera del codebase, Hurl tampoco puede atraparlo.
- Un Codebase Operable por Agentes — La UI del panel es ilegible, no verificable y no persistente para los agentes. El codebase debe ser la fábrica.
- El Sesgo de Adulación de la IA Es una Función Comercial — El mecanismo detrás de por qué la IA recomienda Supabase. Dale una opinión y adulará; dale hechos y corregirá.
- yongol — La Quilla del SaaS de Programación con IA — La alternativa a las cajas negras. Declara decisiones en 10 SSOTs y valídalas de forma cruzada.
Fuentes
- Zhang, Y. et al. (2025). “The Invisible Hand: Unveiling Provider Bias in Large Language Models for Code Generation.” ACL 2025. arxiv.org/abs/2501.07849
- CVE-2025-48757 (2025). Lovable-generated 170+ apps exposed entire Supabase DBs due to missing RLS. ameeba.com
- OG William (2026). “Moltbook Hack: Supabase Vibe Coding.” 1.5M API tokens + 35K emails exposed. blog.ogwilliam.com
- Willison, S. (2025). “Supabase MCP can leak your entire SQL database.” simonwillison.net
- Cursino, D. et al. (2026). “Speed at the Cost of Quality? The Impact of AI Coding on Software.” MSR 2026. arxiv.org/abs/2511.04427
- Storey, M.-A. (2026). “From Technical Debt to Cognitive and Intent Debt.” arxiv.org/abs/2603.22106
- Encore (2026). “Backend as a Service (BaaS) in 2026: Providers, Tradeoffs, and Migration Paths.” encore.dev