From 3bd23d6135ff8e5901665f2b45584054d742ee87 Mon Sep 17 00:00:00 2001 From: Dom Date: Tue, 17 Mar 2026 09:06:42 +0100 Subject: [PATCH] fix: ajouter RawSession.from_dict() pour le StreamProcessor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Le GraphBuilder ne pouvait pas construire le graphe car from_dict n'existait pas (seulement from_json). Alias avec valeurs par défaut pour les sessions streaming. Co-Authored-By: Claude Opus 4.6 (1M context) --- core/models/raw_session.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/core/models/raw_session.py b/core/models/raw_session.py index 7c0ccc52a..ca8771210 100644 --- a/core/models/raw_session.py +++ b/core/models/raw_session.py @@ -186,6 +186,20 @@ class RawSession: screenshots=screenshots ) + @classmethod + def from_dict(cls, data: Dict[str, Any]) -> 'RawSession': + """Alias de from_json pour compatibilité avec le StreamProcessor.""" + # Si le dict vient du streaming (pas de schema_version), l'ajouter + if "schema_version" not in data: + data["schema_version"] = "rawsession_v1" + # Champs par défaut pour les sessions streaming + data.setdefault("agent_version", "v1") + data.setdefault("environment", {}) + data.setdefault("user", {"user_id": "stream"}) + data.setdefault("context", {}) + data.setdefault("started_at", datetime.now().isoformat()) + return cls.from_json(data) + def save_to_file(self, filepath: Path) -> None: """Sauvegarder dans un fichier JSON""" filepath.parent.mkdir(parents=True, exist_ok=True)