Saltar al contenido principal
El Problema de los Protocolos que se Olvidan: Cómo Diseñé un Sistema para que la IA Mantenga Criterio Arquitectónico - Guía completa

El Problema de los Protocolos que se Olvidan

27 de noviembre de 2024 4 min de lectura
Compartir:

¿Te ha pasado que trabajas con IA y al principio responde como un arquitecto senior, pero después de un rato vuelve a dar respuestas básicas? Yo diseñé un sistema para resolver exactamente este problema.

El Problema Real

Trabajando en mi blog con IA, me di cuenta de un patrón frustrante:

Inicio de Sesión: IA Brillante

YO: "Agregá un botón"
IA: "Revisé componentes existentes, ya hay 3 tipos de botones.
¿Querés reutilizar ButtonPrimary o necesitás variante nueva?
Aplicando TypeScript + Tailwind expert + testing automático"

Después de 2 Horas: IA Básica

YO: "Agregá un botón"
IA: "Ok, creo Button.astro"
RESULTADO: Código duplicado, sin criterio, sin cuestionamiento

🧠 Mi Hipótesis

El problema no era de inteligencia, sino de implementación.

La IA tenía la capacidad, pero se “olvidaba” de los protocolos durante el trabajo. Necesitaba un sistema que:

  • Mantuviera criterio arquitectónico sin depender de memoria
  • Permitiera comunicación casual y relajada
  • Generara respuestas profesionales automáticamente
  • Aplicara protocolos sin sobrecarga cognitiva

️ La Solución: Sistema .system

Diseñé un sistema de protocolos automáticos con tres componentes clave:

1. Reglas Dinámicas con Enforcement Levels

# DYNAMIC-RULES.md
### TypeScript Obligatorio
- **Enforcement**: FUNDAMENTAL
- **Regla**: Todo código JavaScript debe usar TypeScript
- **Aplicar en**: Cualquier archivo .js nuevo
- **Contexto**: Mantener tipado fuerte y aprovechar beneficios

### Reutilización Sobre Creación
- **Enforcement**: FUNDAMENTAL
- **Regla**: Siempre reutilizar componentes antes que crear nuevos
- **Aplicar en**: Cualquier nueva funcionalidad o vista

2. Protocolos Específicos por Área

docs/.system/protocols/
├── code-quality.md      # Estándares de código
├── communication.md     # Reglas de comunicación
├── development.md       # Workflow de desarrollo
├── testing.md          # Estrategias de testing
└── maintenance.md      # Mantenimiento del sistema

3. Sistema de Estado Continuo

# CURRENT-TASK.md - Estado actual
# TASK-HISTORY.md - Lecciones aprendidas
# START-HERE.md - Punto de entrada obligatorio

Mi Visión Original

Quería poder decir:

“Hola, agregá analytics al blog”

Y que automáticamente se “dispararan” protocolos que enriquecieran esa comunicación casual para generar una respuesta de arquitecto senior:

“Revisé el proyecto y encontré sistema de analytics existente en src/features/ai-metadata/. Aplicando tu regla ‘Reutilización Sobre Creación’, sugiero extenderlo en lugar de duplicar. ¿Querés que extienda el sistema existente?”

️ Por Qué Falló en la Práctica

Aunque el concepto era brillante, tenía problemas de implementación:

1. Sobrecarga Cognitiva

  • La IA debía leer 7+ archivos de protocolos en cada sesión
  • Recordar 9+ reglas fundamentales simultáneamente
  • Aplicar múltiples niveles de enforcement

2. Falta de Automatización

  • Sin herramientas para validar compliance
  • Sin detección automática de violaciones
  • Sin recordatorios durante el trabajo

3. Dependencia de “Memoria”

  • Los protocolos se “olvidaban” después de 2 horas
  • No había refuerzo continuo
  • Violaciones se descubrían tarde

La Evolución: Sistema Multi-Agente

Migré los elementos valiosos a un framework automatizado que SÍ funciona:

Scripts que “Adornan” Comunicación Casual

# Tu comunicación casual se enriquece automáticamente:
npm run multi-developer:check        # ¿Ya existe implementación?
npm run multi-developer:protocols    # ¿Cumple reglas aprendidas?
npm run multi-developer:analyze      # ¿Qué lecciones aplican?

Validación Automática de Protocolos

// El sistema detecta violaciones automáticamente:
const jsFiles = developer.files.filter(file => file.endsWith('.js'));
if (jsFiles.length > 0) {
  violations.push(`Violación: Usando JavaScript en lugar de TypeScript`);
}

Captura Automática de Lecciones

# Cada conflicto resuelto genera nueva regla automáticamente:
npm run multi-developer:learn    # Captura lección aprendida
npm run multi-developer:analyze  # Analiza patrones y tendencias

Resultado Final

Ahora SÍ funciona como quería:

YO: "che, necesito share buttons en posts"

SISTEMA: [Se dispara automáticamente]
├── Revisa src/features/social-share/  Ya existe
├── Aplica regla "Reutilización Sobre Creación" 
├── Revisa lecciones: "dual share button placement" 
└── Aplica TypeScript + Tailwind expert 

IA: "Perfecto! Revisé el proyecto y tenemos sistema de social-share
existente. Según tus lecciones aprendidas, preferís dual placement.
¿Extiendo el componente actual con prop 'position'?"

Lecciones Clave

1. La Visión Era Correcta

  • Comunicación casual → Respuesta profesional
  • Protocolos automáticos sin sobrecarga
  • Criterio arquitectónico mantenido

2. Faltaba la Automatización

  • Scripts que apliquen reglas sin “olvidos”
  • Validación continua durante el trabajo
  • Refuerzo automático de protocolos

3. El Concepto es Escalable

  • Funciona para múltiples agentes
  • Se adapta a diferentes tipos de proyectos
  • Evoluciona con lecciones aprendidas

Próximos Posts de la Serie

  1. “Anatomía de un Sistema de Protocolos Automáticos” - Implementación técnica detallada
  2. “Auto-Merge Inteligente: UX sobre Control” - Optimización de workflow sin fricción
  3. “Migración de Sistemas: Preservando la Visión” - Cómo evolucionar sin perder la esencia

¿Te ha resultado útil esta guía? ¡Compártela y déjanos tus comentarios!

Enlace copiado al portapapeles