mirror of
https://github.com/R0m1k3/Loki.git
synced 2026-10-22 06:28:11 +02:00
Lot 6 : persistance des discussions portée en Rust (chat::persist)
Port de chat_persist.go et de la partie index de chat_sessions.go, au même format en base que le Go (chat/conv:<id>, chat/index, toolres/<clé>, tous scellés par l'API interne) : - ConvState : JSON de Conversation à l'octet près (tranches vides en null, bloc projet omis), relecture tolérante comme json.Unmarshal et guérison stripImageParts ; instantané en plein tour avec le journal compacté ; - index : ConvMeta, titre déduit (rappels de loki et <context_update> exclus, 60 caractères), tri, projets, renommage, rafraîchissement d'une entrée ; - écrivain unique (Persister) : lots fusionnés, jamais un état plus ancien qu'un état écrit, résultats d'outils servis depuis la mémoire jusqu'à l'écriture, suppressions qui ne font rien renaître, file jamais bloquée par un écrivain qui panique ; - StoreSink : écriture par l'API interne du Go. Mémoire verrouillée : rien en clair ; index illisible : jamais réécrit. Tests Go de l'écrivain portés, plus des tests de bout en bout contre le faux Go. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016tcGfJWefW5kUGoC2wL8cv
This commit is contained in:
4 files changed
+1518
-6
No files matched your search
@@ -7,11 +7,13 @@
|
||||
//! - [`stream`] : analyse du flux SSE du moteur (texte, raisonnement, appels
|
||||
//! d'outils, statistiques) ;
|
||||
//! - [`compact`] : estimation du contexte et compactage de l'historique ;
|
||||
//! - [`journal`] : journal d'affichage (compactage, rejeu, pagination).
|
||||
//! - [`journal`] : journal d'affichage (compactage, rejeu, pagination) ;
|
||||
//! - [`persist`] : format en base, index des discussions, écrivain unique.
|
||||
|
||||
pub mod compact;
|
||||
pub mod engine;
|
||||
pub mod journal;
|
||||
pub mod persist;
|
||||
pub mod stream;
|
||||
pub mod types;
|
||||
pub mod wire;
|
||||
Reference in new issue
Block a user