PACT: Un Marco de Gobernanza Programática para el Código Claude Después de Patrones de Falla del Agente

✍️ OpenClawRadar📅 Publicado: 26 de marzo de 2026🔗 Source
PACT: Un Marco de Gobernanza Programática para el Código Claude Después de Patrones de Falla del Agente
Ad

Después de tres meses de construir una aplicación móvil con Claude Code (más de 350 archivos, más de 70 tablas de base de datos, BLE peer-to-peer, base de datos local cifrada, sincronización en la nube), un desarrollador identificó patrones de fallo recurrentes que no podían solucionarse con reglas CLAUDE.md. El agente cometió repetidamente las mismas categorías de errores en diferentes sesiones, incluyendo agregar bibliotecas de base de datos prohibidas tres veces después de que se le indicara que no lo hiciera, filtrar metadatos de cifrado al servidor (lo que rompió el inicio de sesión para todos los usuarios), pasar más de 4 horas depurando Bluetooth adivinando la API en lugar de leer la documentación, y realizar correcciones de seguridad que rompieron la restauración de copias de seguridad al no considerar el ciclo de vida completo.

El problema con las reglas

CLAUDE.md creció a más de 50 reglas pero se volvió performativo: Claude las recitaba al inicio de la sesión y las violaba con facilidad. Cuando se le preguntó por qué se ignoraban las reglas, Claude respondió: "Tengo que ser honesto contigo. Puedo ignorar las reglas tratándolas más como sugerencias. No siempre pueden prevenir el comportamiento..."

La solución: Marco PACT

El desarrollador le preguntó a Claude: "Si te diera permiso para rediseñar este sistema tú mismo, ¿qué construirías?" Esto llevó a la creación de PACT (Programmatic Agent Constraint Toolkit) con la idea central, en palabras del propio Claude: "Las reglas son sugerencias. La infraestructura es ley."

Cuatro pilares de PACT

  • Aplicación mecánica: Ganchos PreToolUse que bloquean patrones prohibidos antes de que los cambios se apliquen. Ejemplos: ¿import hive? Bloqueado. ¿print() en lugar de logger? Bloqueado. ¿Editar un archivo que no has leído? Bloqueado.
  • Reemplazo de contexto: Un mapa de arquitectura YAML (SYSTEM_MAP.yaml) describe cada flujo de datos: tabla de base de datos → servicio → gestión de estado → pantalla de interfaz → comportamiento en cascada. El agente lee esto en lugar de pasar 15-20 minutos releyendo archivos fuente en cada sesión.
  • Razonamiento auto-evolutivo: En lugar de reglas ("siempre verifica dependencias"), redirecciones cognitivas que son preguntas: "¿Qué depende de esto, y de qué depende esto?" Las preguntas activan el razonamiento de una manera que las reglas no lo hacen. El agente puede agregar nuevas redirecciones cuando se da cuenta de que está haciendo suposiciones.
  • Separación estructura/comportamiento: Los mapas de arquitectura (qué archivos existen) se mantienen separados de los flujos de ciclo de vida (qué sucede en los diferentes estados de la aplicación). Previene los dos fallos más comunes en la documentación: que los mapas se conviertan en ensayos que nadie lee, y que los flujos dupliquen estructuras que quedan obsoletas.
Ad

Ejemplos prácticos de implementación

Redirecciones cognitivas en la práctica: "Cuando estés a punto de eliminar código: ¿Por qué existe este código?" se agregó después de que Claude eliminó una solución alternativa para un error del framework donde el comentario justo encima explicaba por qué estaba allí. "Cuando encuentres una objeción a tu propia solución: ¿Es esta objeción real, o me estoy echando atrás?" se agregó después de que Claude propuso la corrección correcta, se convenció a sí mismo de lo contrario durante la revisión, y el desarrollador tuvo que rescatar su propia idea.

Sistema de seguimiento de errores con base de conocimiento de soluciones: Una sesión pasó 3 horas resolviendo un problema específico de BLE en Samsung. La siguiente sesión encontró el mismo error sin ningún recuerdo de él. Ahora cada investigación se registra en tiempo real: síntomas, intentos fallidos, causa raíz, solución. La primera acción del agente ante cualquier error es verificar si una sesión anterior ya lo resolvió.

Archivos de conocimiento de paquetes: La pesadilla de 4 horas depurando Bluetooth sucedió porque Claude estaba adivinando cómo funcionaba el paquete a partir de datos de entrenamiento obsoletos. Ahora hay un requisito obligatorio de consultar archivos de conocimiento de paquetes.

📖 Leer la fuente completa: r/ClaudeAI

Ad

👀 Ver también

Vida artificial: Una reproducción en Python de 300 líneas de la investigación de Vida Computacional
Herramientas

Vida artificial: Una reproducción en Python de 300 líneas de la investigación de Vida Computacional

Una implementación en Python que reproduce el artículo Computational Life, donde una cuadrícula de 240x135 de programas similares a Brainfuck interactúan y evolucionan código autorreplicante mediante emparejamiento aleatorio y concatenación de cintas de instrucciones.

OpenClawRadar
Resultados de PinchBench: Primer Benchmark Específico de Agentes de IA de Codificación OpenClaw
Herramientas

Resultados de PinchBench: Primer Benchmark Específico de Agentes de IA de Codificación OpenClaw

El primer benchmark específico de OpenClaw, PinchBench, clasifica 32 modelos de IA según la tasa de éxito, el costo y la velocidad, con el Gemini-3-Flash-Preview de Google liderando con un 95,1% de éxito por $0,72.

OpenClawRadar
Corrigiendo CAPTCHAs del navegador OpenClaw con Camoufox y CLI Wrapper
Herramientas

Corrigiendo CAPTCHAs del navegador OpenClaw con Camoufox y CLI Wrapper

El navegador Chromium integrado de OpenClaw activa la detección de bots mediante el Protocolo de Herramientas de Desarrollo de Chrome, artefactos de inyección de JavaScript e inconsistencias en la huella digital del hardware. La solución utiliza Camoufox (una bifurcación de Firefox) modificada a nivel de C++ y envuelta en una CLI que devuelve instantáneas del árbol de accesibilidad para reducir el uso de tokens.

OpenClawRadar
Qwen 3.5 35B ejecutándose en 8GB de VRAM con configuración de llama.cpp
Herramientas

Qwen 3.5 35B ejecutándose en 8GB de VRAM con configuración de llama.cpp

Un desarrollador comparte su configuración de llama.cpp para ejecutar Qwen 3.5 35B (Q4_K_M GGUF) en una RTX 4060m con 8 GB de VRAM, logrando 700 t/s de procesamiento de prompt y 42 t/s de generación, y comenta el uso de Cline en VSCode con los modos kat-coder-pro y qwen3.5.

OpenClawRadar