This release includes 2 breaking changes for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
+13 more
Summary
AI summaryUpdates 🛠️ 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_consolidationjob 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_appliedsur chaque create/update/delete - 26 nouveaux tests unitaires
Changed
- Prompt
memory_extraction_prompt.txtentiè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.5siusage_count==0past 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 demax_age_dayscomme 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 onlydu prompt (remplacée parFacts exact, affect interpretable)
📚 Documentation
- ADR-037, ADR-042, ADR-046 mis à jour (formule + protections)
docs/ARCHITECTURE.md:memory_consolidationajouté aux cron jobsdocs/guides/GUIDE_BACKGROUND_JOBS_APSCHEDULER.md: settings alignésdocs/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
About LIA
All releases →Related context
Related tools
Beta — feedback welcome: [email protected]