<!-- Canonical: https://lucioduran.com/es/projects/agent-memory-lifecycle
Language: es
Content-SHA256: 60f2be245e9bcb1a827b1487f737d833b131a2b8e89071e9078dcfaa35b26112
-->

[Proyectos](<https://lucioduran.com/es/projects>) / Agent Memory Lifecycle

# Agent Memory Lifecycle

Eventos de memoria auditables con procedencia, correcciones, vencimiento, borrado y recuperación léxica limitada a cada sesión.

Autor: [Lucio Durán](<https://lucioduran.com/es>) · Python 3.11.13 · Licencia: [MIT](<https://github.com/lucioduran/agent-memory-lifecycle/blob/d185070cadfd4d0b36e58d957ab7054ae90bdf18/LICENSE>)

Ficha publicada: 2026-11-09 · Ficha actualizada: 2026-11-09

[Repositorio](<https://github.com/lucioduran/agent-memory-lifecycle>) · [Evidencia original](<https://raw.githubusercontent.com/lucioduran/agent-memory-lifecycle/d185070cadfd4d0b36e58d957ab7054ae90bdf18/results/evaluation.json>) · [Release v0.1.0](<https://github.com/lucioduran/agent-memory-lifecycle/releases/tag/v0.1.0>)

## Problema y utilidad para agentes

Una memoria que solo agrega registros puede recuperar un dato obsoleto después de su vencimiento, corrección o borrado. Las puntuaciones de recuperación por sí solas no explican si ese dato debería seguir disponible.

Las decisiones explícitas sobre el ciclo de vida permiten inspeccionar la selección de memoria antes de que un agente consuma los datos elegidos.

## Arquitectura

1. **Validar eventos.** Las afirmaciones, correcciones y marcas de borrado incluyen fuente, sesión, momento de registro y límites de validez.
2. **Resolver antes de ordenar.** Filtra por sesión y validez, aplica correcciones y borrados permanentes y elige un valor por clave antes de la recuperación mediante similitud coseno con TF-IDF.
3. **Explicar y reproducir.** Devuelve conflictos, exclusiones y procedencia. Las exportaciones depuradas conservan la estructura necesaria para reproducir las decisiones y eliminan el contenido borrado.

- [Diseño y límites de confianza](<https://github.com/lucioduran/agent-memory-lifecycle/blob/d185070cadfd4d0b36e58d957ab7054ae90bdf18/docs/semantics.md>)

## Qué demuestra

- Semántica determinista de corrección y vencimiento, incluidos los instantes exactos de los límites.
- Comprobaciones de selección y borrado entre sesiones con identificadores esperados explícitos.
- Trazas reproducibles que muestran por qué se seleccionó o excluyó cada recuerdo.

## Resultados publicados

Dieciocho escenarios ficticios originales de política se ejecutaron localmente en un Xeon W-3223 con Python 3.11.13 y un hilo.

Se compara la coincidencia exacta del conjunto de identificadores del primer resultado, incluidos los resultados vacíos esperados. Ambos métodos filtran por sesión. La referencia ignora correcciones, vencimiento y borrado, y usa una clasificación léxica más simple.

### Casos de política del ciclo de vida

| Método | Conjuntos de identificadores esperados exactos |
| --- | --- |
| Referencia que solo agrega registros, limitada a cada sesión | 8/18 |
| Política temporal y TF-IDF | 18/18 |

Todos los escenarios de política pasaron, pero la comparación con la referencia cambia tanto la clasificación como las reglas del ciclo de vida. No permite aislar una mejora causal en la calidad de recuperación. Un único tiempo transcurrido no constituye una evaluación de latencia.

## Reproducir

Python 3.11 o posterior; la reproducción y la evaluación no tienen dependencias de ejecución.

Ejecutá las mediciones en una carpeta de salida nueva y los trabajos pesados de a uno. Dentro de la serie original de proyectos, usá el ejecutor compartido benchmark\_lock.py. Los comandos siguientes usan sintaxis de shell POSIX.

### Verificar la evidencia guardada

```
git clone https://github.com/lucioduran/agent-memory-lifecycle.git
cd agent-memory-lifecycle
git checkout d185070cadfd4d0b36e58d957ab7054ae90bdf18
python -m scripts.evaluate results/evaluation.json --verify
```

### Repetir el experimento local

```
python -m scripts.evaluate results/new-run.json
```

## Alcance y límites

- La biblioteca en memoria presupone llamadores y archivos confiables. No proporciona autenticación, control de concurrencia, durabilidad ante fallos, cifrado ni borrado seguro.
- El borrado conserva identificadores y fechas de auditoría, y no puede eliminar copias externas ni trazas antiguas. Las claves de corrección eliminadas no pueden validarse de nuevo a partir de exportaciones depuradas.
- Los datos más nuevos prevalecen por política, no porque se haya verificado su veracidad. Las consultas históricas usan el conocimiento actual.
- La recuperación léxica ASCII y los pequeños casos de prueba conocidos por el autor no demuestran comprensión semántica, exactitud en producción ni seguridad.

- [Artículo de arquitectura relacionado](<https://lucioduran.com/es/blog/agentic-ai-architecture-patterns>)

## Fuentes y revisión

El informe identifica el commit de implementación 7b9a6b77399c38e461544c7897f812bab6e96ebd y un hash de los casos de prueba, pero no contiene una fecha de ejecución. Las fechas de la release y de la ficha se indican por separado.

- Revisión consultada: [` d185070cadfd4d0b36e58d957ab7054ae90bdf18 `](<https://github.com/lucioduran/agent-memory-lifecycle/commit/d185070cadfd4d0b36e58d957ab7054ae90bdf18>)
- Revisión registrada por el experimento: [` 7b9a6b77399c38e461544c7897f812bab6e96ebd `](<https://github.com/lucioduran/agent-memory-lifecycle/commit/7b9a6b77399c38e461544c7897f812bab6e96ebd>)
- Release publicada: [v0.1.0](<https://github.com/lucioduran/agent-memory-lifecycle/releases/tag/v0.1.0>) · 2026-11-09T18:31:34Z
- SHA-256 del corpus: ` 05a8e826369607eb05d5bcf9f67783db6161ed565e35d05f0313a983c37459dc `

- [README y uso](<https://github.com/lucioduran/agent-memory-lifecycle/blob/d185070cadfd4d0b36e58d957ab7054ae90bdf18/README.md>)
- [Evidencia original](<https://raw.githubusercontent.com/lucioduran/agent-memory-lifecycle/d185070cadfd4d0b36e58d957ab7054ae90bdf18/results/evaluation.json>)
- [Licencia MIT](<https://github.com/lucioduran/agent-memory-lifecycle/blob/d185070cadfd4d0b36e58d957ab7054ae90bdf18/LICENSE>)
- [Diseño y límites de confianza](<https://github.com/lucioduran/agent-memory-lifecycle/blob/d185070cadfd4d0b36e58d957ab7054ae90bdf18/docs/semantics.md>)
- [Metodología de medición](<https://github.com/lucioduran/agent-memory-lifecycle/blob/d185070cadfd4d0b36e58d957ab7054ae90bdf18/docs/evaluation.md>)
- [Casos de prueba originales](<https://raw.githubusercontent.com/lucioduran/agent-memory-lifecycle/d185070cadfd4d0b36e58d957ab7054ae90bdf18/examples/scenarios.json>)
