No miente: completa

Un modelo de lenguaje no consulta un catálogo de hechos: genera la continuación más plausible de lo que sabe. En prosa eso produce frases bonitas; en código produce paquetes que suenan reales, funciones que nunca existieron y opciones de configuración lógicas pero falsas. Lo peligroso no es que a veces falle —falla en lo visible también—: es que la mentira plausible viene envuelta en la misma confianza que la verdad, sin ningún marcador que las distinga a simple vista.
Las tres familias que muerden en software
- Dependencias inventadas
«instala el paquete x-validate-forms»: existe en la fantasía del modelo; en el registro público, no. O existe con otro nombre y lo sugiere cruzado.
- Funciones y APIs falsas
usa user.deleteForever() o el parámetro send_email=true de una API real… que nadie documentó jamás
- Configuraciones imposibles
claves de entorno o opciones con nombres lógicos que el sistema ignora en silencio: la config «activada» nunca se activó
Por qué la tercera es la más traicionera
| Familia | Qué pasa al ejecutar | Ventana de detección |
|---|---|---|
| Dependencia inexistente | el instalador falla: «package not found». Ruidosa, inmediata | fácil: se atrapa sola… si no la instalas desde un script que la rebautiza |
| Función/API falsa | error «is not a function» o 404 de la API: ruidosa, al primer uso | media: se ve corriendo la función, no leyendo |
| Configuración inventada | NADA. El sistema ignora la clave desconocida y sigue como si nada | difícil: el «modo seguro» que creíste activar nunca se activó |
El protocolo de verificación de 90 segundos
El protocolo convierte la desconfianza en tres movimientos mecánicos
Antes de aceptar cualquier codigo generado que mencione algo externo, verifica:\n\n1. PAQUETES (30 s): busca el nombre exacto en el registro publico (npm / PyPI / etc).\n Copia el enlace de la pagina. Si no hay pagina, no hay paquete. Punto.\n2. FUNCIONES Y PARAMETROS DE API (40 s): ve a la documentacion OFICIAL del servicio\n (no al entrenamiento del modelo) y busca el nombre con ctrl-f. Si la documentacion\n no lo menciona, tratalo como inexistente hasta probar lo contrario.\n3. CONFIGURACION (20 s): ¿que evidencia mostraria que esta opcion SI esta activa?\n Pide esa evidencia: un log, un comportamiento observable, una consulta.\n\nRegla de oro: la pregunta nunca es "suena correcto" — es "donde lo verifico".\nSi no hay lugar donde verificar, no hay permiso para usarlo.Para reforzar
Prueba
La IA configuró tu app con la opción «session_secure = true» en el archivo de ajustes. La ejecución no da ningún error. ¿Cuál es el procedimiento correcto?
Si la IA escribió cien líneas correctas, la probabilidad de que la función que inventó en la línea 101 sea real es alta.
Detecta la instalación a ciegas
Un alumno cuenta su sesión con la IA. Señala el momento en que ocurrió el daño:
Marca la línea o las líneas con error y pulsa Comprobar.
Toma el último bloque de código que la IA te dio para tu proyecto y pásale el protocolo de 90 segundos completo. Anota cuántos nombres externos mencionaba y cuántos sobrevivieron a la verificación —el número de bajas es tu línea base de desconfianza productiva.
La confianza se construye verificando; la catástrofe se construye asumiendo.
Tu texto se guarda sólo en este dispositivo.
Comentarios
Inicia sesión para comentar.
Todavía no hay comentarios. Sé la primera persona en opinar.