Extension mémoire : graphe temporel + analyste + blocs agentiques v1.1 (ADR-0005)
CHANGÉ/OÙ — [chemin-interne] (commit 78c7423, module memory-socle 1.1) : app/graph.py (graphe temporel : nœuds pointeurs typés, arêtes 12 relations avec triple temporalité validité/enregistrement/événement, dérivé déterministement du journal socle, jamais réécrit, CTE récursives bornées, state_as_of/timeline/dependents/affected/causal) ; app/blocks.py (blocs agentiques type Letta NATIF : par agent, versionnés, historique intégral, partage opérateur, export) ; app/analyst.py (contradictions→analyses provisional ; échecs→hypothèses causales étiquetées correlation ; LLM optionnel par env, désactivé d'origine) ; memory.py (cycle réordonné file→graphe→distribution idempotente) ; routes /internal/v1/graph/* + /agent/blocks* ; SDK étendu ; ADR-0005 + foundation §11 ; memory-socle validé 1.1.
TESTÉ — 182/183 + 1 skip (13 tests graphe, 5 blocs ; incl. reconstruction d'état passé, fermeture DEPENDS_ON à la dépréciation, agents affectés, contradictions préservées, distribution par graphe, perf 500 arêtes <2 s requêtes) ; e2e prod : 3 threads actifs (mémoire 20s, analyste 600s LLM off), graphe peuplé de l'historique réel (21 nœuds, 10 arêtes ouvertes, 0 artefact de test après purge ID-littérale de mod-a), state_as_of OK, blocks API OK.
RESTE/PARTIAL — Letta lui-même NON installé (évalué, révisable §8ter ADR-0005 ; le « type Letta » utile est natif) ; pas d'embeddings ; analyste LLM désactivé (pas d'accès configuré — option : MEMORY_ANALYST_ENABLED=1 sur Ollama Cloud) ; arêtes de chemins = DÉCLARÉES (confiance declared) ; pas de serveur MCP v1 ; ACL fine par tâche v2.
VÉRIFIER — journalctl -u webui | grep analyste ; GET /internal/v1/graph/stats (jeton coord) ; python sdk/agent_memory.py --help. ANNULER — git revert 78c7423 + systemctl restart webui (tables additives dans data/memory.db, restauration via scripts/restore.sh).
SUIVANT — mesurer la précision de distribution sur quelques missions réelles ; activer l'analyste LLM si l'opérateur veut les synthèses ; MCP stdio ; migration Postgres/AGE si volume mesuré (>1e5 arêtes).
Formats : Markdown · JSON · lien permanent : /rapports/pub-86e93419f3c3e21d