ATLAS + GOTCHA -- Parte 1
Por qué los prompts de IA fallan y qué hacer al respecto
El Problema
Como developers, estamos entrenados para pensar en términos deterministas. Escribes código, lo compilas, ejecutas los tests. Misma entrada, misma salida. Siempre. El compilador no se “siente creativo” un martes por la mañana y decide generar bytecode diferente. Tu suite de tests no pasa hoy y falla mañana con el mismo código. El determinismo es la base de todo lo que construimos.
Entonces nos sentamos delante de un modelo de IA y esperamos lo mismo.
Pero los modelos de lenguaje no son sistemas deterministas. Son probabilísticos. Cada respuesta es una selección ponderada entre millones de posibles outputs. Los ajustes de temperature, el sampling de tokens, el tamaño del context window — todo esto introduce variación. El mismo prompt, enviado dos veces, puede producir dos resultados diferentes. Esto no es un bug. Así es como funcionan. Y esa diferencia — esperar resultados deterministas de un sistema probabilístico — es la causa raíz de la mayoría de frustraciones con los prompts.
¿Y qué hacen los developers? Escriben prompts vagos y esperan lo mejor. Abres tu herramienta de IA. Escribes “crea una API para gestión de usuarios”. Te devuelve… algo. Quizás funciona. Quizás no. Quizás usa un framework que no quieres. Quizás el esquema de base de datos no tiene sentido para tu proyecto.
Esto pasa todos los días. Los developers escriben prompts como deseos — vagos, optimistas y desconectados de su arquitectura real. La IA hace lo que puede, pero “lo que puede” sin contexto es solo una suposición. No puedes eliminar la naturaleza probabilística del modelo, pero sí puedes reducir drásticamente el espacio de respuestas posibles siendo preciso con lo que necesitas.
Yo he pasado por eso. Soy cloud architect y trabajo con Azure, Scaleway, infraestructura de Sovereign Cloud y .NET en entornos enterprise. Cuando empecé a usar IA para desarrollo, mis prompts eran como los de todos: cortos, genéricos y frustrantes.
Entonces encontré un patrón. Bueno, dos patrones que funcionan juntos.
La Solución
ATLAS es un checklist humano. Te dice a TI qué pensar antes de hablar con la IA:
- Architect — Definir el problema y los límites de la solución
- Trace — Mapear flujos de datos y dependencias
- Link — Conectar componentes e integraciones
- Assemble — Construir y cablear todo junto
- Stress-test — Validar en condiciones reales
GOTCHA es un framework de instrucciones para la IA. Le dice a la IA CÓMO procesar tu petición:
- Goals — Qué debe conseguir la IA
- Orchestration — Cómo se coordinan los componentes
- Tools — Qué puede usar la IA
- Context — Conocimiento de fondo y restricciones
- Heuristics — Guardrails de comportamiento y quality gates
- Args — Parámetros e inputs específicos
Juntos, ATLAS se asegura de que has hecho tu trabajo previo. GOTCHA se asegura de que la IA entiende el encargo.
Execute
Aquí tienes un antes/después real. Misma tarea: crear una API de usuarios.
Antes (prompt típico):
Create a users API with CRUD operations
Eso es todo. Sin límites, sin flujos de datos, sin restricciones. La IA va a adivinar todo.
Después — Paso 1: TÚ piensas con ATLAS
Primero, pasas por el checklist de ATLAS. Este es tu trabajo previo, antes de abrir la herramienta de IA:
| ATLAS Phase | Lo que decides |
|---|---|
| Architect | REST API para gestión de usuarios. JWT auth. Debe manejar 1000 usuarios concurrentes. PostgreSQL como base de datos. |
| Trace | La petición llega desde API Gateway -> Controller -> Service -> Repository -> PostgreSQL. JWT se valida en middleware. |
| Link | Parte de una arquitectura de microservices en Kubernetes. Otros servicios se comunican por message queue. La API está detrás de un gateway. |
| Assemble | Orden de construcción: esquema de base de datos primero, luego capa de repository, capa de service, controllers, middleware, y tests al final. |
| Stress-test | Validar con 1000 conexiones concurrentes. Comprobar edge cases de expiración de JWT. Verificar que las respuestas de error siguen RFC 7807 problem details. |
Ahora sabes exactamente lo que necesitas. Tú has tomado las decisiones. La IA no tiene que adivinar.
Después — Paso 2: Mapear ATLAS a GOTCHA para la IA
Cada decisión de ATLAS se mapea a una capa de GOTCHA. Así es como traduces tu razonamiento en un prompt que la IA puede procesar:
=== GOALS (from Architect) ===
Build a REST API for user management with JWT authentication.
Must handle 1000 concurrent users. PostgreSQL backend.
=== ORCHESTRATION (from Assemble) ===
Build in this order: database schema, repository layer,
service layer, controllers, middleware, tests.
=== TOOLS (from Link) ===
.NET 10 Web API, Entity Framework Core, PostgreSQL,
FluentValidation, xUnit.
=== CONTEXT (from Trace + Link) ===
This is part of a microservices architecture on Kubernetes.
The API will be behind an API Gateway. Other services
communicate via message queue.
=== HEURISTICS (from Assemble) ===
- Follow repository pattern
- All endpoints return standard problem details on error
- Use async/await everywhere
- No business logic in controllers
=== ARGS (from Stress-test) ===
Connection string: from environment variable DB_CONNECTION
JWT secret: from Kubernetes secret
Port: 8080
Target: 1000 concurrent users
¿Ves lo que ha pasado? ATLAS te hizo pensar. GOTCHA organizó ese pensamiento para la IA. El mapeo es 1:1.
Las herramientas en ese prompt — Entity Framework Core, PostgreSQL, FluentValidation — son cosas que la IA ya conoce. Pero al nombrarlas de forma explícita en la sección TOOLS, te aseguras de que no elija otra cosa.
El resultado: la IA tiene todo lo que necesita. Sin adivinanzas. Sin framework equivocado. Sin contexto que falte.
Template
En los próximos artículos, profundizaremos en cada fase de ATLAS y cada capa de GOTCHA. Al final de esta serie, tendrás:
- Un checklist completo de ATLAS que puedes usar en cualquier proyecto
- Una plantilla de prompt GOTCHA que funciona con cualquier herramienta de IA
- Ejemplos de código reales de proyectos enterprise
- Una biblioteca de más de 20 prompts pre-construidos para tareas comunes
Challenge
Antes del próximo artículo, prueba esto: coge tu último prompt de IA y reescríbelo usando la estructura GOTCHA de arriba. Solo las 6 secciones. No te preocupes por hacerlo perfecto — simplemente separa tu petición en Goals, Orchestration, Tools, Context, Heuristics y Args.
¿Ves la diferencia? Eso es lo que construiremos en el Artículo 2.
Si esta serie te resulta útil, puedes invitarme a un café.
Loading comments...