Skip to content

LIA

v1.16.6 Breaking

This release includes 2 breaking changes for platform teams planning a safe upgrade.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

ai ai-assistant apple llm claude conversational-ai
+13 more
docker emotional-ai google healthcare-ai human-in-the-loop langchain langgraph mcp multi-agent personal-assistant self-hosted skills vision-ai

Summary

AI summary

Updates 🛠️ Côté technique Added, ✨ Highlights user-facing, and 📚 Documentation across a mixed release.

Full changelog

🧠 Long-term memory — Precision overhaul

Refonte complète du pipeline mémoire long-terme sur trois axes : prompt d'extraction, formule de rétention, et consolidation sémantique quotidienne. Corrige au passage deux bugs silencieux dans l'ancien système de purge.

✨ Highlights user-facing

  • Vos corrections factuelles tiennent vraiment — « en fait j'ai changé de job, je suis chez Meta » met à jour la mémoire au lieu de créer un doublon contradictoire.
  • Mémoires épinglées strictement protégées — plus aucun risque que LIA les modifie ou les supprime automatiquement.
  • Moins de doublons — un nouveau job quotidien fusionne les mémoires quasi-identiques accumulées au fil des conversations.
  • Mémoires qui vieillissent mieux — préférences moyennes purgées autour de 30 jours, informations importantes (famille, identité) préservées durablement.

🛠️ Côté technique

Added

  • memory_consolidation job quotidien à 5h UTC (cosine similarity ≥ 0.9, skip pinned/catégories-différentes/emotional-divergent)
  • Tag [PINNED] dans le prompt d'extraction + règle explicite de non-modification
  • Détection active de contradictions factuelles dans le prompt
  • 9 nouveaux settings Pydantic exposés via .env, 2 dedup constants promues en settings
  • Log structuré memory_action_applied sur chaque create/update/delete
  • 26 nouveaux tests unitaires

Changed

  • Prompt memory_extraction_prompt.txt entièrement réécrit (WHAT/WHAT NOT, 7 règles refined, catégories précises, 3 few-shots)
  • Formule de rétention : 0.7 * importance + 0.3 * recency_factor + pénalité négative * 0.5 si usage_count==0 past 30j
  • Seuil dédup 0.5 → 0.4 pour capter les contradictions factuelles
  • logger.exception() pour stack trace complète dans les handlers scheduler

Fixed

  • recency_factor était systématiquement à 0 en pratique (double-usage de max_age_days comme gate ET dénominateur decay)
  • Mémoires importance 0.5 n'étaient jamais purgées malgré leur âge
  • Corrections factuelles utilisateur créaient des doublons contradictoires
  • Protections obsolètes dans les ADRs qui n'étaient jamais implémentées

Removed

  • 3 settings obsolètes : MEMORY_MAX_AGE_DAYS, MEMORY_MIN_USAGE_COUNT, MEMORY_RETENTION_WEIGHT_USAGE
  • Règle Exact words only du prompt (remplacée par Facts exact, affect interpretable)

📚 Documentation

  • ADR-037, ADR-042, ADR-046 mis à jour (formule + protections)
  • docs/ARCHITECTURE.md : memory_consolidation ajouté aux cron jobs
  • docs/guides/GUIDE_BACKGROUND_JOBS_APSCHEDULER.md : settings alignés
  • docs/knowledge/03_settings.md : section mémoire enrichie

Voir CHANGELOG.md pour le détail technique complet.

🤖 Generated with Claude Code

Breaking Changes

  • Removed settings MEMORY_MAX_AGE_DAYS, MEMORY_MIN_USAGE_COUNT, MEMORY_RETENTION_WEIGHT_USAGE
  • Renamed prompt rule Exact words only → Facts exact, affect interpretable

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track LIA

Get notified when new releases ship.

Sign up free

Beta — feedback welcome: [email protected]