🗜️ Compactación de contexto

Cuando la conversación supera la ventana, el agente resume lo anterior y sigue. Ese resumen es lossy y no determinista: decisiones, rutas de fichero y matices que el modelo necesitaba pueden desaparecer justo cuando empieza el trabajo que dependía de ellos. La compactación es, en la práctica, el punto donde más tareas se rompen en silencio.

Modos de fallo típicos

  • Amnesia de decisiones: se perdió el “esto no lo toques” o el “usamos la rama master, no main”.
  • Amnesia de estado: se sabe qué se quería hacer, no en qué punto quedó.
  • Deriva de intención: el resumen conserva el tema pero no la instrucción concreta, y el agente “continúa” algo que ya no es lo pedido.
  • Relectura masiva: tras compactar, el agente vuelve a leer 10 ficheros para reconstruir lo que ya tenía.

Qué hace que una compactación sobreviva

  1. Checkpoints incrementales antes del corte, no un resumen único al final: en varios umbrales de llenado (p. ej. 20/35/50/65/80%) y también cuando la calidad de la sesión cae.
  2. Contenido accionable, no narrativo: tarea activa, decisiones tomadas, ficheros tocados, rama git, siguiente paso. Lo que un humano necesitaría para retomar el trabajo.
  3. Un digest que reoriente sin releer: un resumen heurístico del estado del contexto que se inyecta tras la compactación.
  4. Marcado explícito como datos recuperados: el checkpoint es contexto, no instrucciones. Si se inyecta sin marcar, el modelo puede obedecer texto viejo.
  5. Puntuación por relevancia cuando hay varios checkpoints: se recupera el que corresponde a la tarea actual, no el más reciente por defecto.

Continuidad entre sesiones

El mismo mecanismo sirve entre sesiones distintas: guardar al cerrar y ofrecer al abrir, filtrado por relevancia al prompt actual. Es la diferencia entre un agente que “recuerda” porque tiene un fichero de memoria permanente y uno que recupera el estado de trabajo concreto de la sesión anterior.

Relación con el wiki

Un LLM Wiki es, en cierto modo, compactación deliberada y persistente: lo que se escribe en wiki/ sobrevive a cualquier compactación de la conversación que lo produjo. Por eso el ingest debe capturar decisiones y no solo resúmenes — ver self-improving-wiki.