Releases: Cloud-Temple/graph-memory
v2.2.0 — Git Submodules + Refresh Script
🔄 Submodules Git & Script de synchronisation Graph Memory
Submodules Git : les dossiers product_sheets/ et docs/ sont désormais de vrais submodules Git. Mise à jour via git submodule update --remote.
product_sheets→ Cloud-Temple/product_sheetsdocs→ Cloud-Temple/docs
Nouveau script scripts/refresh_graph_memory.py — Synchronisation intelligente des fichiers locaux avec Graph Memory en production :
- Comparaison par hash SHA-256 (détecte nouveaux, modifiés, obsolètes, doublons)
- 3 mémoires configurées : DOCS, PRESALES, JURIDIQUE
- Mode dry-run par défaut,
--applypour exécuter - Client MCP HTTP Streamable intégré (zéro dépendance externe)
Recette : 150/150 tests verts. 30 outils MCP.
v2.1.2 — Dependency updates
📦 Mises à jour de dépendances (Dependabot)
Release patch consacrée aux mises à jour de dépendances Python. Aucun changement applicatif, aucune modification d'API. La recette reste à 150/150 tests verts. 30 outils MCP inchangés.
✅ Dépendances mises à jour
| Package | Avant | Après | PR |
|---|---|---|---|
| boto3 | >=1.28.0 | >=1.42.97 | #6 |
| pydantic-settings | >=2.0.0 | >=2.14.0 | #7 |
| python-multipart | >=0.0.6 | >=0.0.27 | #5 |
| rich | >=13.0.0 | >=15.0.0 | #4 |
❌ PR Dependabot fermées sans merge
- #8 —
fastapi >=0.100.0, <0.110.0: version cible morte (dernière0.109.x, déjà installée). Issue #9 ouverte pour préparer la migration vers les versions FastAPI 0.110+ (changements de Pydantic v2, lifespan handlers). - #3 — Bump Docker base image
python:3.11-slim→python:3.14-slim: prématuré. Plusieurs dépendances (notammentneo4j-driver,qdrant-client) ne publient pas encore de wheels 3.14. Issue #10 ouverte pour planifier la migration Python 3.12 → 3.13 → 3.14 par étapes.
🔄 Compatibilité
- ✅ Aucune rupture d'API
- ✅ Aucun changement applicatif
- ✅ Recette 150/150 tests verts maintenue
- ✅ 30 outils MCP inchangés
- ✅ Toutes les versions cibles rétro-compatibles avec le code v2.1.1
📁 Fichiers modifiés
VERSION:2.1.1→2.1.2CHANGELOG.md: nouvelle entrée v2.1.2 + correction d'un typo historique (l# Changelog→# Changelog)README.md,README.en.md: bump version + date + descriptionDESIGN/SPECIFICATION.md: header version 2.1.1 → 2.1.2 (date 11 mai 2026)
Full changelog : CHANGELOG.md
v2.1.1 — Fix document_get binary files + content_format
🐛 Fix document_get(include_content=True) sur fichiers binaires
Bug : crash latin-1 sur les fichiers DOCX, PDF, XLSX.
Fix : nouveau paramètre content_format (text | raw) :
text(défaut) → texte extrait (paragraphes, tableaux) via python-docx/pypdfraw→ bytes bruts en base64 (pour forwarding vers MCP Office, etc.)- Fallback automatique vers raw si extraction impossible
Tests : 136 → 150 tests PASS (helper make_test_docx, tests mode text + raw)
Documentation : VERSION, CHANGELOG, README (fr+en), SPECIFICATION, INTEGRATION mis à jour.
🔒 v2.1.0 — Audit de sécurité complet
🔒 Audit de sécurité — Remédiation complète
Audit de sécurité complet du service (SAST manuelle + analyse d'architecture). 23 vulnérabilités identifiées, 19 corrigées dont les 4 critiques.
Corrections (19/23)
| Sévérité | Corrigées | Détail |
|---|---|---|
| 🔴 CRITIQUE | 4/4 | C1 timing attack, C2 localhost bypass, C3 validation /mcp, C4 injection S3 |
| 🟠 HAUTE | 5/6 | H1 system_about, H2 validation memory_id, H4 HSTS, H6 limite 50MB |
| 🟡 MOYENNE | 7/8 | M1-M3 validation, M5-M8 logs/CSP/bootstrap, M6 CSP strict |
| 🔵 FAIBLE | 3/5 | I2 Python épinglé, I3 Dependabot, I5 commentaires |
Remédiation M6 — CSP strict
Refactoring complet du client web (8 fichiers) pour supprimer unsafe-inline de script-src :
- 12 handlers
onclick/onchange→data-action+ event delegation JS - 5 styles inline → classes CSS
applyDynamicColors()pour couleurs via API DOM (CSP-safe)style-srcconserveunsafe-inline(requis par vis-network, lib tierce)
Risques acceptés (4/23)
- M4 : Neo4j sans TLS (réseau Docker isolé)
- I1 : ReDoS chunker (théorique, non exploitable)
- I4 : WAF body limit 75MB (guard applicatif 50MB)
- H5 : Faux positif confirmé
Fichiers ajoutés
src/mcp_memory/core/validators.py— Validation centralisée.github/dependabot.yml— Scan automatique des dépendancesDESIGN/AUDIT_SECURITE_2026-03-24.md— Rapport d'audit complet
Validation
✅ 136/136 tests PASS (recette complète : 7 phases, 3 profils)
📋 Voir CHANGELOG.md pour le détail complet.