feat(fana): fana-store — persistencia del grafo narrativo (sled)

- fana-core: NarrativeAtom + CoherenceState ahora Serialize/Deserialize
  (serde con feature rc para el Arc<String>; uuid con feature serde).
- fana-graph: + atoms() iterator + from_atoms() constructor.
- fana-store: GraphStore sobre sled. put/get/remove_atom por Uuid,
  serialización bincode. save_graph persiste átomo por átomo;
  load_graph reconstruye el grafo (la adjacency se re-cablea desde las
  dependencies de cada átomo).

7 tests verdes (roundtrip put/get/remove + save/load_graph preserva
estructura). cargo check --workspace verde.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
sergio
2026-05-20 15:43:01 +00:00
parent 353e0bbb43
commit 6884b3f8cb
7 changed files with 178 additions and 3 deletions
Generated
+14
View File
@@ -3949,6 +3949,7 @@ checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a"
name = "fana-core"
version = "0.1.0"
dependencies = [
"serde",
"sha2",
"uuid",
]
@@ -3979,6 +3980,19 @@ dependencies = [
"web-sys",
]
[[package]]
name = "fana-store"
version = "0.1.0"
dependencies = [
"bincode",
"fana-core",
"fana-graph",
"sled",
"tempfile",
"thiserror 2.0.18",
"uuid",
]
[[package]]
name = "fastembed"
version = "4.9.1"